ghost 6.17.1 → 6.17.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/tryghost-i18n-6.17.2.tgz +0 -0
- package/components/{tryghost-parse-email-address-6.17.1.tgz → tryghost-parse-email-address-6.17.2.tgz} +0 -0
- package/content/themes/source/package.json +1 -1
- package/core/built/admin/assets/{PolarAngleAxis-DVj7Sw2n.js → PolarAngleAxis-B8JrAxf_.js} +1 -1
- package/core/built/admin/assets/{_baseAssignValue-CrCkbXur.js → _baseAssignValue-Bbalamaq.js} +1 -1
- package/core/built/admin/assets/{a-large-small-BLquRSNr.js → a-large-small-CgWPeKpi.js} +1 -1
- package/core/built/admin/assets/{at-sign-Cj4_ORaa.js → at-sign-BottTo2X.js} +1 -1
- package/core/built/admin/assets/{audience-ACTBvUSt.js → audience-CcGOt5Fb.js} +1 -1
- package/core/built/admin/assets/{avatar-flipboard-BeKL4BEF.js → avatar-flipboard-MxW2k124.js} +1 -1
- package/core/built/admin/assets/{bluesky-sharing-CP7ej5rz.js → bluesky-sharing-BBmDBlxr.js} +1 -1
- package/core/built/admin/assets/{chart-B6jk72FT.js → chart-pimL5Chk.js} +1 -1
- package/core/built/admin/assets/{chunk.524.6c12997c856012ea06f5.js → chunk.524.9a8f5123fd3ecf3e4451.js} +6 -6
- package/core/built/admin/assets/{chunk.582.a0abd5b93eb1bc50335a.js → chunk.582.41886d06af2895d571bd.js} +7 -7
- package/core/built/admin/assets/{code-editor-view-CVRtsOBM.js → code-editor-view-tCZOpc_h.js} +1 -1
- package/core/built/admin/assets/{comments-CxjhZH_T.js → comments-OXqhcC0t.js} +1 -1
- package/core/built/admin/assets/{copy-YhtJexiS.js → copy-aC0WUVtq.js} +1 -1
- package/core/built/admin/assets/{data-list-BPSXm3ej.js → data-list-BOdyZGWI.js} +1 -1
- package/core/built/admin/assets/{deleted-feed-item-D8BHDEHh.js → deleted-feed-item-BnUJ8bWP.js} +1 -1
- package/core/built/admin/assets/{edit-profile-FrkkXMG7.js → edit-profile-CEgPhWMJ.js} +1 -1
- package/core/built/admin/assets/{empty-indicator-SsCyCd50.js → empty-indicator-CR_9BHAH.js} +1 -1
- package/core/built/admin/assets/{en-ZWZBSdFY.js → en-ajofhc7o.js} +1 -1
- package/core/built/admin/assets/{feed-BvVJCTy8.js → feed-Ci-ODCHE.js} +1 -1
- package/core/built/admin/assets/{filters-BupJ4mUj.js → filters-CmJJOv3I.js} +1 -1
- package/core/built/admin/assets/{gh-chart-Dp9VXeON.js → gh-chart-hn7wEnik.js} +1 -1
- package/core/built/admin/assets/{growth-CRDHOGrZ.js → growth-CQceZQ1g.js} +1 -1
- package/core/built/admin/assets/{hash-CPAX2PwN.js → hash-BcaWmkw5.js} +1 -1
- package/core/built/admin/assets/{inbox-DuT2edmx.js → inbox-D9hID-rO.js} +1 -1
- package/core/built/admin/assets/{index-bl5YmBtG.js → index-B1rKIiOr.js} +1 -1
- package/core/built/admin/assets/{index-B2oDZJ9B.js → index-BJS8H75W.js} +1 -1
- package/core/built/admin/assets/{index-BPYePamp.js → index-BmK6ThYl.js} +1 -1
- package/core/built/admin/assets/{index-BX3kQzlo.js → index-CZ3lARQ2.js} +1 -1
- package/core/built/admin/assets/{index-8ECl7z0l.js → index-Cl2eSBwg.js} +1 -1
- package/core/built/admin/assets/{index-BwUQiVrX.js → index-D8syEvSm.js} +1 -1
- package/core/built/admin/assets/{index-Dk-Wh_Fw.js → index-DJDgMk-T.js} +1 -1
- package/core/built/admin/assets/{index-DnY4rls4.js → index-DO76vL0R.js} +1 -1
- package/core/built/admin/assets/{index-CjzFwwKZ.js → index-DYM1MbXR.js} +1 -1
- package/core/built/admin/assets/{index-B1rQYn0h.js → index-Do091GLu.js} +1 -1
- package/core/built/admin/assets/{index-CQP2hNBo.js → index-d_UH71zm.js} +1 -1
- package/core/built/admin/assets/{index-exFCQBCk.js → index-f5Lv9kLb.js} +9 -9
- package/core/built/admin/assets/{index--Nwo3958.js → index-g4BWcHhl.js} +1 -1
- package/core/built/admin/assets/{index-ByYZ5TiM.js → index-kXF42nga.js} +1 -1
- package/core/built/admin/assets/{index-CeFAaI2v.js → index-rluYcfd-.js} +1 -1
- package/core/built/admin/assets/{koenig-lexical-eRS1y7PS.js → koenig-lexical-D2XHvS2J.js} +1 -1
- package/core/built/admin/assets/{kpi-card-DShFKtte.js → kpi-card-Dga9rFZ5.js} +1 -1
- package/core/built/admin/assets/{kpis-Bxyr_zYY.js → kpis-BbnqD1za.js} +1 -1
- package/core/built/admin/assets/{label-hgdYQhmm.js → label-D8WHEOe0.js} +1 -1
- package/core/built/admin/assets/{links-5NNDFN65.js → links-dgwx7ko1.js} +1 -1
- package/core/built/admin/assets/{lucide-react-f58FO8MB.js → lucide-react-BARFK2PZ.js} +1 -1
- package/core/built/admin/assets/{main-layout-BDz_2UZs.js → main-layout-CcjtCuF_.js} +1 -1
- package/core/built/admin/assets/{message-square-text-6dTKbQKA.js → message-square-text-BxquqPhA.js} +1 -1
- package/core/built/admin/assets/{minus-D2C19Fiu.js → minus-Ziy4LSYD.js} +1 -1
- package/core/built/admin/assets/{modals-DzetQgXf.js → modals-fMQzR7L6.js} +1 -1
- package/core/built/admin/assets/{moderation-87QsKbyf.js → moderation-Ci9UNwiZ.js} +1 -1
- package/core/built/admin/assets/{newsletter-BhI9Lgkn.js → newsletter-DnrS7Fvi.js} +1 -1
- package/core/built/admin/assets/{newsletters-adLgF_Re.js → newsletters-D78pgnas.js} +1 -1
- package/core/built/admin/assets/{note-BbPR57Yw.js → note-BAfNweZN.js} +1 -1
- package/core/built/admin/assets/{overview-CqyRlIVM.js → overview-CWQPNOF0.js} +1 -1
- package/core/built/admin/assets/{pagemenu-DlQF5jN4.js → pagemenu-DjSqq3Wu.js} +1 -1
- package/core/built/admin/assets/{post-analytics-BudH7GCA.js → post-analytics-c8kRV0YB.js} +1 -1
- package/core/built/admin/assets/{post-analytics-context-CxuzZluw.js → post-analytics-context-CEqWyqgm.js} +1 -1
- package/core/built/admin/assets/{post-analytics-header-BV_8onIF.js → post-analytics-header-CpPPBAz4.js} +1 -1
- package/core/built/admin/assets/{post-share-modal-CnM21JFK.js → post-share-modal-Dln0kZhn.js} +1 -1
- package/core/built/admin/assets/{posts-C5zAbpdG.js → posts-C1Eh5Ypq.js} +1 -1
- package/core/built/admin/assets/{repeat-BbSnXois.js → repeat-CN4fiG5H.js} +1 -1
- package/core/built/admin/assets/{reply-CuCJJfZj.js → reply-BfWgvH7y.js} +1 -1
- package/core/built/admin/assets/{select-Bv-dkHeU.js → select-B_0NBkLz.js} +1 -1
- package/core/built/admin/assets/{settings-Cit2-dRQ.js → settings-BqaVcJee.js} +4 -4
- package/core/built/admin/assets/{settings-wlK_oNsg.js → settings-Dk9E7Fqv.js} +1 -1
- package/core/built/admin/assets/{sort-button-Dmyldyzm.js → sort-button-C2M35dLh.js} +1 -1
- package/core/built/admin/assets/{source-icon-DjyV6RS6.js → source-icon-DkGi13e_.js} +1 -1
- package/core/built/admin/assets/{sprout-jOQR37se.js → sprout-BKiwQsGn.js} +1 -1
- package/core/built/admin/assets/{square-IrYxuAJL.js → square-BEpRc_fY.js} +1 -1
- package/core/built/admin/assets/{stats-C4LbW8IV.js → stats-CRgy_cWm.js} +1 -1
- package/core/built/admin/assets/{stats-view-BwaLDryw.js → stats-view-CTQ4qO3S.js} +1 -1
- package/core/built/admin/assets/{step-1-C0QApeYD.js → step-1-CNbdmB8C.js} +1 -1
- package/core/built/admin/assets/{step-2-h0b6Njyb.js → step-2-Ddrl2uae.js} +1 -1
- package/core/built/admin/assets/{step-3-CaM-Hz3F.js → step-3-CbqkEtwh.js} +1 -1
- package/core/built/admin/assets/{table-P4FGxGxN.js → table-Dw9xFlFd.js} +1 -1
- package/core/built/admin/assets/{tabs-Cj65mCsJ.js → tabs-DCHagOip.js} +1 -1
- package/core/built/admin/assets/{tags-CDvEkvxr.js → tags-BsDlfsPN.js} +1 -1
- package/core/built/admin/assets/{tags-Dnv6zTag.js → tags-DV2SSdMK.js} +1 -1
- package/core/built/admin/assets/{tiers-Y3OCOT03.js → tiers-tc5tafWV.js} +1 -1
- package/core/built/admin/assets/{toggle-group-kZZo_vdJ.js → toggle-group-DS-ZVhCr.js} +1 -1
- package/core/built/admin/assets/{topic-filter-Cn1_Z9I7.js → topic-filter-BfoEqHRD.js} +1 -1
- package/core/built/admin/assets/{trash-ln90Rlgi.js → trash-CpnxYen-.js} +1 -1
- package/core/built/admin/assets/{url-helpers-B5_oMSPb.js → url-helpers-wKPPeCtD.js} +1 -1
- package/core/built/admin/assets/{use-growth-stats-DQsJauHH.js → use-growth-stats-CbHIETF_.js} +1 -1
- package/core/built/admin/assets/{use-infinite-virtual-scroll-4OIpSNMH.js → use-infinite-virtual-scroll-DU1EUhyj.js} +1 -1
- package/core/built/admin/assets/{use-simple-pagination-BedA-MMT.js → use-simple-pagination-X6kmRz2u.js} +1 -1
- package/core/built/admin/assets/{user-round-check-CYI147XP.js → user-round-check-DYkrjHxF.js} +1 -1
- package/core/built/admin/assets/{wallet-cards-xpilOd6G.js → wallet-cards-CSdWOmJE.js} +1 -1
- package/core/built/admin/assets/{web-VPMnLvnh.js → web-C39IKnvl.js} +1 -1
- package/core/built/admin/index.html +2 -2
- package/core/server/services/email-address/email-address-service-wrapper.js +3 -0
- package/core/server/services/email-address/email-address-service.js +11 -0
- package/core/server/services/email-address/email-address-service.ts +13 -0
- package/core/server/services/members/api.js +3 -1
- package/core/server/services/members/members-api/controllers/router-controller.js +5 -2
- package/core/server/services/members/members-api/members-api.js +4 -2
- package/package.json +5 -5
- package/tsconfig.tsbuildinfo +1 -1
- package/components/tryghost-i18n-6.17.1.tgz +0 -0
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./code-editor-view-
|
|
2
|
-
import{j as d,dK as LS,aH as _,e as Y,r as x,aC as ea,d8 as ge,dL as _S,dM as bd,dN as eb,dO as tb,dP as jS,df as ys,bT as $h,dQ as BS,aB as Vr,dR as $S,dS as FS,dT as HS,dU as VS,dV as US,dW as zS,dX as WS,dY as qS,dZ as GS,d_ as KS,d$ as ZS,e0 as YS,e1 as JS,e2 as XS,e3 as QS,e4 as Fh,aK as e2,aJ as t2,aI as n2,e5 as nb,da as Xr,bM as gt,db as Te,dj as r2,ac as Qr,ad as ze,e6 as Ef,e7 as Df,dc as pn,d9 as xd,e8 as i2,dq as rb,e9 as s2,ak as Rf,al as Of,ea as a2,aN as o2,cW as ib,ae as l2,am as sb,dl as c2,eb as u2,cF as d2,dy as ws,dH as ab,ec as f2,cD as h2,dg as p2,du as Qn,dd as m2,y as Hh,di as g2,dx as v2,dG as b2}from"./index-exFCQBCk.js";import{R as x2,C as y2,L as w2,T as S2}from"./index-DnY4rls4.js";import{u as ob,b as k2,c as C2,n as A2}from"./newsletters-adLgF_Re.js";import{b as M2}from"./posts-C5zAbpdG.js";import{a as $c,g as lb,d as I2,e as E2,f as D2}from"./tiers-Y3OCOT03.js";const Ct=({className:n})=>(n||(n="border-grey-200 dark:border-grey-800"),d.jsx(LS,{asChild:!0,decorative:!0,children:d.jsx("hr",{className:n})})),cb=_("text-sm font-medium tracking-normal"),ub=_(cb,"text-grey-900 dark:text-grey-500"),ft=({level:n=1,children:e,styles:t="",grey:r=!0,separator:i,useLabelTag:s,className:a="",...o})=>{const l=`${s?"label":`h${n}`}`;if(t+=n===6||s?` block ${r?ub:cb}`:" ",!s)switch(n){case 1:t+=" md:text-4xl leading-tighter";break;case 2:t+=" md:text-3xl";break;case 3:t+=" md:text-2xl";break;case 4:t+=" md:text-xl";break;case 5:t+=" md:text-lg";break}a=_(t,!r&&"dark:text-white",a);const c=Y.createElement(l,{className:a,key:"heading-elem",...o},e);if(i){const u=!n||n===1?2:1,f=n===6?2:3;return d.jsxs("div",{className:`gap-${u} mb-${f} flex flex-col`,children:[c,d.jsx(Ct,{})]})}else return c},Mn=({children:n,color:e,className:t,...r})=>{if(!n)return null;let i="text-grey-700 dark:text-grey-600";switch(e){case"red":i="text-red dark:text-red-500";break;case"green":i="text-green dark:text-green-500";break}return t=_("mt-1 inline-block text-xs leading-snug",i,t),d.jsx("span",{className:t,...r,children:n})},R2=Y.lazy(()=>ea(()=>import("./code-editor-view-CVRtsOBM.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),Vh=x.forwardRef(function(e,t){return d.jsx(x.Suspense,{fallback:null,children:d.jsx(R2,{...e,ref:t})})}),Tf=({size:n,color:e,delay:t,style:r})=>{const[i,s]=Y.useState(!t);Y.useEffect(()=>{if(t){const o=setTimeout(()=>{s(!0)},t);return()=>{clearTimeout(o)}}},[t]);let a="relative mx-0 my-[-0.5] box-border inline-block animate-spin rounded-full before:z-10 before:block before:rounded-full before:content-[''] ";switch(n){case"sm":a+=" h-[16px] w-[16px] border-2 before:mt-[10px] before:h-[3px] before:w-[3px] ";break;case"md":a+=" h-[20px] w-[20px] border-2 before:mt-[13px] before:h-[3px] before:w-[3px] ";break;case"lg":default:a+=" h-[50px] w-[50px] border before:mt-[7px] before:h-[7px] before:w-[7px] ";break}switch(e){case"light":a+=" border-white/20 before:bg-white dark:border-black/10 dark:before:bg-black ";break;case"dark":default:a+=" border-black/10 before:bg-black dark:border-white/20 dark:before:bg-white ";break}return n==="lg"?d.jsx("div",{className:`flex h-64 items-center justify-center transition-opacity ${i?"opacity-100":"opacity-0"}`,style:r,children:d.jsx("div",{className:a})}):d.jsx("div",{className:a})},ne=Y.forwardRef(({testId:n,size:e="md",label:t="",hideLabel:r=!1,icon:i="",iconSize:s,iconColorClass:a,color:o="clear",fullWidth:l,link:c,linkWithPadding:u=!1,disabled:f,unstyled:h=!1,className:p="",tag:g="button",loading:m=!1,loadingIndicatorColor:v,outlineOnMobile:b=!1,onClick:y,...w},S)=>{if(o||(o="clear"),!h){switch(p=_("inline-flex items-center justify-center whitespace-nowrap rounded text-sm transition",c&&o!=="clear"&&o!=="black"||!c&&o!=="clear"?"font-bold":"font-semibold",c?"":`${e==="sm"?"h-7":"h-[34px]"}`,c?"":`${e==="sm"||t&&i?"px-3":"px-4"}`,c&&u&&"-m-1 p-1",p),o){case"black":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-black text-white dark:bg-white dark:text-black ${!f&&"hover:bg-grey-900"}`,p),v="light",a=a||"text-white";break;case"light-grey":p=_(c?"text-grey-800 hover:text-green-400 dark:text-white":`bg-grey-200 text-black dark:bg-grey-900 dark:text-white ${!f&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"grey":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-grey-100 text-black dark:bg-grey-900 dark:text-white ${!f&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"green":p=_(c?" text-green hover:text-green-400":` bg-green text-white ${!f&&"hover:bg-green-400"}`,p),v="light",a=a||"text-white";break;case"red":p=_(c?"text-red hover:text-red-400":`bg-red text-white ${!f&&"hover:bg-red-400"}`,p),v="light",a=a||"text-white";break;case"white":p=_(c?"text-white hover:text-white dark:text-black dark:hover:text-grey-800":"bg-white text-black dark:bg-black dark:text-white",p),v="dark";break;case"outline":p=_(c?"text-black hover:text-grey-800 dark:text-white":`border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white ${!f&&"hover:!border-black dark:hover:!border-white"}`,p),v="dark";break;default:p=_(c?" text-black hover:text-grey-800 dark:text-white":`text-grey-900 dark:text-white dark:hover:bg-grey-900 ${!f&&"hover:bg-grey-200 hover:text-black"}`,b&&!c&&"border border-grey-300 hover:border-transparent md:border-transparent",p),v="dark";break}p=_(l&&!c&&" w-full",f?"opacity-40":"cursor-pointer",p)}const k=t&&i&&!r?"mr-1.5":"";let A="";A+=t&&r?"sr-only":"",A+=m?"invisible":"",s=s||(e==="sm"||t&&i?"sm":"md");const C=d.jsxs(d.Fragment,{children:[i&&d.jsx(ge,{className:k,colorClass:a,name:i,size:s}),d.jsx("span",{className:A,children:t}),m&&d.jsxs("div",{className:"absolute flex",children:[d.jsx(Tf,{color:v,size:e}),d.jsx("span",{className:"sr-only",children:"Loading..."})]})]});return Y.createElement(g,{className:p,"data-testid":n,disabled:f,type:"button",onClick:y,ref:S,...w},C)});ne.displayName="Button";function O2(n,e,t=!1){let r;return function(...i){const s=()=>{r=null,t||n.apply(this,i)},a=t&&!r;r&&clearTimeout(r),r=setTimeout(s,e),a&&n.apply(this,i)}}var at=function(){return at=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}return n},at.apply(this,arguments)},db=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t},Cu=Symbol("NiceModalId"),Nf={},Wi=Y.createContext(Nf),fb=Y.createContext(null),Sn={},Ds={},T2=0,qi=function(){throw new Error("No dispatch method detected, did you embed your app with NiceModal.Provider?")},hb=function(){return"_nice_modal_"+T2++},pb=function(n,e){var t,r,i;switch(n===void 0&&(n=Nf),e.type){case"nice-modal/show":{var s=e.payload,a=s.modalId,o=s.args;return at(at({},n),(t={},t[a]=at(at({},n[a]),{id:a,args:o,visible:!!Ds[a],delayVisible:!Ds[a]}),t))}case"nice-modal/hide":{var a=e.payload.modalId;return n[a]?at(at({},n),(r={},r[a]=at(at({},n[a]),{visible:!1}),r)):n}case"nice-modal/remove":{var a=e.payload.modalId,l=at({},n);return delete l[a],l}case"nice-modal/set-flags":{var c=e.payload,a=c.modalId,u=c.flags;return at(at({},n),(i={},i[a]=at(at({},n[a]),u),i))}default:return n}};function N2(n){var e;return(e=Sn[n])===null||e===void 0?void 0:e.comp}function P2(n,e){return{type:"nice-modal/show",payload:{modalId:n,args:e}}}function L2(n,e){return{type:"nice-modal/set-flags",payload:{modalId:n,flags:e}}}function _2(n){return{type:"nice-modal/hide",payload:{modalId:n}}}function j2(n){return{type:"nice-modal/remove",payload:{modalId:n}}}var er={},Ei={},Fc=function(n){return typeof n=="string"?n:(n[Cu]||(n[Cu]=hb()),n[Cu])};function Pf(n,e){var t=Fc(n);if(typeof n!="string"&&!Sn[t]&&Hc(t,n),qi(P2(t,e)),!er[t]){var r,i,s=new Promise(function(a,o){r=a,i=o});er[t]={resolve:r,reject:i,promise:s}}return er[t].promise}function Lf(n){var e=Fc(n);if(qi(_2(e)),delete er[e],!Ei[e]){var t,r,i=new Promise(function(s,a){t=s,r=a});Ei[e]={resolve:t,reject:r,promise:i}}return Ei[e].promise}var mb=function(n){var e=Fc(n);qi(j2(e)),delete er[e],delete Ei[e]},B2=function(n,e){qi(L2(n,e))};function ir(n,e){var t=x.useContext(Wi),r=x.useContext(fb),i=null,s=n&&typeof n!="string";if(n?i=Fc(n):i=r,!i)throw new Error("No modal id found in NiceModal.useModal.");var a=i;x.useEffect(function(){s&&!Sn[a]&&Hc(a,n,e)},[s,a,n,e]);var o=t[a],l=x.useCallback(function(g){return Pf(a,g)},[a]),c=x.useCallback(function(){return Lf(a)},[a]),u=x.useCallback(function(){return mb(a)},[a]),f=x.useCallback(function(g){var m;(m=er[a])===null||m===void 0||m.resolve(g),delete er[a]},[a]),h=x.useCallback(function(g){var m;(m=er[a])===null||m===void 0||m.reject(g),delete er[a]},[a]),p=x.useCallback(function(g){var m;(m=Ei[a])===null||m===void 0||m.resolve(g),delete Ei[a]},[a]);return x.useMemo(function(){return{id:a,args:o?.args,visible:!!o?.visible,keepMounted:!!o?.keepMounted,show:l,hide:c,remove:u,resolve:f,reject:h,resolveHide:p}},[a,o?.args,o?.visible,o?.keepMounted,l,c,u,f,h,p])}var $2=function(n){return function(e){var t,r=e.defaultVisible,i=e.keepMounted,s=e.id,a=db(e,["defaultVisible","keepMounted","id"]),o=ir(s),l=o.args,c=o.show,u=x.useContext(Wi),f=!!u[s];x.useEffect(function(){return r&&c(),Ds[s]=!0,function(){delete Ds[s]}},[s,c,r]),x.useEffect(function(){i&&B2(s,{keepMounted:!0})},[s,i]);var h=(t=u[s])===null||t===void 0?void 0:t.delayVisible;return x.useEffect(function(){h&&c(l)},[h,l,c]),f?Y.createElement(fb.Provider,{value:s},Y.createElement(n,at({},a,l))):null}},Hc=function(n,e,t){Sn[n]?Sn[n].props=t:Sn[n]={comp:e,props:t}},F2=function(n){delete Sn[n]},gb=function(){var n=x.useContext(Wi),e=Object.keys(n).filter(function(r){return!!n[r]});e.forEach(function(r){if(!Sn[r]&&!Ds[r]){console.warn("No modal found for id: "+r+". Please check the id or if it is registered or declared via JSX.");return}});var t=e.filter(function(r){return Sn[r]}).map(function(r){return at({id:r},Sn[r])});return Y.createElement(Y.Fragment,null,t.map(function(r){return Y.createElement(r.comp,at({key:r.id,id:r.id},r.props))}))},H2=function(n){var e=n.children,t=x.useReducer(pb,Nf),r=t[0];return qi=t[1],Y.createElement(Wi.Provider,{value:r},e,Y.createElement(gb,null))},V2=function(n){var e=n.children,t=n.dispatch,r=n.modals;return!t||!r?Y.createElement(H2,null,e):(qi=t,Y.createElement(Wi.Provider,{value:r},e,Y.createElement(gb,null)))},U2=function(n){var e=n.id,t=n.component;return x.useEffect(function(){return Hc(e,t),function(){F2(e)}},[e,t]),null},z2=function(n){var e,t=n.modal,r=n.handler,i=r===void 0?{}:r,s=db(n,["modal","handler"]),a=x.useMemo(function(){return hb()},[]),o=typeof t=="string"?(e=Sn[t])===null||e===void 0?void 0:e.comp:t;if(!i)throw new Error("No handler found in NiceModal.ModalHolder.");if(!o)throw new Error("No modal found for id: "+t+" in NiceModal.ModalHolder.");return i.show=x.useCallback(function(l){return Pf(a,l)},[a]),i.hide=x.useCallback(function(){return Lf(a)},[a]),Y.createElement(o,at({id:a},s))},W2=function(n){return{visible:n.visible,onOk:function(){return n.hide()},onCancel:function(){return n.hide()},afterClose:function(){n.resolveHide(),n.keepMounted||n.remove()}}},q2=function(n){return{visible:n.visible,onClose:function(){return n.hide()},afterVisibleChange:function(e){e||n.resolveHide(),!e&&!n.keepMounted&&n.remove()}}},G2=function(n){return{open:n.visible,onClose:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},K2=function(n){return{show:n.visible,onHide:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},Ke={Provider:V2,ModalDef:U2,ModalHolder:z2,NiceModalContext:Wi,create:$2,register:Hc,getModal:N2,show:Pf,hide:Lf,remove:mb,useModal:ir,reducer:pb,antdModal:W2,antdDrawer:q2,muiDialog:G2,bootstrapDialog:K2};const vb=Y.createContext({isDirty:!1,setGlobalDirtyState:()=>{}}),Z2=({children:n})=>{const[e,t]=x.useState([]),r=x.useCallback((i,s)=>{t(a=>s&&!a.includes(i)?[...a,i]:!s&&a.includes(i)?a.filter(o=>o!==i):a)},[]);return d.jsx(vb.Provider,{value:{isDirty:e.length>0,setGlobalDirtyState:r},children:n})},Vc=()=>{const n=x.useId(),{isDirty:e,setGlobalDirtyState:t}=x.useContext(vb);x.useEffect(()=>()=>t(n,!1),[n,t]);const r=x.useCallback(i=>t(n,i),[n,t]);return{isDirty:e,setGlobalDirtyState:r}},bb=x.createContext({isAnyTextFieldFocused:!1,setFocusState:()=>{},fetchKoenigLexical:async()=>{},darkMode:!1}),xb=()=>x.useContext(bb),Gi=()=>{const n=xb();if(!n)throw new Error("useFocusContext must be used within a FocusProvider");return n},Y2=({fetchKoenigLexical:n,darkMode:e,children:t})=>{const[r,i]=x.useState(!1),s=a=>{i(a)};return d.jsx(bb.Provider,{value:{isAnyTextFieldFocused:r,setFocusState:s,fetchKoenigLexical:n,darkMode:e},children:d.jsxs(Z2,{children:[d.jsx(_S,{}),d.jsx(Ke.Provider,{children:t})]})})},tt=({type:n="text",inputRef:e,title:t,hideTitle:r,value:i,error:s,placeholder:a,rightPlaceholder:o,hint:l,onChange:c,onFocus:u,onBlur:f,clearBg:h=!1,className:p="",maxLength:g,containerClassName:m="",hintClassName:v="",unstyled:b=!1,disabled:y,...w})=>{const S=x.useId(),{setFocusState:k}=Gi(),A=L=>{u?.(L),k(!0)},C=L=>{f?.(L),k(!1)},E=_("relative order-2 flex w-full items-center",t&&!r&&"mt-1.5"),M=!b&&_("dark:peer-hover:bg-grey-925 dark:peer-focus:bg-grey-950 absolute inset-0 rounded-lg border text-grey-300 transition-colors peer-hover:bg-grey-100 peer-focus:border-green peer-focus:bg-white peer-focus:shadow-[0_0_0_2px_rgba(48,207,67,.25)]",s?"border-red bg-white dark:bg-grey-925":"border-transparent bg-grey-150 dark:bg-grey-900",y&&"dark:peer-hover:bg-grey-950 bg-grey-50 peer-hover:bg-grey-50 dark:bg-grey-950"),R=!b&&_("peer z-[1] order-2 h-9 w-full bg-transparent px-3 py-1.5 text-sm placeholder:text-grey-500 md:h-[38px] md:py-2 md:text-md dark:placeholder:text-grey-700",y?"cursor-not-allowed text-grey-600 opacity-60 dark:text-grey-800":"dark:text-white",o?"w-0 grow rounded-l-lg":"rounded-lg",p),T=!b&&_("z-[1] order-3 rounded-r-lg",o?typeof o=="string"?"flex h-8 items-center py-1 pr-3 text-right text-sm text-grey-500 md:h-9 md:text-base":"h-9 pr-1":"pr-2");let N=d.jsx(d.Fragment,{});const P=d.jsx("input",{ref:e,className:R||p,disabled:y,id:S,maxLength:g,placeholder:a,type:n,value:i,onBlur:C,onChange:c,onFocus:A,...w});return N=d.jsx(eb,{name:S,asChild:!0,children:d.jsxs("div",{className:E,children:[d.jsx(tb,{asChild:!0,children:P}),!b&&!h&&d.jsx("div",{className:M||""}),o&&d.jsx("span",{className:T||"",children:o})]})}),v=_("order-3",v),m=_("flex flex-col",m),t||l?d.jsx(bd,{asChild:!0,children:d.jsxs("div",{className:m,children:[N,t&&d.jsx(ft,{className:r?"sr-only":"order-1",htmlFor:S,useLabelTag:!0,children:t}),l&&d.jsx(Mn,{className:v,color:s?"red":"default",children:l})]})}):d.jsx(bd,{asChild:!0,children:N})},J2=({valueInCents:n,onChange:e,...t})=>{const[r,i]=x.useState(n===""?"":((n||0)/100).toString()),s=o=>o.replace(/[^\d.]+/g,""),a=o=>{var l;return Math.round(parseFloat(((l=o.match(/[\d]+\.?[\d]{0,2}/))==null?void 0:l[0])||"0")*100)};return d.jsx(tt,{...t,value:r,onBlur:o=>{var l;i((a(o.target.value)/100).toString()),(l=t.onBlur)==null||l.call(t,o)},onChange:o=>{i(s(o.target.value)),e?.(a(o.target.value))}})},tc=({id:n,onUpload:e,children:t,style:r,unstyled:i=!1,inputRef:s,className:a,dragIndicatorClassName:o,accept:l,...c})=>{const[u,f]=x.useState(Date.now()),[h,p]=x.useState(!1),g=y=>{var w;const S=(w=y.target.files)==null?void 0:w[0];S&&e?.(S),f(Date.now())},m=y=>{var w;b(y);const S=(w=y.dataTransfer.files)==null?void 0:w[0];S&&e?.(S),f(Date.now())},v=y=>{y.preventDefault(),p(!0)},b=y=>{y.preventDefault(),p(!1)};return d.jsxs("label",{className:_("relative",a),htmlFor:n,style:r,onDragEnter:v,onDragLeave:b,onDragOver:v,onDrop:m,...c,children:[d.jsx("div",{className:_({"absolute inset-1 rounded":!0,"border-2 border-dashed border-grey-400/25":h},h&&[o])}),d.jsx("input",{ref:s||null,accept:l,id:n,type:"file",hidden:!0,onChange:g},u),typeof t=="string"?d.jsx("div",{className:i?"":"inline-flex h-[34px] cursor-pointer items-center justify-center rounded px-4 text-sm font-semibold hover:bg-grey-100 dark:text-white dark:hover:bg-grey-900",children:t}):t]})},X2=({title:n,grouped:e=!1,gap:t="md",margins:r="md",marginTop:i=!1,marginBottom:s=!0,className:a="",children:o})=>{let l=_("flex flex-col",t==="xs"&&"gap-4",t==="sm"&&"gap-6",t==="md"&&"gap-8",t==="lg"&&"gap-11");r||(r=t),s&&(l=_(l,r==="sm"&&"mb-7",r==="md"&&"mb-10",r==="lg"&&"mb-12")),i&&(l=_(l,r==="sm"&&"mt-7",r==="md"&&"mt-10",r==="lg"&&"mt-12")),e&&(l=_(l,"rounded-sm border border-grey-200 p-4 md:p-7 dark:border-grey-900"));const c=_(e?"mb-3":"mb-4");return e||n?d.jsxs("div",{className:a,children:[n&&d.jsx(ft,{className:c,level:5,children:n}),d.jsx("div",{className:l,children:o})]}):d.jsx("div",{className:_(l,a),children:o})},yb=({color:n="grey",children:e,className:t})=>{const r=_("relative overflow-hidden rounded-sm p-2",n==="grey"&&"text-black",n==="blue"&&"text-blue",n==="green"&&"text-green",n==="yellow"&&"text-yellow-600",n==="red"&&"text-red","after:pointer-events-none after:absolute after:inset-0 after:block after:opacity-10 after:content-['']",n==="grey"&&"after:bg-grey-500",n==="blue"&&"after:bg-blue",n==="green"&&"after:bg-green",n==="yellow"&&"after:bg-yellow",n==="red"&&"after:bg-red",t);return d.jsx("div",{className:r,children:e})};var Q2=Object.defineProperty,ek=(n,e,t)=>e in n?Q2(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,tk=(n,e,t)=>ek(n,e+"",t);class wb extends Y.Component{constructor(e){super(e),tk(this,"state",{hasError:!1})}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){jS(r=>{r.setTag("adminx_settings_component",t.componentStack),ys(e)}),console.error(e),console.error("In component:",t.componentStack)}render(){return this.state.hasError?d.jsxs(yb,{color:"red",children:["An error occurred loading ",this.props.name,". Please refresh and try again."]}):this.props.children}}const Ce=(n,e)=>function(r){return d.jsx(wb,{name:e,children:d.jsx(n,{...r})})},nk=function(n){let e="pending",t;const r=n().then(s=>{e="success",t=s},s=>{e="error",t=s});return{read:()=>{switch(e){case"pending":throw r;case"error":throw t;default:return t}}}},rk=({editor:n,onBlur:e,placeholder:t,nodes:r,emojiPicker:i=!0,darkMode:s=!1,singleParagraph:a=!1,children:o,initialEditorState:l,onChange:c})=>{const u=x.useCallback(b=>{var y;try{ys({error:b,tags:{lexical:!0},contexts:{koenig:{version:(y=window["@tryghost/koenig-lexical"])==null?void 0:y.version}}})}catch(w){console.error(w)}console.error(b)},[]),{setFocusState:f}=Gi(),h=()=>{e&&e(),f(!1)},p=()=>{f(!0)},g=x.useMemo(()=>new Proxy({},{get:(b,y)=>n.read()[y]}),[n]),m={DEFAULT_NODES:g.DEFAULT_TRANSFORMERS,BASIC_NODES:g.BASIC_TRANSFORMERS,MINIMAL_NODES:g.MINIMAL_TRANSFORMERS,EMAIL_NODES:g.EMAIL_TRANSFORMERS},v=r||"DEFAULT_NODES";return d.jsx(g.KoenigComposer,{darkMode:s,initialEditorState:l,nodes:g[v],onError:u,children:d.jsxs(g.KoenigComposableEditor,{className:"koenig-lexical koenig-lexical-editor-input",isSnippetsEnabled:!1,markdownTransformers:m[v],placeholderClassName:"koenig-lexical-editor-input-placeholder line-clamp-1",placeholderText:t,singleParagraph:a,onBlur:h,onChange:c,onFocus:p,children:[o(g),i?d.jsx(g.EmojiPickerPlugin,{}):null]})})},ik=({className:n,children:e,initialEditorState:t,onChange:r,inheritFontStyles:i=!0,loadingFallback:s,...a})=>{const{fetchKoenigLexical:o,darkMode:l}=xb(),c=x.useMemo(()=>nk(o),[o]),u=i?"[&_*]:!font-inherit [&_*]:!text-inherit":"";return d.jsx("div",{className:n||"w-full",children:d.jsx("div",{className:`koenig-react-editor w-full ${u}`,children:d.jsx(wb,{name:"editor",children:d.jsx(x.Suspense,{fallback:s||d.jsx("p",{className:"koenig-react-editor-loading",children:"Loading editor..."}),children:d.jsx(rk,{...a,darkMode:l,editor:c,initialEditorState:t,onChange:r,children:e})})})})})},Uh=({id:n,children:e,width:t="100%",height:r="120px",imageURL:i,imageFit:s="cover",imageContainerClassName:a,imageClassName:o,fileUploadClassName:l,fileUploadProps:c,deleteButtonClassName:u,deleteButtonContent:f,deleteButtonUnstyled:h=!1,imageBWCheckedBg:p=!1,unstyled:g=!1,onUpload:m,onDelete:v,onImageClick:b,pintura:y,editButtonClassName:w,editButtonContent:S,editButtonUnstyled:k=!1,buttonContainerClassName:A,unsplashButtonClassName:C,unsplashButtonUnstyled:E=!1,unsplashButtonContent:M,unsplashEnabled:R,openUnsplash:T})=>{if(g||(a=_("group relative flex justify-center",a),o=_(s==="cover"&&"object-cover",s==="contain"&&"object-contain",s==="fill"&&"object-fill",s==="scale-down"&&"object-scale-down",s==="none"&&"object-scale-down",o),l=_("flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900 dark:bg-grey-900 dark:text-grey-400",l),h||(u=_("absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",u)),k||(w=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",w)),E||(C=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(255,255,255)] text-white",C))),f=f||d.jsx(ge,{colorClass:"text-white",name:"trash",size:"sm"}),S=S||d.jsx(ge,{colorClass:"text-white",name:"pen",size:"sm"}),M=M||d.jsx(ge,{colorClass:"text-black",name:"unsplash-logo",size:"sm"}),i){let N=d.jsxs("div",{className:a,"data-testid":"image-upload-container",style:{width:g?"":t,height:g?"":r},children:[d.jsx("img",{alt:"",className:o,id:n,src:i,style:{width:g?"":t||"100%",height:g?"":r||"auto"},onClick:b}),d.jsxs("div",{className:A,children:[y?.isEnabled&&y?.openEditor&&d.jsx("button",{className:w,type:"button",onClick:y.openEditor,children:S}),d.jsx("button",{className:u,"data-testid":"image-delete-button",type:"button",onClick:v,children:f})]})]});if(p){const P="#d9d9d9";N=d.jsx("div",{style:{backgroundImage:`
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./code-editor-view-tCZOpc_h.js","./index-f5Lv9kLb.js","./index-BBrewxpF.css","./index-DO76vL0R.js","./newsletters-D78pgnas.js","./posts-C1Eh5Ypq.js","./tiers-tc5tafWV.js","./index-BJS8H75W.js","./index-BmK6ThYl.js","./_baseAssignValue-Bbalamaq.js","./modals-fMQzR7L6.js","./index-g4BWcHhl.js","./modals-BKa6wJ_I.css","./koenig-lexical-D2XHvS2J.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{j as d,dK as LS,aH as _,e as Y,r as x,aC as ea,d8 as ge,dL as _S,dM as bd,dN as eb,dO as tb,dP as jS,df as ys,bT as $h,dQ as BS,aB as Vr,dR as $S,dS as FS,dT as HS,dU as VS,dV as US,dW as zS,dX as WS,dY as qS,dZ as GS,d_ as KS,d$ as ZS,e0 as YS,e1 as JS,e2 as XS,e3 as QS,e4 as Fh,aK as e2,aJ as t2,aI as n2,e5 as nb,da as Xr,bM as gt,db as Te,dj as r2,ac as Qr,ad as ze,e6 as Ef,e7 as Df,dc as pn,d9 as xd,e8 as i2,dq as rb,e9 as s2,ak as Rf,al as Of,ea as a2,aN as o2,cW as ib,ae as l2,am as sb,dl as c2,eb as u2,cF as d2,dy as ws,dH as ab,ec as f2,cD as h2,dg as p2,du as Qn,dd as m2,y as Hh,di as g2,dx as v2,dG as b2}from"./index-f5Lv9kLb.js";import{R as x2,C as y2,L as w2,T as S2}from"./index-DO76vL0R.js";import{u as ob,b as k2,c as C2,n as A2}from"./newsletters-D78pgnas.js";import{b as M2}from"./posts-C1Eh5Ypq.js";import{a as $c,g as lb,d as I2,e as E2,f as D2}from"./tiers-tc5tafWV.js";const Ct=({className:n})=>(n||(n="border-grey-200 dark:border-grey-800"),d.jsx(LS,{asChild:!0,decorative:!0,children:d.jsx("hr",{className:n})})),cb=_("text-sm font-medium tracking-normal"),ub=_(cb,"text-grey-900 dark:text-grey-500"),ft=({level:n=1,children:e,styles:t="",grey:r=!0,separator:i,useLabelTag:s,className:a="",...o})=>{const l=`${s?"label":`h${n}`}`;if(t+=n===6||s?` block ${r?ub:cb}`:" ",!s)switch(n){case 1:t+=" md:text-4xl leading-tighter";break;case 2:t+=" md:text-3xl";break;case 3:t+=" md:text-2xl";break;case 4:t+=" md:text-xl";break;case 5:t+=" md:text-lg";break}a=_(t,!r&&"dark:text-white",a);const c=Y.createElement(l,{className:a,key:"heading-elem",...o},e);if(i){const u=!n||n===1?2:1,f=n===6?2:3;return d.jsxs("div",{className:`gap-${u} mb-${f} flex flex-col`,children:[c,d.jsx(Ct,{})]})}else return c},Mn=({children:n,color:e,className:t,...r})=>{if(!n)return null;let i="text-grey-700 dark:text-grey-600";switch(e){case"red":i="text-red dark:text-red-500";break;case"green":i="text-green dark:text-green-500";break}return t=_("mt-1 inline-block text-xs leading-snug",i,t),d.jsx("span",{className:t,...r,children:n})},R2=Y.lazy(()=>ea(()=>import("./code-editor-view-tCZOpc_h.js"),__vite__mapDeps([0,1,2,3,4,5,6]),import.meta.url)),Vh=x.forwardRef(function(e,t){return d.jsx(x.Suspense,{fallback:null,children:d.jsx(R2,{...e,ref:t})})}),Tf=({size:n,color:e,delay:t,style:r})=>{const[i,s]=Y.useState(!t);Y.useEffect(()=>{if(t){const o=setTimeout(()=>{s(!0)},t);return()=>{clearTimeout(o)}}},[t]);let a="relative mx-0 my-[-0.5] box-border inline-block animate-spin rounded-full before:z-10 before:block before:rounded-full before:content-[''] ";switch(n){case"sm":a+=" h-[16px] w-[16px] border-2 before:mt-[10px] before:h-[3px] before:w-[3px] ";break;case"md":a+=" h-[20px] w-[20px] border-2 before:mt-[13px] before:h-[3px] before:w-[3px] ";break;case"lg":default:a+=" h-[50px] w-[50px] border before:mt-[7px] before:h-[7px] before:w-[7px] ";break}switch(e){case"light":a+=" border-white/20 before:bg-white dark:border-black/10 dark:before:bg-black ";break;case"dark":default:a+=" border-black/10 before:bg-black dark:border-white/20 dark:before:bg-white ";break}return n==="lg"?d.jsx("div",{className:`flex h-64 items-center justify-center transition-opacity ${i?"opacity-100":"opacity-0"}`,style:r,children:d.jsx("div",{className:a})}):d.jsx("div",{className:a})},ne=Y.forwardRef(({testId:n,size:e="md",label:t="",hideLabel:r=!1,icon:i="",iconSize:s,iconColorClass:a,color:o="clear",fullWidth:l,link:c,linkWithPadding:u=!1,disabled:f,unstyled:h=!1,className:p="",tag:g="button",loading:m=!1,loadingIndicatorColor:v,outlineOnMobile:b=!1,onClick:y,...w},S)=>{if(o||(o="clear"),!h){switch(p=_("inline-flex items-center justify-center whitespace-nowrap rounded text-sm transition",c&&o!=="clear"&&o!=="black"||!c&&o!=="clear"?"font-bold":"font-semibold",c?"":`${e==="sm"?"h-7":"h-[34px]"}`,c?"":`${e==="sm"||t&&i?"px-3":"px-4"}`,c&&u&&"-m-1 p-1",p),o){case"black":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-black text-white dark:bg-white dark:text-black ${!f&&"hover:bg-grey-900"}`,p),v="light",a=a||"text-white";break;case"light-grey":p=_(c?"text-grey-800 hover:text-green-400 dark:text-white":`bg-grey-200 text-black dark:bg-grey-900 dark:text-white ${!f&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"grey":p=_(c?"text-black hover:text-grey-800 dark:text-white":`bg-grey-100 text-black dark:bg-grey-900 dark:text-white ${!f&&"hover:!bg-grey-300 dark:hover:!bg-grey-800"}`,p),v="dark";break;case"green":p=_(c?" text-green hover:text-green-400":` bg-green text-white ${!f&&"hover:bg-green-400"}`,p),v="light",a=a||"text-white";break;case"red":p=_(c?"text-red hover:text-red-400":`bg-red text-white ${!f&&"hover:bg-red-400"}`,p),v="light",a=a||"text-white";break;case"white":p=_(c?"text-white hover:text-white dark:text-black dark:hover:text-grey-800":"bg-white text-black dark:bg-black dark:text-white",p),v="dark";break;case"outline":p=_(c?"text-black hover:text-grey-800 dark:text-white":`border border-grey-300 bg-transparent text-black dark:border-grey-800 dark:text-white ${!f&&"hover:!border-black dark:hover:!border-white"}`,p),v="dark";break;default:p=_(c?" text-black hover:text-grey-800 dark:text-white":`text-grey-900 dark:text-white dark:hover:bg-grey-900 ${!f&&"hover:bg-grey-200 hover:text-black"}`,b&&!c&&"border border-grey-300 hover:border-transparent md:border-transparent",p),v="dark";break}p=_(l&&!c&&" w-full",f?"opacity-40":"cursor-pointer",p)}const k=t&&i&&!r?"mr-1.5":"";let A="";A+=t&&r?"sr-only":"",A+=m?"invisible":"",s=s||(e==="sm"||t&&i?"sm":"md");const C=d.jsxs(d.Fragment,{children:[i&&d.jsx(ge,{className:k,colorClass:a,name:i,size:s}),d.jsx("span",{className:A,children:t}),m&&d.jsxs("div",{className:"absolute flex",children:[d.jsx(Tf,{color:v,size:e}),d.jsx("span",{className:"sr-only",children:"Loading..."})]})]});return Y.createElement(g,{className:p,"data-testid":n,disabled:f,type:"button",onClick:y,ref:S,...w},C)});ne.displayName="Button";function O2(n,e,t=!1){let r;return function(...i){const s=()=>{r=null,t||n.apply(this,i)},a=t&&!r;r&&clearTimeout(r),r=setTimeout(s,e),a&&n.apply(this,i)}}var at=function(){return at=Object.assign||function(n){for(var e,t=1,r=arguments.length;t<r;t++){e=arguments[t];for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(n[i]=e[i])}return n},at.apply(this,arguments)},db=function(n,e){var t={};for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&e.indexOf(r)<0&&(t[r]=n[r]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,r=Object.getOwnPropertySymbols(n);i<r.length;i++)e.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(n,r[i])&&(t[r[i]]=n[r[i]]);return t},Cu=Symbol("NiceModalId"),Nf={},Wi=Y.createContext(Nf),fb=Y.createContext(null),Sn={},Ds={},T2=0,qi=function(){throw new Error("No dispatch method detected, did you embed your app with NiceModal.Provider?")},hb=function(){return"_nice_modal_"+T2++},pb=function(n,e){var t,r,i;switch(n===void 0&&(n=Nf),e.type){case"nice-modal/show":{var s=e.payload,a=s.modalId,o=s.args;return at(at({},n),(t={},t[a]=at(at({},n[a]),{id:a,args:o,visible:!!Ds[a],delayVisible:!Ds[a]}),t))}case"nice-modal/hide":{var a=e.payload.modalId;return n[a]?at(at({},n),(r={},r[a]=at(at({},n[a]),{visible:!1}),r)):n}case"nice-modal/remove":{var a=e.payload.modalId,l=at({},n);return delete l[a],l}case"nice-modal/set-flags":{var c=e.payload,a=c.modalId,u=c.flags;return at(at({},n),(i={},i[a]=at(at({},n[a]),u),i))}default:return n}};function N2(n){var e;return(e=Sn[n])===null||e===void 0?void 0:e.comp}function P2(n,e){return{type:"nice-modal/show",payload:{modalId:n,args:e}}}function L2(n,e){return{type:"nice-modal/set-flags",payload:{modalId:n,flags:e}}}function _2(n){return{type:"nice-modal/hide",payload:{modalId:n}}}function j2(n){return{type:"nice-modal/remove",payload:{modalId:n}}}var er={},Ei={},Fc=function(n){return typeof n=="string"?n:(n[Cu]||(n[Cu]=hb()),n[Cu])};function Pf(n,e){var t=Fc(n);if(typeof n!="string"&&!Sn[t]&&Hc(t,n),qi(P2(t,e)),!er[t]){var r,i,s=new Promise(function(a,o){r=a,i=o});er[t]={resolve:r,reject:i,promise:s}}return er[t].promise}function Lf(n){var e=Fc(n);if(qi(_2(e)),delete er[e],!Ei[e]){var t,r,i=new Promise(function(s,a){t=s,r=a});Ei[e]={resolve:t,reject:r,promise:i}}return Ei[e].promise}var mb=function(n){var e=Fc(n);qi(j2(e)),delete er[e],delete Ei[e]},B2=function(n,e){qi(L2(n,e))};function ir(n,e){var t=x.useContext(Wi),r=x.useContext(fb),i=null,s=n&&typeof n!="string";if(n?i=Fc(n):i=r,!i)throw new Error("No modal id found in NiceModal.useModal.");var a=i;x.useEffect(function(){s&&!Sn[a]&&Hc(a,n,e)},[s,a,n,e]);var o=t[a],l=x.useCallback(function(g){return Pf(a,g)},[a]),c=x.useCallback(function(){return Lf(a)},[a]),u=x.useCallback(function(){return mb(a)},[a]),f=x.useCallback(function(g){var m;(m=er[a])===null||m===void 0||m.resolve(g),delete er[a]},[a]),h=x.useCallback(function(g){var m;(m=er[a])===null||m===void 0||m.reject(g),delete er[a]},[a]),p=x.useCallback(function(g){var m;(m=Ei[a])===null||m===void 0||m.resolve(g),delete Ei[a]},[a]);return x.useMemo(function(){return{id:a,args:o?.args,visible:!!o?.visible,keepMounted:!!o?.keepMounted,show:l,hide:c,remove:u,resolve:f,reject:h,resolveHide:p}},[a,o?.args,o?.visible,o?.keepMounted,l,c,u,f,h,p])}var $2=function(n){return function(e){var t,r=e.defaultVisible,i=e.keepMounted,s=e.id,a=db(e,["defaultVisible","keepMounted","id"]),o=ir(s),l=o.args,c=o.show,u=x.useContext(Wi),f=!!u[s];x.useEffect(function(){return r&&c(),Ds[s]=!0,function(){delete Ds[s]}},[s,c,r]),x.useEffect(function(){i&&B2(s,{keepMounted:!0})},[s,i]);var h=(t=u[s])===null||t===void 0?void 0:t.delayVisible;return x.useEffect(function(){h&&c(l)},[h,l,c]),f?Y.createElement(fb.Provider,{value:s},Y.createElement(n,at({},a,l))):null}},Hc=function(n,e,t){Sn[n]?Sn[n].props=t:Sn[n]={comp:e,props:t}},F2=function(n){delete Sn[n]},gb=function(){var n=x.useContext(Wi),e=Object.keys(n).filter(function(r){return!!n[r]});e.forEach(function(r){if(!Sn[r]&&!Ds[r]){console.warn("No modal found for id: "+r+". Please check the id or if it is registered or declared via JSX.");return}});var t=e.filter(function(r){return Sn[r]}).map(function(r){return at({id:r},Sn[r])});return Y.createElement(Y.Fragment,null,t.map(function(r){return Y.createElement(r.comp,at({key:r.id,id:r.id},r.props))}))},H2=function(n){var e=n.children,t=x.useReducer(pb,Nf),r=t[0];return qi=t[1],Y.createElement(Wi.Provider,{value:r},e,Y.createElement(gb,null))},V2=function(n){var e=n.children,t=n.dispatch,r=n.modals;return!t||!r?Y.createElement(H2,null,e):(qi=t,Y.createElement(Wi.Provider,{value:r},e,Y.createElement(gb,null)))},U2=function(n){var e=n.id,t=n.component;return x.useEffect(function(){return Hc(e,t),function(){F2(e)}},[e,t]),null},z2=function(n){var e,t=n.modal,r=n.handler,i=r===void 0?{}:r,s=db(n,["modal","handler"]),a=x.useMemo(function(){return hb()},[]),o=typeof t=="string"?(e=Sn[t])===null||e===void 0?void 0:e.comp:t;if(!i)throw new Error("No handler found in NiceModal.ModalHolder.");if(!o)throw new Error("No modal found for id: "+t+" in NiceModal.ModalHolder.");return i.show=x.useCallback(function(l){return Pf(a,l)},[a]),i.hide=x.useCallback(function(){return Lf(a)},[a]),Y.createElement(o,at({id:a},s))},W2=function(n){return{visible:n.visible,onOk:function(){return n.hide()},onCancel:function(){return n.hide()},afterClose:function(){n.resolveHide(),n.keepMounted||n.remove()}}},q2=function(n){return{visible:n.visible,onClose:function(){return n.hide()},afterVisibleChange:function(e){e||n.resolveHide(),!e&&!n.keepMounted&&n.remove()}}},G2=function(n){return{open:n.visible,onClose:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},K2=function(n){return{show:n.visible,onHide:function(){return n.hide()},onExited:function(){n.resolveHide(),!n.keepMounted&&n.remove()}}},Ke={Provider:V2,ModalDef:U2,ModalHolder:z2,NiceModalContext:Wi,create:$2,register:Hc,getModal:N2,show:Pf,hide:Lf,remove:mb,useModal:ir,reducer:pb,antdModal:W2,antdDrawer:q2,muiDialog:G2,bootstrapDialog:K2};const vb=Y.createContext({isDirty:!1,setGlobalDirtyState:()=>{}}),Z2=({children:n})=>{const[e,t]=x.useState([]),r=x.useCallback((i,s)=>{t(a=>s&&!a.includes(i)?[...a,i]:!s&&a.includes(i)?a.filter(o=>o!==i):a)},[]);return d.jsx(vb.Provider,{value:{isDirty:e.length>0,setGlobalDirtyState:r},children:n})},Vc=()=>{const n=x.useId(),{isDirty:e,setGlobalDirtyState:t}=x.useContext(vb);x.useEffect(()=>()=>t(n,!1),[n,t]);const r=x.useCallback(i=>t(n,i),[n,t]);return{isDirty:e,setGlobalDirtyState:r}},bb=x.createContext({isAnyTextFieldFocused:!1,setFocusState:()=>{},fetchKoenigLexical:async()=>{},darkMode:!1}),xb=()=>x.useContext(bb),Gi=()=>{const n=xb();if(!n)throw new Error("useFocusContext must be used within a FocusProvider");return n},Y2=({fetchKoenigLexical:n,darkMode:e,children:t})=>{const[r,i]=x.useState(!1),s=a=>{i(a)};return d.jsx(bb.Provider,{value:{isAnyTextFieldFocused:r,setFocusState:s,fetchKoenigLexical:n,darkMode:e},children:d.jsxs(Z2,{children:[d.jsx(_S,{}),d.jsx(Ke.Provider,{children:t})]})})},tt=({type:n="text",inputRef:e,title:t,hideTitle:r,value:i,error:s,placeholder:a,rightPlaceholder:o,hint:l,onChange:c,onFocus:u,onBlur:f,clearBg:h=!1,className:p="",maxLength:g,containerClassName:m="",hintClassName:v="",unstyled:b=!1,disabled:y,...w})=>{const S=x.useId(),{setFocusState:k}=Gi(),A=L=>{u?.(L),k(!0)},C=L=>{f?.(L),k(!1)},E=_("relative order-2 flex w-full items-center",t&&!r&&"mt-1.5"),M=!b&&_("dark:peer-hover:bg-grey-925 dark:peer-focus:bg-grey-950 absolute inset-0 rounded-lg border text-grey-300 transition-colors peer-hover:bg-grey-100 peer-focus:border-green peer-focus:bg-white peer-focus:shadow-[0_0_0_2px_rgba(48,207,67,.25)]",s?"border-red bg-white dark:bg-grey-925":"border-transparent bg-grey-150 dark:bg-grey-900",y&&"dark:peer-hover:bg-grey-950 bg-grey-50 peer-hover:bg-grey-50 dark:bg-grey-950"),R=!b&&_("peer z-[1] order-2 h-9 w-full bg-transparent px-3 py-1.5 text-sm placeholder:text-grey-500 md:h-[38px] md:py-2 md:text-md dark:placeholder:text-grey-700",y?"cursor-not-allowed text-grey-600 opacity-60 dark:text-grey-800":"dark:text-white",o?"w-0 grow rounded-l-lg":"rounded-lg",p),T=!b&&_("z-[1] order-3 rounded-r-lg",o?typeof o=="string"?"flex h-8 items-center py-1 pr-3 text-right text-sm text-grey-500 md:h-9 md:text-base":"h-9 pr-1":"pr-2");let N=d.jsx(d.Fragment,{});const P=d.jsx("input",{ref:e,className:R||p,disabled:y,id:S,maxLength:g,placeholder:a,type:n,value:i,onBlur:C,onChange:c,onFocus:A,...w});return N=d.jsx(eb,{name:S,asChild:!0,children:d.jsxs("div",{className:E,children:[d.jsx(tb,{asChild:!0,children:P}),!b&&!h&&d.jsx("div",{className:M||""}),o&&d.jsx("span",{className:T||"",children:o})]})}),v=_("order-3",v),m=_("flex flex-col",m),t||l?d.jsx(bd,{asChild:!0,children:d.jsxs("div",{className:m,children:[N,t&&d.jsx(ft,{className:r?"sr-only":"order-1",htmlFor:S,useLabelTag:!0,children:t}),l&&d.jsx(Mn,{className:v,color:s?"red":"default",children:l})]})}):d.jsx(bd,{asChild:!0,children:N})},J2=({valueInCents:n,onChange:e,...t})=>{const[r,i]=x.useState(n===""?"":((n||0)/100).toString()),s=o=>o.replace(/[^\d.]+/g,""),a=o=>{var l;return Math.round(parseFloat(((l=o.match(/[\d]+\.?[\d]{0,2}/))==null?void 0:l[0])||"0")*100)};return d.jsx(tt,{...t,value:r,onBlur:o=>{var l;i((a(o.target.value)/100).toString()),(l=t.onBlur)==null||l.call(t,o)},onChange:o=>{i(s(o.target.value)),e?.(a(o.target.value))}})},tc=({id:n,onUpload:e,children:t,style:r,unstyled:i=!1,inputRef:s,className:a,dragIndicatorClassName:o,accept:l,...c})=>{const[u,f]=x.useState(Date.now()),[h,p]=x.useState(!1),g=y=>{var w;const S=(w=y.target.files)==null?void 0:w[0];S&&e?.(S),f(Date.now())},m=y=>{var w;b(y);const S=(w=y.dataTransfer.files)==null?void 0:w[0];S&&e?.(S),f(Date.now())},v=y=>{y.preventDefault(),p(!0)},b=y=>{y.preventDefault(),p(!1)};return d.jsxs("label",{className:_("relative",a),htmlFor:n,style:r,onDragEnter:v,onDragLeave:b,onDragOver:v,onDrop:m,...c,children:[d.jsx("div",{className:_({"absolute inset-1 rounded":!0,"border-2 border-dashed border-grey-400/25":h},h&&[o])}),d.jsx("input",{ref:s||null,accept:l,id:n,type:"file",hidden:!0,onChange:g},u),typeof t=="string"?d.jsx("div",{className:i?"":"inline-flex h-[34px] cursor-pointer items-center justify-center rounded px-4 text-sm font-semibold hover:bg-grey-100 dark:text-white dark:hover:bg-grey-900",children:t}):t]})},X2=({title:n,grouped:e=!1,gap:t="md",margins:r="md",marginTop:i=!1,marginBottom:s=!0,className:a="",children:o})=>{let l=_("flex flex-col",t==="xs"&&"gap-4",t==="sm"&&"gap-6",t==="md"&&"gap-8",t==="lg"&&"gap-11");r||(r=t),s&&(l=_(l,r==="sm"&&"mb-7",r==="md"&&"mb-10",r==="lg"&&"mb-12")),i&&(l=_(l,r==="sm"&&"mt-7",r==="md"&&"mt-10",r==="lg"&&"mt-12")),e&&(l=_(l,"rounded-sm border border-grey-200 p-4 md:p-7 dark:border-grey-900"));const c=_(e?"mb-3":"mb-4");return e||n?d.jsxs("div",{className:a,children:[n&&d.jsx(ft,{className:c,level:5,children:n}),d.jsx("div",{className:l,children:o})]}):d.jsx("div",{className:_(l,a),children:o})},yb=({color:n="grey",children:e,className:t})=>{const r=_("relative overflow-hidden rounded-sm p-2",n==="grey"&&"text-black",n==="blue"&&"text-blue",n==="green"&&"text-green",n==="yellow"&&"text-yellow-600",n==="red"&&"text-red","after:pointer-events-none after:absolute after:inset-0 after:block after:opacity-10 after:content-['']",n==="grey"&&"after:bg-grey-500",n==="blue"&&"after:bg-blue",n==="green"&&"after:bg-green",n==="yellow"&&"after:bg-yellow",n==="red"&&"after:bg-red",t);return d.jsx("div",{className:r,children:e})};var Q2=Object.defineProperty,ek=(n,e,t)=>e in n?Q2(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t,tk=(n,e,t)=>ek(n,e+"",t);class wb extends Y.Component{constructor(e){super(e),tk(this,"state",{hasError:!1})}static getDerivedStateFromError(){return{hasError:!0}}componentDidCatch(e,t){jS(r=>{r.setTag("adminx_settings_component",t.componentStack),ys(e)}),console.error(e),console.error("In component:",t.componentStack)}render(){return this.state.hasError?d.jsxs(yb,{color:"red",children:["An error occurred loading ",this.props.name,". Please refresh and try again."]}):this.props.children}}const Ce=(n,e)=>function(r){return d.jsx(wb,{name:e,children:d.jsx(n,{...r})})},nk=function(n){let e="pending",t;const r=n().then(s=>{e="success",t=s},s=>{e="error",t=s});return{read:()=>{switch(e){case"pending":throw r;case"error":throw t;default:return t}}}},rk=({editor:n,onBlur:e,placeholder:t,nodes:r,emojiPicker:i=!0,darkMode:s=!1,singleParagraph:a=!1,children:o,initialEditorState:l,onChange:c})=>{const u=x.useCallback(b=>{var y;try{ys({error:b,tags:{lexical:!0},contexts:{koenig:{version:(y=window["@tryghost/koenig-lexical"])==null?void 0:y.version}}})}catch(w){console.error(w)}console.error(b)},[]),{setFocusState:f}=Gi(),h=()=>{e&&e(),f(!1)},p=()=>{f(!0)},g=x.useMemo(()=>new Proxy({},{get:(b,y)=>n.read()[y]}),[n]),m={DEFAULT_NODES:g.DEFAULT_TRANSFORMERS,BASIC_NODES:g.BASIC_TRANSFORMERS,MINIMAL_NODES:g.MINIMAL_TRANSFORMERS,EMAIL_NODES:g.EMAIL_TRANSFORMERS},v=r||"DEFAULT_NODES";return d.jsx(g.KoenigComposer,{darkMode:s,initialEditorState:l,nodes:g[v],onError:u,children:d.jsxs(g.KoenigComposableEditor,{className:"koenig-lexical koenig-lexical-editor-input",isSnippetsEnabled:!1,markdownTransformers:m[v],placeholderClassName:"koenig-lexical-editor-input-placeholder line-clamp-1",placeholderText:t,singleParagraph:a,onBlur:h,onChange:c,onFocus:p,children:[o(g),i?d.jsx(g.EmojiPickerPlugin,{}):null]})})},ik=({className:n,children:e,initialEditorState:t,onChange:r,inheritFontStyles:i=!0,loadingFallback:s,...a})=>{const{fetchKoenigLexical:o,darkMode:l}=xb(),c=x.useMemo(()=>nk(o),[o]),u=i?"[&_*]:!font-inherit [&_*]:!text-inherit":"";return d.jsx("div",{className:n||"w-full",children:d.jsx("div",{className:`koenig-react-editor w-full ${u}`,children:d.jsx(wb,{name:"editor",children:d.jsx(x.Suspense,{fallback:s||d.jsx("p",{className:"koenig-react-editor-loading",children:"Loading editor..."}),children:d.jsx(rk,{...a,darkMode:l,editor:c,initialEditorState:t,onChange:r,children:e})})})})})},Uh=({id:n,children:e,width:t="100%",height:r="120px",imageURL:i,imageFit:s="cover",imageContainerClassName:a,imageClassName:o,fileUploadClassName:l,fileUploadProps:c,deleteButtonClassName:u,deleteButtonContent:f,deleteButtonUnstyled:h=!1,imageBWCheckedBg:p=!1,unstyled:g=!1,onUpload:m,onDelete:v,onImageClick:b,pintura:y,editButtonClassName:w,editButtonContent:S,editButtonUnstyled:k=!1,buttonContainerClassName:A,unsplashButtonClassName:C,unsplashButtonUnstyled:E=!1,unsplashButtonContent:M,unsplashEnabled:R,openUnsplash:T})=>{if(g||(a=_("group relative flex justify-center",a),o=_(s==="cover"&&"object-cover",s==="contain"&&"object-contain",s==="fill"&&"object-fill",s==="scale-down"&&"object-scale-down",s==="none"&&"object-scale-down",o),l=_("flex cursor-pointer items-center justify-center rounded border border-grey-100 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900 dark:bg-grey-900 dark:text-grey-400",l),h||(u=_("absolute right-4 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",u)),k||(w=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(0,0,0,0.75)] text-white hover:bg-black group-hover:!visible md:invisible",w)),E||(C=_("absolute right-16 top-4 flex h-8 w-8 cursor-pointer items-center justify-center rounded bg-[rgba(255,255,255)] text-white",C))),f=f||d.jsx(ge,{colorClass:"text-white",name:"trash",size:"sm"}),S=S||d.jsx(ge,{colorClass:"text-white",name:"pen",size:"sm"}),M=M||d.jsx(ge,{colorClass:"text-black",name:"unsplash-logo",size:"sm"}),i){let N=d.jsxs("div",{className:a,"data-testid":"image-upload-container",style:{width:g?"":t,height:g?"":r},children:[d.jsx("img",{alt:"",className:o,id:n,src:i,style:{width:g?"":t||"100%",height:g?"":r||"auto"},onClick:b}),d.jsxs("div",{className:A,children:[y?.isEnabled&&y?.openEditor&&d.jsx("button",{className:w,type:"button",onClick:y.openEditor,children:S}),d.jsx("button",{className:u,"data-testid":"image-delete-button",type:"button",onClick:v,children:f})]})]});if(p){const P="#d9d9d9";N=d.jsx("div",{style:{backgroundImage:`
|
|
3
3
|
linear-gradient(45deg, ${P} 25%, transparent 25%),
|
|
4
4
|
linear-gradient(45deg, transparent 75%, ${P} 75%),
|
|
5
5
|
linear-gradient(45deg, transparent 75%, ${P} 75%),
|
|
@@ -23,7 +23,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
23
23
|
`,i=n.state.doc.line(i.number+(t?1:-1)),s=n.bidiSpans(i),c=B.cursor(t?i.from:i.to)}if(l){if(!l(u))return o}else{if(!r)return c;l=r(u)}o=c}}function CR(n,e,t){let r=n.state.charCategorizer(e),i=r(t);return s=>{let a=r(s);return i==Ue.Space&&(i=a),i==a}}function AR(n,e,t,r){let i=e.head,s=t?1:-1;if(i==(t?n.state.doc.length:0))return B.cursor(i,e.assoc);let a=e.goalColumn,o,l=n.contentDOM.getBoundingClientRect(),c=n.coordsAtPos(i),u=n.documentTop;if(c)a==null&&(a=c.left-l.left),o=s<0?c.top:c.bottom;else{let p=n.viewState.lineBlockAt(i);a==null&&(a=Math.min(l.right-l.left,n.defaultCharacterWidth*(i-p.from))),o=(s<0?p.top:p.bottom)+u}let f=l.left+a,h=r??n.viewState.heightOracle.textHeight>>1;for(let p=0;;p+=10){let g=o+(h+p)*s,m=B1(n,{x:f,y:g},!1,s);if(g<l.top||g>l.bottom||(s<0?m<i:m>i))return B.cursor(m,e.assoc,void 0,a)}}function ql(n,e,t){for(;;){let r=0;for(let i of n)i.between(e-1,e+1,(s,a,o)=>{if(e>s&&e<a){let l=r||t||(e-s<a-e?-1:1);e=l<0?s:a,r=l}});if(!r)return e}}function Wu(n,e,t){let r=ql(n.state.facet(ah).map(i=>i(n)),t.from,e.head>t.from?-1:1);return r==t.from?t:B.cursor(r,r<t.from?1:-1)}class MR{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.chromeScrollHack=-1,this.pendingIOSKey=void 0,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastEscPress=0,this.lastContextMenu=0,this.scrollHandlers=[],this.registeredEvents=[],this.customHandlers=[],this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.mouseSelection=null;let t=(r,i)=>{this.ignoreDuringComposition(i)||i.type=="keydown"&&this.keydown(e,i)||(this.mustFlushObserver(i)&&e.observer.forceFlush(),this.runCustomHandlers(i.type,e,i)?i.preventDefault():r(e,i))};for(let r in rt){let i=rt[r];e.contentDOM.addEventListener(r,s=>{sm(e,s)&&t(i,s)},sf[r]),this.registeredEvents.push(r)}e.scrollDOM.addEventListener("mousedown",r=>{if(r.target==e.scrollDOM&&r.clientY>e.contentDOM.getBoundingClientRect().bottom&&(t(rt.mousedown,r),!r.defaultPrevented&&r.button==2)){let i=e.contentDOM.style.minHeight;e.contentDOM.style.minHeight="100%",setTimeout(()=>e.contentDOM.style.minHeight=i,200)}}),e.scrollDOM.addEventListener("drop",r=>{r.target==e.scrollDOM&&r.clientY>e.contentDOM.getBoundingClientRect().bottom&&t(rt.drop,r)}),X.chrome&&X.chrome_version==102&&e.scrollDOM.addEventListener("wheel",()=>{this.chromeScrollHack<0?e.contentDOM.style.pointerEvents="none":window.clearTimeout(this.chromeScrollHack),this.chromeScrollHack=setTimeout(()=>{this.chromeScrollHack=-1,e.contentDOM.style.pointerEvents=""},100)},{passive:!0}),this.notifiedFocused=e.hasFocus,X.safari&&e.contentDOM.addEventListener("input",()=>null)}ensureHandlers(e,t){var r;let i;this.customHandlers=[];for(let s of t)if(i=(r=s.update(e).spec)===null||r===void 0?void 0:r.domEventHandlers){this.customHandlers.push({plugin:s.value,handlers:i});for(let a in i)this.registeredEvents.indexOf(a)<0&&a!="scroll"&&(this.registeredEvents.push(a),e.contentDOM.addEventListener(a,o=>{sm(e,o)&&this.runCustomHandlers(a,e,o)&&o.preventDefault()}))}}runCustomHandlers(e,t,r){for(let i of this.customHandlers){let s=i.handlers[e];if(s)try{if(s.call(i.plugin,r,t)||r.defaultPrevented)return!0}catch(a){mn(t.state,a)}}return!1}runScrollHandlers(e,t){this.lastScrollTop=e.scrollDOM.scrollTop,this.lastScrollLeft=e.scrollDOM.scrollLeft;for(let r of this.customHandlers){let i=r.handlers.scroll;if(i)try{i.call(r.plugin,t,e)}catch(s){mn(e.state,s)}}}keydown(e,t){if(this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),t.keyCode==9&&Date.now()<this.lastEscPress+2e3)return!0;if(t.keyCode!=27&&F1.indexOf(t.keyCode)<0&&(e.inputState.lastEscPress=0),X.android&&X.chrome&&!t.synthetic&&(t.keyCode==13||t.keyCode==8))return e.observer.delayAndroidKey(t.key,t.keyCode),!0;let r;return X.ios&&!t.synthetic&&!t.altKey&&!t.metaKey&&((r=$1.find(i=>i.keyCode==t.keyCode))&&!t.ctrlKey||IR.indexOf(t.key)>-1&&t.ctrlKey&&!t.shiftKey)?(this.pendingIOSKey=r||t,setTimeout(()=>this.flushIOSKey(e),250),!0):!1}flushIOSKey(e){let t=this.pendingIOSKey;return t?(this.pendingIOSKey=void 0,Li(e.contentDOM,t.key,t.keyCode)):!1}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:X.safari&&!X.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}mustFlushObserver(e){return e.type=="keydown"&&e.keyCode!=229}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.mouseSelection&&this.mouseSelection.update(e),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}const $1=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],IR="dthko",F1=[16,17,18,20,91,92,224,225],Na=6;function Pa(n){return Math.max(0,n)*.7+8}function ER(n,e){return Math.max(Math.abs(n.clientX-e.clientX),Math.abs(n.clientY-e.clientY))}class DR{constructor(e,t,r,i){this.view=e,this.startEvent=t,this.style=r,this.mustSelect=i,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParent=qD(e.contentDOM),this.atoms=e.state.facet(ah).map(a=>a(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ye.allowMultipleSelections)&&RR(e,t),this.dragging=TR(e,t)&&z1(t)==1?null:!1}start(e){this.dragging===!1&&(e.preventDefault(),this.select(e))}move(e){var t;if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&ER(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let r=0,i=0,s=((t=this.scrollParent)===null||t===void 0?void 0:t.getBoundingClientRect())||{left:0,top:0,right:this.view.win.innerWidth,bottom:this.view.win.innerHeight},a=R1(this.view);e.clientX-a.left<=s.left+Na?r=-Pa(s.left-e.clientX):e.clientX+a.right>=s.right-Na&&(r=Pa(e.clientX-s.right)),e.clientY-a.top<=s.top+Na?i=-Pa(s.top-e.clientY):e.clientY+a.bottom>=s.bottom-Na&&(i=Pa(e.clientY-s.bottom)),this.setScrollSpeed(r,i)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){this.scrollParent?(this.scrollParent.scrollLeft+=this.scrollSpeed.x,this.scrollParent.scrollTop+=this.scrollSpeed.y):this.view.win.scrollBy(this.scrollSpeed.x,this.scrollSpeed.y),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(e){let t=null;for(let r=0;r<e.ranges.length;r++){let i=e.ranges[r],s=null;if(i.empty){let a=ql(this.atoms,i.from,0);a!=i.from&&(s=B.cursor(a,-1))}else{let a=ql(this.atoms,i.from,-1),o=ql(this.atoms,i.to,1);(a!=i.from||o!=i.to)&&(s=B.range(i.from==i.anchor?a:o,i.from==i.head?a:o))}s&&(t||(t=e.ranges.slice()),t[r]=s)}return t?B.create(t,e.mainIndex):e}select(e){let{view:t}=this,r=this.skipAtoms(this.style.get(e,this.extend,this.multiple));(this.mustSelect||!r.eq(t.state.selection)||r.main.assoc!=t.state.selection.main.assoc&&this.dragging===!1)&&this.view.dispatch({selection:r,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.docChanged&&this.dragging&&(this.dragging=this.dragging.map(e.changes)),this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function RR(n,e){let t=n.state.facet(x1);return t.length?t[0](e):X.mac?e.metaKey:e.ctrlKey}function OR(n,e){let t=n.state.facet(y1);return t.length?t[0](e):X.mac?!e.altKey:!e.ctrlKey}function TR(n,e){let{main:t}=n.state.selection;if(t.empty)return!1;let r=vc(n.root);if(!r||r.rangeCount==0)return!0;let i=r.getRangeAt(0).getClientRects();for(let s=0;s<i.length;s++){let a=i[s];if(a.left<=e.clientX&&a.right>=e.clientX&&a.top<=e.clientY&&a.bottom>=e.clientY)return!0}return!1}function sm(n,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,r;t!=n.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(r=Fe.get(t))&&r.ignoreEvent(e))return!1;return!0}const rt=Object.create(null),sf=Object.create(null),H1=X.ie&&X.ie_version<15||X.ios&&X.webkit_version<604;function NR(n){let e=n.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{n.focus(),t.remove(),V1(n,t.value)},50)}function V1(n,e){let{state:t}=n,r,i=1,s=t.toText(e),a=s.lines==t.selection.ranges.length;if(af!=null&&t.selection.ranges.every(l=>l.empty)&&af==s.toString()){let l=-1;r=t.changeByRange(c=>{let u=t.doc.lineAt(c.from);if(u.from==l)return{range:c};l=u.from;let f=t.toText((a?s.line(i++).text:e)+t.lineBreak);return{changes:{from:u.from,insert:f},range:B.cursor(c.from+f.length)}})}else a?r=t.changeByRange(l=>{let c=s.line(i++);return{changes:{from:l.from,to:l.to,insert:c.text},range:B.cursor(l.from+c.length)}}):r=t.replaceSelection(s);n.dispatch(r,{userEvent:"input.paste",scrollIntoView:!0})}rt.keydown=(n,e)=>{n.inputState.setSelectionOrigin("select"),e.keyCode==27&&(n.inputState.lastEscPress=Date.now())};rt.touchstart=(n,e)=>{n.inputState.lastTouchTime=Date.now(),n.inputState.setSelectionOrigin("select.pointer")};rt.touchmove=n=>{n.inputState.setSelectionOrigin("select.pointer")};sf.touchstart=sf.touchmove={passive:!0};rt.mousedown=(n,e)=>{if(n.observer.flush(),n.inputState.lastTouchTime>Date.now()-2e3)return;let t=null;for(let r of n.state.facet(w1))if(t=r(n,e),t)break;if(!t&&e.button==0&&(t=_R(n,e)),t){let r=!n.hasFocus;n.inputState.startMouseSelection(new DR(n,e,t,r)),r&&n.observer.ignore(()=>a1(n.contentDOM)),n.inputState.mouseSelection&&n.inputState.mouseSelection.start(e)}};function am(n,e,t,r){if(r==1)return B.cursor(e,t);if(r==2)return bR(n.state,e,t);{let i=jt.find(n.docView,e),s=n.state.doc.lineAt(i?i.posAtEnd:e),a=i?i.posAtStart:s.from,o=i?i.posAtEnd:s.to;return o<n.state.doc.length&&o==s.to&&o++,B.range(a,o)}}let U1=(n,e)=>n>=e.top&&n<=e.bottom,om=(n,e,t)=>U1(e,t)&&n>=t.left&&n<=t.right;function PR(n,e,t,r){let i=jt.find(n.docView,e);if(!i)return 1;let s=e-i.posAtStart;if(s==0)return 1;if(s==i.length)return-1;let a=i.coordsAt(s,-1);if(a&&om(t,r,a))return-1;let o=i.coordsAt(s,1);return o&&om(t,r,o)?1:a&&U1(r,a)?-1:1}function lm(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:PR(n,t,e.clientX,e.clientY)}}const LR=X.ie&&X.ie_version<=11;let cm=null,um=0,dm=0;function z1(n){if(!LR)return n.detail;let e=cm,t=dm;return cm=n,dm=Date.now(),um=!e||t>Date.now()-400&&Math.abs(e.clientX-n.clientX)<2&&Math.abs(e.clientY-n.clientY)<2?(um+1)%3:1}function _R(n,e){let t=lm(n,e),r=z1(e),i=n.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),i=i.map(s.changes))},get(s,a,o){let l=lm(n,s),c,u=am(n,l.pos,l.bias,r);if(t.pos!=l.pos&&!a){let f=am(n,t.pos,t.bias,r),h=Math.min(f.from,u.from),p=Math.max(f.to,u.to);u=h<u.from?B.range(h,p):B.range(p,h)}return a?i.replaceRange(i.main.extend(u.from,u.to)):o&&r==1&&i.ranges.length>1&&(c=jR(i,l.pos))?c:o?i.addRange(u):B.create([u])}}}function jR(n,e){for(let t=0;t<n.ranges.length;t++){let{from:r,to:i}=n.ranges[t];if(r<=e&&i>=e)return B.create(n.ranges.slice(0,t).concat(n.ranges.slice(t+1)),n.mainIndex==t?0:n.mainIndex-(n.mainIndex>t?1:0))}return null}rt.dragstart=(n,e)=>{let{selection:{main:t}}=n.state,{mouseSelection:r}=n.inputState;r&&(r.dragging=t),e.dataTransfer&&(e.dataTransfer.setData("Text",n.state.sliceDoc(t.from,t.to)),e.dataTransfer.effectAllowed="copyMove")};function fm(n,e,t,r){if(!t)return;let i=n.posAtCoords({x:e.clientX,y:e.clientY},!1);e.preventDefault();let{mouseSelection:s}=n.inputState,a=r&&s&&s.dragging&&OR(n,e)?{from:s.dragging.from,to:s.dragging.to}:null,o={from:i,insert:t},l=n.state.changes(a?[a,o]:o);n.focus(),n.dispatch({changes:l,selection:{anchor:l.mapPos(i,-1),head:l.mapPos(i,1)},userEvent:a?"move.drop":"input.drop"})}rt.drop=(n,e)=>{if(!e.dataTransfer)return;if(n.state.readOnly)return e.preventDefault();let t=e.dataTransfer.files;if(t&&t.length){e.preventDefault();let r=Array(t.length),i=0,s=()=>{++i==t.length&&fm(n,e,r.filter(a=>a!=null).join(n.state.lineBreak),!1)};for(let a=0;a<t.length;a++){let o=new FileReader;o.onerror=s,o.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(o.result)||(r[a]=o.result),s()},o.readAsText(t[a])}}else fm(n,e,e.dataTransfer.getData("Text"),!0)};rt.paste=(n,e)=>{if(n.state.readOnly)return e.preventDefault();n.observer.flush();let t=H1?null:e.clipboardData;t?(V1(n,t.getData("text/plain")||t.getData("text/uri-text")),e.preventDefault()):NR(n)};function BR(n,e){let t=n.dom.parentNode;if(!t)return;let r=t.appendChild(document.createElement("textarea"));r.style.cssText="position: fixed; left: -10000px; top: 10px",r.value=e,r.focus(),r.selectionEnd=e.length,r.selectionStart=0,setTimeout(()=>{r.remove(),n.focus()},50)}function $R(n){let e=[],t=[],r=!1;for(let i of n.selection.ranges)i.empty||(e.push(n.sliceDoc(i.from,i.to)),t.push(i));if(!e.length){let i=-1;for(let{from:s}of n.selection.ranges){let a=n.doc.lineAt(s);a.number>i&&(e.push(a.text),t.push({from:a.from,to:Math.min(n.doc.length,a.to+1)})),i=a.number}r=!0}return{text:e.join(n.lineBreak),ranges:t,linewise:r}}let af=null;rt.copy=rt.cut=(n,e)=>{let{text:t,ranges:r,linewise:i}=$R(n.state);if(!t&&!i)return;af=i?t:null;let s=H1?null:e.clipboardData;s?(e.preventDefault(),s.clearData(),s.setData("text/plain",t)):BR(n,t),e.type=="cut"&&!n.state.readOnly&&n.dispatch({changes:r,scrollIntoView:!0,userEvent:"delete.cut"})};const W1=Zn.define();function q1(n,e){let t=[];for(let r of n.facet(C1)){let i=r(n,e);i&&t.push(i)}return t?n.update({effects:t,annotations:W1.of(!0)}):null}function G1(n){setTimeout(()=>{let e=n.hasFocus;if(e!=n.inputState.notifiedFocused){let t=q1(n.state,e);t?n.dispatch(t):n.update([])}},10)}rt.focus=n=>{n.inputState.lastFocusTime=Date.now(),!n.scrollDOM.scrollTop&&(n.inputState.lastScrollTop||n.inputState.lastScrollLeft)&&(n.scrollDOM.scrollTop=n.inputState.lastScrollTop,n.scrollDOM.scrollLeft=n.inputState.lastScrollLeft),G1(n)};rt.blur=n=>{n.observer.clearSelectionRange(),G1(n)};rt.compositionstart=rt.compositionupdate=n=>{n.inputState.compositionFirstChange==null&&(n.inputState.compositionFirstChange=!0),n.inputState.composing<0&&(n.inputState.composing=0)};rt.compositionend=n=>{n.inputState.composing=-1,n.inputState.compositionEndedAt=Date.now(),n.inputState.compositionPendingKey=!0,n.inputState.compositionPendingChange=n.observer.pendingRecords().length>0,n.inputState.compositionFirstChange=null,X.chrome&&X.android?n.observer.flushSoon():n.inputState.compositionPendingChange?Promise.resolve().then(()=>n.observer.flush()):setTimeout(()=>{n.inputState.composing<0&&n.docView.hasComposition&&n.update([])},50)};rt.contextmenu=n=>{n.inputState.lastContextMenu=Date.now()};rt.beforeinput=(n,e)=>{var t;let r;if(X.chrome&&X.android&&(r=$1.find(i=>i.inputType==e.inputType))&&(n.observer.delayAndroidKey(r.key,r.keyCode),r.key=="Backspace"||r.key=="Delete")){let i=((t=window.visualViewport)===null||t===void 0?void 0:t.height)||0;setTimeout(()=>{var s;(((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0)>i+10&&n.hasFocus&&(n.contentDOM.blur(),n.focus())},100)}};const hm=["pre-wrap","normal","pre-line","break-spaces"];class FR{constructor(e){this.lineWrapping=e,this.doc=ke.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30,this.heightChanged=!1}heightForGap(e,t){let r=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(r+=Math.max(0,Math.ceil((t-e-r*this.lineLength*.5)/this.lineLength))),this.lineHeight*r}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return hm.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let r=0;r<e.length;r++){let i=e[r];i<0?r++:this.heightSamples[Math.floor(i*10)]||(t=!0,this.heightSamples[Math.floor(i*10)]=!0)}return t}refresh(e,t,r,i,s,a){let o=hm.indexOf(e)>-1,l=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=o;if(this.lineWrapping=o,this.lineHeight=t,this.charWidth=r,this.textHeight=i,this.lineLength=s,l){this.heightSamples={};for(let c=0;c<a.length;c++){let u=a[c];u<0?c++:this.heightSamples[Math.floor(u*10)]=!0}}return l}}class HR{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class Fn{constructor(e,t,r,i,s){this.from=e,this.length=t,this.top=r,this.height=i,this._content=s}get type(){return typeof this._content=="number"?Ge.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof Er?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new Fn(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var He=(function(n){return n[n.ByPos=0]="ByPos",n[n.ByHeight=1]="ByHeight",n[n.ByPosNoHeight=2]="ByPosNoHeight",n})(He||(He={}));const Gl=.001;class $t{constructor(e,t,r=2){this.length=e,this.height=t,this.flags=r}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>Gl&&(e.heightChanged=!0),this.height=t)}replace(e,t,r){return $t.of(r)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,r,i){let s=this,a=r.doc;for(let o=i.length-1;o>=0;o--){let{fromA:l,toA:c,fromB:u,toB:f}=i[o],h=s.lineAt(l,He.ByPosNoHeight,r.setDoc(t),0,0),p=h.to>=c?h:s.lineAt(c,He.ByPosNoHeight,r,0,0);for(f+=p.to-c,c=p.to;o>0&&h.from<=i[o-1].toA;)l=i[o-1].fromA,u=i[o-1].fromB,o--,l<h.from&&(h=s.lineAt(l,He.ByPosNoHeight,r,0,0));u+=h.from-l,l=h.from;let g=oh.build(r.setDoc(a),e,u,f);s=s.replace(l,c,g)}return s.updateHeight(r,0)}static empty(){return new en(0,0)}static of(e){if(e.length==1)return e[0];let t=0,r=e.length,i=0,s=0;for(;;)if(t==r)if(i>s*2){let o=e[t-1];o.break?e.splice(--t,1,o.left,null,o.right):e.splice(--t,1,o.left,o.right),r+=1+o.break,i-=o.size}else if(s>i*2){let o=e[r];o.break?e.splice(r,1,o.left,null,o.right):e.splice(r,1,o.left,o.right),r+=2+o.break,s-=o.size}else break;else if(i<s){let o=e[t++];o&&(i+=o.size)}else{let o=e[--r];o&&(s+=o.size)}let a=0;return e[t-1]==null?(a=1,t--):e[t]==null&&(a=1,r++),new VR($t.of(e.slice(0,t)),a,$t.of(e.slice(r)))}}$t.prototype.size=1;class K1 extends $t{constructor(e,t,r){super(e,t),this.deco=r}blockAt(e,t,r,i){return new Fn(i,this.length,r,this.height,this.deco||0)}lineAt(e,t,r,i,s){return this.blockAt(0,r,i,s)}forEachLine(e,t,r,i,s,a){e<=s+this.length&&t>=s&&a(this.blockAt(0,r,i,s))}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more&&this.setHeight(e,i.heights[i.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}}class en extends K1{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,r,i){return new Fn(i,this.length,r,this.height,this.breaks)}replace(e,t,r){let i=r[0];return r.length==1&&(i instanceof en||i instanceof xt&&i.flags&4)&&Math.abs(this.length-i.length)<10?(i instanceof xt?i=new en(i.length,this.height):i.height=this.height,this.outdated||(i.outdated=!1),i):$t.of(r)}updateHeight(e,t=0,r=!1,i){return i&&i.from<=t&&i.more?this.setHeight(e,i.heights[i.index++]):(r||this.outdated)&&this.setHeight(e,Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class xt extends $t{constructor(e){super(e,0)}heightMetrics(e,t){let r=e.doc.lineAt(t).number,i=e.doc.lineAt(t+this.length).number,s=i-r+1,a,o=0;if(e.lineWrapping){let l=Math.min(this.height,e.lineHeight*s);a=l/s,this.length>s+1&&(o=(this.height-l)/(this.length-s-1))}else a=this.height/s;return{firstLine:r,lastLine:i,perLine:a,perChar:o}}blockAt(e,t,r,i){let{firstLine:s,lastLine:a,perLine:o,perChar:l}=this.heightMetrics(t,i);if(t.lineWrapping){let c=i+Math.round(Math.max(0,Math.min(1,(e-r)/this.height))*this.length),u=t.doc.lineAt(c),f=o+u.length*l,h=Math.max(r,e-f/2);return new Fn(u.from,u.length,h,f,0)}else{let c=Math.max(0,Math.min(a-s,Math.floor((e-r)/o))),{from:u,length:f}=t.doc.line(s+c);return new Fn(u,f,r+o*c,o,0)}}lineAt(e,t,r,i,s){if(t==He.ByHeight)return this.blockAt(e,r,i,s);if(t==He.ByPosNoHeight){let{from:p,to:g}=r.doc.lineAt(e);return new Fn(p,g-p,0,0,0)}let{firstLine:a,perLine:o,perChar:l}=this.heightMetrics(r,s),c=r.doc.lineAt(e),u=o+c.length*l,f=c.number-a,h=i+o*f+l*(c.from-s-f);return new Fn(c.from,c.length,Math.max(i,Math.min(h,i+this.height-u)),u,0)}forEachLine(e,t,r,i,s,a){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:o,perLine:l,perChar:c}=this.heightMetrics(r,s);for(let u=e,f=i;u<=t;){let h=r.doc.lineAt(u);if(u==e){let g=h.number-o;f+=l*g+c*(e-s-g)}let p=l+c*h.length;a(new Fn(h.from,h.length,f,p,0)),f+=p,u=h.to+1}}replace(e,t,r){let i=this.length-t;if(i>0){let s=r[r.length-1];s instanceof xt?r[r.length-1]=new xt(s.length+i):r.push(null,new xt(i-1))}if(e>0){let s=r[0];s instanceof xt?r[0]=new xt(e+s.length):r.unshift(new xt(e-1),null)}return $t.of(r)}decomposeLeft(e,t){t.push(new xt(e-1),null)}decomposeRight(e,t){t.push(null,new xt(this.length-e-1))}updateHeight(e,t=0,r=!1,i){let s=t+this.length;if(i&&i.from<=t+this.length&&i.more){let a=[],o=Math.max(t,i.from),l=-1;for(i.from>t&&a.push(new xt(i.from-t-1).updateHeight(e,t));o<=s&&i.more;){let u=e.doc.lineAt(o).length;a.length&&a.push(null);let f=i.heights[i.index++];l==-1?l=f:Math.abs(f-l)>=Gl&&(l=-2);let h=new en(u,f);h.outdated=!1,a.push(h),o+=u+1}o<=s&&a.push(null,new xt(s-o).updateHeight(e,o));let c=$t.of(a);return(l<0||Math.abs(c.height-this.height)>=Gl||Math.abs(l-this.heightMetrics(e,t).perLine)>=Gl)&&(e.heightChanged=!0),c}else(r||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class VR extends $t{constructor(e,t,r){super(e.length+t+r.length,e.height+r.height,t|(e.outdated||r.outdated?2:0)),this.left=e,this.right=r,this.size=e.size+r.size}get break(){return this.flags&1}blockAt(e,t,r,i){let s=r+this.left.height;return e<s?this.left.blockAt(e,t,r,i):this.right.blockAt(e,t,s,i+this.left.length+this.break)}lineAt(e,t,r,i,s){let a=i+this.left.height,o=s+this.left.length+this.break,l=t==He.ByHeight?e<a:e<o,c=l?this.left.lineAt(e,t,r,i,s):this.right.lineAt(e,t,r,a,o);if(this.break||(l?c.to<o:c.from>o))return c;let u=t==He.ByPosNoHeight?He.ByPosNoHeight:He.ByPos;return l?c.join(this.right.lineAt(o,u,r,a,o)):this.left.lineAt(o,u,r,i,s).join(c)}forEachLine(e,t,r,i,s,a){let o=i+this.left.height,l=s+this.left.length+this.break;if(this.break)e<l&&this.left.forEachLine(e,t,r,i,s,a),t>=l&&this.right.forEachLine(e,t,r,o,l,a);else{let c=this.lineAt(l,He.ByPos,r,i,s);e<c.from&&this.left.forEachLine(e,c.from-1,r,i,s,a),c.to>=e&&c.from<=t&&a(c),t>c.to&&this.right.forEachLine(c.to+1,t,r,o,l,a)}}replace(e,t,r){let i=this.left.length+this.break;if(t<i)return this.balanced(this.left.replace(e,t,r),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-i,t-i,r));let s=[];e>0&&this.decomposeLeft(e,s);let a=s.length;for(let o of r)s.push(o);if(e>0&&pm(s,a-1),t<this.length){let o=s.length;this.decomposeRight(t,s),pm(s,o)}return $t.of(s)}decomposeLeft(e,t){let r=this.left.length;if(e<=r)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(r++,e>=r&&t.push(null)),e>r&&this.right.decomposeLeft(e-r,t)}decomposeRight(e,t){let r=this.left.length,i=r+this.break;if(e>=i)return this.right.decomposeRight(e-i,t);e<r&&this.left.decomposeRight(e,t),this.break&&e<i&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?$t.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=e.height+t.height,this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,r=!1,i){let{left:s,right:a}=this,o=t+s.length+this.break,l=null;return i&&i.from<=t+s.length&&i.more?l=s=s.updateHeight(e,t,r,i):s.updateHeight(e,t,r),i&&i.from<=o+a.length&&i.more?l=a=a.updateHeight(e,o,r,i):a.updateHeight(e,o,r),l?this.balanced(s,a):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function pm(n,e){let t,r;n[e]==null&&(t=n[e-1])instanceof xt&&(r=n[e+1])instanceof xt&&n.splice(e-1,3,new xt(t.length+1+r.length))}const UR=5;class oh{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let r=Math.min(t,this.lineEnd),i=this.nodes[this.nodes.length-1];i instanceof en?i.length+=r-this.pos:(r>this.pos||!this.isCovered)&&this.nodes.push(new en(r-this.pos,-1)),this.writtenTo=r,t>r&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,r){if(e<t||r.heightRelevant){let i=r.widget?r.widget.estimatedHeight:0,s=r.widget?r.widget.lineBreaks:0;i<0&&(i=this.oracle.lineHeight);let a=t-e;r.block?this.addBlock(new K1(a,i,r)):(a||s||i>=UR)&&this.addLineDeco(i,s,a)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new en(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let r=new xt(t-e);return this.oracle.doc.lineAt(e).to==t&&(r.flags|=4),r}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof en)return e;let t=new en(0,-1);return this.nodes.push(t),t}addBlock(e){var t;this.enterLine();let r=(t=e.deco)===null||t===void 0?void 0:t.type;r==Ge.WidgetAfter&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,r!=Ge.WidgetBefore&&(this.covering=e)}addLineDeco(e,t,r){let i=this.ensureLine();i.length+=r,i.collapsed+=r,i.widgetHeight=Math.max(i.widgetHeight,e),i.breaks+=t,this.writtenTo=this.pos=this.pos+r}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof en)&&!this.isCovered?this.nodes.push(new en(0,-1)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let r=e;for(let i of this.nodes)i instanceof en&&i.updateHeight(this.oracle,r),r+=i?i.length:1;return this.nodes}static build(e,t,r,i){let s=new oh(r,e);return Pe.spans(t,r,i,s,0),s.finish(r)}}function zR(n,e,t){let r=new WR;return Pe.compare(n,e,t,r,0),r.changes}class WR{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,r,i){(e<t||r&&r.heightRelevant||i&&i.heightRelevant)&&Jd(e,t,this.changes,5)}}function qR(n,e){let t=n.getBoundingClientRect(),r=n.ownerDocument,i=r.defaultView||window,s=Math.max(0,t.left),a=Math.min(i.innerWidth,t.right),o=Math.max(0,t.top),l=Math.min(i.innerHeight,t.bottom);for(let c=n.parentNode;c&&c!=r.body;)if(c.nodeType==1){let u=c,f=window.getComputedStyle(u);if((u.scrollHeight>u.clientHeight||u.scrollWidth>u.clientWidth)&&f.overflow!="visible"){let h=u.getBoundingClientRect();s=Math.max(s,h.left),a=Math.min(a,h.right),o=Math.max(o,h.top),l=c==n.parentNode?h.bottom:Math.min(l,h.bottom)}c=f.position=="absolute"||f.position=="fixed"?u.offsetParent:u.parentNode}else if(c.nodeType==11)c=c.host;else break;return{left:s-t.left,right:Math.max(s,a)-t.left,top:o-(t.top+e),bottom:Math.max(o,l)-(t.top+e)}}function GR(n,e){let t=n.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class qu{constructor(e,t,r){this.from=e,this.to=t,this.size=r}static same(e,t){if(e.length!=t.length)return!1;for(let r=0;r<e.length;r++){let i=e[r],s=t[r];if(i.from!=s.from||i.to!=s.to||i.size!=s.size)return!1}return!0}draw(e){return le.replace({widget:new KR(this.size,e)}).range(this.from,this.to)}}class KR extends sr{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class mm{constructor(e){this.state=e,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!0,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=gm,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=qe.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let t=e.facet(sh).some(r=>typeof r!="function"&&r.class=="cm-lineWrapping");this.heightOracle=new FR(t),this.stateDeco=e.facet(Hs).filter(r=>typeof r!="function"),this.heightMap=$t.empty().applyChanges(this.stateDeco,ke.empty,this.heightOracle.setDoc(e.doc),[new gn(0,0,0,e.doc.length)]),this.viewport=this.getViewport(0,null),this.updateViewportLines(),this.updateForViewport(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=le.set(this.lineGaps.map(r=>r.draw(!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let r=0;r<=1;r++){let i=r?t.head:t.anchor;if(!e.some(({from:s,to:a})=>i>=s&&i<=a)){let{from:s,to:a}=this.lineBlockAt(i);e.push(new La(s,a))}}this.viewports=e.sort((r,i)=>r.from-i.from),this.scaler=this.heightMap.height<=7e6?gm:new JR(this.heightOracle,this.heightMap,this.viewports)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(this.scaler.scale==1?e:bs(e,this.scaler))})}update(e,t=null){this.state=e.state;let r=this.stateDeco;this.stateDeco=this.state.facet(Hs).filter(u=>typeof u!="function");let i=e.changedRanges,s=gn.extendWithRanges(i,zR(r,this.stateDeco,e?e.changes:ct.empty(this.state.doc.length))),a=this.heightMap.height,o=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),this.heightMap.height!=a&&(e.flags|=2),o?(this.scrollAnchorPos=e.changes.mapPos(o.from,-1),this.scrollAnchorHeight=o.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let l=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<l.from||t.range.head>l.to)||!this.viewportIsAppropriate(l))&&(l=this.getViewport(0,t));let c=!e.changes.empty||e.flags&2||l.from!=this.viewport.from||l.to!=this.viewport.to;this.viewport=l,this.updateForViewport(),c&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(M1)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,r=window.getComputedStyle(t),i=this.heightOracle,s=r.whiteSpace;this.defaultTextDirection=r.direction=="rtl"?qe.RTL:qe.LTR;let a=this.heightOracle.mustRefreshForWrapping(s),o=t.getBoundingClientRect(),l=a||this.mustMeasureContent||this.contentDOMHeight!=o.height;this.contentDOMHeight=o.height,this.mustMeasureContent=!1;let c=0,u=0,f=parseInt(r.paddingTop)||0,h=parseInt(r.paddingBottom)||0;(this.paddingTop!=f||this.paddingBottom!=h)&&(this.paddingTop=f,this.paddingBottom=h,c|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(i.lineWrapping&&(l=!0),this.editorWidth=e.scrollDOM.clientWidth,c|=8),this.scrollTop!=e.scrollDOM.scrollTop&&(this.scrollAnchorHeight=-1,this.scrollTop=e.scrollDOM.scrollTop),this.scrolledToBottom=l1(e.scrollDOM);let p=(this.printing?GR:qR)(t,this.paddingTop),g=p.top-this.pixelViewport.top,m=p.bottom-this.pixelViewport.bottom;this.pixelViewport=p;let v=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(v!=this.inView&&(this.inView=v,v&&(l=!0)),!this.inView&&!this.scrollTarget)return 0;let b=o.width;if((this.contentDOMWidth!=b||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=o.width,this.editorHeight=e.scrollDOM.clientHeight,c|=8),l){let w=e.docView.measureVisibleLineHeights(this.viewport);if(i.mustRefreshForHeights(w)&&(a=!0),a||i.lineWrapping&&Math.abs(b-this.contentDOMWidth)>i.charWidth){let{lineHeight:S,charWidth:k,textHeight:A}=e.docView.measureTextSize();a=S>0&&i.refresh(s,S,k,A,b/k,w),a&&(e.docView.minWidth=0,c|=8)}g>0&&m>0?u=Math.max(g,m):g<0&&m<0&&(u=Math.min(g,m)),i.heightChanged=!1;for(let S of this.viewports){let k=S.from==this.viewport.from?w:e.docView.measureVisibleLineHeights(S);this.heightMap=(a?$t.empty().applyChanges(this.stateDeco,ke.empty,this.heightOracle,[new gn(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(i,0,a,new HR(S.from,k))}i.heightChanged&&(c|=2)}let y=!this.viewportIsAppropriate(this.viewport,u)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return y&&(this.viewport=this.getViewport(u,this.scrollTarget)),this.updateForViewport(),(c&2||y)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(a?[]:this.lineGaps,e)),c|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),c}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let r=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),i=this.heightMap,s=this.heightOracle,{visibleTop:a,visibleBottom:o}=this,l=new La(i.lineAt(a-r*1e3,He.ByHeight,s,0,0).from,i.lineAt(o+(1-r)*1e3,He.ByHeight,s,0,0).to);if(t){let{head:c}=t.range;if(c<l.from||c>l.to){let u=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),f=i.lineAt(c,He.ByPos,s,0,0),h;t.y=="center"?h=(f.top+f.bottom)/2-u/2:t.y=="start"||t.y=="nearest"&&c<l.from?h=f.top:h=f.bottom-u,l=new La(i.lineAt(h-1e3/2,He.ByHeight,s,0,0).from,i.lineAt(h+u+1e3/2,He.ByHeight,s,0,0).to)}}return l}mapViewport(e,t){let r=t.mapPos(e.from,-1),i=t.mapPos(e.to,1);return new La(this.heightMap.lineAt(r,He.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(i,He.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},r=0){if(!this.inView)return!0;let{top:i}=this.heightMap.lineAt(e,He.ByPos,this.heightOracle,0,0),{bottom:s}=this.heightMap.lineAt(t,He.ByPos,this.heightOracle,0,0),{visibleTop:a,visibleBottom:o}=this;return(e==0||i<=a-Math.max(10,Math.min(-r,250)))&&(t==this.state.doc.length||s>=o+Math.max(10,Math.min(r,250)))&&i>a-2*1e3&&s<o+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let r=[];for(let i of e)t.touchesRange(i.from,i.to)||r.push(new qu(t.mapPos(i.from),t.mapPos(i.to),i.size));return r}ensureLineGaps(e,t){let r=this.heightOracle.lineWrapping,i=r?1e4:2e3,s=i>>1,a=i<<1;if(this.defaultTextDirection!=qe.LTR&&!r)return[];let o=[],l=(c,u,f,h)=>{if(u-c<s)return;let p=this.state.selection.main,g=[p.from];p.empty||g.push(p.to);for(let v of g)if(v>c&&v<u){l(c,v-10,f,h),l(v+10,u,f,h);return}let m=YR(e,v=>v.from>=f.from&&v.to<=f.to&&Math.abs(v.from-c)<s&&Math.abs(v.to-u)<s&&!g.some(b=>v.from<b&&v.to>b));if(!m){if(u<f.to&&t&&r&&t.visibleRanges.some(v=>v.from<=u&&v.to>=u)){let v=t.moveToLineBoundary(B.cursor(u),!1,!0).head;v>c&&(u=v)}m=new qu(c,u,this.gapSize(f,c,u,h))}o.push(m)};for(let c of this.viewportLines){if(c.length<a)continue;let u=ZR(c.from,c.to,this.stateDeco);if(u.total<a)continue;let f=this.scrollTarget?this.scrollTarget.range.head:null,h,p;if(r){let g=i/this.heightOracle.lineLength*this.heightOracle.lineHeight,m,v;if(f!=null){let b=ja(u,f),y=((this.visibleBottom-this.visibleTop)/2+g)/c.height;m=b-y,v=b+y}else m=(this.visibleTop-c.top-g)/c.height,v=(this.visibleBottom-c.top+g)/c.height;h=_a(u,m),p=_a(u,v)}else{let g=u.total*this.heightOracle.charWidth,m=i*this.heightOracle.charWidth,v,b;if(f!=null){let y=ja(u,f),w=((this.pixelViewport.right-this.pixelViewport.left)/2+m)/g;v=y-w,b=y+w}else v=(this.pixelViewport.left-m)/g,b=(this.pixelViewport.right+m)/g;h=_a(u,v),p=_a(u,b)}h>c.from&&l(c.from,h,c,u),p<c.to&&l(p,c.to,c,u)}return o}gapSize(e,t,r,i){let s=ja(i,r)-ja(i,t);return this.heightOracle.lineWrapping?e.height*s:i.total*this.heightOracle.charWidth*s}updateLineGaps(e){qu.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=le.set(e.map(t=>t.draw(this.heightOracle.lineWrapping))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];Pe.spans(e,this.viewport.from,this.viewport.to,{span(i,s){t.push({from:i,to:s})},point(){}},20);let r=t.length!=this.visibleRanges.length||this.visibleRanges.some((i,s)=>i.from!=t[s].from||i.to!=t[s].to);return this.visibleRanges=t,r?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||bs(this.heightMap.lineAt(e,He.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return bs(this.heightMap.lineAt(this.scaler.fromDOM(e),He.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return bs(this.heightMap.blockAt(this.scaler.fromDOM(e),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class La{constructor(e,t){this.from=e,this.to=t}}function ZR(n,e,t){let r=[],i=n,s=0;return Pe.spans(t,n,e,{span(){},point(a,o){a>i&&(r.push({from:i,to:a}),s+=a-i),i=o}},20),i<e&&(r.push({from:i,to:e}),s+=e-i),{total:s,ranges:r}}function _a({total:n,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let r=Math.floor(n*t);for(let i=0;;i++){let{from:s,to:a}=e[i],o=a-s;if(r<=o)return s+r;r-=o}}function ja(n,e){let t=0;for(let{from:r,to:i}of n.ranges){if(e<=i){t+=e-r;break}t+=i-r}return t/n.total}function YR(n,e){for(let t of n)if(e(t))return t}const gm={toDOM(n){return n},fromDOM(n){return n},scale:1};class JR{constructor(e,t,r){let i=0,s=0,a=0;this.viewports=r.map(({from:o,to:l})=>{let c=t.lineAt(o,He.ByPos,e,0,0).top,u=t.lineAt(l,He.ByPos,e,0,0).bottom;return i+=u-c,{from:o,to:l,top:c,bottom:u,domTop:0,domBottom:0}}),this.scale=(7e6-i)/(t.height-i);for(let o of this.viewports)o.domTop=a+(o.top-s)*this.scale,a=o.domBottom=o.domTop+(o.bottom-o.top),s=o.bottom}toDOM(e){for(let t=0,r=0,i=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.top)return i+(e-r)*this.scale;if(e<=s.bottom)return s.domTop+(e-s.top);r=s.bottom,i=s.domBottom}}fromDOM(e){for(let t=0,r=0,i=0;;t++){let s=t<this.viewports.length?this.viewports[t]:null;if(!s||e<s.domTop)return r+(e-i)/this.scale;if(e<=s.domBottom)return s.top+(e-s.domTop);r=s.bottom,i=s.domBottom}}}function bs(n,e){if(e.scale==1)return n;let t=e.toDOM(n.top),r=e.toDOM(n.bottom);return new Fn(n.from,n.length,t,r-t,Array.isArray(n._content)?n._content.map(i=>bs(i,e)):n._content)}const Ba=J.define({combine:n=>n.join(" ")}),of=J.define({combine:n=>n.indexOf(!0)>-1}),lf=Ar.newName(),Z1=Ar.newName(),Y1=Ar.newName(),J1={"&light":"."+Z1,"&dark":"."+Y1};function cf(n,e,t){return new Ar(e,{finish(r){return/&/.test(r)?r.replace(/&\w*/,i=>{if(i=="&")return n;if(!t||!t[i])throw new RangeError(`Unsupported selector: ${i}`);return t[i]}):n+" "+r}})}const XR=cf("."+lf,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},J1);class QR{constructor(e,t,r,i){this.typeOver=i,this.bounds=null,this.text="";let{impreciseHead:s,impreciseAnchor:a}=e.docView;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,r,0))){let o=s||a?[]:nO(e),l=new f1(o,e.state);l.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=l.text,this.newSel=rO(o,this.bounds.from)}else{let o=e.observer.selectionRange,l=s&&s.node==o.focusNode&&s.offset==o.focusOffset||!Wd(e.contentDOM,o.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(o.focusNode,o.focusOffset),c=a&&a.node==o.anchorNode&&a.offset==o.anchorOffset||!Wd(e.contentDOM,o.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(o.anchorNode,o.anchorOffset);this.newSel=B.single(c,l)}}}function X1(n,e){let t,{newSel:r}=e,i=n.state.selection.main,s=n.inputState.lastKeyTime>Date.now()-100?n.inputState.lastKeyCode:-1;if(e.bounds){let{from:a,to:o}=e.bounds,l=i.from,c=null;(s===8||X.android&&e.text.length<o-a)&&(l=i.to,c="end");let u=tO(n.state.doc.sliceString(a,o,Ci),e.text,l-a,c);u&&(X.chrome&&s==13&&u.toB==u.from+2&&e.text.slice(u.from,u.toB)==Ci+Ci&&u.toB--,t={from:a+u.from,to:a+u.toA,insert:ke.of(e.text.slice(u.from,u.toB).split(Ci))})}else r&&(!n.hasFocus&&n.state.facet(su)||r.main.eq(i))&&(r=null);if(!t&&!r)return!1;if(!t&&e.typeOver&&!i.empty&&r&&r.main.empty?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,i.to)}:t&&t.from>=i.from&&t.to<=i.to&&(t.from!=i.from||t.to!=i.to)&&i.to-i.from-(t.to-t.from)<=4?t={from:i.from,to:i.to,insert:n.state.doc.slice(i.from,t.from).append(t.insert).append(n.state.doc.slice(t.to,i.to))}:(X.mac||X.android)&&t&&t.from==t.to&&t.from==i.head-1&&/^\. ?$/.test(t.insert.toString())&&n.contentDOM.getAttribute("autocorrect")=="off"?(r&&t.insert.length==2&&(r=B.single(r.main.anchor-1,r.main.head-1)),t={from:i.from,to:i.to,insert:ke.of([" "])}):X.chrome&&t&&t.from==t.to&&t.from==i.head&&t.insert.toString()==`
|
|
24
24
|
`&&n.lineWrapping&&(r&&(r=B.single(r.main.anchor-1,r.main.head-1)),t={from:i.from,to:i.to,insert:ke.of([" "])}),t){if(X.ios&&n.inputState.flushIOSKey(n)||X.android&&(t.from==i.from&&t.to==i.to&&t.insert.length==1&&t.insert.lines==2&&Li(n.contentDOM,"Enter",13)||(t.from==i.from-1&&t.to==i.to&&t.insert.length==0||s==8&&t.insert.length<t.to-t.from)&&Li(n.contentDOM,"Backspace",8)||t.from==i.from&&t.to==i.to+1&&t.insert.length==0&&Li(n.contentDOM,"Delete",46)))return!0;let a=t.insert.toString();n.inputState.composing>=0&&n.inputState.composing++;let o,l=()=>o||(o=eO(n,t,r));return n.state.facet(k1).some(c=>c(n,t.from,t.to,a,l))||n.dispatch(l()),!0}else if(r&&!r.main.eq(i)){let a=!1,o="select";return n.inputState.lastSelectionTime>Date.now()-50&&(n.inputState.lastSelectionOrigin=="select"&&(a=!0),o=n.inputState.lastSelectionOrigin),n.dispatch({selection:r,scrollIntoView:a,userEvent:o}),!0}else return!1}function eO(n,e,t){let r,i=n.state,s=i.selection.main;if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&n.inputState.composing<0){let o=s.from<e.from?i.sliceDoc(s.from,e.from):"",l=s.to>e.to?i.sliceDoc(e.to,s.to):"";r=i.replaceSelection(n.state.toText(o+e.insert.sliceString(0,void 0,n.state.lineBreak)+l))}else{let o=i.changes(e),l=t&&t.main.to<=o.newLength?t.main:void 0;if(i.selection.ranges.length>1&&n.inputState.composing>=0&&e.to<=s.to&&e.to>=s.to-10){let c=n.state.sliceDoc(e.from,e.to),u=_1(n)||n.state.doc.lineAt(s.head),f=s.to-e.to,h=s.to-s.from;r=i.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:o,range:l||p.map(o)};let g=p.to-f,m=g-c.length;if(p.to-p.from!=h||n.state.sliceDoc(m,g)!=c||u&&p.to>=u.from&&p.from<=u.to)return{range:p};let v=i.changes({from:m,to:g,insert:e.insert}),b=p.to-s.to;return{changes:v,range:l?B.range(Math.max(0,l.anchor+b),Math.max(0,l.head+b)):p.map(v)}})}else r={changes:o,selection:l&&i.selection.replaceRange(l)}}let a="input.type";return(n.composing||n.inputState.compositionPendingChange&&n.inputState.compositionEndedAt>Date.now()-50)&&(n.inputState.compositionPendingChange=!1,a+=".compose",n.inputState.compositionFirstChange&&(a+=".start",n.inputState.compositionFirstChange=!1)),i.update(r,{userEvent:a,scrollIntoView:!0})}function tO(n,e,t,r){let i=Math.min(n.length,e.length),s=0;for(;s<i&&n.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==i&&n.length==e.length)return null;let a=n.length,o=e.length;for(;a>0&&o>0&&n.charCodeAt(a-1)==e.charCodeAt(o-1);)a--,o--;if(r=="end"){let l=Math.max(0,s-Math.min(a,o));t-=a+l-s}if(a<s&&n.length<e.length){let l=t<=s&&t>=a?s-t:0;s-=l,o=s+(o-a),a=s}else if(o<s){let l=t<=s&&t>=o?s-t:0;s-=l,a=s+(a-o),o=s}return{from:s,toA:a,toB:o}}function nO(n){let e=[];if(n.root.activeElement!=n.contentDOM)return e;let{anchorNode:t,anchorOffset:r,focusNode:i,focusOffset:s}=n.observer.selectionRange;return t&&(e.push(new Wp(t,r)),(i!=t||s!=r)&&e.push(new Wp(i,s))),e}function rO(n,e){if(n.length==0)return null;let t=n[0].pos,r=n.length==2?n[1].pos:t;return t>-1&&r>-1?B.single(t+e,r+e):null}const iO={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},Gu=X.ie&&X.ie_version<=11;class sO{constructor(e){this.view=e,this.active=!1,this.selectionRange=new GD,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.resizeContent=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let r of t)this.queue.push(r);(X.ie&&X.ie_version<=11||X.ios&&e.composing)&&t.some(r=>r.type=="childList"&&r.removedNodes.length||r.type=="characterData"&&r.oldValue.length>r.target.nodeValue.length)?this.flushSoon():this.flush()}),Gu&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM),this.resizeContent=new ResizeObserver(()=>this.view.requestMeasure()),this.resizeContent.observe(e.contentDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runScrollHandlers(this.view,e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(){this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500)}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,r)=>t!=e[r]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:r}=this,i=this.selectionRange;if(r.state.facet(su)?r.root.activeElement!=this.dom:!Wl(r.dom,i))return;let s=i.anchorNode&&r.docView.nearest(i.anchorNode);if(s&&s.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(X.ie&&X.ie_version<=11||X.android&&X.chrome)&&!r.state.selection.main.empty&&i.focusNode&&bc(i.focusNode,i.focusOffset,i.anchorNode,i.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=X.safari&&e.root.nodeType==11&&UD(this.dom.ownerDocument)==this.dom&&aO(this.view)||vc(e.root);if(!t||this.selectionRange.eq(t))return!1;let r=Wl(this.dom,t);return r&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&ZD(this.dom,t)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(t),r&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let r=this.dom;r;)if(r.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==r?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);for(let r of this.scrollTargets=t)r.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,iO),Gu&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),Gu&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var r;if(!this.delayedAndroidKey){let i=()=>{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&Li(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(i)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((r=this.delayedAndroidKey)===null||r===void 0)&&r.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,r=-1,i=!1;for(let s of e){let a=this.readMutation(s);a&&(a.typeOver&&(i=!0),t==-1?{from:t,to:r}=a:(t=Math.min(a.from,t),r=Math.max(a.to,r)))}return{from:t,to:r,typeOver:i}}readChange(){let{from:e,to:t,typeOver:r}=this.processRecords(),i=this.selectionChanged&&Wl(this.dom,this.selectionRange);return e<0&&!i?null:(e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1,new QR(this.view,e,t,r))}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return!1;let r=this.view.state,i=X1(this.view,t);return this.view.state==r&&this.view.update([]),i}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty(e.type=="attributes"),e.type=="attributes"&&(t.flags|=4),e.type=="childList"){let r=vm(t,e.previousSibling||e.target.previousSibling,-1),i=vm(t,e.nextSibling||e.target.nextSibling,1);return{from:r?t.posAfter(r):t.posAtStart,to:i?t.posBefore(i):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}destroy(){var e,t,r,i;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(r=this.resizeScroll)===null||r===void 0||r.disconnect(),(i=this.resizeContent)===null||i===void 0||i.disconnect();for(let s of this.scrollTargets)s.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey)}}function vm(n,e,t){for(;e;){let r=Fe.get(e);if(r&&r.parent==n)return r;let i=e.parentNode;e=i!=n.dom?i:t>0?e.nextSibling:e.previousSibling}return null}function aO(n){let e=null;function t(l){l.preventDefault(),l.stopImmediatePropagation(),e=l.getTargetRanges()[0]}if(n.contentDOM.addEventListener("beforeinput",t,!0),n.dom.ownerDocument.execCommand("indent"),n.contentDOM.removeEventListener("beforeinput",t,!0),!e)return null;let r=e.startContainer,i=e.startOffset,s=e.endContainer,a=e.endOffset,o=n.docView.domAtPos(n.state.selection.main.anchor);return bc(o.node,o.offset,s,a)&&([r,i,s,a]=[s,a,r,i]),{anchorNode:r,anchorOffset:i,focusNode:s,focusOffset:a}}class G{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return this.inputState.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.style.cssText="position: fixed; top: -10000px",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM);let{dispatch:t}=e;this.dispatchTransactions=e.dispatchTransactions||t&&(r=>r.forEach(i=>t(i,this)))||(r=>this.update(r)),this.dispatch=this.dispatch.bind(this),this._root=e.root||KD(e.parent)||document,this.viewState=new mm(e.state||ye.create(e)),this.plugins=this.state.facet(gs).map(r=>new Uu(r));for(let r of this.plugins)r.update(this);this.observer=new sO(this),this.inputState=new MR(this),this.inputState.ensureHandlers(this,this.plugins),this.docView=new Xp(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}dispatch(...e){let t=e.length==1&&e[0]instanceof ut?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,r=!1,i,s=this.state;for(let h of e){if(h.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=h.state}if(this.destroyed){this.viewState.state=s;return}let a=this.hasFocus,o=0,l=null;e.some(h=>h.annotation(W1))?(this.inputState.notifiedFocused=a,o=1):a!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=a,l=q1(s,a),l||(o=1));let c=this.observer.delayedAndroidKey,u=null;if(c?(this.observer.clearDelayedAndroidKey(),u=this.observer.readChange(),(u&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(u=null)):this.observer.clear(),s.facet(ye.phrases)!=this.state.facet(ye.phrases))return this.setState(s);i=wc.create(this,s,e),i.flags|=o;let f=this.viewState.scrollTarget;try{this.updateState=2;for(let h of e){if(f&&(f=f.map(h.changes)),h.scrollIntoView){let{main:p}=h.state.selection;f=new yc(p.empty?p:B.cursor(p.head,p.head>p.anchor?-1:1))}for(let p of h.effects)p.is(Yp)&&(f=p.value)}this.viewState.update(i,f),this.bidiCache=Sc.update(this.bidiCache,i.changes),i.empty||(this.updatePlugins(i),this.inputState.update(i)),t=this.docView.update(i),this.state.facet(vs)!=this.styleModules&&this.mountStyles(),r=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(h=>h.isUserEvent("select.pointer")))}finally{this.updateState=0}if(i.startState.facet(Ba)!=i.state.facet(Ba)&&(this.viewState.mustMeasureContent=!0),(t||r||f||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),!i.empty)for(let h of this.state.facet(Xd))h(i);(l||u)&&Promise.resolve().then(()=>{l&&this.state==l.startState&&this.dispatch(l),u&&!X1(this,u)&&c.force&&Li(this.contentDOM,c.key,c.keyCode)})}setState(e){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=e;return}this.updateState=2;let t=this.hasFocus;try{for(let r of this.plugins)r.destroy(this);this.viewState=new mm(e),this.plugins=e.facet(gs).map(r=>new Uu(r)),this.pluginMap.clear();for(let r of this.plugins)r.update(this);this.docView=new Xp(this),this.inputState.ensureHandlers(this,this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(gs),r=e.state.facet(gs);if(t!=r){let i=[];for(let s of r){let a=t.indexOf(s);if(a<0)i.push(new Uu(s));else{let o=this.plugins[a];o.mustUpdate=e,i.push(o)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=i,this.pluginMap.clear(),this.inputState.ensureHandlers(this,this.plugins)}else for(let i of this.plugins)i.mustUpdate=e;for(let i=0;i<this.plugins.length;i++)this.plugins[i].update(this)}measure(e=!0){if(this.destroyed)return;this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.measureScheduled=0,e&&this.observer.forceFlush();let t=null,r=this.scrollDOM,{scrollTop:i}=r,{scrollAnchorPos:s,scrollAnchorHeight:a}=this.viewState;i!=this.viewState.scrollTop&&(a=-1),this.viewState.scrollAnchorHeight=-1;try{for(let o=0;;o++){if(a<0)if(l1(r))s=-1,a=this.viewState.heightMap.height;else{let p=this.viewState.scrollAnchorAt(i);s=p.from,a=p.top}this.updateState=1;let l=this.viewState.measure(this);if(!l&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(o>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let c=[];l&4||([this.measureRequests,c]=[c,this.measureRequests]);let u=c.map(p=>{try{return p.read(this)}catch(g){return mn(this.state,g),bm}}),f=wc.create(this,this.state,[]),h=!1;f.flags|=l,t?t.flags|=l:t=f,this.updateState=2,f.empty||(this.updatePlugins(f),this.inputState.update(f),this.updateAttrs(),h=this.docView.update(f));for(let p=0;p<c.length;p++)if(u[p]!=bm)try{let g=c[p];g.write&&g.write(u[p],this)}catch(g){mn(this.state,g)}if(h&&this.docView.updateSelection(!0),!f.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null;continue}else{let g=(s<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(s).top)-a;if(g>1||g<-1){i=r.scrollTop=i+g,a=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let o of this.state.facet(Xd))o(t)}get themeClasses(){return lf+" "+(this.state.facet(of)?Y1:Z1)+" "+this.state.facet(Ba)}updateAttrs(){let e=xm(this,I1,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(su)?"true":"false",class:"cm-content",style:`${X.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),xm(this,sh,t);let r=this.observer.ignore(()=>{let i=Yd(this.contentDOM,this.contentAttrs,t),s=Yd(this.dom,this.editorAttrs,e);return i||s});return this.editorAttrs=e,this.contentAttrs=t,r}showAnnouncements(e){let t=!0;for(let r of e)for(let i of r.effects)if(i.is(G.announce)){t&&(this.announceDOM.textContent=""),t=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=i.value}}mountStyles(){this.styleModules=this.state.facet(vs);let e=this.state.facet(G.cspNonce);Ar.mount(this.root,this.styleModules.concat(XR).reverse(),e?{nonce:e}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.spec!=e)&&this.pluginMap.set(e,t=this.plugins.find(r=>r.spec==e)||null),t&&t.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}elementAtHeight(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,r){return Wu(this,e,im(this,e,t,r))}moveByGroup(e,t){return Wu(this,e,im(this,e,t,r=>CR(this,e.head,r)))}moveToLineBoundary(e,t,r=!0){return kR(this,e,t,r)}moveVertically(e,t,r){return Wu(this,e,AR(this,e,t,r))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),B1(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let r=this.docView.coordsAt(e,t);if(!r||r.left==r.right)return r;let i=this.state.doc.lineAt(e),s=this.bidiSpans(i),a=s[xr.find(s,e-i.from,-1,t)];return ru(r,a.dir==qe.LTR==t>0)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(A1)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>oO)return P1(e.length);let t=this.textDirectionAt(e.from),r;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||N1(s.isolates,r=Jp(this,e.from,e.to))))return s.order;r||(r=Jp(this,e.from,e.to));let i=uR(e.text,t,r);return this.bidiCache.push(new Sc(e.from,e.to,t,r,!0,i)),i}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||X.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{a1(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){for(let e of this.plugins)e.destroy(this);this.plugins=[],this.inputState.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(e,t={}){return Yp.of(new yc(typeof e=="number"?B.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}static domEventHandlers(e){return it.define(()=>({}),{eventHandlers:e})}static theme(e,t){let r=Ar.newName(),i=[Ba.of(r),vs.of(cf(`.${r}`,e))];return t&&t.dark&&i.push(of.of(!0)),i}static baseTheme(e){return ti.lowest(vs.of(cf("."+lf,e,J1)))}static findFromDOM(e){var t;let r=e.querySelector(".cm-content"),i=r&&Fe.get(r)||Fe.get(e);return((t=i?.rootView)===null||t===void 0?void 0:t.view)||null}}G.styleModule=vs;G.inputHandler=k1;G.focusChangeEffect=C1;G.perLineTextDirection=A1;G.exceptionSink=S1;G.updateListener=Xd;G.editable=su;G.mouseSelectionStyle=w1;G.dragMovesSelection=y1;G.clickAddsSelectionRange=x1;G.decorations=Hs;G.atomicRanges=ah;G.bidiIsolatedRanges=E1;G.scrollMargins=D1;G.darkTheme=of;G.cspNonce=J.define({combine:n=>n.length?n[0]:""});G.contentAttributes=sh;G.editorAttributes=I1;G.lineWrapping=G.contentAttributes.of({class:"cm-lineWrapping"});G.announce=pe.define();const oO=4096,bm={};class Sc{constructor(e,t,r,i,s,a){this.from=e,this.to=t,this.dir=r,this.isolates=i,this.fresh=s,this.order=a}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let r=[],i=e.length?e[e.length-1].dir:qe.LTR;for(let s=Math.max(0,e.length-10);s<e.length;s++){let a=e[s];a.dir==i&&!t.touchesRange(a.from,a.to)&&r.push(new Sc(t.mapPos(a.from,1),t.mapPos(a.to,-1),a.dir,a.isolates,!1,a.order))}return r}}function xm(n,e,t){for(let r=n.state.facet(e),i=r.length-1;i>=0;i--){let s=r[i],a=typeof s=="function"?s(n):s;a&&Zd(a,t)}return t}const lO=X.mac?"mac":X.windows?"win":X.linux?"linux":"key";function cO(n,e){const t=n.split(/-(?!$)/);let r=t[t.length-1];r=="Space"&&(r=" ");let i,s,a,o;for(let l=0;l<t.length-1;++l){const c=t[l];if(/^(cmd|meta|m)$/i.test(c))o=!0;else if(/^a(lt)?$/i.test(c))i=!0;else if(/^(c|ctrl|control)$/i.test(c))s=!0;else if(/^s(hift)?$/i.test(c))a=!0;else if(/^mod$/i.test(c))e=="mac"?o=!0:s=!0;else throw new Error("Unrecognized modifier name: "+c)}return i&&(r="Alt-"+r),s&&(r="Ctrl-"+r),o&&(r="Meta-"+r),a&&(r="Shift-"+r),r}function $a(n,e,t){return e.altKey&&(n="Alt-"+n),e.ctrlKey&&(n="Ctrl-"+n),e.metaKey&&(n="Meta-"+n),t!==!1&&e.shiftKey&&(n="Shift-"+n),n}const uO=ti.default(G.domEventHandlers({keydown(n,e){return ey(Q1(e.state),n,e,"editor")}})),ua=J.define({enables:uO}),ym=new WeakMap;function Q1(n){let e=n.facet(ua),t=ym.get(e);return t||ym.set(e,t=hO(e.reduce((r,i)=>r.concat(i),[]))),t}function dO(n,e,t){return ey(Q1(n.state),e,n,t)}let mr=null;const fO=4e3;function hO(n,e=lO){let t=Object.create(null),r=Object.create(null),i=(a,o)=>{let l=r[a];if(l==null)r[a]=o;else if(l!=o)throw new Error("Key binding "+a+" is used both as a regular binding and as a multi-stroke prefix")},s=(a,o,l,c,u)=>{var f,h;let p=t[a]||(t[a]=Object.create(null)),g=o.split(/ (?!$)/).map(b=>cO(b,e));for(let b=1;b<g.length;b++){let y=g.slice(0,b).join(" ");i(y,!0),p[y]||(p[y]={preventDefault:!0,stopPropagation:!1,run:[w=>{let S=mr={view:w,prefix:y,scope:a};return setTimeout(()=>{mr==S&&(mr=null)},fO),!0}]})}let m=g.join(" ");i(m,!1);let v=p[m]||(p[m]={preventDefault:!1,stopPropagation:!1,run:((h=(f=p._any)===null||f===void 0?void 0:f.run)===null||h===void 0?void 0:h.slice())||[]});l&&v.run.push(l),c&&(v.preventDefault=!0),u&&(v.stopPropagation=!0)};for(let a of n){let o=a.scope?a.scope.split(" "):["editor"];if(a.any)for(let c of o){let u=t[c]||(t[c]=Object.create(null));u._any||(u._any={preventDefault:!1,stopPropagation:!1,run:[]});for(let f in u)u[f].run.push(a.any)}let l=a[e]||a.key;if(l)for(let c of o)s(c,l,a.run,a.preventDefault,a.stopPropagation),a.shift&&s(c,"Shift-"+l,a.shift,a.preventDefault,a.stopPropagation)}return t}function ey(n,e,t,r){let i=VD(e),s=wt(i,0),a=dn(s)==i.length&&i!=" ",o="",l=!1,c=!1,u=!1;mr&&mr.view==t&&mr.scope==r&&(o=mr.prefix+" ",F1.indexOf(e.keyCode)<0&&(c=!0,mr=null));let f=new Set,h=v=>{if(v){for(let b of v.run)if(!f.has(b)&&(f.add(b),b(t,e)))return v.stopPropagation&&(u=!0),!0;v.preventDefault&&(v.stopPropagation&&(u=!0),c=!0)}return!1},p=n[r],g,m;return p&&(h(p[o+$a(i,e,!a)])?l=!0:a&&(e.altKey||e.metaKey||e.ctrlKey)&&!(X.windows&&e.ctrlKey&&e.altKey)&&(g=Mr[e.keyCode])&&g!=i?(h(p[o+$a(g,e,!0)])||e.shiftKey&&(m=Fs[e.keyCode])!=i&&m!=g&&h(p[o+$a(m,e,!1)]))&&(l=!0):a&&e.shiftKey&&h(p[o+$a(i,e,!0)])&&(l=!0),!l&&h(p._any)&&(l=!0)),c&&(l=!0),l&&u&&e.stopPropagation(),l}class da{constructor(e,t,r,i,s){this.className=e,this.left=t,this.top=r,this.width=i,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,r){if(r.empty){let i=e.coordsAtPos(r.head,r.assoc||1);if(!i)return[];let s=ty(e);return[new da(t,i.left-s.left,i.top-s.top,null,i.bottom-i.top)]}else return pO(e,t,r)}}function ty(n){let e=n.scrollDOM.getBoundingClientRect();return{left:(n.textDirection==qe.LTR?e.left:e.right-n.scrollDOM.clientWidth)-n.scrollDOM.scrollLeft,top:e.top-n.scrollDOM.scrollTop}}function wm(n,e,t){let r=B.cursor(e);return{from:Math.max(t.from,n.moveToLineBoundary(r,!1,!0).from),to:Math.min(t.to,n.moveToLineBoundary(r,!0,!0).from),type:Ge.Text}}function pO(n,e,t){if(t.to<=n.viewport.from||t.from>=n.viewport.to)return[];let r=Math.max(t.from,n.viewport.from),i=Math.min(t.to,n.viewport.to),s=n.textDirection==qe.LTR,a=n.contentDOM,o=a.getBoundingClientRect(),l=ty(n),c=a.querySelector(".cm-line"),u=c&&window.getComputedStyle(c),f=o.left+(u?parseInt(u.paddingLeft)+Math.min(0,parseInt(u.textIndent)):0),h=o.right-(u?parseInt(u.paddingRight):0),p=rf(n,r),g=rf(n,i),m=p.type==Ge.Text?p:null,v=g.type==Ge.Text?g:null;if(m&&(n.lineWrapping||p.widgetLineBreaks)&&(m=wm(n,r,m)),v&&(n.lineWrapping||g.widgetLineBreaks)&&(v=wm(n,i,v)),m&&v&&m.from==v.from)return y(w(t.from,t.to,m));{let k=m?w(t.from,null,m):S(p,!1),A=v?w(null,t.to,v):S(g,!0),C=[];return(m||p).to<(v||g).from-(m&&v?1:0)||p.widgetLineBreaks>1&&k.bottom+n.defaultLineHeight/2<A.top?C.push(b(f,k.bottom,h,A.top)):k.bottom<A.top&&n.elementAtHeight((k.bottom+A.top)/2).type==Ge.Text&&(k.bottom=A.top=(k.bottom+A.top)/2),y(k).concat(C).concat(y(A))}function b(k,A,C,E){return new da(e,k-l.left,A-l.top-.01,C-k,E-A+.01)}function y({top:k,bottom:A,horizontal:C}){let E=[];for(let M=0;M<C.length;M+=2)E.push(b(C[M],k,C[M+1],A));return E}function w(k,A,C){let E=1e9,M=-1e9,R=[];function T(L,$,q,Z,oe){let ee=n.coordsAtPos(L,L==C.to?-2:2),de=n.coordsAtPos(q,q==C.from?2:-2);!ee||!de||(E=Math.min(ee.top,de.top,E),M=Math.max(ee.bottom,de.bottom,M),oe==qe.LTR?R.push(s&&$?f:ee.left,s&&Z?h:de.right):R.push(!s&&Z?f:de.left,!s&&$?h:ee.right))}let N=k??C.from,P=A??C.to;for(let L of n.visibleRanges)if(L.to>N&&L.from<P)for(let $=Math.max(L.from,N),q=Math.min(L.to,P);;){let Z=n.state.doc.lineAt($);for(let oe of n.bidiSpans(Z)){let ee=oe.from+Z.from,de=oe.to+Z.from;if(ee>=q)break;de>$&&T(Math.max(ee,$),k==null&&ee<=N,Math.min(de,q),A==null&&de>=P,oe.dir)}if($=Z.to+1,$>=q)break}return R.length==0&&T(N,k==null,P,A==null,n.textDirection),{top:E,bottom:M,horizontal:R}}function S(k,A){let C=o.top+(A?k.top:k.bottom);return{top:C,bottom:C,horizontal:[]}}}function mO(n,e){return n.constructor==e.constructor&&n.eq(e)}class gO{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Kl)!=e.state.facet(Kl)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&e.view.requestMeasure(this.measureReq)}setOrder(e){let t=0,r=e.facet(Kl);for(;t<r.length&&r[t]!=this.layer;)t++;this.dom.style.zIndex=String((this.layer.above?150:-1)-t)}measure(){return this.layer.markers(this.view)}draw(e){if(e.length!=this.drawn.length||e.some((t,r)=>!mO(t,this.drawn[r]))){let t=this.dom.firstChild,r=0;for(let i of e)i.update&&t&&i.constructor&&this.drawn[r].constructor&&i.update(t,this.drawn[r])?(t=t.nextSibling,r++):this.dom.insertBefore(i.draw(),t);for(;t;){let i=t.nextSibling;t.remove(),t=i}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const Kl=J.define();function ny(n){return[it.define(e=>new gO(e,n)),Kl.of(n)]}const ry=!X.ios,Us=J.define({combine(n){return Yn(n,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function vO(n={}){return[Us.of(n),bO,xO,yO,M1.of(!0)]}function iy(n){return n.startState.facet(Us)!=n.state.facet(Us)}const bO=ny({above:!0,markers(n){let{state:e}=n,t=e.facet(Us),r=[];for(let i of e.selection.ranges){let s=i==e.selection.main;if(i.empty?!s||ry:t.drawRangeCursor){let a=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",o=i.empty?i:B.cursor(i.head,i.head>i.anchor?-1:1);for(let l of da.forRange(n,a,o))r.push(l)}}return r},update(n,e){n.transactions.some(r=>r.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=iy(n);return t&&Sm(n.state,e),n.docChanged||n.selectionSet||t},mount(n,e){Sm(e.state,n)},class:"cm-cursorLayer"});function Sm(n,e){e.style.animationDuration=n.facet(Us).cursorBlinkRate+"ms"}const xO=ny({above:!1,markers(n){return n.state.selection.ranges.map(e=>e.empty?[]:da.forRange(n,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(n,e){return n.docChanged||n.selectionSet||n.viewportChanged||iy(n)},class:"cm-selectionLayer"}),sy={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};ry&&(sy[".cm-line"].caretColor="transparent !important");const yO=ti.highest(G.theme(sy)),ay=pe.define({map(n,e){return n==null?null:e.mapPos(n)}}),xs=vt.define({create(){return null},update(n,e){return n!=null&&(n=e.changes.mapPos(n)),e.effects.reduce((t,r)=>r.is(ay)?r.value:t,n)}}),wO=it.fromClass(class{constructor(n){this.view=n,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(n){var e;let t=n.state.field(xs);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(n.startState.field(xs)!=t||n.docChanged||n.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let n=this.view.state.field(xs),e=n!=null&&this.view.coordsAtPos(n);if(!e)return null;let t=this.view.scrollDOM.getBoundingClientRect();return{left:e.left-t.left+this.view.scrollDOM.scrollLeft,top:e.top-t.top+this.view.scrollDOM.scrollTop,height:e.bottom-e.top}}drawCursor(n){this.cursor&&(n?(this.cursor.style.left=n.left+"px",this.cursor.style.top=n.top+"px",this.cursor.style.height=n.height+"px"):this.cursor.style.left="-100000px")}destroy(){this.cursor&&this.cursor.remove()}setDropPos(n){this.view.state.field(xs)!=n&&this.view.dispatch({effects:ay.of(n)})}},{eventHandlers:{dragover(n){this.setDropPos(this.view.posAtCoords({x:n.clientX,y:n.clientY}))},dragleave(n){(n.target==this.view.contentDOM||!this.view.contentDOM.contains(n.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function SO(){return[xs,wO]}function km(n,e,t,r,i){e.lastIndex=0;for(let s=n.iterRange(t,r),a=t,o;!s.next().done;a+=s.value.length)if(!s.lineBreak)for(;o=e.exec(s.value);)i(a+o.index,o)}function kO(n,e){let t=n.visibleRanges;if(t.length==1&&t[0].from==n.viewport.from&&t[0].to==n.viewport.to)return t;let r=[];for(let{from:i,to:s}of t)i=Math.max(n.state.doc.lineAt(i).from,i-e),s=Math.min(n.state.doc.lineAt(s).to,s+e),r.length&&r[r.length-1].to>=i?r[r.length-1].to=s:r.push({from:i,to:s});return r}class CO{constructor(e){const{regexp:t,decoration:r,decorate:i,boundary:s,maxLength:a=1e3}=e;if(!t.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=t,i)this.addMatch=(o,l,c,u)=>i(u,c,c+o[0].length,o,l);else if(typeof r=="function")this.addMatch=(o,l,c,u)=>{let f=r(o,l,c);f&&u(c,c+o[0].length,f)};else if(r)this.addMatch=(o,l,c,u)=>u(c,c+o[0].length,r);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=s,this.maxLength=a}createDeco(e){let t=new Cr,r=t.add.bind(t);for(let{from:i,to:s}of kO(e,this.maxLength))km(e.state.doc,this.regexp,i,s,(a,o)=>this.addMatch(o,e,a,r));return t.finish()}updateDeco(e,t){let r=1e9,i=-1;return e.docChanged&&e.changes.iterChanges((s,a,o,l)=>{l>e.view.viewport.from&&o<e.view.viewport.to&&(r=Math.min(o,r),i=Math.max(l,i))}),e.viewportChanged||i-r>1e3?this.createDeco(e.view):i>-1?this.updateRange(e.view,t.map(e.changes),r,i):t}updateRange(e,t,r,i){for(let s of e.visibleRanges){let a=Math.max(s.from,r),o=Math.min(s.to,i);if(o>a){let l=e.state.doc.lineAt(a),c=l.to<o?e.state.doc.lineAt(o):l,u=Math.max(s.from,l.from),f=Math.min(s.to,c.to);if(this.boundary){for(;a>l.from;a--)if(this.boundary.test(l.text[a-1-l.from])){u=a;break}for(;o<c.to;o++)if(this.boundary.test(c.text[o-c.from])){f=o;break}}let h=[],p,g=(m,v,b)=>h.push(b.range(m,v));if(l==c)for(this.regexp.lastIndex=u-l.from;(p=this.regexp.exec(l.text))&&p.index<f-l.from;)this.addMatch(p,e,p.index+l.from,g);else km(e.state.doc,this.regexp,u,f,(m,v)=>this.addMatch(v,e,m,g));t=t.update({filterFrom:u,filterTo:f,filter:(m,v)=>m<u||v>f,add:h})}}return t}}const uf=/x/.unicode!=null?"gu":"g",AO=new RegExp(`[\0-\b
|
|
25
25
|
--\u2028\u2029\uFEFF-]`,uf),MO={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let Ku=null;function IO(){var n;if(Ku==null&&typeof document<"u"&&document.body){let e=document.body.style;Ku=((n=e.tabSize)!==null&&n!==void 0?n:e.MozTabSize)!=null}return Ku||!1}const Zl=J.define({combine(n){let e=Yn(n,{render:null,specialChars:AO,addSpecialChars:null});return(e.replaceTabs=!IO())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,uf)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,uf)),e}});function EO(n={}){return[Zl.of(n),DO()]}let Cm=null;function DO(){return Cm||(Cm=it.fromClass(class{constructor(n){this.view=n,this.decorations=le.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(n.state.facet(Zl)),this.decorations=this.decorator.createDeco(n)}makeDecorator(n){return new CO({regexp:n.specialChars,decoration:(e,t,r)=>{let{doc:i}=t.state,s=wt(e[0],0);if(s==9){let a=i.lineAt(r),o=t.state.tabSize,l=oa(a.text,o,r-a.from);return le.replace({widget:new NO((o-l%o)*this.view.defaultCharacterWidth)})}return this.decorationCache[s]||(this.decorationCache[s]=le.replace({widget:new TO(n,s)}))},boundary:n.replaceTabs?void 0:/[^]/})}update(n){let e=n.state.facet(Zl);n.startState.facet(Zl)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(n.view)):this.decorations=this.decorator.updateDeco(n,this.decorations)}},{decorations:n=>n.decorations}))}const RO="•";function OO(n){return n>=32?RO:n==10?"":String.fromCharCode(9216+n)}class TO extends sr{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=OO(this.code),r=e.state.phrase("Control character")+" "+(MO[this.code]||"0x"+this.code.toString(16)),i=this.options.render&&this.options.render(this.code,r,t);if(i)return i;let s=document.createElement("span");return s.textContent=t,s.title=r,s.setAttribute("aria-label",r),s.className="cm-specialChar",s}ignoreEvent(){return!1}}class NO extends sr{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}}function PO(){return _O}const LO=le.line({class:"cm-activeLine"}),_O=it.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.docChanged||n.selectionSet)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=-1,t=[];for(let r of n.state.selection.ranges){let i=n.lineBlockAt(r.head);i.from>e&&(t.push(LO.range(i.from)),e=i.from)}return le.set(t)}},{decorations:n=>n.decorations});class jO extends sr{constructor(e){super(),this.content=e}toDOM(){let e=document.createElement("span");return e.className="cm-placeholder",e.style.pointerEvents="none",e.appendChild(typeof this.content=="string"?document.createTextNode(this.content):this.content),typeof this.content=="string"?e.setAttribute("aria-label","placeholder "+this.content):e.setAttribute("aria-hidden","true"),e}coordsAt(e){let t=e.firstChild?Fi(e.firstChild):[];if(!t.length)return null;let r=window.getComputedStyle(e.parentNode),i=ru(t[0],r.direction!="rtl"),s=parseInt(r.lineHeight);return i.bottom-i.top>s*1.5?{left:i.left,right:i.right,top:i.top,bottom:i.top+s}:i}ignoreEvent(){return!1}}function BO(n){return it.fromClass(class{constructor(e){this.view=e,this.placeholder=n?le.set([le.widget({widget:new jO(n),side:1}).range(0)]):le.none}get decorations(){return this.view.state.doc.length?le.none:this.placeholder}},{decorations:e=>e.decorations})}const df=2e3;function $O(n,e,t){let r=Math.min(e.line,t.line),i=Math.max(e.line,t.line),s=[];if(e.off>df||t.off>df||e.col<0||t.col<0){let a=Math.min(e.off,t.off),o=Math.max(e.off,t.off);for(let l=r;l<=i;l++){let c=n.doc.line(l);c.length<=o&&s.push(B.range(c.from+a,c.to+o))}}else{let a=Math.min(e.col,t.col),o=Math.max(e.col,t.col);for(let l=r;l<=i;l++){let c=n.doc.line(l),u=Vd(c.text,a,n.tabSize,!0);if(u<0)s.push(B.cursor(c.to));else{let f=Vd(c.text,o,n.tabSize);s.push(B.range(c.from+u,c.from+f))}}}return s}function FO(n,e){let t=n.coordsAtPos(n.viewport.from);return t?Math.round(Math.abs((t.left-e)/n.defaultCharacterWidth)):-1}function Am(n,e){let t=n.posAtCoords({x:e.clientX,y:e.clientY},!1),r=n.state.doc.lineAt(t),i=t-r.from,s=i>df?-1:i==r.length?FO(n,e.clientX):oa(r.text,n.state.tabSize,t-r.from);return{line:r.number,col:s,off:i}}function HO(n,e){let t=Am(n,e),r=n.state.selection;return t?{update(i){if(i.docChanged){let s=i.changes.mapPos(i.startState.doc.line(t.line).from),a=i.state.doc.lineAt(s);t={line:a.number,col:t.col,off:Math.min(t.off,a.length)},r=r.map(i.changes)}},get(i,s,a){let o=Am(n,i);if(!o)return r;let l=$O(n.state,t,o);return l.length?a?B.create(l.concat(r.ranges)):B.create(l):r}}:null}function VO(n){let e=(t=>t.altKey&&t.button==0);return G.mouseSelectionStyle.of((t,r)=>e(r)?HO(t,r):null)}const UO={Alt:[18,n=>!!n.altKey],Control:[17,n=>!!n.ctrlKey],Shift:[16,n=>!!n.shiftKey],Meta:[91,n=>!!n.metaKey]},zO={style:"cursor: crosshair"};function WO(n={}){let[e,t]=UO[n.key||"Alt"],r=it.fromClass(class{constructor(i){this.view=i,this.isDown=!1}set(i){this.isDown!=i&&(this.isDown=i,this.view.update([]))}},{eventHandlers:{keydown(i){this.set(i.keyCode==e||t(i))},keyup(i){(i.keyCode==e||!t(i))&&this.set(!1)},mousemove(i){this.set(t(i))}}});return[r,G.contentAttributes.of(i=>{var s;return!((s=i.plugin(r))===null||s===void 0)&&s.isDown?zO:null})]}const Fa="-10000px";class oy{constructor(e,t,r){this.facet=t,this.createTooltipView=r,this.input=e.state.facet(t),this.tooltips=this.input.filter(i=>i),this.tooltipViews=this.tooltips.map(r)}update(e){var t;let r=e.state.facet(this.facet),i=r.filter(a=>a);if(r===this.input){for(let a of this.tooltipViews)a.update&&a.update(e);return!1}let s=[];for(let a=0;a<i.length;a++){let o=i[a],l=-1;if(o){for(let c=0;c<this.tooltips.length;c++){let u=this.tooltips[c];u&&u.create==o.create&&(l=c)}if(l<0)s[a]=this.createTooltipView(o);else{let c=s[a]=this.tooltipViews[l];c.update&&c.update(e)}}}for(let a of this.tooltipViews)s.indexOf(a)<0&&(a.dom.remove(),(t=a.destroy)===null||t===void 0||t.call(a));return this.input=r,this.tooltips=i,this.tooltipViews=s,!0}}function qO(n){let{win:e}=n;return{top:0,left:0,bottom:e.innerHeight,right:e.innerWidth}}const Zu=J.define({combine:n=>{var e,t,r;return{position:X.ios?"absolute":((e=n.find(i=>i.position))===null||e===void 0?void 0:e.position)||"fixed",parent:((t=n.find(i=>i.parent))===null||t===void 0?void 0:t.parent)||null,tooltipSpace:((r=n.find(i=>i.tooltipSpace))===null||r===void 0?void 0:r.tooltipSpace)||qO}}}),Mm=new WeakMap,ly=it.fromClass(class{constructor(n){this.view=n,this.inView=!0,this.lastTransaction=0,this.measureTimeout=-1;let e=n.state.facet(Zu);this.position=e.position,this.parent=e.parent,this.classes=n.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.manager=new oy(n,lh,t=>this.createTooltip(t)),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(t=>{Date.now()>this.lastTransaction-50&&t.length>0&&t[t.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),n.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let n of this.manager.tooltipViews)this.intersectionObserver.observe(n.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(n){n.transactions.length&&(this.lastTransaction=Date.now());let e=this.manager.update(n);e&&this.observeIntersection();let t=e||n.geometryChanged,r=n.state.facet(Zu);if(r.position!=this.position){this.position=r.position;for(let i of this.manager.tooltipViews)i.dom.style.position=this.position;t=!0}if(r.parent!=this.parent){this.parent&&this.container.remove(),this.parent=r.parent,this.createContainer();for(let i of this.manager.tooltipViews)this.container.appendChild(i.dom);t=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);t&&this.maybeMeasure()}createTooltip(n){let e=n.create(this.view);if(e.dom.classList.add("cm-tooltip"),n.arrow&&!e.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let t=document.createElement("div");t.className="cm-tooltip-arrow",e.dom.appendChild(t)}return e.dom.style.position=this.position,e.dom.style.top=Fa,this.container.appendChild(e.dom),e.mount&&e.mount(this.view),e}destroy(){var n,e;this.view.win.removeEventListener("resize",this.measureSoon);for(let t of this.manager.tooltipViews)t.dom.remove(),(n=t.destroy)===null||n===void 0||n.call(t);(e=this.intersectionObserver)===null||e===void 0||e.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let n=this.view.dom.getBoundingClientRect();return{editor:n,parent:this.parent?this.container.getBoundingClientRect():n,pos:this.manager.tooltips.map((e,t)=>{let r=this.manager.tooltipViews[t];return r.getCoords?r.getCoords(e.pos):this.view.coordsAtPos(e.pos)}),size:this.manager.tooltipViews.map(({dom:e})=>e.getBoundingClientRect()),space:this.view.state.facet(Zu).tooltipSpace(this.view)}}writeMeasure(n){var e;let{editor:t,space:r}=n,i=[];for(let s=0;s<this.manager.tooltips.length;s++){let a=this.manager.tooltips[s],o=this.manager.tooltipViews[s],{dom:l}=o,c=n.pos[s],u=n.size[s];if(!c||c.bottom<=Math.max(t.top,r.top)||c.top>=Math.min(t.bottom,r.bottom)||c.right<Math.max(t.left,r.left)-.1||c.left>Math.min(t.right,r.right)+.1){l.style.top=Fa;continue}let f=a.arrow?o.dom.querySelector(".cm-tooltip-arrow"):null,h=f?7:0,p=u.right-u.left,g=(e=Mm.get(o))!==null&&e!==void 0?e:u.bottom-u.top,m=o.offset||KO,v=this.view.textDirection==qe.LTR,b=u.width>r.right-r.left?v?r.left:r.right-u.width:v?Math.min(c.left-(f?14:0)+m.x,r.right-p):Math.max(r.left,c.left-p+(f?14:0)-m.x),y=!!a.above;!a.strictSide&&(y?c.top-(u.bottom-u.top)-m.y<r.top:c.bottom+(u.bottom-u.top)+m.y>r.bottom)&&y==r.bottom-c.bottom>c.top-r.top&&(y=!y);let w=(y?c.top-r.top:r.bottom-c.bottom)-h;if(w<g&&o.resize!==!1){if(w<this.view.defaultLineHeight){l.style.top=Fa;continue}Mm.set(o,g),l.style.height=(g=w)+"px"}else l.style.height&&(l.style.height="");let S=y?c.top-g-h-m.y:c.bottom+h+m.y,k=b+p;if(o.overlap!==!0)for(let A of i)A.left<k&&A.right>b&&A.top<S+g&&A.bottom>S&&(S=y?A.top-g-2-h:A.bottom+h+2);this.position=="absolute"?(l.style.top=S-n.parent.top+"px",l.style.left=b-n.parent.left+"px"):(l.style.top=S+"px",l.style.left=b+"px"),f&&(f.style.left=`${c.left+(v?m.x:-m.x)-(b+14-7)}px`),o.overlap!==!0&&i.push({left:b,top:S,right:k,bottom:S+g}),l.classList.toggle("cm-tooltip-above",y),l.classList.toggle("cm-tooltip-below",!y),o.positioned&&o.positioned(n.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let n of this.manager.tooltipViews)n.dom.style.top=Fa}},{eventHandlers:{scroll(){this.maybeMeasure()}}}),GO=G.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),KO={x:0,y:0},lh=J.define({enables:[ly,GO]}),kc=J.define();class ch{static create(e){return new ch(e)}constructor(e){this.view=e,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new oy(e,kc,t=>this.createHostedView(t))}createHostedView(e){let t=e.create(this.view);return t.dom.classList.add("cm-tooltip-section"),this.dom.appendChild(t.dom),this.mounted&&t.mount&&t.mount(this.view),t}mount(e){for(let t of this.manager.tooltipViews)t.mount&&t.mount(e);this.mounted=!0}positioned(e){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned(e)}update(e){this.manager.update(e)}destroy(){var e;for(let t of this.manager.tooltipViews)(e=t.destroy)===null||e===void 0||e.call(t)}}const ZO=lh.compute([kc],n=>{let e=n.facet(kc).filter(t=>t);return e.length===0?null:{pos:Math.min(...e.map(t=>t.pos)),end:Math.max(...e.filter(t=>t.end!=null).map(t=>t.end)),create:ch.create,above:e[0].above,arrow:e.some(t=>t.arrow)}});class YO{constructor(e,t,r,i,s){this.view=e,this.source=t,this.field=r,this.setHover=i,this.hoverTime=s,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:e.dom,time:0},this.checkHover=this.checkHover.bind(this),e.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),e.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active)return;let e=Date.now()-this.lastMove.time;e<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-e):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{view:e,lastMove:t}=this,r=e.docView.nearest(t.target);if(!r)return;let i,s=1;if(r instanceof br)i=r.posAtStart;else{if(i=e.posAtCoords(t),i==null)return;let o=e.coordsAtPos(i);if(!o||t.y<o.top||t.y>o.bottom||t.x<o.left-e.defaultCharacterWidth||t.x>o.right+e.defaultCharacterWidth)return;let l=e.bidiSpans(e.state.doc.lineAt(i)).find(u=>u.from<=i&&u.to>=i),c=l&&l.dir==qe.RTL?-1:1;s=t.x<o.left?-c:c}let a=this.source(e,i,s);if(a?.then){let o=this.pending={pos:i};a.then(l=>{this.pending==o&&(this.pending=null,l&&e.dispatch({effects:this.setHover.of(l)}))},l=>mn(e.state,l,"hover tooltip"))}else a&&e.dispatch({effects:this.setHover.of(a)})}mousemove(e){var t;this.lastMove={x:e.clientX,y:e.clientY,target:e.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let r=this.active;if(r&&!Im(this.lastMove.target)||this.pending){let{pos:i}=r||this.pending,s=(t=r?.end)!==null&&t!==void 0?t:i;(i==s?this.view.posAtCoords(this.lastMove)!=i:!JO(this.view,i,s,e.clientX,e.clientY,6))&&(this.view.dispatch({effects:this.setHover.of(null)}),this.pending=null)}}mouseleave(e){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1,this.active&&!Im(e.relatedTarget)&&this.view.dispatch({effects:this.setHover.of(null)})}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}function Im(n){for(let e=n;e;e=e.parentNode)if(e.nodeType==1&&e.classList.contains("cm-tooltip"))return!0;return!1}function JO(n,e,t,r,i,s){let a=document.createRange(),o=n.domAtPos(e),l=n.domAtPos(t);a.setEnd(l.node,l.offset),a.setStart(o.node,o.offset);let c=a.getClientRects();a.detach();for(let u=0;u<c.length;u++){let f=c[u];if(Math.max(f.top-i,i-f.bottom,f.left-r,r-f.right)<=s)return!0}return!1}function XO(n,e={}){let t=pe.define(),r=vt.define({create(){return null},update(i,s){if(i&&(e.hideOnChange&&(s.docChanged||s.selection)||e.hideOn&&e.hideOn(s,i)))return null;if(i&&s.docChanged){let a=s.changes.mapPos(i.pos,-1,kt.TrackDel);if(a==null)return null;let o=Object.assign(Object.create(null),i);o.pos=a,i.end!=null&&(o.end=s.changes.mapPos(i.end)),i=o}for(let a of s.effects)a.is(t)&&(i=a.value),a.is(QO)&&(i=null);return i},provide:i=>kc.from(i)});return[r,it.define(i=>new YO(i,n,r,t,e.hoverTime||300)),ZO]}function cy(n,e){let t=n.plugin(ly);if(!t)return null;let r=t.manager.tooltips.indexOf(e);return r<0?null:t.manager.tooltipViews[r]}const QO=pe.define(),Em=J.define({combine(n){let e,t;for(let r of n)e=e||r.topContainer,t=t||r.bottomContainer;return{topContainer:e,bottomContainer:t}}});function zs(n,e){let t=n.plugin(uy),r=t?t.specs.indexOf(e):-1;return r>-1?t.panels[r]:null}const uy=it.fromClass(class{constructor(n){this.input=n.state.facet(Ws),this.specs=this.input.filter(t=>t),this.panels=this.specs.map(t=>t(n));let e=n.state.facet(Em);this.top=new Ha(n,!0,e.topContainer),this.bottom=new Ha(n,!1,e.bottomContainer),this.top.sync(this.panels.filter(t=>t.top)),this.bottom.sync(this.panels.filter(t=>!t.top));for(let t of this.panels)t.dom.classList.add("cm-panel"),t.mount&&t.mount()}update(n){let e=n.state.facet(Em);this.top.container!=e.topContainer&&(this.top.sync([]),this.top=new Ha(n.view,!0,e.topContainer)),this.bottom.container!=e.bottomContainer&&(this.bottom.sync([]),this.bottom=new Ha(n.view,!1,e.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let t=n.state.facet(Ws);if(t!=this.input){let r=t.filter(l=>l),i=[],s=[],a=[],o=[];for(let l of r){let c=this.specs.indexOf(l),u;c<0?(u=l(n.view),o.push(u)):(u=this.panels[c],u.update&&u.update(n)),i.push(u),(u.top?s:a).push(u)}this.specs=r,this.panels=i,this.top.sync(s),this.bottom.sync(a);for(let l of o)l.dom.classList.add("cm-panel"),l.mount&&l.mount()}else for(let r of this.panels)r.update&&r.update(n)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:n=>G.scrollMargins.of(e=>{let t=e.plugin(n);return t&&{top:t.top.scrollMargin(),bottom:t.bottom.scrollMargin()}})});class Ha{constructor(e,t,r){this.view=e,this.top=t,this.container=r,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(e){for(let t of this.panels)t.destroy&&e.indexOf(t)<0&&t.destroy();this.panels=e,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let t=this.container||this.view.dom;t.insertBefore(this.dom,this.top?t.firstChild:null)}let e=this.dom.firstChild;for(let t of this.panels)if(t.dom.parentNode==this.dom){for(;e!=t.dom;)e=Dm(e);e=e.nextSibling}else this.dom.insertBefore(t.dom,e);for(;e;)e=Dm(e)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let e of this.classes.split(" "))e&&this.container.classList.remove(e);for(let e of(this.classes=this.view.themeClasses).split(" "))e&&this.container.classList.add(e)}}}function Dm(n){let e=n.nextSibling;return n.remove(),e}const Ws=J.define({enables:uy});class rr extends Zr{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}rr.prototype.elementClass="";rr.prototype.toDOM=void 0;rr.prototype.mapMode=kt.TrackBefore;rr.prototype.startSide=rr.prototype.endSide=-1;rr.prototype.point=!0;const Yl=J.define(),eT={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>Pe.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{}},Es=J.define();function tT(n){return[dy(),Es.of(Object.assign(Object.assign({},eT),n))]}const Rm=J.define({combine:n=>n.some(e=>e)});function dy(n){return[nT]}const nT=it.fromClass(class{constructor(n){this.view=n,this.prevViewport=n.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight+"px",this.gutters=n.state.facet(Es).map(e=>new Tm(n,e));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!n.state.facet(Rm),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),n.scrollDOM.insertBefore(this.dom,n.contentDOM)}update(n){if(this.updateGutters(n)){let e=this.prevViewport,t=n.view.viewport,r=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(r<(t.to-t.from)*.8)}n.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight+"px"),this.view.state.facet(Rm)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=n.view.viewport}syncGutters(n){let e=this.dom.nextSibling;n&&this.dom.remove();let t=Pe.iter(this.view.state.facet(Yl),this.view.viewport.from),r=[],i=this.gutters.map(s=>new rT(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(r.length&&(r=[]),Array.isArray(s.type)){let a=!0;for(let o of s.type)if(o.type==Ge.Text&&a){ff(t,r,o.from);for(let l of i)l.line(this.view,o,r);a=!1}else if(o.widget)for(let l of i)l.widget(this.view,o)}else if(s.type==Ge.Text){ff(t,r,s.from);for(let a of i)a.line(this.view,s,r)}for(let s of i)s.finish();n&&this.view.scrollDOM.insertBefore(this.dom,e)}updateGutters(n){let e=n.startState.facet(Es),t=n.state.facet(Es),r=n.docChanged||n.heightChanged||n.viewportChanged||!Pe.eq(n.startState.facet(Yl),n.state.facet(Yl),n.view.viewport.from,n.view.viewport.to);if(e==t)for(let i of this.gutters)i.update(n)&&(r=!0);else{r=!0;let i=[];for(let s of t){let a=e.indexOf(s);a<0?i.push(new Tm(this.view,s)):(this.gutters[a].update(n),i.push(this.gutters[a]))}for(let s of this.gutters)s.dom.remove(),i.indexOf(s)<0&&s.destroy();for(let s of i)this.dom.appendChild(s.dom);this.gutters=i}return r}destroy(){for(let n of this.gutters)n.destroy();this.dom.remove()}},{provide:n=>G.scrollMargins.of(e=>{let t=e.plugin(n);return!t||t.gutters.length==0||!t.fixed?null:e.textDirection==qe.LTR?{left:t.dom.offsetWidth}:{right:t.dom.offsetWidth}})});function Om(n){return Array.isArray(n)?n:[n]}function ff(n,e,t){for(;n.value&&n.from<=t;)n.from==t&&e.push(n.value),n.next()}class rT{constructor(e,t,r){this.gutter=e,this.height=r,this.i=0,this.cursor=Pe.iter(e.markers,t.from)}addElement(e,t,r){let{gutter:i}=this,s=t.top-this.height;if(this.i==i.elements.length){let a=new fy(e,t.height,s,r);i.elements.push(a),i.dom.appendChild(a.dom)}else i.elements[this.i].update(e,t.height,s,r);this.height=t.bottom,this.i++}line(e,t,r){let i=[];ff(this.cursor,i,t.from),r.length&&(i=i.concat(r));let s=this.gutter.config.lineMarker(e,t,i);s&&i.unshift(s);let a=this.gutter;i.length==0&&!a.config.renderEmptyElements||this.addElement(e,t,i)}widget(e,t){let r=this.gutter.config.widgetMarker(e,t.widget,t);r&&this.addElement(e,t,[r])}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class Tm{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let r in t.domEventHandlers)this.dom.addEventListener(r,i=>{let s=i.target,a;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let l=s.getBoundingClientRect();a=(l.top+l.bottom)/2}else a=i.clientY;let o=e.lineBlockAtHeight(a-e.documentTop);t.domEventHandlers[r](e,o,i)&&i.preventDefault()});this.markers=Om(t.markers(e)),t.initialSpacer&&(this.spacer=new fy(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=Om(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let i=this.config.updateSpacer(this.spacer.markers[0],e);i!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[i])}let r=e.view.viewport;return!Pe.eq(this.markers,t,r.from,r.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class fy{constructor(e,t,r,i){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,r,i)}update(e,t,r,i){this.height!=t&&(this.dom.style.height=(this.height=t)+"px"),this.above!=r&&(this.dom.style.marginTop=(this.above=r)?r+"px":""),iT(this.markers,i)||this.setMarkers(e,i)}setMarkers(e,t){let r="cm-gutterElement",i=this.dom.firstChild;for(let s=0,a=0;;){let o=a,l=s<t.length?t[s++]:null,c=!1;if(l){let u=l.elementClass;u&&(r+=" "+u);for(let f=a;f<this.markers.length;f++)if(this.markers[f].compare(l)){o=f,c=!0;break}}else o=this.markers.length;for(;a<o;){let u=this.markers[a++];if(u.toDOM){u.destroy(i);let f=i.nextSibling;i.remove(),i=f}}if(!l)break;l.toDOM&&(c?i=i.nextSibling:this.dom.insertBefore(l.toDOM(e),i)),c&&a++}this.dom.className=r,this.markers=t}destroy(){this.setMarkers(null,[])}}function iT(n,e){if(n.length!=e.length)return!1;for(let t=0;t<n.length;t++)if(!n[t].compare(e[t]))return!1;return!0}const sT=J.define(),Ai=J.define({combine(n){return Yn(n,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let r=Object.assign({},e);for(let i in t){let s=r[i],a=t[i];r[i]=s?(o,l,c)=>s(o,l,c)||a(o,l,c):a}return r}})}});class Yu extends rr{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function Ju(n,e){return n.state.facet(Ai).formatNumber(e,n.state)}const aT=Es.compute([Ai],n=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(sT)},lineMarker(e,t,r){return r.some(i=>i.toDOM)?null:new Yu(Ju(e,e.state.doc.lineAt(t.from).number))},widgetMarker:()=>null,lineMarkerChange:e=>e.startState.facet(Ai)!=e.state.facet(Ai),initialSpacer(e){return new Yu(Ju(e,Nm(e.state.doc.lines)))},updateSpacer(e,t){let r=Ju(t.view,Nm(t.view.state.doc.lines));return r==e.number?e:new Yu(r)},domEventHandlers:n.facet(Ai).domEventHandlers}));function oT(n={}){return[Ai.of(n),dy(),aT]}function Nm(n){let e=9;for(;e<n;)e=e*10+9;return e}const lT=new class extends rr{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},cT=Yl.compute(["selection"],n=>{let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.head).from;i>t&&(t=i,e.push(lT.range(i)))}return Pe.of(e)});function uT(){return cT}const dT=1024;let fT=0;class fn{constructor(e,t){this.from=e,this.to=t}}class xe{constructor(e={}){this.id=fT++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=Jt.match(e)),t=>{let r=e(t);return r===void 0?null:[this,r]}}}xe.closedBy=new xe({deserialize:n=>n.split(" ")});xe.openedBy=new xe({deserialize:n=>n.split(" ")});xe.group=new xe({deserialize:n=>n.split(" ")});xe.isolate=new xe({deserialize:n=>{if(n&&n!="rtl"&&n!="ltr"&&n!="auto")throw new RangeError("Invalid value for isolate: "+n);return n||"auto"}});xe.contextHash=new xe({perNode:!0});xe.lookAhead=new xe({perNode:!0});xe.mounted=new xe({perNode:!0});class qs{constructor(e,t,r){this.tree=e,this.overlay=t,this.parser=r}static get(e){return e&&e.props&&e.props[xe.mounted.id]}}const hT=Object.create(null);class Jt{constructor(e,t,r,i=0){this.name=e,this.props=t,this.id=r,this.flags=i}static define(e){let t=e.props&&e.props.length?Object.create(null):hT,r=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),i=new Jt(e.name||"",t,e.id,r);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(i)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return i}prop(e){return this.props[e.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(xe.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let r in e)for(let i of r.split(" "))t[i]=e[r];return r=>{for(let i=r.prop(xe.group),s=-1;s<(i?i.length:0);s++){let a=t[s<0?r.name:i[s]];if(a)return a}}}}Jt.none=new Jt("",Object.create(null),0,8);class hy{constructor(e){this.types=e;for(let t=0;t<e.length;t++)if(e[t].id!=t)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let t=[];for(let r of this.types){let i=null;for(let s of e){let a=s(r);a&&(i||(i=Object.assign({},r.props)),i[a[0].id]=a[1])}t.push(i?new Jt(r.name,i,r.id,r.flags):r)}return new hy(t)}}const Va=new WeakMap,Pm=new WeakMap;var We;(function(n){n[n.ExcludeBuffers=1]="ExcludeBuffers",n[n.IncludeAnonymous=2]="IncludeAnonymous",n[n.IgnoreMounts=4]="IgnoreMounts",n[n.IgnoreOverlays=8]="IgnoreOverlays"})(We||(We={}));class dt{constructor(e,t,r,i,s){if(this.type=e,this.children=t,this.positions=r,this.length=i,this.props=null,s&&s.length){this.props=Object.create(null);for(let[a,o]of s)this.props[typeof a=="number"?a:a.id]=o}}toString(){let e=qs.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let r of this.children){let i=r.toString();i&&(t&&(t+=","),t+=i)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new Cc(this.topNode,e)}cursorAt(e,t=0,r=0){let i=Va.get(this)||this.topNode,s=new Cc(i);return s.moveTo(e,t),Va.set(this,s._tree),s}get topNode(){return new Dt(this,0,0,null)}resolve(e,t=0){let r=Gs(Va.get(this)||this.topNode,e,t,!1);return Va.set(this,r),r}resolveInner(e,t=0){let r=Gs(Pm.get(this)||this.topNode,e,t,!0);return Pm.set(this,r),r}resolveStack(e,t=0){return gT(this,e,t)}iterate(e){let{enter:t,leave:r,from:i=0,to:s=this.length}=e,a=e.mode||0,o=(a&We.IncludeAnonymous)>0;for(let l=this.cursor(a|We.IncludeAnonymous);;){let c=!1;if(l.from<=s&&l.to>=i&&(!o&&l.type.isAnonymous||t(l)!==!1)){if(l.firstChild())continue;c=!0}for(;c&&r&&(o||!l.type.isAnonymous)&&r(l),!l.nextSibling();){if(!l.parent())return;c=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:fh(Jt.none,this.children,this.positions,0,this.children.length,0,this.length,(t,r,i)=>new dt(this.type,t,r,i,this.propValues),e.makeTree||((t,r,i)=>new dt(Jt.none,t,r,i)))}static build(e){return vT(e)}}dt.empty=new dt(Jt.none,[],[],0);class uh{constructor(e,t){this.buffer=e,this.index=t}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new uh(this.buffer,this.index)}}class Dr{constructor(e,t,r){this.buffer=e,this.length=t,this.set=r}get type(){return Jt.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],r=this.buffer[e+3],i=this.set.types[t],s=i.name;if(/\W/.test(s)&&!i.isError&&(s=JSON.stringify(s)),e+=4,r==e)return s;let a=[];for(;e<r;)a.push(this.childString(e)),e=this.buffer[e+3];return s+"("+a.join(",")+")"}findChild(e,t,r,i,s){let{buffer:a}=this,o=-1;for(let l=e;l!=t&&!(py(s,i,a[l+1],a[l+2])&&(o=l,r>0));l=a[l+3]);return o}slice(e,t,r){let i=this.buffer,s=new Uint16Array(t-e),a=0;for(let o=e,l=0;o<t;){s[l++]=i[o++],s[l++]=i[o++]-r;let c=s[l++]=i[o++]-r;s[l++]=i[o++]-e,a=Math.max(a,c)}return new Dr(s,a,this.set)}}function py(n,e,t,r){switch(n){case-2:return t<e;case-1:return r>=e&&t<e;case 0:return t<e&&r>e;case 1:return t<=e&&r>e;case 2:return r>e;case 4:return!0}}function Gs(n,e,t,r){for(var i;n.from==n.to||(t<1?n.from>=e:n.from>e)||(t>-1?n.to<=e:n.to<e);){let a=!r&&n instanceof Dt&&n.index<0?null:n.parent;if(!a)return n;n=a}let s=r?0:We.IgnoreOverlays;if(r)for(let a=n,o=a.parent;o;a=o,o=a.parent)a instanceof Dt&&a.index<0&&((i=o.enter(e,t,s))===null||i===void 0?void 0:i.from)!=a.from&&(n=o);for(;;){let a=n.enter(e,t,s);if(!a)return n;n=a}}class my{cursor(e=0){return new Cc(this,e)}getChild(e,t=null,r=null){let i=Lm(this,e,t,r);return i.length?i[0]:null}getChildren(e,t=null,r=null){return Lm(this,e,t,r)}resolve(e,t=0){return Gs(this,e,t,!1)}resolveInner(e,t=0){return Gs(this,e,t,!0)}matchContext(e){return hf(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),r=this;for(;t;){let i=t.lastChild;if(!i||i.to!=t.to)break;i.type.isError&&i.from==i.to?(r=t,t=i.prevSibling):t=i}return r}get node(){return this}get next(){return this.parent}}class Dt extends my{constructor(e,t,r,i){super(),this._tree=e,this.from=t,this.index=r,this._parent=i}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(e,t,r,i,s=0){for(let a=this;;){for(let{children:o,positions:l}=a._tree,c=t>0?o.length:-1;e!=c;e+=t){let u=o[e],f=l[e]+a.from;if(py(i,r,f,f+u.length)){if(u instanceof Dr){if(s&We.ExcludeBuffers)continue;let h=u.findChild(0,u.buffer.length,t,r-f,i);if(h>-1)return new Vn(new pT(a,u,e,f),null,h)}else if(s&We.IncludeAnonymous||!u.type.isAnonymous||dh(u)){let h;if(!(s&We.IgnoreMounts)&&(h=qs.get(u))&&!h.overlay)return new Dt(h.tree,f,e,a);let p=new Dt(u,f,e,a);return s&We.IncludeAnonymous||!p.type.isAnonymous?p:p.nextChild(t<0?u.children.length-1:0,t,r,i)}}}if(s&We.IncludeAnonymous||!a.type.isAnonymous||(a.index>=0?e=a.index+t:e=t<0?-1:a._parent._tree.children.length,a=a._parent,!a))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}enter(e,t,r=0){let i;if(!(r&We.IgnoreOverlays)&&(i=qs.get(this._tree))&&i.overlay){let s=e-this.from;for(let{from:a,to:o}of i.overlay)if((t>0?a<=s:a<s)&&(t<0?o>=s:o>s))return new Dt(i.tree,i.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,r)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function Lm(n,e,t,r){let i=n.cursor(),s=[];if(!i.firstChild())return s;if(t!=null){for(let a=!1;!a;)if(a=i.type.is(t),!i.nextSibling())return s}for(;;){if(r!=null&&i.type.is(r))return s;if(i.type.is(e)&&s.push(i.node),!i.nextSibling())return r==null?s:[]}}function hf(n,e,t=e.length-1){for(let r=n;t>=0;r=r.parent){if(!r)return!1;if(!r.type.isAnonymous){if(e[t]&&e[t]!=r.name)return!1;t--}}return!0}class pT{constructor(e,t,r,i){this.parent=e,this.buffer=t,this.index=r,this.start=i}}class Vn extends my{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(e,t,r){super(),this.context=e,this._parent=t,this.index=r,this.type=e.buffer.set.types[e.buffer.buffer[r]]}child(e,t,r){let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.context.start,r);return s<0?null:new Vn(this.context,this,s)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}enter(e,t,r=0){if(r&We.ExcludeBuffers)return null;let{buffer:i}=this.context,s=i.findChild(this.index+4,i.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new Vn(this.context,this,s)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new Vn(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new Vn(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:r}=this.context,i=this.index+4,s=r.buffer[this.index+3];if(s>i){let a=r.buffer[this.index+1];e.push(r.slice(i,s,a)),t.push(0)}return new dt(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function gy(n){if(!n.length)return null;let e=0,t=n[0];for(let s=1;s<n.length;s++){let a=n[s];(a.from>t.from||a.to<t.to)&&(t=a,e=s)}let r=t instanceof Dt&&t.index<0?null:t.parent,i=n.slice();return r?i[e]=r:i.splice(e,1),new mT(i,t)}class mT{constructor(e,t){this.heads=e,this.node=t}get next(){return gy(this.heads)}}function gT(n,e,t){let r=n.resolveInner(e,t),i=null;for(let s=r instanceof Dt?r:r.context.parent;s;s=s.parent)if(s.index<0){let a=s.parent;(i||(i=[r])).push(a.resolve(e,t)),s=a}else{let a=qs.get(s.tree);if(a&&a.overlay&&a.overlay[0].from<=e&&a.overlay[a.overlay.length-1].to>=e){let o=new Dt(a.tree,a.overlay[0].from+s.from,-1,s);(i||(i=[r])).push(Gs(o,e,t,!1))}}return i?gy(i):r}class Cc{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof Dt)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let r=e._parent;r;r=r._parent)this.stack.unshift(r.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:r,buffer:i}=this.buffer;return this.type=t||i.set.types[i.buffer[e]],this.from=r+i.buffer[e+1],this.to=r+i.buffer[e+2],!0}yield(e){return e?e instanceof Dt?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,r){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,r,this.mode));let{buffer:i}=this.buffer,s=i.findChild(this.index+4,i.buffer[this.index+3],e,t-this.buffer.start,r);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,r=this.mode){return this.buffer?r&We.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,r))}parent(){if(!this.buffer)return this.yieldNode(this.mode&We.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&We.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,r=this.stack.length-1;if(e<0){let i=r<0?0:this.stack[r]+4;if(this.index!=i)return this.yieldBuf(t.findChild(i,this.index,-1,0,4))}else{let i=t.buffer[this.index+3];if(i<(r<0?t.buffer.length:t.buffer[this.stack[r]+3]))return this.yieldBuf(i)}return r<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,r,{buffer:i}=this;if(i){if(e>0){if(this.index<i.buffer.buffer.length)return!1}else for(let s=0;s<this.index;s++)if(i.buffer.buffer[s+3]<this.index)return!1;({index:t,parent:r}=i)}else({index:t,_parent:r}=this._tree);for(;r;{index:t,_parent:r}=r)if(t>-1)for(let s=t+e,a=e<0?-1:r._tree.children.length;s!=a;s+=e){let o=r._tree.children[s];if(this.mode&We.IncludeAnonymous||o instanceof Dr||!o.type.isAnonymous||dh(o))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,r=0;if(e&&e.context==this.buffer)e:for(let i=this.index,s=this.stack.length;s>=0;){for(let a=e;a;a=a._parent)if(a.index==i){if(i==this.index)return a;t=a,r=s+1;break e}i=this.stack[--s]}for(let i=r;i<this.stack.length;i++)t=new Vn(this.buffer,t,this.stack[i]);return this.bufferNode=new Vn(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let r=0;;){let i=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){r++;continue}this.type.isAnonymous||(i=!0)}for(;;){if(i&&t&&t(this),i=this.type.isAnonymous,!r)return;if(this.nextSibling())break;this.parent(),r--,i=!0}}}matchContext(e){if(!this.buffer)return hf(this.node.parent,e);let{buffer:t}=this.buffer,{types:r}=t.set;for(let i=e.length-1,s=this.stack.length-1;i>=0;s--){if(s<0)return hf(this._tree,e,i);let a=r[t.buffer[this.stack[s]]];if(!a.isAnonymous){if(e[i]&&e[i]!=a.name)return!1;i--}}return!0}}function dh(n){return n.children.some(e=>e instanceof Dr||!e.type.isAnonymous||dh(e))}function vT(n){var e;let{buffer:t,nodeSet:r,maxBufferLength:i=dT,reused:s=[],minRepeatType:a=r.types.length}=n,o=Array.isArray(t)?new uh(t,t.length):t,l=r.types,c=0,u=0;function f(k,A,C,E,M,R){let{id:T,start:N,end:P,size:L}=o,$=u,q=c;for(;L<0;)if(o.next(),L==-1){let ve=s[T];C.push(ve),E.push(N-k);return}else if(L==-3){c=T;return}else if(L==-4){u=T;return}else throw new RangeError(`Unrecognized record size: ${L}`);let Z=l[T],oe,ee,de=N-k;if(P-N<=i&&(ee=v(o.pos-A,M))){let ve=new Uint16Array(ee.size-ee.skip),K=o.pos-ee.size,fe=ve.length;for(;o.pos>K;)fe=b(ee.start,ve,fe);oe=new Dr(ve,P-ee.start,r),de=ee.start-k}else{let ve=o.pos-L;o.next();let K=[],fe=[],re=T>=a?T:-1,ue=0,Q=P;for(;o.pos>ve;)re>=0&&o.id==re&&o.size>=0?(o.end<=Q-i&&(g(K,fe,N,ue,o.end,Q,re,$,q),ue=K.length,Q=o.end),o.next()):R>2500?h(N,ve,K,fe):f(N,ve,K,fe,re,R+1);if(re>=0&&ue>0&&ue<K.length&&g(K,fe,N,ue,N,Q,re,$,q),K.reverse(),fe.reverse(),re>-1&&ue>0){let ce=p(Z,q);oe=fh(Z,K,fe,0,K.length,0,P-N,ce,ce)}else oe=m(Z,K,fe,P-N,$-P,q)}C.push(oe),E.push(de)}function h(k,A,C,E){let M=[],R=0,T=-1;for(;o.pos>A;){let{id:N,start:P,end:L,size:$}=o;if($>4)o.next();else{if(T>-1&&P<T)break;T<0&&(T=L-i),M.push(N,P,L),R++,o.next()}}if(R){let N=new Uint16Array(R*4),P=M[M.length-2];for(let L=M.length-3,$=0;L>=0;L-=3)N[$++]=M[L],N[$++]=M[L+1]-P,N[$++]=M[L+2]-P,N[$++]=$;C.push(new Dr(N,M[2]-P,r)),E.push(P-k)}}function p(k,A){return(C,E,M)=>{let R=0,T=C.length-1,N,P;if(T>=0&&(N=C[T])instanceof dt){if(!T&&N.type==k&&N.length==M)return N;(P=N.prop(xe.lookAhead))&&(R=E[T]+N.length+P)}return m(k,C,E,M,R,A)}}function g(k,A,C,E,M,R,T,N,P){let L=[],$=[];for(;k.length>E;)L.push(k.pop()),$.push(A.pop()+C-M);k.push(m(r.types[T],L,$,R-M,N-R,P)),A.push(M-C)}function m(k,A,C,E,M,R,T){if(R){let N=[xe.contextHash,R];T=T?[N].concat(T):[N]}if(M>25){let N=[xe.lookAhead,M];T=T?[N].concat(T):[N]}return new dt(k,A,C,E,T)}function v(k,A){let C=o.fork(),E=0,M=0,R=0,T=C.end-i,N={size:0,start:0,skip:0};e:for(let P=C.pos-k;C.pos>P;){let L=C.size;if(C.id==A&&L>=0){N.size=E,N.start=M,N.skip=R,R+=4,E+=4,C.next();continue}let $=C.pos-L;if(L<0||$<P||C.start<T)break;let q=C.id>=a?4:0,Z=C.start;for(C.next();C.pos>$;){if(C.size<0)if(C.size==-3)q+=4;else break e;else C.id>=a&&(q+=4);C.next()}M=Z,E+=L,R+=q}return(A<0||E==k)&&(N.size=E,N.start=M,N.skip=R),N.size>4?N:void 0}function b(k,A,C){let{id:E,start:M,end:R,size:T}=o;if(o.next(),T>=0&&E<a){let N=C;if(T>4){let P=o.pos-(T-4);for(;o.pos>P;)C=b(k,A,C)}A[--C]=N,A[--C]=R-k,A[--C]=M-k,A[--C]=E}else T==-3?c=E:T==-4&&(u=E);return C}let y=[],w=[];for(;o.pos>0;)f(n.start||0,n.bufferStart||0,y,w,-1,0);let S=(e=n.length)!==null&&e!==void 0?e:y.length?w[0]+y[0].length:0;return new dt(l[n.topID],y.reverse(),w.reverse(),S)}const _m=new WeakMap;function Jl(n,e){if(!n.isAnonymous||e instanceof Dr||e.type!=n)return 1;let t=_m.get(e);if(t==null){t=1;for(let r of e.children){if(r.type!=n||!(r instanceof dt)){t=1;break}t+=Jl(n,r)}_m.set(e,t)}return t}function fh(n,e,t,r,i,s,a,o,l){let c=0;for(let g=r;g<i;g++)c+=Jl(n,e[g]);let u=Math.ceil(c*1.5/8),f=[],h=[];function p(g,m,v,b,y){for(let w=v;w<b;){let S=w,k=m[w],A=Jl(n,g[w]);for(w++;w<b;w++){let C=Jl(n,g[w]);if(A+C>=u)break;A+=C}if(w==S+1){if(A>u){let C=g[S];p(C.children,C.positions,0,C.children.length,m[S]+y);continue}f.push(g[S])}else{let C=m[w-1]+g[w-1].length-k;f.push(fh(n,g,m,S,w,k,C,null,l))}h.push(k+y-s)}}return p(e,t,r,i,0),(o||l)(f,h,a)}class g6{constructor(){this.map=new WeakMap}setBuffer(e,t,r){let i=this.map.get(e);i||this.map.set(e,i=new Map),i.set(t,r)}getBuffer(e,t){let r=this.map.get(e);return r&&r.get(t)}set(e,t){e instanceof Vn?this.setBuffer(e.context.buffer,e.index,t):e instanceof Dt&&this.map.set(e.tree,t)}get(e){return e instanceof Vn?this.getBuffer(e.context.buffer,e.index):e instanceof Dt?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}}class tr{constructor(e,t,r,i,s=!1,a=!1){this.from=e,this.to=t,this.tree=r,this.offset=i,this.open=(s?1:0)|(a?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],r=!1){let i=[new tr(0,e.length,e,0,!1,r)];for(let s of t)s.to>e.length&&i.push(s);return i}static applyChanges(e,t,r=128){if(!t.length)return e;let i=[],s=1,a=e.length?e[0]:null;for(let o=0,l=0,c=0;;o++){let u=o<t.length?t[o]:null,f=u?u.fromA:1e9;if(f-l>=r)for(;a&&a.from<f;){let h=a;if(l>=h.from||f<=h.to||c){let p=Math.max(h.from,l)-c,g=Math.min(h.to,f)-c;h=p>=g?null:new tr(p,g,h.tree,h.offset+c,o>0,!!u)}if(h&&i.push(h),a.to>f)break;a=s<e.length?e[s++]:null}if(!u)break;l=u.toA,c=u.toA-u.toB}return i}}class bT{startParse(e,t,r){return typeof e=="string"&&(e=new xT(e)),r=r?r.length?r.map(i=>new fn(i.from,i.to)):[new fn(0,0)]:[new fn(0,e.length)],this.createParse(e,t||[],r)}parse(e,t,r){let i=this.startParse(e,t,r);for(;;){let s=i.advance();if(s)return s}}}class xT{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function v6(n){return(e,t,r,i)=>new wT(e,n,t,r,i)}class jm{constructor(e,t,r,i,s){this.parser=e,this.parse=t,this.overlay=r,this.target=i,this.from=s}}function Bm(n){if(!n.length||n.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(n))}class yT{constructor(e,t,r,i,s,a,o){this.parser=e,this.predicate=t,this.mounts=r,this.index=i,this.start=s,this.target=a,this.prev=o,this.depth=0,this.ranges=[]}}const pf=new xe({perNode:!0});class wT{constructor(e,t,r,i,s){this.nest=t,this.input=r,this.fragments=i,this.ranges=s,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let r=this.baseParse.advance();if(!r)return null;if(this.baseParse=null,this.baseTree=r,this.startInner(),this.stoppedAt!=null)for(let i of this.inner)i.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let r=this.baseTree;return this.stoppedAt!=null&&(r=new dt(r.type,r.children,r.positions,r.length,r.propValues.concat([[pf,this.stoppedAt]]))),r}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let r=Object.assign(Object.create(null),e.target.props);r[xe.mounted.id]=new qs(t,e.overlay,e.parser),e.target.props=r}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].from<e&&(e=Math.min(e,this.inner[t].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].parse.stopAt(e)}startInner(){let e=new CT(this.fragments),t=null,r=null,i=new Cc(new Dt(this.baseTree,this.ranges[0].from,0,null),We.IncludeAnonymous|We.IgnoreMounts);e:for(let s,a;;){let o=!0,l;if(this.stoppedAt!=null&&i.from>=this.stoppedAt)o=!1;else if(e.hasNode(i)){if(t){let c=t.mounts.find(u=>u.frag.from<=i.from&&u.frag.to>=i.to&&u.mount.overlay);if(c)for(let u of c.mount.overlay){let f=u.from+c.pos,h=u.to+c.pos;f>=i.from&&h<=i.to&&!t.ranges.some(p=>p.from<h&&p.to>f)&&t.ranges.push({from:f,to:h})}}o=!1}else if(r&&(a=ST(r.ranges,i.from,i.to)))o=a!=2;else if(!i.type.isAnonymous&&(s=this.nest(i,this.input))&&(i.from<i.to||!s.overlay)){i.tree||kT(i);let c=e.findMounts(i.from,s.parser);if(typeof s.overlay=="function")t=new yT(s.parser,s.overlay,c,this.inner.length,i.from,i.tree,t);else{let u=Hm(this.ranges,s.overlay||(i.from<i.to?[new fn(i.from,i.to)]:[]));u.length&&Bm(u),(u.length||!s.overlay)&&this.inner.push(new jm(s.parser,u.length?s.parser.startParse(this.input,Vm(c,u),u):s.parser.startParse(""),s.overlay?s.overlay.map(f=>new fn(f.from-i.from,f.to-i.from)):null,i.tree,u.length?u[0].from:i.from)),s.overlay?u.length&&(r={ranges:u,depth:0,prev:r}):o=!1}}else if(t&&(l=t.predicate(i))&&(l===!0&&(l=new fn(i.from,i.to)),l.from<l.to)){let c=t.ranges.length-1;c>=0&&t.ranges[c].to==l.from?t.ranges[c]={from:t.ranges[c].from,to:l.to}:t.ranges.push(l)}if(o&&i.firstChild())t&&t.depth++,r&&r.depth++;else for(;!i.nextSibling();){if(!i.parent())break e;if(t&&!--t.depth){let c=Hm(this.ranges,t.ranges);c.length&&(Bm(c),this.inner.splice(t.index,0,new jm(t.parser,t.parser.startParse(this.input,Vm(t.mounts,c),c),t.ranges.map(u=>new fn(u.from-t.start,u.to-t.start)),t.target,c[0].from))),t=t.prev}r&&!--r.depth&&(r=r.prev)}}}}function ST(n,e,t){for(let r of n){if(r.from>=t)break;if(r.to>e)return r.from<=e&&r.to>=t?2:1}return 0}function $m(n,e,t,r,i,s){if(e<t){let a=n.buffer[e+1];r.push(n.slice(e,t,a)),i.push(a-s)}}function kT(n){let{node:e}=n,t=[],r=e.context.buffer;do t.push(n.index),n.parent();while(!n.tree);let i=n.tree,s=i.children.indexOf(r),a=i.children[s],o=a.buffer,l=[s];function c(u,f,h,p,g,m){let v=t[m],b=[],y=[];$m(a,u,v,b,y,p);let w=o[v+1],S=o[v+2];l.push(b.length);let k=m?c(v+4,o[v+3],a.set.types[o[v]],w,S-w,m-1):e.toTree();return b.push(k),y.push(w-p),$m(a,o[v+3],f,b,y,p),new dt(h,b,y,g)}i.children[s]=c(0,o.length,Jt.none,0,a.length,t.length-1);for(let u of l){let f=n.tree.children[u],h=n.tree.positions[u];n.yield(new Dt(f,h+n.from,u,n._tree))}}class Fm{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(We.IncludeAnonymous|We.IgnoreMounts)}moveTo(e){let{cursor:t}=this,r=e-this.offset;for(;!this.done&&t.from<r;)t.to>=e&&t.enter(r,1,We.IgnoreOverlays|We.ExcludeBuffers)||t.next(!1)||(this.done=!0)}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof dt)t=t.children[0];else break}return!1}}class CT{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let r=this.curFrag=e[0];this.curTo=(t=r.tree.prop(pf))!==null&&t!==void 0?t:r.to,this.inner=new Fm(r.tree,-r.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(pf))!==null&&e!==void 0?e:t.to,this.inner=new Fm(t.tree,-t.offset)}}findMounts(e,t){var r;let i=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let a=(r=s.tree)===null||r===void 0?void 0:r.prop(xe.mounted);if(a&&a.parser==t)for(let o=this.fragI;o<this.fragments.length;o++){let l=this.fragments[o];if(l.from>=s.to)break;l.tree==this.curFrag.tree&&i.push({frag:l,pos:s.from-l.offset,mount:a})}}}return i}}function Hm(n,e){let t=null,r=e;for(let i=1,s=0;i<n.length;i++){let a=n[i-1].to,o=n[i].from;for(;s<r.length;s++){let l=r[s];if(l.from>=o)break;l.to<=a||(t||(r=t=e.slice()),l.from<a?(t[s]=new fn(l.from,a),l.to>o&&t.splice(s+1,0,new fn(o,l.to))):l.to>o?t[s--]=new fn(o,l.to):t.splice(s--,1))}}return r}function AT(n,e,t,r){let i=0,s=0,a=!1,o=!1,l=-1e9,c=[];for(;;){let u=i==n.length?1e9:a?n[i].to:n[i].from,f=s==e.length?1e9:o?e[s].to:e[s].from;if(a!=o){let h=Math.max(l,t),p=Math.min(u,f,r);h<p&&c.push(new fn(h,p))}if(l=Math.min(u,f),l==1e9)break;u==l&&(a?(a=!1,i++):a=!0),f==l&&(o?(o=!1,s++):o=!0)}return c}function Vm(n,e){let t=[];for(let{pos:r,mount:i,frag:s}of n){let a=r+(i.overlay?i.overlay[0].from:0),o=a+i.tree.length,l=Math.max(s.from,a),c=Math.min(s.to,o);if(i.overlay){let u=i.overlay.map(h=>new fn(h.from+r,h.to+r)),f=AT(e,u,l,c);for(let h=0,p=l;;h++){let g=h==f.length,m=g?c:f[h].from;if(m>p&&t.push(new tr(p,m,i.tree,-a,s.from>=p||s.openStart,s.to<=m||s.openEnd)),g)break;p=f[h].to}}else t.push(new tr(l,c,i.tree,-a,s.from>=a||s.openStart,s.to<=o||s.openEnd))}return t}let MT=0;class Bn{constructor(e,t,r){this.set=e,this.base=t,this.modified=r,this.id=MT++}static define(e){if(e?.base)throw new Error("Can not derive from a modified tag");let t=new Bn([],null,[]);if(t.set.push(t),e)for(let r of e.set)t.set.push(r);return t}static defineModifier(){let e=new Ac;return t=>t.modified.indexOf(e)>-1?t:Ac.get(t.base||t,t.modified.concat(e).sort((r,i)=>r.id-i.id))}}let IT=0;class Ac{constructor(){this.instances=[],this.id=IT++}static get(e,t){if(!t.length)return e;let r=t[0].instances.find(o=>o.base==e&&ET(t,o.modified));if(r)return r;let i=[],s=new Bn(i,e,t);for(let o of t)o.instances.push(s);let a=DT(t);for(let o of e.set)if(!o.modified.length)for(let l of a)i.push(Ac.get(o,l));return s}}function ET(n,e){return n.length==e.length&&n.every((t,r)=>t==e[r])}function DT(n){let e=[[]];for(let t=0;t<n.length;t++)for(let r=0,i=e.length;r<i;r++)e.push(e[r].concat(n[t]));return e.sort((t,r)=>r.length-t.length)}function RT(n){let e=Object.create(null);for(let t in n){let r=n[t];Array.isArray(r)||(r=[r]);for(let i of t.split(" "))if(i){let s=[],a=2,o=i;for(let f=0;;){if(o=="..."&&f>0&&f+3==i.length){a=1;break}let h=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(o);if(!h)throw new RangeError("Invalid path: "+i);if(s.push(h[0]=="*"?"":h[0][0]=='"'?JSON.parse(h[0]):h[0]),f+=h[0].length,f==i.length)break;let p=i[f++];if(f==i.length&&p=="!"){a=0;break}if(p!="/")throw new RangeError("Invalid path: "+i);o=i.slice(f)}let l=s.length-1,c=s[l];if(!c)throw new RangeError("Invalid path: "+i);let u=new Mc(r,a,l>0?s.slice(0,l):null);e[c]=u.sort(e[c])}}return vy.add(e)}const vy=new xe;class Mc{constructor(e,t,r,i){this.tags=e,this.mode=t,this.context=r,this.next=i}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}Mc.empty=new Mc([],2,null);function by(n,e){let t=Object.create(null);for(let s of n)if(!Array.isArray(s.tag))t[s.tag.id]=s.class;else for(let a of s.tag)t[a.id]=s.class;let{scope:r,all:i=null}=e||{};return{style:s=>{let a=i;for(let o of s)for(let l of o.set){let c=t[l.id];if(c){a=a?a+" "+c:c;break}}return a},scope:r}}function OT(n,e){let t=null;for(let r of n){let i=r.style(e);i&&(t=t?t+" "+i:i)}return t}function TT(n,e,t,r=0,i=n.length){let s=new NT(r,Array.isArray(e)?e:[e],t);s.highlightRange(n.cursor(),r,i,"",s.highlighters),s.flush(i)}class NT{constructor(e,t,r){this.at=e,this.highlighters=t,this.span=r,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,r,i,s){let{type:a,from:o,to:l}=e;if(o>=r||l<=t)return;a.isTop&&(s=this.highlighters.filter(p=>!p.scope||p.scope(a)));let c=i,u=PT(e)||Mc.empty,f=OT(s,u.tags);if(f&&(c&&(c+=" "),c+=f,u.mode==1&&(i+=(i?" ":"")+f)),this.startSpan(Math.max(t,o),c),u.opaque)return;let h=e.tree&&e.tree.prop(xe.mounted);if(h&&h.overlay){let p=e.node.enter(h.overlay[0].from+o,1),g=this.highlighters.filter(v=>!v.scope||v.scope(h.tree.type)),m=e.firstChild();for(let v=0,b=o;;v++){let y=v<h.overlay.length?h.overlay[v]:null,w=y?y.from+o:l,S=Math.max(t,b),k=Math.min(r,w);if(S<k&&m)for(;e.from<k&&(this.highlightRange(e,S,k,i,s),this.startSpan(Math.min(k,e.to),c),!(e.to>=w||!e.nextSibling())););if(!y||w>r)break;b=y.to+o,b>t&&(this.highlightRange(p.cursor(),Math.max(t,y.from+o),Math.min(r,b),"",g),this.startSpan(Math.min(r,b),c))}m&&e.parent()}else if(e.firstChild()){h&&(i="");do if(!(e.to<=t)){if(e.from>=r)break;this.highlightRange(e,t,r,i,s),this.startSpan(Math.min(r,e.to),c)}while(e.nextSibling());e.parent()}}}function PT(n){let e=n.type.prop(vy);for(;e&&e.context&&!n.matchContext(e.context);)e=e.next;return e||null}const W=Bn.define,Ua=W(),hr=W(),Um=W(hr),zm=W(hr),pr=W(),za=W(pr),Xu=W(pr),Ln=W(),jr=W(Ln),Nn=W(),Pn=W(),mf=W(),fs=W(mf),Wa=W(),j={comment:Ua,lineComment:W(Ua),blockComment:W(Ua),docComment:W(Ua),name:hr,variableName:W(hr),typeName:Um,tagName:W(Um),propertyName:zm,attributeName:W(zm),className:W(hr),labelName:W(hr),namespace:W(hr),macroName:W(hr),literal:pr,string:za,docString:W(za),character:W(za),attributeValue:W(za),number:Xu,integer:W(Xu),float:W(Xu),bool:W(pr),regexp:W(pr),escape:W(pr),color:W(pr),url:W(pr),keyword:Nn,self:W(Nn),null:W(Nn),atom:W(Nn),unit:W(Nn),modifier:W(Nn),operatorKeyword:W(Nn),controlKeyword:W(Nn),definitionKeyword:W(Nn),moduleKeyword:W(Nn),operator:Pn,derefOperator:W(Pn),arithmeticOperator:W(Pn),logicOperator:W(Pn),bitwiseOperator:W(Pn),compareOperator:W(Pn),updateOperator:W(Pn),definitionOperator:W(Pn),typeOperator:W(Pn),controlOperator:W(Pn),punctuation:mf,separator:W(mf),bracket:fs,angleBracket:W(fs),squareBracket:W(fs),paren:W(fs),brace:W(fs),content:Ln,heading:jr,heading1:W(jr),heading2:W(jr),heading3:W(jr),heading4:W(jr),heading5:W(jr),heading6:W(jr),contentSeparator:W(Ln),list:W(Ln),quote:W(Ln),emphasis:W(Ln),strong:W(Ln),link:W(Ln),monospace:W(Ln),strikethrough:W(Ln),inserted:W(),deleted:W(),changed:W(),invalid:W(),meta:Wa,documentMeta:W(Wa),annotation:W(Wa),processingInstruction:W(Wa),definition:Bn.defineModifier(),constant:Bn.defineModifier(),function:Bn.defineModifier(),standard:Bn.defineModifier(),local:Bn.defineModifier(),special:Bn.defineModifier()};by([{tag:j.link,class:"tok-link"},{tag:j.heading,class:"tok-heading"},{tag:j.emphasis,class:"tok-emphasis"},{tag:j.strong,class:"tok-strong"},{tag:j.keyword,class:"tok-keyword"},{tag:j.atom,class:"tok-atom"},{tag:j.bool,class:"tok-bool"},{tag:j.url,class:"tok-url"},{tag:j.labelName,class:"tok-labelName"},{tag:j.inserted,class:"tok-inserted"},{tag:j.deleted,class:"tok-deleted"},{tag:j.literal,class:"tok-literal"},{tag:j.string,class:"tok-string"},{tag:j.number,class:"tok-number"},{tag:[j.regexp,j.escape,j.special(j.string)],class:"tok-string2"},{tag:j.variableName,class:"tok-variableName"},{tag:j.local(j.variableName),class:"tok-variableName tok-local"},{tag:j.definition(j.variableName),class:"tok-variableName tok-definition"},{tag:j.special(j.variableName),class:"tok-variableName2"},{tag:j.definition(j.propertyName),class:"tok-propertyName tok-definition"},{tag:j.typeName,class:"tok-typeName"},{tag:j.namespace,class:"tok-namespace"},{tag:j.className,class:"tok-className"},{tag:j.macroName,class:"tok-macroName"},{tag:j.propertyName,class:"tok-propertyName"},{tag:j.operator,class:"tok-operator"},{tag:j.comment,class:"tok-comment"},{tag:j.meta,class:"tok-meta"},{tag:j.invalid,class:"tok-invalid"},{tag:j.punctuation,class:"tok-punctuation"}]);var Qu;const Mi=new xe;function LT(n){return J.define({combine:n?e=>e.concat(n):void 0})}const _T=new xe;class wn{constructor(e,t,r=[],i=""){this.data=e,this.name=i,ye.prototype.hasOwnProperty("tree")||Object.defineProperty(ye.prototype,"tree",{get(){return At(this)}}),this.parser=t,this.extension=[Rr.of(this),ye.languageData.of((s,a,o)=>{let l=Wm(s,a,o),c=l.type.prop(Mi);if(!c)return[];let u=s.facet(c),f=l.type.prop(_T);if(f){let h=l.resolve(a-l.from,o);for(let p of f)if(p.test(h,s)){let g=s.facet(p.facet);return p.type=="replace"?g:g.concat(u)}}return u})].concat(r)}isActiveAt(e,t,r=-1){return Wm(e,t,r).type.prop(Mi)==this.data}findRegions(e){let t=e.facet(Rr);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let r=[],i=(s,a)=>{if(s.prop(Mi)==this.data){r.push({from:a,to:a+s.length});return}let o=s.prop(xe.mounted);if(o){if(o.tree.prop(Mi)==this.data){if(o.overlay)for(let l of o.overlay)r.push({from:l.from+a,to:l.to+a});else r.push({from:a,to:a+s.length});return}else if(o.overlay){let l=r.length;if(i(o.tree,o.overlay[0].from+a),r.length>l)return}}for(let l=0;l<s.children.length;l++){let c=s.children[l];c instanceof dt&&i(c,s.positions[l]+a)}};return i(At(e),0),r}get allowsNesting(){return!0}}wn.setState=pe.define();function Wm(n,e,t){let r=n.facet(Rr),i=At(n).topNode;if(!r||r.allowsNesting)for(let s=i;s;s=s.enter(e,t,We.ExcludeBuffers))s.type.isTop&&(i=s);return i}class gf extends wn{constructor(e,t,r){super(e,t,[],r),this.parser=t}static define(e){let t=LT(e.languageData);return new gf(t,e.parser.configure({props:[Mi.add(r=>r.isTop?t:void 0)]}),e.name)}configure(e,t){return new gf(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function At(n){let e=n.field(wn.state,!1);return e?e.tree:dt.empty}class jT{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let r=this.cursorPos-this.string.length;return e<r||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-r,t-r)}}let hs=null;class Ic{constructor(e,t,r=[],i,s,a,o,l){this.parser=e,this.state=t,this.fragments=r,this.tree=i,this.treeLen=s,this.viewport=a,this.skipped=o,this.scheduleOn=l,this.parse=null,this.tempSkipped=[]}static create(e,t,r){return new Ic(e,t,[],dt.empty,0,r,[],null)}startParse(){return this.parser.startParse(new jT(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=dt.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var r;if(typeof e=="number"){let i=Date.now()+e;e=()=>Date.now()>i}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let i=this.parse.advance();if(i)if(this.fragments=this.withoutTempSkipped(tr.addTree(i,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(r=this.parse.stoppedAt)!==null&&r!==void 0?r:this.state.doc.length,this.tree=i,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(tr.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=hs;hs=this;try{return e()}finally{hs=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=qm(e,t.from,t.to);return e}changes(e,t){let{fragments:r,tree:i,treeLen:s,viewport:a,skipped:o}=this;if(this.takeTree(),!e.empty){let l=[];if(e.iterChangedRanges((c,u,f,h)=>l.push({fromA:c,toA:u,fromB:f,toB:h})),r=tr.applyChanges(r,l),i=dt.empty,s=0,a={from:e.mapPos(a.from,-1),to:e.mapPos(a.to,1)},this.skipped.length){o=[];for(let c of this.skipped){let u=e.mapPos(c.from,1),f=e.mapPos(c.to,-1);u<f&&o.push({from:u,to:f})}}}return new Ic(this.parser,t,r,i,s,a,o,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let r=0;r<this.skipped.length;r++){let{from:i,to:s}=this.skipped[r];i<e.to&&s>e.from&&(this.fragments=qm(this.fragments,i,s),this.skipped.splice(r--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends bT{createParse(t,r,i){let s=i[0].from,a=i[i.length-1].to;return{parsedPos:s,advance(){let l=hs;if(l){for(let c of i)l.tempSkipped.push(c);e&&(l.scheduleOn=l.scheduleOn?Promise.all([l.scheduleOn,e]):e)}return this.parsedPos=a,new dt(Jt.none,[],[],a-s)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return hs}}function qm(n,e,t){return tr.applyChanges(n,[{fromA:e,toA:t,fromB:e,toB:t}])}class Vi{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),r=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,r)||t.takeTree(),new Vi(t)}static init(e){let t=Math.min(3e3,e.doc.length),r=Ic.create(e.facet(Rr).parser,e,{from:0,to:t});return r.work(20,t)||r.takeTree(),new Vi(r)}}wn.state=vt.define({create:Vi.init,update(n,e){for(let t of e.effects)if(t.is(wn.setState))return t.value;return e.startState.facet(Rr)!=e.state.facet(Rr)?Vi.init(e.state):n.apply(e)}});let xy=n=>{let e=setTimeout(()=>n(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(xy=n=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(n,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const ed=typeof navigator<"u"&&(!((Qu=navigator.scheduling)===null||Qu===void 0)&&Qu.isInputPending)?()=>navigator.scheduling.isInputPending():null,BT=it.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(wn.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),e.docChanged&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(wn.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=xy(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:r,viewport:{to:i}}=this.view,s=r.field(wn.state);if(s.tree==s.context.tree&&s.context.isDone(i+1e5))return;let a=Date.now()+Math.min(this.chunkBudget,100,e&&!ed?Math.max(25,e.timeRemaining()-5):1e9),o=s.context.treeLen<i&&r.doc.length>i+1e3,l=s.context.work(()=>ed&&ed()||Date.now()>a,i+(o?0:1e5));this.chunkBudget-=Date.now()-t,(l||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:wn.setState.of(new Vi(s.context))})),this.chunkBudget>0&&!(l&&!o)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>mn(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Rr=J.define({combine(n){return n.length?n[0]:null},enables:n=>[wn.state,BT,G.contentAttributes.compute([n],e=>{let t=e.facet(n);return t&&t.name?{"data-language":t.name}:{}})]});class x6{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}const $T=J.define(),fa=J.define({combine:n=>{if(!n.length)return" ";let e=n[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(n[0]));return e}});function Ec(n){let e=n.facet(fa);return e.charCodeAt(0)==9?n.tabSize*e.length:e.length}function Ks(n,e){let t="",r=n.tabSize,i=n.facet(fa)[0];if(i==" "){for(;e>=r;)t+=" ",e-=r;i=" "}for(let s=0;s<e;s++)t+=i;return t}function hh(n,e){n instanceof ye&&(n=new au(n));for(let r of n.state.facet($T)){let i=r(n,e);if(i!==void 0)return i}let t=At(n.state);return t?HT(n,t,e):null}class au{constructor(e,t={}){this.state=e,this.options=t,this.unit=Ec(e)}lineAt(e,t=1){let r=this.state.doc.lineAt(e),{simulateBreak:i,simulateDoubleBreak:s}=this.options;return i!=null&&i>=r.from&&i<=r.to?s&&i==e?{text:"",from:e}:(t<0?i<e:i<=e)?{text:r.text.slice(i-r.from),from:i}:{text:r.text.slice(0,i-r.from),from:r.from}:r}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:r,from:i}=this.lineAt(e,t);return r.slice(e-i,Math.min(r.length,e+100-i))}column(e,t=1){let{text:r,from:i}=this.lineAt(e,t),s=this.countColumn(r,e-i),a=this.options.overrideIndentation?this.options.overrideIndentation(i):-1;return a>-1&&(s+=a-this.countColumn(r,r.search(/\S|$/))),s}countColumn(e,t=e.length){return oa(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:r,from:i}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let a=s(i);if(a>-1)return a}return this.countColumn(r,r.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const FT=new xe;function HT(n,e,t){return yy(e.resolveInner(t).enterUnfinishedNodesBefore(t),t,n)}function VT(n){return n.pos==n.options.simulateBreak&&n.options.simulateDoubleBreak}function UT(n){let e=n.type.prop(FT);if(e)return e;let t=n.firstChild,r;if(t&&(r=t.type.prop(xe.closedBy))){let i=n.lastChild,s=i&&r.indexOf(i.name)>-1;return a=>wy(a,!0,1,void 0,s&&!VT(a)?i.from:void 0)}return n.parent==null?zT:null}function yy(n,e,t){for(;n;n=n.parent){let r=UT(n);if(r)return r(ph.create(t,e,n))}return null}function zT(){return 0}class ph extends au{constructor(e,t,r){super(e.state,e.options),this.base=e,this.pos=t,this.node=r}static create(e,t,r){return new ph(e,t,r)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let r=e.resolve(t.from);for(;r.parent&&r.parent.from==r.from;)r=r.parent;if(WT(r,e))break;t=this.state.doc.lineAt(r.from)}return this.lineIndent(t.from)}continue(){let e=this.node.parent;return e?yy(e,this.pos,this.base):0}}function WT(n,e){for(let t=e;t;t=t.parent)if(n==t)return!0;return!1}function qT(n){let e=n.node,t=e.childAfter(e.from),r=e.lastChild;if(!t)return null;let i=n.options.simulateBreak,s=n.state.doc.lineAt(t.from),a=i==null||i<=s.from?s.to:Math.min(s.to,i);for(let o=t.to;;){let l=e.childAfter(o);if(!l||l==r)return null;if(!l.type.isSkipped)return l.from<a?t:null;o=l.to}}function y6({closing:n,align:e=!0,units:t=1}){return r=>wy(r,e,t,n)}function wy(n,e,t,r,i){let s=n.textAfter,a=s.match(/^\s*/)[0].length,o=r&&s.slice(a,a+r.length)==r||i==n.pos+a,l=e?qT(n):null;return l?o?n.column(l.from):n.column(l.to):n.baseIndent+(o?0:n.unit*t)}const w6=n=>n.baseIndent;function S6({except:n,units:e=1}={}){return t=>{let r=n&&n.test(t.textAfter);return t.baseIndent+(r?0:e*t.unit)}}const GT=200;function KT(){return ye.transactionFilter.of(n=>{if(!n.docChanged||!n.isUserEvent("input.type")&&!n.isUserEvent("input.complete"))return n;let e=n.startState.languageDataAt("indentOnInput",n.startState.selection.main.head);if(!e.length)return n;let t=n.newDoc,{head:r}=n.newSelection.main,i=t.lineAt(r);if(r>i.from+GT)return n;let s=t.sliceString(i.from,r);if(!e.some(c=>c.test(s)))return n;let{state:a}=n,o=-1,l=[];for(let{head:c}of a.selection.ranges){let u=a.doc.lineAt(c);if(u.from==o)continue;o=u.from;let f=hh(a,u.from);if(f==null)continue;let h=/^\s*/.exec(u.text)[0],p=Ks(a,f);h!=p&&l.push({from:u.from,to:u.from+h.length,insert:p})}return l.length?[n,{changes:l,sequential:!0}]:n})}const ZT=J.define(),YT=new xe;function k6(n){let e=n.firstChild,t=n.lastChild;return e&&e.to<t.from?{from:e.to,to:t.type.isError?n.to:t.from}:null}function JT(n,e,t){let r=At(n);if(r.length<t)return null;let i=r.resolveInner(t,1),s=null;for(let a=i;a;a=a.parent){if(a.to<=t||a.from>t)continue;if(s&&a.from<e)break;let o=a.type.prop(YT);if(o&&(a.to<r.length-50||r.length==n.doc.length||!XT(a))){let l=o(a,n);l&&l.from<=t&&l.from>=e&&l.to>t&&(s=l)}}return s}function XT(n){let e=n.lastChild;return e&&e.to==n.to&&e.type.isError}function Dc(n,e,t){for(let r of n.facet(ZT)){let i=r(n,e,t);if(i)return i}return JT(n,e,t)}function Sy(n,e){let t=e.mapPos(n.from,1),r=e.mapPos(n.to,-1);return t>=r?void 0:{from:t,to:r}}const ou=pe.define({map:Sy}),ha=pe.define({map:Sy});function ky(n){let e=[];for(let{head:t}of n.state.selection.ranges)e.some(r=>r.from<=t&&r.to>=t)||e.push(n.lineBlockAt(t));return e}const Jr=vt.define({create(){return le.none},update(n,e){n=n.map(e.changes);for(let t of e.effects)t.is(ou)&&!QT(n,t.value.from,t.value.to)?n=n.update({add:[Gm.range(t.value.from,t.value.to)]}):t.is(ha)&&(n=n.update({filter:(r,i)=>t.value.from!=r||t.value.to!=i,filterFrom:t.value.from,filterTo:t.value.to}));if(e.selection){let t=!1,{head:r}=e.selection.main;n.between(r,r,(i,s)=>{i<r&&s>r&&(t=!0)}),t&&(n=n.update({filterFrom:r,filterTo:r,filter:(i,s)=>s<=r||i>=r}))}return n},provide:n=>G.decorations.from(n),toJSON(n,e){let t=[];return n.between(0,e.doc.length,(r,i)=>{t.push(r,i)}),t},fromJSON(n){if(!Array.isArray(n)||n.length%2)throw new RangeError("Invalid JSON for fold state");let e=[];for(let t=0;t<n.length;){let r=n[t++],i=n[t++];if(typeof r!="number"||typeof i!="number")throw new RangeError("Invalid JSON for fold state");e.push(Gm.range(r,i))}return le.set(e,!0)}});function Rc(n,e,t){var r;let i=null;return(r=n.field(Jr,!1))===null||r===void 0||r.between(e,t,(s,a)=>{(!i||i.from>s)&&(i={from:s,to:a})}),i}function QT(n,e,t){let r=!1;return n.between(e,e,(i,s)=>{i==e&&s==t&&(r=!0)}),r}function Cy(n,e){return n.field(Jr,!1)?e:e.concat(pe.appendConfig.of(My()))}const eN=n=>{for(let e of ky(n)){let t=Dc(n.state,e.from,e.to);if(t)return n.dispatch({effects:Cy(n.state,[ou.of(t),Ay(n,t)])}),!0}return!1},tN=n=>{if(!n.state.field(Jr,!1))return!1;let e=[];for(let t of ky(n)){let r=Rc(n.state,t.from,t.to);r&&e.push(ha.of(r),Ay(n,r,!1))}return e.length&&n.dispatch({effects:e}),e.length>0};function Ay(n,e,t=!0){let r=n.state.doc.lineAt(e.from).number,i=n.state.doc.lineAt(e.to).number;return G.announce.of(`${n.state.phrase(t?"Folded lines":"Unfolded lines")} ${r} ${n.state.phrase("to")} ${i}.`)}const nN=n=>{let{state:e}=n,t=[];for(let r=0;r<e.doc.length;){let i=n.lineBlockAt(r),s=Dc(e,i.from,i.to);s&&t.push(ou.of(s)),r=(s?n.lineBlockAt(s.to):i).to+1}return t.length&&n.dispatch({effects:Cy(n.state,t)}),!!t.length},rN=n=>{let e=n.state.field(Jr,!1);if(!e||!e.size)return!1;let t=[];return e.between(0,n.state.doc.length,(r,i)=>{t.push(ha.of({from:r,to:i}))}),n.dispatch({effects:t}),!0},iN=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:eN},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:tN},{key:"Ctrl-Alt-[",run:nN},{key:"Ctrl-Alt-]",run:rN}],sN={placeholderDOM:null,placeholderText:"…"},aN=J.define({combine(n){return Yn(n,sN)}});function My(n){return[Jr,cN]}const Gm=le.replace({widget:new class extends sr{toDOM(n){let{state:e}=n,t=e.facet(aN),r=s=>{let a=n.lineBlockAt(n.posAtDOM(s.target)),o=Rc(n.state,a.from,a.to);o&&n.dispatch({effects:ha.of(o)}),s.preventDefault()};if(t.placeholderDOM)return t.placeholderDOM(n,r);let i=document.createElement("span");return i.textContent=t.placeholderText,i.setAttribute("aria-label",e.phrase("folded code")),i.title=e.phrase("unfold"),i.className="cm-foldPlaceholder",i.onclick=r,i}}}),oN={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class td extends rr{constructor(e,t){super(),this.config=e,this.open=t}eq(e){return this.config==e.config&&this.open==e.open}toDOM(e){if(this.config.markerDOM)return this.config.markerDOM(this.open);let t=document.createElement("span");return t.textContent=this.open?this.config.openText:this.config.closedText,t.title=e.state.phrase(this.open?"Fold line":"Unfold line"),t}}function lN(n={}){let e=Object.assign(Object.assign({},oN),n),t=new td(e,!0),r=new td(e,!1),i=it.fromClass(class{constructor(a){this.from=a.viewport.from,this.markers=this.buildMarkers(a)}update(a){(a.docChanged||a.viewportChanged||a.startState.facet(Rr)!=a.state.facet(Rr)||a.startState.field(Jr,!1)!=a.state.field(Jr,!1)||At(a.startState)!=At(a.state)||e.foldingChanged(a))&&(this.markers=this.buildMarkers(a.view))}buildMarkers(a){let o=new Cr;for(let l of a.viewportLineBlocks){let c=Rc(a.state,l.from,l.to)?r:Dc(a.state,l.from,l.to)?t:null;c&&o.add(l.from,l.from,c)}return o.finish()}}),{domEventHandlers:s}=e;return[i,tT({class:"cm-foldGutter",markers(a){var o;return((o=a.plugin(i))===null||o===void 0?void 0:o.markers)||Pe.empty},initialSpacer(){return new td(e,!1)},domEventHandlers:Object.assign(Object.assign({},s),{click:(a,o,l)=>{if(s.click&&s.click(a,o,l))return!0;let c=Rc(a.state,o.from,o.to);if(c)return a.dispatch({effects:ha.of(c)}),!0;let u=Dc(a.state,o.from,o.to);return u?(a.dispatch({effects:ou.of(u)}),!0):!1}})}),My()]}const cN=G.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class pa{constructor(e,t){this.specs=e;let r;function i(o){let l=Ar.newName();return(r||(r=Object.create(null)))["."+l]=o,l}const s=typeof t.all=="string"?t.all:t.all?i(t.all):void 0,a=t.scope;this.scope=a instanceof wn?o=>o.prop(Mi)==a.data:a?o=>o==a:void 0,this.style=by(e.map(o=>({tag:o.tag,class:o.class||i(Object.assign({},o,{tag:null}))})),{all:s}).style,this.module=r?new Ar(r):null,this.themeType=t.themeType}static define(e,t){return new pa(e,t||{})}}const vf=J.define(),Iy=J.define({combine(n){return n.length?[n[0]]:null}});function nd(n){let e=n.facet(vf);return e.length?e:n.facet(Iy)}function Ey(n,e){let t=[dN],r;return n instanceof pa&&(n.module&&t.push(G.styleModule.of(n.module)),r=n.themeType),e?.fallback?t.push(Iy.of(n)):r?t.push(vf.computeN([G.darkTheme],i=>i.facet(G.darkTheme)==(r=="dark")?[n]:[])):t.push(vf.of(n)),t}class uN{constructor(e){this.markCache=Object.create(null),this.tree=At(e.state),this.decorations=this.buildDeco(e,nd(e.state))}update(e){let t=At(e.state),r=nd(e.state),i=r!=nd(e.startState);t.length<e.view.viewport.to&&!i&&t.type==this.tree.type?this.decorations=this.decorations.map(e.changes):(t!=this.tree||e.viewportChanged||i)&&(this.tree=t,this.decorations=this.buildDeco(e.view,r))}buildDeco(e,t){if(!t||!this.tree.length)return le.none;let r=new Cr;for(let{from:i,to:s}of e.visibleRanges)TT(this.tree,t,(a,o,l)=>{r.add(a,o,this.markCache[l]||(this.markCache[l]=le.mark({class:l})))},i,s);return r.finish()}}const dN=ti.high(it.fromClass(uN,{decorations:n=>n.decorations})),fN=pa.define([{tag:j.meta,color:"#404740"},{tag:j.link,textDecoration:"underline"},{tag:j.heading,textDecoration:"underline",fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strong,fontWeight:"bold"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.keyword,color:"#708"},{tag:[j.atom,j.bool,j.url,j.contentSeparator,j.labelName],color:"#219"},{tag:[j.literal,j.inserted],color:"#164"},{tag:[j.string,j.deleted],color:"#a11"},{tag:[j.regexp,j.escape,j.special(j.string)],color:"#e40"},{tag:j.definition(j.variableName),color:"#00f"},{tag:j.local(j.variableName),color:"#30a"},{tag:[j.typeName,j.namespace],color:"#085"},{tag:j.className,color:"#167"},{tag:[j.special(j.variableName),j.macroName],color:"#256"},{tag:j.definition(j.propertyName),color:"#00c"},{tag:j.comment,color:"#940"},{tag:j.invalid,color:"#f00"}]),hN=G.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Dy=1e4,Ry="()[]{}",Oy=J.define({combine(n){return Yn(n,{afterCursor:!0,brackets:Ry,maxScanDistance:Dy,renderMatch:gN})}}),pN=le.mark({class:"cm-matchingBracket"}),mN=le.mark({class:"cm-nonmatchingBracket"});function gN(n){let e=[],t=n.matched?pN:mN;return e.push(t.range(n.start.from,n.start.to)),n.end&&e.push(t.range(n.end.from,n.end.to)),e}const vN=vt.define({create(){return le.none},update(n,e){if(!e.docChanged&&!e.selection)return n;let t=[],r=e.state.facet(Oy);for(let i of e.state.selection.ranges){if(!i.empty)continue;let s=Un(e.state,i.head,-1,r)||i.head>0&&Un(e.state,i.head-1,1,r)||r.afterCursor&&(Un(e.state,i.head,1,r)||i.head<e.state.doc.length&&Un(e.state,i.head+1,-1,r));s&&(t=t.concat(r.renderMatch(s,e.state)))}return le.set(t,!0)},provide:n=>G.decorations.from(n)}),bN=[vN,hN];function xN(n={}){return[Oy.of(n),bN]}const yN=new xe;function bf(n,e,t){let r=n.prop(e<0?xe.openedBy:xe.closedBy);if(r)return r;if(n.name.length==1){let i=t.indexOf(n.name);if(i>-1&&i%2==(e<0?1:0))return[t[i+e]]}return null}function xf(n){let e=n.type.prop(yN);return e?e(n.node):n}function Un(n,e,t,r={}){let i=r.maxScanDistance||Dy,s=r.brackets||Ry,a=At(n),o=a.resolveInner(e,t);for(let l=o;l;l=l.parent){let c=bf(l.type,t,s);if(c&&l.from<l.to){let u=xf(l);if(u&&(t>0?e>=u.from&&e<u.to:e>u.from&&e<=u.to))return wN(n,e,t,l,u,c,s)}}return SN(n,e,t,a,o.type,i,s)}function wN(n,e,t,r,i,s,a){let o=r.parent,l={from:i.from,to:i.to},c=0,u=o?.cursor();if(u&&(t<0?u.childBefore(r.from):u.childAfter(r.to)))do if(t<0?u.to<=r.from:u.from>=r.to){if(c==0&&s.indexOf(u.type.name)>-1&&u.from<u.to){let f=xf(u);return{start:l,end:f?{from:f.from,to:f.to}:void 0,matched:!0}}else if(bf(u.type,t,a))c++;else if(bf(u.type,-t,a)){if(c==0){let f=xf(u);return{start:l,end:f&&f.from<f.to?{from:f.from,to:f.to}:void 0,matched:!1}}c--}}while(t<0?u.prevSibling():u.nextSibling());return{start:l,matched:!1}}function SN(n,e,t,r,i,s,a){let o=t<0?n.sliceDoc(e-1,e):n.sliceDoc(e,e+1),l=a.indexOf(o);if(l<0||l%2==0!=t>0)return null;let c={from:t<0?e-1:e,to:t>0?e+1:e},u=n.doc.iterRange(e,t>0?n.doc.length:0),f=0;for(let h=0;!u.next().done&&h<=s;){let p=u.value;t<0&&(h+=p.length);let g=e+h*t;for(let m=t>0?0:p.length-1,v=t>0?p.length:-1;m!=v;m+=t){let b=a.indexOf(p[m]);if(!(b<0||r.resolveInner(g+m,1).type!=i))if(b%2==0==t>0)f++;else{if(f==1)return{start:c,end:{from:g+m,to:g+m+1},matched:b>>1==l>>1};f--}}t>0&&(h+=p.length)}return u.done?{start:c,matched:!1}:null}const kN=Object.create(null),Km=[Jt.none],Zm=[],CN=Object.create(null);for(let[n,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])CN[n]=AN(kN,e);function rd(n,e){Zm.indexOf(n)>-1||(Zm.push(n),console.warn(e))}function AN(n,e){let t=null;for(let s of e.split(".")){let a=n[s]||j[s];a?typeof a=="function"?t?t=a(t):rd(s,`Modifier ${s} used at start of tag`):t?rd(s,`Tag ${s} used as modifier`):t=a:rd(s,`Unknown highlighting tag ${s}`)}if(!t)return 0;let r=e.replace(/ /g,"_"),i=Jt.define({id:Km.length,name:r,props:[RT({[r]:t})]});return Km.push(i),i.id}const MN=n=>{let{state:e}=n,t=e.doc.lineAt(e.selection.main.from),r=gh(n.state,t.from);return r.line?IN(n):r.block?DN(n):!1};function mh(n,e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let i=n(e,t);return i?(r(t.update(i)),!0):!1}}const IN=mh(TN,0),EN=mh(Ty,0),DN=mh((n,e)=>Ty(n,e,ON(e)),0);function gh(n,e){let t=n.languageDataAt("commentTokens",e);return t.length?t[0]:{}}const ps=50;function RN(n,{open:e,close:t},r,i){let s=n.sliceDoc(r-ps,r),a=n.sliceDoc(i,i+ps),o=/\s*$/.exec(s)[0].length,l=/^\s*/.exec(a)[0].length,c=s.length-o;if(s.slice(c-e.length,c)==e&&a.slice(l,l+t.length)==t)return{open:{pos:r-o,margin:o&&1},close:{pos:i+l,margin:l&&1}};let u,f;i-r<=2*ps?u=f=n.sliceDoc(r,i):(u=n.sliceDoc(r,r+ps),f=n.sliceDoc(i-ps,i));let h=/^\s*/.exec(u)[0].length,p=/\s*$/.exec(f)[0].length,g=f.length-p-t.length;return u.slice(h,h+e.length)==e&&f.slice(g,g+t.length)==t?{open:{pos:r+h+e.length,margin:/\s/.test(u.charAt(h+e.length))?1:0},close:{pos:i-p-t.length,margin:/\s/.test(f.charAt(g-1))?1:0}}:null}function ON(n){let e=[];for(let t of n.selection.ranges){let r=n.doc.lineAt(t.from),i=t.to<=r.to?r:n.doc.lineAt(t.to),s=e.length-1;s>=0&&e[s].to>r.from?e[s].to=i.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:i.to})}return e}function Ty(n,e,t=e.selection.ranges){let r=t.map(s=>gh(e,s.from).block);if(!r.every(s=>s))return null;let i=t.map((s,a)=>RN(e,r[a],s.from,s.to));if(n!=2&&!i.every(s=>s))return{changes:e.changes(t.map((s,a)=>i[a]?[]:[{from:s.from,insert:r[a].open+" "},{from:s.to,insert:" "+r[a].close}]))};if(n!=1&&i.some(s=>s)){let s=[];for(let a=0,o;a<i.length;a++)if(o=i[a]){let l=r[a],{open:c,close:u}=o;s.push({from:c.pos-l.open.length,to:c.pos+c.margin},{from:u.pos-u.margin,to:u.pos+l.close.length})}return{changes:s}}return null}function TN(n,e,t=e.selection.ranges){let r=[],i=-1;for(let{from:s,to:a}of t){let o=r.length,l=1e9,c=gh(e,s).line;if(c){for(let u=s;u<=a;){let f=e.doc.lineAt(u);if(f.from>i&&(s==a||a>f.from)){i=f.from;let h=/^\s*/.exec(f.text)[0].length,p=h==f.length,g=f.text.slice(h,h+c.length)==c?h:-1;h<f.text.length&&h<l&&(l=h),r.push({line:f,comment:g,token:c,indent:h,empty:p,single:!1})}u=f.to+1}if(l<1e9)for(let u=o;u<r.length;u++)r[u].indent<r[u].line.text.length&&(r[u].indent=l);r.length==o+1&&(r[o].single=!0)}}if(n!=2&&r.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:o,token:l,indent:c,empty:u,single:f}of r)(f||!u)&&s.push({from:o.from+c,insert:l+" "});let a=e.changes(s);return{changes:a,selection:e.selection.map(a,1)}}else if(n!=1&&r.some(s=>s.comment>=0)){let s=[];for(let{line:a,comment:o,token:l}of r)if(o>=0){let c=a.from+o,u=c+l.length;a.text[u-a.from]==" "&&u++,s.push({from:c,to:u})}return{changes:s}}return null}const yf=Zn.define(),NN=Zn.define(),PN=J.define(),Ny=J.define({combine(n){return Yn(n,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(r,i)=>e(r,i)||t(r,i)})}});function LN(n){let e=0;return n.iterChangedRanges((t,r)=>e=r),e}const Py=vt.define({create(){return zn.empty},update(n,e){let t=e.state.facet(Ny),r=e.annotation(yf);if(r){let l=e.docChanged?B.single(LN(e.changes)):void 0,c=Kt.fromTransaction(e,l),u=r.side,f=u==0?n.undone:n.done;return c?f=Oc(f,f.length,t.minDepth,c):f=jy(f,e.startState.selection),new zn(u==0?r.rest:f,u==0?f:r.rest)}let i=e.annotation(NN);if((i=="full"||i=="before")&&(n=n.isolate()),e.annotation(ut.addToHistory)===!1)return e.changes.empty?n:n.addMapping(e.changes.desc);let s=Kt.fromTransaction(e),a=e.annotation(ut.time),o=e.annotation(ut.userEvent);return s?n=n.addChanges(s,a,o,t,e):e.selection&&(n=n.addSelection(e.startState.selection,a,o,t.newGroupDelay)),(i=="full"||i=="after")&&(n=n.isolate()),n},toJSON(n){return{done:n.done.map(e=>e.toJSON()),undone:n.undone.map(e=>e.toJSON())}},fromJSON(n){return new zn(n.done.map(Kt.fromJSON),n.undone.map(Kt.fromJSON))}});function _N(n={}){return[Py,Ny.of(n),G.domEventHandlers({beforeinput(e,t){let r=e.inputType=="historyUndo"?Ly:e.inputType=="historyRedo"?wf:null;return r?(e.preventDefault(),r(t)):!1}})]}function lu(n,e){return function({state:t,dispatch:r}){if(!e&&t.readOnly)return!1;let i=t.field(Py,!1);if(!i)return!1;let s=i.pop(n,t,e);return s?(r(s),!0):!1}}const Ly=lu(0,!1),wf=lu(1,!1),jN=lu(0,!0),BN=lu(1,!0);class Kt{constructor(e,t,r,i,s){this.changes=e,this.effects=t,this.mapped=r,this.startSelection=i,this.selectionsAfter=s}setSelAfter(e){return new Kt(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(r=this.startSelection)===null||r===void 0?void 0:r.toJSON(),selectionsAfter:this.selectionsAfter.map(i=>i.toJSON())}}static fromJSON(e){return new Kt(e.changes&&ct.fromJSON(e.changes),[],e.mapped&&qn.fromJSON(e.mapped),e.startSelection&&B.fromJSON(e.startSelection),e.selectionsAfter.map(B.fromJSON))}static fromTransaction(e,t){let r=hn;for(let i of e.startState.facet(PN)){let s=i(e);s.length&&(r=r.concat(s))}return!r.length&&e.changes.empty?null:new Kt(e.changes.invert(e.startState.doc),r,void 0,t||e.startState.selection,hn)}static selection(e){return new Kt(void 0,hn,void 0,void 0,e)}}function Oc(n,e,t,r){let i=e+1>t+20?e-t-1:0,s=n.slice(i,e);return s.push(r),s}function $N(n,e){let t=[],r=!1;return n.iterChangedRanges((i,s)=>t.push(i,s)),e.iterChangedRanges((i,s,a,o)=>{for(let l=0;l<t.length;){let c=t[l++],u=t[l++];o>=c&&a<=u&&(r=!0)}}),r}function FN(n,e){return n.ranges.length==e.ranges.length&&n.ranges.filter((t,r)=>t.empty!=e.ranges[r].empty).length===0}function _y(n,e){return n.length?e.length?n.concat(e):n:e}const hn=[],HN=200;function jy(n,e){if(n.length){let t=n[n.length-1],r=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-HN));return r.length&&r[r.length-1].eq(e)?n:(r.push(e),Oc(n,n.length-1,1e9,t.setSelAfter(r)))}else return[Kt.selection([e])]}function VN(n){let e=n[n.length-1],t=n.slice();return t[n.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function id(n,e){if(!n.length)return n;let t=n.length,r=hn;for(;t;){let i=UN(n[t-1],e,r);if(i.changes&&!i.changes.empty||i.effects.length){let s=n.slice(0,t);return s[t-1]=i,s}else e=i.mapped,t--,r=i.selectionsAfter}return r.length?[Kt.selection(r)]:hn}function UN(n,e,t){let r=_y(n.selectionsAfter.length?n.selectionsAfter.map(o=>o.map(e)):hn,t);if(!n.changes)return Kt.selection(r);let i=n.changes.map(e),s=e.mapDesc(n.changes,!0),a=n.mapped?n.mapped.composeDesc(s):s;return new Kt(i,pe.mapEffects(n.effects,e),a,n.startSelection.map(s),r)}const zN=/^(input\.type|delete)($|\.)/;class zn{constructor(e,t,r=0,i=void 0){this.done=e,this.undone=t,this.prevTime=r,this.prevUserEvent=i}isolate(){return this.prevTime?new zn(this.done,this.undone):this}addChanges(e,t,r,i,s){let a=this.done,o=a[a.length-1];return o&&o.changes&&!o.changes.empty&&e.changes&&(!r||zN.test(r))&&(!o.selectionsAfter.length&&t-this.prevTime<i.newGroupDelay&&i.joinToEvent(s,$N(o.changes,e.changes))||r=="input.type.compose")?a=Oc(a,a.length-1,i.minDepth,new Kt(e.changes.compose(o.changes),_y(e.effects,o.effects),o.mapped,o.startSelection,hn)):a=Oc(a,a.length,i.minDepth,e),new zn(a,hn,t,r)}addSelection(e,t,r,i){let s=this.done.length?this.done[this.done.length-1].selectionsAfter:hn;return s.length>0&&t-this.prevTime<i&&r==this.prevUserEvent&&r&&/^select($|\.)/.test(r)&&FN(s[s.length-1],e)?this:new zn(jy(this.done,e),this.undone,t,r)}addMapping(e){return new zn(id(this.done,e),id(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,r){let i=e==0?this.done:this.undone;if(i.length==0)return null;let s=i[i.length-1];if(r&&s.selectionsAfter.length)return t.update({selection:s.selectionsAfter[s.selectionsAfter.length-1],annotations:yf.of({side:e,rest:VN(i)}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(s.changes){let a=i.length==1?hn:i.slice(0,i.length-1);return s.mapped&&(a=id(a,s.mapped)),t.update({changes:s.changes,selection:s.startSelection,effects:s.effects,annotations:yf.of({side:e,rest:a}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}zn.empty=new zn(hn,hn);const WN=[{key:"Mod-z",run:Ly,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:wf,preventDefault:!0},{linux:"Ctrl-Shift-z",run:wf,preventDefault:!0},{key:"Mod-u",run:jN,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:BN,preventDefault:!0}];function es(n,e){return B.create(n.ranges.map(e),n.mainIndex)}function Jn(n,e){return n.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function En({state:n,dispatch:e},t){let r=es(n.selection,t);return r.eq(n.selection)?!1:(e(Jn(n,r)),!0)}function cu(n,e){return B.cursor(e?n.to:n.from)}function By(n,e){return En(n,t=>t.empty?n.moveByChar(t,e):cu(t,e))}function Rt(n){return n.textDirectionAt(n.state.selection.main.head)==qe.LTR}const $y=n=>By(n,!Rt(n)),Fy=n=>By(n,Rt(n));function Hy(n,e){return En(n,t=>t.empty?n.moveByGroup(t,e):cu(t,e))}const qN=n=>Hy(n,!Rt(n)),GN=n=>Hy(n,Rt(n));function KN(n,e,t){if(e.type.prop(t))return!0;let r=e.to-e.from;return r&&(r>2||/[^\s,.;:]/.test(n.sliceDoc(e.from,e.to)))||e.firstChild}function uu(n,e,t){let r=At(n).resolveInner(e.head),i=t?xe.closedBy:xe.openedBy;for(let l=e.head;;){let c=t?r.childAfter(l):r.childBefore(l);if(!c)break;KN(n,c,i)?r=c:l=t?c.to:c.from}let s=r.type.prop(i),a,o;return s&&(a=t?Un(n,r.from,1):Un(n,r.to,-1))&&a.matched?o=t?a.end.to:a.end.from:o=t?r.to:r.from,B.cursor(o,t?-1:1)}const ZN=n=>En(n,e=>uu(n.state,e,!Rt(n))),YN=n=>En(n,e=>uu(n.state,e,Rt(n)));function Vy(n,e){return En(n,t=>{if(!t.empty)return cu(t,e);let r=n.moveVertically(t,e);return r.head!=t.head?r:n.moveToLineBoundary(t,e)})}const Uy=n=>Vy(n,!1),zy=n=>Vy(n,!0);function Wy(n){let e=n.scrollDOM.clientHeight<n.scrollDOM.scrollHeight-2,t=0,r=0,i;if(e){for(let s of n.state.facet(G.scrollMargins)){let a=s(n);a?.top&&(t=Math.max(a?.top,t)),a?.bottom&&(r=Math.max(a?.bottom,r))}i=n.scrollDOM.clientHeight-t-r}else i=(n.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:r,selfScroll:e,height:Math.max(n.defaultLineHeight,i-5)}}function qy(n,e){let t=Wy(n),{state:r}=n,i=es(r.selection,a=>a.empty?n.moveVertically(a,e,t.height):cu(a,e));if(i.eq(r.selection))return!1;let s;if(t.selfScroll){let a=n.coordsAtPos(r.selection.main.head),o=n.scrollDOM.getBoundingClientRect(),l=o.top+t.marginTop,c=o.bottom-t.marginBottom;a&&a.top>l&&a.bottom<c&&(s=G.scrollIntoView(i.main.head,{y:"start",yMargin:a.top-l}))}return n.dispatch(Jn(r,i),{effects:s}),!0}const Ym=n=>qy(n,!1),Sf=n=>qy(n,!0);function Tr(n,e,t){let r=n.lineBlockAt(e.head),i=n.moveToLineBoundary(e,t);if(i.head==e.head&&i.head!=(t?r.to:r.from)&&(i=n.moveToLineBoundary(e,t,!1)),!t&&i.head==r.from&&r.length){let s=/^\s*/.exec(n.state.sliceDoc(r.from,Math.min(r.from+100,r.to)))[0].length;s&&e.head!=r.from+s&&(i=B.cursor(r.from+s))}return i}const JN=n=>En(n,e=>Tr(n,e,!0)),XN=n=>En(n,e=>Tr(n,e,!1)),QN=n=>En(n,e=>Tr(n,e,!Rt(n))),e9=n=>En(n,e=>Tr(n,e,Rt(n))),t9=n=>En(n,e=>B.cursor(n.lineBlockAt(e.head).from,1)),n9=n=>En(n,e=>B.cursor(n.lineBlockAt(e.head).to,-1));function r9(n,e,t){let r=!1,i=es(n.selection,s=>{let a=Un(n,s.head,-1)||Un(n,s.head,1)||s.head>0&&Un(n,s.head-1,1)||s.head<n.doc.length&&Un(n,s.head+1,-1);if(!a||!a.end)return s;r=!0;let o=a.start.from==s.head?a.end.to:a.end.from;return B.cursor(o)});return r?(e(Jn(n,i)),!0):!1}const i9=({state:n,dispatch:e})=>r9(n,e);function vn(n,e){let t=es(n.state.selection,r=>{let i=e(r);return B.range(r.anchor,i.head,i.goalColumn,i.bidiLevel||void 0)});return t.eq(n.state.selection)?!1:(n.dispatch(Jn(n.state,t)),!0)}function Gy(n,e){return vn(n,t=>n.moveByChar(t,e))}const Ky=n=>Gy(n,!Rt(n)),Zy=n=>Gy(n,Rt(n));function Yy(n,e){return vn(n,t=>n.moveByGroup(t,e))}const s9=n=>Yy(n,!Rt(n)),a9=n=>Yy(n,Rt(n)),o9=n=>vn(n,e=>uu(n.state,e,!Rt(n))),l9=n=>vn(n,e=>uu(n.state,e,Rt(n)));function Jy(n,e){return vn(n,t=>n.moveVertically(t,e))}const Xy=n=>Jy(n,!1),Qy=n=>Jy(n,!0);function ew(n,e){return vn(n,t=>n.moveVertically(t,e,Wy(n).height))}const Jm=n=>ew(n,!1),Xm=n=>ew(n,!0),c9=n=>vn(n,e=>Tr(n,e,!0)),u9=n=>vn(n,e=>Tr(n,e,!1)),d9=n=>vn(n,e=>Tr(n,e,!Rt(n))),f9=n=>vn(n,e=>Tr(n,e,Rt(n))),h9=n=>vn(n,e=>B.cursor(n.lineBlockAt(e.head).from)),p9=n=>vn(n,e=>B.cursor(n.lineBlockAt(e.head).to)),Qm=({state:n,dispatch:e})=>(e(Jn(n,{anchor:0})),!0),eg=({state:n,dispatch:e})=>(e(Jn(n,{anchor:n.doc.length})),!0),tg=({state:n,dispatch:e})=>(e(Jn(n,{anchor:n.selection.main.anchor,head:0})),!0),ng=({state:n,dispatch:e})=>(e(Jn(n,{anchor:n.selection.main.anchor,head:n.doc.length})),!0),m9=({state:n,dispatch:e})=>(e(n.update({selection:{anchor:0,head:n.doc.length},userEvent:"select"})),!0),g9=({state:n,dispatch:e})=>{let t=fu(n).map(({from:r,to:i})=>B.range(r,Math.min(i+1,n.doc.length)));return e(n.update({selection:B.create(t),userEvent:"select"})),!0},v9=({state:n,dispatch:e})=>{let t=es(n.selection,r=>{var i;let s=At(n).resolveInner(r.head,1);for(;!(s.from<r.from&&s.to>=r.to||s.to>r.to&&s.from<=r.from||!(!((i=s.parent)===null||i===void 0)&&i.parent));)s=s.parent;return B.range(s.to,s.from)});return e(Jn(n,t)),!0},b9=({state:n,dispatch:e})=>{let t=n.selection,r=null;return t.ranges.length>1?r=B.create([t.main]):t.main.empty||(r=B.create([B.cursor(t.main.head)])),r?(e(Jn(n,r)),!0):!1};function du(n,e){if(n.state.readOnly)return!1;let t="delete.selection",{state:r}=n,i=r.changeByRange(s=>{let{from:a,to:o}=s;if(a==o){let l=e(a);l<a?(t="delete.backward",l=qa(n,l,!1)):l>a&&(t="delete.forward",l=qa(n,l,!0)),a=Math.min(a,l),o=Math.max(o,l)}else a=qa(n,a,!1),o=qa(n,o,!0);return a==o?{range:s}:{changes:{from:a,to:o},range:B.cursor(a)}});return i.changes.empty?!1:(n.dispatch(r.update(i,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?G.announce.of(r.phrase("Selection deleted")):void 0})),!0)}function qa(n,e,t){if(n instanceof G)for(let r of n.state.facet(G.atomicRanges).map(i=>i(n)))r.between(e,e,(i,s)=>{i<e&&s>e&&(e=t?s:i)});return e}const tw=(n,e)=>du(n,t=>{let{state:r}=n,i=r.doc.lineAt(t),s,a;if(!e&&t>i.from&&t<i.from+200&&!/[^ \t]/.test(s=i.text.slice(0,t-i.from))){if(s[s.length-1]==" ")return t-1;let o=oa(s,r.tabSize),l=o%Ec(r)||Ec(r);for(let c=0;c<l&&s[s.length-1-c]==" ";c++)t--;a=t}else a=Et(i.text,t-i.from,e,e)+i.from,a==t&&i.number!=(e?r.doc.lines:1)&&(a+=e?1:-1);return a}),kf=n=>tw(n,!1),nw=n=>tw(n,!0),rw=(n,e)=>du(n,t=>{let r=t,{state:i}=n,s=i.doc.lineAt(r),a=i.charCategorizer(r);for(let o=null;;){if(r==(e?s.to:s.from)){r==t&&s.number!=(e?i.doc.lines:1)&&(r+=e?1:-1);break}let l=Et(s.text,r-s.from,e)+s.from,c=s.text.slice(Math.min(r,l)-s.from,Math.max(r,l)-s.from),u=a(c);if(o!=null&&u!=o)break;(c!=" "||r!=t)&&(o=u),r=l}return r}),iw=n=>rw(n,!1),x9=n=>rw(n,!0),sw=n=>du(n,e=>{let t=n.lineBlockAt(e).to;return e<t?t:Math.min(n.state.doc.length,e+1)}),y9=n=>du(n,e=>{let t=n.lineBlockAt(e).from;return e>t?t:Math.max(0,e-1)}),w9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>({changes:{from:r.from,to:r.to,insert:ke.of(["",""])},range:B.cursor(r.from)}));return e(n.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},S9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=n.changeByRange(r=>{if(!r.empty||r.from==0||r.from==n.doc.length)return{range:r};let i=r.from,s=n.doc.lineAt(i),a=i==s.from?i-1:Et(s.text,i-s.from,!1)+s.from,o=i==s.to?i+1:Et(s.text,i-s.from,!0)+s.from;return{changes:{from:a,to:o,insert:n.doc.slice(i,o).append(n.doc.slice(a,i))},range:B.cursor(o)}});return t.changes.empty?!1:(e(n.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function fu(n){let e=[],t=-1;for(let r of n.selection.ranges){let i=n.doc.lineAt(r.from),s=n.doc.lineAt(r.to);if(!r.empty&&r.to==s.from&&(s=n.doc.lineAt(r.to-1)),t>=i.number){let a=e[e.length-1];a.to=s.to,a.ranges.push(r)}else e.push({from:i.from,to:s.to,ranges:[r]});t=s.number+1}return e}function aw(n,e,t){if(n.readOnly)return!1;let r=[],i=[];for(let s of fu(n)){if(t?s.to==n.doc.length:s.from==0)continue;let a=n.doc.lineAt(t?s.to+1:s.from-1),o=a.length+1;if(t){r.push({from:s.to,to:a.to},{from:s.from,insert:a.text+n.lineBreak});for(let l of s.ranges)i.push(B.range(Math.min(n.doc.length,l.anchor+o),Math.min(n.doc.length,l.head+o)))}else{r.push({from:a.from,to:s.from},{from:s.to,insert:n.lineBreak+a.text});for(let l of s.ranges)i.push(B.range(l.anchor-o,l.head-o))}}return r.length?(e(n.update({changes:r,scrollIntoView:!0,selection:B.create(i,n.selection.mainIndex),userEvent:"move.line"})),!0):!1}const k9=({state:n,dispatch:e})=>aw(n,e,!1),C9=({state:n,dispatch:e})=>aw(n,e,!0);function ow(n,e,t){if(n.readOnly)return!1;let r=[];for(let i of fu(n))t?r.push({from:i.from,insert:n.doc.slice(i.from,i.to)+n.lineBreak}):r.push({from:i.to,insert:n.lineBreak+n.doc.slice(i.from,i.to)});return e(n.update({changes:r,scrollIntoView:!0,userEvent:"input.copyline"})),!0}const A9=({state:n,dispatch:e})=>ow(n,e,!1),M9=({state:n,dispatch:e})=>ow(n,e,!0),I9=n=>{if(n.state.readOnly)return!1;let{state:e}=n,t=e.changes(fu(e).map(({from:i,to:s})=>(i>0?i--:s<e.doc.length&&s++,{from:i,to:s}))),r=es(e.selection,i=>n.moveVertically(i,!0)).map(t);return n.dispatch({changes:t,selection:r,scrollIntoView:!0,userEvent:"delete.line"}),!0};function E9(n,e){if(/\(\)|\[\]|\{\}/.test(n.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=At(n).resolveInner(e),r=t.childBefore(e),i=t.childAfter(e),s;return r&&i&&r.to<=e&&i.from>=e&&(s=r.type.prop(xe.closedBy))&&s.indexOf(i.name)>-1&&n.doc.lineAt(r.to).from==n.doc.lineAt(i.from).from?{from:r.to,to:i.from}:null}const D9=lw(!1),R9=lw(!0);function lw(n){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let r=e.changeByRange(i=>{let{from:s,to:a}=i,o=e.doc.lineAt(s),l=!n&&s==a&&E9(e,s);n&&(s=a=(a<=o.to?o:e.doc.lineAt(a)).to);let c=new au(e,{simulateBreak:s,simulateDoubleBreak:!!l}),u=hh(c,s);for(u==null&&(u=/^\s*/.exec(e.doc.lineAt(s).text)[0].length);a<o.to&&/\s/.test(o.text[a-o.from]);)a++;l?{from:s,to:a}=l:s>o.from&&s<o.from+100&&!/\S/.test(o.text.slice(0,s))&&(s=o.from);let f=["",Ks(e,u)];return l&&f.push(Ks(e,c.lineIndent(o.from,-1))),{changes:{from:s,to:a,insert:ke.of(f)},range:B.cursor(s+1+f[1].length)}});return t(e.update(r,{scrollIntoView:!0,userEvent:"input"})),!0}}function vh(n,e){let t=-1;return n.changeByRange(r=>{let i=[];for(let a=r.from;a<=r.to;){let o=n.doc.lineAt(a);o.number>t&&(r.empty||r.to>o.from)&&(e(o,i,r),t=o.number),a=o.to+1}let s=n.changes(i);return{changes:i,range:B.range(s.mapPos(r.anchor,1),s.mapPos(r.head,1))}})}const O9=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let t=Object.create(null),r=new au(n,{overrideIndentation:s=>{let a=t[s];return a??-1}}),i=vh(n,(s,a,o)=>{let l=hh(r,s.from);if(l==null)return;/\S/.test(s.text)||(l=0);let c=/^\s*/.exec(s.text)[0],u=Ks(n,l);(c!=u||o.from<s.from+c.length)&&(t[s.from]=l,a.push({from:s.from,to:s.from+c.length,insert:u}))});return i.changes.empty||e(n.update(i,{userEvent:"indent"})),!0},cw=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(vh(n,(t,r)=>{r.push({from:t.from,insert:n.facet(fa)})}),{userEvent:"input.indent"})),!0),uw=({state:n,dispatch:e})=>n.readOnly?!1:(e(n.update(vh(n,(t,r)=>{let i=/^\s*/.exec(t.text)[0];if(!i)return;let s=oa(i,n.tabSize),a=0,o=Ks(n,Math.max(0,s-Ec(n)));for(;a<i.length&&a<o.length&&i.charCodeAt(a)==o.charCodeAt(a);)a++;r.push({from:t.from+a,to:t.from+i.length,insert:o.slice(a)})}),{userEvent:"delete.dedent"})),!0),T9=[{key:"Ctrl-b",run:$y,shift:Ky,preventDefault:!0},{key:"Ctrl-f",run:Fy,shift:Zy},{key:"Ctrl-p",run:Uy,shift:Xy},{key:"Ctrl-n",run:zy,shift:Qy},{key:"Ctrl-a",run:t9,shift:h9},{key:"Ctrl-e",run:n9,shift:p9},{key:"Ctrl-d",run:nw},{key:"Ctrl-h",run:kf},{key:"Ctrl-k",run:sw},{key:"Ctrl-Alt-h",run:iw},{key:"Ctrl-o",run:w9},{key:"Ctrl-t",run:S9},{key:"Ctrl-v",run:Sf}],N9=[{key:"ArrowLeft",run:$y,shift:Ky,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:qN,shift:s9,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:QN,shift:d9,preventDefault:!0},{key:"ArrowRight",run:Fy,shift:Zy,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:GN,shift:a9,preventDefault:!0},{mac:"Cmd-ArrowRight",run:e9,shift:f9,preventDefault:!0},{key:"ArrowUp",run:Uy,shift:Xy,preventDefault:!0},{mac:"Cmd-ArrowUp",run:Qm,shift:tg},{mac:"Ctrl-ArrowUp",run:Ym,shift:Jm},{key:"ArrowDown",run:zy,shift:Qy,preventDefault:!0},{mac:"Cmd-ArrowDown",run:eg,shift:ng},{mac:"Ctrl-ArrowDown",run:Sf,shift:Xm},{key:"PageUp",run:Ym,shift:Jm},{key:"PageDown",run:Sf,shift:Xm},{key:"Home",run:XN,shift:u9,preventDefault:!0},{key:"Mod-Home",run:Qm,shift:tg},{key:"End",run:JN,shift:c9,preventDefault:!0},{key:"Mod-End",run:eg,shift:ng},{key:"Enter",run:D9},{key:"Mod-a",run:m9},{key:"Backspace",run:kf,shift:kf},{key:"Delete",run:nw},{key:"Mod-Backspace",mac:"Alt-Backspace",run:iw},{key:"Mod-Delete",mac:"Alt-Delete",run:x9},{mac:"Mod-Backspace",run:y9},{mac:"Mod-Delete",run:sw}].concat(T9.map(n=>({mac:n.key,run:n.run,shift:n.shift}))),P9=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:ZN,shift:o9},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:YN,shift:l9},{key:"Alt-ArrowUp",run:k9},{key:"Shift-Alt-ArrowUp",run:A9},{key:"Alt-ArrowDown",run:C9},{key:"Shift-Alt-ArrowDown",run:M9},{key:"Escape",run:b9},{key:"Mod-Enter",run:R9},{key:"Alt-l",mac:"Ctrl-l",run:g9},{key:"Mod-i",run:v9,preventDefault:!0},{key:"Mod-[",run:uw},{key:"Mod-]",run:cw},{key:"Mod-Alt-\\",run:O9},{key:"Shift-Mod-k",run:I9},{key:"Shift-Mod-\\",run:i9},{key:"Mod-/",run:MN},{key:"Alt-A",run:EN}].concat(N9),L9={key:"Tab",run:cw,shift:uw};function $e(){var n=arguments[0];typeof n=="string"&&(n=document.createElement(n));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var i=t[r];typeof i=="string"?n.setAttribute(r,i):i!=null&&(n[r]=i)}e++}for(;e<arguments.length;e++)dw(n,arguments[e]);return n}function dw(n,e){if(typeof e=="string")n.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)n.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)dw(n,e[t]);else throw new RangeError("Unsupported child node: "+e)}const rg=typeof String.prototype.normalize=="function"?n=>n.normalize("NFKD"):n=>n;class Ui{constructor(e,t,r=0,i=e.length,s,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=e.iterRange(r,i),this.bufferStart=r,this.normalize=s?o=>s(rg(o)):rg,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return wt(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=Qf(e),r=this.bufferStart+this.bufferPos;this.bufferPos+=dn(e);let i=this.normalize(t);for(let s=0,a=r;;s++){let o=i.charCodeAt(s),l=this.match(o,a);if(s==i.length-1){if(l)return this.value=l,this;break}a==r&&s<t.length&&t.charCodeAt(s)==o&&a++}}}match(e,t){let r=null;for(let i=0;i<this.matches.length;i+=2){let s=this.matches[i],a=!1;this.query.charCodeAt(s)==e&&(s==this.query.length-1?r={from:this.matches[i+1],to:t+1}:(this.matches[i]++,a=!0)),a||(this.matches.splice(i,2),i-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:t,to:t+1}:this.matches.push(1,t)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferPos)&&(r=null),r}}typeof Symbol<"u"&&(Ui.prototype[Symbol.iterator]=function(){return this});const fw={from:-1,to:-1,match:/.*/.exec("")},bh="gm"+(/x/.unicode==null?"":"u");class hw{constructor(e,t,r,i=0,s=e.length){if(this.text=e,this.to=s,this.curLine="",this.done=!1,this.value=fw,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new pw(e,t,r,i,s);this.re=new RegExp(t,bh+(r?.ignoreCase?"i":"")),this.test=r?.test,this.iter=e.iter();let a=e.lineAt(i);this.curLineStart=a.from,this.matchPos=Tc(e,i),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let r=this.curLineStart+t.index,i=r+t[0].length;if(this.matchPos=Tc(this.text,i+(r==i?1:0)),r==this.curLineStart+this.curLine.length&&this.nextLine(),(r<i||r>this.value.to)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}}const sd=new WeakMap;class _i{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(e,t,r){let i=sd.get(e);if(!i||i.from>=r||i.to<=t){let o=new _i(t,e.sliceString(t,r));return sd.set(e,o),o}if(i.from==t&&i.to==r)return i;let{text:s,from:a}=i;return a>t&&(s=e.sliceString(t,a)+s,a=t),i.to<r&&(s+=e.sliceString(i.to,r)),sd.set(e,new _i(a,s)),new _i(t,s.slice(t-a,r-a))}}class pw{constructor(e,t,r,i,s){this.text=e,this.to=s,this.done=!1,this.value=fw,this.matchPos=Tc(e,i),this.re=new RegExp(t,bh+(r?.ignoreCase?"i":"")),this.test=r?.test,this.flat=_i.get(e,i,this.chunkEnd(i+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let r=this.flat.from+t.index,i=r+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(r,i,t)))return this.value={from:r,to:i,match:t},this.matchPos=Tc(this.text,i+(r==i?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=_i.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(hw.prototype[Symbol.iterator]=pw.prototype[Symbol.iterator]=function(){return this});function _9(n){try{return new RegExp(n,bh),!0}catch{return!1}}function Tc(n,e){if(e>=n.length)return e;let t=n.lineAt(e),r;for(;e<t.to&&(r=t.text.charCodeAt(e-t.from))>=56320&&r<57344;)e++;return e}function Cf(n){let e=$e("input",{class:"cm-textfield",name:"line"}),t=$e("form",{class:"cm-gotoLine",onkeydown:i=>{i.keyCode==27?(i.preventDefault(),n.dispatch({effects:Nc.of(!1)}),n.focus()):i.keyCode==13&&(i.preventDefault(),r())},onsubmit:i=>{i.preventDefault(),r()}},$e("label",n.state.phrase("Go to line"),": ",e)," ",$e("button",{class:"cm-button",type:"submit"},n.state.phrase("go")));function r(){let i=/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(e.value);if(!i)return;let{state:s}=n,a=s.doc.lineAt(s.selection.main.head),[,o,l,c,u]=i,f=c?+c.slice(1):0,h=l?+l:a.number;if(l&&u){let m=h/100;o&&(m=m*(o=="-"?-1:1)+a.number/s.doc.lines),h=Math.round(s.doc.lines*m)}else l&&o&&(h=h*(o=="-"?-1:1)+a.number);let p=s.doc.line(Math.max(1,Math.min(s.doc.lines,h))),g=B.cursor(p.from+Math.max(0,Math.min(f,p.length)));n.dispatch({effects:[Nc.of(!1),G.scrollIntoView(g.from,{y:"center"})],selection:g}),n.focus()}return{dom:t}}const Nc=pe.define(),ig=vt.define({create(){return!0},update(n,e){for(let t of e.effects)t.is(Nc)&&(n=t.value);return n},provide:n=>Ws.from(n,e=>e?Cf:null)}),j9=n=>{let e=zs(n,Cf);if(!e){let t=[Nc.of(!0)];n.state.field(ig,!1)==null&&t.push(pe.appendConfig.of([ig,B9])),n.dispatch({effects:t}),e=zs(n,Cf)}return e&&e.dom.querySelector("input").focus(),!0},B9=G.baseTheme({".cm-panel.cm-gotoLine":{padding:"2px 6px 4px","& label":{fontSize:"80%"}}}),$9={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},F9=J.define({combine(n){return Yn(n,$9,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function H9(n){return[q9,W9]}const V9=le.mark({class:"cm-selectionMatch"}),U9=le.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function sg(n,e,t,r){return(t==0||n(e.sliceDoc(t-1,t))!=Ue.Word)&&(r==e.doc.length||n(e.sliceDoc(r,r+1))!=Ue.Word)}function z9(n,e,t,r){return n(e.sliceDoc(t,t+1))==Ue.Word&&n(e.sliceDoc(r-1,r))==Ue.Word}const W9=it.fromClass(class{constructor(n){this.decorations=this.getDeco(n)}update(n){(n.selectionSet||n.docChanged||n.viewportChanged)&&(this.decorations=this.getDeco(n.view))}getDeco(n){let e=n.state.facet(F9),{state:t}=n,r=t.selection;if(r.ranges.length>1)return le.none;let i=r.main,s,a=null;if(i.empty){if(!e.highlightWordAroundCursor)return le.none;let l=t.wordAt(i.head);if(!l)return le.none;a=t.charCategorizer(i.head),s=t.sliceDoc(l.from,l.to)}else{let l=i.to-i.from;if(l<e.minSelectionLength||l>200)return le.none;if(e.wholeWords){if(s=t.sliceDoc(i.from,i.to),a=t.charCategorizer(i.head),!(sg(a,t,i.from,i.to)&&z9(a,t,i.from,i.to)))return le.none}else if(s=t.sliceDoc(i.from,i.to).trim(),!s)return le.none}let o=[];for(let l of n.visibleRanges){let c=new Ui(t.doc,s,l.from,l.to);for(;!c.next().done;){let{from:u,to:f}=c.value;if((!a||sg(a,t,u,f))&&(i.empty&&u<=i.from&&f>=i.to?o.push(U9.range(u,f)):(u>=i.to||f<=i.from)&&o.push(V9.range(u,f)),o.length>e.maxMatches))return le.none}}return le.set(o)}},{decorations:n=>n.decorations}),q9=G.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),G9=({state:n,dispatch:e})=>{let{selection:t}=n,r=B.create(t.ranges.map(i=>n.wordAt(i.head)||B.cursor(i.head)),t.mainIndex);return r.eq(t)?!1:(e(n.update({selection:r})),!0)};function K9(n,e){let{main:t,ranges:r}=n.selection,i=n.wordAt(t.head),s=i&&i.from==t.from&&i.to==t.to;for(let a=!1,o=new Ui(n.doc,e,r[r.length-1].to);;)if(o.next(),o.done){if(a)return null;o=new Ui(n.doc,e,0,Math.max(0,r[r.length-1].from-1)),a=!0}else{if(a&&r.some(l=>l.from==o.value.from))continue;if(s){let l=n.wordAt(o.value.from);if(!l||l.from!=o.value.from||l.to!=o.value.to)continue}return o.value}}const Z9=({state:n,dispatch:e})=>{let{ranges:t}=n.selection;if(t.some(s=>s.from===s.to))return G9({state:n,dispatch:e});let r=n.sliceDoc(t[0].from,t[0].to);if(n.selection.ranges.some(s=>n.sliceDoc(s.from,s.to)!=r))return!1;let i=K9(n,r);return i?(e(n.update({selection:n.selection.addRange(B.range(i.from,i.to),!1),effects:G.scrollIntoView(i.to)})),!0):!1},ts=J.define({combine(n){return Yn(n,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new oP(e),scrollToMatch:e=>G.scrollIntoView(e)})}});class mw{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||"",this.valid=!!this.search&&(!this.regexp||_9(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(t,r)=>r=="n"?`
|
|
26
|
-
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new Q9(this):new J9(this)}getCursor(e,t=0,r){let i=e.doc?e:ye.create({doc:e});return r==null&&(r=i.doc.length),this.regexp?wi(this,i,t,r):yi(this,i,t,r)}}class gw{constructor(e){this.spec=e}}function yi(n,e,t,r){return new Ui(e.doc,n.unquoted,t,r,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?Y9(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function Y9(n,e){return(t,r,i,s)=>((s>t||s+i.length<r)&&(s=Math.max(0,t-2),i=n.sliceString(s,Math.min(n.length,r+2))),(e(Pc(i,t-s))!=Ue.Word||e(Lc(i,t-s))!=Ue.Word)&&(e(Lc(i,r-s))!=Ue.Word||e(Pc(i,r-s))!=Ue.Word))}class J9 extends gw{constructor(e){super(e)}nextMatch(e,t,r){let i=yi(this.spec,e,r,e.doc.length).nextOverlapping();return i.done&&(i=yi(this.spec,e,0,t).nextOverlapping()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=r;;){let s=Math.max(t,i-1e4-this.spec.unquoted.length),a=yi(this.spec,e,s,i),o=null;for(;!a.nextOverlapping().done;)o=a.value;if(o)return o;if(s==t)return null;i-=1e4}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=yi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=yi(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}function wi(n,e,t,r){return new hw(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?X9(e.charCategorizer(e.selection.main.head)):void 0},t,r)}function Pc(n,e){return n.slice(Et(n,e,!1),e)}function Lc(n,e){return n.slice(e,Et(n,e))}function X9(n){return(e,t,r)=>!r[0].length||(n(Pc(r.input,r.index))!=Ue.Word||n(Lc(r.input,r.index))!=Ue.Word)&&(n(Lc(r.input,r.index+r[0].length))!=Ue.Word||n(Pc(r.input,r.index+r[0].length))!=Ue.Word)}class Q9 extends gw{nextMatch(e,t,r){let i=wi(this.spec,e,r,e.doc.length).next();return i.done&&(i=wi(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=1;;i++){let s=Math.max(t,r-i*1e4),a=wi(this.spec,e,s,r),o=null;for(;!a.next().done;)o=a.value;if(o&&(s==t||o.from>s+10))return o;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace.replace(/\$([$&\d+])/g,(t,r)=>r=="$"?"$":r=="&"?e.match[0]:r!="0"&&+r<e.match.length?e.match[r]:t))}matchAll(e,t){let r=wi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=wi(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}const Zs=pe.define(),xh=pe.define(),wr=vt.define({create(n){return new ad(Af(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Zs)?n=new ad(t.value.create(),n.panel):t.is(xh)&&(n=new ad(n.query,t.value?yh:null));return n},provide:n=>Ws.from(n,e=>e.panel)});class ad{constructor(e,t){this.query=e,this.panel=t}}const eP=le.mark({class:"cm-searchMatch"}),tP=le.mark({class:"cm-searchMatch cm-searchMatch-selected"}),nP=it.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(wr))}update(n){let e=n.state.field(wr);(e!=n.startState.field(wr)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return le.none;let{view:t}=this,r=new Cr;for(let i=0,s=t.visibleRanges,a=s.length;i<a;i++){let{from:o,to:l}=s[i];for(;i<a-1&&l>s[i+1].from-500;)l=s[++i].to;n.highlight(t.state,o,l,(c,u)=>{let f=t.state.selection.ranges.some(h=>h.from==c&&h.to==u);r.add(c,u,f?tP:eP)})}return r.finish()}},{decorations:n=>n.decorations});function ma(n){return e=>{let t=e.state.field(wr,!1);return t&&t.query.spec.valid?n(e,t):xw(e)}}const _c=ma((n,{query:e})=>{let{to:t}=n.state.selection.main,r=e.nextMatch(n.state,t,t);if(!r)return!1;let i=B.single(r.from,r.to),s=n.state.facet(ts);return n.dispatch({selection:i,effects:[wh(n,r),s.scrollToMatch(i.main,n)],userEvent:"select.search"}),bw(n),!0}),jc=ma((n,{query:e})=>{let{state:t}=n,{from:r}=t.selection.main,i=e.prevMatch(t,r,r);if(!i)return!1;let s=B.single(i.from,i.to),a=n.state.facet(ts);return n.dispatch({selection:s,effects:[wh(n,i),a.scrollToMatch(s.main,n)],userEvent:"select.search"}),bw(n),!0}),rP=ma((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:B.create(t.map(r=>B.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),iP=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:r,to:i}=t.main,s=[],a=0;for(let o=new Ui(n.doc,n.sliceDoc(r,i));!o.next().done;){if(s.length>1e3)return!1;o.value.from==r&&(a=s.length),s.push(B.range(o.value.from,o.value.to))}return e(n.update({selection:B.create(s,a),userEvent:"select.search.matches"})),!0},ag=ma((n,{query:e})=>{let{state:t}=n,{from:r,to:i}=t.selection.main;if(t.readOnly)return!1;let s=e.nextMatch(t,r,r);if(!s)return!1;let a=[],o,l,c=[];if(s.from==r&&s.to==i&&(l=t.toText(e.getReplacement(s)),a.push({from:s.from,to:s.to,insert:l}),s=e.nextMatch(t,s.from,s.to),c.push(G.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(r).number)+"."))),s){let u=a.length==0||a[0].from>=s.to?0:s.to-s.from-l.length;o=B.single(s.from-u,s.to-u),c.push(wh(n,s)),c.push(t.facet(ts).scrollToMatch(o.main,n))}return n.dispatch({changes:a,selection:o,effects:c,userEvent:"input.replace"}),!0}),sP=ma((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(i=>{let{from:s,to:a}=i;return{from:s,to:a,insert:e.getReplacement(i)}});if(!t.length)return!1;let r=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:G.announce.of(r),userEvent:"input.replace.all"}),!0});function yh(n){return n.state.facet(ts).createPanel(n)}function Af(n,e){var t,r,i,s,a;let o=n.selection.main,l=o.empty||o.to>o.from+100?"":n.sliceDoc(o.from,o.to);if(e&&!l)return e;let c=n.facet(ts);return new mw({search:((t=e?.literal)!==null&&t!==void 0?t:c.literal)?l:l.replace(/\n/g,"\\n"),caseSensitive:(r=e?.caseSensitive)!==null&&r!==void 0?r:c.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:c.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:c.regexp,wholeWord:(a=e?.wholeWord)!==null&&a!==void 0?a:c.wholeWord})}function vw(n){let e=zs(n,yh);return e&&e.dom.querySelector("[main-field]")}function bw(n){let e=vw(n);e&&e==n.root.activeElement&&e.select()}const xw=n=>{let e=n.state.field(wr,!1);if(e&&e.panel){let t=vw(n);if(t&&t!=n.root.activeElement){let r=Af(n.state,e.query.spec);r.valid&&n.dispatch({effects:Zs.of(r)}),t.focus(),t.select()}}else n.dispatch({effects:[xh.of(!0),e?Zs.of(Af(n.state,e.query.spec)):pe.appendConfig.of(cP)]});return!0},yw=n=>{let e=n.state.field(wr,!1);if(!e||!e.panel)return!1;let t=zs(n,yh);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:xh.of(!1)}),!0},aP=[{key:"Mod-f",run:xw,scope:"editor search-panel"},{key:"F3",run:_c,shift:jc,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:_c,shift:jc,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:yw,scope:"editor search-panel"},{key:"Mod-Shift-l",run:iP},{key:"Alt-g",run:j9},{key:"Mod-d",run:Z9,preventDefault:!0}];class oP{constructor(e){this.view=e;let t=this.query=e.state.field(wr).query.spec;this.commit=this.commit.bind(this),this.searchField=$e("input",{value:t.search,placeholder:Qt(e,"Find"),"aria-label":Qt(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=$e("input",{value:t.replace,placeholder:Qt(e,"Replace"),"aria-label":Qt(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=$e("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=$e("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=$e("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function r(i,s,a){return $e("button",{class:"cm-button",name:i,onclick:s,type:"button"},a)}this.dom=$e("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,r("next",()=>_c(e),[Qt(e,"next")]),r("prev",()=>jc(e),[Qt(e,"previous")]),r("select",()=>rP(e),[Qt(e,"all")]),$e("label",null,[this.caseField,Qt(e,"match case")]),$e("label",null,[this.reField,Qt(e,"regexp")]),$e("label",null,[this.wordField,Qt(e,"by word")]),...e.state.readOnly?[]:[$e("br"),this.replaceField,r("replace",()=>ag(e),[Qt(e,"replace")]),r("replaceAll",()=>sP(e),[Qt(e,"replace all")])],$e("button",{name:"close",onclick:()=>yw(e),"aria-label":Qt(e,"close"),type:"button"},["×"])])}commit(){let e=new mw({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:Zs.of(e)}))}keydown(e){dO(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?jc:_c)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),ag(this.view))}update(e){for(let t of e.transactions)for(let r of t.effects)r.is(Zs)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(ts).top}}function Qt(n,e){return n.state.phrase(e)}const Ga=30,Ka=/[\s\.,:;?!]/;function wh(n,{from:e,to:t}){let r=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,s=Math.max(r.from,e-Ga),a=Math.min(i,t+Ga),o=n.state.sliceDoc(s,a);if(s!=r.from){for(let l=0;l<Ga;l++)if(!Ka.test(o[l+1])&&Ka.test(o[l])){o=o.slice(l);break}}if(a!=i){for(let l=o.length-1;l>o.length-Ga;l--)if(!Ka.test(o[l-1])&&Ka.test(o[l])){o=o.slice(0,l);break}}return G.announce.of(`${n.state.phrase("current match")}. ${o} ${n.state.phrase("on line")} ${r.number}.`)}const lP=G.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),cP=[wr,ti.lowest(nP),lP];class ww{constructor(e,t,r){this.state=e,this.pos=t,this.explicit=r,this.abortListeners=[]}tokenBefore(e){let t=At(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),i=t.text.slice(r-t.from,this.pos-t.from),s=i.search(Sw(e,!1));return s<0?null:{from:r+s,to:this.pos,text:i.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}}function og(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function uP(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let s=1;s<i.length;s++)t[i[s]]=!0}let r=og(e)+og(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function dP(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,r]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:uP(e);return i=>{let s=i.matchBefore(r);return s||i.explicit?{from:s?s.from:i.pos,options:e,validFor:t}:null}}function C6(n,e){return t=>{for(let r=At(t.state).resolveInner(t.pos,-1);r;r=r.parent){if(n.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(t)}}class lg{constructor(e,t,r,i){this.completion=e,this.source=t,this.match=r,this.score=i}}function Sr(n){return n.selection.main.from}function Sw(n,e){var t;let{source:r}=n,i=e&&r[0]!="^",s=r[r.length-1]!="$";return!i&&!s?n:new RegExp(`${i?"^":""}(?:${r})${s?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const kw=Zn.define();function fP(n,e,t,r){let{main:i}=n.selection,s=t-i.from,a=r-i.from;return Object.assign(Object.assign({},n.changeByRange(o=>o!=i&&t!=r&&n.sliceDoc(o.from+s,o.from+a)!=n.sliceDoc(t,r)?{range:o}:{changes:{from:o.from+s,to:r==i.from?o.to:o.from+a,insert:e},range:B.cursor(o.from+s+e.length)})),{userEvent:"input.complete"})}const cg=new WeakMap;function hP(n){if(!Array.isArray(n))return n;let e=cg.get(n);return e||cg.set(n,e=dP(n)),e}const Sh=pe.define(),Ys=pe.define();class pP{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let r=wt(e,t),i=dn(r);this.chars.push(r);let s=e.slice(t,t+i),a=s.toUpperCase();this.folded.push(wt(a==s?s.toLowerCase():a,0)),t+=i}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,!0}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return!1;let{chars:t,folded:r,any:i,precise:s,byWord:a}=this;if(t.length==1){let y=wt(e,0),w=dn(y),S=w==e.length?0:-100;if(y!=t[0])if(y==r[0])S+=-200;else return!1;return this.ret(S,[0,w])}let o=e.indexOf(this.pattern);if(o==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let l=t.length,c=0;if(o<0){for(let y=0,w=Math.min(e.length,200);y<w&&c<l;){let S=wt(e,y);(S==t[c]||S==r[c])&&(i[c++]=y),y+=dn(S)}if(c<l)return!1}let u=0,f=0,h=!1,p=0,g=-1,m=-1,v=/[a-z]/.test(e),b=!0;for(let y=0,w=Math.min(e.length,200),S=0;y<w&&f<l;){let k=wt(e,y);o<0&&(u<l&&k==t[u]&&(s[u++]=y),p<l&&(k==t[p]||k==r[p]?(p==0&&(g=y),m=y+1,p++):p=0));let A,C=k<255?k>=48&&k<=57||k>=97&&k<=122?2:k>=65&&k<=90?1:0:(A=Qf(k))!=A.toLowerCase()?1:A!=A.toUpperCase()?2:0;(!y||C==1&&v||S==0&&C!=0)&&(t[f]==k||r[f]==k&&(h=!0)?a[f++]=y:a.length&&(b=!1)),S=C,y+=dn(k)}return f==l&&a[0]==0&&b?this.result(-100+(h?-200:0),a,e):p==l&&g==0?this.ret(-200-e.length+(m==e.length?0:-100),[0,m]):o>-1?this.ret(-700-e.length,[o,o+this.pattern.length]):p==l?this.ret(-900-e.length,[g,m]):f==l?this.result(-100+(h?-200:0)+-700+(b?0:-1100),a,e):t.length==2?!1:this.result((i[0]?-700:0)+-200+-1100,i,e)}result(e,t,r){let i=[],s=0;for(let a of t){let o=a+(this.astral?dn(wt(r,a)):1);s&&i[s-1]==a?i[s-1]=o:(i[s++]=a,i[s++]=o)}return this.ret(e-r.length,i)}}const Zt=J.define({combine(n){return Yn(n,{activateOnTyping:!0,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:mP,compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>r=>ug(e(r),t(r)),optionClass:(e,t)=>r=>ug(e(r),t(r)),addToOptions:(e,t)=>e.concat(t)})}});function ug(n,e){return n?e?n+" "+e:n:e}function mP(n,e,t,r,i){let s=n.textDirection==qe.RTL,a=s,o=!1,l="top",c,u,f=e.left-i.left,h=i.right-e.right,p=r.right-r.left,g=r.bottom-r.top;if(a&&f<Math.min(p,h)?a=!1:!a&&h<Math.min(p,f)&&(a=!0),p<=(a?f:h))c=Math.max(i.top,Math.min(t.top,i.bottom-g))-e.top,u=Math.min(400,a?f:h);else{o=!0,u=Math.min(400,(s?e.right:i.right-e.left)-30);let m=i.bottom-e.bottom;m>=g||m>e.top?c=t.bottom-e.top:(l="bottom",c=e.bottom-t.top)}return{style:`${l}: ${c}px; max-width: ${u}px`,class:"cm-completionInfo-"+(o?s?"left-narrow":"right-narrow":a?"left":"right")}}function gP(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let r=document.createElement("div");return r.classList.add("cm-completionIcon"),t.type&&r.classList.add(...t.type.split(/\s+/g).map(i=>"cm-completionIcon-"+i)),r.setAttribute("aria-hidden","true"),r},position:20}),e.push({render(t,r,i){let s=document.createElement("span");s.className="cm-completionLabel";let a=t.displayLabel||t.label,o=0;for(let l=0;l<i.length;){let c=i[l++],u=i[l++];c>o&&s.appendChild(document.createTextNode(a.slice(o,c)));let f=s.appendChild(document.createElement("span"));f.appendChild(document.createTextNode(a.slice(c,u))),f.className="cm-completionMatchedText",o=u}return o<a.length&&s.appendChild(document.createTextNode(a.slice(o))),s},position:50},{render(t){if(!t.detail)return null;let r=document.createElement("span");return r.className="cm-completionDetail",r.textContent=t.detail,r},position:80}),e.sort((t,r)=>t.position-r.position).map(t=>t.render)}function dg(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let i=Math.floor(e/t);return{from:i*t,to:(i+1)*t}}let r=Math.floor((n-e)/t);return{from:n-(r+1)*t,to:n-r*t}}class vP{constructor(e,t,r){this.view=e,this.stateField=t,this.applyCompletion=r,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:l=>this.placeInfo(l),key:this},this.space=null,this.currentClass="";let i=e.state.field(t),{options:s,selected:a}=i.open,o=e.state.facet(Zt);this.optionContent=gP(o),this.optionClass=o.optionClass,this.tooltipClass=o.tooltipClass,this.range=dg(s.length,a,o.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",l=>{for(let c=l.target,u;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(u=/-(\d+)$/.exec(c.id))&&+u[1]<s.length){this.applyCompletion(e,s[+u[1]]),l.preventDefault();return}}),this.dom.addEventListener("focusout",l=>{let c=e.state.field(this.stateField,!1);c&&c.tooltip&&e.state.facet(Zt).closeOnBlur&&l.relatedTarget!=e.contentDOM&&e.dispatch({effects:Ys.of(null)})}),this.list=this.dom.appendChild(this.createListBox(s,i.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}mount(){this.updateSel()}update(e){var t,r,i;let s=e.state.field(this.stateField),a=e.startState.field(this.stateField);this.updateTooltipClass(e.state),s!=a&&(this.updateSel(),((t=s.open)===null||t===void 0?void 0:t.disabled)!=((r=a.open)===null||r===void 0?void 0:r.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!(!((i=s.open)===null||i===void 0)&&i.disabled)))}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let r of this.currentClass.split(" "))r&&this.dom.classList.remove(r);for(let r of t.split(" "))r&&this.dom.classList.add(r);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=dg(t.options.length,t.selected,this.view.state.facet(Zt).maxRenderedOptions),this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t.options,e.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:r}=t.options[t.selected],{info:i}=r;if(!i)return;let s=typeof i=="string"?document.createTextNode(i):i(r);if(!s)return;"then"in s?s.then(a=>{a&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(a,r)}).catch(a=>mn(this.view.state,a,"completion info")):this.addInfoPane(s,r)}}addInfoPane(e,t){this.destroyInfo();let r=this.info=document.createElement("div");if(r.className="cm-tooltip cm-completionInfo",e.nodeType!=null)r.appendChild(e),this.infoDestroy=null;else{let{dom:i,destroy:s}=e;r.appendChild(i),this.infoDestroy=s||null}this.dom.appendChild(r),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let r=this.list.firstChild,i=this.range.from;r;r=r.nextSibling,i++)r.nodeName!="LI"||!r.id?i--:i==e?r.hasAttribute("aria-selected")||(r.setAttribute("aria-selected","true"),t=r):r.hasAttribute("aria-selected")&&r.removeAttribute("aria-selected");return t&&xP(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),r=this.info.getBoundingClientRect(),i=e.getBoundingClientRect(),s=this.space;if(!s){let a=this.dom.ownerDocument.defaultView||window;s={left:0,top:0,right:a.innerWidth,bottom:a.innerHeight}}return i.top>Math.min(s.bottom,t.bottom)-10||i.bottom<Math.max(s.top,t.top)+10?null:this.view.state.facet(Zt).positionInfo(this.view,t,i,r,s)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,t,r){const i=document.createElement("ul");i.id=t,i.setAttribute("role","listbox"),i.setAttribute("aria-expanded","true"),i.setAttribute("aria-label",this.view.state.phrase("Completions"));let s=null;for(let a=r.from;a<r.to;a++){let{completion:o,match:l}=e[a],{section:c}=o;if(c){let h=typeof c=="string"?c:c.name;if(h!=s&&(a>r.from||r.from==0))if(s=h,typeof c!="string"&&c.header)i.appendChild(c.header(c));else{let p=i.appendChild(document.createElement("completion-section"));p.textContent=h}}const u=i.appendChild(document.createElement("li"));u.id=t+"-"+a,u.setAttribute("role","option");let f=this.optionClass(o);f&&(u.className=f);for(let h of this.optionContent){let p=h(o,this.view.state,l);p&&u.appendChild(p)}}return r.from&&i.classList.add("cm-completionListIncompleteTop"),r.to<e.length&&i.classList.add("cm-completionListIncompleteBottom"),i}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function bP(n,e){return t=>new vP(t,n,e)}function xP(n,e){let t=n.getBoundingClientRect(),r=e.getBoundingClientRect();r.top<t.top?n.scrollTop-=t.top-r.top:r.bottom>t.bottom&&(n.scrollTop+=r.bottom-t.bottom)}function fg(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function yP(n,e){let t=[],r=null,i=l=>{t.push(l);let{section:c}=l.completion;if(c){r||(r=[]);let u=typeof c=="string"?c:c.name;r.some(f=>f.name==u)||r.push(typeof c=="string"?{name:u}:c)}};for(let l of n)if(l.hasResult()){let c=l.result.getMatch;if(l.result.filter===!1)for(let u of l.result.options)i(new lg(u,l.source,c?c(u):[],1e9-t.length));else{let u=new pP(e.sliceDoc(l.from,l.to));for(let f of l.result.options)if(u.match(f.label)){let h=f.displayLabel?c?c(f,u.matched):[]:u.matched;i(new lg(f,l.source,h,u.score+(f.boost||0)))}}}if(r){let l=Object.create(null),c=0,u=(f,h)=>{var p,g;return((p=f.rank)!==null&&p!==void 0?p:1e9)-((g=h.rank)!==null&&g!==void 0?g:1e9)||(f.name<h.name?-1:1)};for(let f of r.sort(u))c-=1e5,l[f.name]=c;for(let f of t){let{section:h}=f.completion;h&&(f.score+=l[typeof h=="string"?h:h.name])}}let s=[],a=null,o=e.facet(Zt).compareCompletions;for(let l of t.sort((c,u)=>u.score-c.score||o(c.completion,u.completion))){let c=l.completion;!a||a.label!=c.label||a.detail!=c.detail||a.type!=null&&c.type!=null&&a.type!=c.type||a.apply!=c.apply||a.boost!=c.boost?s.push(l):fg(l.completion)>fg(a)&&(s[s.length-1]=l),a=l.completion}return s}class Ii{constructor(e,t,r,i,s,a){this.options=e,this.attrs=t,this.tooltip=r,this.timestamp=i,this.selected=s,this.disabled=a}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Ii(this.options,hg(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,r,i,s){let a=yP(e,t);if(!a.length)return i&&e.some(l=>l.state==1)?new Ii(i.options,i.attrs,i.tooltip,i.timestamp,i.selected,!0):null;let o=t.facet(Zt).selectOnOpen?0:-1;if(i&&i.selected!=o&&i.selected!=-1){let l=i.options[i.selected].completion;for(let c=0;c<a.length;c++)if(a[c].completion==l){o=c;break}}return new Ii(a,hg(r,o),{pos:e.reduce((l,c)=>c.hasResult()?Math.min(l,c.from):l,1e8),create:bP(nn,Mw),above:s.aboveCursor},i?i.timestamp:Date.now(),o,!1)}map(e){return new Ii(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class Bc{constructor(e,t,r){this.active=e,this.id=t,this.open=r}static start(){return new Bc(kP,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,r=t.facet(Zt),s=(r.override||t.languageDataAt("autocomplete",Sr(t)).map(hP)).map(o=>(this.active.find(c=>c.source==o)||new Gt(o,this.active.some(c=>c.state!=0)?1:0)).update(e,r));s.length==this.active.length&&s.every((o,l)=>o==this.active[l])&&(s=this.active);let a=this.open;a&&e.docChanged&&(a=a.map(e.changes)),e.selection||s.some(o=>o.hasResult()&&e.changes.touchesRange(o.from,o.to))||!wP(s,this.active)?a=Ii.build(s,t,this.id,a,r):a&&a.disabled&&!s.some(o=>o.state==1)&&(a=null),!a&&s.every(o=>o.state!=1)&&s.some(o=>o.hasResult())&&(s=s.map(o=>o.hasResult()?new Gt(o.source,0):o));for(let o of e.effects)o.is(Aw)&&(a=a&&a.setSelected(o.value,this.id));return s==this.active&&a==this.open?this:new Bc(s,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:SP}}function wP(n,e){if(n==e)return!0;for(let t=0,r=0;;){for(;t<n.length&&!n[t].hasResult;)t++;for(;r<e.length&&!e[r].hasResult;)r++;let i=t==n.length,s=r==e.length;if(i||s)return i==s;if(n[t++].result!=e[r++].result)return!1}}const SP={"aria-autocomplete":"list"};function hg(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const kP=[];function Mf(n){return n.isUserEvent("input.type")?"input":n.isUserEvent("delete.backward")?"delete":null}class Gt{constructor(e,t,r=-1){this.source=e,this.state=t,this.explicitPos=r}hasResult(){return!1}update(e,t){let r=Mf(e),i=this;r?i=i.handleUserEvent(e,r,t):e.docChanged?i=i.handleChange(e):e.selection&&i.state!=0&&(i=new Gt(i.source,0));for(let s of e.effects)if(s.is(Sh))i=new Gt(i.source,1,s.value?Sr(e.state):-1);else if(s.is(Ys))i=new Gt(i.source,0);else if(s.is(Cw))for(let a of s.value)a.source==i.source&&(i=a);return i}handleUserEvent(e,t,r){return t=="delete"||!r.activateOnTyping?this.map(e.changes):new Gt(this.source,1)}handleChange(e){return e.changes.touchesRange(Sr(e.startState))?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new Gt(this.source,this.state,e.mapPos(this.explicitPos))}}class ji extends Gt{constructor(e,t,r,i,s){super(e,2,t),this.result=r,this.from=i,this.to=s}hasResult(){return!0}handleUserEvent(e,t,r){var i;let s=e.changes.mapPos(this.from),a=e.changes.mapPos(this.to,1),o=Sr(e.state);if((this.explicitPos<0?o<=s:o<this.from)||o>a||t=="delete"&&Sr(e.startState)==this.from)return new Gt(this.source,t=="input"&&r.activateOnTyping?1:0);let l=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos),c;return CP(this.result.validFor,e.state,s,a)?new ji(this.source,l,this.result,s,a):this.result.update&&(c=this.result.update(this.result,s,a,new ww(e.state,o,l>=0)))?new ji(this.source,l,c,c.from,(i=c.to)!==null&&i!==void 0?i:Sr(e.state)):new Gt(this.source,1,l)}handleChange(e){return e.changes.touchesRange(this.from,this.to)?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty?this:new ji(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1))}}function CP(n,e,t,r){if(!n)return!1;let i=e.sliceDoc(t,r);return typeof n=="function"?n(i,t,r,e):Sw(n,!0).test(i)}const Cw=pe.define({map(n,e){return n.map(t=>t.map(e))}}),Aw=pe.define(),nn=vt.define({create(){return Bc.start()},update(n,e){return n.update(e)},provide:n=>[lh.from(n,e=>e.tooltip),G.contentAttributes.from(n,e=>e.attrs)]});function Mw(n,e){const t=e.completion.apply||e.completion.label;let r=n.state.field(nn).active.find(i=>i.source==e.source);return r instanceof ji?(typeof t=="string"?n.dispatch(Object.assign(Object.assign({},fP(n.state,t,r.from,r.to)),{annotations:kw.of(e.completion)})):t(n,e.completion,r.from,r.to),!0):!1}function Za(n,e="option"){return t=>{let r=t.state.field(nn,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp<t.state.facet(Zt).interactionDelay)return!1;let i=1,s;e=="page"&&(s=cy(t,r.open.tooltip))&&(i=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:a}=r.open.options,o=r.open.selected>-1?r.open.selected+i*(n?1:-1):n?0:a-1;return o<0?o=e=="page"?0:a-1:o>=a&&(o=e=="page"?a-1:0),t.dispatch({effects:Aw.of(o)}),!0}}const AP=n=>{let e=n.state.field(nn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Zt).interactionDelay?!1:Mw(n,e.open.options[e.open.selected])},MP=n=>n.state.field(nn,!1)?(n.dispatch({effects:Sh.of(!0)}),!0):!1,IP=n=>{let e=n.state.field(nn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Ys.of(null)}),!0)};class EP{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const pg=50,DP=50,RP=1e3,OP=it.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.composing=0;for(let e of n.state.field(nn).active)e.state==1&&this.startQuery(e)}update(n){let e=n.state.field(nn);if(!n.selectionSet&&!n.docChanged&&n.startState.field(nn)==e)return;let t=n.transactions.some(r=>(r.selection||r.docChanged)&&!Mf(r));for(let r=0;r<this.running.length;r++){let i=this.running[r];if(t||i.updates.length+n.transactions.length>DP&&Date.now()-i.time>RP){for(let s of i.context.abortListeners)try{s()}catch(a){mn(this.view.state,a)}i.context.abortListeners=null,this.running.splice(r--,1)}else i.updates.push(...n.transactions)}if(this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),this.debounceUpdate=e.active.some(r=>r.state==1&&!this.running.some(i=>i.active.source==r.source))?setTimeout(()=>this.startUpdate(),pg):-1,this.composing!=0)for(let r of n.transactions)Mf(r)=="input"?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1;let{state:n}=this.view,e=n.field(nn);for(let t of e.active)t.state==1&&!this.running.some(r=>r.active.source==t.source)&&this.startQuery(t)}startQuery(n){let{state:e}=this.view,t=Sr(e),r=new ww(e,t,n.explicitPos==t),i=new EP(n,r);this.running.push(i),Promise.resolve(n.source(r)).then(s=>{i.context.aborted||(i.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:Ys.of(null)}),mn(this.view.state,s)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),pg))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Zt);for(let r=0;r<this.running.length;r++){let i=this.running[r];if(i.done===void 0)continue;if(this.running.splice(r--,1),i.done){let a=new ji(i.active.source,i.active.explicitPos,i.done,i.done.from,(n=i.done.to)!==null&&n!==void 0?n:Sr(i.updates.length?i.updates[0].startState:this.view.state));for(let o of i.updates)a=a.update(o,t);if(a.hasResult()){e.push(a);continue}}let s=this.view.state.field(nn).active.find(a=>a.source==i.active.source);if(s&&s.state==1)if(i.done==null){let a=new Gt(i.active.source,0);for(let o of i.updates)a=a.update(o,t);a.state!=1&&e.push(a)}else this.startQuery(s)}e.length&&this.view.dispatch({effects:Cw.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(nn,!1);if(e&&e.tooltip&&this.view.state.facet(Zt).closeOnBlur){let t=e.open&&cy(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&this.view.dispatch({effects:Ys.of(null)})}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Sh.of(!1)}),20),this.composing=0}}}),Iw=G.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class TP{constructor(e,t,r,i){this.field=e,this.line=t,this.from=r,this.to=i}}class kh{constructor(e,t,r){this.field=e,this.from=t,this.to=r}map(e){let t=e.mapPos(this.from,-1,kt.TrackDel),r=e.mapPos(this.to,1,kt.TrackDel);return t==null||r==null?null:new kh(this.field,t,r)}}class Ch{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let r=[],i=[t],s=e.doc.lineAt(t),a=/^\s*/.exec(s.text)[0];for(let l of this.lines){if(r.length){let c=a,u=/^\t*/.exec(l)[0].length;for(let f=0;f<u;f++)c+=e.facet(fa);i.push(t+c.length-u),l=c+l.slice(u)}r.push(l),t+=l.length+1}let o=this.fieldPositions.map(l=>new kh(l.field,i[l.line]+l.from,i[l.line]+l.to));return{text:r,ranges:o}}static parse(e){let t=[],r=[],i=[],s;for(let a of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(a);){let o=s[1]?+s[1]:null,l=s[2]||s[3]||"",c=-1;for(let u=0;u<t.length;u++)(o!=null?t[u].seq==o:l&&t[u].name==l)&&(c=u);if(c<0){let u=0;for(;u<t.length&&(o==null||t[u].seq!=null&&t[u].seq<o);)u++;t.splice(u,0,{seq:o,name:l}),c=u;for(let f of i)f.field>=c&&f.field++}i.push(new TP(c,r.length,s.index,s.index+l.length)),a=a.slice(0,s.index)+l+a.slice(s.index+s[0].length)}for(let o;o=/\\([{}])/.exec(a);){a=a.slice(0,o.index)+o[1]+a.slice(o.index+o[0].length);for(let l of i)l.line==r.length&&l.from>o.index&&(l.from--,l.to--)}r.push(a)}return new Ch(r,i)}}let NP=le.widget({widget:new class extends sr{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),PP=le.mark({class:"cm-snippetField"});class ns{constructor(e,t){this.ranges=e,this.active=t,this.deco=le.set(e.map(r=>(r.from==r.to?NP:PP).range(r.from,r.to)))}map(e){let t=[];for(let r of this.ranges){let i=r.map(e);if(!i)return null;t.push(i)}return new ns(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(r=>r.field==this.active&&r.from<=t.from&&r.to>=t.to))}}const ga=pe.define({map(n,e){return n&&n.map(e)}}),LP=pe.define(),Js=vt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(ga))return t.value;if(t.is(LP)&&n)return new ns(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>G.decorations.from(n,e=>e?e.deco:le.none)});function Ah(n,e){return B.create(n.filter(t=>t.field==e).map(t=>B.range(t.from,t.to)))}function _P(n){let e=Ch.parse(n);return(t,r,i,s)=>{let{text:a,ranges:o}=e.instantiate(t.state,i),l={changes:{from:i,to:s,insert:ke.of(a)},scrollIntoView:!0,annotations:r?kw.of(r):void 0};if(o.length&&(l.selection=Ah(o,0)),o.length>1){let c=new ns(o,0),u=l.effects=[ga.of(c)];t.state.field(Js,!1)===void 0&&u.push(pe.appendConfig.of([Js,HP,VP,Iw]))}t.dispatch(t.state.update(l))}}function Ew(n){return({state:e,dispatch:t})=>{let r=e.field(Js,!1);if(!r||n<0&&r.active==0)return!1;let i=r.active+n,s=n>0&&!r.ranges.some(a=>a.field==i+n);return t(e.update({selection:Ah(r.ranges,i),effects:ga.of(s?null:new ns(r.ranges,i))})),!0}}const jP=({state:n,dispatch:e})=>n.field(Js,!1)?(e(n.update({effects:ga.of(null)})),!0):!1,BP=Ew(1),$P=Ew(-1),FP=[{key:"Tab",run:BP,shift:$P},{key:"Escape",run:jP}],mg=J.define({combine(n){return n.length?n[0]:FP}}),HP=ti.highest(ua.compute([mg],n=>n.facet(mg)));function A6(n,e){return Object.assign(Object.assign({},e),{apply:_P(n)})}const VP=G.domEventHandlers({mousedown(n,e){let t=e.state.field(Js,!1),r;if(!t||(r=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(s=>s.from<=r&&s.to>=r);return!i||i.field==t.active?!1:(e.dispatch({selection:Ah(t.ranges,i.field),effects:ga.of(t.ranges.some(s=>s.field>i.field)?new ns(t.ranges,i.field):null)}),!0)}}),Xs={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},zr=pe.define({map(n,e){let t=e.mapPos(n,-1,kt.TrackAfter);return t??void 0}}),Mh=new class extends Zr{};Mh.startSide=1;Mh.endSide=-1;const Dw=vt.define({create(){return Pe.empty},update(n,e){if(e.selection){let t=e.state.doc.lineAt(e.selection.main.head).from,r=e.startState.doc.lineAt(e.startState.selection.main.head).from;t!=e.changes.mapPos(r,-1)&&(n=Pe.empty)}n=n.map(e.changes);for(let t of e.effects)t.is(zr)&&(n=n.update({add:[Mh.range(t.value,t.value+1)]}));return n}});function UP(){return[WP,Dw]}const od="()[]{}<>";function Rw(n){for(let e=0;e<od.length;e+=2)if(od.charCodeAt(e)==n)return od.charAt(e+1);return Qf(n<128?n:n+1)}function Ow(n,e){return n.languageDataAt("closeBrackets",e)[0]||Xs}const zP=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),WP=G.inputHandler.of((n,e,t,r)=>{if((zP?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(r.length>2||r.length==2&&dn(wt(r,0))==1||e!=i.from||t!=i.to)return!1;let s=KP(n.state,r);return s?(n.dispatch(s),!0):!1}),qP=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let r=Ow(n,n.selection.main.head).brackets||Xs.brackets,i=null,s=n.changeByRange(a=>{if(a.empty){let o=ZP(n.doc,a.head);for(let l of r)if(l==o&&hu(n.doc,a.head)==Rw(wt(l,0)))return{changes:{from:a.head-l.length,to:a.head+l.length},range:B.cursor(a.head-l.length)}}return{range:i=a}});return i||e(n.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},GP=[{key:"Backspace",run:qP}];function KP(n,e){let t=Ow(n,n.selection.main.head),r=t.brackets||Xs.brackets;for(let i of r){let s=Rw(wt(i,0));if(e==i)return s==i?XP(n,i,r.indexOf(i+i+i)>-1,t):YP(n,i,s,t.before||Xs.before);if(e==s&&Tw(n,n.selection.main.from))return JP(n,i,s)}return null}function Tw(n,e){let t=!1;return n.field(Dw).between(0,n.doc.length,r=>{r==e&&(t=!0)}),t}function hu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,dn(wt(t,0)))}function ZP(n,e){let t=n.sliceString(e-2,e);return dn(wt(t,0))==t.length?t:t.slice(1)}function YP(n,e,t,r){let i=null,s=n.changeByRange(a=>{if(!a.empty)return{changes:[{insert:e,from:a.from},{insert:t,from:a.to}],effects:zr.of(a.to+e.length),range:B.range(a.anchor+e.length,a.head+e.length)};let o=hu(n.doc,a.head);return!o||/\s/.test(o)||r.indexOf(o)>-1?{changes:{insert:e+t,from:a.head},effects:zr.of(a.head+e.length),range:B.cursor(a.head+e.length)}:{range:i=a}});return i?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function JP(n,e,t){let r=null,i=n.changeByRange(s=>s.empty&&hu(n.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:B.cursor(s.head+t.length)}:r={range:s});return r?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function XP(n,e,t,r){let i=r.stringPrefixes||Xs.stringPrefixes,s=null,a=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:e,from:o.to}],effects:zr.of(o.to+e.length),range:B.range(o.anchor+e.length,o.head+e.length)};let l=o.head,c=hu(n.doc,l),u;if(c==e){if(gg(n,l))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(Tw(n,l)){let h=t&&n.sliceDoc(l,l+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:l,to:l+h.length,insert:h},range:B.cursor(l+h.length)}}}else{if(t&&n.sliceDoc(l-2*e.length,l)==e+e&&(u=vg(n,l-2*e.length,i))>-1&&gg(n,u))return{changes:{insert:e+e+e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(n.charCategorizer(l)(c)!=Ue.Word&&vg(n,l,i)>-1&&!QP(n,l,e,i))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)}}return{range:s=o}});return s?null:n.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function gg(n,e){let t=At(n).resolveInner(e+1);return t.parent&&t.from==e}function QP(n,e,t,r){let i=At(n).resolveInner(e,-1),s=r.reduce((a,o)=>Math.max(a,o.length),0);for(let a=0;a<5;a++){let o=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+s)),l=o.indexOf(t);if(!l||l>-1&&r.indexOf(o.slice(0,l))>-1){let u=i.firstChild;for(;u&&u.from==i.from&&u.to-u.from>t.length+l;){if(n.sliceDoc(u.to-t.length,u.to)==t)return!1;u=u.firstChild}return!0}let c=i.to==e&&i.parent;if(!c)break;i=c}return!1}function vg(n,e,t){let r=n.charCategorizer(e);if(r(n.sliceDoc(e-1,e))!=Ue.Word)return e;for(let i of t){let s=e-i.length;if(n.sliceDoc(s,e)==i&&r(n.sliceDoc(s-1,s))!=Ue.Word)return s}return-1}function e3(n={}){return[nn,Zt.of(n),OP,t3,Iw]}const Nw=[{key:"Ctrl-Space",run:MP},{key:"Escape",run:IP},{key:"ArrowDown",run:Za(!0)},{key:"ArrowUp",run:Za(!1)},{key:"PageDown",run:Za(!0,"page")},{key:"PageUp",run:Za(!1,"page")},{key:"Enter",run:AP}],t3=ti.highest(ua.computeN([Zt],n=>n.facet(Zt).defaultKeymap?[Nw]:[]));class n3{constructor(e,t,r){this.from=e,this.to=t,this.diagnostic=r}}class Hr{constructor(e,t,r){this.diagnostics=e,this.panel=t,this.selected=r}static init(e,t,r){let i=e,s=r.facet(_w).markerFilter;s&&(i=s(i));let a=le.set(i.map(o=>o.from==o.to||o.from==o.to-1&&r.doc.lineAt(o.from).to==o.from?le.widget({widget:new d3(o),diagnostic:o}).range(o.from):le.mark({attributes:{class:"cm-lintRange cm-lintRange-"+o.severity+(o.markClass?" "+o.markClass:"")},diagnostic:o}).range(o.from,o.to)),!0);return new Hr(a,t,zi(a))}}function zi(n,e=null,t=0){let r=null;return n.between(t,1e9,(i,s,{spec:a})=>{if(!(e&&a.diagnostic!=e))return r=new n3(i,s,a.diagnostic),!1}),r}function r3(n,e){let t=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(r=>r.is(Pw))||n.changes.touchesRange(t.from,t.to))}function i3(n,e){return n.field(an,!1)?e:e.concat(pe.appendConfig.of(p3))}const Pw=pe.define(),Ih=pe.define(),Lw=pe.define(),an=vt.define({create(){return new Hr(le.none,null,null)},update(n,e){if(e.docChanged){let t=n.diagnostics.map(e.changes),r=null;if(n.selected){let i=e.changes.mapPos(n.selected.from,1);r=zi(t,n.selected.diagnostic,i)||zi(t,null,i)}n=new Hr(t,n.panel,r)}for(let t of e.effects)t.is(Pw)?n=Hr.init(t.value,n.panel,e.state):t.is(Ih)?n=new Hr(n.diagnostics,t.value?pu.open:null,n.selected):t.is(Lw)&&(n=new Hr(n.diagnostics,n.panel,t.value));return n},provide:n=>[Ws.from(n,e=>e.panel),G.decorations.from(n,e=>e.diagnostics)]}),s3=le.mark({class:"cm-lintRange cm-lintRange-active"});function a3(n,e,t){let{diagnostics:r}=n.state.field(an),i=[],s=2e8,a=0;r.between(e-(t<0?1:0),e+(t>0?1:0),(l,c,{spec:u})=>{e>=l&&e<=c&&(l==c||(e>l||t>0)&&(e<c||t<0))&&(i.push(u.diagnostic),s=Math.min(l,s),a=Math.max(c,a))});let o=n.state.facet(_w).tooltipFilter;return o&&(i=o(i)),i.length?{pos:s,end:a,above:n.state.doc.lineAt(s).to<a,create(){return{dom:o3(n,i)}}}:null}function o3(n,e){return $e("ul",{class:"cm-tooltip-lint"},e.map(t=>Bw(n,t,!1)))}const l3=n=>{let e=n.state.field(an,!1);(!e||!e.panel)&&n.dispatch({effects:i3(n.state,[Ih.of(!0)])});let t=zs(n,pu.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},bg=n=>{let e=n.state.field(an,!1);return!e||!e.panel?!1:(n.dispatch({effects:Ih.of(!1)}),!0)},c3=n=>{let e=n.state.field(an,!1);if(!e)return!1;let t=n.state.selection.main,r=e.diagnostics.iter(t.to+1);return!r.value&&(r=e.diagnostics.iter(0),!r.value||r.from==t.from&&r.to==t.to)?!1:(n.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},u3=[{key:"Mod-Shift-m",run:l3,preventDefault:!0},{key:"F8",run:c3}],_w=J.define({combine(n){return Object.assign({sources:n.map(e=>e.source)},Yn(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null},{needsRefresh:(e,t)=>e?t?r=>e(r)||t(r):e:t}))}});function jw(n){let e=[];if(n)e:for(let{name:t}of n){for(let r=0;r<t.length;r++){let i=t[r];if(/[a-zA-Z]/.test(i)&&!e.some(s=>s.toLowerCase()==i.toLowerCase())){e.push(i);continue e}}e.push("")}return e}function Bw(n,e,t){var r;let i=t?jw(e.actions):[];return $e("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},$e("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage():e.message),(r=e.actions)===null||r===void 0?void 0:r.map((s,a)=>{let o=!1,l=h=>{if(h.preventDefault(),o)return;o=!0;let p=zi(n.state.field(an).diagnostics,e);p&&s.apply(n,p.from,p.to)},{name:c}=s,u=i[a]?c.indexOf(i[a]):-1,f=u<0?c:[c.slice(0,u),$e("u",c.slice(u,u+1)),c.slice(u+1)];return $e("button",{type:"button",class:"cm-diagnosticAction",onclick:l,onmousedown:l,"aria-label":` Action: ${c}${u<0?"":` (access key "${i[a]})"`}.`},f)}),e.source&&$e("div",{class:"cm-diagnosticSource"},e.source))}class d3 extends sr{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return $e("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class xg{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=Bw(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class pu{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)bg(this.view),this.view.focus();else if(i.keyCode==38||i.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(i.keyCode==40||i.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(i.keyCode==36)this.moveSelection(0);else if(i.keyCode==35)this.moveSelection(this.items.length-1);else if(i.keyCode==13)this.view.focus();else if(i.keyCode>=65&&i.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:s}=this.items[this.selectedIndex],a=jw(s.actions);for(let o=0;o<a.length;o++)if(a[o].toUpperCase().charCodeAt(0)==i.keyCode){let l=zi(this.view.state.field(an).diagnostics,s);l&&s.actions[o].apply(e,l.from,l.to)}}else return;i.preventDefault()},r=i=>{for(let s=0;s<this.items.length;s++)this.items[s].dom.contains(i.target)&&this.moveSelection(s)};this.list=$e("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:r}),this.dom=$e("div",{class:"cm-panel-lint"},this.list,$e("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>bg(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(an).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(an),r=0,i=!1,s=null;for(e.between(0,this.view.state.doc.length,(a,o,{spec:l})=>{let c=-1,u;for(let f=r;f<this.items.length;f++)if(this.items[f].diagnostic==l.diagnostic){c=f;break}c<0?(u=new xg(this.view,l.diagnostic),this.items.splice(r,0,u),i=!0):(u=this.items[c],c>r&&(this.items.splice(r,c-r),i=!0)),t&&u.diagnostic==t.diagnostic?u.dom.hasAttribute("aria-selected")||(u.dom.setAttribute("aria-selected","true"),s=u):u.dom.hasAttribute("aria-selected")&&u.dom.removeAttribute("aria-selected"),r++});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)i=!0,this.items.pop();this.items.length==0&&(this.items.push(new xg(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),i=!0),s?(this.list.setAttribute("aria-activedescendant",s.id),this.view.requestMeasure({key:this,read:()=>({sel:s.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:a,panel:o})=>{a.top<o.top?this.list.scrollTop-=o.top-a.top:a.bottom>o.bottom&&(this.list.scrollTop+=a.bottom-o.bottom)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),i&&this.sync()}sync(){let e=this.list.firstChild;function t(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)t();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(an),r=zi(t.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:Lw.of(r)})}static open(e){return new pu(e)}}function f3(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(n)}</svg>')`}function Ya(n){return f3(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const h3=G.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Ya("#d11")},".cm-lintRange-warning":{backgroundImage:Ya("orange")},".cm-lintRange-info":{backgroundImage:Ya("#999")},".cm-lintRange-hint":{backgroundImage:Ya("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}}),p3=[an,G.decorations.compute([an],n=>{let{selected:e,panel:t}=n.field(an);return!e||!t||e.from==e.to?le.none:le.set([s3.range(e.from,e.to)])}),XO(a3,{hideOn:r3}),h3];var yg=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,r=[];e.closeBracketsKeymap!==!1&&(r=r.concat(GP)),e.defaultKeymap!==!1&&(r=r.concat(P9)),e.searchKeymap!==!1&&(r=r.concat(aP)),e.historyKeymap!==!1&&(r=r.concat(WN)),e.foldKeymap!==!1&&(r=r.concat(iN)),e.completionKeymap!==!1&&(r=r.concat(Nw)),e.lintKeymap!==!1&&(r=r.concat(u3));var i=[];return e.lineNumbers!==!1&&i.push(oT()),e.highlightActiveLineGutter!==!1&&i.push(uT()),e.highlightSpecialChars!==!1&&i.push(EO()),e.history!==!1&&i.push(_N()),e.foldGutter!==!1&&i.push(lN()),e.drawSelection!==!1&&i.push(vO()),e.dropCursor!==!1&&i.push(SO()),e.allowMultipleSelections!==!1&&i.push(ye.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(KT()),e.syntaxHighlighting!==!1&&i.push(Ey(fN,{fallback:!0})),e.bracketMatching!==!1&&i.push(xN()),e.closeBrackets!==!1&&i.push(UP()),e.autocompletion!==!1&&i.push(e3()),e.rectangularSelection!==!1&&i.push(VO()),t!==!1&&i.push(WO()),e.highlightActiveLine!==!1&&i.push(PO()),e.highlightSelectionMatches!==!1&&i.push(H9()),e.tabSize&&typeof e.tabSize=="number"&&i.push(fa.of(" ".repeat(e.tabSize))),i.concat([ua.of(r.flat())]).filter(Boolean)};const m3="#e5c07b",wg="#e06c75",g3="#56b6c2",v3="#ffffff",Xl="#abb2bf",If="#7d8799",b3="#61afef",x3="#98c379",Sg="#d19a66",y3="#c678dd",w3="#21252b",kg="#2c313a",Cg="#282c34",ld="#353a42",S3="#3E4451",Ag="#528bff",k3=G.theme({"&":{color:Xl,backgroundColor:Cg},".cm-content":{caretColor:Ag},".cm-cursor, .cm-dropCursor":{borderLeftColor:Ag},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:S3},".cm-panels":{backgroundColor:w3,color:Xl},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Cg,color:If,border:"none"},".cm-activeLineGutter":{backgroundColor:kg},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:ld},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:ld,borderBottomColor:ld},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:kg,color:Xl}}},{dark:!0}),C3=pa.define([{tag:j.keyword,color:y3},{tag:[j.name,j.deleted,j.character,j.propertyName,j.macroName],color:wg},{tag:[j.function(j.variableName),j.labelName],color:b3},{tag:[j.color,j.constant(j.name),j.standard(j.name)],color:Sg},{tag:[j.definition(j.name),j.separator],color:Xl},{tag:[j.typeName,j.className,j.number,j.changed,j.annotation,j.modifier,j.self,j.namespace],color:m3},{tag:[j.operator,j.operatorKeyword,j.url,j.escape,j.regexp,j.link,j.special(j.string)],color:g3},{tag:[j.meta,j.comment],color:If},{tag:j.strong,fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.link,color:If,textDecoration:"underline"},{tag:j.heading,fontWeight:"bold",color:wg},{tag:[j.atom,j.bool,j.special(j.variableName)],color:Sg},{tag:[j.processingInstruction,j.string,j.inserted],color:x3},{tag:j.invalid,color:v3}]),A3=[k3,Ey(C3)];var M3=G.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),I3=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:r=!0,readOnly:i=!1,theme:s="light",placeholder:a="",basicSetup:o=!0}=e,l=[];switch(t&&l.unshift(ua.of([L9])),o&&(typeof o=="boolean"?l.unshift(yg()):l.unshift(yg(o))),a&&l.unshift(BO(a)),s){case"light":l.push(M3);break;case"dark":l.push(A3);break;case"none":break;default:l.push(s);break}return r===!1&&l.push(G.editable.of(!1)),i&&l.push(ye.readOnly.of(!0)),[...l]},E3=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class D3{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class Mg{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var cd=null,R3=()=>typeof window>"u"?new Mg:(cd||(cd=new Mg),cd),Ig=Zn.define(),O3=200,T3=[];function N3(n){var{value:e,selection:t,onChange:r,onStatistics:i,onCreateEditor:s,onUpdate:a,extensions:o=T3,autoFocus:l,theme:c="light",height:u=null,minHeight:f=null,maxHeight:h=null,width:p=null,minWidth:g=null,maxWidth:m=null,placeholder:v="",editable:b=!0,readOnly:y=!1,indentWithTab:w=!0,basicSetup:S=!0,root:k,initialState:A}=n,[C,E]=x.useState(),[M,R]=x.useState(),[T,N]=x.useState(),P=x.useState(()=>({current:null}))[0],L=x.useState(()=>({current:null}))[0],$=G.theme({"&":{height:u,minHeight:f,maxHeight:h,width:p,minWidth:g,maxWidth:m},"& .cm-scroller":{height:"100% !important"}}),q=G.updateListener.of(ee=>{if(ee.docChanged&&typeof r=="function"&&!ee.transactions.some(K=>K.annotation(Ig))){P.current?P.current.reset():(P.current=new D3(()=>{if(L.current){var K=L.current;L.current=null,K()}P.current=null},O3),R3().add(P.current));var de=ee.state.doc,ve=de.toString();r(ve,ee)}i&&i(E3(ee))}),Z=I3({theme:c,editable:b,readOnly:y,placeholder:v,indentWithTab:w,basicSetup:S}),oe=[q,$,...Z];return a&&typeof a=="function"&&oe.push(G.updateListener.of(a)),oe=oe.concat(o),x.useLayoutEffect(()=>{if(C&&!T){var ee={doc:e,selection:t,extensions:oe},de=A?ye.fromJSON(A.json,ee,A.fields):ye.create(ee);if(N(de),!M){var ve=new G({state:de,parent:C,root:k});R(ve),s&&s(ve,de)}}return()=>{M&&(N(void 0),R(void 0))}},[C,T]),x.useEffect(()=>{n.container&&E(n.container)},[n.container]),x.useEffect(()=>()=>{M&&(M.destroy(),R(void 0)),P.current&&(P.current.cancel(),P.current=null)},[M]),x.useEffect(()=>{l&&M&&M.focus()},[l,M]),x.useEffect(()=>{M&&M.dispatch({effects:pe.reconfigure.of(oe)})},[c,o,u,f,h,p,g,m,v,b,y,w,S,r,a]),x.useEffect(()=>{if(e!==void 0){var ee=M?M.state.doc.toString():"";if(M&&e!==ee){var de=P.current&&!P.current.isDone,ve=()=>{M&&e!==M.state.doc.toString()&&M.dispatch({changes:{from:0,to:M.state.doc.toString().length,insert:e||""},annotations:[Ig.of(!0)]})};de?L.current=ve:ve()}}},[e,M]),{state:T,setState:N,view:M,setView:R,container:C,setContainer:E}}var P3=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],L3=x.forwardRef((n,e)=>{var{className:t,value:r="",selection:i,extensions:s=[],onChange:a,onStatistics:o,onCreateEditor:l,onUpdate:c,autoFocus:u,theme:f="light",height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:w,indentWithTab:S,editable:k,readOnly:A,root:C,initialState:E}=n,M=Cb(n,P3),R=x.useRef(null),{state:T,view:N,container:P,setContainer:L}=N3({root:C,value:r,autoFocus:u,theme:f,height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:w,indentWithTab:S,editable:k,readOnly:A,selection:i,onChange:a,onStatistics:o,onCreateEditor:l,onUpdate:c,extensions:s,initialState:E});x.useImperativeHandle(e,()=>({editor:R.current,state:T,view:N}),[R,P,T,N]);var $=x.useCallback(Z=>{R.current=Z,L(Z)},[L]);if(typeof r!="string")throw new Error("value must be typeof string but got "+typeof r);var q=typeof f=="string"?"cm-theme-"+f:"cm-theme";return d.jsx("div",se({ref:$,className:""+q+(t?" "+t:"")},M))});L3.displayName="CodeMirror";const _3=()=>{const{isDirty:n}=Vc(),e=()=>{window.location.hash="/"};return d.jsx(ne,{className:"text-grey-700 hover:!text-grey-900","data-testid":"exit-settings",icon:"close",id:"done-button",label:"",link:!0,title:"Close (ESC)",onClick:()=>Ps(n,e)})},j3=""+new URL("logo-loader-88VPEpXE.mp4",import.meta.url).href,B3=""+new URL("logo-loader-dark-CuSPz-zc.mp4",import.meta.url).href,$w=x.createContext(void 0),$3=({children:n})=>{const e=e2(),t=t2(),r=n2(),i=nb(),[s,a]=x.useState(!1);x.useEffect(()=>{a(document.documentElement.classList.contains("dark"))},[]);const o=[e,t,r,i],l=o.map(c=>c.error).find(Boolean);if(l)throw l;return o.some(c=>c.isLoading)?d.jsx("div",{className:"gh-loading-orb-container",style:{width:"100vw",height:"100vh",display:"flex",alignItems:"center",justifyContent:"center",paddingBottom:"8vh"},children:d.jsx("video",{autoPlay:!0,className:"gh-loading-orb",height:"100",preload:"metadata",style:{width:"100px",height:"100px"},width:"100",loop:!0,muted:!0,playsInline:!0,children:d.jsx("source",{src:s?B3:j3,type:"video/mp4"})})}):d.jsx($w.Provider,{value:{settings:e.data.settings,siteData:t.data.site,config:r.data.config,currentUser:i.data},children:n})},Le=()=>x.useContext($w),Ot=({savingDelay:n,onValidate:e}={})=>{const t=x.useRef(null),{siteData:r,settings:i}=Le(),{mutateAsync:s}=Xr(),a=gt(),[o,l]=x.useState(!1),{formState:c,saveState:u,handleSave:f,updateForm:h,setFormState:p,reset:g,validate:m,errors:v,clearError:b,okProps:y}=Xf({initialState:i||[],savingDelay:n,onSave:async()=>{await s?.(S())},onSaveError:a,onValidate:e}),{setGlobalDirtyState:w}=Vc();x.useEffect(()=>{w(c.some(E=>E.dirty))},[c,w]),x.useEffect(()=>{o&&t.current&&t.current.focus()},[o]),x.useEffect(()=>{(!o||u==="saving")&&p(()=>i)},[i]);const S=()=>c?.filter(E=>E.dirty)?.map(E=>({key:E.key,value:E.value}));return{localSettings:c,isEditing:o,saveState:u,focusRef:t,siteData:r,handleSave:async()=>{const E=await f();return E&&l(!1),E},handleCancel:()=>{g(),l(!1)},updateSetting:(E,M)=>{h(R=>R.some(T=>T.key===E)?R.map(T=>T.key===E?{...T,value:M,dirty:!0}:T):[...R,{key:E,value:M,dirty:!0}])},handleEditingChange:E=>{l(E)},validate:m,errors:v,clearError:b,okProps:y}},F3=(n,e)=>{const[t,r]=x.useState("Save"),[i,s]=x.useState(!1);return{savingTitle:t,isSaving:i,onSaveClick:async()=>{s(!0),r("Saving"),await n({fakeWhenUnchanged:e}),setTimeout(()=>{r("Saved"),setTimeout(()=>{r("Save"),s(!1)},1e3)},1e3)}}},H3=({afterClose:n})=>{const{localSettings:e,handleSave:t,updateSetting:r}=Ot(),i=ir(),[s,a]=Te(e,["codeinjection_head","codeinjection_foot"]),[o,l]=x.useState("header"),c=x.useRef(null),u=x.useRef(null),f=x.useMemo(()=>ea(()=>import("./index-B2oDZJ9B.js"),__vite__mapDeps([7,1,2,3,4,5,6]),import.meta.url).then(y=>y.html()),[]),h={extensions:[f],hint:"Code here will be injected into the {{ghost_head}} tag on every page of the site",value:s||"",onChange:y=>r("codeinjection_head",y)},p={extensions:[f],hint:"Code here will be injected into the {{ghost_foot}} tag on every page of the site",value:a||"",onChange:y=>r("codeinjection_foot",y)},g=[{id:"header",title:"Site header",contents:d.jsx(Vh,{height:"full",...h,ref:c,className:"mt-2","data-testid":"header-code",autoFocus:!0}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"},{id:"footer",title:"Site footer",contents:d.jsx(Vh,{height:"full",...p,ref:u,className:"mt-2","data-testid":"footer-code"}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"}],{savingTitle:m,isSaving:v,onSaveClick:b}=F3(t,!0);return x.useEffect(()=>{const y=w=>{(w.metaKey||w.ctrlKey)&&w.key==="s"&&(w.preventDefault(),b())};return window.addEventListener("keydown",y),()=>{window.removeEventListener("keydown",y)}}),d.jsx(Or,{afterClose:n,backDropClick:!1,cancelLabel:"Close",footer:d.jsx(d.Fragment,{}),height:"full",size:"full",testId:"modal-code-injection",children:d.jsxs("div",{className:"flex h-full flex-col",children:[d.jsxs("div",{className:"mb-4 flex items-center justify-between",children:[d.jsx(ft,{level:2,children:"Code injection"}),d.jsx(Ns,{buttons:[{label:"Close",color:"outline",onClick:()=>{i.remove(),n?.()}},{disabled:v,label:m,color:m==="Saved"?"green":"black",onClick:b}]})]}),d.jsx(Kn,{containerClassName:"flex-auto flex flex-col mb-16",selectedTab:o,tabs:g,onTabChange:l})]})})},V3=Ke.create(H3),U3=(n,e)=>`${n}-${e}`,z3=()=>{const[n,e]=x.useState(""),[t,r]=x.useState(!1),i=x.useRef(new Map),[s,a]=x.useState(new Set),o=p=>p.length?p.some(g=>g.toLowerCase().includes(n.toLowerCase())):!0,l=x.useCallback((p,g)=>{i.current.set(p,g),(!n||g.some(v=>v.toLowerCase().includes(n.toLowerCase())))&&a(v=>new Set(v).add(p))},[n]),c=x.useCallback(p=>{i.current.delete(p),a(g=>{const m=new Set(g);return m.delete(p),m})},[]);x.useEffect(()=>{const p=new Set;i.current.forEach((g,m)=>{(!n||g.some(b=>b.toLowerCase().includes(n.toLowerCase())))&&p.add(m)}),a(p)},[n]);const u=x.useCallback(p=>s.size===1&&s.has(p),[s]),f=x.useCallback(()=>s,[s]),h=p=>{if(!n)return p;if(typeof p=="string"){const g=n.split(/\s+/).map(b=>b.toLowerCase()),m=g.map(b=>b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|");return p.split(new RegExp(`(${m})`,"gi")).map(b=>g.includes(b.toLowerCase())?d.jsx("span",{className:"bg-yellow-500/40",children:b}):b)}else return Array.isArray(p)?p.map(g=>h(g)):p&&typeof p=="object"&&p?Y.Children.map(p,g=>g&&typeof g=="object"&&"props"in g?h(g.props.children):g):p};return{filter:n,setFilter:e,checkVisible:o,highlightKeywords:h,noResult:t,setNoResult:r,registerComponent:l,unregisterComponent:c,getVisibleComponents:f,isOnlyVisibleComponent:u}},Fw=x.createContext({route:"",updateRoute:()=>{},loadingModal:!1,eventTarget:new EventTarget});function W3(n,e){if(!e)return null;const t=new RegExp(`/${n}/(.*)`),r=e?.match(t);return r?r[1]:null}const q3=(n,e,t,r)=>{let i=window.location.hash;i=i.substring(1);const s=`${window.location.protocol}//${window.location.hostname}`,a=new URL(i,s),o=W3(n,a.pathname);if(!r||!t)return{pathName:o||""};const l=a.searchParams;if(o&&r&&t){const[,c]=Object.entries(r).find(([h])=>ud(e||"",h))||[],[u,f]=Object.entries(r).find(([h])=>ud(o,h))||[];return{pathName:o,changingModal:f&&f!==c,modal:u&&f?t().then(({default:h})=>{Ke.show(h[f],{pathName:o,params:ud(o,u),searchParams:l})}):void 0}}return{pathName:""}},ud=(n,e)=>{const t=new RegExp("^"+e.replace(/:(\w+)/g,"(?<$1>[^/]+)")+"/?$"),r=n.match(t);if(r)return r.groups||{}},G3=({basePath:n,modals:e,children:t})=>{const{externalNavigate:r}=r2(),[i,s]=x.useState(void 0),[a,o]=x.useState(!1),[l]=x.useState(new EventTarget),c=x.useCallback(u=>{const f=typeof u=="string"?{route:u}:u;if(f.isExternal){r(f);return}const h=f.route.replace(/^\//,"");h===i||(h?window.location.hash=`/${n}/${h}`:window.location.hash=`/${n}`),l.dispatchEvent(new CustomEvent("routeChange",{detail:{newPath:h,oldPath:i}}))},[n,l,r,i]);return x.useEffect(()=>{setTimeout(()=>{e?.load()},1e3)},[]),x.useEffect(()=>{const u=()=>{s(f=>{const{pathName:h,modal:p,changingModal:g}=q3(n,f,e?.load,e?.paths);return p&&g&&(o(!0),p.then(()=>o(!1))),h})};return u(),window.addEventListener("hashchange",u),()=>{window.removeEventListener("hashchange",u)}},[]),i===void 0?null:d.jsx(Fw.Provider,{value:{route:i,updateRoute:c,loadingModal:a,eventTarget:l},children:t})};function be(){return x.useContext(Fw)}function K3(n,e){const{eventTarget:t}=be(),r=x.useCallback(n,e);x.useEffect(()=>{const i=s=>{const a=s;r(a.detail.newPath,a.detail.oldPath)};return t.addEventListener("routeChange",i),()=>t.removeEventListener("routeChange",i)},[t,r])}const Hw=x.createContext({updateSection:()=>{},updateNav:()=>{},currentSection:null,updateNavigatedSection:()=>{},scrollToSection:()=>{}}),mu=()=>x.useContext(Hw),Vw=193,dd=(n,e)=>{const t=document.getElementById("admin-x-settings-scroller"),r=n.getBoundingClientRect().top+t.scrollTop;t.scrollTo({behavior:e?"smooth":"instant",top:r-Vw})},Z3=(n,e)=>{const t=document.getElementById("admin-x-settings-sidebar-scroller"),r=n.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.top+40;if(r.top>=s&&r.left>=i.left&&r.right<=i.right&&r.bottom<=i.bottom||!["auto","scroll"].includes(getComputedStyle(t).overflowY))return;const a=e?"smooth":"instant";t.querySelector("[data-setting-nav-item]")===n?t.scrollTo({top:0,behavior:a}):r.top<s?t.scrollTo({top:t.scrollTop+r.top-s,behavior:a}):t.scrollTo({top:t.scrollTop+r.top-i.top-i.height+r.height+4,behavior:a})},Y3=(n,e,t)=>{const r=e.map(({isIntersecting:o,target:l})=>({isIntersecting:o,id:Object.entries(t).find(([,c])=>c===l)?.[0]})).filter(o=>o.id),i=r.filter(o=>!n.includes(o.id)&&o.isIntersecting).map(o=>o.id),s=r.filter(o=>!o.isIntersecting).map(o=>o.id),a=n.filter(o=>!s.includes(o)).concat(i);return a.sort((o,l)=>{const c=t[o],u=t[l];return!c||!u?0:c.getBoundingClientRect().top-u.getBoundingClientRect().top}),a},J3=({children:n})=>{const[e,t]=x.useState(null),r=x.useRef({}),i=x.useRef(null),[s,a]=x.useState([]),[o,l]=x.useState(null),[c,u]=x.useState(!1),[f,h]=x.useState(!1),[,p]=x.useState(!1),g=x.useCallback(k=>{t(k),u(!0)},[]),m=x.useRef({}),v=x.useCallback(()=>{const k=new IntersectionObserver(A=>{a(C=>{const E=Y3(C,A,r.current);return E.length&&l(E[0]),E})},{rootMargin:`-${Vw-50}px 0px -40% 0px`});return Object.values(r.current).forEach(A=>k.observe(A)),k},[]),b=x.useCallback((k,A)=>{r.current[k]!==A&&(r.current[k]&&i.current?.unobserve(r.current[k]),r.current[k]=A,i.current?.observe(A),!f&&k===e&&(dd(A,!1),h(!0)))},[i,e,f]),y=x.useCallback((k,A)=>{m.current[k]=A},[]),w=x.useCallback(k=>{r.current[k]&&dd(r.current[k],!0)},[]),S=x.useMemo(()=>e&&s.includes(e)?e:s.length?s[0]:o,[s,o,e]);return x.useEffect(()=>{c&&(e&&r.current[e]?h(k=>(dd(r.current[e],k),!0)):h(!0),setTimeout(()=>v()))},[c,e,v]),x.useEffect(()=>{c&&S&&m.current[S]&&p(k=>(Z3(m.current[S],k),!0))},[c,S]),d.jsx(Hw.Provider,{value:{updateSection:b,updateNav:y,currentSection:S,updateNavigatedSection:g,scrollToSection:w},children:n})},X3=n=>{const{updateSection:e}=mu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&e(n,t.current)},[n,e]),{ref:t}},Q3=n=>{const{updateNav:e}=mu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&(Array.isArray(n)?n:[n]).forEach(i=>{e(i,t.current)})},[n,e]),{ref:t,props:{"data-setting-nav-item":!0}}},va="IntegrationsResponseType",M6=va,eL=Qr({dataType:va,path:"/integrations/",defaultSearchParams:{include:"api_keys,webhooks",limit:"50"}}),I6=ze({method:"POST",path:()=>"/integrations/",body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:va,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.concat(n.integrations)}}}),E6=ze({method:"PUT",path:n=>`/integrations/${n.id}/`,body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:va,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.map(t=>n.integrations.find(({id:i})=>i===t.id)||t)}}}),tL=ze({method:"DELETE",path:n=>`/integrations/${n}/`,updateQueries:{dataType:va,emberUpdateType:"delete",update:(n,e,t)=>({...e,integrations:e.integrations.filter(r=>r.id!==t)})}}),nL=""+new URL("Alto-DUBY3bpV.png",import.meta.url).href,rL=""+new URL("Bulletin-Dk9xtKp1.png",import.meta.url).href,iL=""+new URL("Casper-DD4Wf4m4.png",import.meta.url).href,sL=""+new URL("Dawn-LGQGnvjr.png",import.meta.url).href,aL=""+new URL("Digest-BLKH5JOV.png",import.meta.url).href,oL=""+new URL("Dope-CSZZPvqs.png",import.meta.url).href,lL=""+new URL("Ease-DYfAZLvD.png",import.meta.url).href,cL=""+new URL("Edge-_GS6qiG-.png",import.meta.url).href,uL=""+new URL("Edition-BvM1Yi9K.png",import.meta.url).href,dL=""+new URL("Episode-Cwq-Mrvr.png",import.meta.url).href,fL=""+new URL("Headline-DcIZ47eY.png",import.meta.url).href,hL=""+new URL("Journal-BLX3grkP.png",import.meta.url).href,pL=""+new URL("London-D_cZW51W.png",import.meta.url).href,mL=""+new URL("Ruby-rSwalIMT.png",import.meta.url).href,gL=""+new URL("Solo-D2tiac6Z.png",import.meta.url).href,vL=""+new URL("Source-B2xHWmHB.png",import.meta.url).href,bL=""+new URL("Source-Magazine-DpXmb6XM.png",import.meta.url).href,xL=""+new URL("Source-Newsletter-DPpaH3AQ.png",import.meta.url).href,yL=""+new URL("Taste-DFhBlbR7.png",import.meta.url).href,wL=""+new URL("Wave-DajHSkAT.png",import.meta.url).href,Uw=[{name:"Source",category:"News",previewUrl:"https://source.ghost.io/",ref:"default",image:vL,variants:[{category:"Magazine",previewUrl:"https://source-magazine.ghost.io/",image:bL},{category:"Newsletter",previewUrl:"https://source-newsletter.ghost.io/",image:xL}]},{name:"Casper",category:"Blog",previewUrl:"https://demo.ghost.io/",ref:"TryGhost/Casper",image:iL},{name:"Edition",category:"Newsletter",url:"https://github.com/TryGhost/Edition",previewUrl:"https://edition.ghost.io/",ref:"TryGhost/Edition",image:uL},{name:"Solo",category:"Blog",url:"https://github.com/TryGhost/Solo",previewUrl:"https://solo.ghost.io",ref:"TryGhost/Solo",image:gL},{name:"Taste",category:"Blog",url:"https://github.com/TryGhost/Taste",previewUrl:"https://taste.ghost.io",ref:"TryGhost/Taste",image:yL},{name:"Episode",category:"Podcast",url:"https://github.com/TryGhost/Episode",previewUrl:"https://episode.ghost.io",ref:"TryGhost/Episode",image:dL},{name:"Digest",category:"Newsletter",url:"https://github.com/TryGhost/Digest",previewUrl:"https://digest.ghost.io/",ref:"TryGhost/Digest",image:aL},{name:"Bulletin",category:"Newsletter",url:"https://github.com/TryGhost/Bulletin",previewUrl:"https://bulletin.ghost.io/",ref:"TryGhost/Bulletin",image:rL},{name:"Alto",category:"Blog",url:"https://github.com/TryGhost/Alto",previewUrl:"https://alto.ghost.io",ref:"TryGhost/Alto",image:nL},{name:"Dope",category:"Magazine",url:"https://github.com/TryGhost/Dope",previewUrl:"https://dope.ghost.io",ref:"TryGhost/Dope",image:oL},{name:"Wave",category:"Podcast",url:"https://github.com/TryGhost/Wave",previewUrl:"https://wave.ghost.io",ref:"TryGhost/Wave",image:wL},{name:"Edge",category:"Photography",url:"https://github.com/TryGhost/Edge",previewUrl:"https://edge.ghost.io",ref:"TryGhost/Edge",image:cL},{name:"Dawn",category:"Newsletter",url:"https://github.com/TryGhost/Dawn",previewUrl:"https://dawn.ghost.io/",ref:"TryGhost/Dawn",image:sL},{name:"Ease",category:"Documentation",url:"https://github.com/TryGhost/Ease",previewUrl:"https://ease.ghost.io",ref:"TryGhost/Ease",image:lL},{name:"Headline",category:"News",url:"https://github.com/TryGhost/Headline",previewUrl:"https://headline.ghost.io",ref:"TryGhost/Headline",image:fL},{name:"Ruby",category:"Magazine",url:"https://github.com/TryGhost/Ruby",previewUrl:"https://ruby.ghost.io",ref:"TryGhost/Ruby",image:mL},{name:"London",category:"Photography",url:"https://github.com/TryGhost/London",previewUrl:"https://london.ghost.io",ref:"TryGhost/London",image:pL},{name:"Journal",category:"Newsletter",url:"https://github.com/TryGhost/Journal",previewUrl:"https://journal.ghost.io/",ref:"TryGhost/Journal",image:hL}],Eg=""+new URL("orb-black-1-44nQS0Zf.png",import.meta.url).href,SL=""+new URL("orb-black-2-ua9uyJck.png",import.meta.url).href,Dg=""+new URL("orb-black-3-4B29Ahnj.png",import.meta.url).href,Rg=""+new URL("orb-black-4-BoaEuayq.png",import.meta.url).href,kL=""+new URL("orb-black-5-CC4bN-9P.png",import.meta.url).href,CL="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201818.2%202500'%20style='enable-background:new%200%200%201818.2%202500'%20xml:space='preserve'%3e%3ctitle%3egoogle-docs%3c/title%3e%3cpath%20d='M1136.4%200h-966C79.6%200%200%2079.5%200%20170.5v2159.1c0%2090.9%2079.5%20170.5%20170.5%20170.5h1477.3c90.9%200%20170.5-79.5%20170.5-170.5V681.8l-397.7-284.1L1136.4%200z'%20style='fill:%234285f4'/%3e%3cpath%20d='M454.5%201818.2h909.1v-113.6h-909l-.1%20113.6zm0%20227.3h681.8v-113.6H454.5v113.6zm0-795.5v113.6h909.1V1250H454.5zm0%20340.9h909.1v-113.6h-909l-.1%20113.6z'%20style='fill:%23f1f1f1'/%3e%3cpath%20d='M1136.4%200v511.4c0%2090.9%2079.5%20170.4%20170.4%20170.4h511.4L1136.4%200z'%20style='fill:%23a1c2fa'/%3e%3c/svg%3e",AL=""+new URL("mailchimp-DwTEN-tS.svg",import.meta.url).href,ML="data:image/svg+xml,%3csvg%20height='546'%20viewBox='0%200%20569%20546'%20width='569'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epatreon%3c/title%3e%3cg%20fill='%23FF424D'%3e%3ccircle%20cx='362.59'%20cy='204.59'%20data-fill='1'%20r='204.59'/%3e%3cpath%20data-fill='1'%20d='M0%200h100v545.8H0z'/%3e%3c/g%3e%3c/svg%3e",Og="data:image/svg+xml,%3csvg%20width='152'%20height='179'%20viewBox='0%200%20152%20179'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epaypal%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l-2.365%2015a4.168%204.168%200%200%200%204.118%204.818H69.76a6.948%206.948%200%200%200%206.863-5.865l.283-1.468%205.442-34.507.351-1.907a6.947%206.947%200%200%201%206.862-5.865h4.322c27.984%200%2049.896-11.37%2056.299-44.25%202.675-13.74%201.292-25.208-5.783-33.27-2.14-2.439-4.802-4.455-7.907-6.1'%20fill='%23238EC2'/%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l8.609-54.588-.267%201.711c.609-3.86%203.909-6.704%207.817-6.704h16.288c31.989%200%2057.037-12.996%2064.356-50.582.217-1.113.402-2.191.568-3.251'%20fill='%2320274F'/%3e%3cpath%20d='M56.978%2045.638a6.945%206.945%200%200%201%206.863-5.866h43.514c5.155%200%209.961.337%2014.356%201.045%201.256.202%202.478.435%203.665.698a53.92%2053.92%200%200%201%203.455.885c.558.162%201.106.333%201.646.512%202.157.717%204.166%201.562%206.015%202.541%202.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27L56.978%2045.638'%20fill='%23253667'/%3e%3c/g%3e%3c/svg%3e",IL=""+new URL("slackicon-CBMgLWU6.png",import.meta.url).href,EL="data:image/svg+xml,%3csvg%20width='86'%20height='89'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3etypeform%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M40.28%2087.561c12.464.154%2021.16-3.994%2030.135-12.175%208.975-8.18%2014.306-16.867%2014.741-28.73.436-11.862-3.412-21.43-12.564-30.581C63.441%206.923%2051.64.9%2039.4.899%2027.158.898%2018.967%206.252%2011.385%2016.07c-7.581%209.818-9.237%2022.212-9.894%2033.921-.657%2011.71-1.15%2017.111%206.608%2024.625%207.758%207.514%2019.718%2012.791%2032.182%2012.945z'%20stroke='%23262627'/%3e%3cpath%20d='M29.136%2037.976v-4.885h25.918v4.885H44.679v27.998H39.51V37.976z'%20fill='%23262627'%20fill-rule='nonzero'/%3e%3c/g%3e%3c/svg%3e",DL=""+new URL("zero-bounce-ChbZnu35.png",import.meta.url).href,zw=[{ghostImage:SL,appImage:IL,title:"Share scheduled posts with your team in Slack",url:"https://zapier.com/webintent/create-zap?template=359499"},{ghostImage:Dg,appImage:ML,title:"Connect Patreon to your Ghost membership site",url:"https://zapier.com/webintent/create-zap?template=75801"},{ghostImage:Rg,appImage:DL,title:"Protect email delivery with email verification",url:"https://zapier.com/webintent/create-zap?template=359415"},{ghostImage:kL,appImage:Og,title:"Add members for successful sales in PayPal",url:"https://zapier.com/webintent/create-zap?template=184423"},{ghostImage:Dg,appImage:Og,title:"Unsubscribe members who cancel a subscription in PayPal",url:"https://zapier.com/webintent/create-zap?template=359348"},{ghostImage:Eg,appImage:CL,title:"Send new post drafts from Google Docs to Ghost",url:"https://zapier.com/webintent/create-zap?template=50924"},{ghostImage:Rg,appImage:EL,title:"Survey new members using Typeform",url:"https://zapier.com/webintent/create-zap?template=359407"},{ghostImage:Eg,appImage:AL,title:"Sync email subscribers in Ghost + Mailchimp",url:"https://zapier.com/webintent/create-zap?template=359342"}],Ww=x.createContext({officialThemes:Uw,zapierTemplates:zw,search:{filter:"",setFilter:()=>{},checkVisible:()=>!0,highlightKeywords:()=>"",noResult:!1,setNoResult:()=>{},registerComponent:()=>{},unregisterComponent:()=>{},getVisibleComponents:()=>new Set,isOnlyVisibleComponent:()=>!1},sortingState:[]}),RL=({children:n,...e})=>{const t=z3(),[r,i]=x.useState([{type:"offers",option:"date-added",direction:"desc"}]);return d.jsx(Ww.Provider,{value:{officialThemes:Uw,zapierTemplates:zw,...e,search:t,sortingState:r,setSortingState:i},children:d.jsx($3,{children:d.jsx(J3,{children:n})})})},gu=()=>x.useContext(Ww),D6=()=>gu().officialThemes,ba=()=>gu().search,R6=()=>gu().upgradeStatus,OL=()=>{const{sortingState:n,setSortingState:e}=gu();return{sortingState:n,setSortingState:e}},Se=({keywords:n,navid:e,children:t,...r})=>{const{checkVisible:i,noResult:s,registerComponent:a,unregisterComponent:o}=ba(),{route:l}=be(),[c,u]=x.useState(!1),{ref:f}=X3(e),h=x.useId(),p=U3(e||"component",h);x.useEffect(()=>(a(p,n),()=>{o(p)}),[p,n,a,o]),x.useEffect(()=>{if(u(l===e),l===e){const v=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(v)}},[l,e]);const m=Y.Children.toArray(t).some(v=>Y.isValidElement(v)&&v.type==="img")?d.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 md:-mx-7 md:-mb-7",children:Y.Children.map(t,v=>Y.isValidElement(v)&&v.type==="img"?Y.cloneElement(v,{className:`${v.props.className||""} h-full w-full rounded-b-xl`.trim()}):v)}):t;return d.jsx(uD,{ref:f,highlight:c,isVisible:i(n)||s,navid:e,...r,children:m})},TL=({keywords:n})=>d.jsx(Se,{customHeader:d.jsxs("div",{className:"z-10 flex items-start justify-between",children:[d.jsx(Kr,{description:"Add custom code to your publication.",title:"Code injection"}),d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Open",size:"sm",onClick:()=>{Ke.show(V3)}})]}),description:"Add custom code to your publication",keywords:n,navid:"code-injection",testId:"code-injection",title:"Code injection"}),NL=Ce(TL,"Code injection"),PL=ze({method:"POST",path:()=>"/db/",body:n=>{const e=new FormData;return e.append("importfile",n),e}}),LL=ze({method:"DELETE",path:()=>"/db/"}),_L=()=>Ef("/db/"),jL=({keywords:n})=>{const{mutateAsync:e}=LL(),t=Df(),r=gt(),i=()=>{Ke.show(Gr,{title:"Would you really like to delete all content from your blog?",prompt:"This is permanent! No backups, no restores, no magic undo button. We warned you, k?",okColor:"red",okLabel:"Delete",onOk:async s=>{try{await e(null),pn({title:"All content deleted from database.",type:"success"}),s?.remove(),await t.refetchQueries()}catch(a){r(a)}}})};return d.jsx(Se,{customHeader:d.jsx(Kr,{description:"Permanently delete all posts and tags from the database, a hard reset",title:"Danger zone"}),keywords:n,navid:"dangerzone",testId:"dangerzone",children:d.jsx("div",{children:d.jsx(ne,{color:"red",label:"Delete all content",onClick:i})})})},BL=Ce(jL,"Danger zone"),$L=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("history/view")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"View history",size:"sm",onClick:t}),description:"View system event log",keywords:n,navid:"history",testId:"history",title:"History"})},FL=Ce($L,"History"),HL=""+new URL("integrations-settings-B7r1LnOP.png",import.meta.url).href,Eh=n=>{const{config:e}=Le();return e.labs[n]||!1};function qw(){const{config:n,settings:e}=Le(),[t]=Te(e,["pintura"]),[r,i]=x.useState(!1),[s,a]=x.useState(!1),[o,l]=x.useState(!1),c=x.useRef(!1),[u]=Te(e,["pintura_js_url"]),[f]=Te(e,["pintura_css_url"]);let h=t&&r&&s||!1;const p=n?.pintura;x.useEffect(()=>{let v=p?.js?p?.js:u||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=xd();v=window.location.origin+b.replace(/\/$/,"")+v}if(window.pintura){i(!0);return}try{const b=new URL(v);import(`${b.protocol}//${b.host}${b.pathname}`).then(()=>{i(!0)}).catch(S=>{ys(S)})}catch(b){ys(b)}}},[u,p?.js]),x.useEffect(()=>{let v=p?.css?p?.css:f||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=xd();v=window.location.origin+b.replace(/\/$/,"")+v}try{if(document.querySelector(`link[href="${v}"]`))a(!0);else{let y=document.createElement("link");y.rel="stylesheet",y.type="text/css",y.href=v,y.onload=()=>{a(!0)},document.head.appendChild(y)}}catch(b){ys(b)}}},[f,p?.css]);const g=x.useCallback(({image:m,handleSave:v})=>{if(m&&h){const b=new URL(m);b.searchParams.has("v")||b.searchParams.set("v",Date.now().toString());const y=b.href,w=window.pintura.openDefaultEditor({src:y,enableTransparencyGrid:!0,util:"crop",utils:["crop","filter","finetune","redact","annotate","trim","frame","resize"],frameOptions:[[void 0,S=>S.labelNone],["solidSharp",S=>S.frameLabelMatSharp],["solidRound",S=>S.frameLabelMatRound],["lineSingle",S=>S.frameLabelLineSingle],["hook",S=>S.frameLabelCornerHooks],["polaroid",S=>S.frameLabelPolaroid]],cropSelectPresetFilter:"landscape",cropSelectPresetOptions:[[void 0,"Custom"],[1,"Square"],[2/1,"2:1"],[3/2,"3:2"],[4/3,"4:3"],[16/10,"16:10"],[16/9,"16:9"],[1/2,"1:2"],[2/3,"2:3"],[3/4,"3:4"],[10/16,"10:16"],[9/16,"9:16"]],locale:{labelButtonExport:"Save and close"},previewPad:!0,willClose:()=>c.current?(l(!1),!0):!1});w.on("loaderror",()=>{i2("Pintura editor failed to load")}),w.on("process",S=>{v(S.dest)}),l(!0)}},[h]);return x.useEffect(()=>{const m=b=>{b.key==="Escape"&&b.stopPropagation()};if(!o)return;const v=b=>{b.target instanceof Element&&b.target.closest('.PinturaModal button[title="Close"]')&&(c.current=!0)};return window.addEventListener("click",v,{capture:!0}),window.addEventListener("keydown",m,{capture:!0}),()=>{window.removeEventListener("click",v,{capture:!0}),window.removeEventListener("keydown",m,{capture:!0})}},[o]),{isEnabled:h,openEditor:g}}const $r=({icon:n,title:e,detail:t,action:r,onDelete:i,active:s,disabled:a,testId:o,custom:l=!1})=>{const{updateRoute:c}=be(),u=p=>{p?.stopPropagation(),a?c({route:"pro",isExternal:!0}):r()},f=p=>{p?.stopPropagation(),i?.()},h=l?d.jsx(ne,{color:"red",label:"Delete",link:!0,onClick:f}):a?d.jsx(ne,{icon:"lock-locked",label:"Upgrade",link:!0,onClick:u}):d.jsx(ne,{color:"green",label:"Configure",link:!0,onClick:u});return d.jsx(Zc,{action:h,avatar:n,className:a?"opacity-50 saturate-0":"",detail:t,hideActions:!a,testId:o,title:s?d.jsxs("span",{className:"inline-flex items-center gap-1",children:[e," ",d.jsx("span",{className:"inline-flex items-center rounded-full bg-[rgba(48,207,67,0.15)] px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wide text-green",children:"Active"})]}):e,onClick:u})},VL=()=>{const{config:n}=Le(),{updateRoute:e}=be(),t=h=>{e(h)},r=n.hostSettings?.limits?.customIntegrations?.disabled,i=Eh("transistor"),s=qw(),{settings:a}=Le(),[o,l,c,u,f]=Te(a,["unsplash","firstpromoter","slack_url","slack_username","transistor"]);return d.jsxs(Yi,{titleSeparator:!1,children:[d.jsx($r,{action:()=>{t("integrations/zapier")},detail:"Automation for your apps",disabled:r,icon:d.jsx(ge,{name:"zapier",size:32}),testId:"zapier-integration",title:"Zapier"}),d.jsx($r,{action:()=>{t("integrations/slack")},active:c&&u,detail:"A messaging app for teams",icon:d.jsx(ge,{name:"slack",size:32}),testId:"slack-integration",title:"Slack"}),d.jsx($r,{action:()=>{t("integrations/unsplash")},active:o,detail:"Beautiful, free photos",icon:d.jsx(ge,{name:"unsplash",size:32}),testId:"unsplash-integration",title:"Unsplash"}),d.jsx($r,{action:()=>{t("integrations/firstpromoter")},active:l,detail:"Launch your member referral program",icon:d.jsx(ge,{name:"firstpromoter",size:32}),testId:"firstpromoter-integration",title:"FirstPromoter"}),d.jsx($r,{action:()=>{t("integrations/pintura")},active:s.isEnabled,detail:"Advanced image editing",icon:d.jsx(ge,{name:"pintura",size:32}),testId:"pintura-integration",title:"Pintura"}),i&&d.jsx($r,{action:()=>{t("integrations/transistor")},active:f,detail:"Give your members access to private podcasts",icon:d.jsx(ge,{name:"transistor",size:32}),testId:"transistor-integration",title:"Transistor"})]})},UL=({integrations:n})=>{const{updateRoute:e}=be(),{mutateAsync:t}=tL(),r=gt();return n.length?d.jsx(Yi,{borderTop:!1,children:n.map(i=>d.jsx($r,{action:()=>e({route:`integrations/${i.id}`}),detail:d.jsx("div",{className:"line-clamp-2 break-words",children:d.jsx("span",{title:`${i.name}: ${i.description||"No description"}`,children:i.description||"No description"})}),icon:i.icon_image?d.jsx("img",{className:"size-8 shrink-0 object-cover",role:"presentation",src:i.icon_image}):d.jsx(ge,{className:"w-8 shrink-0",name:"integration"}),title:i.name,custom:!0,onDelete:()=>{Ke.show(Gr,{title:"Are you sure?",prompt:"Deleting this integration will remove all webhooks and api keys associated with it.",okColor:"red",okLabel:"Delete Integration",onOk:async s=>{try{await t(i.id),s?.remove(),pn({title:"Integration deleted",type:"info",options:{position:"bottom-left"}})}catch(a){r(a)}}})}}))}):d.jsx(ei,{icon:"integration",children:"No custom integration."})},zL=({keywords:n})=>{const[e,t]=x.useState("built-in"),{data:{integrations:r}={integrations:[]}}=eL(),{updateRoute:i}=be(),s=[{id:"built-in",title:"Built-in",contents:d.jsx(VL,{})},{id:"custom",title:"Custom",contents:d.jsx(UL,{integrations:r.filter(o=>o.type==="custom")})}],a=d.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}});return d.jsx(Se,{customButtons:a,customHeader:d.jsxs("div",{className:"sm:-mt-5 md:-mt-7",children:[d.jsx("div",{className:"-mx-5 overflow-hidden rounded-t-xl border-b border-grey-200 md:-mx-7 dark:border-grey-800",children:d.jsx("img",{className:"size-full",src:HL})}),d.jsxs("div",{className:" z-10 mt-6 flex items-start justify-between",children:[d.jsx(Kr,{description:"Make Ghost work with apps and tools.",title:"Integrations"}),d.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}})]})]}),keywords:n,navid:"integrations",testId:"integrations",children:d.jsx(Kn,{selectedTab:e,tabs:s,onTabChange:t})})},WL=Ce(zL,"Integrations");function qL(n,e={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(n,{props:e})}const Ql=({label:n,flag:e,disabled:t})=>{const{settings:r}=Le(),i=JSON.parse(rb(r,"labs")||"{}"),{mutateAsync:s}=Xr(),a=Df(),o=gt();return d.jsx(rn,{checked:i[e],disabled:t,label:n,labelClasses:"sr-only",name:`feature-${e}`,onChange:async()=>{const l=!i[e];try{await s([{key:"labs",value:JSON.stringify({...i,[e]:l})}]),qL("Feature Toggled",{state:l?"on":"off",feature:e}),a.setQueriesData([s2],c=>({config:{...c.config,labs:{...c.config.labs,[e]:l}}}))}catch(c){o(c)}}})},Si=({title:n,detail:e,action:t})=>d.jsx(Zc,{action:t,bgOnHover:!1,detail:e,paddingRight:!1,title:n}),GL=ze({method:"POST",path:()=>"/redirects/upload/",body:n=>{const e=new FormData;return e.append("redirects",n),e}}),KL=()=>Ef("/redirects/download/"),ZL=ze({method:"POST",path:()=>"/settings/routes/yaml/",body:n=>{const e=new FormData;return e.append("routes",n),e}}),YL=()=>Ef("/settings/routes/yaml/"),JL=()=>{const{mutateAsync:n}=GL(),{mutateAsync:e}=ZL(),t=gt(),[r,i]=x.useState(!1),[s,a]=x.useState(!1);return d.jsxs(Yi,{titleSeparator:!1,children:[d.jsx(Si,{action:d.jsx(Ql,{flag:"superEditors"}),detail:d.jsx(d.Fragment,{children:"Allows newly-assigned editors to manage members and comments in addition to regular roles."}),title:"Enhanced Editor role (beta)"}),d.jsx(Si,{action:d.jsx(Ql,{flag:"editorExcerpt"}),detail:d.jsx(d.Fragment,{children:"Adds the excerpt input below the post title in the editor"}),title:"Show post excerpt inline"}),d.jsx(Si,{action:d.jsx(Ql,{flag:"additionalPaymentMethods"}),detail:d.jsxs(d.Fragment,{children:["Enable support for CashApp, iDEAL, Bancontact, and others. ",d.jsx("a",{className:"text-green",href:"https://ghost.org/help/payment-methods",rel:"noopener noreferrer",target:"_blank",children:"Learn more →"})]}),title:"Additional payment methods"}),d.jsx(Si,{action:d.jsxs("div",{className:"flex flex-col items-end gap-1",children:[d.jsx(tc,{id:"upload-redirects",onUpload:async o=>{try{i(!0),await n(o),pn({title:"Redirects uploaded",type:"success"})}catch(l){t(l)}finally{i(!1)}},children:d.jsx(ne,{color:"grey",label:r?"Uploading ...":"Upload redirects file",size:"sm",tag:"div"})}),d.jsx(ne,{color:"green",label:"Download current redirects",link:!0,onClick:()=>KL()})]}),detail:d.jsxs(d.Fragment,{children:["Configure redirects for old or moved content, ",d.jsx("br",{})," more info in the ",d.jsx("a",{className:"text-green",href:"https://ghost.org/tutorials/implementing-redirects/",rel:"noopener noreferrer",target:"_blank",children:"docs"})]}),title:"Redirects"}),d.jsx(Si,{action:d.jsxs("div",{className:"flex flex-col items-end gap-1",children:[d.jsx(tc,{id:"upload-routes",onUpload:async o=>{try{a(!0),await e(o),pn({type:"success",title:"Routes uploaded"})}catch(l){t(l)}finally{a(!1)}},children:d.jsx(ne,{color:"grey",label:s?"Uploading ...":"Upload routes file",size:"sm",tag:"div"})}),d.jsx(ne,{color:"green",label:"Download current routes",link:!0,onClick:()=>YL()})]}),detail:"Configure dynamic routing by modifying the routes.yaml file",title:"Routes"})]})},XL="data:image/svg+xml,%3csvg%20width='267'%20height='285'%20viewBox='0%200%20267%20285'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='165'%20cy='183'%20r='102'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='68'%20cy='71'%20r='31'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='99'%20cy='17'%20r='17'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='118'%20cy='70'%20r='7'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='45'%20cy='32'%20r='3'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='12.5'%20cy='83.5'%20r='12.5'%20fill='%23F1F3F4'/%3e%3c/svg%3e",Dh="InvitesResponseType",QL=Rf({dataType:Dh,path:"/invites/",permissions:["Owner","Administrator"],defaultSearchParams:{limit:"100",include:"roles"},defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.invites),r=e[e.length-1].meta;return{invites:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),e_=ze({method:"POST",path:()=>"/invites/",body:({email:n,roleId:e})=>({invites:[{email:n,role_id:e,expires:null,status:null,token:null}]}),updateQueries:{dataType:Dh,emberUpdateType:"createOrUpdate",update:Of("invites")}}),t_=ze({path:n=>`/invites/${n}/`,method:"DELETE",updateQueries:{dataType:Dh,emberUpdateType:"delete",update:a2("invites")}}),n_="RolesResponseType",r_=Qr({dataType:n_,path:"/roles/",defaultSearchParams:{limit:"100"}});function ec(n,e){return n.filter(t=>t.roles.find(r=>r.name===e))}function i_(n,e){return n.filter(t=>t.roles.find(r=>e.includes(r.name)))}function s_(n){return ec(n,"Owner")[0]}const Gw=()=>{const{currentUser:n}=Le(),{data:{users:e,meta:t,isEnd:r}={users:[]},isLoading:i,fetchNextPage:s}=o2(),{data:{invites:a,meta:o,isEnd:l}={invites:[]},isLoading:c,fetchNextPage:u}=QL(),{data:{roles:f}={},isLoading:h}=r_(),p=x.useMemo(()=>s_(e),[e]),g=x.useMemo(()=>ec(e,"Administrator"),[e]),m=x.useMemo(()=>i_(e,["Editor","Super Editor"]),[e]),v=x.useMemo(()=>ec(e,"Author"),[e]),b=x.useMemo(()=>ec(e,"Contributor"),[e]),y=x.useMemo(()=>a.map(w=>{let S=f?.find(k=>w.role_id===k.id);return{...w,role:S?.name}}),[a,f]);return{totalUsers:t?.pagination.total||0,totalInvites:o?.pagination.total||0,users:e,ownerUser:p,adminUsers:g,editorUsers:m,authorUsers:v,contributorUsers:b,currentUser:n,invites:y,isLoading:i||c||h,hasNextPage:r===!1,invitesHasNextPage:l===!1,fetchNextPage:s,fetchNextInvitePage:u}},a_=ea(()=>import("./index-BPYePamp.js").then(n=>n.i),__vite__mapDeps([8,1,2,9]),import.meta.url);class Kw extends Error{errorType;errorDetails;constructor({errorType:e,errorDetails:t,message:r}){super(r),this.errorType=e,this.errorDetails=t}}class o_ extends Kw{constructor(e){super(Object.assign({errorType:"IncorrectUsageError"},e))}}class xa extends Kw{constructor(e){super(Object.assign({errorType:"HostLimitError"},e))}}const ya=()=>{const{config:n}=Le(),[e,t]=x.useState(null);x.useEffect(()=>{a_.then(u=>t(()=>u.default))},[]);const{users:r,contributorUsers:i,invites:s,isLoading:a}=Gw(),{refetch:o}=ib({searchParams:{limit:"1"},enabled:!1}),{refetch:l}=ob({searchParams:{filter:"status:active",limit:"1"},enabled:!1}),c=x.useMemo(()=>n.hostSettings?.billing?.enabled===!0&&n.hostSettings?.billing?.url?n.hostSettings.billing.url:"https://ghost.org/help/",[n.hostSettings?.billing]);return x.useMemo(()=>{const u={isLimited:()=>!1,isDisabled:()=>!1,checkWouldGoOverLimit:()=>Promise.resolve(!1),errorIfWouldGoOverLimit:()=>Promise.resolve(),errorIfIsOverLimit:()=>Promise.resolve()};if(!e||!n.hostSettings?.limits||a)return u;const f={...n.hostSettings.limits},h=new e;return f.staff&&(f.staff.currentCountQuery=async()=>{const p=r.filter(m=>m.status!=="inactive"&&!i.includes(m)),g=s.filter(m=>m.role!=="Contributor");return p.length+g.length}),f.members&&(f.members.currentCountQuery=async()=>{const{data:p}=await o();return p?.meta?.pagination?.total||0}),f.newsletters&&(f.newsletters.currentCountQuery=async()=>{const{data:{pages:p}={pages:[]}}=await l();return p[0].meta?.pagination.total||0}),h.loadLimits({limits:f,helpLink:c,errors:{HostLimitError:xa,IncorrectUsageError:o_}}),{isLimited:p=>h.isLimited(p),isDisabled:p=>h.isDisabled(p),checkWouldGoOverLimit:p=>h.checkWouldGoOverLimit(p),errorIfWouldGoOverLimit:(p,g={})=>h.errorIfWouldGoOverLimit(p,g),errorIfIsOverLimit:p=>h.errorIfIsOverLimit(p)}},[e,n,i,o,l,c,s,a,r])},l_=[{title:"Stripe Automatic Tax (private beta)",description:"Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe",flag:"stripeAutomaticTax"},{title:"Email customization (internal beta)",description:"Newsletter customization settings that have been released to Ghost's own production sites",flag:"emailCustomization"},{title:"Import Member Tier",description:"Enables tier to be specified when importing members",flag:"importMemberTier"},{title:"Explore",description:"Enables keeping in touch with the new Explore API",flag:"explore"},{title:"Tags X",description:"Enables the new Tags UI",flag:"tagsX"},{title:"Email Unique ID",description:"Enables {uniqueid} variable in emails for unique image URLs to bypass ESP image caching",flag:"emailUniqueid"},{title:"Welcome Emails",description:"Enables features related to sending welcome emails to new members",flag:"welcomeEmails"},{title:"Updated theme translation (beta)",description:"Enable theme translation using i18next instead of the old translation package.",flag:"themeTranslation"},{title:"IndexNow",description:"Automatically notify search engines when content is published or updated for faster indexing.",flag:"indexnow"},{title:"Featurebase Feedback",description:"Display a Feedback menu item in the admin sidebar. Requires the new admin experience.",flag:"featurebaseFeedback"},{title:"Transistor",description:"Enable Transistor podcast integration",flag:"transistor"},{title:"Inbox Links",description:"Enable mail app links on signup/signin",flag:"inboxlinks"}],c_=()=>{const n=ya(),[e,t]=x.useState([]);return x.useEffect(()=>{(async()=>{const i=[];for(const s of l_)if(s.limitName&&n?.isLimited(s.limitName))try{await n.errorIfWouldGoOverLimit(s.limitName),i.push(s)}catch(a){a instanceof xa||i.push(s)}else i.push(s);t(i)})()},[n]),d.jsx(Yi,{titleSeparator:!1,children:e.map(r=>d.jsx(Si,{action:d.jsx(Ql,{flag:r.flag,label:r.title}),detail:r.description,title:r.title},r.flag))})};function u_(n){const[e,t]=x.useState(!1),r=x.useRef(!1),{filter:i,getVisibleComponents:s,checkVisible:a}=ba();return x.useEffect(()=>{i||(r.current=!1)},[i]),x.useEffect(()=>{if(r.current)return;const c=a(n),u=s(),f=!!i&&c&&u.size===1;t(f)},[i,n,a,s]),{isOpen:e,openManually:()=>{r.current=!0,t(!0)},closeManually:()=>{r.current=!0,t(!1)}}}const d_=({keywords:n})=>{const[e,t]=x.useState("labs-beta-features"),{config:r}=Le(),{isOpen:i,openManually:s,closeManually:a}=u_(n),o=[{id:"labs-beta-features",title:"Beta features",contents:d.jsx(JL,{})},r.enableDeveloperExperiments&&{id:"labs-private-features",title:"Private features",contents:d.jsx(c_,{})}].filter(Boolean);return d.jsx(Se,{customHeader:d.jsxs("div",{className:"z-10 flex items-start justify-between",children:[d.jsx(Kr,{description:"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time.",title:"Labs"}),d.jsx(ne,{className:"mt-[-5px]",color:i?"grey":"clear",label:i?"Close":"Open",size:"sm",onClick:i?a:s})]}),isEditing:i,keywords:n,navid:"labs",testId:"labs",children:i?d.jsx(Kn,{selectedTab:e,tabs:o,onTabChange:t}):d.jsx("div",{className:"absolute inset-0 z-0 overflow-hidden opacity-70",children:d.jsx("img",{className:"absolute -right-6 -top-6 dark:opacity-10",src:XL})})})},f_=Ce(d_,"Labs"),h_=()=>{const{refetch:n}=M2({searchParams:{limit:"1000"},enabled:!1}),e=gt(),t=async()=>{try{const{data:r}=await n();if(r){const i=new Blob([r],{type:"text/csv"}),s=window.URL.createObjectURL(i),a=document.createElement("a");a.setAttribute("hidden",""),a.setAttribute("href",s),a.setAttribute("download",`post-analytics.${new Date().toISOString().split("T")[0]}.csv`),document.body.appendChild(a),a.click(),document.body.removeChild(a),window.URL.revokeObjectURL(s)}}catch(r){e(r)}};return d.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[d.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"export",iconColorClass:"!h-4 !w-auto",label:"Content & settings",onClick:()=>_L()}),d.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"baseline-chart",iconColorClass:"!h-4 !w-auto",label:"Post analytics",onClick:t})]})},p_=()=>{const n=ir(),{mutateAsync:e}=PL(),[t,r]=x.useState(!1),i=gt();return d.jsx(Or,{backDropClick:!1,footer:d.jsxs("div",{className:"flex w-full items-center justify-between p-8",children:[d.jsx(Ls,{href:"https://docs.ghost.org/migration/ghost",target:"_blank",children:"Learn about importing"}),d.jsx(ne,{color:"outline",disabled:t,label:"Cancel",onClick:()=>n.remove()})]}),okLabel:"",size:"sm",testId:"universal-import-modal",title:"Universal import",children:d.jsx("div",{className:"py-4 leading-9",children:d.jsx(tc,{accept:"application/json, application/zip",id:"import-file",onUpload:async s=>{r(!0);try{await e(s),n.remove(),Ke.show(Gr,{title:"Import in progress",prompt:"Your import is being processed, and you'll receive a confirmation email as soon as it’s complete. Usually this only takes a few minutes, but larger imports may take longer.",cancelLabel:"",okLabel:"Got it",onOk:a=>a?.remove(),formSheet:!1})}catch(a){i(a)}finally{r(!1)}},children:d.jsx("div",{className:"-mb-4 cursor-pointer bg-grey-75 p-10 text-center dark:bg-grey-950",children:t?"Uploading...":d.jsxs(d.Fragment,{children:["Select any JSON or zip file that contains ",d.jsx("br",{}),"posts and settings"]})})})})})},m_=Ke.create(p_),oi=({icon:n,title:e,onClick:t})=>{const r=_("flex h-9 cursor-pointer items-center justify-center gap-2 rounded-md bg-grey-100 px-2 text-sm font-semibold transition-all hover:bg-grey-200 dark:bg-grey-900");return t?d.jsxs("button",{className:r,type:"button",onClick:t,children:[n,e]}):d.jsx(d.Fragment,{})},g_=()=>{const{updateRoute:n}=be(),e=()=>{Ke.show(m_)};return d.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"substack",size:18}),title:"Substack",onClick:()=>n({isExternal:!0,route:"/migrate/substack"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"wordpress",size:18}),title:"WordPress",onClick:()=>n({isExternal:!0,route:"/migrate/wordpress"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"squarespace",size:18}),title:"Squarespace",onClick:()=>n({isExternal:!0,route:"/migrate/squarespace"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto dark:invert",name:"medium",size:18}),title:"Medium",onClick:()=>n({isExternal:!0,route:"/migrate/medium"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"mailchimp",size:20}),title:"Mailchimp",onClick:()=>n({isExternal:!0,route:"/migrate/mailchimp"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"import",size:16}),title:"Universal import",onClick:e})]})},v_=({keywords:n})=>{const[e,t]=x.useState("import"),r=[{id:"import",title:"Import",contents:d.jsx(g_,{})},{id:"export",title:"Export",contents:d.jsx(h_,{})}].filter(Boolean);return d.jsx(Se,{customHeader:d.jsx(Kr,{description:"Import content, members and subscriptions from other platforms or export your Ghost data.",title:"Migration tools"}),keywords:n,navid:"migration",testId:"migrationtools",children:d.jsx(Kn,{selectedTab:e,tabs:r,onTabChange:t})})},b_=Ce(v_,"Migration tools"),rs=({keywords:n,...e})=>{const{checkVisible:t,noResult:r}=ba();return d.jsx(vD,{isVisible:t(n)||r,...e})},Wt={integrations:["advanced","integrations","zapier","slack","unsplash","first promoter","firstpromoter","pintura","disqus","analytics","ulysses","typeform","buffer","plausible","github","webhooks"],migrationtools:["import","export","migrate","substack","substack","migration","medium","wordpress","wp","squarespace"],codeInjection:["advanced","code injection","head","footer"],labs:["advanced","labs","alpha","private","beta","flag","routes","redirect","translation","editor","portal"],history:["advanced","history","log","events","user events","staff","audit","action"],dangerzone:["danger","danger zone","delete","content","delete all content","delete site"]},x_=()=>d.jsxs(rs,{keywords:Object.values(Wt).flat(),title:"Advanced",children:[d.jsx(WL,{keywords:Wt.integrations}),d.jsx(b_,{keywords:Wt.migrationtools}),d.jsx(NL,{keywords:Wt.codeInjection}),d.jsx(f_,{keywords:Wt.labs}),d.jsx(FL,{keywords:Wt.history}),d.jsx(BL,{keywords:Wt.dangerzone})]}),vu="OffersResponseType",Zw=Qr({dataType:vu,path:"/offers/",defaultSearchParams:{}}),O6=l2({dataType:vu,path:n=>`/offers/${n}/`}),T6=ze({method:"PUT",path:n=>`/offers/${n.id}/`,body:n=>({offers:[n]}),updateQueries:{dataType:vu,emberUpdateType:"createOrUpdate",update:sb("offers")}}),N6=ze({method:"POST",path:()=>"/offers/",body:n=>({offers:[n]}),updateQueries:{dataType:vu,emberUpdateType:"createOrUpdate",update:Of("offers")}});function Tg(n){const e=new Date,t={timeZone:n},r=navigator.language.startsWith("en")?navigator.language:"en-US";return e.toLocaleString(r,t)}function Yw(n=""){let e=new RegExp(/([A-Za-z\u00C0-\u017F]{1})[A-Za-z\u00C0-\u017F]+/,"g"),t=[...n.matchAll(e)];return((t.shift()?.[1]||"")+(t.pop()?.[1]||"")).toUpperCase()}function Rh(n){let r=0;for(let s=0;s<n.length;s++)r=n.charCodeAt(s)+((r<<5)-r);return"hsl("+r%360+", 70%, 40%)"}function kn(n){return n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function y_(n){return/^[a-z0-9]{24}$/.test(n)}const w_=[{label:"Free members",value:"status:free",color:"green"},{label:"Paid members",value:"status:-free",color:"pink"}],S_=(n,e)=>{const t=$u({path:"/tiers/",filterKey:"name",responseKey:"tiers"}),r=$u({path:"/labels/",filterKey:"name",responseKey:"labels"}),i=$u({path:"/offers/",filterKey:"name",responseKey:"offers"}),[s,a]=x.useState(null),o=h=>({value:h.id,label:h.name,color:"black"}),l=h=>({value:`label:${h.slug}`,label:h.name,color:"grey"}),c=h=>({value:`offer_redemptions:${h.id}`,label:h.name,color:"black"}),u=async(h,p)=>{const[g,m,v]=await Promise.all([t.loadData(h),r.loadData(h),i.loadData(h)]),b=[{options:w_.filter(({label:y})=>y.toLowerCase().includes(h.toLowerCase()))},{label:"Active Tiers",options:g.filter(({active:y,type:w})=>y&&w!=="free").map(o)||[]},{label:"Archived Tiers",options:g.filter(({active:y})=>!y).map(o)||[]},{label:"Labels",options:m.map(l)||[]},{label:"Offers",options:v.map(c)||[]}];s===null&&f(),p(b.filter(y=>y.options.length>0))},f=async()=>{const h=e?.split(",")||[],p=[],g=[],m=[];for(const b of h)b.startsWith("label:")?g.push(b.replace("label:","")):b.startsWith("offer_redemptions:")?m.push(b.replace("offer_redemptions:","")):y_(b)&&p.push(b);const v=await Promise.all([t.loadInitialValues(p,"id").then(b=>b.map(o)),r.loadInitialValues(g,"slug").then(b=>b.map(l)),i.loadInitialValues(m,"id").then(b=>b.map(c))]).then(b=>b.flat());a(h.map(b=>v.find(y=>y.value===b)))};return x.useEffect(()=>{n==="segment"&&u("",()=>{})},[n]),{loadOptions:O2(u,500),selectedSegments:s,setSelectedSegments:a}},Ng=[{label:"Whoever has access to the post",hint:"Free posts to everyone, premium posts sent to paid members",value:"visibility"},{label:"All members",hint:"Everyone who is subscribed to newsletter updates, whether free or paid members",value:"all-members"},{label:"Paid-members only",hint:"People who have a premium subscription",value:"paid-only"},{label:"Specific people",hint:"Only people with any of the selected tiers or labels",value:"segment"},{label:"Usually nobody",hint:"Newsletters are off for new posts, but can be enabled when needed",value:"none"}];function Pg({defaultEmailRecipients:n,defaultEmailRecipientsFilter:e}){return n==="filter"?e==="status:free,status:-free"?"all-members":e==="status:-free"?"paid-only":e===null?"none":"segment":n}const k_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c]=Te(e,["editor_default_email_recipients","editor_default_email_recipients_filter"]),[u,f]=x.useState(Pg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c})),{loadOptions:h,selectedSegments:p,setSelectedSegments:g}=S_(u,c);x.useEffect(()=>{const b=Pg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c});f(b)},[l,c]);const m=b=>{["visibility","disabled"].includes(b)?(a("editor_default_email_recipients",b),a("editor_default_email_recipients_filter",null)):a("editor_default_email_recipients","filter"),b==="all-members"&&a("editor_default_email_recipients_filter","status:free,status:-free"),b==="paid-only"&&a("editor_default_email_recipients_filter","status:-free"),b==="none"&&a("editor_default_email_recipients_filter",null),f(b),t||o(!0)},v=b=>{if(g(b),b.length){const y=b?.map(({value:w})=>w).join(",");a("editor_default_email_recipients_filter",y)}else a("editor_default_email_recipients_filter",null),f("none");t||o(!0)};return d.jsx(Se,{description:"When you publish new content, who do you usually want to send it to?",isEditing:t,keywords:n,navid:"default-recipients",saveState:r,testId:"default-recipients",title:"Default recipients",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:i,children:d.jsxs(Ye,{columns:1,children:[d.jsx(yr,{hint:"Who should receive your posts by default?",options:Ng,selectedOption:Ng.find(b=>b.value===u),testId:"default-recipients-select",title:"Default Newsletter recipients",onSelect:b=>{b&&m(b.value)}}),u==="segment"&&p&&d.jsx(ux,{loadOptions:h,title:"Filter",values:p,async:!0,defaultOptions:!0,onChange:v})]})})},C_=Ce(k_,"Default recipients"),A_=({keywords:n})=>{const{settings:e}=Le(),{mutateAsync:t}=Xr(),{updateRoute:r}=be(),i=gt(),[s,a]=Te(e,["editor_default_email_recipients","members_signup_access"]),o=a==="none",l=async u=>{const f=[{key:"editor_default_email_recipients",value:u.target.checked?"visibility":"disabled"}];u.target.checked||f.push({key:"editor_default_email_recipients_filter",value:null});try{await t(f)}catch(h){i(h)}},c=d.jsx(d.Fragment,{children:d.jsx(rn,{checked:s!=="disabled",direction:"rtl",onChange:l})});return d.jsx(Se,{customButtons:c,description:"Newsletter features are active, posts can be sent by email",keywords:n,navid:"enable-newsletters",testId:"enable-newsletters",title:"Newsletter sending",children:d.jsx(Ye,{columns:1,values:[{key:"private",value:s!=="disabled"?d.jsxs("div",{className:"w-full",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(ge,{colorClass:"text-green",name:"check",size:"sm"}),d.jsx("span",{children:"Enabled"})]}),o&&d.jsxs(yb,{className:"mt-6 text-sm",color:"grey",children:["Your ",d.jsx("button",{className:"!underline",type:"button",onClick:()=>{r("members")},children:"Subscription access"})," is set to ‘Nobody’, only existing members will receive newsletters."]})]}):d.jsxs("div",{className:"flex items-center gap-2 text-grey-900",children:[d.jsx(ge,{colorClass:"text-grey-600",name:"mail-block",size:"sm"}),d.jsx("span",{children:"Disabled"})]})}]})})},M_=Ce(A_,"Newsletter sending"),fd=[{label:"🇺🇸 US",value:"https://api.mailgun.net/v3"},{label:"🇪🇺 EU",value:"https://api.eu.mailgun.net/v3"}],I_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),{mutateAsync:l}=Xr(),c=gt(),[u,f,h]=Te(e,["mailgun_base_url","mailgun_domain","mailgun_api_key"]),g=f&&h?[{key:"status",value:d.jsx(cI,{icon:"check-circle",iconColorClass:"text-green",children:"Mailgun is set up"})}]:[{heading:"Status",key:"status",value:"Mailgun is not set up"}],m=d.jsx(Ye,{columns:1,values:g}),v=d.jsxs(d.Fragment,{children:["Find your Mailgun API keys ",d.jsx(Ls,{href:"https://app.mailgun.com/settings/api_security",rel:"noopener noreferrer",target:"_blank",children:"here"})]}),b=d.jsx(Ye,{children:d.jsxs("div",{className:"grid grid-cols-[120px_auto] gap-x-3 gap-y-6",children:[d.jsx(yr,{options:fd,selectedOption:fd.find(w=>w.value===u),title:"Mailgun region",onSelect:w=>{a("mailgun_base_url",w?.value||null)}}),d.jsx(tt,{title:"Mailgun domain",value:f,onChange:w=>{a("mailgun_domain",w.target.value)}}),d.jsx("div",{className:"col-span-2",children:d.jsx(tt,{hint:v,title:"Mailgun private API key",type:"password",value:h,onChange:w=>{a("mailgun_api_key",w.target.value)}})})]})}),y=d.jsxs(d.Fragment,{children:["The Mailgun API is used for bulk email newsletter delivery. ",d.jsx(Ls,{href:"https://ghost.org/docs/faq/mailgun-newsletters/",target:"_blank",children:"Why is this required?"})]});return d.jsx(Se,{description:y,isEditing:t,keywords:n,navid:"mailgun",saveState:r,testId:"mailgun",title:"Mailgun",onCancel:s,onEditingChange:o,onSave:async()=>{if(!u)try{await l([{key:"mailgun_base_url",value:fd[0].value}])}catch(w){c(w);return}i()},children:t?b:m})},E_=Ce(I_,"Mailgun"),Lg=({id:n,setRef:e,isDragging:t,style:r,children:i,...s})=>{const{updateRoute:a}=be(),o=()=>{a({route:`newsletters/${n}`})},l=d.jsxs(tu,{ref:e,action:d.jsx(ne,{color:"green","data-testid":"edit-newsletter-button",label:"Edit",link:!0,onClick:o}),className:t?"opacity-75":"",hideActions:!1,style:r,onClick:o,children:[(s.dragHandleAttributes||t)&&d.jsx(Hn,{className:"w-10 !align-middle",children:d.jsx(Fx,{className:"h-10",isDragging:t||!1,...s})}),i]});return t?d.jsx(Ti,{children:l}):l},_g=({newsletter:n})=>{const{updateRoute:e}=be(),t=()=>{e({route:`newsletters/${n.id}`})};return d.jsxs(d.Fragment,{children:[d.jsx(Hn,{className:"w-full",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{className:"font-medium",children:n.name}),d.jsx("span",{className:"mt-0.5 text-xs leading-tight text-grey-700",children:n.description||"No description"})]})}),d.jsx(Hn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{children:kn(n.count?.active_members||0)}),d.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Subscribers"})]})}),d.jsx(Hn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{children:kn(n.count?.posts||0)}),d.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Delivered"})]})})]})},jg=({newsletters:n,isLoading:e,isSortable:t,onSort:r})=>e?d.jsx(Ti,{isLoading:!0}):n.length&&t?d.jsx(lD,{container:i=>d.jsx(Lg,{...i}),items:n,renderItem:i=>d.jsx(_g,{newsletter:i}),wrapper:Ti,onMove:(i,s)=>r?.(i,s)}):n.length?d.jsx(Ti,{children:n.map(i=>d.jsx(Lg,{id:i.id,children:d.jsx(_g,{newsletter:i})}))}):d.jsx(ei,{icon:"mail-block",children:"No newsletters found."}),Jw=()=>{const[n,e]=x.useState(new URLSearchParams);return x.useEffect(()=>{const r=()=>{const s=window.location.hash.split("?")[1];e(s?new URLSearchParams(s):new URLSearchParams)};return r(),window.addEventListener("hashchange",r),()=>{window.removeEventListener("hashchange",r)}},[]),{getParam:r=>n.get(r)}},hd=({id:n,children:e})=>{const t=ir(),{updateRoute:r}=be();return d.jsx("button",{className:"text-green",type:"button",onClick:()=>{r(`newsletters/${n}`),t.remove()},children:e})},D_=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("newsletters/new")},[r,i]=x.useState("active-newsletters"),{data:{newsletters:s,meta:a,isEnd:o}={},isLoading:l,fetchNextPage:c}=ob(),{mutateAsync:u}=k2(),f=Df(),h=Jw().getParam("verifyEmail"),{mutateAsync:p}=C2(),g=gt(),[m,v]=x.useState(s||[]);x.useEffect(()=>{v(s||[])},[s]),x.useEffect(()=>{if(!h||!window.location.href.includes("newsletters"))return;(async()=>{try{const{newsletters:[C],meta:{email_verified:E}={}}=await p({token:h});let M,R;E&&E==="sender_email"?(M="Newsletter email verified",R=d.jsxs(d.Fragment,{children:["Newsletter ",d.jsx(hd,{id:C.id,children:C.name})," will now be sent from ",d.jsx("strong",{children:C.sender_email}),"."]})):E&&E==="sender_reply_to"?(M="Reply-to address verified",R=d.jsxs(d.Fragment,{children:["Newsletter ",d.jsx(hd,{id:C.id,children:C.name})," will now use ",d.jsx("strong",{children:C.sender_reply_to})," as the reply-to address."]})):(M="Email address verified",R=d.jsxs(d.Fragment,{children:["Email address for newsletter ",d.jsx(hd,{id:C.id,children:C.name})," has been changed."]})),Ke.show(Gr,{title:M,prompt:R,okLabel:"Close",cancelLabel:"",onOk:T=>T?.remove()})}catch(C){let E="There was an error verifying your email address. Try again later.";C instanceof c2&&C.message==="Token expired"&&(E="Verification link has expired."),Ke.show(Gr,{title:"Error verifying email address",prompt:E,okLabel:"Close",cancelLabel:"",onOk:M=>M?.remove()}),g(C,{withToast:!1})}})()},[h,g,p]);const b=d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Add newsletter",size:"sm",onClick:()=>{t()}}),y=m.filter(A=>A.status==="active").sort((A,C)=>A.sort_order-C.sort_order)||[],w=m.filter(A=>A.status!=="active"),S=async(A,C)=>{const E=y.findIndex(L=>L.id===A),M=y.findIndex(L=>L.id===C)||0,T=Jf(y,E,M).map((L,$)=>L.sort_order===$?null:{...L,sort_order:$}).filter(L=>!!L),N=w.map((L,$)=>L.sort_order===$+y.length?null:{...L,sort_order:$}).filter(L=>!!L),P=[...T,...N].sort((L,$)=>L.sort_order-$.sort_order);v(m.map(L=>P.find($=>$.id===L.id)||L)),f.setQueriesData([A2],L=>{if(L)return{...L,pages:L.pages.map($=>({...$,newsletters:$.newsletters.map(q=>P.find(Z=>Z.id===q.id)||q)}))}});for(const L of P)await u(L)},k=[{id:"active-newsletters",title:"Active",contents:d.jsx(jg,{isLoading:l,newsletters:y,isSortable:!0,onSort:S})},{id:"archived-newsletters",title:"Archived",contents:d.jsx(jg,{isLoading:l,newsletters:w})}];return d.jsxs(Se,{customButtons:b,description:"Edit details and customize your design",keywords:n,navid:"newsletters",testId:"newsletters",title:"Newsletters",children:[d.jsx(Kn,{selectedTab:r,tabs:k,onTabChange:i}),o===!1&&d.jsx(ne,{label:`Load more (showing ${m?.length||0}/${a?.pagination.total||0} newsletters)`,link:!0,onClick:()=>c()})]})},R_=Ce(D_,"Newsletters"),gr={enableNewsletters:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off"],newsletters:["newsletters","emails","design","customization"],defaultRecipients:["newsletters","default recipients","emails"],mailgun:["mailgun","emails","newsletters"],newslettersNavMenu:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off","design","customization","default recipients","emails","mailgun","tips","donations","one time","payment"]},O_=()=>{const{settings:n,config:e}=Le(),[t]=Te(n,["editor_default_email_recipients"]);return d.jsxs(rs,{keywords:Object.values(gr).flat(),title:"Email newsletter",children:[d.jsx(M_,{keywords:gr.enableNewsletters}),t!=="disabled"&&d.jsxs(d.Fragment,{children:[d.jsx(C_,{keywords:gr.defaultRecipients}),d.jsx(R_,{keywords:gr.newsletters}),!e.mailgunIsConfigured&&d.jsx(E_,{keywords:gr.mailgun})]})]})},T_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c,u,f,h,p]=Te(e,["email_track_opens","email_track_clicks","members_track_sources","outbound_link_tagging","web_analytics_configured","web_analytics_enabled"]),g=u2(e,"email_track_clicks"),[m,v]=x.useState(!1),b=ya(),{updateRoute:y}=be();x.useEffect(()=>{b?.isLimited("limitAnalytics")?b.errorIfWouldGoOverLimit("limitAnalytics").catch(k=>{k instanceof xa&&v(!0)}):v(!1)},[b]);const w=(k,A)=>{a(k,A.target.checked),o(!0)},S=d.jsxs(Ye,{className:"analytics-settings !gap-y-0",columns:1,children:[d.jsx(rn,{checked:p,direction:"rtl",disabled:!h||m,gap:"gap-0",hint:h?d.jsxs(d.Fragment,{children:["Cookie-free, first party traffic analytics for your site, powered by ",d.jsx("a",{className:"text-green",href:"https://ghost.org/integrations/tinybird",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})]}):d.jsx(d.Fragment,{children:"Cookie-free, first party traffic analytics for your site"}),label:"Web analytics",labelClasses:"py-4 w-full",onChange:k=>{w("web_analytics",k)}}),m?d.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:d.jsx("span",{className:"flex items-start gap-2",children:d.jsxs("span",{children:["Web analytics is available on the Publisher plan and above. ",d.jsx("span",{className:"cursor-pointer text-green",onClick:()=>y({route:"/pro",isExternal:!0}),children:"Upgrade now →"})]})})}):h?d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}):d.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:d.jsx("span",{className:"flex items-start gap-2",children:d.jsxs("span",{children:["Web analytics in Ghost is powered by ",d.jsx("a",{className:"text-green",href:"https://tbrd.co/ghost",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})," and requires configuration to start collecting data. ",d.jsx("a",{className:"text-green",href:"https://docs.ghost.org/install/docker#tinybird-integration",rel:"noopener noreferrer",target:"_blank",children:"Get started →"})]})})}),d.jsx(rn,{checked:l,direction:"rtl",gap:"gap-0",hint:"Record when a member opens an email",label:"Newsletter opens",labelClasses:"py-4 w-full",onChange:k=>{w("email_track_opens",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:c,direction:"rtl",disabled:g,gap:"gap-0",hint:"Record when a member clicks on any link in an email",label:"Newsletter clicks",labelClasses:"py-4 w-full",onChange:k=>{w("email_track_clicks",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:u,direction:"rtl",gap:"gap-0",hint:"Track the traffic sources and posts that drive the most member growth",label:"Member sources",labelClasses:"py-4 w-full",onChange:k=>{w("members_track_sources",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:f,direction:"rtl",gap:"gap-0",hint:"Make it easier for other sites to track the traffic you send them in their analytics",label:"Outbound link tagging",labelClasses:"py-4 w-full",onChange:k=>{w("outbound_link_tagging",k)}})]});return d.jsxs(Se,{description:"Decide what data you collect across your publication",isEditing:t,keywords:n,navid:"analytics",saveState:r,testId:"analytics",title:"Analytics",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:i,children:[S,d.jsx("div",{className:"items-center-mt-1 flex justify-between",children:d.jsx("a",{className:"text-sm text-green",href:"https://ghost.org/help/post-analytics/",rel:"noopener noreferrer",target:"_blank",children:"Learn about analytics"})})]})},N_=Ce(T_,"Analytics"),P_=({keywords:n})=>{const{siteData:e}=Le(),{localSettings:t,isEditing:r,saveState:i,handleSave:s,handleCancel:a,updateSetting:o,handleEditingChange:l,errors:c,clearError:u}=Ot({onValidate:()=>f&&!h?{password:"Enter a password"}:{}}),[f,h,p]=Te(t,["is_private","password","public_hash"]),g=S=>{o("is_private",S.target.checked)},m=S=>{o("password",S.target.value)},v=`${e.url.replace(/\/$/,"")}/${p}/rss`,b=d.jsxs(d.Fragment,{children:["A private RSS feed is available at ",d.jsx("a",{className:"break-all text-green",href:v,rel:"noopener noreferrer",target:"_blank",children:v})]}),y=d.jsx(Ye,{values:[{key:"private",value:f?d.jsxs("div",{className:"w-full",children:[d.jsxs("div",{className:"flex items-center gap-1",children:[d.jsx(ge,{colorClass:"text-yellow",name:"lock-locked",size:"sm"}),d.jsx("div",{className:"leading-supertight",children:"Your site is password protected"})]}),b&&d.jsxs("div",{className:"mt-7 w-full",children:[d.jsx(Ct,{}),d.jsx(Mn,{children:b})]})]}):d.jsxs("div",{className:"flex items-center gap-1 text-grey-900 dark:text-grey-400",children:[d.jsx(ge,{colorClass:"text-black dark:text-white",name:"lock-unlocked",size:"sm"}),d.jsx("span",{children:"Your site is not password protected"})]})}]}),w=d.jsxs(Ye,{children:[d.jsx(rn,{checked:f,direction:"rtl",hint:"All search engine optimization and social features will be disabled.",label:"Enable password protection",onChange:g}),f&&d.jsx(tt,{error:!!c.password,hint:c.password,placeholder:"Enter password",title:"Site password",value:h,hideTitle:!0,onChange:m,onKeyDown:()=>u("password")})]});return d.jsx(Se,{description:"Enable protection with a simple shared password.",isEditing:r,keywords:n,navid:"locksite",saveState:i,testId:"locksite",title:"Make site private",onCancel:a,onEditingChange:l,onSave:s,children:r?w:y})},L_=Ce(P_,"Make site private"),__=[{code:"af",label:"Afrikaans"},{code:"ar",label:"Arabic"},{code:"bg",label:"Bulgarian"},{code:"bn",label:"Bengali"},{code:"bs",label:"Bosnian"},{code:"ca",label:"Catalan"},{code:"cs",label:"Czech"},{code:"da",label:"Danish"},{code:"de",label:"German"},{code:"de-CH",label:"Swiss German"},{code:"el",label:"Greek"},{code:"en",label:"English"},{code:"eo",label:"Esperanto"},{code:"es",label:"Spanish"},{code:"et",label:"Estonian"},{code:"eu",label:"Basque"},{code:"fa",label:"Persian/Farsi"},{code:"fi",label:"Finnish"},{code:"fr",label:"French"},{code:"gd",label:"Gaelic (Scottish)"},{code:"he",label:"Hebrew"},{code:"hi",label:"Hindi"},{code:"hr",label:"Croatian"},{code:"hu",label:"Hungarian"},{code:"id",label:"Indonesian"},{code:"is",label:"Icelandic"},{code:"it",label:"Italian"},{code:"ja",label:"Japanese"},{code:"ko",label:"Korean"},{code:"kz",label:"Kazakh"},{code:"lt",label:"Lithuanian"},{code:"lv",label:"Latvian"},{code:"mk",label:"Macedonian"},{code:"mn",label:"Mongolian"},{code:"ms",label:"Malay"},{code:"nb",label:"Norwegian Bokmål"},{code:"ne",label:"Nepali"},{code:"nl",label:"Dutch"},{code:"nn",label:"Norwegian Nynorsk"},{code:"pa",label:"Punjabi"},{code:"pl",label:"Polish"},{code:"pt",label:"Portuguese"},{code:"pt-BR",label:"Portuguese (Brazil)"},{code:"ro",label:"Romanian"},{code:"ru",label:"Russian"},{code:"si",label:"Sinhala"},{code:"sk",label:"Slovak"},{code:"sl",label:"Slovenian"},{code:"sq",label:"Albanian"},{code:"sr",label:"Serbian"},{code:"sr-Cyrl",label:"Serbian (Cyrillic)"},{code:"sv",label:"Swedish"},{code:"sw",label:"Swahili"},{code:"ta",label:"Tamil"},{code:"th",label:"Thai"},{code:"tr",label:"Turkish"},{code:"uk",label:"Ukrainian"},{code:"ur",label:"Urdu"},{code:"uz",label:"Uzbek"},{code:"vi",label:"Vietnamese"},{code:"zh",label:"Chinese"},{code:"zh-Hant",label:"Traditional Chinese"}],j_=new Set(["en-gb-oed","i-ami","i-bnn","i-default","i-enochian","i-hak","i-klingon","i-lux","i-mingo","i-navajo","i-pwn","i-tao","i-tay","i-tsu","sgn-be-fr","sgn-be-nl","sgn-ch-de","art-lojban","cel-gaulish","no-bok","no-nyn","zh-guoyu","zh-hakka","zh-min","zh-min-nan","zh-xiang"]),Bg=n=>{const e="Invalid locale format. Examples: en, pt-BR, zh-Hant, sr-Cyrl, x-private";if(!n)return"Enter a value";const t=n.trim();if(!t)return e;if(j_.has(t.toLowerCase()))return null;if(!/^[a-z0-9]+(-[a-z0-9]+)*$/i.test(t))return e;const r=t.split("-");if(r[0].toLowerCase()==="x"){if(r.length<2)return e;for(let l=1;l<r.length;l++)if(r[l].length<1||r[l].length>8)return e;return null}let i=0;const s=r[i];if(!/^[a-z]{2,3}$/i.test(s))return e;for(i+=1,i<r.length&&/^[a-z]{4}$/i.test(r[i])&&(i+=1),i<r.length&&/^([a-z]{2}|[0-9]{3})$/i.test(r[i])&&(i+=1);i<r.length&&/^([a-z0-9]{5,8}|[0-9][a-z0-9]{3})$/i.test(r[i]);)i+=1;for(;i<r.length&&/^[0-9a-wy-z]$/i.test(r[i]);){if(i+=1,i>=r.length||!/^[a-z0-9]{2,8}$/i.test(r[i]))return e;for(i+=1;i<r.length&&/^[a-z0-9]{2,8}$/i.test(r[i]);)i+=1}if(i<r.length&&r[i].toLowerCase()==="x"){if(i+=1,i>=r.length)return e;for(;i<r.length;){if(!/^[a-z0-9]+$/i.test(r[i]))return e;i+=1}}if(i!==r.length)return e;const a=r.findIndex(l=>l.toLowerCase()==="x"),o=["english","french","spanish","german","italian","chinese","japanese","korean","russian","arabic","united","states","kingdom","traditional","simplified"];for(let l=0;l<r.length;l++){const c=r[l];if(!["i","x","sgn","art","cel","no","zh"].includes(c.toLowerCase())&&!(a!==-1&&l>a)&&(c.length>16||o.includes(c.toLowerCase())))return e}return null},B_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,errors:o,handleEditingChange:l}=Ot({onValidate:()=>{const p=Bg(c);return p?{publicationLanguage:p}:{}}}),[c]=Te(e,["locale"]),u=Y.useMemo(()=>__.map(g=>({value:g.code,label:`${g.label} (${g.code})`})),[]),f=p=>{a("locale",p),t||l(!0)},h=d.jsxs(d.Fragment,{children:["Default: English (",d.jsx("strong",{children:"en"}),"); find out more about",d.jsx("a",{className:"text-green-400",href:"https://ghost.org/docs/faq/translation/",rel:"noopener noreferrer",target:"_blank",children:" using Ghost in other languages"})]});return d.jsx(Se,{description:"Set the language/locale which is used on your site",isEditing:t,keywords:n,navid:"publication-language",saveState:r,testId:"publication-language",title:"Publication Language",hideEditButton:!0,onCancel:s,onEditingChange:l,onSave:i,children:d.jsx(Ye,{columns:1,children:d.jsx(HM,{defaultListValue:"en",error:!!o.publicationLanguage,hint:o.publicationLanguage||h,options:u,otherHint:"Enter a custom locale code.",otherPlaceholder:"e.g. pt-BR, sr-Cyrl, en",selectedValue:c,testId:"locale-select",title:"Site language",validate:Bg,isSearchable:!0,onSelect:f})})})},$_=Ce(B_,"Publication language"),F_=ze({method:"POST",path:()=>"/images/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e.append("purpose","image"),e}}),pd=n=>n.images[0].url,H_=({title:n,description:e,icon:t,url:r})=>{const i=r?.replace(/\/$/,""),s=i?.replace(/^https?:\/\//,"").replace(/\/?$/,"");return d.jsx("div",{children:d.jsxs("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-2 md:-mx-7 md:-mb-7 md:px-7 md:pt-7 dark:bg-grey-950",children:[d.jsx("div",{className:"-mt-4 mb-2 text-xs uppercase text-grey-500 dark:text-grey-800",children:"Preview"}),d.jsxs("div",{className:"rounded-t-sm bg-white px-5 py-3 shadow-lg dark:bg-grey-975",children:[d.jsxs("div",{className:"mt-3 flex items-center",children:[d.jsx("div",{children:d.jsx(yD,{className:"mr-7 h-7"})}),d.jsx("div",{className:"grow",children:d.jsx("div",{className:"flex w-full items-center justify-end rounded-full bg-white p-3 px-4 shadow dark:bg-grey-900",children:d.jsx(ge,{className:"stroke-[2px] text-blue-600",name:"magnifying-glass",size:"sm"})})})]}),d.jsxs("div",{className:"mt-4 flex items-center gap-2 border-t border-grey-200 pt-4 dark:border-grey-900",children:[d.jsx("div",{className:"flex size-7 items-center justify-center rounded-full bg-grey-200 dark:bg-grey-700",style:{backgroundImage:t?`url(${t})`:"none",backgroundSize:"contain"}}),d.jsxs("div",{className:"flex flex-col text-sm",children:[d.jsx("span",{children:s}),d.jsx("span",{className:"-mt-0.5 inline-block text-xs text-grey-600",children:i})]})]}),d.jsxs("div",{className:"mt-1 flex flex-col",children:[d.jsx("span",{className:"text-lg text-[#1a0dab] dark:text-blue",children:n}),d.jsx("span",{className:"text-sm text-grey-900 dark:text-grey-700",children:e})]})]})]})})},V_=({keywords:n})=>{const{localSettings:e,saveState:t,siteData:r,focusRef:i,isEditing:s,handleSave:a,handleCancel:o,handleEditingChange:l,updateSetting:c}=Ot(),u=gt(),{mutateAsync:f}=F_(),h=qw(),[p,g,m,v,b,y,w,S,k,A]=Te(e,["meta_title","meta_description","title","description","og_title","og_description","og_image","twitter_title","twitter_description","twitter_image"]).map(Q=>Q||""),[C,E]=x.useState("metadata"),M=Q=>ce=>{c(Q,ce.target.value),s||l(!0)},R=Q=>async ce=>{try{const Ae=pd(await f({file:ce}));c(Q,Ae),s||l(!0)}catch(Ae){const Be=Ae;Be.response.status===415&&(Be.message="Unsupported file type"),u(Be)}},T=Q=>()=>{c(Q,""),s||l(!0)},N=M("meta_title"),P=M("meta_description"),L=M("og_title"),$=M("og_description"),q=R("og_image"),Z=T("og_image"),oe=M("twitter_title"),ee=M("twitter_description"),de=R("twitter_image"),ve=T("twitter_image"),K=d.jsxs(d.Fragment,{children:[d.jsxs(Ye,{className:"my-6 gap-3",children:[d.jsx(tt,{hint:"Recommended: 70 characters",inputRef:i,maxLength:300,placeholder:m,title:"Meta title",value:p,onChange:N}),d.jsx(tt,{hint:"Recommended: 156 characters",maxLength:500,placeholder:v,title:"Meta description",value:g,onChange:P})]}),d.jsx(H_,{description:g||v,icon:r?.icon,title:p||m,url:r?.url})]}),fe=d.jsxs("div",{className:"mt-6 md:mx-[52px]",children:[d.jsxs("div",{className:"mb-4 flex items-center gap-2",children:[d.jsx("div",{children:d.jsx(xD,{className:"size-10"})}),d.jsxs("div",{children:[d.jsx("div",{className:"mb-1 font-semibold leading-none text-grey-900 dark:text-grey-300",children:m}),d.jsx("div",{className:"leading-none text-grey-700",children:"2h"})]})]}),d.jsxs("div",{children:[d.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),d.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),d.jsxs(Ye,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[d.jsx(Uh,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"facebook-image",imageURL:w,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:w||"",handleSave:async Q=>{const ce=pd(await f({file:Q}));c("og_image",ce)}})},onDelete:Z,onUpload:q,children:"Upload Facebook image"}),d.jsxs("div",{className:"mt-5 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[d.jsx(tt,{maxLength:300,placeholder:m,title:"Facebook title",value:b,onChange:L}),d.jsx(tt,{maxLength:300,placeholder:v,title:"Facebook description",value:y,onChange:$})]})]})]})]}),re=d.jsxs("div",{className:"mt-6 flex flex-col gap-3 md:flex-row",children:[d.jsx("div",{className:"pt-1",children:d.jsx(wD,{className:"-mb-1 size-10"})}),d.jsxs("div",{className:"w-full md:mr-[52px]",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("span",{className:"mr-1 font-semibold text-grey-900 dark:text-grey-300",children:m}),d.jsx("span",{className:"text-grey-700",children:"· 2h"})]}),d.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),d.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),d.jsxs(Ye,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[d.jsx(Uh,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"twitter-image",imageURL:A,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:A||"",handleSave:async Q=>{const ce=pd(await f({file:Q}));c("twitter_image",ce)}})},onDelete:ve,onUpload:de,children:"Upload X image"}),d.jsxs("div",{className:"mt-6 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[d.jsx(tt,{maxLength:300,placeholder:m,title:"X title",value:S,onChange:oe}),d.jsx(tt,{maxLength:300,placeholder:v,title:"X description",value:k,onChange:ee})]})]})]})]}),ue=[{id:"metadata",title:"Search",contents:K},{id:"twitter",title:"X card",contents:re},{id:"facebook",title:"Facebook card",contents:fe}];return d.jsx(Se,{description:"Extra content for search engines and social accounts",isEditing:s,keywords:n,navid:"metadata",saveState:t,testId:"seometa",title:"Meta data",hideEditButton:!0,onCancel:o,onEditingChange:l,onSave:a,children:d.jsx(Kn,{selectedTab:C,tabs:ue,testId:"seo-tabview",onTabChange:E})})},U_=Ce(V_,"SEO meta");var Ja={exports:{}},Xa={exports:{}},Qa={exports:{}},$g;function U(){return $g||($g=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){var s=typeof i=="string"||i instanceof String;if(!s){var a=t(i);throw i===null?a="null":a==="object"&&(a=i.constructor.name),new TypeError("Expected a string but received a ".concat(a))}}n.exports=e.default,n.exports.default=e.default})(Qa,Qa.exports)),Qa.exports}var Fg;function Oh(){return Fg||(Fg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s=Date.parse(s),isNaN(s)?null:new Date(s)}n.exports=e.default,n.exports.default=e.default})(Xa,Xa.exports)),Xa.exports}var eo={exports:{}},li={},Xe={},Hg;function wa(){if(Hg)return Xe;Hg=1,Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.farsiLocales=Xe.englishLocales=Xe.dotDecimal=Xe.decimal=Xe.commaDecimal=Xe.bengaliLocales=Xe.arabicLocales=Xe.alphanumeric=Xe.alpha=void 0;for(var n=Xe.alpha={"en-US":/^[A-Z]+$/i,"az-AZ":/^[A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ώ]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fa-IR":/^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i,"fi-FI":/^[A-ZÅÄÖ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"kk-KZ":/^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๐\s]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"vi-VN":/^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,"ko-KR":/^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,fa:/^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0961]+[\u0972-\u097F]*$/i,"si-LK":/^[\u0D80-\u0DFF]+$/},e=Xe.alphanumeric={"en-US":/^[0-9A-Z]+$/i,"az-AZ":/^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fi-FI":/^[0-9A-ZÅÄÖ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"kk-KZ":/^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๙\s]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ko-KR":/^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,"vi-VN":/^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,fa:/^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0963]+[\u0966-\u097F]*$/i,"si-LK":/^[0-9\u0D80-\u0DFF]+$/},t=Xe.decimal={"en-US":".",ar:"٫"},r=Xe.englishLocales=["AU","GB","HK","IN","NZ","ZA","ZM"],i,s=0;s<r.length;s++)i="en-".concat(r[s]),n[i]=n["en-US"],e[i]=e["en-US"],t[i]=t["en-US"];for(var a=Xe.arabicLocales=["AE","BH","DZ","EG","IQ","JO","KW","LB","LY","MA","QM","QA","SA","SD","SY","TN","YE"],o,l=0;l<a.length;l++)o="ar-".concat(a[l]),n[o]=n.ar,e[o]=e.ar,t[o]=t.ar;for(var c=Xe.farsiLocales=["IR","AF"],u,f=0;f<c.length;f++)u="fa-".concat(c[f]),e[u]=e.fa,t[u]=t.ar;for(var h=Xe.bengaliLocales=["BD","IN"],p,g=0;g<h.length;g++)p="bn-".concat(h[g]),n[p]=n.bn,e[p]=e.bn,t[p]=t["en-US"];for(var m=Xe.dotDecimal=["ar-EG","ar-LB","ar-LY"],v=Xe.commaDecimal=["bg-BG","cs-CZ","da-DK","de-DE","el-GR","en-ZM","eo","es-ES","fr-CA","fr-FR","id-ID","it-IT","ku-IQ","hi-IN","hu-HU","nb-NO","nn-NO","nl-NL","pl-PL","pt-PT","ru-RU","kk-KZ","si-LK","sl-SI","sr-RS@latin","sr-RS","sv-SE","tr-TR","uk-UA","vi-VN"],b=0;b<m.length;b++)t[m[b]]=t["en-US"];for(var y=0;y<v.length;y++)t[v[y]]=",";return n["fr-CA"]=n["fr-FR"],e["fr-CA"]=e["fr-FR"],n["pt-BR"]=n["pt-PT"],e["pt-BR"]=e["pt-PT"],t["pt-BR"]=t["pt-PT"],n["pl-Pl"]=n["pl-PL"],e["pl-Pl"]=e["pl-PL"],t["pl-Pl"]=t["pl-PL"],n["fa-AF"]=n.fa,Xe}var Vg;function Xw(){if(Vg)return li;Vg=1,Object.defineProperty(li,"__esModule",{value:!0}),li.default=r,li.locales=void 0;var n=t(U()),e=wa();function t(i){return i&&i.__esModule?i:{default:i}}function r(i,s){(0,n.default)(i),s=s||{};var a=new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(s.locale?e.decimal[s.locale]:".","[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));if(i===""||i==="."||i===","||i==="-"||i==="+")return!1;var o=parseFloat(i.replace(",","."));return a.test(i)&&(!s.hasOwnProperty("min")||o>=s.min)&&(!s.hasOwnProperty("max")||o<=s.max)&&(!s.hasOwnProperty("lt")||o<s.lt)&&(!s.hasOwnProperty("gt")||o>s.gt)}return li.locales=Object.keys(e.decimal),li}var Ug;function Qw(){return Ug||(Ug=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Xw());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s)?parseFloat(s):NaN}n.exports=e.default,n.exports.default=e.default})(eo,eo.exports)),eo.exports}var to={exports:{}},zg;function z_(){return zg||(zg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),parseInt(s,a||10)}n.exports=e.default,n.exports.default=e.default})(to,to.exports)),to.exports}var no={exports:{}},Wg;function W_(){return Wg||(Wg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),a?s==="1"||/^true$/i.test(s):s!=="0"&&!/^false$/i.test(s)&&s!==""}n.exports=e.default,n.exports.default=e.default})(no,no.exports)),no.exports}var ro={exports:{}},qg;function q_(){return qg||(qg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),s===a}n.exports=e.default,n.exports.default=e.default})(ro,ro.exports)),ro.exports}var io={exports:{}},so={exports:{}},Gg;function eS(){return Gg||(Gg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){return t(i)==="object"&&i!==null?typeof i.toString=="function"?i=i.toString():i="[object Object]":(i===null||typeof i>"u"||isNaN(i)&&!i.length)&&(i=""),String(i)}n.exports=e.default,n.exports.default=e.default})(so,so.exports)),so.exports}var ao={exports:{}},Kg;function Ht(){return Kg||(Kg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;for(var s in i)typeof r[s]>"u"&&(r[s]=i[s]);return r}n.exports=e.default,n.exports.default=e.default})(ao,ao.exports)),ao.exports}var Zg;function G_(){return Zg||(Zg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=s(U()),r=s(eS()),i=s(Ht());function s(l){return l&&l.__esModule?l:{default:l}}var a={ignoreCase:!1,minOccurrences:1};function o(l,c,u){return(0,t.default)(l),u=(0,i.default)(u,a),u.ignoreCase?l.toLowerCase().split((0,r.default)(c).toLowerCase()).length>u.minOccurrences:l.split((0,r.default)(c)).length>u.minOccurrences}n.exports=e.default,n.exports.default=e.default})(io,io.exports)),io.exports}var oo={exports:{}},Yg;function K_(){return Yg||(Yg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a,o){return(0,t.default)(s),Object.prototype.toString.call(a)!=="[object RegExp]"&&(a=new RegExp(a,o)),!!s.match(a)}n.exports=e.default,n.exports.default=e.default})(oo,oo.exports)),oo.exports}var lo={exports:{}},co={exports:{}},Jg;function tS(){return Jg||(Jg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}function i(a){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},i(a)}function s(a,o){(0,t.default)(a);var l,c;i(o)==="object"?(l=o.min||0,c=o.max):(l=arguments[1],c=arguments[2]);var u=encodeURI(a).split(/%..|./).length-1;return u>=l&&(typeof c>"u"||u<=c)}n.exports=e.default,n.exports.default=e.default})(co,co.exports)),co.exports}var uo={exports:{}},Xg;function Th(){return Xg||(Xg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(Ht());function i(o){return o&&o.__esModule?o:{default:o}}var s={require_tld:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_numeric_tld:!1,allow_wildcard:!1,ignore_max_length:!1};function a(o,l){(0,t.default)(o),l=(0,r.default)(l,s),l.allow_trailing_dot&&o[o.length-1]==="."&&(o=o.substring(0,o.length-1)),l.allow_wildcard===!0&&o.indexOf("*.")===0&&(o=o.substring(2));var c=o.split("."),u=c[c.length-1];return l.require_tld&&(c.length<2||!l.allow_numeric_tld&&!/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(u)||/\s/.test(u))||!l.allow_numeric_tld&&/^\d+$/.test(u)?!1:c.every(function(f){return!(f.length>63&&!l.ignore_max_length||!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(f)||/[\uff01-\uff5e]/.test(f)||/^-|-$/.test(f)||!l.allow_underscores&&/_/.test(f))})}n.exports=e.default,n.exports.default=e.default})(uo,uo.exports)),uo.exports}var fo={exports:{}},Qg;function bu(){return Qg||(Qg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",s="(".concat(i,"[.]){3}").concat(i),a=new RegExp("^".concat(s,"$")),o="(?:[0-9a-fA-F]{1,4})",l=new RegExp("^("+"(?:".concat(o,":){7}(?:").concat(o,"|:)|")+"(?:".concat(o,":){6}(?:").concat(s,"|:").concat(o,"|:)|")+"(?:".concat(o,":){5}(?::").concat(s,"|(:").concat(o,"){1,2}|:)|")+"(?:".concat(o,":){4}(?:(:").concat(o,"){0,1}:").concat(s,"|(:").concat(o,"){1,3}|:)|")+"(?:".concat(o,":){3}(?:(:").concat(o,"){0,2}:").concat(s,"|(:").concat(o,"){1,4}|:)|")+"(?:".concat(o,":){2}(?:(:").concat(o,"){0,3}:").concat(s,"|(:").concat(o,"){1,5}|:)|")+"(?:".concat(o,":){1}(?:(:").concat(o,"){0,4}:").concat(s,"|(:").concat(o,"){1,6}|:)|")+"(?::((?::".concat(o,"){0,5}:").concat(s,"|(?::").concat(o,"){1,7}|:))")+")(%[0-9a-zA-Z-.:]{1,})?$");function c(u){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return(0,t.default)(u),f=String(f),f?f==="4"?a.test(u):f==="6"?l.test(u):!1:c(u,4)||c(u,6)}n.exports=e.default,n.exports.default=e.default})(fo,fo.exports)),fo.exports}var e0;function nS(){return e0||(e0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=o(U()),r=o(tS()),i=o(Th()),s=o(bu()),a=o(Ht());function o(y){return y&&y.__esModule?y:{default:y}}var l={allow_display_name:!1,allow_underscores:!1,require_display_name:!1,allow_utf8_local_part:!0,require_tld:!0,blacklisted_chars:"",ignore_max_length:!1,host_blacklist:[],host_whitelist:[]},c=/^([^\x00-\x1F\x7F-\x9F\cX]+)</i,u=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,f=/^[a-z\d]+$/,h=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,p=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,g=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i,m=254;function v(y){var w=y.replace(/^"(.+)"$/,"$1");if(!w.trim())return!1;var S=/[\.";<>]/.test(w);if(S){if(w===y)return!1;var k=w.split('"').length===w.split('\\"').length;if(!k)return!1}return!0}function b(y,w){if((0,t.default)(y),w=(0,a.default)(w,l),w.require_display_name||w.allow_display_name){var S=y.match(c);if(S){var k=S[1];if(y=y.replace(k,"").replace(/(^<|>$)/g,""),k.endsWith(" ")&&(k=k.slice(0,-1)),!v(k))return!1}else if(w.require_display_name)return!1}if(!w.ignore_max_length&&y.length>m)return!1;var A=y.split("@"),C=A.pop(),E=C.toLowerCase();if(w.host_blacklist.includes(E)||w.host_whitelist.length>0&&!w.host_whitelist.includes(E))return!1;var M=A.join("@");if(w.domain_specific_validation&&(E==="gmail.com"||E==="googlemail.com")){M=M.toLowerCase();var R=M.split("+")[0];if(!(0,r.default)(R.replace(/\./g,""),{min:6,max:30}))return!1;for(var T=R.split("."),N=0;N<T.length;N++)if(!f.test(T[N]))return!1}if(w.ignore_max_length===!1&&(!(0,r.default)(M,{max:64})||!(0,r.default)(C,{max:254})))return!1;if(!(0,i.default)(C,{require_tld:w.require_tld,ignore_max_length:w.ignore_max_length,allow_underscores:w.allow_underscores})){if(!w.allow_ip_domain)return!1;if(!(0,s.default)(C)){if(!C.startsWith("[")||!C.endsWith("]"))return!1;var P=C.slice(1,-1);if(P.length===0||!(0,s.default)(P))return!1}}if(M[0]==='"')return M=M.slice(1,M.length-1),w.allow_utf8_local_part?g.test(M):h.test(M);for(var L=w.allow_utf8_local_part?p:u,$=M.split("."),q=0;q<$.length;q++)if(!L.test($[q]))return!1;return!(w.blacklisted_chars&&M.search(new RegExp("[".concat(w.blacklisted_chars,"]+"),"g"))!==-1)}n.exports=e.default,n.exports.default=e.default})(lo,lo.exports)),lo.exports}var ho={exports:{}},t0;function Z_(){return t0||(t0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=a(U()),r=a(Th()),i=a(bu()),s=a(Ht());function a(y){return y&&y.__esModule?y:{default:y}}function o(y,w){return h(y)||f(y,w)||c(y,w)||l()}function l(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
26
|
+
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord}create(){return this.regexp?new Q9(this):new J9(this)}getCursor(e,t=0,r){let i=e.doc?e:ye.create({doc:e});return r==null&&(r=i.doc.length),this.regexp?wi(this,i,t,r):yi(this,i,t,r)}}class gw{constructor(e){this.spec=e}}function yi(n,e,t,r){return new Ui(e.doc,n.unquoted,t,r,n.caseSensitive?void 0:i=>i.toLowerCase(),n.wholeWord?Y9(e.doc,e.charCategorizer(e.selection.main.head)):void 0)}function Y9(n,e){return(t,r,i,s)=>((s>t||s+i.length<r)&&(s=Math.max(0,t-2),i=n.sliceString(s,Math.min(n.length,r+2))),(e(Pc(i,t-s))!=Ue.Word||e(Lc(i,t-s))!=Ue.Word)&&(e(Lc(i,r-s))!=Ue.Word||e(Pc(i,r-s))!=Ue.Word))}class J9 extends gw{constructor(e){super(e)}nextMatch(e,t,r){let i=yi(this.spec,e,r,e.doc.length).nextOverlapping();return i.done&&(i=yi(this.spec,e,0,t).nextOverlapping()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=r;;){let s=Math.max(t,i-1e4-this.spec.unquoted.length),a=yi(this.spec,e,s,i),o=null;for(;!a.nextOverlapping().done;)o=a.value;if(o)return o;if(s==t)return null;i-=1e4}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=yi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=yi(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}function wi(n,e,t,r){return new hw(e.doc,n.search,{ignoreCase:!n.caseSensitive,test:n.wholeWord?X9(e.charCategorizer(e.selection.main.head)):void 0},t,r)}function Pc(n,e){return n.slice(Et(n,e,!1),e)}function Lc(n,e){return n.slice(e,Et(n,e))}function X9(n){return(e,t,r)=>!r[0].length||(n(Pc(r.input,r.index))!=Ue.Word||n(Lc(r.input,r.index))!=Ue.Word)&&(n(Lc(r.input,r.index+r[0].length))!=Ue.Word||n(Pc(r.input,r.index+r[0].length))!=Ue.Word)}class Q9 extends gw{nextMatch(e,t,r){let i=wi(this.spec,e,r,e.doc.length).next();return i.done&&(i=wi(this.spec,e,0,t).next()),i.done?null:i.value}prevMatchInRange(e,t,r){for(let i=1;;i++){let s=Math.max(t,r-i*1e4),a=wi(this.spec,e,s,r),o=null;for(;!a.next().done;)o=a.value;if(o&&(s==t||o.from>s+10))return o;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace.replace(/\$([$&\d+])/g,(t,r)=>r=="$"?"$":r=="&"?e.match[0]:r!="0"&&+r<e.match.length?e.match[r]:t))}matchAll(e,t){let r=wi(this.spec,e,0,e.doc.length),i=[];for(;!r.next().done;){if(i.length>=t)return null;i.push(r.value)}return i}highlight(e,t,r,i){let s=wi(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)i(s.value.from,s.value.to)}}const Zs=pe.define(),xh=pe.define(),wr=vt.define({create(n){return new ad(Af(n).create(),null)},update(n,e){for(let t of e.effects)t.is(Zs)?n=new ad(t.value.create(),n.panel):t.is(xh)&&(n=new ad(n.query,t.value?yh:null));return n},provide:n=>Ws.from(n,e=>e.panel)});class ad{constructor(e,t){this.query=e,this.panel=t}}const eP=le.mark({class:"cm-searchMatch"}),tP=le.mark({class:"cm-searchMatch cm-searchMatch-selected"}),nP=it.fromClass(class{constructor(n){this.view=n,this.decorations=this.highlight(n.state.field(wr))}update(n){let e=n.state.field(wr);(e!=n.startState.field(wr)||n.docChanged||n.selectionSet||n.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:n,panel:e}){if(!e||!n.spec.valid)return le.none;let{view:t}=this,r=new Cr;for(let i=0,s=t.visibleRanges,a=s.length;i<a;i++){let{from:o,to:l}=s[i];for(;i<a-1&&l>s[i+1].from-500;)l=s[++i].to;n.highlight(t.state,o,l,(c,u)=>{let f=t.state.selection.ranges.some(h=>h.from==c&&h.to==u);r.add(c,u,f?tP:eP)})}return r.finish()}},{decorations:n=>n.decorations});function ma(n){return e=>{let t=e.state.field(wr,!1);return t&&t.query.spec.valid?n(e,t):xw(e)}}const _c=ma((n,{query:e})=>{let{to:t}=n.state.selection.main,r=e.nextMatch(n.state,t,t);if(!r)return!1;let i=B.single(r.from,r.to),s=n.state.facet(ts);return n.dispatch({selection:i,effects:[wh(n,r),s.scrollToMatch(i.main,n)],userEvent:"select.search"}),bw(n),!0}),jc=ma((n,{query:e})=>{let{state:t}=n,{from:r}=t.selection.main,i=e.prevMatch(t,r,r);if(!i)return!1;let s=B.single(i.from,i.to),a=n.state.facet(ts);return n.dispatch({selection:s,effects:[wh(n,i),a.scrollToMatch(s.main,n)],userEvent:"select.search"}),bw(n),!0}),rP=ma((n,{query:e})=>{let t=e.matchAll(n.state,1e3);return!t||!t.length?!1:(n.dispatch({selection:B.create(t.map(r=>B.range(r.from,r.to))),userEvent:"select.search.matches"}),!0)}),iP=({state:n,dispatch:e})=>{let t=n.selection;if(t.ranges.length>1||t.main.empty)return!1;let{from:r,to:i}=t.main,s=[],a=0;for(let o=new Ui(n.doc,n.sliceDoc(r,i));!o.next().done;){if(s.length>1e3)return!1;o.value.from==r&&(a=s.length),s.push(B.range(o.value.from,o.value.to))}return e(n.update({selection:B.create(s,a),userEvent:"select.search.matches"})),!0},ag=ma((n,{query:e})=>{let{state:t}=n,{from:r,to:i}=t.selection.main;if(t.readOnly)return!1;let s=e.nextMatch(t,r,r);if(!s)return!1;let a=[],o,l,c=[];if(s.from==r&&s.to==i&&(l=t.toText(e.getReplacement(s)),a.push({from:s.from,to:s.to,insert:l}),s=e.nextMatch(t,s.from,s.to),c.push(G.announce.of(t.phrase("replaced match on line $",t.doc.lineAt(r).number)+"."))),s){let u=a.length==0||a[0].from>=s.to?0:s.to-s.from-l.length;o=B.single(s.from-u,s.to-u),c.push(wh(n,s)),c.push(t.facet(ts).scrollToMatch(o.main,n))}return n.dispatch({changes:a,selection:o,effects:c,userEvent:"input.replace"}),!0}),sP=ma((n,{query:e})=>{if(n.state.readOnly)return!1;let t=e.matchAll(n.state,1e9).map(i=>{let{from:s,to:a}=i;return{from:s,to:a,insert:e.getReplacement(i)}});if(!t.length)return!1;let r=n.state.phrase("replaced $ matches",t.length)+".";return n.dispatch({changes:t,effects:G.announce.of(r),userEvent:"input.replace.all"}),!0});function yh(n){return n.state.facet(ts).createPanel(n)}function Af(n,e){var t,r,i,s,a;let o=n.selection.main,l=o.empty||o.to>o.from+100?"":n.sliceDoc(o.from,o.to);if(e&&!l)return e;let c=n.facet(ts);return new mw({search:((t=e?.literal)!==null&&t!==void 0?t:c.literal)?l:l.replace(/\n/g,"\\n"),caseSensitive:(r=e?.caseSensitive)!==null&&r!==void 0?r:c.caseSensitive,literal:(i=e?.literal)!==null&&i!==void 0?i:c.literal,regexp:(s=e?.regexp)!==null&&s!==void 0?s:c.regexp,wholeWord:(a=e?.wholeWord)!==null&&a!==void 0?a:c.wholeWord})}function vw(n){let e=zs(n,yh);return e&&e.dom.querySelector("[main-field]")}function bw(n){let e=vw(n);e&&e==n.root.activeElement&&e.select()}const xw=n=>{let e=n.state.field(wr,!1);if(e&&e.panel){let t=vw(n);if(t&&t!=n.root.activeElement){let r=Af(n.state,e.query.spec);r.valid&&n.dispatch({effects:Zs.of(r)}),t.focus(),t.select()}}else n.dispatch({effects:[xh.of(!0),e?Zs.of(Af(n.state,e.query.spec)):pe.appendConfig.of(cP)]});return!0},yw=n=>{let e=n.state.field(wr,!1);if(!e||!e.panel)return!1;let t=zs(n,yh);return t&&t.dom.contains(n.root.activeElement)&&n.focus(),n.dispatch({effects:xh.of(!1)}),!0},aP=[{key:"Mod-f",run:xw,scope:"editor search-panel"},{key:"F3",run:_c,shift:jc,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:_c,shift:jc,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:yw,scope:"editor search-panel"},{key:"Mod-Shift-l",run:iP},{key:"Alt-g",run:j9},{key:"Mod-d",run:Z9,preventDefault:!0}];class oP{constructor(e){this.view=e;let t=this.query=e.state.field(wr).query.spec;this.commit=this.commit.bind(this),this.searchField=$e("input",{value:t.search,placeholder:Qt(e,"Find"),"aria-label":Qt(e,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=$e("input",{value:t.replace,placeholder:Qt(e,"Replace"),"aria-label":Qt(e,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=$e("input",{type:"checkbox",name:"case",form:"",checked:t.caseSensitive,onchange:this.commit}),this.reField=$e("input",{type:"checkbox",name:"re",form:"",checked:t.regexp,onchange:this.commit}),this.wordField=$e("input",{type:"checkbox",name:"word",form:"",checked:t.wholeWord,onchange:this.commit});function r(i,s,a){return $e("button",{class:"cm-button",name:i,onclick:s,type:"button"},a)}this.dom=$e("div",{onkeydown:i=>this.keydown(i),class:"cm-search"},[this.searchField,r("next",()=>_c(e),[Qt(e,"next")]),r("prev",()=>jc(e),[Qt(e,"previous")]),r("select",()=>rP(e),[Qt(e,"all")]),$e("label",null,[this.caseField,Qt(e,"match case")]),$e("label",null,[this.reField,Qt(e,"regexp")]),$e("label",null,[this.wordField,Qt(e,"by word")]),...e.state.readOnly?[]:[$e("br"),this.replaceField,r("replace",()=>ag(e),[Qt(e,"replace")]),r("replaceAll",()=>sP(e),[Qt(e,"replace all")])],$e("button",{name:"close",onclick:()=>yw(e),"aria-label":Qt(e,"close"),type:"button"},["×"])])}commit(){let e=new mw({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:Zs.of(e)}))}keydown(e){dO(this.view,e,"search-panel")?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?jc:_c)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),ag(this.view))}update(e){for(let t of e.transactions)for(let r of t.effects)r.is(Zs)&&!r.value.eq(this.query)&&this.setQuery(r.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(ts).top}}function Qt(n,e){return n.state.phrase(e)}const Ga=30,Ka=/[\s\.,:;?!]/;function wh(n,{from:e,to:t}){let r=n.state.doc.lineAt(e),i=n.state.doc.lineAt(t).to,s=Math.max(r.from,e-Ga),a=Math.min(i,t+Ga),o=n.state.sliceDoc(s,a);if(s!=r.from){for(let l=0;l<Ga;l++)if(!Ka.test(o[l+1])&&Ka.test(o[l])){o=o.slice(l);break}}if(a!=i){for(let l=o.length-1;l>o.length-Ga;l--)if(!Ka.test(o[l-1])&&Ka.test(o[l])){o=o.slice(0,l);break}}return G.announce.of(`${n.state.phrase("current match")}. ${o} ${n.state.phrase("on line")} ${r.number}.`)}const lP=G.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),cP=[wr,ti.lowest(nP),lP];class ww{constructor(e,t,r){this.state=e,this.pos=t,this.explicit=r,this.abortListeners=[]}tokenBefore(e){let t=At(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),i=t.text.slice(r-t.from,this.pos-t.from),s=i.search(Sw(e,!1));return s<0?null:{from:r+s,to:this.pos,text:i.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}}function og(n){let e=Object.keys(n).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function uP(n){let e=Object.create(null),t=Object.create(null);for(let{label:i}of n){e[i[0]]=!0;for(let s=1;s<i.length;s++)t[i[s]]=!0}let r=og(e)+og(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function dP(n){let e=n.map(i=>typeof i=="string"?{label:i}:i),[t,r]=e.every(i=>/^\w+$/.test(i.label))?[/\w*$/,/\w+$/]:uP(e);return i=>{let s=i.matchBefore(r);return s||i.explicit?{from:s?s.from:i.pos,options:e,validFor:t}:null}}function C6(n,e){return t=>{for(let r=At(t.state).resolveInner(t.pos,-1);r;r=r.parent){if(n.indexOf(r.name)>-1)return null;if(r.type.isTop)break}return e(t)}}class lg{constructor(e,t,r,i){this.completion=e,this.source=t,this.match=r,this.score=i}}function Sr(n){return n.selection.main.from}function Sw(n,e){var t;let{source:r}=n,i=e&&r[0]!="^",s=r[r.length-1]!="$";return!i&&!s?n:new RegExp(`${i?"^":""}(?:${r})${s?"$":""}`,(t=n.flags)!==null&&t!==void 0?t:n.ignoreCase?"i":"")}const kw=Zn.define();function fP(n,e,t,r){let{main:i}=n.selection,s=t-i.from,a=r-i.from;return Object.assign(Object.assign({},n.changeByRange(o=>o!=i&&t!=r&&n.sliceDoc(o.from+s,o.from+a)!=n.sliceDoc(t,r)?{range:o}:{changes:{from:o.from+s,to:r==i.from?o.to:o.from+a,insert:e},range:B.cursor(o.from+s+e.length)})),{userEvent:"input.complete"})}const cg=new WeakMap;function hP(n){if(!Array.isArray(n))return n;let e=cg.get(n);return e||cg.set(n,e=dP(n)),e}const Sh=pe.define(),Ys=pe.define();class pP{constructor(e){this.pattern=e,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let t=0;t<e.length;){let r=wt(e,t),i=dn(r);this.chars.push(r);let s=e.slice(t,t+i),a=s.toUpperCase();this.folded.push(wt(a==s?s.toLowerCase():a,0)),t+=i}this.astral=e.length!=this.chars.length}ret(e,t){return this.score=e,this.matched=t,!0}match(e){if(this.pattern.length==0)return this.ret(-100,[]);if(e.length<this.pattern.length)return!1;let{chars:t,folded:r,any:i,precise:s,byWord:a}=this;if(t.length==1){let y=wt(e,0),w=dn(y),S=w==e.length?0:-100;if(y!=t[0])if(y==r[0])S+=-200;else return!1;return this.ret(S,[0,w])}let o=e.indexOf(this.pattern);if(o==0)return this.ret(e.length==this.pattern.length?0:-100,[0,this.pattern.length]);let l=t.length,c=0;if(o<0){for(let y=0,w=Math.min(e.length,200);y<w&&c<l;){let S=wt(e,y);(S==t[c]||S==r[c])&&(i[c++]=y),y+=dn(S)}if(c<l)return!1}let u=0,f=0,h=!1,p=0,g=-1,m=-1,v=/[a-z]/.test(e),b=!0;for(let y=0,w=Math.min(e.length,200),S=0;y<w&&f<l;){let k=wt(e,y);o<0&&(u<l&&k==t[u]&&(s[u++]=y),p<l&&(k==t[p]||k==r[p]?(p==0&&(g=y),m=y+1,p++):p=0));let A,C=k<255?k>=48&&k<=57||k>=97&&k<=122?2:k>=65&&k<=90?1:0:(A=Qf(k))!=A.toLowerCase()?1:A!=A.toUpperCase()?2:0;(!y||C==1&&v||S==0&&C!=0)&&(t[f]==k||r[f]==k&&(h=!0)?a[f++]=y:a.length&&(b=!1)),S=C,y+=dn(k)}return f==l&&a[0]==0&&b?this.result(-100+(h?-200:0),a,e):p==l&&g==0?this.ret(-200-e.length+(m==e.length?0:-100),[0,m]):o>-1?this.ret(-700-e.length,[o,o+this.pattern.length]):p==l?this.ret(-900-e.length,[g,m]):f==l?this.result(-100+(h?-200:0)+-700+(b?0:-1100),a,e):t.length==2?!1:this.result((i[0]?-700:0)+-200+-1100,i,e)}result(e,t,r){let i=[],s=0;for(let a of t){let o=a+(this.astral?dn(wt(r,a)):1);s&&i[s-1]==a?i[s-1]=o:(i[s++]=a,i[s++]=o)}return this.ret(e-r.length,i)}}const Zt=J.define({combine(n){return Yn(n,{activateOnTyping:!0,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:mP,compareCompletions:(e,t)=>e.label.localeCompare(t.label),interactionDelay:75},{defaultKeymap:(e,t)=>e&&t,closeOnBlur:(e,t)=>e&&t,icons:(e,t)=>e&&t,tooltipClass:(e,t)=>r=>ug(e(r),t(r)),optionClass:(e,t)=>r=>ug(e(r),t(r)),addToOptions:(e,t)=>e.concat(t)})}});function ug(n,e){return n?e?n+" "+e:n:e}function mP(n,e,t,r,i){let s=n.textDirection==qe.RTL,a=s,o=!1,l="top",c,u,f=e.left-i.left,h=i.right-e.right,p=r.right-r.left,g=r.bottom-r.top;if(a&&f<Math.min(p,h)?a=!1:!a&&h<Math.min(p,f)&&(a=!0),p<=(a?f:h))c=Math.max(i.top,Math.min(t.top,i.bottom-g))-e.top,u=Math.min(400,a?f:h);else{o=!0,u=Math.min(400,(s?e.right:i.right-e.left)-30);let m=i.bottom-e.bottom;m>=g||m>e.top?c=t.bottom-e.top:(l="bottom",c=e.bottom-t.top)}return{style:`${l}: ${c}px; max-width: ${u}px`,class:"cm-completionInfo-"+(o?s?"left-narrow":"right-narrow":a?"left":"right")}}function gP(n){let e=n.addToOptions.slice();return n.icons&&e.push({render(t){let r=document.createElement("div");return r.classList.add("cm-completionIcon"),t.type&&r.classList.add(...t.type.split(/\s+/g).map(i=>"cm-completionIcon-"+i)),r.setAttribute("aria-hidden","true"),r},position:20}),e.push({render(t,r,i){let s=document.createElement("span");s.className="cm-completionLabel";let a=t.displayLabel||t.label,o=0;for(let l=0;l<i.length;){let c=i[l++],u=i[l++];c>o&&s.appendChild(document.createTextNode(a.slice(o,c)));let f=s.appendChild(document.createElement("span"));f.appendChild(document.createTextNode(a.slice(c,u))),f.className="cm-completionMatchedText",o=u}return o<a.length&&s.appendChild(document.createTextNode(a.slice(o))),s},position:50},{render(t){if(!t.detail)return null;let r=document.createElement("span");return r.className="cm-completionDetail",r.textContent=t.detail,r},position:80}),e.sort((t,r)=>t.position-r.position).map(t=>t.render)}function dg(n,e,t){if(n<=t)return{from:0,to:n};if(e<0&&(e=0),e<=n>>1){let i=Math.floor(e/t);return{from:i*t,to:(i+1)*t}}let r=Math.floor((n-e)/t);return{from:n-(r+1)*t,to:n-r*t}}class vP{constructor(e,t,r){this.view=e,this.stateField=t,this.applyCompletion=r,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:l=>this.placeInfo(l),key:this},this.space=null,this.currentClass="";let i=e.state.field(t),{options:s,selected:a}=i.open,o=e.state.facet(Zt);this.optionContent=gP(o),this.optionClass=o.optionClass,this.tooltipClass=o.tooltipClass,this.range=dg(s.length,a,o.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(e.state),this.dom.addEventListener("mousedown",l=>{for(let c=l.target,u;c&&c!=this.dom;c=c.parentNode)if(c.nodeName=="LI"&&(u=/-(\d+)$/.exec(c.id))&&+u[1]<s.length){this.applyCompletion(e,s[+u[1]]),l.preventDefault();return}}),this.dom.addEventListener("focusout",l=>{let c=e.state.field(this.stateField,!1);c&&c.tooltip&&e.state.facet(Zt).closeOnBlur&&l.relatedTarget!=e.contentDOM&&e.dispatch({effects:Ys.of(null)})}),this.list=this.dom.appendChild(this.createListBox(s,i.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}mount(){this.updateSel()}update(e){var t,r,i;let s=e.state.field(this.stateField),a=e.startState.field(this.stateField);this.updateTooltipClass(e.state),s!=a&&(this.updateSel(),((t=s.open)===null||t===void 0?void 0:t.disabled)!=((r=a.open)===null||r===void 0?void 0:r.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!(!((i=s.open)===null||i===void 0)&&i.disabled)))}updateTooltipClass(e){let t=this.tooltipClass(e);if(t!=this.currentClass){for(let r of this.currentClass.split(" "))r&&this.dom.classList.remove(r);for(let r of t.split(" "))r&&this.dom.classList.add(r);this.currentClass=t}}positioned(e){this.space=e,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let e=this.view.state.field(this.stateField),t=e.open;if((t.selected>-1&&t.selected<this.range.from||t.selected>=this.range.to)&&(this.range=dg(t.options.length,t.selected,this.view.state.facet(Zt).maxRenderedOptions),this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t.options,e.id,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})),this.updateSelectedOption(t.selected)){this.destroyInfo();let{completion:r}=t.options[t.selected],{info:i}=r;if(!i)return;let s=typeof i=="string"?document.createTextNode(i):i(r);if(!s)return;"then"in s?s.then(a=>{a&&this.view.state.field(this.stateField,!1)==e&&this.addInfoPane(a,r)}).catch(a=>mn(this.view.state,a,"completion info")):this.addInfoPane(s,r)}}addInfoPane(e,t){this.destroyInfo();let r=this.info=document.createElement("div");if(r.className="cm-tooltip cm-completionInfo",e.nodeType!=null)r.appendChild(e),this.infoDestroy=null;else{let{dom:i,destroy:s}=e;r.appendChild(i),this.infoDestroy=s||null}this.dom.appendChild(r),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(e){let t=null;for(let r=this.list.firstChild,i=this.range.from;r;r=r.nextSibling,i++)r.nodeName!="LI"||!r.id?i--:i==e?r.hasAttribute("aria-selected")||(r.setAttribute("aria-selected","true"),t=r):r.hasAttribute("aria-selected")&&r.removeAttribute("aria-selected");return t&&xP(this.list,t),t}measureInfo(){let e=this.dom.querySelector("[aria-selected]");if(!e||!this.info)return null;let t=this.dom.getBoundingClientRect(),r=this.info.getBoundingClientRect(),i=e.getBoundingClientRect(),s=this.space;if(!s){let a=this.dom.ownerDocument.defaultView||window;s={left:0,top:0,right:a.innerWidth,bottom:a.innerHeight}}return i.top>Math.min(s.bottom,t.bottom)-10||i.bottom<Math.max(s.top,t.top)+10?null:this.view.state.facet(Zt).positionInfo(this.view,t,i,r,s)}placeInfo(e){this.info&&(e?(e.style&&(this.info.style.cssText=e.style),this.info.className="cm-tooltip cm-completionInfo "+(e.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(e,t,r){const i=document.createElement("ul");i.id=t,i.setAttribute("role","listbox"),i.setAttribute("aria-expanded","true"),i.setAttribute("aria-label",this.view.state.phrase("Completions"));let s=null;for(let a=r.from;a<r.to;a++){let{completion:o,match:l}=e[a],{section:c}=o;if(c){let h=typeof c=="string"?c:c.name;if(h!=s&&(a>r.from||r.from==0))if(s=h,typeof c!="string"&&c.header)i.appendChild(c.header(c));else{let p=i.appendChild(document.createElement("completion-section"));p.textContent=h}}const u=i.appendChild(document.createElement("li"));u.id=t+"-"+a,u.setAttribute("role","option");let f=this.optionClass(o);f&&(u.className=f);for(let h of this.optionContent){let p=h(o,this.view.state,l);p&&u.appendChild(p)}}return r.from&&i.classList.add("cm-completionListIncompleteTop"),r.to<e.length&&i.classList.add("cm-completionListIncompleteBottom"),i}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function bP(n,e){return t=>new vP(t,n,e)}function xP(n,e){let t=n.getBoundingClientRect(),r=e.getBoundingClientRect();r.top<t.top?n.scrollTop-=t.top-r.top:r.bottom>t.bottom&&(n.scrollTop+=r.bottom-t.bottom)}function fg(n){return(n.boost||0)*100+(n.apply?10:0)+(n.info?5:0)+(n.type?1:0)}function yP(n,e){let t=[],r=null,i=l=>{t.push(l);let{section:c}=l.completion;if(c){r||(r=[]);let u=typeof c=="string"?c:c.name;r.some(f=>f.name==u)||r.push(typeof c=="string"?{name:u}:c)}};for(let l of n)if(l.hasResult()){let c=l.result.getMatch;if(l.result.filter===!1)for(let u of l.result.options)i(new lg(u,l.source,c?c(u):[],1e9-t.length));else{let u=new pP(e.sliceDoc(l.from,l.to));for(let f of l.result.options)if(u.match(f.label)){let h=f.displayLabel?c?c(f,u.matched):[]:u.matched;i(new lg(f,l.source,h,u.score+(f.boost||0)))}}}if(r){let l=Object.create(null),c=0,u=(f,h)=>{var p,g;return((p=f.rank)!==null&&p!==void 0?p:1e9)-((g=h.rank)!==null&&g!==void 0?g:1e9)||(f.name<h.name?-1:1)};for(let f of r.sort(u))c-=1e5,l[f.name]=c;for(let f of t){let{section:h}=f.completion;h&&(f.score+=l[typeof h=="string"?h:h.name])}}let s=[],a=null,o=e.facet(Zt).compareCompletions;for(let l of t.sort((c,u)=>u.score-c.score||o(c.completion,u.completion))){let c=l.completion;!a||a.label!=c.label||a.detail!=c.detail||a.type!=null&&c.type!=null&&a.type!=c.type||a.apply!=c.apply||a.boost!=c.boost?s.push(l):fg(l.completion)>fg(a)&&(s[s.length-1]=l),a=l.completion}return s}class Ii{constructor(e,t,r,i,s,a){this.options=e,this.attrs=t,this.tooltip=r,this.timestamp=i,this.selected=s,this.disabled=a}setSelected(e,t){return e==this.selected||e>=this.options.length?this:new Ii(this.options,hg(t,e),this.tooltip,this.timestamp,e,this.disabled)}static build(e,t,r,i,s){let a=yP(e,t);if(!a.length)return i&&e.some(l=>l.state==1)?new Ii(i.options,i.attrs,i.tooltip,i.timestamp,i.selected,!0):null;let o=t.facet(Zt).selectOnOpen?0:-1;if(i&&i.selected!=o&&i.selected!=-1){let l=i.options[i.selected].completion;for(let c=0;c<a.length;c++)if(a[c].completion==l){o=c;break}}return new Ii(a,hg(r,o),{pos:e.reduce((l,c)=>c.hasResult()?Math.min(l,c.from):l,1e8),create:bP(nn,Mw),above:s.aboveCursor},i?i.timestamp:Date.now(),o,!1)}map(e){return new Ii(this.options,this.attrs,Object.assign(Object.assign({},this.tooltip),{pos:e.mapPos(this.tooltip.pos)}),this.timestamp,this.selected,this.disabled)}}class Bc{constructor(e,t,r){this.active=e,this.id=t,this.open=r}static start(){return new Bc(kP,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(e){let{state:t}=e,r=t.facet(Zt),s=(r.override||t.languageDataAt("autocomplete",Sr(t)).map(hP)).map(o=>(this.active.find(c=>c.source==o)||new Gt(o,this.active.some(c=>c.state!=0)?1:0)).update(e,r));s.length==this.active.length&&s.every((o,l)=>o==this.active[l])&&(s=this.active);let a=this.open;a&&e.docChanged&&(a=a.map(e.changes)),e.selection||s.some(o=>o.hasResult()&&e.changes.touchesRange(o.from,o.to))||!wP(s,this.active)?a=Ii.build(s,t,this.id,a,r):a&&a.disabled&&!s.some(o=>o.state==1)&&(a=null),!a&&s.every(o=>o.state!=1)&&s.some(o=>o.hasResult())&&(s=s.map(o=>o.hasResult()?new Gt(o.source,0):o));for(let o of e.effects)o.is(Aw)&&(a=a&&a.setSelected(o.value,this.id));return s==this.active&&a==this.open?this:new Bc(s,this.id,a)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:SP}}function wP(n,e){if(n==e)return!0;for(let t=0,r=0;;){for(;t<n.length&&!n[t].hasResult;)t++;for(;r<e.length&&!e[r].hasResult;)r++;let i=t==n.length,s=r==e.length;if(i||s)return i==s;if(n[t++].result!=e[r++].result)return!1}}const SP={"aria-autocomplete":"list"};function hg(n,e){let t={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":n};return e>-1&&(t["aria-activedescendant"]=n+"-"+e),t}const kP=[];function Mf(n){return n.isUserEvent("input.type")?"input":n.isUserEvent("delete.backward")?"delete":null}class Gt{constructor(e,t,r=-1){this.source=e,this.state=t,this.explicitPos=r}hasResult(){return!1}update(e,t){let r=Mf(e),i=this;r?i=i.handleUserEvent(e,r,t):e.docChanged?i=i.handleChange(e):e.selection&&i.state!=0&&(i=new Gt(i.source,0));for(let s of e.effects)if(s.is(Sh))i=new Gt(i.source,1,s.value?Sr(e.state):-1);else if(s.is(Ys))i=new Gt(i.source,0);else if(s.is(Cw))for(let a of s.value)a.source==i.source&&(i=a);return i}handleUserEvent(e,t,r){return t=="delete"||!r.activateOnTyping?this.map(e.changes):new Gt(this.source,1)}handleChange(e){return e.changes.touchesRange(Sr(e.startState))?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty||this.explicitPos<0?this:new Gt(this.source,this.state,e.mapPos(this.explicitPos))}}class ji extends Gt{constructor(e,t,r,i,s){super(e,2,t),this.result=r,this.from=i,this.to=s}hasResult(){return!0}handleUserEvent(e,t,r){var i;let s=e.changes.mapPos(this.from),a=e.changes.mapPos(this.to,1),o=Sr(e.state);if((this.explicitPos<0?o<=s:o<this.from)||o>a||t=="delete"&&Sr(e.startState)==this.from)return new Gt(this.source,t=="input"&&r.activateOnTyping?1:0);let l=this.explicitPos<0?-1:e.changes.mapPos(this.explicitPos),c;return CP(this.result.validFor,e.state,s,a)?new ji(this.source,l,this.result,s,a):this.result.update&&(c=this.result.update(this.result,s,a,new ww(e.state,o,l>=0)))?new ji(this.source,l,c,c.from,(i=c.to)!==null&&i!==void 0?i:Sr(e.state)):new Gt(this.source,1,l)}handleChange(e){return e.changes.touchesRange(this.from,this.to)?new Gt(this.source,0):this.map(e.changes)}map(e){return e.empty?this:new ji(this.source,this.explicitPos<0?-1:e.mapPos(this.explicitPos),this.result,e.mapPos(this.from),e.mapPos(this.to,1))}}function CP(n,e,t,r){if(!n)return!1;let i=e.sliceDoc(t,r);return typeof n=="function"?n(i,t,r,e):Sw(n,!0).test(i)}const Cw=pe.define({map(n,e){return n.map(t=>t.map(e))}}),Aw=pe.define(),nn=vt.define({create(){return Bc.start()},update(n,e){return n.update(e)},provide:n=>[lh.from(n,e=>e.tooltip),G.contentAttributes.from(n,e=>e.attrs)]});function Mw(n,e){const t=e.completion.apply||e.completion.label;let r=n.state.field(nn).active.find(i=>i.source==e.source);return r instanceof ji?(typeof t=="string"?n.dispatch(Object.assign(Object.assign({},fP(n.state,t,r.from,r.to)),{annotations:kw.of(e.completion)})):t(n,e.completion,r.from,r.to),!0):!1}function Za(n,e="option"){return t=>{let r=t.state.field(nn,!1);if(!r||!r.open||r.open.disabled||Date.now()-r.open.timestamp<t.state.facet(Zt).interactionDelay)return!1;let i=1,s;e=="page"&&(s=cy(t,r.open.tooltip))&&(i=Math.max(2,Math.floor(s.dom.offsetHeight/s.dom.querySelector("li").offsetHeight)-1));let{length:a}=r.open.options,o=r.open.selected>-1?r.open.selected+i*(n?1:-1):n?0:a-1;return o<0?o=e=="page"?0:a-1:o>=a&&(o=e=="page"?a-1:0),t.dispatch({effects:Aw.of(o)}),!0}}const AP=n=>{let e=n.state.field(nn,!1);return n.state.readOnly||!e||!e.open||e.open.selected<0||e.open.disabled||Date.now()-e.open.timestamp<n.state.facet(Zt).interactionDelay?!1:Mw(n,e.open.options[e.open.selected])},MP=n=>n.state.field(nn,!1)?(n.dispatch({effects:Sh.of(!0)}),!0):!1,IP=n=>{let e=n.state.field(nn,!1);return!e||!e.active.some(t=>t.state!=0)?!1:(n.dispatch({effects:Ys.of(null)}),!0)};class EP{constructor(e,t){this.active=e,this.context=t,this.time=Date.now(),this.updates=[],this.done=void 0}}const pg=50,DP=50,RP=1e3,OP=it.fromClass(class{constructor(n){this.view=n,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.composing=0;for(let e of n.state.field(nn).active)e.state==1&&this.startQuery(e)}update(n){let e=n.state.field(nn);if(!n.selectionSet&&!n.docChanged&&n.startState.field(nn)==e)return;let t=n.transactions.some(r=>(r.selection||r.docChanged)&&!Mf(r));for(let r=0;r<this.running.length;r++){let i=this.running[r];if(t||i.updates.length+n.transactions.length>DP&&Date.now()-i.time>RP){for(let s of i.context.abortListeners)try{s()}catch(a){mn(this.view.state,a)}i.context.abortListeners=null,this.running.splice(r--,1)}else i.updates.push(...n.transactions)}if(this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),this.debounceUpdate=e.active.some(r=>r.state==1&&!this.running.some(i=>i.active.source==r.source))?setTimeout(()=>this.startUpdate(),pg):-1,this.composing!=0)for(let r of n.transactions)Mf(r)=="input"?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1;let{state:n}=this.view,e=n.field(nn);for(let t of e.active)t.state==1&&!this.running.some(r=>r.active.source==t.source)&&this.startQuery(t)}startQuery(n){let{state:e}=this.view,t=Sr(e),r=new ww(e,t,n.explicitPos==t),i=new EP(n,r);this.running.push(i),Promise.resolve(n.source(r)).then(s=>{i.context.aborted||(i.done=s||null,this.scheduleAccept())},s=>{this.view.dispatch({effects:Ys.of(null)}),mn(this.view.state,s)})}scheduleAccept(){this.running.every(n=>n.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),pg))}accept(){var n;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let e=[],t=this.view.state.facet(Zt);for(let r=0;r<this.running.length;r++){let i=this.running[r];if(i.done===void 0)continue;if(this.running.splice(r--,1),i.done){let a=new ji(i.active.source,i.active.explicitPos,i.done,i.done.from,(n=i.done.to)!==null&&n!==void 0?n:Sr(i.updates.length?i.updates[0].startState:this.view.state));for(let o of i.updates)a=a.update(o,t);if(a.hasResult()){e.push(a);continue}}let s=this.view.state.field(nn).active.find(a=>a.source==i.active.source);if(s&&s.state==1)if(i.done==null){let a=new Gt(i.active.source,0);for(let o of i.updates)a=a.update(o,t);a.state!=1&&e.push(a)}else this.startQuery(s)}e.length&&this.view.dispatch({effects:Cw.of(e)})}},{eventHandlers:{blur(n){let e=this.view.state.field(nn,!1);if(e&&e.tooltip&&this.view.state.facet(Zt).closeOnBlur){let t=e.open&&cy(this.view,e.open.tooltip);(!t||!t.dom.contains(n.relatedTarget))&&this.view.dispatch({effects:Ys.of(null)})}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Sh.of(!1)}),20),this.composing=0}}}),Iw=G.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}});class TP{constructor(e,t,r,i){this.field=e,this.line=t,this.from=r,this.to=i}}class kh{constructor(e,t,r){this.field=e,this.from=t,this.to=r}map(e){let t=e.mapPos(this.from,-1,kt.TrackDel),r=e.mapPos(this.to,1,kt.TrackDel);return t==null||r==null?null:new kh(this.field,t,r)}}class Ch{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let r=[],i=[t],s=e.doc.lineAt(t),a=/^\s*/.exec(s.text)[0];for(let l of this.lines){if(r.length){let c=a,u=/^\t*/.exec(l)[0].length;for(let f=0;f<u;f++)c+=e.facet(fa);i.push(t+c.length-u),l=c+l.slice(u)}r.push(l),t+=l.length+1}let o=this.fieldPositions.map(l=>new kh(l.field,i[l.line]+l.from,i[l.line]+l.to));return{text:r,ranges:o}}static parse(e){let t=[],r=[],i=[],s;for(let a of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(a);){let o=s[1]?+s[1]:null,l=s[2]||s[3]||"",c=-1;for(let u=0;u<t.length;u++)(o!=null?t[u].seq==o:l&&t[u].name==l)&&(c=u);if(c<0){let u=0;for(;u<t.length&&(o==null||t[u].seq!=null&&t[u].seq<o);)u++;t.splice(u,0,{seq:o,name:l}),c=u;for(let f of i)f.field>=c&&f.field++}i.push(new TP(c,r.length,s.index,s.index+l.length)),a=a.slice(0,s.index)+l+a.slice(s.index+s[0].length)}for(let o;o=/\\([{}])/.exec(a);){a=a.slice(0,o.index)+o[1]+a.slice(o.index+o[0].length);for(let l of i)l.line==r.length&&l.from>o.index&&(l.from--,l.to--)}r.push(a)}return new Ch(r,i)}}let NP=le.widget({widget:new class extends sr{toDOM(){let n=document.createElement("span");return n.className="cm-snippetFieldPosition",n}ignoreEvent(){return!1}}}),PP=le.mark({class:"cm-snippetField"});class ns{constructor(e,t){this.ranges=e,this.active=t,this.deco=le.set(e.map(r=>(r.from==r.to?NP:PP).range(r.from,r.to)))}map(e){let t=[];for(let r of this.ranges){let i=r.map(e);if(!i)return null;t.push(i)}return new ns(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(r=>r.field==this.active&&r.from<=t.from&&r.to>=t.to))}}const ga=pe.define({map(n,e){return n&&n.map(e)}}),LP=pe.define(),Js=vt.define({create(){return null},update(n,e){for(let t of e.effects){if(t.is(ga))return t.value;if(t.is(LP)&&n)return new ns(n.ranges,t.value)}return n&&e.docChanged&&(n=n.map(e.changes)),n&&e.selection&&!n.selectionInsideField(e.selection)&&(n=null),n},provide:n=>G.decorations.from(n,e=>e?e.deco:le.none)});function Ah(n,e){return B.create(n.filter(t=>t.field==e).map(t=>B.range(t.from,t.to)))}function _P(n){let e=Ch.parse(n);return(t,r,i,s)=>{let{text:a,ranges:o}=e.instantiate(t.state,i),l={changes:{from:i,to:s,insert:ke.of(a)},scrollIntoView:!0,annotations:r?kw.of(r):void 0};if(o.length&&(l.selection=Ah(o,0)),o.length>1){let c=new ns(o,0),u=l.effects=[ga.of(c)];t.state.field(Js,!1)===void 0&&u.push(pe.appendConfig.of([Js,HP,VP,Iw]))}t.dispatch(t.state.update(l))}}function Ew(n){return({state:e,dispatch:t})=>{let r=e.field(Js,!1);if(!r||n<0&&r.active==0)return!1;let i=r.active+n,s=n>0&&!r.ranges.some(a=>a.field==i+n);return t(e.update({selection:Ah(r.ranges,i),effects:ga.of(s?null:new ns(r.ranges,i))})),!0}}const jP=({state:n,dispatch:e})=>n.field(Js,!1)?(e(n.update({effects:ga.of(null)})),!0):!1,BP=Ew(1),$P=Ew(-1),FP=[{key:"Tab",run:BP,shift:$P},{key:"Escape",run:jP}],mg=J.define({combine(n){return n.length?n[0]:FP}}),HP=ti.highest(ua.compute([mg],n=>n.facet(mg)));function A6(n,e){return Object.assign(Object.assign({},e),{apply:_P(n)})}const VP=G.domEventHandlers({mousedown(n,e){let t=e.state.field(Js,!1),r;if(!t||(r=e.posAtCoords({x:n.clientX,y:n.clientY}))==null)return!1;let i=t.ranges.find(s=>s.from<=r&&s.to>=r);return!i||i.field==t.active?!1:(e.dispatch({selection:Ah(t.ranges,i.field),effects:ga.of(t.ranges.some(s=>s.field>i.field)?new ns(t.ranges,i.field):null)}),!0)}}),Xs={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},zr=pe.define({map(n,e){let t=e.mapPos(n,-1,kt.TrackAfter);return t??void 0}}),Mh=new class extends Zr{};Mh.startSide=1;Mh.endSide=-1;const Dw=vt.define({create(){return Pe.empty},update(n,e){if(e.selection){let t=e.state.doc.lineAt(e.selection.main.head).from,r=e.startState.doc.lineAt(e.startState.selection.main.head).from;t!=e.changes.mapPos(r,-1)&&(n=Pe.empty)}n=n.map(e.changes);for(let t of e.effects)t.is(zr)&&(n=n.update({add:[Mh.range(t.value,t.value+1)]}));return n}});function UP(){return[WP,Dw]}const od="()[]{}<>";function Rw(n){for(let e=0;e<od.length;e+=2)if(od.charCodeAt(e)==n)return od.charAt(e+1);return Qf(n<128?n:n+1)}function Ow(n,e){return n.languageDataAt("closeBrackets",e)[0]||Xs}const zP=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),WP=G.inputHandler.of((n,e,t,r)=>{if((zP?n.composing:n.compositionStarted)||n.state.readOnly)return!1;let i=n.state.selection.main;if(r.length>2||r.length==2&&dn(wt(r,0))==1||e!=i.from||t!=i.to)return!1;let s=KP(n.state,r);return s?(n.dispatch(s),!0):!1}),qP=({state:n,dispatch:e})=>{if(n.readOnly)return!1;let r=Ow(n,n.selection.main.head).brackets||Xs.brackets,i=null,s=n.changeByRange(a=>{if(a.empty){let o=ZP(n.doc,a.head);for(let l of r)if(l==o&&hu(n.doc,a.head)==Rw(wt(l,0)))return{changes:{from:a.head-l.length,to:a.head+l.length},range:B.cursor(a.head-l.length)}}return{range:i=a}});return i||e(n.update(s,{scrollIntoView:!0,userEvent:"delete.backward"})),!i},GP=[{key:"Backspace",run:qP}];function KP(n,e){let t=Ow(n,n.selection.main.head),r=t.brackets||Xs.brackets;for(let i of r){let s=Rw(wt(i,0));if(e==i)return s==i?XP(n,i,r.indexOf(i+i+i)>-1,t):YP(n,i,s,t.before||Xs.before);if(e==s&&Tw(n,n.selection.main.from))return JP(n,i,s)}return null}function Tw(n,e){let t=!1;return n.field(Dw).between(0,n.doc.length,r=>{r==e&&(t=!0)}),t}function hu(n,e){let t=n.sliceString(e,e+2);return t.slice(0,dn(wt(t,0)))}function ZP(n,e){let t=n.sliceString(e-2,e);return dn(wt(t,0))==t.length?t:t.slice(1)}function YP(n,e,t,r){let i=null,s=n.changeByRange(a=>{if(!a.empty)return{changes:[{insert:e,from:a.from},{insert:t,from:a.to}],effects:zr.of(a.to+e.length),range:B.range(a.anchor+e.length,a.head+e.length)};let o=hu(n.doc,a.head);return!o||/\s/.test(o)||r.indexOf(o)>-1?{changes:{insert:e+t,from:a.head},effects:zr.of(a.head+e.length),range:B.cursor(a.head+e.length)}:{range:i=a}});return i?null:n.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function JP(n,e,t){let r=null,i=n.changeByRange(s=>s.empty&&hu(n.doc,s.head)==t?{changes:{from:s.head,to:s.head+t.length,insert:t},range:B.cursor(s.head+t.length)}:r={range:s});return r?null:n.update(i,{scrollIntoView:!0,userEvent:"input.type"})}function XP(n,e,t,r){let i=r.stringPrefixes||Xs.stringPrefixes,s=null,a=n.changeByRange(o=>{if(!o.empty)return{changes:[{insert:e,from:o.from},{insert:e,from:o.to}],effects:zr.of(o.to+e.length),range:B.range(o.anchor+e.length,o.head+e.length)};let l=o.head,c=hu(n.doc,l),u;if(c==e){if(gg(n,l))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(Tw(n,l)){let h=t&&n.sliceDoc(l,l+e.length*3)==e+e+e?e+e+e:e;return{changes:{from:l,to:l+h.length,insert:h},range:B.cursor(l+h.length)}}}else{if(t&&n.sliceDoc(l-2*e.length,l)==e+e&&(u=vg(n,l-2*e.length,i))>-1&&gg(n,u))return{changes:{insert:e+e+e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)};if(n.charCategorizer(l)(c)!=Ue.Word&&vg(n,l,i)>-1&&!QP(n,l,e,i))return{changes:{insert:e+e,from:l},effects:zr.of(l+e.length),range:B.cursor(l+e.length)}}return{range:s=o}});return s?null:n.update(a,{scrollIntoView:!0,userEvent:"input.type"})}function gg(n,e){let t=At(n).resolveInner(e+1);return t.parent&&t.from==e}function QP(n,e,t,r){let i=At(n).resolveInner(e,-1),s=r.reduce((a,o)=>Math.max(a,o.length),0);for(let a=0;a<5;a++){let o=n.sliceDoc(i.from,Math.min(i.to,i.from+t.length+s)),l=o.indexOf(t);if(!l||l>-1&&r.indexOf(o.slice(0,l))>-1){let u=i.firstChild;for(;u&&u.from==i.from&&u.to-u.from>t.length+l;){if(n.sliceDoc(u.to-t.length,u.to)==t)return!1;u=u.firstChild}return!0}let c=i.to==e&&i.parent;if(!c)break;i=c}return!1}function vg(n,e,t){let r=n.charCategorizer(e);if(r(n.sliceDoc(e-1,e))!=Ue.Word)return e;for(let i of t){let s=e-i.length;if(n.sliceDoc(s,e)==i&&r(n.sliceDoc(s-1,s))!=Ue.Word)return s}return-1}function e3(n={}){return[nn,Zt.of(n),OP,t3,Iw]}const Nw=[{key:"Ctrl-Space",run:MP},{key:"Escape",run:IP},{key:"ArrowDown",run:Za(!0)},{key:"ArrowUp",run:Za(!1)},{key:"PageDown",run:Za(!0,"page")},{key:"PageUp",run:Za(!1,"page")},{key:"Enter",run:AP}],t3=ti.highest(ua.computeN([Zt],n=>n.facet(Zt).defaultKeymap?[Nw]:[]));class n3{constructor(e,t,r){this.from=e,this.to=t,this.diagnostic=r}}class Hr{constructor(e,t,r){this.diagnostics=e,this.panel=t,this.selected=r}static init(e,t,r){let i=e,s=r.facet(_w).markerFilter;s&&(i=s(i));let a=le.set(i.map(o=>o.from==o.to||o.from==o.to-1&&r.doc.lineAt(o.from).to==o.from?le.widget({widget:new d3(o),diagnostic:o}).range(o.from):le.mark({attributes:{class:"cm-lintRange cm-lintRange-"+o.severity+(o.markClass?" "+o.markClass:"")},diagnostic:o}).range(o.from,o.to)),!0);return new Hr(a,t,zi(a))}}function zi(n,e=null,t=0){let r=null;return n.between(t,1e9,(i,s,{spec:a})=>{if(!(e&&a.diagnostic!=e))return r=new n3(i,s,a.diagnostic),!1}),r}function r3(n,e){let t=n.startState.doc.lineAt(e.pos);return!!(n.effects.some(r=>r.is(Pw))||n.changes.touchesRange(t.from,t.to))}function i3(n,e){return n.field(an,!1)?e:e.concat(pe.appendConfig.of(p3))}const Pw=pe.define(),Ih=pe.define(),Lw=pe.define(),an=vt.define({create(){return new Hr(le.none,null,null)},update(n,e){if(e.docChanged){let t=n.diagnostics.map(e.changes),r=null;if(n.selected){let i=e.changes.mapPos(n.selected.from,1);r=zi(t,n.selected.diagnostic,i)||zi(t,null,i)}n=new Hr(t,n.panel,r)}for(let t of e.effects)t.is(Pw)?n=Hr.init(t.value,n.panel,e.state):t.is(Ih)?n=new Hr(n.diagnostics,t.value?pu.open:null,n.selected):t.is(Lw)&&(n=new Hr(n.diagnostics,n.panel,t.value));return n},provide:n=>[Ws.from(n,e=>e.panel),G.decorations.from(n,e=>e.diagnostics)]}),s3=le.mark({class:"cm-lintRange cm-lintRange-active"});function a3(n,e,t){let{diagnostics:r}=n.state.field(an),i=[],s=2e8,a=0;r.between(e-(t<0?1:0),e+(t>0?1:0),(l,c,{spec:u})=>{e>=l&&e<=c&&(l==c||(e>l||t>0)&&(e<c||t<0))&&(i.push(u.diagnostic),s=Math.min(l,s),a=Math.max(c,a))});let o=n.state.facet(_w).tooltipFilter;return o&&(i=o(i)),i.length?{pos:s,end:a,above:n.state.doc.lineAt(s).to<a,create(){return{dom:o3(n,i)}}}:null}function o3(n,e){return $e("ul",{class:"cm-tooltip-lint"},e.map(t=>Bw(n,t,!1)))}const l3=n=>{let e=n.state.field(an,!1);(!e||!e.panel)&&n.dispatch({effects:i3(n.state,[Ih.of(!0)])});let t=zs(n,pu.open);return t&&t.dom.querySelector(".cm-panel-lint ul").focus(),!0},bg=n=>{let e=n.state.field(an,!1);return!e||!e.panel?!1:(n.dispatch({effects:Ih.of(!1)}),!0)},c3=n=>{let e=n.state.field(an,!1);if(!e)return!1;let t=n.state.selection.main,r=e.diagnostics.iter(t.to+1);return!r.value&&(r=e.diagnostics.iter(0),!r.value||r.from==t.from&&r.to==t.to)?!1:(n.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)},u3=[{key:"Mod-Shift-m",run:l3,preventDefault:!0},{key:"F8",run:c3}],_w=J.define({combine(n){return Object.assign({sources:n.map(e=>e.source)},Yn(n.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null},{needsRefresh:(e,t)=>e?t?r=>e(r)||t(r):e:t}))}});function jw(n){let e=[];if(n)e:for(let{name:t}of n){for(let r=0;r<t.length;r++){let i=t[r];if(/[a-zA-Z]/.test(i)&&!e.some(s=>s.toLowerCase()==i.toLowerCase())){e.push(i);continue e}}e.push("")}return e}function Bw(n,e,t){var r;let i=t?jw(e.actions):[];return $e("li",{class:"cm-diagnostic cm-diagnostic-"+e.severity},$e("span",{class:"cm-diagnosticText"},e.renderMessage?e.renderMessage():e.message),(r=e.actions)===null||r===void 0?void 0:r.map((s,a)=>{let o=!1,l=h=>{if(h.preventDefault(),o)return;o=!0;let p=zi(n.state.field(an).diagnostics,e);p&&s.apply(n,p.from,p.to)},{name:c}=s,u=i[a]?c.indexOf(i[a]):-1,f=u<0?c:[c.slice(0,u),$e("u",c.slice(u,u+1)),c.slice(u+1)];return $e("button",{type:"button",class:"cm-diagnosticAction",onclick:l,onmousedown:l,"aria-label":` Action: ${c}${u<0?"":` (access key "${i[a]})"`}.`},f)}),e.source&&$e("div",{class:"cm-diagnosticSource"},e.source))}class d3 extends sr{constructor(e){super(),this.diagnostic=e}eq(e){return e.diagnostic==this.diagnostic}toDOM(){return $e("span",{class:"cm-lintPoint cm-lintPoint-"+this.diagnostic.severity})}}class xg{constructor(e,t){this.diagnostic=t,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=Bw(e,t,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class pu{constructor(e){this.view=e,this.items=[];let t=i=>{if(i.keyCode==27)bg(this.view),this.view.focus();else if(i.keyCode==38||i.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(i.keyCode==40||i.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(i.keyCode==36)this.moveSelection(0);else if(i.keyCode==35)this.moveSelection(this.items.length-1);else if(i.keyCode==13)this.view.focus();else if(i.keyCode>=65&&i.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:s}=this.items[this.selectedIndex],a=jw(s.actions);for(let o=0;o<a.length;o++)if(a[o].toUpperCase().charCodeAt(0)==i.keyCode){let l=zi(this.view.state.field(an).diagnostics,s);l&&s.actions[o].apply(e,l.from,l.to)}}else return;i.preventDefault()},r=i=>{for(let s=0;s<this.items.length;s++)this.items[s].dom.contains(i.target)&&this.moveSelection(s)};this.list=$e("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:t,onclick:r}),this.dom=$e("div",{class:"cm-panel-lint"},this.list,$e("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>bg(this.view)},"×")),this.update()}get selectedIndex(){let e=this.view.state.field(an).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(an),r=0,i=!1,s=null;for(e.between(0,this.view.state.doc.length,(a,o,{spec:l})=>{let c=-1,u;for(let f=r;f<this.items.length;f++)if(this.items[f].diagnostic==l.diagnostic){c=f;break}c<0?(u=new xg(this.view,l.diagnostic),this.items.splice(r,0,u),i=!0):(u=this.items[c],c>r&&(this.items.splice(r,c-r),i=!0)),t&&u.diagnostic==t.diagnostic?u.dom.hasAttribute("aria-selected")||(u.dom.setAttribute("aria-selected","true"),s=u):u.dom.hasAttribute("aria-selected")&&u.dom.removeAttribute("aria-selected"),r++});r<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)i=!0,this.items.pop();this.items.length==0&&(this.items.push(new xg(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),i=!0),s?(this.list.setAttribute("aria-activedescendant",s.id),this.view.requestMeasure({key:this,read:()=>({sel:s.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:a,panel:o})=>{a.top<o.top?this.list.scrollTop-=o.top-a.top:a.bottom>o.bottom&&(this.list.scrollTop+=a.bottom-o.bottom)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),i&&this.sync()}sync(){let e=this.list.firstChild;function t(){let r=e;e=r.nextSibling,r.remove()}for(let r of this.items)if(r.dom.parentNode==this.list){for(;e!=r.dom;)t();e=r.dom.nextSibling}else this.list.insertBefore(r.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=this.view.state.field(an),r=zi(t.diagnostics,this.items[e].diagnostic);r&&this.view.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0,effects:Lw.of(r)})}static open(e){return new pu(e)}}function f3(n,e='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${e}>${encodeURIComponent(n)}</svg>')`}function Ya(n){return f3(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${n}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const h3=G.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Ya("#d11")},".cm-lintRange-warning":{backgroundImage:Ya("orange")},".cm-lintRange-info":{backgroundImage:Ya("#999")},".cm-lintRange-hint":{backgroundImage:Ya("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}}}),p3=[an,G.decorations.compute([an],n=>{let{selected:e,panel:t}=n.field(an);return!e||!t||e.from==e.to?le.none:le.set([s3.range(e.from,e.to)])}),XO(a3,{hideOn:r3}),h3];var yg=function(e){e===void 0&&(e={});var{crosshairCursor:t=!1}=e,r=[];e.closeBracketsKeymap!==!1&&(r=r.concat(GP)),e.defaultKeymap!==!1&&(r=r.concat(P9)),e.searchKeymap!==!1&&(r=r.concat(aP)),e.historyKeymap!==!1&&(r=r.concat(WN)),e.foldKeymap!==!1&&(r=r.concat(iN)),e.completionKeymap!==!1&&(r=r.concat(Nw)),e.lintKeymap!==!1&&(r=r.concat(u3));var i=[];return e.lineNumbers!==!1&&i.push(oT()),e.highlightActiveLineGutter!==!1&&i.push(uT()),e.highlightSpecialChars!==!1&&i.push(EO()),e.history!==!1&&i.push(_N()),e.foldGutter!==!1&&i.push(lN()),e.drawSelection!==!1&&i.push(vO()),e.dropCursor!==!1&&i.push(SO()),e.allowMultipleSelections!==!1&&i.push(ye.allowMultipleSelections.of(!0)),e.indentOnInput!==!1&&i.push(KT()),e.syntaxHighlighting!==!1&&i.push(Ey(fN,{fallback:!0})),e.bracketMatching!==!1&&i.push(xN()),e.closeBrackets!==!1&&i.push(UP()),e.autocompletion!==!1&&i.push(e3()),e.rectangularSelection!==!1&&i.push(VO()),t!==!1&&i.push(WO()),e.highlightActiveLine!==!1&&i.push(PO()),e.highlightSelectionMatches!==!1&&i.push(H9()),e.tabSize&&typeof e.tabSize=="number"&&i.push(fa.of(" ".repeat(e.tabSize))),i.concat([ua.of(r.flat())]).filter(Boolean)};const m3="#e5c07b",wg="#e06c75",g3="#56b6c2",v3="#ffffff",Xl="#abb2bf",If="#7d8799",b3="#61afef",x3="#98c379",Sg="#d19a66",y3="#c678dd",w3="#21252b",kg="#2c313a",Cg="#282c34",ld="#353a42",S3="#3E4451",Ag="#528bff",k3=G.theme({"&":{color:Xl,backgroundColor:Cg},".cm-content":{caretColor:Ag},".cm-cursor, .cm-dropCursor":{borderLeftColor:Ag},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:S3},".cm-panels":{backgroundColor:w3,color:Xl},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Cg,color:If,border:"none"},".cm-activeLineGutter":{backgroundColor:kg},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:ld},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:ld,borderBottomColor:ld},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:kg,color:Xl}}},{dark:!0}),C3=pa.define([{tag:j.keyword,color:y3},{tag:[j.name,j.deleted,j.character,j.propertyName,j.macroName],color:wg},{tag:[j.function(j.variableName),j.labelName],color:b3},{tag:[j.color,j.constant(j.name),j.standard(j.name)],color:Sg},{tag:[j.definition(j.name),j.separator],color:Xl},{tag:[j.typeName,j.className,j.number,j.changed,j.annotation,j.modifier,j.self,j.namespace],color:m3},{tag:[j.operator,j.operatorKeyword,j.url,j.escape,j.regexp,j.link,j.special(j.string)],color:g3},{tag:[j.meta,j.comment],color:If},{tag:j.strong,fontWeight:"bold"},{tag:j.emphasis,fontStyle:"italic"},{tag:j.strikethrough,textDecoration:"line-through"},{tag:j.link,color:If,textDecoration:"underline"},{tag:j.heading,fontWeight:"bold",color:wg},{tag:[j.atom,j.bool,j.special(j.variableName)],color:Sg},{tag:[j.processingInstruction,j.string,j.inserted],color:x3},{tag:j.invalid,color:v3}]),A3=[k3,Ey(C3)];var M3=G.theme({"&":{backgroundColor:"#fff"}},{dark:!1}),I3=function(e){e===void 0&&(e={});var{indentWithTab:t=!0,editable:r=!0,readOnly:i=!1,theme:s="light",placeholder:a="",basicSetup:o=!0}=e,l=[];switch(t&&l.unshift(ua.of([L9])),o&&(typeof o=="boolean"?l.unshift(yg()):l.unshift(yg(o))),a&&l.unshift(BO(a)),s){case"light":l.push(M3);break;case"dark":l.push(A3);break;case"none":break;default:l.push(s);break}return r===!1&&l.push(G.editable.of(!1)),i&&l.push(ye.readOnly.of(!0)),[...l]},E3=n=>({line:n.state.doc.lineAt(n.state.selection.main.from),lineCount:n.state.doc.lines,lineBreak:n.state.lineBreak,length:n.state.doc.length,readOnly:n.state.readOnly,tabSize:n.state.tabSize,selection:n.state.selection,selectionAsSingle:n.state.selection.asSingle().main,ranges:n.state.selection.ranges,selectionCode:n.state.sliceDoc(n.state.selection.main.from,n.state.selection.main.to),selections:n.state.selection.ranges.map(e=>n.state.sliceDoc(e.from,e.to)),selectedText:n.state.selection.ranges.some(e=>!e.empty)});class D3{constructor(e,t){this.timeLeftMS=void 0,this.timeoutMS=void 0,this.isCancelled=!1,this.isTimeExhausted=!1,this.callbacks=[],this.timeLeftMS=t,this.timeoutMS=t,this.callbacks.push(e)}tick(){if(!this.isCancelled&&!this.isTimeExhausted&&(this.timeLeftMS--,this.timeLeftMS<=0)){this.isTimeExhausted=!0;var e=this.callbacks.slice();this.callbacks.length=0,e.forEach(t=>{try{t()}catch(r){console.error("TimeoutLatch callback error:",r)}})}}cancel(){this.isCancelled=!0,this.callbacks.length=0}reset(){this.timeLeftMS=this.timeoutMS,this.isCancelled=!1,this.isTimeExhausted=!1}get isDone(){return this.isCancelled||this.isTimeExhausted}}class Mg{constructor(){this.interval=null,this.latches=new Set}add(e){this.latches.add(e),this.start()}remove(e){this.latches.delete(e),this.latches.size===0&&this.stop()}start(){this.interval===null&&(this.interval=setInterval(()=>{this.latches.forEach(e=>{e.tick(),e.isDone&&this.remove(e)})},1))}stop(){this.interval!==null&&(clearInterval(this.interval),this.interval=null)}}var cd=null,R3=()=>typeof window>"u"?new Mg:(cd||(cd=new Mg),cd),Ig=Zn.define(),O3=200,T3=[];function N3(n){var{value:e,selection:t,onChange:r,onStatistics:i,onCreateEditor:s,onUpdate:a,extensions:o=T3,autoFocus:l,theme:c="light",height:u=null,minHeight:f=null,maxHeight:h=null,width:p=null,minWidth:g=null,maxWidth:m=null,placeholder:v="",editable:b=!0,readOnly:y=!1,indentWithTab:w=!0,basicSetup:S=!0,root:k,initialState:A}=n,[C,E]=x.useState(),[M,R]=x.useState(),[T,N]=x.useState(),P=x.useState(()=>({current:null}))[0],L=x.useState(()=>({current:null}))[0],$=G.theme({"&":{height:u,minHeight:f,maxHeight:h,width:p,minWidth:g,maxWidth:m},"& .cm-scroller":{height:"100% !important"}}),q=G.updateListener.of(ee=>{if(ee.docChanged&&typeof r=="function"&&!ee.transactions.some(K=>K.annotation(Ig))){P.current?P.current.reset():(P.current=new D3(()=>{if(L.current){var K=L.current;L.current=null,K()}P.current=null},O3),R3().add(P.current));var de=ee.state.doc,ve=de.toString();r(ve,ee)}i&&i(E3(ee))}),Z=I3({theme:c,editable:b,readOnly:y,placeholder:v,indentWithTab:w,basicSetup:S}),oe=[q,$,...Z];return a&&typeof a=="function"&&oe.push(G.updateListener.of(a)),oe=oe.concat(o),x.useLayoutEffect(()=>{if(C&&!T){var ee={doc:e,selection:t,extensions:oe},de=A?ye.fromJSON(A.json,ee,A.fields):ye.create(ee);if(N(de),!M){var ve=new G({state:de,parent:C,root:k});R(ve),s&&s(ve,de)}}return()=>{M&&(N(void 0),R(void 0))}},[C,T]),x.useEffect(()=>{n.container&&E(n.container)},[n.container]),x.useEffect(()=>()=>{M&&(M.destroy(),R(void 0)),P.current&&(P.current.cancel(),P.current=null)},[M]),x.useEffect(()=>{l&&M&&M.focus()},[l,M]),x.useEffect(()=>{M&&M.dispatch({effects:pe.reconfigure.of(oe)})},[c,o,u,f,h,p,g,m,v,b,y,w,S,r,a]),x.useEffect(()=>{if(e!==void 0){var ee=M?M.state.doc.toString():"";if(M&&e!==ee){var de=P.current&&!P.current.isDone,ve=()=>{M&&e!==M.state.doc.toString()&&M.dispatch({changes:{from:0,to:M.state.doc.toString().length,insert:e||""},annotations:[Ig.of(!0)]})};de?L.current=ve:ve()}}},[e,M]),{state:T,setState:N,view:M,setView:R,container:C,setContainer:E}}var P3=["className","value","selection","extensions","onChange","onStatistics","onCreateEditor","onUpdate","autoFocus","theme","height","minHeight","maxHeight","width","minWidth","maxWidth","basicSetup","placeholder","indentWithTab","editable","readOnly","root","initialState"],L3=x.forwardRef((n,e)=>{var{className:t,value:r="",selection:i,extensions:s=[],onChange:a,onStatistics:o,onCreateEditor:l,onUpdate:c,autoFocus:u,theme:f="light",height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:w,indentWithTab:S,editable:k,readOnly:A,root:C,initialState:E}=n,M=Cb(n,P3),R=x.useRef(null),{state:T,view:N,container:P,setContainer:L}=N3({root:C,value:r,autoFocus:u,theme:f,height:h,minHeight:p,maxHeight:g,width:m,minWidth:v,maxWidth:b,basicSetup:y,placeholder:w,indentWithTab:S,editable:k,readOnly:A,selection:i,onChange:a,onStatistics:o,onCreateEditor:l,onUpdate:c,extensions:s,initialState:E});x.useImperativeHandle(e,()=>({editor:R.current,state:T,view:N}),[R,P,T,N]);var $=x.useCallback(Z=>{R.current=Z,L(Z)},[L]);if(typeof r!="string")throw new Error("value must be typeof string but got "+typeof r);var q=typeof f=="string"?"cm-theme-"+f:"cm-theme";return d.jsx("div",se({ref:$,className:""+q+(t?" "+t:"")},M))});L3.displayName="CodeMirror";const _3=()=>{const{isDirty:n}=Vc(),e=()=>{window.location.hash="/"};return d.jsx(ne,{className:"text-grey-700 hover:!text-grey-900","data-testid":"exit-settings",icon:"close",id:"done-button",label:"",link:!0,title:"Close (ESC)",onClick:()=>Ps(n,e)})},j3=""+new URL("logo-loader-88VPEpXE.mp4",import.meta.url).href,B3=""+new URL("logo-loader-dark-CuSPz-zc.mp4",import.meta.url).href,$w=x.createContext(void 0),$3=({children:n})=>{const e=e2(),t=t2(),r=n2(),i=nb(),[s,a]=x.useState(!1);x.useEffect(()=>{a(document.documentElement.classList.contains("dark"))},[]);const o=[e,t,r,i],l=o.map(c=>c.error).find(Boolean);if(l)throw l;return o.some(c=>c.isLoading)?d.jsx("div",{className:"gh-loading-orb-container",style:{width:"100vw",height:"100vh",display:"flex",alignItems:"center",justifyContent:"center",paddingBottom:"8vh"},children:d.jsx("video",{autoPlay:!0,className:"gh-loading-orb",height:"100",preload:"metadata",style:{width:"100px",height:"100px"},width:"100",loop:!0,muted:!0,playsInline:!0,children:d.jsx("source",{src:s?B3:j3,type:"video/mp4"})})}):d.jsx($w.Provider,{value:{settings:e.data.settings,siteData:t.data.site,config:r.data.config,currentUser:i.data},children:n})},Le=()=>x.useContext($w),Ot=({savingDelay:n,onValidate:e}={})=>{const t=x.useRef(null),{siteData:r,settings:i}=Le(),{mutateAsync:s}=Xr(),a=gt(),[o,l]=x.useState(!1),{formState:c,saveState:u,handleSave:f,updateForm:h,setFormState:p,reset:g,validate:m,errors:v,clearError:b,okProps:y}=Xf({initialState:i||[],savingDelay:n,onSave:async()=>{await s?.(S())},onSaveError:a,onValidate:e}),{setGlobalDirtyState:w}=Vc();x.useEffect(()=>{w(c.some(E=>E.dirty))},[c,w]),x.useEffect(()=>{o&&t.current&&t.current.focus()},[o]),x.useEffect(()=>{(!o||u==="saving")&&p(()=>i)},[i]);const S=()=>c?.filter(E=>E.dirty)?.map(E=>({key:E.key,value:E.value}));return{localSettings:c,isEditing:o,saveState:u,focusRef:t,siteData:r,handleSave:async()=>{const E=await f();return E&&l(!1),E},handleCancel:()=>{g(),l(!1)},updateSetting:(E,M)=>{h(R=>R.some(T=>T.key===E)?R.map(T=>T.key===E?{...T,value:M,dirty:!0}:T):[...R,{key:E,value:M,dirty:!0}])},handleEditingChange:E=>{l(E)},validate:m,errors:v,clearError:b,okProps:y}},F3=(n,e)=>{const[t,r]=x.useState("Save"),[i,s]=x.useState(!1);return{savingTitle:t,isSaving:i,onSaveClick:async()=>{s(!0),r("Saving"),await n({fakeWhenUnchanged:e}),setTimeout(()=>{r("Saved"),setTimeout(()=>{r("Save"),s(!1)},1e3)},1e3)}}},H3=({afterClose:n})=>{const{localSettings:e,handleSave:t,updateSetting:r}=Ot(),i=ir(),[s,a]=Te(e,["codeinjection_head","codeinjection_foot"]),[o,l]=x.useState("header"),c=x.useRef(null),u=x.useRef(null),f=x.useMemo(()=>ea(()=>import("./index-BJS8H75W.js"),__vite__mapDeps([7,1,2,3,4,5,6]),import.meta.url).then(y=>y.html()),[]),h={extensions:[f],hint:"Code here will be injected into the {{ghost_head}} tag on every page of the site",value:s||"",onChange:y=>r("codeinjection_head",y)},p={extensions:[f],hint:"Code here will be injected into the {{ghost_foot}} tag on every page of the site",value:a||"",onChange:y=>r("codeinjection_foot",y)},g=[{id:"header",title:"Site header",contents:d.jsx(Vh,{height:"full",...h,ref:c,className:"mt-2","data-testid":"header-code",autoFocus:!0}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"},{id:"footer",title:"Site footer",contents:d.jsx(Vh,{height:"full",...p,ref:u,className:"mt-2","data-testid":"footer-code"}),tabWrapperClassName:"flex-auto",containerClassName:"h-full"}],{savingTitle:m,isSaving:v,onSaveClick:b}=F3(t,!0);return x.useEffect(()=>{const y=w=>{(w.metaKey||w.ctrlKey)&&w.key==="s"&&(w.preventDefault(),b())};return window.addEventListener("keydown",y),()=>{window.removeEventListener("keydown",y)}}),d.jsx(Or,{afterClose:n,backDropClick:!1,cancelLabel:"Close",footer:d.jsx(d.Fragment,{}),height:"full",size:"full",testId:"modal-code-injection",children:d.jsxs("div",{className:"flex h-full flex-col",children:[d.jsxs("div",{className:"mb-4 flex items-center justify-between",children:[d.jsx(ft,{level:2,children:"Code injection"}),d.jsx(Ns,{buttons:[{label:"Close",color:"outline",onClick:()=>{i.remove(),n?.()}},{disabled:v,label:m,color:m==="Saved"?"green":"black",onClick:b}]})]}),d.jsx(Kn,{containerClassName:"flex-auto flex flex-col mb-16",selectedTab:o,tabs:g,onTabChange:l})]})})},V3=Ke.create(H3),U3=(n,e)=>`${n}-${e}`,z3=()=>{const[n,e]=x.useState(""),[t,r]=x.useState(!1),i=x.useRef(new Map),[s,a]=x.useState(new Set),o=p=>p.length?p.some(g=>g.toLowerCase().includes(n.toLowerCase())):!0,l=x.useCallback((p,g)=>{i.current.set(p,g),(!n||g.some(v=>v.toLowerCase().includes(n.toLowerCase())))&&a(v=>new Set(v).add(p))},[n]),c=x.useCallback(p=>{i.current.delete(p),a(g=>{const m=new Set(g);return m.delete(p),m})},[]);x.useEffect(()=>{const p=new Set;i.current.forEach((g,m)=>{(!n||g.some(b=>b.toLowerCase().includes(n.toLowerCase())))&&p.add(m)}),a(p)},[n]);const u=x.useCallback(p=>s.size===1&&s.has(p),[s]),f=x.useCallback(()=>s,[s]),h=p=>{if(!n)return p;if(typeof p=="string"){const g=n.split(/\s+/).map(b=>b.toLowerCase()),m=g.map(b=>b.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join("|");return p.split(new RegExp(`(${m})`,"gi")).map(b=>g.includes(b.toLowerCase())?d.jsx("span",{className:"bg-yellow-500/40",children:b}):b)}else return Array.isArray(p)?p.map(g=>h(g)):p&&typeof p=="object"&&p?Y.Children.map(p,g=>g&&typeof g=="object"&&"props"in g?h(g.props.children):g):p};return{filter:n,setFilter:e,checkVisible:o,highlightKeywords:h,noResult:t,setNoResult:r,registerComponent:l,unregisterComponent:c,getVisibleComponents:f,isOnlyVisibleComponent:u}},Fw=x.createContext({route:"",updateRoute:()=>{},loadingModal:!1,eventTarget:new EventTarget});function W3(n,e){if(!e)return null;const t=new RegExp(`/${n}/(.*)`),r=e?.match(t);return r?r[1]:null}const q3=(n,e,t,r)=>{let i=window.location.hash;i=i.substring(1);const s=`${window.location.protocol}//${window.location.hostname}`,a=new URL(i,s),o=W3(n,a.pathname);if(!r||!t)return{pathName:o||""};const l=a.searchParams;if(o&&r&&t){const[,c]=Object.entries(r).find(([h])=>ud(e||"",h))||[],[u,f]=Object.entries(r).find(([h])=>ud(o,h))||[];return{pathName:o,changingModal:f&&f!==c,modal:u&&f?t().then(({default:h})=>{Ke.show(h[f],{pathName:o,params:ud(o,u),searchParams:l})}):void 0}}return{pathName:""}},ud=(n,e)=>{const t=new RegExp("^"+e.replace(/:(\w+)/g,"(?<$1>[^/]+)")+"/?$"),r=n.match(t);if(r)return r.groups||{}},G3=({basePath:n,modals:e,children:t})=>{const{externalNavigate:r}=r2(),[i,s]=x.useState(void 0),[a,o]=x.useState(!1),[l]=x.useState(new EventTarget),c=x.useCallback(u=>{const f=typeof u=="string"?{route:u}:u;if(f.isExternal){r(f);return}const h=f.route.replace(/^\//,"");h===i||(h?window.location.hash=`/${n}/${h}`:window.location.hash=`/${n}`),l.dispatchEvent(new CustomEvent("routeChange",{detail:{newPath:h,oldPath:i}}))},[n,l,r,i]);return x.useEffect(()=>{setTimeout(()=>{e?.load()},1e3)},[]),x.useEffect(()=>{const u=()=>{s(f=>{const{pathName:h,modal:p,changingModal:g}=q3(n,f,e?.load,e?.paths);return p&&g&&(o(!0),p.then(()=>o(!1))),h})};return u(),window.addEventListener("hashchange",u),()=>{window.removeEventListener("hashchange",u)}},[]),i===void 0?null:d.jsx(Fw.Provider,{value:{route:i,updateRoute:c,loadingModal:a,eventTarget:l},children:t})};function be(){return x.useContext(Fw)}function K3(n,e){const{eventTarget:t}=be(),r=x.useCallback(n,e);x.useEffect(()=>{const i=s=>{const a=s;r(a.detail.newPath,a.detail.oldPath)};return t.addEventListener("routeChange",i),()=>t.removeEventListener("routeChange",i)},[t,r])}const Hw=x.createContext({updateSection:()=>{},updateNav:()=>{},currentSection:null,updateNavigatedSection:()=>{},scrollToSection:()=>{}}),mu=()=>x.useContext(Hw),Vw=193,dd=(n,e)=>{const t=document.getElementById("admin-x-settings-scroller"),r=n.getBoundingClientRect().top+t.scrollTop;t.scrollTo({behavior:e?"smooth":"instant",top:r-Vw})},Z3=(n,e)=>{const t=document.getElementById("admin-x-settings-sidebar-scroller"),r=n.getBoundingClientRect(),i=t.getBoundingClientRect(),s=i.top+40;if(r.top>=s&&r.left>=i.left&&r.right<=i.right&&r.bottom<=i.bottom||!["auto","scroll"].includes(getComputedStyle(t).overflowY))return;const a=e?"smooth":"instant";t.querySelector("[data-setting-nav-item]")===n?t.scrollTo({top:0,behavior:a}):r.top<s?t.scrollTo({top:t.scrollTop+r.top-s,behavior:a}):t.scrollTo({top:t.scrollTop+r.top-i.top-i.height+r.height+4,behavior:a})},Y3=(n,e,t)=>{const r=e.map(({isIntersecting:o,target:l})=>({isIntersecting:o,id:Object.entries(t).find(([,c])=>c===l)?.[0]})).filter(o=>o.id),i=r.filter(o=>!n.includes(o.id)&&o.isIntersecting).map(o=>o.id),s=r.filter(o=>!o.isIntersecting).map(o=>o.id),a=n.filter(o=>!s.includes(o)).concat(i);return a.sort((o,l)=>{const c=t[o],u=t[l];return!c||!u?0:c.getBoundingClientRect().top-u.getBoundingClientRect().top}),a},J3=({children:n})=>{const[e,t]=x.useState(null),r=x.useRef({}),i=x.useRef(null),[s,a]=x.useState([]),[o,l]=x.useState(null),[c,u]=x.useState(!1),[f,h]=x.useState(!1),[,p]=x.useState(!1),g=x.useCallback(k=>{t(k),u(!0)},[]),m=x.useRef({}),v=x.useCallback(()=>{const k=new IntersectionObserver(A=>{a(C=>{const E=Y3(C,A,r.current);return E.length&&l(E[0]),E})},{rootMargin:`-${Vw-50}px 0px -40% 0px`});return Object.values(r.current).forEach(A=>k.observe(A)),k},[]),b=x.useCallback((k,A)=>{r.current[k]!==A&&(r.current[k]&&i.current?.unobserve(r.current[k]),r.current[k]=A,i.current?.observe(A),!f&&k===e&&(dd(A,!1),h(!0)))},[i,e,f]),y=x.useCallback((k,A)=>{m.current[k]=A},[]),w=x.useCallback(k=>{r.current[k]&&dd(r.current[k],!0)},[]),S=x.useMemo(()=>e&&s.includes(e)?e:s.length?s[0]:o,[s,o,e]);return x.useEffect(()=>{c&&(e&&r.current[e]?h(k=>(dd(r.current[e],k),!0)):h(!0),setTimeout(()=>v()))},[c,e,v]),x.useEffect(()=>{c&&S&&m.current[S]&&p(k=>(Z3(m.current[S],k),!0))},[c,S]),d.jsx(Hw.Provider,{value:{updateSection:b,updateNav:y,currentSection:S,updateNavigatedSection:g,scrollToSection:w},children:n})},X3=n=>{const{updateSection:e}=mu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&e(n,t.current)},[n,e]),{ref:t}},Q3=n=>{const{updateNav:e}=mu(),t=x.useRef(null);return x.useEffect(()=>{n&&t.current&&(Array.isArray(n)?n:[n]).forEach(i=>{e(i,t.current)})},[n,e]),{ref:t,props:{"data-setting-nav-item":!0}}},va="IntegrationsResponseType",M6=va,eL=Qr({dataType:va,path:"/integrations/",defaultSearchParams:{include:"api_keys,webhooks",limit:"50"}}),I6=ze({method:"POST",path:()=>"/integrations/",body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:va,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.concat(n.integrations)}}}),E6=ze({method:"PUT",path:n=>`/integrations/${n.id}/`,body:n=>({integrations:[n]}),searchParams:()=>({include:"api_keys,webhooks"}),updateQueries:{dataType:va,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,integrations:e.integrations.map(t=>n.integrations.find(({id:i})=>i===t.id)||t)}}}),tL=ze({method:"DELETE",path:n=>`/integrations/${n}/`,updateQueries:{dataType:va,emberUpdateType:"delete",update:(n,e,t)=>({...e,integrations:e.integrations.filter(r=>r.id!==t)})}}),nL=""+new URL("Alto-DUBY3bpV.png",import.meta.url).href,rL=""+new URL("Bulletin-Dk9xtKp1.png",import.meta.url).href,iL=""+new URL("Casper-DD4Wf4m4.png",import.meta.url).href,sL=""+new URL("Dawn-LGQGnvjr.png",import.meta.url).href,aL=""+new URL("Digest-BLKH5JOV.png",import.meta.url).href,oL=""+new URL("Dope-CSZZPvqs.png",import.meta.url).href,lL=""+new URL("Ease-DYfAZLvD.png",import.meta.url).href,cL=""+new URL("Edge-_GS6qiG-.png",import.meta.url).href,uL=""+new URL("Edition-BvM1Yi9K.png",import.meta.url).href,dL=""+new URL("Episode-Cwq-Mrvr.png",import.meta.url).href,fL=""+new URL("Headline-DcIZ47eY.png",import.meta.url).href,hL=""+new URL("Journal-BLX3grkP.png",import.meta.url).href,pL=""+new URL("London-D_cZW51W.png",import.meta.url).href,mL=""+new URL("Ruby-rSwalIMT.png",import.meta.url).href,gL=""+new URL("Solo-D2tiac6Z.png",import.meta.url).href,vL=""+new URL("Source-B2xHWmHB.png",import.meta.url).href,bL=""+new URL("Source-Magazine-DpXmb6XM.png",import.meta.url).href,xL=""+new URL("Source-Newsletter-DPpaH3AQ.png",import.meta.url).href,yL=""+new URL("Taste-DFhBlbR7.png",import.meta.url).href,wL=""+new URL("Wave-DajHSkAT.png",import.meta.url).href,Uw=[{name:"Source",category:"News",previewUrl:"https://source.ghost.io/",ref:"default",image:vL,variants:[{category:"Magazine",previewUrl:"https://source-magazine.ghost.io/",image:bL},{category:"Newsletter",previewUrl:"https://source-newsletter.ghost.io/",image:xL}]},{name:"Casper",category:"Blog",previewUrl:"https://demo.ghost.io/",ref:"TryGhost/Casper",image:iL},{name:"Edition",category:"Newsletter",url:"https://github.com/TryGhost/Edition",previewUrl:"https://edition.ghost.io/",ref:"TryGhost/Edition",image:uL},{name:"Solo",category:"Blog",url:"https://github.com/TryGhost/Solo",previewUrl:"https://solo.ghost.io",ref:"TryGhost/Solo",image:gL},{name:"Taste",category:"Blog",url:"https://github.com/TryGhost/Taste",previewUrl:"https://taste.ghost.io",ref:"TryGhost/Taste",image:yL},{name:"Episode",category:"Podcast",url:"https://github.com/TryGhost/Episode",previewUrl:"https://episode.ghost.io",ref:"TryGhost/Episode",image:dL},{name:"Digest",category:"Newsletter",url:"https://github.com/TryGhost/Digest",previewUrl:"https://digest.ghost.io/",ref:"TryGhost/Digest",image:aL},{name:"Bulletin",category:"Newsletter",url:"https://github.com/TryGhost/Bulletin",previewUrl:"https://bulletin.ghost.io/",ref:"TryGhost/Bulletin",image:rL},{name:"Alto",category:"Blog",url:"https://github.com/TryGhost/Alto",previewUrl:"https://alto.ghost.io",ref:"TryGhost/Alto",image:nL},{name:"Dope",category:"Magazine",url:"https://github.com/TryGhost/Dope",previewUrl:"https://dope.ghost.io",ref:"TryGhost/Dope",image:oL},{name:"Wave",category:"Podcast",url:"https://github.com/TryGhost/Wave",previewUrl:"https://wave.ghost.io",ref:"TryGhost/Wave",image:wL},{name:"Edge",category:"Photography",url:"https://github.com/TryGhost/Edge",previewUrl:"https://edge.ghost.io",ref:"TryGhost/Edge",image:cL},{name:"Dawn",category:"Newsletter",url:"https://github.com/TryGhost/Dawn",previewUrl:"https://dawn.ghost.io/",ref:"TryGhost/Dawn",image:sL},{name:"Ease",category:"Documentation",url:"https://github.com/TryGhost/Ease",previewUrl:"https://ease.ghost.io",ref:"TryGhost/Ease",image:lL},{name:"Headline",category:"News",url:"https://github.com/TryGhost/Headline",previewUrl:"https://headline.ghost.io",ref:"TryGhost/Headline",image:fL},{name:"Ruby",category:"Magazine",url:"https://github.com/TryGhost/Ruby",previewUrl:"https://ruby.ghost.io",ref:"TryGhost/Ruby",image:mL},{name:"London",category:"Photography",url:"https://github.com/TryGhost/London",previewUrl:"https://london.ghost.io",ref:"TryGhost/London",image:pL},{name:"Journal",category:"Newsletter",url:"https://github.com/TryGhost/Journal",previewUrl:"https://journal.ghost.io/",ref:"TryGhost/Journal",image:hL}],Eg=""+new URL("orb-black-1-44nQS0Zf.png",import.meta.url).href,SL=""+new URL("orb-black-2-ua9uyJck.png",import.meta.url).href,Dg=""+new URL("orb-black-3-4B29Ahnj.png",import.meta.url).href,Rg=""+new URL("orb-black-4-BoaEuayq.png",import.meta.url).href,kL=""+new URL("orb-black-5-CC4bN-9P.png",import.meta.url).href,CL="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%201818.2%202500'%20style='enable-background:new%200%200%201818.2%202500'%20xml:space='preserve'%3e%3ctitle%3egoogle-docs%3c/title%3e%3cpath%20d='M1136.4%200h-966C79.6%200%200%2079.5%200%20170.5v2159.1c0%2090.9%2079.5%20170.5%20170.5%20170.5h1477.3c90.9%200%20170.5-79.5%20170.5-170.5V681.8l-397.7-284.1L1136.4%200z'%20style='fill:%234285f4'/%3e%3cpath%20d='M454.5%201818.2h909.1v-113.6h-909l-.1%20113.6zm0%20227.3h681.8v-113.6H454.5v113.6zm0-795.5v113.6h909.1V1250H454.5zm0%20340.9h909.1v-113.6h-909l-.1%20113.6z'%20style='fill:%23f1f1f1'/%3e%3cpath%20d='M1136.4%200v511.4c0%2090.9%2079.5%20170.4%20170.4%20170.4h511.4L1136.4%200z'%20style='fill:%23a1c2fa'/%3e%3c/svg%3e",AL=""+new URL("mailchimp-DwTEN-tS.svg",import.meta.url).href,ML="data:image/svg+xml,%3csvg%20height='546'%20viewBox='0%200%20569%20546'%20width='569'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epatreon%3c/title%3e%3cg%20fill='%23FF424D'%3e%3ccircle%20cx='362.59'%20cy='204.59'%20data-fill='1'%20r='204.59'/%3e%3cpath%20data-fill='1'%20d='M0%200h100v545.8H0z'/%3e%3c/g%3e%3c/svg%3e",Og="data:image/svg+xml,%3csvg%20width='152'%20height='179'%20viewBox='0%200%20152%20179'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3epaypal%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l-2.365%2015a4.168%204.168%200%200%200%204.118%204.818H69.76a6.948%206.948%200%200%200%206.863-5.865l.283-1.468%205.442-34.507.351-1.907a6.947%206.947%200%200%201%206.862-5.865h4.322c27.984%200%2049.896-11.37%2056.299-44.25%202.675-13.74%201.292-25.208-5.783-33.27-2.14-2.439-4.802-4.455-7.907-6.1'%20fill='%23238EC2'/%3e%3cpath%20d='M136.492%2045.453c2.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27l8.609-54.588-.267%201.711c.609-3.86%203.909-6.704%207.817-6.704h16.288c31.989%200%2057.037-12.996%2064.356-50.582.217-1.113.402-2.191.568-3.251'%20fill='%2320274F'/%3e%3cpath%20d='M56.978%2045.638a6.945%206.945%200%200%201%206.863-5.866h43.514c5.155%200%209.961.337%2014.356%201.045%201.256.202%202.478.435%203.665.698a53.92%2053.92%200%200%201%203.455.885c.558.162%201.106.333%201.646.512%202.157.717%204.166%201.562%206.015%202.541%202.179-13.894-.015-23.348-7.53-31.911C120.688%204.114%20105.741.075%2086.617.075H31.105a7.943%207.943%200%200%200-7.846%206.705L.144%20153.36a4.765%204.765%200%200%200%204.707%205.507h34.27L56.978%2045.638'%20fill='%23253667'/%3e%3c/g%3e%3c/svg%3e",IL=""+new URL("slackicon-CBMgLWU6.png",import.meta.url).href,EL="data:image/svg+xml,%3csvg%20width='86'%20height='89'%20xmlns='http://www.w3.org/2000/svg'%3e%3ctitle%3etypeform%3c/title%3e%3cg%20fill='none'%20fill-rule='evenodd'%3e%3cpath%20d='M40.28%2087.561c12.464.154%2021.16-3.994%2030.135-12.175%208.975-8.18%2014.306-16.867%2014.741-28.73.436-11.862-3.412-21.43-12.564-30.581C63.441%206.923%2051.64.9%2039.4.899%2027.158.898%2018.967%206.252%2011.385%2016.07c-7.581%209.818-9.237%2022.212-9.894%2033.921-.657%2011.71-1.15%2017.111%206.608%2024.625%207.758%207.514%2019.718%2012.791%2032.182%2012.945z'%20stroke='%23262627'/%3e%3cpath%20d='M29.136%2037.976v-4.885h25.918v4.885H44.679v27.998H39.51V37.976z'%20fill='%23262627'%20fill-rule='nonzero'/%3e%3c/g%3e%3c/svg%3e",DL=""+new URL("zero-bounce-ChbZnu35.png",import.meta.url).href,zw=[{ghostImage:SL,appImage:IL,title:"Share scheduled posts with your team in Slack",url:"https://zapier.com/webintent/create-zap?template=359499"},{ghostImage:Dg,appImage:ML,title:"Connect Patreon to your Ghost membership site",url:"https://zapier.com/webintent/create-zap?template=75801"},{ghostImage:Rg,appImage:DL,title:"Protect email delivery with email verification",url:"https://zapier.com/webintent/create-zap?template=359415"},{ghostImage:kL,appImage:Og,title:"Add members for successful sales in PayPal",url:"https://zapier.com/webintent/create-zap?template=184423"},{ghostImage:Dg,appImage:Og,title:"Unsubscribe members who cancel a subscription in PayPal",url:"https://zapier.com/webintent/create-zap?template=359348"},{ghostImage:Eg,appImage:CL,title:"Send new post drafts from Google Docs to Ghost",url:"https://zapier.com/webintent/create-zap?template=50924"},{ghostImage:Rg,appImage:EL,title:"Survey new members using Typeform",url:"https://zapier.com/webintent/create-zap?template=359407"},{ghostImage:Eg,appImage:AL,title:"Sync email subscribers in Ghost + Mailchimp",url:"https://zapier.com/webintent/create-zap?template=359342"}],Ww=x.createContext({officialThemes:Uw,zapierTemplates:zw,search:{filter:"",setFilter:()=>{},checkVisible:()=>!0,highlightKeywords:()=>"",noResult:!1,setNoResult:()=>{},registerComponent:()=>{},unregisterComponent:()=>{},getVisibleComponents:()=>new Set,isOnlyVisibleComponent:()=>!1},sortingState:[]}),RL=({children:n,...e})=>{const t=z3(),[r,i]=x.useState([{type:"offers",option:"date-added",direction:"desc"}]);return d.jsx(Ww.Provider,{value:{officialThemes:Uw,zapierTemplates:zw,...e,search:t,sortingState:r,setSortingState:i},children:d.jsx($3,{children:d.jsx(J3,{children:n})})})},gu=()=>x.useContext(Ww),D6=()=>gu().officialThemes,ba=()=>gu().search,R6=()=>gu().upgradeStatus,OL=()=>{const{sortingState:n,setSortingState:e}=gu();return{sortingState:n,setSortingState:e}},Se=({keywords:n,navid:e,children:t,...r})=>{const{checkVisible:i,noResult:s,registerComponent:a,unregisterComponent:o}=ba(),{route:l}=be(),[c,u]=x.useState(!1),{ref:f}=X3(e),h=x.useId(),p=U3(e||"component",h);x.useEffect(()=>(a(p,n),()=>{o(p)}),[p,n,a,o]),x.useEffect(()=>{if(u(l===e),l===e){const v=setTimeout(()=>u(!1),2e3);return()=>clearTimeout(v)}},[l,e]);const m=Y.Children.toArray(t).some(v=>Y.isValidElement(v)&&v.type==="img")?d.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 md:-mx-7 md:-mb-7",children:Y.Children.map(t,v=>Y.isValidElement(v)&&v.type==="img"?Y.cloneElement(v,{className:`${v.props.className||""} h-full w-full rounded-b-xl`.trim()}):v)}):t;return d.jsx(uD,{ref:f,highlight:c,isVisible:i(n)||s,navid:e,...r,children:m})},TL=({keywords:n})=>d.jsx(Se,{customHeader:d.jsxs("div",{className:"z-10 flex items-start justify-between",children:[d.jsx(Kr,{description:"Add custom code to your publication.",title:"Code injection"}),d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Open",size:"sm",onClick:()=>{Ke.show(V3)}})]}),description:"Add custom code to your publication",keywords:n,navid:"code-injection",testId:"code-injection",title:"Code injection"}),NL=Ce(TL,"Code injection"),PL=ze({method:"POST",path:()=>"/db/",body:n=>{const e=new FormData;return e.append("importfile",n),e}}),LL=ze({method:"DELETE",path:()=>"/db/"}),_L=()=>Ef("/db/"),jL=({keywords:n})=>{const{mutateAsync:e}=LL(),t=Df(),r=gt(),i=()=>{Ke.show(Gr,{title:"Would you really like to delete all content from your blog?",prompt:"This is permanent! No backups, no restores, no magic undo button. We warned you, k?",okColor:"red",okLabel:"Delete",onOk:async s=>{try{await e(null),pn({title:"All content deleted from database.",type:"success"}),s?.remove(),await t.refetchQueries()}catch(a){r(a)}}})};return d.jsx(Se,{customHeader:d.jsx(Kr,{description:"Permanently delete all posts and tags from the database, a hard reset",title:"Danger zone"}),keywords:n,navid:"dangerzone",testId:"dangerzone",children:d.jsx("div",{children:d.jsx(ne,{color:"red",label:"Delete all content",onClick:i})})})},BL=Ce(jL,"Danger zone"),$L=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("history/view")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"View history",size:"sm",onClick:t}),description:"View system event log",keywords:n,navid:"history",testId:"history",title:"History"})},FL=Ce($L,"History"),HL=""+new URL("integrations-settings-B7r1LnOP.png",import.meta.url).href,Eh=n=>{const{config:e}=Le();return e.labs[n]||!1};function qw(){const{config:n,settings:e}=Le(),[t]=Te(e,["pintura"]),[r,i]=x.useState(!1),[s,a]=x.useState(!1),[o,l]=x.useState(!1),c=x.useRef(!1),[u]=Te(e,["pintura_js_url"]),[f]=Te(e,["pintura_css_url"]);let h=t&&r&&s||!1;const p=n?.pintura;x.useEffect(()=>{let v=p?.js?p?.js:u||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=xd();v=window.location.origin+b.replace(/\/$/,"")+v}if(window.pintura){i(!0);return}try{const b=new URL(v);import(`${b.protocol}//${b.host}${b.pathname}`).then(()=>{i(!0)}).catch(S=>{ys(S)})}catch(b){ys(b)}}},[u,p?.js]),x.useEffect(()=>{let v=p?.css?p?.css:f||null;if(v){if(v.startsWith("/")){const{adminRoot:b}=xd();v=window.location.origin+b.replace(/\/$/,"")+v}try{if(document.querySelector(`link[href="${v}"]`))a(!0);else{let y=document.createElement("link");y.rel="stylesheet",y.type="text/css",y.href=v,y.onload=()=>{a(!0)},document.head.appendChild(y)}}catch(b){ys(b)}}},[f,p?.css]);const g=x.useCallback(({image:m,handleSave:v})=>{if(m&&h){const b=new URL(m);b.searchParams.has("v")||b.searchParams.set("v",Date.now().toString());const y=b.href,w=window.pintura.openDefaultEditor({src:y,enableTransparencyGrid:!0,util:"crop",utils:["crop","filter","finetune","redact","annotate","trim","frame","resize"],frameOptions:[[void 0,S=>S.labelNone],["solidSharp",S=>S.frameLabelMatSharp],["solidRound",S=>S.frameLabelMatRound],["lineSingle",S=>S.frameLabelLineSingle],["hook",S=>S.frameLabelCornerHooks],["polaroid",S=>S.frameLabelPolaroid]],cropSelectPresetFilter:"landscape",cropSelectPresetOptions:[[void 0,"Custom"],[1,"Square"],[2/1,"2:1"],[3/2,"3:2"],[4/3,"4:3"],[16/10,"16:10"],[16/9,"16:9"],[1/2,"1:2"],[2/3,"2:3"],[3/4,"3:4"],[10/16,"10:16"],[9/16,"9:16"]],locale:{labelButtonExport:"Save and close"},previewPad:!0,willClose:()=>c.current?(l(!1),!0):!1});w.on("loaderror",()=>{i2("Pintura editor failed to load")}),w.on("process",S=>{v(S.dest)}),l(!0)}},[h]);return x.useEffect(()=>{const m=b=>{b.key==="Escape"&&b.stopPropagation()};if(!o)return;const v=b=>{b.target instanceof Element&&b.target.closest('.PinturaModal button[title="Close"]')&&(c.current=!0)};return window.addEventListener("click",v,{capture:!0}),window.addEventListener("keydown",m,{capture:!0}),()=>{window.removeEventListener("click",v,{capture:!0}),window.removeEventListener("keydown",m,{capture:!0})}},[o]),{isEnabled:h,openEditor:g}}const $r=({icon:n,title:e,detail:t,action:r,onDelete:i,active:s,disabled:a,testId:o,custom:l=!1})=>{const{updateRoute:c}=be(),u=p=>{p?.stopPropagation(),a?c({route:"pro",isExternal:!0}):r()},f=p=>{p?.stopPropagation(),i?.()},h=l?d.jsx(ne,{color:"red",label:"Delete",link:!0,onClick:f}):a?d.jsx(ne,{icon:"lock-locked",label:"Upgrade",link:!0,onClick:u}):d.jsx(ne,{color:"green",label:"Configure",link:!0,onClick:u});return d.jsx(Zc,{action:h,avatar:n,className:a?"opacity-50 saturate-0":"",detail:t,hideActions:!a,testId:o,title:s?d.jsxs("span",{className:"inline-flex items-center gap-1",children:[e," ",d.jsx("span",{className:"inline-flex items-center rounded-full bg-[rgba(48,207,67,0.15)] px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wide text-green",children:"Active"})]}):e,onClick:u})},VL=()=>{const{config:n}=Le(),{updateRoute:e}=be(),t=h=>{e(h)},r=n.hostSettings?.limits?.customIntegrations?.disabled,i=Eh("transistor"),s=qw(),{settings:a}=Le(),[o,l,c,u,f]=Te(a,["unsplash","firstpromoter","slack_url","slack_username","transistor"]);return d.jsxs(Yi,{titleSeparator:!1,children:[d.jsx($r,{action:()=>{t("integrations/zapier")},detail:"Automation for your apps",disabled:r,icon:d.jsx(ge,{name:"zapier",size:32}),testId:"zapier-integration",title:"Zapier"}),d.jsx($r,{action:()=>{t("integrations/slack")},active:c&&u,detail:"A messaging app for teams",icon:d.jsx(ge,{name:"slack",size:32}),testId:"slack-integration",title:"Slack"}),d.jsx($r,{action:()=>{t("integrations/unsplash")},active:o,detail:"Beautiful, free photos",icon:d.jsx(ge,{name:"unsplash",size:32}),testId:"unsplash-integration",title:"Unsplash"}),d.jsx($r,{action:()=>{t("integrations/firstpromoter")},active:l,detail:"Launch your member referral program",icon:d.jsx(ge,{name:"firstpromoter",size:32}),testId:"firstpromoter-integration",title:"FirstPromoter"}),d.jsx($r,{action:()=>{t("integrations/pintura")},active:s.isEnabled,detail:"Advanced image editing",icon:d.jsx(ge,{name:"pintura",size:32}),testId:"pintura-integration",title:"Pintura"}),i&&d.jsx($r,{action:()=>{t("integrations/transistor")},active:f,detail:"Give your members access to private podcasts",icon:d.jsx(ge,{name:"transistor",size:32}),testId:"transistor-integration",title:"Transistor"})]})},UL=({integrations:n})=>{const{updateRoute:e}=be(),{mutateAsync:t}=tL(),r=gt();return n.length?d.jsx(Yi,{borderTop:!1,children:n.map(i=>d.jsx($r,{action:()=>e({route:`integrations/${i.id}`}),detail:d.jsx("div",{className:"line-clamp-2 break-words",children:d.jsx("span",{title:`${i.name}: ${i.description||"No description"}`,children:i.description||"No description"})}),icon:i.icon_image?d.jsx("img",{className:"size-8 shrink-0 object-cover",role:"presentation",src:i.icon_image}):d.jsx(ge,{className:"w-8 shrink-0",name:"integration"}),title:i.name,custom:!0,onDelete:()=>{Ke.show(Gr,{title:"Are you sure?",prompt:"Deleting this integration will remove all webhooks and api keys associated with it.",okColor:"red",okLabel:"Delete Integration",onOk:async s=>{try{await t(i.id),s?.remove(),pn({title:"Integration deleted",type:"info",options:{position:"bottom-left"}})}catch(a){r(a)}}})}}))}):d.jsx(ei,{icon:"integration",children:"No custom integration."})},zL=({keywords:n})=>{const[e,t]=x.useState("built-in"),{data:{integrations:r}={integrations:[]}}=eL(),{updateRoute:i}=be(),s=[{id:"built-in",title:"Built-in",contents:d.jsx(VL,{})},{id:"custom",title:"Custom",contents:d.jsx(UL,{integrations:r.filter(o=>o.type==="custom")})}],a=d.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}});return d.jsx(Se,{customButtons:a,customHeader:d.jsxs("div",{className:"sm:-mt-5 md:-mt-7",children:[d.jsx("div",{className:"-mx-5 overflow-hidden rounded-t-xl border-b border-grey-200 md:-mx-7 dark:border-grey-800",children:d.jsx("img",{className:"size-full",src:HL})}),d.jsxs("div",{className:" z-10 mt-6 flex items-start justify-between",children:[d.jsx(Kr,{description:"Make Ghost work with apps and tools.",title:"Integrations"}),d.jsx(ne,{className:"mt-[-5px] inline-flex h-7 cursor-pointer items-center justify-center whitespace-nowrap rounded px-3 text-sm font-semibold text-grey-900 transition hover:bg-grey-200 dark:text-white dark:hover:bg-grey-900 [&:hover]:text-black",color:"clear",label:"Add custom integration",link:!0,onClick:()=>{i("integrations/new"),t("custom")}})]})]}),keywords:n,navid:"integrations",testId:"integrations",children:d.jsx(Kn,{selectedTab:e,tabs:s,onTabChange:t})})},WL=Ce(zL,"Integrations");function qL(n,e={}){window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)},window.plausible(n,{props:e})}const Ql=({label:n,flag:e,disabled:t})=>{const{settings:r}=Le(),i=JSON.parse(rb(r,"labs")||"{}"),{mutateAsync:s}=Xr(),a=Df(),o=gt();return d.jsx(rn,{checked:i[e],disabled:t,label:n,labelClasses:"sr-only",name:`feature-${e}`,onChange:async()=>{const l=!i[e];try{await s([{key:"labs",value:JSON.stringify({...i,[e]:l})}]),qL("Feature Toggled",{state:l?"on":"off",feature:e}),a.setQueriesData([s2],c=>({config:{...c.config,labs:{...c.config.labs,[e]:l}}}))}catch(c){o(c)}}})},Si=({title:n,detail:e,action:t})=>d.jsx(Zc,{action:t,bgOnHover:!1,detail:e,paddingRight:!1,title:n}),GL=ze({method:"POST",path:()=>"/redirects/upload/",body:n=>{const e=new FormData;return e.append("redirects",n),e}}),KL=()=>Ef("/redirects/download/"),ZL=ze({method:"POST",path:()=>"/settings/routes/yaml/",body:n=>{const e=new FormData;return e.append("routes",n),e}}),YL=()=>Ef("/settings/routes/yaml/"),JL=()=>{const{mutateAsync:n}=GL(),{mutateAsync:e}=ZL(),t=gt(),[r,i]=x.useState(!1),[s,a]=x.useState(!1);return d.jsxs(Yi,{titleSeparator:!1,children:[d.jsx(Si,{action:d.jsx(Ql,{flag:"superEditors"}),detail:d.jsx(d.Fragment,{children:"Allows newly-assigned editors to manage members and comments in addition to regular roles."}),title:"Enhanced Editor role (beta)"}),d.jsx(Si,{action:d.jsx(Ql,{flag:"editorExcerpt"}),detail:d.jsx(d.Fragment,{children:"Adds the excerpt input below the post title in the editor"}),title:"Show post excerpt inline"}),d.jsx(Si,{action:d.jsx(Ql,{flag:"additionalPaymentMethods"}),detail:d.jsxs(d.Fragment,{children:["Enable support for CashApp, iDEAL, Bancontact, and others. ",d.jsx("a",{className:"text-green",href:"https://ghost.org/help/payment-methods",rel:"noopener noreferrer",target:"_blank",children:"Learn more →"})]}),title:"Additional payment methods"}),d.jsx(Si,{action:d.jsxs("div",{className:"flex flex-col items-end gap-1",children:[d.jsx(tc,{id:"upload-redirects",onUpload:async o=>{try{i(!0),await n(o),pn({title:"Redirects uploaded",type:"success"})}catch(l){t(l)}finally{i(!1)}},children:d.jsx(ne,{color:"grey",label:r?"Uploading ...":"Upload redirects file",size:"sm",tag:"div"})}),d.jsx(ne,{color:"green",label:"Download current redirects",link:!0,onClick:()=>KL()})]}),detail:d.jsxs(d.Fragment,{children:["Configure redirects for old or moved content, ",d.jsx("br",{})," more info in the ",d.jsx("a",{className:"text-green",href:"https://ghost.org/tutorials/implementing-redirects/",rel:"noopener noreferrer",target:"_blank",children:"docs"})]}),title:"Redirects"}),d.jsx(Si,{action:d.jsxs("div",{className:"flex flex-col items-end gap-1",children:[d.jsx(tc,{id:"upload-routes",onUpload:async o=>{try{a(!0),await e(o),pn({type:"success",title:"Routes uploaded"})}catch(l){t(l)}finally{a(!1)}},children:d.jsx(ne,{color:"grey",label:s?"Uploading ...":"Upload routes file",size:"sm",tag:"div"})}),d.jsx(ne,{color:"green",label:"Download current routes",link:!0,onClick:()=>YL()})]}),detail:"Configure dynamic routing by modifying the routes.yaml file",title:"Routes"})]})},XL="data:image/svg+xml,%3csvg%20width='267'%20height='285'%20viewBox='0%200%20267%20285'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3ccircle%20cx='165'%20cy='183'%20r='102'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='68'%20cy='71'%20r='31'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='99'%20cy='17'%20r='17'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='118'%20cy='70'%20r='7'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='45'%20cy='32'%20r='3'%20fill='%23F1F3F4'/%3e%3ccircle%20cx='12.5'%20cy='83.5'%20r='12.5'%20fill='%23F1F3F4'/%3e%3c/svg%3e",Dh="InvitesResponseType",QL=Rf({dataType:Dh,path:"/invites/",permissions:["Owner","Administrator"],defaultSearchParams:{limit:"100",include:"roles"},defaultNextPageParams:(n,e)=>{var t;return{...e,page:(((t=n.meta)==null?void 0:t.pagination.next)||1).toString()}},returnData:n=>{const{pages:e}=n,t=e.flatMap(i=>i.invites),r=e[e.length-1].meta;return{invites:t,meta:r,isEnd:r?r.pagination.pages===r.pagination.page:!0}}}),e_=ze({method:"POST",path:()=>"/invites/",body:({email:n,roleId:e})=>({invites:[{email:n,role_id:e,expires:null,status:null,token:null}]}),updateQueries:{dataType:Dh,emberUpdateType:"createOrUpdate",update:Of("invites")}}),t_=ze({path:n=>`/invites/${n}/`,method:"DELETE",updateQueries:{dataType:Dh,emberUpdateType:"delete",update:a2("invites")}}),n_="RolesResponseType",r_=Qr({dataType:n_,path:"/roles/",defaultSearchParams:{limit:"100"}});function ec(n,e){return n.filter(t=>t.roles.find(r=>r.name===e))}function i_(n,e){return n.filter(t=>t.roles.find(r=>e.includes(r.name)))}function s_(n){return ec(n,"Owner")[0]}const Gw=()=>{const{currentUser:n}=Le(),{data:{users:e,meta:t,isEnd:r}={users:[]},isLoading:i,fetchNextPage:s}=o2(),{data:{invites:a,meta:o,isEnd:l}={invites:[]},isLoading:c,fetchNextPage:u}=QL(),{data:{roles:f}={},isLoading:h}=r_(),p=x.useMemo(()=>s_(e),[e]),g=x.useMemo(()=>ec(e,"Administrator"),[e]),m=x.useMemo(()=>i_(e,["Editor","Super Editor"]),[e]),v=x.useMemo(()=>ec(e,"Author"),[e]),b=x.useMemo(()=>ec(e,"Contributor"),[e]),y=x.useMemo(()=>a.map(w=>{let S=f?.find(k=>w.role_id===k.id);return{...w,role:S?.name}}),[a,f]);return{totalUsers:t?.pagination.total||0,totalInvites:o?.pagination.total||0,users:e,ownerUser:p,adminUsers:g,editorUsers:m,authorUsers:v,contributorUsers:b,currentUser:n,invites:y,isLoading:i||c||h,hasNextPage:r===!1,invitesHasNextPage:l===!1,fetchNextPage:s,fetchNextInvitePage:u}},a_=ea(()=>import("./index-BmK6ThYl.js").then(n=>n.i),__vite__mapDeps([8,1,2,9]),import.meta.url);class Kw extends Error{errorType;errorDetails;constructor({errorType:e,errorDetails:t,message:r}){super(r),this.errorType=e,this.errorDetails=t}}class o_ extends Kw{constructor(e){super(Object.assign({errorType:"IncorrectUsageError"},e))}}class xa extends Kw{constructor(e){super(Object.assign({errorType:"HostLimitError"},e))}}const ya=()=>{const{config:n}=Le(),[e,t]=x.useState(null);x.useEffect(()=>{a_.then(u=>t(()=>u.default))},[]);const{users:r,contributorUsers:i,invites:s,isLoading:a}=Gw(),{refetch:o}=ib({searchParams:{limit:"1"},enabled:!1}),{refetch:l}=ob({searchParams:{filter:"status:active",limit:"1"},enabled:!1}),c=x.useMemo(()=>n.hostSettings?.billing?.enabled===!0&&n.hostSettings?.billing?.url?n.hostSettings.billing.url:"https://ghost.org/help/",[n.hostSettings?.billing]);return x.useMemo(()=>{const u={isLimited:()=>!1,isDisabled:()=>!1,checkWouldGoOverLimit:()=>Promise.resolve(!1),errorIfWouldGoOverLimit:()=>Promise.resolve(),errorIfIsOverLimit:()=>Promise.resolve()};if(!e||!n.hostSettings?.limits||a)return u;const f={...n.hostSettings.limits},h=new e;return f.staff&&(f.staff.currentCountQuery=async()=>{const p=r.filter(m=>m.status!=="inactive"&&!i.includes(m)),g=s.filter(m=>m.role!=="Contributor");return p.length+g.length}),f.members&&(f.members.currentCountQuery=async()=>{const{data:p}=await o();return p?.meta?.pagination?.total||0}),f.newsletters&&(f.newsletters.currentCountQuery=async()=>{const{data:{pages:p}={pages:[]}}=await l();return p[0].meta?.pagination.total||0}),h.loadLimits({limits:f,helpLink:c,errors:{HostLimitError:xa,IncorrectUsageError:o_}}),{isLimited:p=>h.isLimited(p),isDisabled:p=>h.isDisabled(p),checkWouldGoOverLimit:p=>h.checkWouldGoOverLimit(p),errorIfWouldGoOverLimit:(p,g={})=>h.errorIfWouldGoOverLimit(p,g),errorIfIsOverLimit:p=>h.errorIfIsOverLimit(p)}},[e,n,i,o,l,c,s,a,r])},l_=[{title:"Stripe Automatic Tax (private beta)",description:"Use Stripe Automatic Tax at Stripe Checkout. Needs to be enabled in Stripe",flag:"stripeAutomaticTax"},{title:"Email customization (internal beta)",description:"Newsletter customization settings that have been released to Ghost's own production sites",flag:"emailCustomization"},{title:"Import Member Tier",description:"Enables tier to be specified when importing members",flag:"importMemberTier"},{title:"Explore",description:"Enables keeping in touch with the new Explore API",flag:"explore"},{title:"Tags X",description:"Enables the new Tags UI",flag:"tagsX"},{title:"Email Unique ID",description:"Enables {uniqueid} variable in emails for unique image URLs to bypass ESP image caching",flag:"emailUniqueid"},{title:"Welcome Emails",description:"Enables features related to sending welcome emails to new members",flag:"welcomeEmails"},{title:"Updated theme translation (beta)",description:"Enable theme translation using i18next instead of the old translation package.",flag:"themeTranslation"},{title:"IndexNow",description:"Automatically notify search engines when content is published or updated for faster indexing.",flag:"indexnow"},{title:"Featurebase Feedback",description:"Display a Feedback menu item in the admin sidebar. Requires the new admin experience.",flag:"featurebaseFeedback"},{title:"Transistor",description:"Enable Transistor podcast integration",flag:"transistor"},{title:"Inbox Links",description:"Enable mail app links on signup/signin",flag:"inboxlinks"}],c_=()=>{const n=ya(),[e,t]=x.useState([]);return x.useEffect(()=>{(async()=>{const i=[];for(const s of l_)if(s.limitName&&n?.isLimited(s.limitName))try{await n.errorIfWouldGoOverLimit(s.limitName),i.push(s)}catch(a){a instanceof xa||i.push(s)}else i.push(s);t(i)})()},[n]),d.jsx(Yi,{titleSeparator:!1,children:e.map(r=>d.jsx(Si,{action:d.jsx(Ql,{flag:r.flag,label:r.title}),detail:r.description,title:r.title},r.flag))})};function u_(n){const[e,t]=x.useState(!1),r=x.useRef(!1),{filter:i,getVisibleComponents:s,checkVisible:a}=ba();return x.useEffect(()=>{i||(r.current=!1)},[i]),x.useEffect(()=>{if(r.current)return;const c=a(n),u=s(),f=!!i&&c&&u.size===1;t(f)},[i,n,a,s]),{isOpen:e,openManually:()=>{r.current=!0,t(!0)},closeManually:()=>{r.current=!0,t(!1)}}}const d_=({keywords:n})=>{const[e,t]=x.useState("labs-beta-features"),{config:r}=Le(),{isOpen:i,openManually:s,closeManually:a}=u_(n),o=[{id:"labs-beta-features",title:"Beta features",contents:d.jsx(JL,{})},r.enableDeveloperExperiments&&{id:"labs-private-features",title:"Private features",contents:d.jsx(c_,{})}].filter(Boolean);return d.jsx(Se,{customHeader:d.jsxs("div",{className:"z-10 flex items-start justify-between",children:[d.jsx(Kr,{description:"This is a testing ground for new or experimental features. They may change, break or inexplicably disappear at any time.",title:"Labs"}),d.jsx(ne,{className:"mt-[-5px]",color:i?"grey":"clear",label:i?"Close":"Open",size:"sm",onClick:i?a:s})]}),isEditing:i,keywords:n,navid:"labs",testId:"labs",children:i?d.jsx(Kn,{selectedTab:e,tabs:o,onTabChange:t}):d.jsx("div",{className:"absolute inset-0 z-0 overflow-hidden opacity-70",children:d.jsx("img",{className:"absolute -right-6 -top-6 dark:opacity-10",src:XL})})})},f_=Ce(d_,"Labs"),h_=()=>{const{refetch:n}=M2({searchParams:{limit:"1000"},enabled:!1}),e=gt(),t=async()=>{try{const{data:r}=await n();if(r){const i=new Blob([r],{type:"text/csv"}),s=window.URL.createObjectURL(i),a=document.createElement("a");a.setAttribute("hidden",""),a.setAttribute("href",s),a.setAttribute("download",`post-analytics.${new Date().toISOString().split("T")[0]}.csv`),document.body.appendChild(a),a.click(),document.body.removeChild(a),window.URL.revokeObjectURL(s)}}catch(r){e(r)}};return d.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[d.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"export",iconColorClass:"!h-4 !w-auto",label:"Content & settings",onClick:()=>_L()}),d.jsx(ne,{className:"!h-9 !font-semibold",color:"grey",icon:"baseline-chart",iconColorClass:"!h-4 !w-auto",label:"Post analytics",onClick:t})]})},p_=()=>{const n=ir(),{mutateAsync:e}=PL(),[t,r]=x.useState(!1),i=gt();return d.jsx(Or,{backDropClick:!1,footer:d.jsxs("div",{className:"flex w-full items-center justify-between p-8",children:[d.jsx(Ls,{href:"https://docs.ghost.org/migration/ghost",target:"_blank",children:"Learn about importing"}),d.jsx(ne,{color:"outline",disabled:t,label:"Cancel",onClick:()=>n.remove()})]}),okLabel:"",size:"sm",testId:"universal-import-modal",title:"Universal import",children:d.jsx("div",{className:"py-4 leading-9",children:d.jsx(tc,{accept:"application/json, application/zip",id:"import-file",onUpload:async s=>{r(!0);try{await e(s),n.remove(),Ke.show(Gr,{title:"Import in progress",prompt:"Your import is being processed, and you'll receive a confirmation email as soon as it’s complete. Usually this only takes a few minutes, but larger imports may take longer.",cancelLabel:"",okLabel:"Got it",onOk:a=>a?.remove(),formSheet:!1})}catch(a){i(a)}finally{r(!1)}},children:d.jsx("div",{className:"-mb-4 cursor-pointer bg-grey-75 p-10 text-center dark:bg-grey-950",children:t?"Uploading...":d.jsxs(d.Fragment,{children:["Select any JSON or zip file that contains ",d.jsx("br",{}),"posts and settings"]})})})})})},m_=Ke.create(p_),oi=({icon:n,title:e,onClick:t})=>{const r=_("flex h-9 cursor-pointer items-center justify-center gap-2 rounded-md bg-grey-100 px-2 text-sm font-semibold transition-all hover:bg-grey-200 dark:bg-grey-900");return t?d.jsxs("button",{className:r,type:"button",onClick:t,children:[n,e]}):d.jsx(d.Fragment,{})},g_=()=>{const{updateRoute:n}=be(),e=()=>{Ke.show(m_)};return d.jsxs("div",{className:"grid grid-cols-1 gap-4 pt-4 md:grid-cols-2 lg:grid-cols-3",children:[d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"substack",size:18}),title:"Substack",onClick:()=>n({isExternal:!0,route:"/migrate/substack"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"wordpress",size:18}),title:"WordPress",onClick:()=>n({isExternal:!0,route:"/migrate/wordpress"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"squarespace",size:18}),title:"Squarespace",onClick:()=>n({isExternal:!0,route:"/migrate/squarespace"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto dark:invert",name:"medium",size:18}),title:"Medium",onClick:()=>n({isExternal:!0,route:"/migrate/medium"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"mailchimp",size:20}),title:"Mailchimp",onClick:()=>n({isExternal:!0,route:"/migrate/mailchimp"})}),d.jsx(oi,{icon:d.jsx(ge,{className:"w-auto",name:"import",size:16}),title:"Universal import",onClick:e})]})},v_=({keywords:n})=>{const[e,t]=x.useState("import"),r=[{id:"import",title:"Import",contents:d.jsx(g_,{})},{id:"export",title:"Export",contents:d.jsx(h_,{})}].filter(Boolean);return d.jsx(Se,{customHeader:d.jsx(Kr,{description:"Import content, members and subscriptions from other platforms or export your Ghost data.",title:"Migration tools"}),keywords:n,navid:"migration",testId:"migrationtools",children:d.jsx(Kn,{selectedTab:e,tabs:r,onTabChange:t})})},b_=Ce(v_,"Migration tools"),rs=({keywords:n,...e})=>{const{checkVisible:t,noResult:r}=ba();return d.jsx(vD,{isVisible:t(n)||r,...e})},Wt={integrations:["advanced","integrations","zapier","slack","unsplash","first promoter","firstpromoter","pintura","disqus","analytics","ulysses","typeform","buffer","plausible","github","webhooks"],migrationtools:["import","export","migrate","substack","substack","migration","medium","wordpress","wp","squarespace"],codeInjection:["advanced","code injection","head","footer"],labs:["advanced","labs","alpha","private","beta","flag","routes","redirect","translation","editor","portal"],history:["advanced","history","log","events","user events","staff","audit","action"],dangerzone:["danger","danger zone","delete","content","delete all content","delete site"]},x_=()=>d.jsxs(rs,{keywords:Object.values(Wt).flat(),title:"Advanced",children:[d.jsx(WL,{keywords:Wt.integrations}),d.jsx(b_,{keywords:Wt.migrationtools}),d.jsx(NL,{keywords:Wt.codeInjection}),d.jsx(f_,{keywords:Wt.labs}),d.jsx(FL,{keywords:Wt.history}),d.jsx(BL,{keywords:Wt.dangerzone})]}),vu="OffersResponseType",Zw=Qr({dataType:vu,path:"/offers/",defaultSearchParams:{}}),O6=l2({dataType:vu,path:n=>`/offers/${n}/`}),T6=ze({method:"PUT",path:n=>`/offers/${n.id}/`,body:n=>({offers:[n]}),updateQueries:{dataType:vu,emberUpdateType:"createOrUpdate",update:sb("offers")}}),N6=ze({method:"POST",path:()=>"/offers/",body:n=>({offers:[n]}),updateQueries:{dataType:vu,emberUpdateType:"createOrUpdate",update:Of("offers")}});function Tg(n){const e=new Date,t={timeZone:n},r=navigator.language.startsWith("en")?navigator.language:"en-US";return e.toLocaleString(r,t)}function Yw(n=""){let e=new RegExp(/([A-Za-z\u00C0-\u017F]{1})[A-Za-z\u00C0-\u017F]+/,"g"),t=[...n.matchAll(e)];return((t.shift()?.[1]||"")+(t.pop()?.[1]||"")).toUpperCase()}function Rh(n){let r=0;for(let s=0;s<n.length;s++)r=n.charCodeAt(s)+((r<<5)-r);return"hsl("+r%360+", 70%, 40%)"}function kn(n){return n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")}function y_(n){return/^[a-z0-9]{24}$/.test(n)}const w_=[{label:"Free members",value:"status:free",color:"green"},{label:"Paid members",value:"status:-free",color:"pink"}],S_=(n,e)=>{const t=$u({path:"/tiers/",filterKey:"name",responseKey:"tiers"}),r=$u({path:"/labels/",filterKey:"name",responseKey:"labels"}),i=$u({path:"/offers/",filterKey:"name",responseKey:"offers"}),[s,a]=x.useState(null),o=h=>({value:h.id,label:h.name,color:"black"}),l=h=>({value:`label:${h.slug}`,label:h.name,color:"grey"}),c=h=>({value:`offer_redemptions:${h.id}`,label:h.name,color:"black"}),u=async(h,p)=>{const[g,m,v]=await Promise.all([t.loadData(h),r.loadData(h),i.loadData(h)]),b=[{options:w_.filter(({label:y})=>y.toLowerCase().includes(h.toLowerCase()))},{label:"Active Tiers",options:g.filter(({active:y,type:w})=>y&&w!=="free").map(o)||[]},{label:"Archived Tiers",options:g.filter(({active:y})=>!y).map(o)||[]},{label:"Labels",options:m.map(l)||[]},{label:"Offers",options:v.map(c)||[]}];s===null&&f(),p(b.filter(y=>y.options.length>0))},f=async()=>{const h=e?.split(",")||[],p=[],g=[],m=[];for(const b of h)b.startsWith("label:")?g.push(b.replace("label:","")):b.startsWith("offer_redemptions:")?m.push(b.replace("offer_redemptions:","")):y_(b)&&p.push(b);const v=await Promise.all([t.loadInitialValues(p,"id").then(b=>b.map(o)),r.loadInitialValues(g,"slug").then(b=>b.map(l)),i.loadInitialValues(m,"id").then(b=>b.map(c))]).then(b=>b.flat());a(h.map(b=>v.find(y=>y.value===b)))};return x.useEffect(()=>{n==="segment"&&u("",()=>{})},[n]),{loadOptions:O2(u,500),selectedSegments:s,setSelectedSegments:a}},Ng=[{label:"Whoever has access to the post",hint:"Free posts to everyone, premium posts sent to paid members",value:"visibility"},{label:"All members",hint:"Everyone who is subscribed to newsletter updates, whether free or paid members",value:"all-members"},{label:"Paid-members only",hint:"People who have a premium subscription",value:"paid-only"},{label:"Specific people",hint:"Only people with any of the selected tiers or labels",value:"segment"},{label:"Usually nobody",hint:"Newsletters are off for new posts, but can be enabled when needed",value:"none"}];function Pg({defaultEmailRecipients:n,defaultEmailRecipientsFilter:e}){return n==="filter"?e==="status:free,status:-free"?"all-members":e==="status:-free"?"paid-only":e===null?"none":"segment":n}const k_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c]=Te(e,["editor_default_email_recipients","editor_default_email_recipients_filter"]),[u,f]=x.useState(Pg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c})),{loadOptions:h,selectedSegments:p,setSelectedSegments:g}=S_(u,c);x.useEffect(()=>{const b=Pg({defaultEmailRecipients:l,defaultEmailRecipientsFilter:c});f(b)},[l,c]);const m=b=>{["visibility","disabled"].includes(b)?(a("editor_default_email_recipients",b),a("editor_default_email_recipients_filter",null)):a("editor_default_email_recipients","filter"),b==="all-members"&&a("editor_default_email_recipients_filter","status:free,status:-free"),b==="paid-only"&&a("editor_default_email_recipients_filter","status:-free"),b==="none"&&a("editor_default_email_recipients_filter",null),f(b),t||o(!0)},v=b=>{if(g(b),b.length){const y=b?.map(({value:w})=>w).join(",");a("editor_default_email_recipients_filter",y)}else a("editor_default_email_recipients_filter",null),f("none");t||o(!0)};return d.jsx(Se,{description:"When you publish new content, who do you usually want to send it to?",isEditing:t,keywords:n,navid:"default-recipients",saveState:r,testId:"default-recipients",title:"Default recipients",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:i,children:d.jsxs(Ye,{columns:1,children:[d.jsx(yr,{hint:"Who should receive your posts by default?",options:Ng,selectedOption:Ng.find(b=>b.value===u),testId:"default-recipients-select",title:"Default Newsletter recipients",onSelect:b=>{b&&m(b.value)}}),u==="segment"&&p&&d.jsx(ux,{loadOptions:h,title:"Filter",values:p,async:!0,defaultOptions:!0,onChange:v})]})})},C_=Ce(k_,"Default recipients"),A_=({keywords:n})=>{const{settings:e}=Le(),{mutateAsync:t}=Xr(),{updateRoute:r}=be(),i=gt(),[s,a]=Te(e,["editor_default_email_recipients","members_signup_access"]),o=a==="none",l=async u=>{const f=[{key:"editor_default_email_recipients",value:u.target.checked?"visibility":"disabled"}];u.target.checked||f.push({key:"editor_default_email_recipients_filter",value:null});try{await t(f)}catch(h){i(h)}},c=d.jsx(d.Fragment,{children:d.jsx(rn,{checked:s!=="disabled",direction:"rtl",onChange:l})});return d.jsx(Se,{customButtons:c,description:"Newsletter features are active, posts can be sent by email",keywords:n,navid:"enable-newsletters",testId:"enable-newsletters",title:"Newsletter sending",children:d.jsx(Ye,{columns:1,values:[{key:"private",value:s!=="disabled"?d.jsxs("div",{className:"w-full",children:[d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsx(ge,{colorClass:"text-green",name:"check",size:"sm"}),d.jsx("span",{children:"Enabled"})]}),o&&d.jsxs(yb,{className:"mt-6 text-sm",color:"grey",children:["Your ",d.jsx("button",{className:"!underline",type:"button",onClick:()=>{r("members")},children:"Subscription access"})," is set to ‘Nobody’, only existing members will receive newsletters."]})]}):d.jsxs("div",{className:"flex items-center gap-2 text-grey-900",children:[d.jsx(ge,{colorClass:"text-grey-600",name:"mail-block",size:"sm"}),d.jsx("span",{children:"Disabled"})]})}]})})},M_=Ce(A_,"Newsletter sending"),fd=[{label:"🇺🇸 US",value:"https://api.mailgun.net/v3"},{label:"🇪🇺 EU",value:"https://api.eu.mailgun.net/v3"}],I_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),{mutateAsync:l}=Xr(),c=gt(),[u,f,h]=Te(e,["mailgun_base_url","mailgun_domain","mailgun_api_key"]),g=f&&h?[{key:"status",value:d.jsx(cI,{icon:"check-circle",iconColorClass:"text-green",children:"Mailgun is set up"})}]:[{heading:"Status",key:"status",value:"Mailgun is not set up"}],m=d.jsx(Ye,{columns:1,values:g}),v=d.jsxs(d.Fragment,{children:["Find your Mailgun API keys ",d.jsx(Ls,{href:"https://app.mailgun.com/settings/api_security",rel:"noopener noreferrer",target:"_blank",children:"here"})]}),b=d.jsx(Ye,{children:d.jsxs("div",{className:"grid grid-cols-[120px_auto] gap-x-3 gap-y-6",children:[d.jsx(yr,{options:fd,selectedOption:fd.find(w=>w.value===u),title:"Mailgun region",onSelect:w=>{a("mailgun_base_url",w?.value||null)}}),d.jsx(tt,{title:"Mailgun domain",value:f,onChange:w=>{a("mailgun_domain",w.target.value)}}),d.jsx("div",{className:"col-span-2",children:d.jsx(tt,{hint:v,title:"Mailgun private API key",type:"password",value:h,onChange:w=>{a("mailgun_api_key",w.target.value)}})})]})}),y=d.jsxs(d.Fragment,{children:["The Mailgun API is used for bulk email newsletter delivery. ",d.jsx(Ls,{href:"https://ghost.org/docs/faq/mailgun-newsletters/",target:"_blank",children:"Why is this required?"})]});return d.jsx(Se,{description:y,isEditing:t,keywords:n,navid:"mailgun",saveState:r,testId:"mailgun",title:"Mailgun",onCancel:s,onEditingChange:o,onSave:async()=>{if(!u)try{await l([{key:"mailgun_base_url",value:fd[0].value}])}catch(w){c(w);return}i()},children:t?b:m})},E_=Ce(I_,"Mailgun"),Lg=({id:n,setRef:e,isDragging:t,style:r,children:i,...s})=>{const{updateRoute:a}=be(),o=()=>{a({route:`newsletters/${n}`})},l=d.jsxs(tu,{ref:e,action:d.jsx(ne,{color:"green","data-testid":"edit-newsletter-button",label:"Edit",link:!0,onClick:o}),className:t?"opacity-75":"",hideActions:!1,style:r,onClick:o,children:[(s.dragHandleAttributes||t)&&d.jsx(Hn,{className:"w-10 !align-middle",children:d.jsx(Fx,{className:"h-10",isDragging:t||!1,...s})}),i]});return t?d.jsx(Ti,{children:l}):l},_g=({newsletter:n})=>{const{updateRoute:e}=be(),t=()=>{e({route:`newsletters/${n.id}`})};return d.jsxs(d.Fragment,{children:[d.jsx(Hn,{className:"w-full",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{className:"font-medium",children:n.name}),d.jsx("span",{className:"mt-0.5 text-xs leading-tight text-grey-700",children:n.description||"No description"})]})}),d.jsx(Hn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{children:kn(n.count?.active_members||0)}),d.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Subscribers"})]})}),d.jsx(Hn,{className:"hidden md:!visible md:!table-cell md:min-w-[11rem]",onClick:t,children:d.jsxs("div",{className:"flex grow flex-col",children:[d.jsx("span",{children:kn(n.count?.posts||0)}),d.jsx("span",{className:"mt-0.5 whitespace-nowrap text-xs leading-tight text-grey-700",children:"Delivered"})]})})]})},jg=({newsletters:n,isLoading:e,isSortable:t,onSort:r})=>e?d.jsx(Ti,{isLoading:!0}):n.length&&t?d.jsx(lD,{container:i=>d.jsx(Lg,{...i}),items:n,renderItem:i=>d.jsx(_g,{newsletter:i}),wrapper:Ti,onMove:(i,s)=>r?.(i,s)}):n.length?d.jsx(Ti,{children:n.map(i=>d.jsx(Lg,{id:i.id,children:d.jsx(_g,{newsletter:i})}))}):d.jsx(ei,{icon:"mail-block",children:"No newsletters found."}),Jw=()=>{const[n,e]=x.useState(new URLSearchParams);return x.useEffect(()=>{const r=()=>{const s=window.location.hash.split("?")[1];e(s?new URLSearchParams(s):new URLSearchParams)};return r(),window.addEventListener("hashchange",r),()=>{window.removeEventListener("hashchange",r)}},[]),{getParam:r=>n.get(r)}},hd=({id:n,children:e})=>{const t=ir(),{updateRoute:r}=be();return d.jsx("button",{className:"text-green",type:"button",onClick:()=>{r(`newsletters/${n}`),t.remove()},children:e})},D_=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("newsletters/new")},[r,i]=x.useState("active-newsletters"),{data:{newsletters:s,meta:a,isEnd:o}={},isLoading:l,fetchNextPage:c}=ob(),{mutateAsync:u}=k2(),f=Df(),h=Jw().getParam("verifyEmail"),{mutateAsync:p}=C2(),g=gt(),[m,v]=x.useState(s||[]);x.useEffect(()=>{v(s||[])},[s]),x.useEffect(()=>{if(!h||!window.location.href.includes("newsletters"))return;(async()=>{try{const{newsletters:[C],meta:{email_verified:E}={}}=await p({token:h});let M,R;E&&E==="sender_email"?(M="Newsletter email verified",R=d.jsxs(d.Fragment,{children:["Newsletter ",d.jsx(hd,{id:C.id,children:C.name})," will now be sent from ",d.jsx("strong",{children:C.sender_email}),"."]})):E&&E==="sender_reply_to"?(M="Reply-to address verified",R=d.jsxs(d.Fragment,{children:["Newsletter ",d.jsx(hd,{id:C.id,children:C.name})," will now use ",d.jsx("strong",{children:C.sender_reply_to})," as the reply-to address."]})):(M="Email address verified",R=d.jsxs(d.Fragment,{children:["Email address for newsletter ",d.jsx(hd,{id:C.id,children:C.name})," has been changed."]})),Ke.show(Gr,{title:M,prompt:R,okLabel:"Close",cancelLabel:"",onOk:T=>T?.remove()})}catch(C){let E="There was an error verifying your email address. Try again later.";C instanceof c2&&C.message==="Token expired"&&(E="Verification link has expired."),Ke.show(Gr,{title:"Error verifying email address",prompt:E,okLabel:"Close",cancelLabel:"",onOk:M=>M?.remove()}),g(C,{withToast:!1})}})()},[h,g,p]);const b=d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Add newsletter",size:"sm",onClick:()=>{t()}}),y=m.filter(A=>A.status==="active").sort((A,C)=>A.sort_order-C.sort_order)||[],w=m.filter(A=>A.status!=="active"),S=async(A,C)=>{const E=y.findIndex(L=>L.id===A),M=y.findIndex(L=>L.id===C)||0,T=Jf(y,E,M).map((L,$)=>L.sort_order===$?null:{...L,sort_order:$}).filter(L=>!!L),N=w.map((L,$)=>L.sort_order===$+y.length?null:{...L,sort_order:$}).filter(L=>!!L),P=[...T,...N].sort((L,$)=>L.sort_order-$.sort_order);v(m.map(L=>P.find($=>$.id===L.id)||L)),f.setQueriesData([A2],L=>{if(L)return{...L,pages:L.pages.map($=>({...$,newsletters:$.newsletters.map(q=>P.find(Z=>Z.id===q.id)||q)}))}});for(const L of P)await u(L)},k=[{id:"active-newsletters",title:"Active",contents:d.jsx(jg,{isLoading:l,newsletters:y,isSortable:!0,onSort:S})},{id:"archived-newsletters",title:"Archived",contents:d.jsx(jg,{isLoading:l,newsletters:w})}];return d.jsxs(Se,{customButtons:b,description:"Edit details and customize your design",keywords:n,navid:"newsletters",testId:"newsletters",title:"Newsletters",children:[d.jsx(Kn,{selectedTab:r,tabs:k,onTabChange:i}),o===!1&&d.jsx(ne,{label:`Load more (showing ${m?.length||0}/${a?.pagination.total||0} newsletters)`,link:!0,onClick:()=>c()})]})},R_=Ce(D_,"Newsletters"),gr={enableNewsletters:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off"],newsletters:["newsletters","emails","design","customization"],defaultRecipients:["newsletters","default recipients","emails"],mailgun:["mailgun","emails","newsletters"],newslettersNavMenu:["emails","newsletters","newsletter sending","enable","disable","turn on","turn off","design","customization","default recipients","emails","mailgun","tips","donations","one time","payment"]},O_=()=>{const{settings:n,config:e}=Le(),[t]=Te(n,["editor_default_email_recipients"]);return d.jsxs(rs,{keywords:Object.values(gr).flat(),title:"Email newsletter",children:[d.jsx(M_,{keywords:gr.enableNewsletters}),t!=="disabled"&&d.jsxs(d.Fragment,{children:[d.jsx(C_,{keywords:gr.defaultRecipients}),d.jsx(R_,{keywords:gr.newsletters}),!e.mailgunIsConfigured&&d.jsx(E_,{keywords:gr.mailgun})]})]})},T_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c,u,f,h,p]=Te(e,["email_track_opens","email_track_clicks","members_track_sources","outbound_link_tagging","web_analytics_configured","web_analytics_enabled"]),g=u2(e,"email_track_clicks"),[m,v]=x.useState(!1),b=ya(),{updateRoute:y}=be();x.useEffect(()=>{b?.isLimited("limitAnalytics")?b.errorIfWouldGoOverLimit("limitAnalytics").catch(k=>{k instanceof xa&&v(!0)}):v(!1)},[b]);const w=(k,A)=>{a(k,A.target.checked),o(!0)},S=d.jsxs(Ye,{className:"analytics-settings !gap-y-0",columns:1,children:[d.jsx(rn,{checked:p,direction:"rtl",disabled:!h||m,gap:"gap-0",hint:h?d.jsxs(d.Fragment,{children:["Cookie-free, first party traffic analytics for your site, powered by ",d.jsx("a",{className:"text-green",href:"https://ghost.org/integrations/tinybird",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})]}):d.jsx(d.Fragment,{children:"Cookie-free, first party traffic analytics for your site"}),label:"Web analytics",labelClasses:"py-4 w-full",onChange:k=>{w("web_analytics",k)}}),m?d.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:d.jsx("span",{className:"flex items-start gap-2",children:d.jsxs("span",{children:["Web analytics is available on the Publisher plan and above. ",d.jsx("span",{className:"cursor-pointer text-green",onClick:()=>y({route:"/pro",isExternal:!0}),children:"Upgrade now →"})]})})}):h?d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}):d.jsx("div",{className:"mb-5 rounded-md border border-grey-200 bg-grey-50 px-4 py-2.5 text-sm dark:border-grey-900 dark:bg-grey-925",children:d.jsx("span",{className:"flex items-start gap-2",children:d.jsxs("span",{children:["Web analytics in Ghost is powered by ",d.jsx("a",{className:"text-green",href:"https://tbrd.co/ghost",rel:"noopener noreferrer",target:"_blank",children:"Tinybird"})," and requires configuration to start collecting data. ",d.jsx("a",{className:"text-green",href:"https://docs.ghost.org/install/docker#tinybird-integration",rel:"noopener noreferrer",target:"_blank",children:"Get started →"})]})})}),d.jsx(rn,{checked:l,direction:"rtl",gap:"gap-0",hint:"Record when a member opens an email",label:"Newsletter opens",labelClasses:"py-4 w-full",onChange:k=>{w("email_track_opens",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:c,direction:"rtl",disabled:g,gap:"gap-0",hint:"Record when a member clicks on any link in an email",label:"Newsletter clicks",labelClasses:"py-4 w-full",onChange:k=>{w("email_track_clicks",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:u,direction:"rtl",gap:"gap-0",hint:"Track the traffic sources and posts that drive the most member growth",label:"Member sources",labelClasses:"py-4 w-full",onChange:k=>{w("members_track_sources",k)}}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsx(rn,{checked:f,direction:"rtl",gap:"gap-0",hint:"Make it easier for other sites to track the traffic you send them in their analytics",label:"Outbound link tagging",labelClasses:"py-4 w-full",onChange:k=>{w("outbound_link_tagging",k)}})]});return d.jsxs(Se,{description:"Decide what data you collect across your publication",isEditing:t,keywords:n,navid:"analytics",saveState:r,testId:"analytics",title:"Analytics",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:i,children:[S,d.jsx("div",{className:"items-center-mt-1 flex justify-between",children:d.jsx("a",{className:"text-sm text-green",href:"https://ghost.org/help/post-analytics/",rel:"noopener noreferrer",target:"_blank",children:"Learn about analytics"})})]})},N_=Ce(T_,"Analytics"),P_=({keywords:n})=>{const{siteData:e}=Le(),{localSettings:t,isEditing:r,saveState:i,handleSave:s,handleCancel:a,updateSetting:o,handleEditingChange:l,errors:c,clearError:u}=Ot({onValidate:()=>f&&!h?{password:"Enter a password"}:{}}),[f,h,p]=Te(t,["is_private","password","public_hash"]),g=S=>{o("is_private",S.target.checked)},m=S=>{o("password",S.target.value)},v=`${e.url.replace(/\/$/,"")}/${p}/rss`,b=d.jsxs(d.Fragment,{children:["A private RSS feed is available at ",d.jsx("a",{className:"break-all text-green",href:v,rel:"noopener noreferrer",target:"_blank",children:v})]}),y=d.jsx(Ye,{values:[{key:"private",value:f?d.jsxs("div",{className:"w-full",children:[d.jsxs("div",{className:"flex items-center gap-1",children:[d.jsx(ge,{colorClass:"text-yellow",name:"lock-locked",size:"sm"}),d.jsx("div",{className:"leading-supertight",children:"Your site is password protected"})]}),b&&d.jsxs("div",{className:"mt-7 w-full",children:[d.jsx(Ct,{}),d.jsx(Mn,{children:b})]})]}):d.jsxs("div",{className:"flex items-center gap-1 text-grey-900 dark:text-grey-400",children:[d.jsx(ge,{colorClass:"text-black dark:text-white",name:"lock-unlocked",size:"sm"}),d.jsx("span",{children:"Your site is not password protected"})]})}]}),w=d.jsxs(Ye,{children:[d.jsx(rn,{checked:f,direction:"rtl",hint:"All search engine optimization and social features will be disabled.",label:"Enable password protection",onChange:g}),f&&d.jsx(tt,{error:!!c.password,hint:c.password,placeholder:"Enter password",title:"Site password",value:h,hideTitle:!0,onChange:m,onKeyDown:()=>u("password")})]});return d.jsx(Se,{description:"Enable protection with a simple shared password.",isEditing:r,keywords:n,navid:"locksite",saveState:i,testId:"locksite",title:"Make site private",onCancel:a,onEditingChange:l,onSave:s,children:r?w:y})},L_=Ce(P_,"Make site private"),__=[{code:"af",label:"Afrikaans"},{code:"ar",label:"Arabic"},{code:"bg",label:"Bulgarian"},{code:"bn",label:"Bengali"},{code:"bs",label:"Bosnian"},{code:"ca",label:"Catalan"},{code:"cs",label:"Czech"},{code:"da",label:"Danish"},{code:"de",label:"German"},{code:"de-CH",label:"Swiss German"},{code:"el",label:"Greek"},{code:"en",label:"English"},{code:"eo",label:"Esperanto"},{code:"es",label:"Spanish"},{code:"et",label:"Estonian"},{code:"eu",label:"Basque"},{code:"fa",label:"Persian/Farsi"},{code:"fi",label:"Finnish"},{code:"fr",label:"French"},{code:"gd",label:"Gaelic (Scottish)"},{code:"he",label:"Hebrew"},{code:"hi",label:"Hindi"},{code:"hr",label:"Croatian"},{code:"hu",label:"Hungarian"},{code:"id",label:"Indonesian"},{code:"is",label:"Icelandic"},{code:"it",label:"Italian"},{code:"ja",label:"Japanese"},{code:"ko",label:"Korean"},{code:"kz",label:"Kazakh"},{code:"lt",label:"Lithuanian"},{code:"lv",label:"Latvian"},{code:"mk",label:"Macedonian"},{code:"mn",label:"Mongolian"},{code:"ms",label:"Malay"},{code:"nb",label:"Norwegian Bokmål"},{code:"ne",label:"Nepali"},{code:"nl",label:"Dutch"},{code:"nn",label:"Norwegian Nynorsk"},{code:"pa",label:"Punjabi"},{code:"pl",label:"Polish"},{code:"pt",label:"Portuguese"},{code:"pt-BR",label:"Portuguese (Brazil)"},{code:"ro",label:"Romanian"},{code:"ru",label:"Russian"},{code:"si",label:"Sinhala"},{code:"sk",label:"Slovak"},{code:"sl",label:"Slovenian"},{code:"sq",label:"Albanian"},{code:"sr",label:"Serbian"},{code:"sr-Cyrl",label:"Serbian (Cyrillic)"},{code:"sv",label:"Swedish"},{code:"sw",label:"Swahili"},{code:"ta",label:"Tamil"},{code:"th",label:"Thai"},{code:"tr",label:"Turkish"},{code:"uk",label:"Ukrainian"},{code:"ur",label:"Urdu"},{code:"uz",label:"Uzbek"},{code:"vi",label:"Vietnamese"},{code:"zh",label:"Chinese"},{code:"zh-Hant",label:"Traditional Chinese"}],j_=new Set(["en-gb-oed","i-ami","i-bnn","i-default","i-enochian","i-hak","i-klingon","i-lux","i-mingo","i-navajo","i-pwn","i-tao","i-tay","i-tsu","sgn-be-fr","sgn-be-nl","sgn-ch-de","art-lojban","cel-gaulish","no-bok","no-nyn","zh-guoyu","zh-hakka","zh-min","zh-min-nan","zh-xiang"]),Bg=n=>{const e="Invalid locale format. Examples: en, pt-BR, zh-Hant, sr-Cyrl, x-private";if(!n)return"Enter a value";const t=n.trim();if(!t)return e;if(j_.has(t.toLowerCase()))return null;if(!/^[a-z0-9]+(-[a-z0-9]+)*$/i.test(t))return e;const r=t.split("-");if(r[0].toLowerCase()==="x"){if(r.length<2)return e;for(let l=1;l<r.length;l++)if(r[l].length<1||r[l].length>8)return e;return null}let i=0;const s=r[i];if(!/^[a-z]{2,3}$/i.test(s))return e;for(i+=1,i<r.length&&/^[a-z]{4}$/i.test(r[i])&&(i+=1),i<r.length&&/^([a-z]{2}|[0-9]{3})$/i.test(r[i])&&(i+=1);i<r.length&&/^([a-z0-9]{5,8}|[0-9][a-z0-9]{3})$/i.test(r[i]);)i+=1;for(;i<r.length&&/^[0-9a-wy-z]$/i.test(r[i]);){if(i+=1,i>=r.length||!/^[a-z0-9]{2,8}$/i.test(r[i]))return e;for(i+=1;i<r.length&&/^[a-z0-9]{2,8}$/i.test(r[i]);)i+=1}if(i<r.length&&r[i].toLowerCase()==="x"){if(i+=1,i>=r.length)return e;for(;i<r.length;){if(!/^[a-z0-9]+$/i.test(r[i]))return e;i+=1}}if(i!==r.length)return e;const a=r.findIndex(l=>l.toLowerCase()==="x"),o=["english","french","spanish","german","italian","chinese","japanese","korean","russian","arabic","united","states","kingdom","traditional","simplified"];for(let l=0;l<r.length;l++){const c=r[l];if(!["i","x","sgn","art","cel","no","zh"].includes(c.toLowerCase())&&!(a!==-1&&l>a)&&(c.length>16||o.includes(c.toLowerCase())))return e}return null},B_=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,errors:o,handleEditingChange:l}=Ot({onValidate:()=>{const p=Bg(c);return p?{publicationLanguage:p}:{}}}),[c]=Te(e,["locale"]),u=Y.useMemo(()=>__.map(g=>({value:g.code,label:`${g.label} (${g.code})`})),[]),f=p=>{a("locale",p),t||l(!0)},h=d.jsxs(d.Fragment,{children:["Default: English (",d.jsx("strong",{children:"en"}),"); find out more about",d.jsx("a",{className:"text-green-400",href:"https://ghost.org/docs/faq/translation/",rel:"noopener noreferrer",target:"_blank",children:" using Ghost in other languages"})]});return d.jsx(Se,{description:"Set the language/locale which is used on your site",isEditing:t,keywords:n,navid:"publication-language",saveState:r,testId:"publication-language",title:"Publication Language",hideEditButton:!0,onCancel:s,onEditingChange:l,onSave:i,children:d.jsx(Ye,{columns:1,children:d.jsx(HM,{defaultListValue:"en",error:!!o.publicationLanguage,hint:o.publicationLanguage||h,options:u,otherHint:"Enter a custom locale code.",otherPlaceholder:"e.g. pt-BR, sr-Cyrl, en",selectedValue:c,testId:"locale-select",title:"Site language",validate:Bg,isSearchable:!0,onSelect:f})})})},$_=Ce(B_,"Publication language"),F_=ze({method:"POST",path:()=>"/images/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e.append("purpose","image"),e}}),pd=n=>n.images[0].url,H_=({title:n,description:e,icon:t,url:r})=>{const i=r?.replace(/\/$/,""),s=i?.replace(/^https?:\/\//,"").replace(/\/?$/,"");return d.jsx("div",{children:d.jsxs("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-2 md:-mx-7 md:-mb-7 md:px-7 md:pt-7 dark:bg-grey-950",children:[d.jsx("div",{className:"-mt-4 mb-2 text-xs uppercase text-grey-500 dark:text-grey-800",children:"Preview"}),d.jsxs("div",{className:"rounded-t-sm bg-white px-5 py-3 shadow-lg dark:bg-grey-975",children:[d.jsxs("div",{className:"mt-3 flex items-center",children:[d.jsx("div",{children:d.jsx(yD,{className:"mr-7 h-7"})}),d.jsx("div",{className:"grow",children:d.jsx("div",{className:"flex w-full items-center justify-end rounded-full bg-white p-3 px-4 shadow dark:bg-grey-900",children:d.jsx(ge,{className:"stroke-[2px] text-blue-600",name:"magnifying-glass",size:"sm"})})})]}),d.jsxs("div",{className:"mt-4 flex items-center gap-2 border-t border-grey-200 pt-4 dark:border-grey-900",children:[d.jsx("div",{className:"flex size-7 items-center justify-center rounded-full bg-grey-200 dark:bg-grey-700",style:{backgroundImage:t?`url(${t})`:"none",backgroundSize:"contain"}}),d.jsxs("div",{className:"flex flex-col text-sm",children:[d.jsx("span",{children:s}),d.jsx("span",{className:"-mt-0.5 inline-block text-xs text-grey-600",children:i})]})]}),d.jsxs("div",{className:"mt-1 flex flex-col",children:[d.jsx("span",{className:"text-lg text-[#1a0dab] dark:text-blue",children:n}),d.jsx("span",{className:"text-sm text-grey-900 dark:text-grey-700",children:e})]})]})]})})},V_=({keywords:n})=>{const{localSettings:e,saveState:t,siteData:r,focusRef:i,isEditing:s,handleSave:a,handleCancel:o,handleEditingChange:l,updateSetting:c}=Ot(),u=gt(),{mutateAsync:f}=F_(),h=qw(),[p,g,m,v,b,y,w,S,k,A]=Te(e,["meta_title","meta_description","title","description","og_title","og_description","og_image","twitter_title","twitter_description","twitter_image"]).map(Q=>Q||""),[C,E]=x.useState("metadata"),M=Q=>ce=>{c(Q,ce.target.value),s||l(!0)},R=Q=>async ce=>{try{const Ae=pd(await f({file:ce}));c(Q,Ae),s||l(!0)}catch(Ae){const Be=Ae;Be.response.status===415&&(Be.message="Unsupported file type"),u(Be)}},T=Q=>()=>{c(Q,""),s||l(!0)},N=M("meta_title"),P=M("meta_description"),L=M("og_title"),$=M("og_description"),q=R("og_image"),Z=T("og_image"),oe=M("twitter_title"),ee=M("twitter_description"),de=R("twitter_image"),ve=T("twitter_image"),K=d.jsxs(d.Fragment,{children:[d.jsxs(Ye,{className:"my-6 gap-3",children:[d.jsx(tt,{hint:"Recommended: 70 characters",inputRef:i,maxLength:300,placeholder:m,title:"Meta title",value:p,onChange:N}),d.jsx(tt,{hint:"Recommended: 156 characters",maxLength:500,placeholder:v,title:"Meta description",value:g,onChange:P})]}),d.jsx(H_,{description:g||v,icon:r?.icon,title:p||m,url:r?.url})]}),fe=d.jsxs("div",{className:"mt-6 md:mx-[52px]",children:[d.jsxs("div",{className:"mb-4 flex items-center gap-2",children:[d.jsx("div",{children:d.jsx(xD,{className:"size-10"})}),d.jsxs("div",{children:[d.jsx("div",{className:"mb-1 font-semibold leading-none text-grey-900 dark:text-grey-300",children:m}),d.jsx("div",{className:"leading-none text-grey-700",children:"2h"})]})]}),d.jsxs("div",{children:[d.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),d.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),d.jsxs(Ye,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[d.jsx(Uh,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"facebook-image",imageURL:w,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:w||"",handleSave:async Q=>{const ce=pd(await f({file:Q}));c("og_image",ce)}})},onDelete:Z,onUpload:q,children:"Upload Facebook image"}),d.jsxs("div",{className:"mt-5 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[d.jsx(tt,{maxLength:300,placeholder:m,title:"Facebook title",value:b,onChange:L}),d.jsx(tt,{maxLength:300,placeholder:v,title:"Facebook description",value:y,onChange:$})]})]})]})]}),re=d.jsxs("div",{className:"mt-6 flex flex-col gap-3 md:flex-row",children:[d.jsx("div",{className:"pt-1",children:d.jsx(wD,{className:"-mb-1 size-10"})}),d.jsxs("div",{className:"w-full md:mr-[52px]",children:[d.jsxs("div",{className:"mb-2",children:[d.jsx("span",{className:"mr-1 font-semibold text-grey-900 dark:text-grey-300",children:m}),d.jsx("span",{className:"text-grey-700",children:"· 2h"})]}),d.jsx("div",{className:"mb-2 h-3 w-full rounded bg-grey-200 dark:bg-grey-900"}),d.jsx("div",{className:"mb-4 h-3 w-3/5 rounded bg-grey-200 dark:bg-grey-900"}),d.jsxs(Ye,{className:"overflow-hidden rounded-md border border-grey-300 dark:border-grey-900",children:[d.jsx(Uh,{fileUploadClassName:"flex cursor-pointer items-center justify-center rounded rounded-b-none border border-grey-100 border-b-0 bg-grey-75 p-3 text-sm font-semibold text-grey-800 hover:text-black dark:border-grey-900",height:"300px",id:"twitter-image",imageURL:A,pintura:{isEnabled:h.isEnabled,openEditor:async()=>h.openEditor({image:A||"",handleSave:async Q=>{const ce=pd(await f({file:Q}));c("twitter_image",ce)}})},onDelete:ve,onUpload:de,children:"Upload X image"}),d.jsxs("div",{className:"mt-6 flex flex-col gap-x-6 gap-y-7 px-4 pb-7",children:[d.jsx(tt,{maxLength:300,placeholder:m,title:"X title",value:S,onChange:oe}),d.jsx(tt,{maxLength:300,placeholder:v,title:"X description",value:k,onChange:ee})]})]})]})]}),ue=[{id:"metadata",title:"Search",contents:K},{id:"twitter",title:"X card",contents:re},{id:"facebook",title:"Facebook card",contents:fe}];return d.jsx(Se,{description:"Extra content for search engines and social accounts",isEditing:s,keywords:n,navid:"metadata",saveState:t,testId:"seometa",title:"Meta data",hideEditButton:!0,onCancel:o,onEditingChange:l,onSave:a,children:d.jsx(Kn,{selectedTab:C,tabs:ue,testId:"seo-tabview",onTabChange:E})})},U_=Ce(V_,"SEO meta");var Ja={exports:{}},Xa={exports:{}},Qa={exports:{}},$g;function U(){return $g||($g=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){var s=typeof i=="string"||i instanceof String;if(!s){var a=t(i);throw i===null?a="null":a==="object"&&(a=i.constructor.name),new TypeError("Expected a string but received a ".concat(a))}}n.exports=e.default,n.exports.default=e.default})(Qa,Qa.exports)),Qa.exports}var Fg;function Oh(){return Fg||(Fg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s=Date.parse(s),isNaN(s)?null:new Date(s)}n.exports=e.default,n.exports.default=e.default})(Xa,Xa.exports)),Xa.exports}var eo={exports:{}},li={},Xe={},Hg;function wa(){if(Hg)return Xe;Hg=1,Object.defineProperty(Xe,"__esModule",{value:!0}),Xe.farsiLocales=Xe.englishLocales=Xe.dotDecimal=Xe.decimal=Xe.commaDecimal=Xe.bengaliLocales=Xe.arabicLocales=Xe.alphanumeric=Xe.alpha=void 0;for(var n=Xe.alpha={"en-US":/^[A-Z]+$/i,"az-AZ":/^[A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[А-Я]+$/i,"cs-CZ":/^[A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[A-ZÆØÅ]+$/i,"de-DE":/^[A-ZÄÖÜß]+$/i,"el-GR":/^[Α-ώ]+$/i,"es-ES":/^[A-ZÁÉÍÑÓÚÜ]+$/i,"fa-IR":/^[ابپتثجچحخدذرزژسشصضطظعغفقکگلمنوهی]+$/i,"fi-FI":/^[A-ZÅÄÖ]+$/i,"fr-FR":/^[A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"nb-NO":/^[A-ZÆØÅ]+$/i,"nl-NL":/^[A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[A-ZÆØÅ]+$/i,"hu-HU":/^[A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"pl-PL":/^[A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[А-ЯЁ]+$/i,"kk-KZ":/^[А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๐\s]+$/i,"tr-TR":/^[A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[А-ЩЬЮЯЄIЇҐі]+$/i,"vi-VN":/^[A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,"ko-KR":/^[ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,ar:/^[ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[א-ת]+$/,fa:/^['آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0961]+[\u0972-\u097F]*$/i,"si-LK":/^[\u0D80-\u0DFF]+$/},e=Xe.alphanumeric={"en-US":/^[0-9A-Z]+$/i,"az-AZ":/^[0-9A-VXYZÇƏĞİıÖŞÜ]+$/i,"bg-BG":/^[0-9А-Я]+$/i,"cs-CZ":/^[0-9A-ZÁČĎÉĚÍŇÓŘŠŤÚŮÝŽ]+$/i,"da-DK":/^[0-9A-ZÆØÅ]+$/i,"de-DE":/^[0-9A-ZÄÖÜß]+$/i,"el-GR":/^[0-9Α-ω]+$/i,"es-ES":/^[0-9A-ZÁÉÍÑÓÚÜ]+$/i,"fi-FI":/^[0-9A-ZÅÄÖ]+$/i,"fr-FR":/^[0-9A-ZÀÂÆÇÉÈÊËÏÎÔŒÙÛÜŸ]+$/i,"it-IT":/^[0-9A-ZÀÉÈÌÎÓÒÙ]+$/i,"ja-JP":/^[0-90-9ぁ-んァ-ヶヲ-゚一-龠ー・。、]+$/i,"hu-HU":/^[0-9A-ZÁÉÍÓÖŐÚÜŰ]+$/i,"nb-NO":/^[0-9A-ZÆØÅ]+$/i,"nl-NL":/^[0-9A-ZÁÉËÏÓÖÜÚ]+$/i,"nn-NO":/^[0-9A-ZÆØÅ]+$/i,"pl-PL":/^[0-9A-ZĄĆĘŚŁŃÓŻŹ]+$/i,"pt-PT":/^[0-9A-ZÃÁÀÂÄÇÉÊËÍÏÕÓÔÖÚÜ]+$/i,"ru-RU":/^[0-9А-ЯЁ]+$/i,"kk-KZ":/^[0-9А-ЯЁ\u04D8\u04B0\u0406\u04A2\u0492\u04AE\u049A\u04E8\u04BA]+$/i,"sl-SI":/^[0-9A-ZČĆĐŠŽ]+$/i,"sk-SK":/^[0-9A-ZÁČĎÉÍŇÓŠŤÚÝŽĹŔĽÄÔ]+$/i,"sr-RS@latin":/^[0-9A-ZČĆŽŠĐ]+$/i,"sr-RS":/^[0-9А-ЯЂЈЉЊЋЏ]+$/i,"sv-SE":/^[0-9A-ZÅÄÖ]+$/i,"th-TH":/^[ก-๙\s]+$/i,"tr-TR":/^[0-9A-ZÇĞİıÖŞÜ]+$/i,"uk-UA":/^[0-9А-ЩЬЮЯЄIЇҐі]+$/i,"ko-KR":/^[0-9ㄱ-ㅎㅏ-ㅣ가-힣]*$/,"ku-IQ":/^[٠١٢٣٤٥٦٧٨٩0-9ئابپتجچحخدرڕزژسشعغفڤقکگلڵمنوۆھەیێيطؤثآإأكضصةظذ]+$/i,"vi-VN":/^[0-9A-ZÀÁẠẢÃÂẦẤẬẨẪĂẰẮẶẲẴĐÈÉẸẺẼÊỀẾỆỂỄÌÍỊỈĨÒÓỌỎÕÔỒỐỘỔỖƠỜỚỢỞỠÙÚỤỦŨƯỪỨỰỬỮỲÝỴỶỸ]+$/i,ar:/^[٠١٢٣٤٥٦٧٨٩0-9ءآأؤإئابةتثجحخدذرزسشصضطظعغفقكلمنهوىيًٌٍَُِّْٰ]+$/,he:/^[0-9א-ת]+$/,fa:/^['0-9آاءأؤئبپتثجچحخدذرزژسشصضطظعغفقکگلمنوهةی۱۲۳۴۵۶۷۸۹۰']+$/i,bn:/^['ঀঁংঃঅআইঈউঊঋঌএঐওঔকখগঘঙচছজঝঞটঠডঢণতথদধনপফবভমযরলশষসহ়ঽািীুূৃৄেৈোৌ্ৎৗড়ঢ়য়ৠৡৢৣ০১২৩৪৫৬৭৮৯ৰৱ৲৳৴৵৶৷৸৹৺৻']+$/,eo:/^[0-9ABCĈD-GĜHĤIJĴK-PRSŜTUŬVZ]+$/i,"hi-IN":/^[\u0900-\u0963]+[\u0966-\u097F]*$/i,"si-LK":/^[0-9\u0D80-\u0DFF]+$/},t=Xe.decimal={"en-US":".",ar:"٫"},r=Xe.englishLocales=["AU","GB","HK","IN","NZ","ZA","ZM"],i,s=0;s<r.length;s++)i="en-".concat(r[s]),n[i]=n["en-US"],e[i]=e["en-US"],t[i]=t["en-US"];for(var a=Xe.arabicLocales=["AE","BH","DZ","EG","IQ","JO","KW","LB","LY","MA","QM","QA","SA","SD","SY","TN","YE"],o,l=0;l<a.length;l++)o="ar-".concat(a[l]),n[o]=n.ar,e[o]=e.ar,t[o]=t.ar;for(var c=Xe.farsiLocales=["IR","AF"],u,f=0;f<c.length;f++)u="fa-".concat(c[f]),e[u]=e.fa,t[u]=t.ar;for(var h=Xe.bengaliLocales=["BD","IN"],p,g=0;g<h.length;g++)p="bn-".concat(h[g]),n[p]=n.bn,e[p]=e.bn,t[p]=t["en-US"];for(var m=Xe.dotDecimal=["ar-EG","ar-LB","ar-LY"],v=Xe.commaDecimal=["bg-BG","cs-CZ","da-DK","de-DE","el-GR","en-ZM","eo","es-ES","fr-CA","fr-FR","id-ID","it-IT","ku-IQ","hi-IN","hu-HU","nb-NO","nn-NO","nl-NL","pl-PL","pt-PT","ru-RU","kk-KZ","si-LK","sl-SI","sr-RS@latin","sr-RS","sv-SE","tr-TR","uk-UA","vi-VN"],b=0;b<m.length;b++)t[m[b]]=t["en-US"];for(var y=0;y<v.length;y++)t[v[y]]=",";return n["fr-CA"]=n["fr-FR"],e["fr-CA"]=e["fr-FR"],n["pt-BR"]=n["pt-PT"],e["pt-BR"]=e["pt-PT"],t["pt-BR"]=t["pt-PT"],n["pl-Pl"]=n["pl-PL"],e["pl-Pl"]=e["pl-PL"],t["pl-Pl"]=t["pl-PL"],n["fa-AF"]=n.fa,Xe}var Vg;function Xw(){if(Vg)return li;Vg=1,Object.defineProperty(li,"__esModule",{value:!0}),li.default=r,li.locales=void 0;var n=t(U()),e=wa();function t(i){return i&&i.__esModule?i:{default:i}}function r(i,s){(0,n.default)(i),s=s||{};var a=new RegExp("^(?:[-+])?(?:[0-9]+)?(?:\\".concat(s.locale?e.decimal[s.locale]:".","[0-9]*)?(?:[eE][\\+\\-]?(?:[0-9]+))?$"));if(i===""||i==="."||i===","||i==="-"||i==="+")return!1;var o=parseFloat(i.replace(",","."));return a.test(i)&&(!s.hasOwnProperty("min")||o>=s.min)&&(!s.hasOwnProperty("max")||o<=s.max)&&(!s.hasOwnProperty("lt")||o<s.lt)&&(!s.hasOwnProperty("gt")||o>s.gt)}return li.locales=Object.keys(e.decimal),li}var Ug;function Qw(){return Ug||(Ug=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Xw());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s)?parseFloat(s):NaN}n.exports=e.default,n.exports.default=e.default})(eo,eo.exports)),eo.exports}var to={exports:{}},zg;function z_(){return zg||(zg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),parseInt(s,a||10)}n.exports=e.default,n.exports.default=e.default})(to,to.exports)),to.exports}var no={exports:{}},Wg;function W_(){return Wg||(Wg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),a?s==="1"||/^true$/i.test(s):s!=="0"&&!/^false$/i.test(s)&&s!==""}n.exports=e.default,n.exports.default=e.default})(no,no.exports)),no.exports}var ro={exports:{}},qg;function q_(){return qg||(qg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),s===a}n.exports=e.default,n.exports.default=e.default})(ro,ro.exports)),ro.exports}var io={exports:{}},so={exports:{}},Gg;function eS(){return Gg||(Gg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=r;function t(i){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(s){return typeof s}:function(s){return s&&typeof Symbol=="function"&&s.constructor===Symbol&&s!==Symbol.prototype?"symbol":typeof s},t(i)}function r(i){return t(i)==="object"&&i!==null?typeof i.toString=="function"?i=i.toString():i="[object Object]":(i===null||typeof i>"u"||isNaN(i)&&!i.length)&&(i=""),String(i)}n.exports=e.default,n.exports.default=e.default})(so,so.exports)),so.exports}var ao={exports:{}},Kg;function Ht(){return Kg||(Kg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=arguments.length>1?arguments[1]:void 0;for(var s in i)typeof r[s]>"u"&&(r[s]=i[s]);return r}n.exports=e.default,n.exports.default=e.default})(ao,ao.exports)),ao.exports}var Zg;function G_(){return Zg||(Zg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=s(U()),r=s(eS()),i=s(Ht());function s(l){return l&&l.__esModule?l:{default:l}}var a={ignoreCase:!1,minOccurrences:1};function o(l,c,u){return(0,t.default)(l),u=(0,i.default)(u,a),u.ignoreCase?l.toLowerCase().split((0,r.default)(c).toLowerCase()).length>u.minOccurrences:l.split((0,r.default)(c)).length>u.minOccurrences}n.exports=e.default,n.exports.default=e.default})(io,io.exports)),io.exports}var oo={exports:{}},Yg;function K_(){return Yg||(Yg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a,o){return(0,t.default)(s),Object.prototype.toString.call(a)!=="[object RegExp]"&&(a=new RegExp(a,o)),!!s.match(a)}n.exports=e.default,n.exports.default=e.default})(oo,oo.exports)),oo.exports}var lo={exports:{}},co={exports:{}},Jg;function tS(){return Jg||(Jg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}function i(a){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},i(a)}function s(a,o){(0,t.default)(a);var l,c;i(o)==="object"?(l=o.min||0,c=o.max):(l=arguments[1],c=arguments[2]);var u=encodeURI(a).split(/%..|./).length-1;return u>=l&&(typeof c>"u"||u<=c)}n.exports=e.default,n.exports.default=e.default})(co,co.exports)),co.exports}var uo={exports:{}},Xg;function Th(){return Xg||(Xg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(Ht());function i(o){return o&&o.__esModule?o:{default:o}}var s={require_tld:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_numeric_tld:!1,allow_wildcard:!1,ignore_max_length:!1};function a(o,l){(0,t.default)(o),l=(0,r.default)(l,s),l.allow_trailing_dot&&o[o.length-1]==="."&&(o=o.substring(0,o.length-1)),l.allow_wildcard===!0&&o.indexOf("*.")===0&&(o=o.substring(2));var c=o.split("."),u=c[c.length-1];return l.require_tld&&(c.length<2||!l.allow_numeric_tld&&!/^([a-z\u00A1-\u00A8\u00AA-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{2,}|xn[a-z0-9-]{2,})$/i.test(u)||/\s/.test(u))||!l.allow_numeric_tld&&/^\d+$/.test(u)?!1:c.every(function(f){return!(f.length>63&&!l.ignore_max_length||!/^[a-z_\u00a1-\uffff0-9-]+$/i.test(f)||/[\uff01-\uff5e]/.test(f)||/^-|-$/.test(f)||!l.allow_underscores&&/_/.test(f))})}n.exports=e.default,n.exports.default=e.default})(uo,uo.exports)),uo.exports}var fo={exports:{}},Qg;function bu(){return Qg||(Qg=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",s="(".concat(i,"[.]){3}").concat(i),a=new RegExp("^".concat(s,"$")),o="(?:[0-9a-fA-F]{1,4})",l=new RegExp("^("+"(?:".concat(o,":){7}(?:").concat(o,"|:)|")+"(?:".concat(o,":){6}(?:").concat(s,"|:").concat(o,"|:)|")+"(?:".concat(o,":){5}(?::").concat(s,"|(:").concat(o,"){1,2}|:)|")+"(?:".concat(o,":){4}(?:(:").concat(o,"){0,1}:").concat(s,"|(:").concat(o,"){1,3}|:)|")+"(?:".concat(o,":){3}(?:(:").concat(o,"){0,2}:").concat(s,"|(:").concat(o,"){1,4}|:)|")+"(?:".concat(o,":){2}(?:(:").concat(o,"){0,3}:").concat(s,"|(:").concat(o,"){1,5}|:)|")+"(?:".concat(o,":){1}(?:(:").concat(o,"){0,4}:").concat(s,"|(:").concat(o,"){1,6}|:)|")+"(?::((?::".concat(o,"){0,5}:").concat(s,"|(?::").concat(o,"){1,7}|:))")+")(%[0-9a-zA-Z-.:]{1,})?$");function c(u){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return(0,t.default)(u),f=String(f),f?f==="4"?a.test(u):f==="6"?l.test(u):!1:c(u,4)||c(u,6)}n.exports=e.default,n.exports.default=e.default})(fo,fo.exports)),fo.exports}var e0;function nS(){return e0||(e0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=o(U()),r=o(tS()),i=o(Th()),s=o(bu()),a=o(Ht());function o(y){return y&&y.__esModule?y:{default:y}}var l={allow_display_name:!1,allow_underscores:!1,require_display_name:!1,allow_utf8_local_part:!0,require_tld:!0,blacklisted_chars:"",ignore_max_length:!1,host_blacklist:[],host_whitelist:[]},c=/^([^\x00-\x1F\x7F-\x9F\cX]+)</i,u=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~]+$/i,f=/^[a-z\d]+$/,h=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f]))*$/i,p=/^[a-z\d!#\$%&'\*\+\-\/=\?\^_`{\|}~\u00A1-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+$/i,g=/^([\s\x01-\x08\x0b\x0c\x0e-\x1f\x7f\x21\x23-\x5b\x5d-\x7e\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]|(\\[\x01-\x09\x0b\x0c\x0d-\x7f\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))*$/i,m=254;function v(y){var w=y.replace(/^"(.+)"$/,"$1");if(!w.trim())return!1;var S=/[\.";<>]/.test(w);if(S){if(w===y)return!1;var k=w.split('"').length===w.split('\\"').length;if(!k)return!1}return!0}function b(y,w){if((0,t.default)(y),w=(0,a.default)(w,l),w.require_display_name||w.allow_display_name){var S=y.match(c);if(S){var k=S[1];if(y=y.replace(k,"").replace(/(^<|>$)/g,""),k.endsWith(" ")&&(k=k.slice(0,-1)),!v(k))return!1}else if(w.require_display_name)return!1}if(!w.ignore_max_length&&y.length>m)return!1;var A=y.split("@"),C=A.pop(),E=C.toLowerCase();if(w.host_blacklist.includes(E)||w.host_whitelist.length>0&&!w.host_whitelist.includes(E))return!1;var M=A.join("@");if(w.domain_specific_validation&&(E==="gmail.com"||E==="googlemail.com")){M=M.toLowerCase();var R=M.split("+")[0];if(!(0,r.default)(R.replace(/\./g,""),{min:6,max:30}))return!1;for(var T=R.split("."),N=0;N<T.length;N++)if(!f.test(T[N]))return!1}if(w.ignore_max_length===!1&&(!(0,r.default)(M,{max:64})||!(0,r.default)(C,{max:254})))return!1;if(!(0,i.default)(C,{require_tld:w.require_tld,ignore_max_length:w.ignore_max_length,allow_underscores:w.allow_underscores})){if(!w.allow_ip_domain)return!1;if(!(0,s.default)(C)){if(!C.startsWith("[")||!C.endsWith("]"))return!1;var P=C.slice(1,-1);if(P.length===0||!(0,s.default)(P))return!1}}if(M[0]==='"')return M=M.slice(1,M.length-1),w.allow_utf8_local_part?g.test(M):h.test(M);for(var L=w.allow_utf8_local_part?p:u,$=M.split("."),q=0;q<$.length;q++)if(!L.test($[q]))return!1;return!(w.blacklisted_chars&&M.search(new RegExp("[".concat(w.blacklisted_chars,"]+"),"g"))!==-1)}n.exports=e.default,n.exports.default=e.default})(lo,lo.exports)),lo.exports}var ho={exports:{}},t0;function Z_(){return t0||(t0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=b;var t=a(U()),r=a(Th()),i=a(bu()),s=a(Ht());function a(y){return y&&y.__esModule?y:{default:y}}function o(y,w){return h(y)||f(y,w)||c(y,w)||l()}function l(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
27
27
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function c(y,w){if(y){if(typeof y=="string")return u(y,w);var S=Object.prototype.toString.call(y).slice(8,-1);if(S==="Object"&&y.constructor&&(S=y.constructor.name),S==="Map"||S==="Set")return Array.from(y);if(S==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(S))return u(y,w)}}function u(y,w){(w==null||w>y.length)&&(w=y.length);for(var S=0,k=new Array(w);S<w;S++)k[S]=y[S];return k}function f(y,w){var S=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(S!=null){var k,A,C,E,M=[],R=!0,T=!1;try{if(C=(S=S.call(y)).next,w!==0)for(;!(R=(k=C.call(S)).done)&&(M.push(k.value),M.length!==w);R=!0);}catch(N){T=!0,A=N}finally{try{if(!R&&S.return!=null&&(E=S.return(),Object(E)!==E))return}finally{if(T)throw A}}return M}}function h(y){if(Array.isArray(y))return y}var p={protocols:["http","https","ftp"],require_tld:!0,require_protocol:!1,require_host:!0,require_port:!1,require_valid_protocol:!0,allow_underscores:!1,allow_trailing_dot:!1,allow_protocol_relative_urls:!1,allow_fragments:!0,allow_query_components:!0,validate_length:!0},g=/^\[([^\]]+)\](?::([0-9]+))?$/;function m(y){return Object.prototype.toString.call(y)==="[object RegExp]"}function v(y,w){for(var S=0;S<w.length;S++){var k=w[S];if(y===k||m(k)&&k.test(y))return!0}return!1}function b(y,w){if((0,t.default)(y),!y||/[\s<>]/.test(y)||y.indexOf("mailto:")===0||(w=(0,s.default)(w,p),w.validate_length&&y.length>=2083)||!w.allow_fragments&&y.includes("#")||!w.allow_query_components&&(y.includes("?")||y.includes("&")))return!1;var S,k,A,C,E,M,R,T;if(R=y.split("#"),y=R.shift(),R=y.split("?"),y=R.shift(),R=y.split("://"),R.length>1){if(S=R.shift().toLowerCase(),w.require_valid_protocol&&w.protocols.indexOf(S)===-1)return!1}else{if(w.require_protocol)return!1;if(y.slice(0,2)==="//"){if(!w.allow_protocol_relative_urls)return!1;R[0]=y.slice(2)}}if(y=R.join("://"),y==="")return!1;if(R=y.split("/"),y=R.shift(),y===""&&!w.require_host)return!0;if(R=y.split("@"),R.length>1){if(w.disallow_auth||R[0]===""||(k=R.shift(),k.indexOf(":")>=0&&k.split(":").length>2))return!1;var N=k.split(":"),P=o(N,2),L=P[0],$=P[1];if(L===""&&$==="")return!1}C=R.join("@"),M=null,T=null;var q=C.match(g);if(q?(A="",T=q[1],M=q[2]||null):(R=C.split(":"),A=R.shift(),R.length&&(M=R.join(":"))),M!==null&&M.length>0){if(E=parseInt(M,10),!/^[0-9]+$/.test(M)||E<=0||E>65535)return!1}else if(w.require_port)return!1;return w.host_whitelist?v(A,w.host_whitelist):A===""&&!w.require_host?!0:!(!(0,i.default)(A)&&!(0,r.default)(A,w)&&(!T||!(0,i.default)(T,6))||(A=A||T,w.host_blacklist&&v(A,w.host_blacklist)))}n.exports=e.default,n.exports.default=e.default})(ho,ho.exports)),ho.exports}var po={exports:{}},n0;function Y_(){return n0||(n0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=r(U());function r(f){return f&&f.__esModule?f:{default:f}}var i=/^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){4}([0-9a-fA-F]{2})$/,s=/^([0-9a-fA-F]){12}$/,a=/^([0-9a-fA-F]{4}\.){2}([0-9a-fA-F]{4})$/,o=/^(?:[0-9a-fA-F]{2}([-:\s]))([0-9a-fA-F]{2}\1){6}([0-9a-fA-F]{2})$/,l=/^([0-9a-fA-F]){16}$/,c=/^([0-9a-fA-F]{4}\.){3}([0-9a-fA-F]{4})$/;function u(f,h){return(0,t.default)(f),h!=null&&h.eui&&(h.eui=String(h.eui)),h!=null&&h.no_colons||h!=null&&h.no_separators?h.eui==="48"?s.test(f):h.eui==="64"?l.test(f):s.test(f)||l.test(f):h?.eui==="48"?i.test(f)||a.test(f):h?.eui==="64"?o.test(f)||c.test(f):u(f,{eui:"48"})||u(f,{eui:"64"})}n.exports=e.default,n.exports.default=e.default})(po,po.exports)),po.exports}var mo={exports:{}},r0;function J_(){return r0||(r0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=i(U()),r=i(bu());function i(c){return c&&c.__esModule?c:{default:c}}var s=/^\d{1,3}$/,a=32,o=128;function l(c){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";(0,t.default)(c);var f=c.split("/");if(f.length!==2||!s.test(f[1])||f[1].length>1&&f[1].startsWith("0"))return!1;var h=(0,r.default)(f[0],u);if(!h)return!1;var p=null;switch(String(u)){case"4":p=a;break;case"6":p=o;break;default:p=(0,r.default)(f[0],"6")?o:a}return f[1]<=p&&f[1]>=0}n.exports=e.default,n.exports.default=e.default})(mo,mo.exports)),mo.exports}var go={exports:{}},i0;function rS(){return i0||(i0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=g;var t=r(Ht());function r(m){return m&&m.__esModule?m:{default:m}}function i(m,v){return o(m)||a(m,v)||c(m,v)||s()}function s(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
28
28
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function a(m,v){var b=m==null?null:typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(b!=null){var y,w,S,k,A=[],C=!0,E=!1;try{if(S=(b=b.call(m)).next,v!==0)for(;!(C=(y=S.call(b)).done)&&(A.push(y.value),A.length!==v);C=!0);}catch(M){E=!0,w=M}finally{try{if(!C&&b.return!=null&&(k=b.return(),Object(k)!==k))return}finally{if(E)throw w}}return A}}function o(m){if(Array.isArray(m))return m}function l(m,v){var b=typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(!b){if(Array.isArray(m)||(b=c(m))||v){b&&(m=b);var y=0,w=function(){};return{s:w,n:function(){return y>=m.length?{done:!0}:{done:!1,value:m[y++]}},e:function(E){throw E},f:w}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
29
29
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var S=!0,k=!1,A;return{s:function(){b=b.call(m)},n:function(){var E=b.next();return S=E.done,E},e:function(E){k=!0,A=E},f:function(){try{!S&&b.return!=null&&b.return()}finally{if(k)throw A}}}}function c(m,v){if(m){if(typeof m=="string")return u(m,v);var b=Object.prototype.toString.call(m).slice(8,-1);if(b==="Object"&&m.constructor&&(b=m.constructor.name),b==="Map"||b==="Set")return Array.from(m);if(b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b))return u(m,v)}}function u(m,v){(v==null||v>m.length)&&(v=m.length);for(var b=0,y=new Array(v);b<v;b++)y[b]=m[b];return y}var f={format:"YYYY/MM/DD",delimiters:["/","-"],strictMode:!1};function h(m){return/(^(y{4}|y{2})[.\/-](m{1,2})[.\/-](d{1,2})$)|(^(m{1,2})[.\/-](d{1,2})[.\/-]((y{4}|y{2})$))|(^(d{1,2})[.\/-](m{1,2})[.\/-]((y{4}|y{2})$))/gi.test(m)}function p(m,v){for(var b=[],y=Math.min(m.length,v.length),w=0;w<y;w++)b.push([m[w],v[w]]);return b}function g(m,v){if(typeof v=="string"?v=(0,t.default)({format:v},f):v=(0,t.default)(v,f),typeof m=="string"&&h(v.format)){var b=v.delimiters.find(function($){return v.format.indexOf($)!==-1}),y=v.strictMode?b:v.delimiters.find(function($){return m.indexOf($)!==-1}),w=p(m.split(y),v.format.toLowerCase().split(b)),S={},k=l(w),A;try{for(k.s();!(A=k.n()).done;){var C=i(A.value,2),E=C[0],M=C[1];if(E.length!==M.length)return!1;S[M.charAt(0)]=E}}catch($){k.e($)}finally{k.f()}var R=S.y;if(R.startsWith("-"))return!1;if(S.y.length===2){var T=parseInt(S.y,10);if(isNaN(T))return!1;var N=new Date().getFullYear()%100;T<N?R="20".concat(S.y):R="19".concat(S.y)}var P=S.m;S.m.length===1&&(P="0".concat(S.m));var L=S.d;return S.d.length===1&&(L="0".concat(S.d)),new Date("".concat(R,"-").concat(P,"-").concat(L,"T00:00:00.000Z")).getUTCDate()===+S.d}return v.strictMode?!1:Object.prototype.toString.call(m)==="[object Date]"&&isFinite(m)}n.exports=e.default,n.exports.default=e.default})(go,go.exports)),go.exports}var vo={exports:{}},s0;function X_(){return s0||(s0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(Ht());function r(o){return o&&o.__esModule?o:{default:o}}var i={hourFormat:"hour24",mode:"default"},s={hour24:{default:/^([01]?[0-9]|2[0-3]):([0-5][0-9])$/,withSeconds:/^([01]?[0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])$/},hour12:{default:/^(0?[1-9]|1[0-2]):([0-5][0-9]) (A|P)M$/,withSeconds:/^(0?[1-9]|1[0-2]):([0-5][0-9]):([0-5][0-9]) (A|P)M$/}};function a(o,l){return l=(0,t.default)(l,i),typeof o!="string"?!1:s[l.hourFormat][l.mode].test(o)}n.exports=e.default,n.exports.default=e.default})(vo,vo.exports)),vo.exports}var bo={exports:{}},a0;function Q_(){return a0||(a0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i={loose:!1},s=["true","false","1","0"],a=[].concat(s,["yes","no"]);function o(l){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:i;return(0,t.default)(l),c.loose?a.includes(l.toLowerCase()):s.includes(l)}n.exports=e.default,n.exports.default=e.default})(bo,bo.exports)),bo.exports}var xo={exports:{}},o0;function e5(){return o0||(o0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=y;var t=r(U());function r(w){return w&&w.__esModule?w:{default:w}}var i="([A-Za-z]{3}(-[A-Za-z]{3}){0,2})",s="(([a-zA-Z]{2,3}(-".concat(i,")?)|([a-zA-Z]{5,8}))"),a="([A-Za-z]{4})",o="([A-Za-z]{2}|\\d{3})",l="([A-Za-z0-9]{5,8}|(\\d[A-Z-a-z0-9]{3}))",c="(\\d|[A-W]|[Y-Z]|[a-w]|[y-z])",u="(".concat(c,"(-[A-Za-z0-9]{2,8})+)"),f="(x(-[A-Za-z0-9]{1,8})+)",h="((en-GB-oed)|(i-ami)|(i-bnn)|(i-default)|(i-enochian)|(i-hak)|(i-klingon)|(i-lux)|(i-mingo)|(i-navajo)|(i-pwn)|(i-tao)|(i-tay)|(i-tsu)|(sgn-BE-FR)|(sgn-BE-NL)|(sgn-CH-DE))",p="((art-lojban)|(cel-gaulish)|(no-bok)|(no-nyn)|(zh-guoyu)|(zh-hakka)|(zh-min)|(zh-min-nan)|(zh-xiang))",g="(".concat(h,"|").concat(p,")"),m="(-|_)",v="".concat(s,"(").concat(m).concat(a,")?(").concat(m).concat(o,")?(").concat(m).concat(l,")*(").concat(m).concat(u,")*(").concat(m).concat(f,")?"),b=new RegExp("(^".concat(f,"$)|(^").concat(g,"$)|(^").concat(v,"$)"));function y(w){return(0,t.default)(w),b.test(w)}n.exports=e.default,n.exports.default=e.default})(xo,xo.exports)),xo.exports}var yo={exports:{}},l0;function t5(){return l0||(l0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^(?!(1[3-9])|(20)|(3[3-9])|(4[0-9])|(5[0-9])|(60)|(7[3-9])|(8[1-9])|(9[0-2])|(9[3-9]))[0-9]{9}$/;function s(a){if((0,t.default)(a),!i.test(a))return!1;for(var o=0,l=0;l<a.length;l++)l%3===0?o+=a[l]*3:l%3===1?o+=a[l]*7:o+=a[l]*1;return o%10===0}n.exports=e.default,n.exports.default=e.default})(yo,yo.exports)),yo.exports}var ci={},c0;function n5(){if(c0)return ci;c0=1,Object.defineProperty(ci,"__esModule",{value:!0}),ci.default=r,ci.locales=void 0;var n=t(U()),e=wa();function t(i){return i&&i.__esModule?i:{default:i}}function r(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"en-US",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};(0,n.default)(i);var o=i,l=a.ignore;if(l)if(l instanceof RegExp)o=o.replace(l,"");else if(typeof l=="string")o=o.replace(new RegExp("[".concat(l.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g,"\\$&"),"]"),"g"),"");else throw new Error("ignore should be instance of a String or RegExp");if(s in e.alpha)return e.alpha[s].test(o);throw new Error("Invalid locale '".concat(s,"'"))}return ci.locales=Object.keys(e.alpha),ci}var ui={},u0;function r5(){if(u0)return ui;u0=1,Object.defineProperty(ui,"__esModule",{value:!0}),ui.default=r,ui.locales=void 0;var n=t(U()),e=wa();function t(i){return i&&i.__esModule?i:{default:i}}function r(i){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"en-US",a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};(0,n.default)(i);var o=i,l=a.ignore;if(l)if(l instanceof RegExp)o=o.replace(l,"");else if(typeof l=="string")o=o.replace(new RegExp("[".concat(l.replace(/[-[\]{}()*+?.,\\^$|#\\s]/g,"\\$&"),"]"),"g"),"");else throw new Error("ignore should be instance of a String or RegExp");if(s in e.alphanumeric)return e.alphanumeric[s].test(o);throw new Error("Invalid locale '".concat(s,"'"))}return ui.locales=Object.keys(e.alphanumeric),ui}var wo={exports:{}},d0;function i5(){return d0||(d0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=wa();function i(o){return o&&o.__esModule?o:{default:o}}var s=/^[0-9]+$/;function a(o,l){return(0,t.default)(o),l&&l.no_symbols?s.test(o):new RegExp("^[+-]?([0-9]*[".concat((l||{}).locale?r.decimal[l.locale]:".","])?[0-9]+$")).test(o)}n.exports=e.default,n.exports.default=e.default})(wo,wo.exports)),wo.exports}var So={exports:{}},f0;function s5(){return f0||(f0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i={AM:/^[A-Z]{2}\d{7}$/,AR:/^[A-Z]{3}\d{6}$/,AT:/^[A-Z]\d{7}$/,AU:/^[A-Z]\d{7}$/,AZ:/^[A-Z]{1}\d{8}$/,BE:/^[A-Z]{2}\d{6}$/,BG:/^\d{9}$/,BR:/^[A-Z]{2}\d{6}$/,BY:/^[A-Z]{2}\d{7}$/,CA:/^[A-Z]{2}\d{6}$/,CH:/^[A-Z]\d{7}$/,CN:/^G\d{8}$|^E(?![IO])[A-Z0-9]\d{7}$/,CY:/^[A-Z](\d{6}|\d{8})$/,CZ:/^\d{8}$/,DE:/^[CFGHJKLMNPRTVWXYZ0-9]{9}$/,DK:/^\d{9}$/,DZ:/^\d{9}$/,EE:/^([A-Z]\d{7}|[A-Z]{2}\d{7})$/,ES:/^[A-Z0-9]{2}([A-Z0-9]?)\d{6}$/,FI:/^[A-Z]{2}\d{7}$/,FR:/^\d{2}[A-Z]{2}\d{5}$/,GB:/^\d{9}$/,GR:/^[A-Z]{2}\d{7}$/,HR:/^\d{9}$/,HU:/^[A-Z]{2}(\d{6}|\d{7})$/,IE:/^[A-Z0-9]{2}\d{7}$/,IN:/^[A-Z]{1}-?\d{7}$/,ID:/^[A-C]\d{7}$/,IR:/^[A-Z]\d{8}$/,IS:/^(A)\d{7}$/,IT:/^[A-Z0-9]{2}\d{7}$/,JM:/^[Aa]\d{7}$/,JP:/^[A-Z]{2}\d{7}$/,KR:/^[MS]\d{8}$/,KZ:/^[a-zA-Z]\d{7}$/,LI:/^[a-zA-Z]\d{5}$/,LT:/^[A-Z0-9]{8}$/,LU:/^[A-Z0-9]{8}$/,LV:/^[A-Z0-9]{2}\d{7}$/,LY:/^[A-Z0-9]{8}$/,MT:/^\d{7}$/,MZ:/^([A-Z]{2}\d{7})|(\d{2}[A-Z]{2}\d{5})$/,MY:/^[AHK]\d{8}$/,MX:/^\d{10,11}$/,NL:/^[A-Z]{2}[A-Z0-9]{6}\d$/,NZ:/^([Ll]([Aa]|[Dd]|[Ff]|[Hh])|[Ee]([Aa]|[Pp])|[Nn])\d{6}$/,PH:/^([A-Z](\d{6}|\d{7}[A-Z]))|([A-Z]{2}(\d{6}|\d{7}))$/,PK:/^[A-Z]{2}\d{7}$/,PL:/^[A-Z]{2}\d{7}$/,PT:/^[A-Z]\d{6}$/,RO:/^\d{8,9}$/,RU:/^\d{9}$/,SE:/^\d{8}$/,SL:/^(P)[A-Z]\d{7}$/,SK:/^[0-9A-Z]\d{7}$/,TH:/^[A-Z]{1,2}\d{6,7}$/,TR:/^[A-Z]\d{8}$/,UA:/^[A-Z]{2}\d{6}$/,US:/^\d{9}$/,ZA:/^[TAMD]\d{8}$/};function s(a,o){(0,t.default)(a);var l=a.replace(/\s/g,"").toUpperCase();return o.toUpperCase()in i&&i[o].test(l)}n.exports=e.default,n.exports.default=e.default})(So,So.exports)),So.exports}var ko={exports:{}},Co={exports:{}},h0;function Nh(){return h0||(h0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^(?:[-+]?(?:0|[1-9][0-9]*))$/,s=/^[-+]?[0-9]+$/;function a(o,l){(0,t.default)(o),l=l||{};var c=l.allow_leading_zeroes===!1?i:s,u=!l.hasOwnProperty("min")||o>=l.min,f=!l.hasOwnProperty("max")||o<=l.max,h=!l.hasOwnProperty("lt")||o<l.lt,p=!l.hasOwnProperty("gt")||o>l.gt;return c.test(o)&&u&&f&&h&&p}n.exports=e.default,n.exports.default=e.default})(Co,Co.exports)),Co.exports}var p0;function a5(){return p0||(p0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Nh());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s,{allow_leading_zeroes:!1,min:0,max:65535})}n.exports=e.default,n.exports.default=e.default})(ko,ko.exports)),ko.exports}var Ao={exports:{}},m0;function o5(){return m0||(m0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s===s.toLowerCase()}n.exports=e.default,n.exports.default=e.default})(Ao,Ao.exports)),Ao.exports}var Mo={exports:{}},g0;function l5(){return g0||(g0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s===s.toUpperCase()}n.exports=e.default,n.exports.default=e.default})(Mo,Mo.exports)),Mo.exports}var Io={exports:{}},v0;function c5(){return v0||(v0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^[0-9]{15}$/,s=/^\d{2}-\d{6}-\d{6}-\d{1}$/;function a(o,l){(0,t.default)(o),l=l||{};var c=i;if(l.allow_hyphens&&(c=s),!c.test(o))return!1;o=o.replace(/-/g,"");for(var u=0,f=2,h=14,p=0;p<h;p++){var g=o.substring(h-p-1,h-p),m=parseInt(g,10)*f;m>=10?u+=m%10+1:u+=m,f===1?f+=1:f-=1}var v=(10-u%10)%10;return v===parseInt(o.substring(14,15),10)}n.exports=e.default,n.exports.default=e.default})(Io,Io.exports)),Io.exports}var Eo={exports:{}},b0;function u5(){return b0||(b0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[\x00-\x7F]+$/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(Eo,Eo.exports)),Eo.exports}var di={},x0;function iS(){if(x0)return di;x0=1,Object.defineProperty(di,"__esModule",{value:!0}),di.default=r,di.fullWidth=void 0;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=di.fullWidth=/[^\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;function r(i){return(0,n.default)(i),t.test(i)}return di}var fi={},y0;function sS(){if(y0)return fi;y0=1,Object.defineProperty(fi,"__esModule",{value:!0}),fi.default=r,fi.halfWidth=void 0;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=fi.halfWidth=/[\u0020-\u007E\uFF61-\uFF9F\uFFA0-\uFFDC\uFFE8-\uFFEE0-9a-zA-Z]/;function r(i){return(0,n.default)(i),t.test(i)}return fi}var Do={exports:{}},w0;function d5(){return w0||(w0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=s(U()),r=iS(),i=sS();function s(o){return o&&o.__esModule?o:{default:o}}function a(o){return(0,t.default)(o),r.fullWidth.test(o)&&i.halfWidth.test(o)}n.exports=e.default,n.exports.default=e.default})(Do,Do.exports)),Do.exports}var Ro={exports:{}},S0;function f5(){return S0||(S0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/[^\x00-\x7F]/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(Ro,Ro.exports)),Ro.exports}var Oo={exports:{}},To={exports:{}},k0;function h5(){return k0||(k0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=t;function t(r,i){var s=r.join("");return new RegExp(s,i)}n.exports=e.default,n.exports.default=e.default})(To,To.exports)),To.exports}var C0;function p5(){return C0||(C0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(h5());function i(o){return o&&o.__esModule?o:{default:o}}var s=(0,r.default)(["^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)","(?:-((?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*))*))","?(?:\\+([0-9a-z-]+(?:\\.[0-9a-z-]+)*))?$"],"i");function a(o){return(0,t.default)(o),s.test(o)}n.exports=e.default,n.exports.default=e.default})(Oo,Oo.exports)),Oo.exports}var No={exports:{}},A0;function m5(){return A0||(A0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/[\uD800-\uDBFF][\uDC00-\uDFFF]/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(No,No.exports)),No.exports}var Po={exports:{}},Lo={exports:{}},M0;function g5(){return M0||(M0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t=function(i,s){return i.some(function(a){return s===a})};e.default=t,n.exports=e.default,n.exports.default=e.default})(Lo,Lo.exports)),Lo.exports}var I0;function v5(){return I0||(I0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=a(Ht()),r=a(U()),i=a(g5()),s=wa();function a(f){return f&&f.__esModule?f:{default:f}}function o(f){var h=new RegExp("^[-+]?([0-9]+)?(\\".concat(s.decimal[f.locale],"[0-9]{").concat(f.decimal_digits,"})").concat(f.force_decimal?"":"?","$"));return h}var l={force_decimal:!1,decimal_digits:"1,",locale:"en-US"},c=["","-","+"];function u(f,h){if((0,r.default)(f),h=(0,t.default)(h,l),h.locale in s.decimal)return!(0,i.default)(c,f.replace(/ /g,""))&&o(h).test(f);throw new Error("Invalid locale '".concat(h.locale,"'"))}n.exports=e.default,n.exports.default=e.default})(Po,Po.exports)),Po.exports}var _o={exports:{}},E0;function aS(){return E0||(E0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^(0x|0h)?[0-9A-F]+$/i;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(_o,_o.exports)),_o.exports}var jo={exports:{}},D0;function b5(){return D0||(D0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^(0o)?[0-7]+$/i;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(jo,jo.exports)),jo.exports}var Bo={exports:{}},R0;function x5(){return R0||(R0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(Qw());function i(a){return a&&a.__esModule?a:{default:a}}function s(a,o){return(0,t.default)(a),(0,r.default)(a)%parseInt(o,10)===0}n.exports=e.default,n.exports.default=e.default})(Bo,Bo.exports)),Bo.exports}var $o={exports:{}},O0;function y5(){return O0||(O0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^#?([0-9A-F]{3}|[0-9A-F]{4}|[0-9A-F]{6}|[0-9A-F]{8})$/i;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})($o,$o.exports)),$o.exports}var Fo={exports:{}},T0;function w5(){return T0||(T0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=r(U());function r(c){return c&&c.__esModule?c:{default:c}}var i=/^rgb\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){2}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\)$/,s=/^rgba\((([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5]),){3}(0?\.\d|1(\.0)?|0(\.0)?)\)$/,a=/^rgb\((([0-9]%|[1-9][0-9]%|100%),){2}([0-9]%|[1-9][0-9]%|100%)\)$/,o=/^rgba\((([0-9]%|[1-9][0-9]%|100%),){3}(0?\.\d|1(\.0)?|0(\.0)?)\)$/;function l(c){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return(0,t.default)(c),u?i.test(c)||s.test(c)||a.test(c)||o.test(c):i.test(c)||s.test(c)}n.exports=e.default,n.exports.default=e.default})(Fo,Fo.exports)),Fo.exports}var Ho={exports:{}},N0;function S5(){return N0||(N0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=r(U());function r(o){return o&&o.__esModule?o:{default:o}}var i=/^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(,(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}(,((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?))?\)$/i,s=/^hsla?\(((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?))(deg|grad|rad|turn)?(\s(\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%){2}\s?(\/\s((\+|\-)?([0-9]+(\.[0-9]+)?(e(\+|\-)?[0-9]+)?|\.[0-9]+(e(\+|\-)?[0-9]+)?)%?)\s?)?\)$/i;function a(o){(0,t.default)(o);var l=o.replace(/\s+/g," ").replace(/\s?(hsla?\(|\)|,)\s?/ig,"$1");return l.indexOf(",")!==-1?i.test(l):s.test(l)}n.exports=e.default,n.exports.default=e.default})(Ho,Ho.exports)),Ho.exports}var Vo={exports:{}},P0;function k5(){return P0||(P0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[A-Z]{2}[0-9A-Z]{3}\d{2}\d{5}$/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(Vo,Vo.exports)),Vo.exports}var hi={},L0;function C5(){if(L0)return hi;L0=1,Object.defineProperty(hi,"__esModule",{value:!0}),hi.default=a,hi.locales=void 0;var n=e(U());function e(o){return o&&o.__esModule?o:{default:o}}var t={AD:/^(AD[0-9]{2})\d{8}[A-Z0-9]{12}$/,AE:/^(AE[0-9]{2})\d{3}\d{16}$/,AL:/^(AL[0-9]{2})\d{8}[A-Z0-9]{16}$/,AT:/^(AT[0-9]{2})\d{16}$/,AZ:/^(AZ[0-9]{2})[A-Z0-9]{4}\d{20}$/,BA:/^(BA[0-9]{2})\d{16}$/,BE:/^(BE[0-9]{2})\d{12}$/,BG:/^(BG[0-9]{2})[A-Z]{4}\d{6}[A-Z0-9]{8}$/,BH:/^(BH[0-9]{2})[A-Z]{4}[A-Z0-9]{14}$/,BR:/^(BR[0-9]{2})\d{23}[A-Z]{1}[A-Z0-9]{1}$/,BY:/^(BY[0-9]{2})[A-Z0-9]{4}\d{20}$/,CH:/^(CH[0-9]{2})\d{5}[A-Z0-9]{12}$/,CR:/^(CR[0-9]{2})\d{18}$/,CY:/^(CY[0-9]{2})\d{8}[A-Z0-9]{16}$/,CZ:/^(CZ[0-9]{2})\d{20}$/,DE:/^(DE[0-9]{2})\d{18}$/,DK:/^(DK[0-9]{2})\d{14}$/,DO:/^(DO[0-9]{2})[A-Z]{4}\d{20}$/,DZ:/^(DZ\d{24})$/,EE:/^(EE[0-9]{2})\d{16}$/,EG:/^(EG[0-9]{2})\d{25}$/,ES:/^(ES[0-9]{2})\d{20}$/,FI:/^(FI[0-9]{2})\d{14}$/,FO:/^(FO[0-9]{2})\d{14}$/,FR:/^(FR[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/,GB:/^(GB[0-9]{2})[A-Z]{4}\d{14}$/,GE:/^(GE[0-9]{2})[A-Z0-9]{2}\d{16}$/,GI:/^(GI[0-9]{2})[A-Z]{4}[A-Z0-9]{15}$/,GL:/^(GL[0-9]{2})\d{14}$/,GR:/^(GR[0-9]{2})\d{7}[A-Z0-9]{16}$/,GT:/^(GT[0-9]{2})[A-Z0-9]{4}[A-Z0-9]{20}$/,HR:/^(HR[0-9]{2})\d{17}$/,HU:/^(HU[0-9]{2})\d{24}$/,IE:/^(IE[0-9]{2})[A-Z0-9]{4}\d{14}$/,IL:/^(IL[0-9]{2})\d{19}$/,IQ:/^(IQ[0-9]{2})[A-Z]{4}\d{15}$/,IR:/^(IR[0-9]{2})0\d{2}0\d{18}$/,IS:/^(IS[0-9]{2})\d{22}$/,IT:/^(IT[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/,JO:/^(JO[0-9]{2})[A-Z]{4}\d{22}$/,KW:/^(KW[0-9]{2})[A-Z]{4}[A-Z0-9]{22}$/,KZ:/^(KZ[0-9]{2})\d{3}[A-Z0-9]{13}$/,LB:/^(LB[0-9]{2})\d{4}[A-Z0-9]{20}$/,LC:/^(LC[0-9]{2})[A-Z]{4}[A-Z0-9]{24}$/,LI:/^(LI[0-9]{2})\d{5}[A-Z0-9]{12}$/,LT:/^(LT[0-9]{2})\d{16}$/,LU:/^(LU[0-9]{2})\d{3}[A-Z0-9]{13}$/,LV:/^(LV[0-9]{2})[A-Z]{4}[A-Z0-9]{13}$/,MA:/^(MA[0-9]{26})$/,MC:/^(MC[0-9]{2})\d{10}[A-Z0-9]{11}\d{2}$/,MD:/^(MD[0-9]{2})[A-Z0-9]{20}$/,ME:/^(ME[0-9]{2})\d{18}$/,MK:/^(MK[0-9]{2})\d{3}[A-Z0-9]{10}\d{2}$/,MR:/^(MR[0-9]{2})\d{23}$/,MT:/^(MT[0-9]{2})[A-Z]{4}\d{5}[A-Z0-9]{18}$/,MU:/^(MU[0-9]{2})[A-Z]{4}\d{19}[A-Z]{3}$/,MZ:/^(MZ[0-9]{2})\d{21}$/,NL:/^(NL[0-9]{2})[A-Z]{4}\d{10}$/,NO:/^(NO[0-9]{2})\d{11}$/,PK:/^(PK[0-9]{2})[A-Z0-9]{4}\d{16}$/,PL:/^(PL[0-9]{2})\d{24}$/,PS:/^(PS[0-9]{2})[A-Z0-9]{4}\d{21}$/,PT:/^(PT[0-9]{2})\d{21}$/,QA:/^(QA[0-9]{2})[A-Z]{4}[A-Z0-9]{21}$/,RO:/^(RO[0-9]{2})[A-Z]{4}[A-Z0-9]{16}$/,RS:/^(RS[0-9]{2})\d{18}$/,SA:/^(SA[0-9]{2})\d{2}[A-Z0-9]{18}$/,SC:/^(SC[0-9]{2})[A-Z]{4}\d{20}[A-Z]{3}$/,SE:/^(SE[0-9]{2})\d{20}$/,SI:/^(SI[0-9]{2})\d{15}$/,SK:/^(SK[0-9]{2})\d{20}$/,SM:/^(SM[0-9]{2})[A-Z]{1}\d{10}[A-Z0-9]{12}$/,SV:/^(SV[0-9]{2})[A-Z0-9]{4}\d{20}$/,TL:/^(TL[0-9]{2})\d{19}$/,TN:/^(TN[0-9]{2})\d{20}$/,TR:/^(TR[0-9]{2})\d{5}[A-Z0-9]{17}$/,UA:/^(UA[0-9]{2})\d{6}[A-Z0-9]{19}$/,VA:/^(VA[0-9]{2})\d{18}$/,VG:/^(VG[0-9]{2})[A-Z0-9]{4}\d{16}$/,XK:/^(XK[0-9]{2})\d{16}$/};function r(o){var l=o.filter(function(c){return!(c in t)});return!(l.length>0)}function i(o,l){var c=o.replace(/[\s\-]+/gi,"").toUpperCase(),u=c.slice(0,2).toUpperCase(),f=u in t;if(l.whitelist){if(!r(l.whitelist))return!1;var h=l.whitelist.includes(u);if(!h)return!1}if(l.blacklist){var p=l.blacklist.includes(u);if(p)return!1}return f&&t[u].test(c)}function s(o){var l=o.replace(/[^A-Z0-9]+/gi,"").toUpperCase(),c=l.slice(4)+l.slice(0,4),u=c.replace(/[A-Z]/g,function(h){return h.charCodeAt(0)-55}),f=u.match(/\d{1,7}/g).reduce(function(h,p){return Number(h+p)%97},"");return f===1}function a(o){var l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return(0,n.default)(o),i(o,l)&&s(o)}return hi.locales=Object.keys(t),hi}var Uo={exports:{}},pi={},_0;function oS(){if(_0)return pi;_0=1,Object.defineProperty(pi,"__esModule",{value:!0}),pi.CountryCodes=void 0,pi.default=r;var n=e(U());function e(i){return i&&i.__esModule?i:{default:i}}var t=new Set(["AD","AE","AF","AG","AI","AL","AM","AO","AQ","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BV","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GS","GT","GU","GW","GY","HK","HM","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PN","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TC","TD","TF","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","UM","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","YE","YT","ZA","ZM","ZW"]);function r(i){return(0,n.default)(i),t.has(i.toUpperCase())}return pi.CountryCodes=t,pi}var j0;function A5(){return j0||(j0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=oS();function i(o){return o&&o.__esModule?o:{default:o}}var s=/^[A-Za-z]{6}[A-Za-z0-9]{2}([A-Za-z0-9]{3})?$/;function a(o){(0,t.default)(o);var l=o.slice(4,6).toUpperCase();return!r.CountryCodes.has(l)&&l!=="XK"?!1:s.test(o)}n.exports=e.default,n.exports.default=e.default})(Uo,Uo.exports)),Uo.exports}var zo={exports:{}},B0;function M5(){return B0||(B0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[a-f0-9]{32}$/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(zo,zo.exports)),zo.exports}var Wo={exports:{}},$0;function I5(){return $0||($0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i={md5:32,md4:32,sha1:40,sha256:64,sha384:96,sha512:128,ripemd128:32,ripemd160:40,tiger128:32,tiger160:40,tiger192:48,crc32:8,crc32b:8};function s(a,o){(0,t.default)(a);var l=new RegExp("^[a-fA-F0-9]{".concat(i[o],"}$"));return l.test(a)}n.exports=e.default,n.exports.default=e.default})(Wo,Wo.exports)),Wo.exports}var qo={exports:{}},Go={exports:{}},F0;function lS(){return F0||(F0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=l;var t=i(U()),r=i(Ht());function i(c){return c&&c.__esModule?c:{default:c}}var s=/[^A-Z0-9+\/=]/i,a=/^[A-Z0-9_\-]*$/i,o={urlSafe:!1};function l(c,u){(0,t.default)(c),u=(0,r.default)(u,o);var f=c.length;if(u.urlSafe)return a.test(c);if(f%4!==0||s.test(c))return!1;var h=c.indexOf("=");return h===-1||h===f-1||h===f-2&&c[f-1]==="="}n.exports=e.default,n.exports.default=e.default})(Go,Go.exports)),Go.exports}var H0;function E5(){return H0||(H0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(lS());function i(a){return a&&a.__esModule?a:{default:a}}function s(a){(0,t.default)(a);var o=a.split("."),l=o.length;return l!==3?!1:o.reduce(function(c,u){return c&&(0,r.default)(u,{urlSafe:!0})},!0)}n.exports=e.default,n.exports.default=e.default})(qo,qo.exports)),qo.exports}var Ko={exports:{}},V0;function D5(){return V0||(V0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(Ht());function i(l){return l&&l.__esModule?l:{default:l}}function s(l){"@babel/helpers - typeof";return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(c){return typeof c}:function(c){return c&&typeof Symbol=="function"&&c.constructor===Symbol&&c!==Symbol.prototype?"symbol":typeof c},s(l)}var a={allow_primitives:!1};function o(l,c){(0,t.default)(l);try{c=(0,r.default)(c,a);var u=[];c.allow_primitives&&(u=[null,!1,!0]);var f=JSON.parse(l);return u.includes(f)||!!f&&s(f)==="object"}catch{}return!1}n.exports=e.default,n.exports.default=e.default})(Ko,Ko.exports)),Ko.exports}var Zo={exports:{}},U0;function R5(){return U0||(U0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(Ht());function i(o){return o&&o.__esModule?o:{default:o}}var s={ignore_whitespace:!1};function a(o,l){return(0,t.default)(o),l=(0,r.default)(l,s),(l.ignore_whitespace?o.trim().length:o.length)===0}n.exports=e.default,n.exports.default=e.default})(Zo,Zo.exports)),Zo.exports}var Yo={exports:{}},z0;function O5(){return z0||(z0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}function i(a){"@babel/helpers - typeof";return i=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(o){return typeof o}:function(o){return o&&typeof Symbol=="function"&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},i(a)}function s(a,o){(0,t.default)(a);var l,c;i(o)==="object"?(l=o.min||0,c=o.max):(l=arguments[1]||0,c=arguments[2]);var u=a.match(/(\uFE0F|\uFE0E)/g)||[],f=a.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g)||[],h=a.length-u.length-f.length;return h>=l&&(typeof c>"u"||h<=c)}n.exports=e.default,n.exports.default=e.default})(Yo,Yo.exports)),Yo.exports}var Jo={exports:{}},W0;function T5(){return W0||(W0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i={1:/^[0-9A-F]{8}-[0-9A-F]{4}-1[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,2:/^[0-9A-F]{8}-[0-9A-F]{4}-2[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,3:/^[0-9A-F]{8}-[0-9A-F]{4}-3[0-9A-F]{3}-[0-9A-F]{4}-[0-9A-F]{12}$/i,4:/^[0-9A-F]{8}-[0-9A-F]{4}-4[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,5:/^[0-9A-F]{8}-[0-9A-F]{4}-5[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,7:/^[0-9A-F]{8}-[0-9A-F]{4}-7[0-9A-F]{3}-[89AB][0-9A-F]{3}-[0-9A-F]{12}$/i,all:/^[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}$/i};function s(a,o){(0,t.default)(a);var l=i[[void 0,null].includes(o)?"all":o];return!!l&&l.test(a)}n.exports=e.default,n.exports.default=e.default})(Jo,Jo.exports)),Jo.exports}var Xo={exports:{}},q0;function N5(){return q0||(q0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(aS());function i(a){return a&&a.__esModule?a:{default:a}}function s(a){return(0,t.default)(a),(0,r.default)(a)&&a.length===24}n.exports=e.default,n.exports.default=e.default})(Xo,Xo.exports)),Xo.exports}var Qo={exports:{}},G0;function P5(){return G0||(G0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(Oh());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){var o=a?.comparisonDate||a||Date().toString(),l=(0,t.default)(o),c=(0,t.default)(s);return!!(c&&l&&c>l)}n.exports=e.default,n.exports.default=e.default})(Qo,Qo.exports)),Qo.exports}var el={exports:{}},K0;function L5(){return K0||(K0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(Oh());function i(a){return a&&a.__esModule?a:{default:a}}function s(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:String(new Date);(0,t.default)(a);var l=(0,r.default)(o),c=(0,r.default)(a);return!!(c&&l&&c<l)}n.exports=e.default,n.exports.default=e.default})(el,el.exports)),el.exports}var tl={exports:{}},Z0;function _5(){return Z0||(Z0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(eS());function i(o){return o&&o.__esModule?o:{default:o}}function s(o){"@babel/helpers - typeof";return s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(l){return typeof l}:function(l){return l&&typeof Symbol=="function"&&l.constructor===Symbol&&l!==Symbol.prototype?"symbol":typeof l},s(o)}function a(o,l){(0,t.default)(o);var c;if(Object.prototype.toString.call(l)==="[object Array]"){var u=[];for(c in l)({}).hasOwnProperty.call(l,c)&&(u[c]=(0,r.default)(l[c]));return u.indexOf(o)>=0}else{if(s(l)==="object")return l.hasOwnProperty(o);if(l&&typeof l.indexOf=="function")return l.indexOf(o)>=0}return!1}n.exports=e.default,n.exports.default=e.default})(tl,tl.exports)),tl.exports}var nl={exports:{}},Y0;function cS(){return Y0||(Y0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){(0,t.default)(s);for(var a=s.replace(/[- ]+/g,""),o=0,l,c,u,f=a.length-1;f>=0;f--)l=a.substring(f,f+1),c=parseInt(l,10),u?(c*=2,c>=10?o+=c%10+1:o+=c):o+=c,u=!u;return!!(o%10===0&&a)}n.exports=e.default,n.exports.default=e.default})(nl,nl.exports)),nl.exports}var rl={exports:{}},J0;function j5(){return J0||(J0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=i(U()),r=i(cS());function i(l){return l&&l.__esModule?l:{default:l}}var s={amex:/^3[47][0-9]{13}$/,dinersclub:/^3(?:0[0-5]|[68][0-9])[0-9]{11}$/,discover:/^6(?:011|5[0-9][0-9])[0-9]{12,15}$/,jcb:/^(?:2131|1800|35\d{3})\d{11}$/,mastercard:/^5[1-5][0-9]{2}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}$/,unionpay:/^(6[27][0-9]{14}|^(81[0-9]{14,17}))$/,visa:/^(?:4[0-9]{12})(?:[0-9]{3,6})?$/},a=(function(){var l=[];for(var c in s)s.hasOwnProperty(c)&&l.push(s[c]);return l})();function o(l){var c=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,t.default)(l);var u=c.provider,f=l.replace(/[- ]+/g,"");if(u&&u.toLowerCase()in s){if(!s[u.toLowerCase()].test(f))return!1}else{if(u&&!(u.toLowerCase()in s))throw new Error("".concat(u," is not a valid credit card provider."));if(!a.some(function(h){return h.test(f)}))return!1}return(0,r.default)(l)}n.exports=e.default,n.exports.default=e.default})(rl,rl.exports)),rl.exports}var il={exports:{}},X0;function B5(){return X0||(X0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=a;var t=i(U()),r=i(Nh());function i(o){return o&&o.__esModule?o:{default:o}}var s={PL:function(l){(0,t.default)(l);var c={1:1,2:3,3:7,4:9,5:1,6:3,7:7,8:9,9:1,10:3,11:0};if(l!=null&&l.length===11&&(0,r.default)(l,{allow_leading_zeroes:!0})){var u=l.split("").slice(0,-1),f=u.reduce(function(g,m,v){return g+Number(m)*c[v+1]},0),h=f%10,p=Number(l.charAt(l.length-1));if(h===0&&p===0||p===10-h)return!0}return!1},ES:function(l){(0,t.default)(l);var c=/^[0-9X-Z][0-9]{7}[TRWAGMYFPDXBNJZSQVHLCKE]$/,u={X:0,Y:1,Z:2},f=["T","R","W","A","G","M","Y","F","P","D","X","B","N","J","Z","S","Q","V","H","L","C","K","E"],h=l.trim().toUpperCase();if(!c.test(h))return!1;var p=h.slice(0,-1).replace(/[X,Y,Z]/g,function(g){return u[g]});return h.endsWith(f[p%23])},FI:function(l){if((0,t.default)(l),l.length!==11||!l.match(/^\d{6}[\-A\+]\d{3}[0-9ABCDEFHJKLMNPRSTUVWXY]{1}$/))return!1;var c="0123456789ABCDEFHJKLMNPRSTUVWXY",u=parseInt(l.slice(0,6),10)*1e3+parseInt(l.slice(7,10),10),f=u%31,h=c[f];return h===l.slice(10,11)},IN:function(l){var c=/^[1-9]\d{3}\s?\d{4}\s?\d{4}$/,u=[[0,1,2,3,4,5,6,7,8,9],[1,2,3,4,0,6,7,8,9,5],[2,3,4,0,1,7,8,9,5,6],[3,4,0,1,2,8,9,5,6,7],[4,0,1,2,3,9,5,6,7,8],[5,9,8,7,6,0,4,3,2,1],[6,5,9,8,7,1,0,4,3,2],[7,6,5,9,8,2,1,0,4,3],[8,7,6,5,9,3,2,1,0,4],[9,8,7,6,5,4,3,2,1,0]],f=[[0,1,2,3,4,5,6,7,8,9],[1,5,7,6,2,8,3,0,9,4],[5,8,0,3,7,9,6,1,4,2],[8,9,1,6,0,4,3,5,2,7],[9,4,5,3,1,2,6,8,7,0],[4,2,8,6,5,7,3,9,0,1],[2,7,9,3,8,0,6,4,1,5],[7,0,4,6,9,1,3,2,5,8]],h=l.trim();if(!c.test(h))return!1;var p=0,g=h.replace(/\s/g,"").split("").map(Number).reverse();return g.forEach(function(m,v){p=u[p][f[v%8][m]]}),p===0},IR:function(l){if(!l.match(/^\d{10}$/)||(l="0000".concat(l).slice(l.length-6),parseInt(l.slice(3,9),10)===0))return!1;for(var c=parseInt(l.slice(9,10),10),u=0,f=0;f<9;f++)u+=parseInt(l.slice(f,f+1),10)*(10-f);return u%=11,u<2&&c===u||u>=2&&c===11-u},IT:function(l){return l.length!==9||l==="CA00000AA"?!1:l.search(/C[A-Z]\d{5}[A-Z]{2}/i)>-1},NO:function(l){var c=l.trim();if(isNaN(Number(c))||c.length!==11||c==="00000000000")return!1;var u=c.split("").map(Number),f=(11-(3*u[0]+7*u[1]+6*u[2]+1*u[3]+8*u[4]+9*u[5]+4*u[6]+5*u[7]+2*u[8])%11)%11,h=(11-(5*u[0]+4*u[1]+3*u[2]+2*u[3]+7*u[4]+6*u[5]+5*u[6]+4*u[7]+3*u[8]+2*f)%11)%11;return!(f!==u[9]||h!==u[10])},TH:function(l){if(!l.match(/^[1-8]\d{12}$/))return!1;for(var c=0,u=0;u<12;u++)c+=parseInt(l[u],10)*(13-u);return l[12]===((11-c%11)%10).toString()},LK:function(l){var c=/^[1-9]\d{8}[vx]$/i,u=/^[1-9]\d{11}$/i;return l.length===10&&c.test(l)?!0:!!(l.length===12&&u.test(l))},"he-IL":function(l){var c=/^\d{9}$/,u=l.trim();if(!c.test(u))return!1;for(var f=u,h=0,p,g=0;g<f.length;g++)p=Number(f[g])*(g%2+1),h+=p>9?p-9:p;return h%10===0},"ar-LY":function(l){var c=/^(1|2)\d{11}$/,u=l.trim();return!!c.test(u)},"ar-TN":function(l){var c=/^\d{8}$/,u=l.trim();return!!c.test(u)},"zh-CN":function(l){var c=["11","12","13","14","15","21","22","23","31","32","33","34","35","36","37","41","42","43","44","45","46","50","51","52","53","54","61","62","63","64","65","71","81","82","91"],u=["7","9","10","5","8","4","2","1","6","3","7","9","10","5","8","4","2"],f=["1","0","X","9","8","7","6","5","4","3","2"],h=function(S){return c.includes(S)},p=function(S){var k=parseInt(S.substring(0,4),10),A=parseInt(S.substring(4,6),10),C=parseInt(S.substring(6),10),E=new Date(k,A-1,C);return E>new Date?!1:E.getFullYear()===k&&E.getMonth()===A-1&&E.getDate()===C},g=function(S){for(var k=S.substring(0,17),A=0,C=0;C<17;C++)A+=parseInt(k.charAt(C),10)*parseInt(u[C],10);var E=A%11;return f[E]},m=function(S){return g(S)===S.charAt(17).toUpperCase()},v=function(S){var k=/^[1-9]\d{7}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}$/.test(S);if(!k)return!1;var A=S.substring(0,2);if(k=h(A),!k)return!1;var C="19".concat(S.substring(6,12));return k=p(C),!!k},b=function(S){var k=/^[1-9]\d{5}[1-9]\d{3}((0[1-9])|(1[0-2]))((0[1-9])|([1-2][0-9])|(3[0-1]))\d{3}(\d|x|X)$/.test(S);if(!k)return!1;var A=S.substring(0,2);if(k=h(A),!k)return!1;var C=S.substring(6,14);return k=p(C),k?m(S):!1},y=function(S){var k=/^\d{15}|(\d{17}(\d|x|X))$/.test(S);return k?S.length===15?v(S):b(S):!1};return y(l)},"zh-HK":function(l){l=l.trim();var c=/^[A-Z]{1,2}[0-9]{6}((\([0-9A]\))|(\[[0-9A]\])|([0-9A]))$/,u=/^[0-9]$/;if(l=l.toUpperCase(),!c.test(l))return!1;l=l.replace(/\[|\]|\(|\)/g,""),l.length===8&&(l="3".concat(l));for(var f=0,h=0;h<=7;h++){var p=void 0;u.test(l[h])?p=l[h]:p=(l[h].charCodeAt(0)-55)%11,f+=p*(9-h)}f%=11;var g;return f===0?g="0":f===1?g="A":g=String(11-f),g===l[l.length-1]},"zh-TW":function(l){var c={A:10,B:11,C:12,D:13,E:14,F:15,G:16,H:17,I:34,J:18,K:19,L:20,M:21,N:22,O:35,P:23,Q:24,R:25,S:26,T:27,U:28,V:29,W:32,X:30,Y:31,Z:33},u=l.trim().toUpperCase();return/^[A-Z][0-9]{9}$/.test(u)?Array.from(u).reduce(function(f,h,p){if(p===0){var g=c[h];return g%10*9+Math.floor(g/10)}return p===9?(10-f%10-Number(h))%10===0:f+Number(h)*(9-p)},0):!1}};function a(o,l){if((0,t.default)(o),l in s)return s[l](o);if(l==="any"){for(var c in s)if(s.hasOwnProperty(c)){var u=s[c];if(u(o))return!0}return!1}throw new Error("Invalid locale '".concat(l,"'"))}n.exports=e.default,n.exports.default=e.default})(il,il.exports)),il.exports}var sl={exports:{}},Q0;function $5(){return Q0||(Q0=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=c;var t=r(U());function r(u){return u&&u.__esModule?u:{default:u}}var i=8,s=14,a=/^(\d{8}|\d{13}|\d{14})$/;function o(u,f){return u===i||u===s?f%2===0?3:1:f%2===0?1:3}function l(u){var f=u.slice(0,-1).split("").map(function(p,g){return Number(p)*o(u.length,g)}).reduce(function(p,g){return p+g},0),h=10-f%10;return h<10?h:0}function c(u){(0,t.default)(u);var f=Number(u.slice(-1));return a.test(u)&&f===l(u)}n.exports=e.default,n.exports.default=e.default})(sl,sl.exports)),sl.exports}var al={exports:{}},ev;function F5(){return ev||(ev=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[A-Z]{2}[0-9A-Z]{9}[0-9]$/;function s(a){if((0,t.default)(a),!i.test(a))return!1;for(var o=!0,l=0,c=a.length-2;c>=0;c--)if(a[c]>="A"&&a[c]<="Z")for(var u=a[c].charCodeAt(0)-55,f=u%10,h=Math.trunc(u/10),p=0,g=[f,h];p<g.length;p++){var m=g[p];o?m>=5?l+=1+(m-5)*2:l+=m*2:l+=m,o=!o}else{var v=a[c].charCodeAt(0)-48;o?v>=5?l+=1+(v-5)*2:l+=v*2:l+=v,o=!o}var b=Math.trunc((l+9)/10)*10-l;return+a[a.length-1]===b}n.exports=e.default,n.exports.default=e.default})(al,al.exports)),al.exports}var ol={exports:{}},tv;function H5(){return tv||(tv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i=/^(?:[0-9]{9}X|[0-9]{10})$/,s=/^(?:[0-9]{13})$/,a=[1,3];function o(l,c){(0,t.default)(l);var u=String(c?.version||c);if(!(c!=null&&c.version||c))return o(l,{version:10})||o(l,{version:13});var f=l.replace(/[\s-]+/g,""),h=0;if(u==="10"){if(!i.test(f))return!1;for(var p=0;p<u-1;p++)h+=(p+1)*f.charAt(p);if(f.charAt(9)==="X"?h+=100:h+=10*f.charAt(9),h%11===0)return!0}else if(u==="13"){if(!s.test(f))return!1;for(var g=0;g<12;g++)h+=a[g%2]*f.charAt(g);if(f.charAt(12)-(10-h%10)%10===0)return!0}return!1}n.exports=e.default,n.exports.default=e.default})(ol,ol.exports)),ol.exports}var ll={exports:{}},nv;function V5(){return nv||(nv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i="^\\d{4}-?\\d{3}[\\dX]$";function s(a){var o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};(0,t.default)(a);var l=i;if(l=o.require_hyphen?l.replace("?",""):l,l=o.case_sensitive?new RegExp(l):new RegExp(l,"i"),!l.test(a))return!1;for(var c=a.replace("-","").toUpperCase(),u=0,f=0;f<c.length;f++){var h=c[f];u+=(h==="X"?10:+h)*(8-f)}return u%11===0}n.exports=e.default,n.exports.default=e.default})(ll,ll.exports)),ll.exports}var cl={exports:{}},Br={},rv;function uS(){if(rv)return Br;rv=1,Object.defineProperty(Br,"__esModule",{value:!0}),Br.iso7064Check=n,Br.luhnCheck=e,Br.reverseMultiplyAndSum=t,Br.verhoeffCheck=r;function n(i){for(var s=10,a=0;a<i.length-1;a++)s=(parseInt(i[a],10)+s)%10===0?20%11:(parseInt(i[a],10)+s)%10*2%11;return s=s===1?0:11-s,s===parseInt(i[10],10)}function e(i){for(var s=0,a=!1,o=i.length-1;o>=0;o--){if(a){var l=parseInt(i[o],10)*2;l>9?s+=l.toString().split("").map(function(c){return parseInt(c,10)}).reduce(function(c,u){return c+u},0):s+=l}else s+=parseInt(i[o],10);a=!a}return s%10===0}function t(i,s){for(var a=0,o=0;o<i.length;o++)a+=i[o]*(s-o);return a}function r(i){for(var s=[[0,1,2,3,4,5,6,7,8,9],[1,2,3,4,0,6,7,8,9,5],[2,3,4,0,1,7,8,9,5,6],[3,4,0,1,2,8,9,5,6,7],[4,0,1,2,3,9,5,6,7,8],[5,9,8,7,6,0,4,3,2,1],[6,5,9,8,7,1,0,4,3,2],[7,6,5,9,8,2,1,0,4,3],[8,7,6,5,9,3,2,1,0,4],[9,8,7,6,5,4,3,2,1,0]],a=[[0,1,2,3,4,5,6,7,8,9],[1,5,7,6,2,8,3,0,9,4],[5,8,0,3,7,9,6,1,4,2],[8,9,1,6,0,4,3,5,2,7],[9,4,5,3,1,2,6,8,7,0],[4,2,8,6,5,7,3,9,0,1],[2,7,9,3,8,0,6,4,1,5],[7,0,4,6,9,1,3,2,5,8]],o=i.split("").reverse().join(""),l=0,c=0;c<o.length;c++)l=s[l][a[c%8][parseInt(o[c],10)]];return l===0}return Br}var iv;function U5(){return iv||(iv=1,(function(n,e){function t(I){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(D){return typeof D}:function(D){return D&&typeof Symbol=="function"&&D.constructor===Symbol&&D!==Symbol.prototype?"symbol":typeof D},t(I)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=ar;var r=l(U()),i=o(uS()),s=l(rS());function a(I){if(typeof WeakMap!="function")return null;var D=new WeakMap,O=new WeakMap;return(a=function(F){return F?O:D})(I)}function o(I,D){if(I&&I.__esModule)return I;if(I===null||t(I)!="object"&&typeof I!="function")return{default:I};var O=a(D);if(O&&O.has(I))return O.get(I);var H={__proto__:null},F=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var z in I)if(z!=="default"&&{}.hasOwnProperty.call(I,z)){var ie=F?Object.getOwnPropertyDescriptor(I,z):null;ie&&(ie.get||ie.set)?Object.defineProperty(H,z,ie):H[z]=I[z]}return H.default=I,O&&O.set(I,H),H}function l(I){return I&&I.__esModule?I:{default:I}}function c(I){return p(I)||h(I)||f(I)||u()}function u(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
@@ -31,4 +31,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
|
|
|
31
31
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function l(m,v){var b=m==null?null:typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(b!=null){var y,w,S,k,A=[],C=!0,E=!1;try{if(S=(b=b.call(m)).next,v!==0)for(;!(C=(y=S.call(b)).done)&&(A.push(y.value),A.length!==v);C=!0);}catch(M){E=!0,w=M}finally{try{if(!C&&b.return!=null&&(k=b.return(),Object(k)!==k))return}finally{if(E)throw w}}return A}}function c(m){if(Array.isArray(m))return m}function u(m,v){var b=typeof Symbol<"u"&&m[Symbol.iterator]||m["@@iterator"];if(!b){if(Array.isArray(m)||(b=f(m))||v){b&&(m=b);var y=0,w=function(){};return{s:w,n:function(){return y>=m.length?{done:!0}:{done:!1,value:m[y++]}},e:function(E){throw E},f:w}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
32
32
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var S=!0,k=!1,A;return{s:function(){b=b.call(m)},n:function(){var E=b.next();return S=E.done,E},e:function(E){k=!0,A=E},f:function(){try{!S&&b.return!=null&&b.return()}finally{if(k)throw A}}}}function f(m,v){if(m){if(typeof m=="string")return h(m,v);var b=Object.prototype.toString.call(m).slice(8,-1);if(b==="Object"&&m.constructor&&(b=m.constructor.name),b==="Map"||b==="Set")return Array.from(m);if(b==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(b))return h(m,v)}}function h(m,v){(v==null||v>m.length)&&(v=m.length);for(var b=0,y=new Array(v);b<v;b++)y[b]=m[b];return y}function p(m){var v=new Set(["subject","body","cc","bcc"]),b={cc:"",bcc:""},y=!1,w=m.split("&");if(w.length>4)return!1;var S=u(w),k;try{for(S.s();!(k=S.n()).done;){var A=k.value,C=A.split("="),E=a(C,2),M=E[0],R=E[1];if(M&&!v.has(M)){y=!0;break}R&&(M==="cc"||M==="bcc")&&(b[M]=R),M&&v.delete(M)}}catch(T){S.e(T)}finally{S.f()}return y?!1:b}function g(m,v){if((0,i.default)(m),m.indexOf("mailto:")!==0)return!1;var b=m.replace("mailto:","").split("?"),y=a(b,2),w=y[0],S=y[1],k=S===void 0?"":S;if(!w&&!k)return!0;var A=p(k);return A?"".concat(w,",").concat(A.cc,",").concat(A.bcc).split(",").every(function(C){return C=(0,t.default)(C," "),C?(0,r.default)(C,v):!0}):!1}n.exports=e.default,n.exports.default=e.default})(wl,wl.exports)),wl.exports}var Al={exports:{}},kv;function s4(){return kv||(kv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=o;var t=r(U());function r(l){return l&&l.__esModule?l:{default:l}}var i=/^(application|audio|font|image|message|model|multipart|text|video)\/[a-zA-Z0-9\.\-\+_]{1,100}$/i,s=/^text\/[a-zA-Z0-9\.\-\+]{1,100};\s?charset=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?$/i,a=/^multipart\/[a-zA-Z0-9\.\-\+]{1,100}(;\s?(boundary|charset)=("[a-zA-Z0-9\.\-\+\s]{0,70}"|[a-zA-Z0-9\.\-\+]{0,70})(\s?\([a-zA-Z0-9\.\-\+\s]{1,20}\))?){0,2}$/i;function o(l){return(0,t.default)(l),i.test(l)||s.test(l)||a.test(l)}n.exports=e.default,n.exports.default=e.default})(Al,Al.exports)),Al.exports}var Ml={exports:{}},Cv;function a4(){return Cv||(Cv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=i(U()),r=i(Ht());function i(f){return f&&f.__esModule?f:{default:f}}var s=/^\(?[+-]?(90(\.0+)?|[1-8]?\d(\.\d+)?)$/,a=/^\s?[+-]?(180(\.0+)?|1[0-7]\d(\.\d+)?|\d{1,2}(\.\d+)?)\)?$/,o=/^(([1-8]?\d)\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|90\D+0\D+0)\D+[NSns]?$/i,l=/^\s*([1-7]?\d{1,2}\D+([1-5]?\d|60)\D+([1-5]?\d|60)(\.\d+)?|180\D+0\D+0)\D+[EWew]?$/i,c={checkDMS:!1};function u(f,h){if((0,t.default)(f),h=(0,r.default)(h,c),!f.includes(","))return!1;var p=f.split(",");return p[0].startsWith("(")&&!p[1].endsWith(")")||p[1].endsWith(")")&&!p[0].startsWith("(")?!1:h.checkDMS?o.test(p[0])&&l.test(p[1]):s.test(p[0])&&a.test(p[1])}n.exports=e.default,n.exports.default=e.default})(Ml,Ml.exports)),Ml.exports}var bi={},Av;function o4(){if(Av)return bi;Av=1,Object.defineProperty(bi,"__esModule",{value:!0}),bi.default=o,bi.locales=void 0;var n=e(U());function e(l){return l&&l.__esModule?l:{default:l}}var t=/^\d{3}$/,r=/^\d{4}$/,i=/^\d{5}$/,s=/^\d{6}$/,a={AD:/^AD\d{3}$/,AT:r,AU:r,AZ:/^AZ\d{4}$/,BA:/^([7-8]\d{4}$)/,BE:r,BG:r,BR:/^\d{5}-\d{3}$/,BY:/^2[1-4]\d{4}$/,CA:/^[ABCEGHJKLMNPRSTVXY]\d[ABCEGHJ-NPRSTV-Z][\s\-]?\d[ABCEGHJ-NPRSTV-Z]\d$/i,CH:r,CN:/^(0[1-7]|1[012356]|2[0-7]|3[0-6]|4[0-7]|5[1-7]|6[1-7]|7[1-5]|8[1345]|9[09])\d{4}$/,CZ:/^\d{3}\s?\d{2}$/,DE:i,DK:r,DO:i,DZ:i,EE:i,ES:/^(5[0-2]{1}|[0-4]{1}\d{1})\d{3}$/,FI:i,FR:/^\d{2}\s?\d{3}$/,GB:/^(gir\s?0aa|[a-z]{1,2}\d[\da-z]?\s?(\d[a-z]{2})?)$/i,GR:/^\d{3}\s?\d{2}$/,HR:/^([1-5]\d{4}$)/,HT:/^HT\d{4}$/,HU:r,ID:i,IE:/^(?!.*(?:o))[A-Za-z]\d[\dw]\s\w{4}$/i,IL:/^(\d{5}|\d{7})$/,IN:/^((?!10|29|35|54|55|65|66|86|87|88|89)[1-9][0-9]{5})$/,IR:/^(?!(\d)\1{3})[13-9]{4}[1346-9][013-9]{5}$/,IS:t,IT:i,JP:/^\d{3}\-\d{4}$/,KE:i,KR:/^(\d{5}|\d{6})$/,LI:/^(948[5-9]|949[0-7])$/,LT:/^LT\-\d{5}$/,LU:r,LV:/^LV\-\d{4}$/,LK:i,MG:t,MX:i,MT:/^[A-Za-z]{3}\s{0,1}\d{4}$/,MY:i,NL:/^[1-9]\d{3}\s?(?!sa|sd|ss)[a-z]{2}$/i,NO:r,NP:/^(10|21|22|32|33|34|44|45|56|57)\d{3}$|^(977)$/i,NZ:r,PL:/^\d{2}\-\d{3}$/,PR:/^00[679]\d{2}([ -]\d{4})?$/,PT:/^\d{4}\-\d{3}?$/,RO:s,RU:s,SA:i,SE:/^[1-9]\d{2}\s?\d{2}$/,SG:s,SI:r,SK:/^\d{3}\s?\d{2}$/,TH:i,TN:r,TW:/^\d{3}(\d{2})?$/,UA:i,US:/^\d{5}(-\d{4})?$/,ZA:r,ZM:i};bi.locales=Object.keys(a);function o(l,c){if((0,n.default)(l),c in a)return a[c].test(l);if(c==="any"){for(var u in a)if(a.hasOwnProperty(u)){var f=a[u];if(f.test(l))return!0}return!1}throw new Error("Invalid locale '".concat(c,"'"))}return bi}var Il={exports:{}},Mv;function l4(){return Mv||(Mv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s.replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/\//g,"/").replace(/\\/g,"\").replace(/`/g,"`")}n.exports=e.default,n.exports.default=e.default})(Il,Il.exports)),Il.exports}var El={exports:{}},Iv;function c4(){return Iv||(Iv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s){return(0,t.default)(s),s.replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(///g,"/").replace(/\/g,"\\").replace(/`/g,"`").replace(/&/g,"&")}n.exports=e.default,n.exports.default=e.default})(El,El.exports)),El.exports}var Dl={exports:{}},Rl={exports:{}},Ev;function pS(){return Ev||(Ev=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),s.replace(new RegExp("[".concat(a,"]+"),"g"),"")}n.exports=e.default,n.exports.default=e.default})(Rl,Rl.exports)),Rl.exports}var Dv;function u4(){return Dv||(Dv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=i(U()),r=i(pS());function i(a){return a&&a.__esModule?a:{default:a}}function s(a,o){(0,t.default)(a);var l=o?"\\x00-\\x09\\x0B\\x0C\\x0E-\\x1F\\x7F":"\\x00-\\x1F\\x7F";return(0,r.default)(a,l)}n.exports=e.default,n.exports.default=e.default})(Dl,Dl.exports)),Dl.exports}var Ol={exports:{}},Rv;function d4(){return Rv||(Rv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){return(0,t.default)(s),s.replace(new RegExp("[^".concat(a,"]+"),"g"),"")}n.exports=e.default,n.exports.default=e.default})(Ol,Ol.exports)),Ol.exports}var Tl={exports:{}},Ov;function f4(){return Ov||(Ov=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=i;var t=r(U());function r(s){return s&&s.__esModule?s:{default:s}}function i(s,a){(0,t.default)(s);for(var o=s.length-1;o>=0;o--)if(a.indexOf(s[o])===-1)return!1;return!0}n.exports=e.default,n.exports.default=e.default})(Tl,Tl.exports)),Tl.exports}var Nl={exports:{}},Tv;function h4(){return Tv||(Tv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=u;var t=r(Ht());function r(f){return f&&f.__esModule?f:{default:f}}var i={all_lowercase:!0,gmail_lowercase:!0,gmail_remove_dots:!0,gmail_remove_subaddress:!0,gmail_convert_googlemaildotcom:!0,outlookdotcom_lowercase:!0,outlookdotcom_remove_subaddress:!0,yahoo_lowercase:!0,yahoo_remove_subaddress:!0,yandex_lowercase:!0,icloud_lowercase:!0,icloud_remove_subaddress:!0},s=["icloud.com","me.com"],a=["hotmail.at","hotmail.be","hotmail.ca","hotmail.cl","hotmail.co.il","hotmail.co.nz","hotmail.co.th","hotmail.co.uk","hotmail.com","hotmail.com.ar","hotmail.com.au","hotmail.com.br","hotmail.com.gr","hotmail.com.mx","hotmail.com.pe","hotmail.com.tr","hotmail.com.vn","hotmail.cz","hotmail.de","hotmail.dk","hotmail.es","hotmail.fr","hotmail.hu","hotmail.id","hotmail.ie","hotmail.in","hotmail.it","hotmail.jp","hotmail.kr","hotmail.lv","hotmail.my","hotmail.ph","hotmail.pt","hotmail.sa","hotmail.sg","hotmail.sk","live.be","live.co.uk","live.com","live.com.ar","live.com.mx","live.de","live.es","live.eu","live.fr","live.it","live.nl","msn.com","outlook.at","outlook.be","outlook.cl","outlook.co.il","outlook.co.nz","outlook.co.th","outlook.com","outlook.com.ar","outlook.com.au","outlook.com.br","outlook.com.gr","outlook.com.pe","outlook.com.tr","outlook.com.vn","outlook.cz","outlook.de","outlook.dk","outlook.es","outlook.fr","outlook.hu","outlook.id","outlook.ie","outlook.in","outlook.it","outlook.jp","outlook.kr","outlook.lv","outlook.my","outlook.ph","outlook.pt","outlook.sa","outlook.sg","outlook.sk","passport.com"],o=["rocketmail.com","yahoo.ca","yahoo.co.uk","yahoo.com","yahoo.de","yahoo.fr","yahoo.in","yahoo.it","ymail.com"],l=["yandex.ru","yandex.ua","yandex.kz","yandex.com","yandex.by","ya.ru"];function c(f){return f.length>1?f:""}function u(f,h){h=(0,t.default)(h,i);var p=f.split("@"),g=p.pop(),m=p.join("@"),v=[m,g];if(v[1]=v[1].toLowerCase(),v[1]==="gmail.com"||v[1]==="googlemail.com"){if(h.gmail_remove_subaddress&&(v[0]=v[0].split("+")[0]),h.gmail_remove_dots&&(v[0]=v[0].replace(/\.+/g,c)),!v[0].length)return!1;(h.all_lowercase||h.gmail_lowercase)&&(v[0]=v[0].toLowerCase()),v[1]=h.gmail_convert_googlemaildotcom?"gmail.com":v[1]}else if(s.indexOf(v[1])>=0){if(h.icloud_remove_subaddress&&(v[0]=v[0].split("+")[0]),!v[0].length)return!1;(h.all_lowercase||h.icloud_lowercase)&&(v[0]=v[0].toLowerCase())}else if(a.indexOf(v[1])>=0){if(h.outlookdotcom_remove_subaddress&&(v[0]=v[0].split("+")[0]),!v[0].length)return!1;(h.all_lowercase||h.outlookdotcom_lowercase)&&(v[0]=v[0].toLowerCase())}else if(o.indexOf(v[1])>=0){if(h.yahoo_remove_subaddress){var b=v[0].split("-");v[0]=b.length>1?b.slice(0,-1).join("-"):b[0]}if(!v[0].length)return!1;(h.all_lowercase||h.yahoo_lowercase)&&(v[0]=v[0].toLowerCase())}else l.indexOf(v[1])>=0?((h.all_lowercase||h.yandex_lowercase)&&(v[0]=v[0].toLowerCase()),v[1]="yandex.ru"):h.all_lowercase&&(v[0]=v[0].toLowerCase());return v.join("@")}n.exports=e.default,n.exports.default=e.default})(Nl,Nl.exports)),Nl.exports}var Pl={exports:{}},Nv;function p4(){return Nv||(Nv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i=/^[^\s-_](?!.*?[-_]{2,})[a-z0-9-\\][^\s]*[^-_\s]$/;function s(a){return(0,t.default)(a),i.test(a)}n.exports=e.default,n.exports.default=e.default})(Pl,Pl.exports)),Pl.exports}var Ll={exports:{}},Pv;function m4(){return Pv||(Pv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=s;var t=r(U());function r(a){return a&&a.__esModule?a:{default:a}}var i={"cs-CZ":function(o){return/^(([ABCDEFHIJKLMNPRSTUVXYZ]|[0-9])-?){5,8}$/.test(o)},"de-DE":function(o){return/^((A|AA|AB|AC|AE|AH|AK|AM|AN|AÖ|AP|AS|AT|AU|AW|AZ|B|BA|BB|BC|BE|BF|BH|BI|BK|BL|BM|BN|BO|BÖ|BS|BT|BZ|C|CA|CB|CE|CO|CR|CW|D|DA|DD|DE|DH|DI|DL|DM|DN|DO|DU|DW|DZ|E|EA|EB|ED|EE|EF|EG|EH|EI|EL|EM|EN|ER|ES|EU|EW|F|FB|FD|FF|FG|FI|FL|FN|FO|FR|FS|FT|FÜ|FW|FZ|G|GA|GC|GD|GE|GF|GG|GI|GK|GL|GM|GN|GÖ|GP|GR|GS|GT|GÜ|GV|GW|GZ|H|HA|HB|HC|HD|HE|HF|HG|HH|HI|HK|HL|HM|HN|HO|HP|HR|HS|HU|HV|HX|HY|HZ|IK|IL|IN|IZ|J|JE|JL|K|KA|KB|KC|KE|KF|KG|KH|KI|KK|KL|KM|KN|KO|KR|KS|KT|KU|KW|KY|L|LA|LB|LC|LD|LF|LG|LH|LI|LL|LM|LN|LÖ|LP|LR|LU|M|MA|MB|MC|MD|ME|MG|MH|MI|MK|ML|MM|MN|MO|MQ|MR|MS|MÜ|MW|MY|MZ|N|NB|ND|NE|NF|NH|NI|NK|NM|NÖ|NP|NR|NT|NU|NW|NY|NZ|OA|OB|OC|OD|OE|OF|OG|OH|OK|OL|OP|OS|OZ|P|PA|PB|PE|PF|PI|PL|PM|PN|PR|PS|PW|PZ|R|RA|RC|RD|RE|RG|RH|RI|RL|RM|RN|RO|RP|RS|RT|RU|RV|RW|RZ|S|SB|SC|SE|SG|SI|SK|SL|SM|SN|SO|SP|SR|ST|SU|SW|SY|SZ|TE|TF|TG|TO|TP|TR|TS|TT|TÜ|ÜB|UE|UH|UL|UM|UN|V|VB|VG|VK|VR|VS|W|WA|WB|WE|WF|WI|WK|WL|WM|WN|WO|WR|WS|WT|WÜ|WW|WZ|Z|ZE|ZI|ZP|ZR|ZW|ZZ)[- ]?[A-Z]{1,2}[- ]?\d{1,4}|(ABG|ABI|AIB|AIC|ALF|ALZ|ANA|ANG|ANK|APD|ARN|ART|ASL|ASZ|AUR|AZE|BAD|BAR|BBG|BCH|BED|BER|BGD|BGL|BID|BIN|BIR|BIT|BIW|BKS|BLB|BLK|BNA|BOG|BOH|BOR|BOT|BRA|BRB|BRG|BRK|BRL|BRV|BSB|BSK|BTF|BÜD|BUL|BÜR|BÜS|BÜZ|CAS|CHA|CLP|CLZ|COC|COE|CUX|DAH|DAN|DAU|DBR|DEG|DEL|DGF|DIL|DIN|DIZ|DKB|DLG|DON|DUD|DÜW|EBE|EBN|EBS|ECK|EIC|EIL|EIN|EIS|EMD|EMS|ERB|ERH|ERK|ERZ|ESB|ESW|FDB|FDS|FEU|FFB|FKB|FLÖ|FOR|FRG|FRI|FRW|FTL|FÜS|GAN|GAP|GDB|GEL|GEO|GER|GHA|GHC|GLA|GMN|GNT|GOA|GOH|GRA|GRH|GRI|GRM|GRZ|GTH|GUB|GUN|GVM|HAB|HAL|HAM|HAS|HBN|HBS|HCH|HDH|HDL|HEB|HEF|HEI|HER|HET|HGN|HGW|HHM|HIG|HIP|HMÜ|HOG|HOH|HOL|HOM|HOR|HÖS|HOT|HRO|HSK|HST|HVL|HWI|IGB|ILL|JÜL|KEH|KEL|KEM|KIB|KLE|KLZ|KÖN|KÖT|KÖZ|KRU|KÜN|KUS|KYF|LAN|LAU|LBS|LBZ|LDK|LDS|LEO|LER|LEV|LIB|LIF|LIP|LÖB|LOS|LRO|LSZ|LÜN|LUP|LWL|MAB|MAI|MAK|MAL|MED|MEG|MEI|MEK|MEL|MER|MET|MGH|MGN|MHL|MIL|MKK|MOD|MOL|MON|MOS|MSE|MSH|MSP|MST|MTK|MTL|MÜB|MÜR|MYK|MZG|NAB|NAI|NAU|NDH|NEA|NEB|NEC|NEN|NES|NEW|NMB|NMS|NOH|NOL|NOM|NOR|NVP|NWM|OAL|OBB|OBG|OCH|OHA|ÖHR|OHV|OHZ|OPR|OSL|OVI|OVL|OVP|PAF|PAN|PAR|PCH|PEG|PIR|PLÖ|PRÜ|QFT|QLB|RDG|REG|REH|REI|RID|RIE|ROD|ROF|ROK|ROL|ROS|ROT|ROW|RSL|RÜD|RÜG|SAB|SAD|SAN|SAW|SBG|SBK|SCZ|SDH|SDL|SDT|SEB|SEE|SEF|SEL|SFB|SFT|SGH|SHA|SHG|SHK|SHL|SIG|SIM|SLE|SLF|SLK|SLN|SLS|SLÜ|SLZ|SMÜ|SOB|SOG|SOK|SÖM|SON|SPB|SPN|SRB|SRO|STA|STB|STD|STE|STL|SUL|SÜW|SWA|SZB|TBB|TDO|TET|TIR|TÖL|TUT|UEM|UER|UFF|USI|VAI|VEC|VER|VIB|VIE|VIT|VOH|WAF|WAK|WAN|WAR|WAT|WBS|WDA|WEL|WEN|WER|WES|WHV|WIL|WIS|WIT|WIZ|WLG|WMS|WND|WOB|WOH|WOL|WOR|WOS|WRN|WSF|WST|WSW|WTL|WTM|WUG|WÜM|WUN|WUR|WZL|ZEL|ZIG)[- ]?(([A-Z][- ]?\d{1,4})|([A-Z]{2}[- ]?\d{1,3})))[- ]?(E|H)?$/.test(o)},"de-LI":function(o){return/^FL[- ]?\d{1,5}[UZ]?$/.test(o)},"en-IN":function(o){return/^[A-Z]{2}[ -]?[0-9]{1,2}(?:[ -]?[A-Z])(?:[ -]?[A-Z]*)?[ -]?[0-9]{4}$/.test(o)},"es-AR":function(o){return/^(([A-Z]{2} ?[0-9]{3} ?[A-Z]{2})|([A-Z]{3} ?[0-9]{3}))$/.test(o)},"fi-FI":function(o){return/^(?=.{4,7})(([A-Z]{1,3}|[0-9]{1,3})[\s-]?([A-Z]{1,3}|[0-9]{1,5}))$/.test(o)},"hu-HU":function(o){return/^((((?!AAA)(([A-NPRSTVZWXY]{1})([A-PR-Z]{1})([A-HJ-NPR-Z]))|(A[ABC]I)|A[ABC]O|A[A-W]Q|BPI|BPO|UCO|UDO|XAO)-(?!000)\d{3})|(M\d{6})|((CK|DT|CD|HC|H[ABEFIKLMNPRSTVX]|MA|OT|R[A-Z]) \d{2}-\d{2})|(CD \d{3}-\d{3})|(C-(C|X) \d{4})|(X-(A|B|C) \d{4})|(([EPVZ]-\d{5}))|(S A[A-Z]{2} \d{2})|(SP \d{2}-\d{2}))$/.test(o)},"pt-BR":function(o){return/^[A-Z]{3}[ -]?[0-9][A-Z][0-9]{2}|[A-Z]{3}[ -]?[0-9]{4}$/.test(o)},"pt-PT":function(o){return/^([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})[ -·]?([A-Z]{2}|[0-9]{2})$/.test(o)},"sq-AL":function(o){return/^[A-Z]{2}[- ]?((\d{3}[- ]?(([A-Z]{2})|T))|(R[- ]?\d{3}))$/.test(o)},"sv-SE":function(o){return/^[A-HJ-PR-UW-Z]{3} ?[\d]{2}[A-HJ-PR-UW-Z1-9]$|(^[A-ZÅÄÖ ]{2,7}$)/.test(o.trim())},"en-PK":function(o){return/(^[A-Z]{2}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{3}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]{4}((\s|-){0,1})[0-9]{3,4}((\s|-)[0-9]{2}){0,1}$)|(^[A-Z]((\s|-){0,1})[0-9]{4}((\s|-)[0-9]{2}){0,1}$)/.test(o.trim())}};function s(a,o){if((0,t.default)(a),o in i)return i[o](a);if(o==="any"){for(var l in i){var c=i[l];if(c(a))return!0}return!1}throw new Error("Invalid locale '".concat(o,"'"))}n.exports=e.default,n.exports.default=e.default})(Ll,Ll.exports)),Ll.exports}var _l={exports:{}},Lv;function g4(){return Lv||(Lv=1,(function(n,e){Object.defineProperty(e,"__esModule",{value:!0}),e.default=p;var t=i(Ht()),r=i(U());function i(g){return g&&g.__esModule?g:{default:g}}var s=/^[A-Z]$/,a=/^[a-z]$/,o=/^[0-9]$/,l=/^[-#!$@£%^&*()_+|~=`{}\[\]:";'<>?,.\/\\ ]$/,c={minLength:8,minLowercase:1,minUppercase:1,minNumbers:1,minSymbols:1,returnScore:!1,pointsPerUnique:1,pointsPerRepeat:.5,pointsForContainingLower:10,pointsForContainingUpper:10,pointsForContainingNumber:10,pointsForContainingSymbol:10};function u(g){var m={};return Array.from(g).forEach(function(v){var b=m[v];b?m[v]+=1:m[v]=1}),m}function f(g){var m=u(g),v={length:g.length,uniqueChars:Object.keys(m).length,uppercaseCount:0,lowercaseCount:0,numberCount:0,symbolCount:0};return Object.keys(m).forEach(function(b){s.test(b)?v.uppercaseCount+=m[b]:a.test(b)?v.lowercaseCount+=m[b]:o.test(b)?v.numberCount+=m[b]:l.test(b)&&(v.symbolCount+=m[b])}),v}function h(g,m){var v=0;return v+=g.uniqueChars*m.pointsPerUnique,v+=(g.length-g.uniqueChars)*m.pointsPerRepeat,g.lowercaseCount>0&&(v+=m.pointsForContainingLower),g.uppercaseCount>0&&(v+=m.pointsForContainingUpper),g.numberCount>0&&(v+=m.pointsForContainingNumber),g.symbolCount>0&&(v+=m.pointsForContainingSymbol),v}function p(g){var m=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;(0,r.default)(g);var v=f(g);return m=(0,t.default)(m||{},c),m.returnScore?h(v,m):v.length>=m.minLength&&v.lowercaseCount>=m.minLowercase&&v.uppercaseCount>=m.minUppercase&&v.numberCount>=m.minNumbers&&v.symbolCount>=m.minSymbols}n.exports=e.default,n.exports.default=e.default})(_l,_l.exports)),_l.exports}var xi={},_v;function v4(){if(_v)return xi;_v=1;function n(f){"@babel/helpers - typeof";return n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(h){return typeof h}:function(h){return h&&typeof Symbol=="function"&&h.constructor===Symbol&&h!==Symbol.prototype?"symbol":typeof h},n(f)}Object.defineProperty(xi,"__esModule",{value:!0}),xi.default=u,xi.vatMatchers=void 0;var e=s(U()),t=i(uS());function r(f){if(typeof WeakMap!="function")return null;var h=new WeakMap,p=new WeakMap;return(r=function(m){return m?p:h})(f)}function i(f,h){if(f&&f.__esModule)return f;if(f===null||n(f)!="object"&&typeof f!="function")return{default:f};var p=r(h);if(p&&p.has(f))return p.get(f);var g={__proto__:null},m=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var v in f)if(v!=="default"&&{}.hasOwnProperty.call(f,v)){var b=m?Object.getOwnPropertyDescriptor(f,v):null;b&&(b.get||b.set)?Object.defineProperty(g,v,b):g[v]=f[v]}return g.default=f,p&&p.set(f,g),g}function s(f){return f&&f.__esModule?f:{default:f}}var a=function(h){var p=h.match(/^(AU)?(\d{11})$/);if(!p)return!1;var g=[10,1,3,5,7,9,11,13,15,17,19];h=h.replace(/^AU/,"");for(var m=(parseInt(h.slice(0,1),10)-1).toString()+h.slice(1),v=0,b=0;b<11;b++)v+=g[b]*m.charAt(b);return v!==0&&v%89===0},o=function(h){var p=function(m){var v=m.pop(),b=[5,4,3,2,7,6,5,4],y=(11-m.reduce(function(w,S,k){return w+S*b[k]},0)%11)%11;return v===y};return/^(CHE[- ]?)?(\d{9}|(\d{3}\.\d{3}\.\d{3})|(\d{3} \d{3} \d{3})) ?(TVA|MWST|IVA)?$/.test(h)&&p(h.match(/\d/g).map(function(g){return+g}))},l=function(h){var p=h.match(/^(PT)?(\d{9})$/);if(!p)return!1;var g=p[2],m=11-t.reverseMultiplyAndSum(g.split("").slice(0,8).map(function(v){return parseInt(v,10)}),9)%11;return m>9?parseInt(g[8],10)===0:m===parseInt(g[8],10)},c=xi.vatMatchers={AT:function(h){return/^(AT)?U\d{8}$/.test(h)},BE:function(h){return/^(BE)?\d{10}$/.test(h)},BG:function(h){return/^(BG)?\d{9,10}$/.test(h)},HR:function(h){return/^(HR)?\d{11}$/.test(h)},CY:function(h){return/^(CY)?\w{9}$/.test(h)},CZ:function(h){return/^(CZ)?\d{8,10}$/.test(h)},DK:function(h){return/^(DK)?\d{8}$/.test(h)},EE:function(h){return/^(EE)?\d{9}$/.test(h)},FI:function(h){return/^(FI)?\d{8}$/.test(h)},FR:function(h){return/^(FR)?\w{2}\d{9}$/.test(h)},DE:function(h){return/^(DE)?\d{9}$/.test(h)},EL:function(h){return/^(EL)?\d{9}$/.test(h)},HU:function(h){return/^(HU)?\d{8}$/.test(h)},IE:function(h){return/^(IE)?\d{7}\w{1}(W)?$/.test(h)},IT:function(h){return/^(IT)?\d{11}$/.test(h)},LV:function(h){return/^(LV)?\d{11}$/.test(h)},LT:function(h){return/^(LT)?\d{9,12}$/.test(h)},LU:function(h){return/^(LU)?\d{8}$/.test(h)},MT:function(h){return/^(MT)?\d{8}$/.test(h)},NL:function(h){return/^(NL)?\d{9}B\d{2}$/.test(h)},PL:function(h){return/^(PL)?(\d{10}|(\d{3}-\d{3}-\d{2}-\d{2})|(\d{3}-\d{2}-\d{2}-\d{3}))$/.test(h)},PT:l,RO:function(h){return/^(RO)?\d{2,10}$/.test(h)},SK:function(h){return/^(SK)?\d{10}$/.test(h)},SI:function(h){return/^(SI)?\d{8}$/.test(h)},ES:function(h){return/^(ES)?\w\d{7}[A-Z]$/.test(h)},SE:function(h){return/^(SE)?\d{12}$/.test(h)},AL:function(h){return/^(AL)?\w{9}[A-Z]$/.test(h)},MK:function(h){return/^(MK)?\d{13}$/.test(h)},AU:a,BY:function(h){return/^(УНП )?\d{9}$/.test(h)},CA:function(h){return/^(CA)?\d{9}$/.test(h)},IS:function(h){return/^(IS)?\d{5,6}$/.test(h)},IN:function(h){return/^(IN)?\d{15}$/.test(h)},ID:function(h){return/^(ID)?(\d{15}|(\d{2}.\d{3}.\d{3}.\d{1}-\d{3}.\d{3}))$/.test(h)},IL:function(h){return/^(IL)?\d{9}$/.test(h)},KZ:function(h){return/^(KZ)?\d{12}$/.test(h)},NZ:function(h){return/^(NZ)?\d{9}$/.test(h)},NG:function(h){return/^(NG)?(\d{12}|(\d{8}-\d{4}))$/.test(h)},NO:function(h){return/^(NO)?\d{9}MVA$/.test(h)},PH:function(h){return/^(PH)?(\d{12}|\d{3} \d{3} \d{3} \d{3})$/.test(h)},RU:function(h){return/^(RU)?(\d{10}|\d{12})$/.test(h)},SM:function(h){return/^(SM)?\d{5}$/.test(h)},SA:function(h){return/^(SA)?\d{15}$/.test(h)},RS:function(h){return/^(RS)?\d{9}$/.test(h)},CH:o,TR:function(h){return/^(TR)?\d{10}$/.test(h)},UA:function(h){return/^(UA)?\d{12}$/.test(h)},GB:function(h){return/^GB((\d{3} \d{4} ([0-8][0-9]|9[0-6]))|(\d{9} \d{3})|(((GD[0-4])|(HA[5-9]))[0-9]{2}))$/.test(h)},UZ:function(h){return/^(UZ)?\d{9}$/.test(h)},AR:function(h){return/^(AR)?\d{11}$/.test(h)},BO:function(h){return/^(BO)?\d{7}$/.test(h)},BR:function(h){return/^(BR)?((\d{2}.\d{3}.\d{3}\/\d{4}-\d{2})|(\d{3}.\d{3}.\d{3}-\d{2}))$/.test(h)},CL:function(h){return/^(CL)?\d{8}-\d{1}$/.test(h)},CO:function(h){return/^(CO)?\d{10}$/.test(h)},CR:function(h){return/^(CR)?\d{9,12}$/.test(h)},EC:function(h){return/^(EC)?\d{13}$/.test(h)},SV:function(h){return/^(SV)?\d{4}-\d{6}-\d{3}-\d{1}$/.test(h)},GT:function(h){return/^(GT)?\d{7}-\d{1}$/.test(h)},HN:function(h){return/^(HN)?$/.test(h)},MX:function(h){return/^(MX)?\w{3,4}\d{6}\w{3}$/.test(h)},NI:function(h){return/^(NI)?\d{3}-\d{6}-\d{4}\w{1}$/.test(h)},PA:function(h){return/^(PA)?$/.test(h)},PY:function(h){return/^(PY)?\d{6,8}-\d{1}$/.test(h)},PE:function(h){return/^(PE)?\d{11}$/.test(h)},DO:function(h){return/^(DO)?(\d{11}|(\d{3}-\d{7}-\d{1})|[1,4,5]{1}\d{8}|([1,4,5]{1})-\d{2}-\d{5}-\d{1})$/.test(h)},UY:function(h){return/^(UY)?\d{12}$/.test(h)},VE:function(h){return/^(VE)?[J,G,V,E]{1}-(\d{9}|(\d{8}-\d{1}))$/.test(h)}};function u(f,h){if((0,e.default)(f),(0,e.default)(h),h in c)return c[h](f);throw new Error("Invalid country code: '".concat(h,"'"))}return xi}var jv;function b4(){return jv||(jv=1,(function(n,e){function t(Ve){"@babel/helpers - typeof";return t=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(On){return typeof On}:function(On){return On&&typeof Symbol=="function"&&On.constructor===Symbol&&On!==Symbol.prototype?"symbol":typeof On},t(Ve)}Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=V(Oh()),i=V(Qw()),s=V(z_()),a=V(W_()),o=V(q_()),l=V(G_()),c=V(K_()),u=V(nS()),f=V(Z_()),h=V(Y_()),p=V(bu()),g=V(J_()),m=V(Th()),v=V(rS()),b=V(X_()),y=V(Q_()),w=V(e5()),S=V(t5()),k=ni(n5()),A=ni(r5()),C=V(i5()),E=V(s5()),M=V(a5()),R=V(o5()),T=V(l5()),N=V(c5()),P=V(u5()),L=V(iS()),$=V(sS()),q=V(d5()),Z=V(f5()),oe=V(p5()),ee=V(m5()),de=V(Nh()),ve=ni(Xw()),K=V(v5()),fe=V(aS()),re=V(b5()),ue=V(x5()),Q=V(y5()),ce=V(w5()),Ae=V(S5()),Be=V(k5()),he=ni(C5()),Je=V(A5()),Me=V(M5()),Ie=V(I5()),Ne=V(E5()),bt=V(D5()),Tt=V(R5()),ar=V(O5()),I=V(tS()),D=V(T5()),O=V(N5()),H=V(P5()),F=V(L5()),z=V(_5()),ie=V(cS()),me=V(j5()),we=V(B5()),Ee=V($5()),Vt=V(F5()),Nt=V(H5()),Xt=V(V5()),Ut=V(U5()),or=ni(z5()),Xn=V(W5()),lr=V(q5()),cr=V(G5()),ss=K5(),xu=V(Z5()),ka=V(Y5()),yu=V(J5()),wu=V(oS()),Su=V(X5()),ht=V(Q5()),Pt=V(e4()),Lt=V(t4()),Dn=V(lS()),zt=V(n4()),_t=V(r4()),ln=V(i4()),ur=V(s4()),st=V(a4()),bn=ni(o4()),cn=V(fS()),xn=V(dS()),Nr=V(hS()),Pr=V(l4()),Rn=V(c4()),Lr=V(u4()),as=V(d4()),MS=V(pS()),IS=V(f4()),ES=V(h4()),DS=V(p4()),RS=V(m4()),OS=V(g4()),TS=V(v4());function Bh(Ve){if(typeof WeakMap!="function")return null;var On=new WeakMap,_r=new WeakMap;return(Bh=function(ku){return ku?_r:On})(Ve)}function ni(Ve,On){if(Ve&&Ve.__esModule)return Ve;if(Ve===null||t(Ve)!="object"&&typeof Ve!="function")return{default:Ve};var _r=Bh(On);if(_r&&_r.has(Ve))return _r.get(Ve);var ri={__proto__:null},ku=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var ii in Ve)if(ii!=="default"&&{}.hasOwnProperty.call(Ve,ii)){var Ca=ku?Object.getOwnPropertyDescriptor(Ve,ii):null;Ca&&(Ca.get||Ca.set)?Object.defineProperty(ri,ii,Ca):ri[ii]=Ve[ii]}return ri.default=Ve,_r&&_r.set(Ve,ri),ri}function V(Ve){return Ve&&Ve.__esModule?Ve:{default:Ve}}var NS="13.12.0",PS={version:NS,toDate:r.default,toFloat:i.default,toInt:s.default,toBoolean:a.default,equals:o.default,contains:l.default,matches:c.default,isEmail:u.default,isURL:f.default,isMACAddress:h.default,isIP:p.default,isIPRange:g.default,isFQDN:m.default,isBoolean:y.default,isIBAN:he.default,isBIC:Je.default,isAbaRouting:S.default,isAlpha:k.default,isAlphaLocales:k.locales,isAlphanumeric:A.default,isAlphanumericLocales:A.locales,isNumeric:C.default,isPassportNumber:E.default,isPort:M.default,isLowercase:R.default,isUppercase:T.default,isAscii:P.default,isFullWidth:L.default,isHalfWidth:$.default,isVariableWidth:q.default,isMultibyte:Z.default,isSemVer:oe.default,isSurrogatePair:ee.default,isInt:de.default,isIMEI:N.default,isFloat:ve.default,isFloatLocales:ve.locales,isDecimal:K.default,isHexadecimal:fe.default,isOctal:re.default,isDivisibleBy:ue.default,isHexColor:Q.default,isRgbColor:ce.default,isHSL:Ae.default,isISRC:Be.default,isMD5:Me.default,isHash:Ie.default,isJWT:Ne.default,isJSON:bt.default,isEmpty:Tt.default,isLength:ar.default,isLocale:w.default,isByteLength:I.default,isUUID:D.default,isMongoId:O.default,isAfter:H.default,isBefore:F.default,isIn:z.default,isLuhnNumber:ie.default,isCreditCard:me.default,isIdentityCard:we.default,isEAN:Ee.default,isISIN:Vt.default,isISBN:Nt.default,isISSN:Xt.default,isMobilePhone:or.default,isMobilePhoneLocales:or.locales,isPostalCode:bn.default,isPostalCodeLocales:bn.locales,isEthereumAddress:Xn.default,isCurrency:lr.default,isBtcAddress:cr.default,isISO6346:ss.isISO6346,isFreightContainerID:ss.isFreightContainerID,isISO6391:xu.default,isISO8601:ka.default,isRFC3339:yu.default,isISO31661Alpha2:wu.default,isISO31661Alpha3:Su.default,isISO4217:ht.default,isBase32:Pt.default,isBase58:Lt.default,isBase64:Dn.default,isDataURI:zt.default,isMagnetURI:_t.default,isMailtoURI:ln.default,isMimeType:ur.default,isLatLong:st.default,ltrim:cn.default,rtrim:xn.default,trim:Nr.default,escape:Pr.default,unescape:Rn.default,stripLow:Lr.default,whitelist:as.default,blacklist:MS.default,isWhitelisted:IS.default,normalizeEmail:ES.default,toString,isSlug:DS.default,isStrongPassword:OS.default,isTaxID:Ut.default,isDate:v.default,isTime:b.default,isLicensePlate:RS.default,isVAT:TS.default,ibanLocales:he.locales};e.default=PS,n.exports=e.default,n.exports.default=e.default})(Ja,Ja.exports)),Ja.exports}var x4=b4();const Ph=d2(x4);function Bv(n){const e="The URL must be in a format like https://www.facebook.com/yourPage";if(!n)return"";if(n=n.replace(/(https?:\/\/)?(www\.)?facebook\.com/i,""),n.match(/^(http|\/\/)/i))throw new Error(e);if(n=n.replace(/^\//,""),n=`https://www.facebook.com/${n}`,!Ph.isURL(n))throw new Error(e);return n}const $v=n=>`https://www.facebook.com/${n}`,y4=n=>n.match(/(?:https:\/\/)(?:www\.)(?:facebook\.com)\/(?:#!\/)?(\w+\/?\S+)/i)?.[1]||null,md=/^x\.com\/([a-zA-Z0-9_]{1,15})$/;function Fv(n){if(!n)return"";if(n.match(md)||n.match(/([a-z\d.]+)/i)){let e=[];if(n.match(md)?[,e]=n.match(md):[e]=n.match(/([^/]+)\/?$/i),e.startsWith("@")&&(e=e.slice(1)),!e.match(/^[a-z\d_]{1,15}$/i))throw new Error("Your Username is not a valid Twitter Username");return`https://x.com/${e}`}else{const e="The URL must be in a format like https://x.com/yourUsername";throw new Error(e)}}const Hv=n=>`https://x.com/${n.replace("@","")}`,w4=n=>{const e=n.match(/(?:https:\/\/)(?:x\.com)\/(?:#!\/)?@?([^/]*)/)?.[1];return e?`@${e}`:null},S4=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c]=x.useState({}),[u,f]=Te(e,["facebook","twitter"]),[h,p]=x.useState(u?$v(u):""),[g,m]=x.useState(f?Hv(f):"");x.useEffect(()=>{p(u?$v(u):""),m(f?Hv(f):"")},[u,f]);const v=w=>{p(w);try{const S=Bv(w);a("facebook",y4(S)),t||o(!0),l.facebook&&c({...l,facebook:""})}catch(S){S instanceof Error&&c({...l,facebook:S.message}),a("facebook",null)}},b=w=>{m(w);try{const S=Fv(w);a("twitter",w4(S)),t||o(!0),l.twitter&&c({...l,twitter:""})}catch(S){S instanceof Error&&c({...l,twitter:S.message}),a("twitter",null)}},y=()=>{const w={};if(h)try{Bv(h)}catch(S){S instanceof Error&&(w.facebook=S.message)}if(g)try{Fv(g)}catch(S){S instanceof Error&&(w.twitter=S.message)}c(w),Object.keys(w).length===0&&i()};return d.jsx(Se,{description:"Link your social accounts for full structured data and rich card support",isEditing:t,keywords:n,navid:"social-accounts",saveState:r,testId:"social-accounts",title:"Social accounts",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:y,children:d.jsxs(Ye,{children:[d.jsx(tt,{error:!!l.facebook,hint:l.facebook,placeholder:"https://www.facebook.com/ghost",title:"URL of your publication's Facebook Page",value:h,onChange:w=>v(w.target.value)}),d.jsx(tt,{error:!!l.twitter,hint:l.twitter,placeholder:"https://x.com/ghost",title:"URL of your X profile",value:g,onChange:w=>b(w.target.value)})]})})},k4=Ce(S4,"Social accounts"),C4=[{name:"Pacific/Pago_Pago",label:"(GMT -11:00) Midway Island, Samoa"},{name:"Pacific/Honolulu",label:"(GMT -10:00) Hawaii"},{name:"America/Anchorage",label:"(GMT -9:00) Alaska"},{name:"America/Tijuana",label:"(GMT -8:00) Chihuahua, La Paz, Mazatlan"},{name:"America/Los_Angeles",label:"(GMT -8:00) Pacific Time (US & Canada); Tijuana"},{name:"America/Phoenix",label:"(GMT -7:00) Arizona"},{name:"America/Denver",label:"(GMT -7:00) Mountain Time (US & Canada)"},{name:"America/Costa_Rica",label:"(GMT -6:00) Central America"},{name:"America/Chicago",label:"(GMT -6:00) Central Time (US & Canada)"},{name:"America/Mexico_City",label:"(GMT -6:00) Guadalajara, Mexico City, Monterrey"},{name:"America/Regina",label:"(GMT -6:00) Saskatchewan"},{name:"America/Bogota",label:"(GMT -5:00) Bogota, Lima, Quito"},{name:"America/New_York",label:"(GMT -5:00) Eastern Time (US & Canada)"},{name:"America/Fort_Wayne",label:"(GMT -5:00) Indiana (East)"},{name:"America/Caracas",label:"(GMT -4:00) Caracas, La Paz"},{name:"America/Halifax",label:"(GMT -4:00) Atlantic Time (Canada); Greenland"},{name:"America/Santiago",label:"(GMT -4:00) Santiago"},{name:"America/St_Johns",label:"(GMT -3:30) Newfoundland"},{name:"America/Argentina/Buenos_Aires",label:"(GMT -3:00) Buenos Aires, Brasilia, Georgetown"},{name:"America/Noronha",label:"(GMT -2:00) Fernando de Noronha"},{name:"Atlantic/Azores",label:"(GMT -1:00) Azores"},{name:"Atlantic/Cape_Verde",label:"(GMT -1:00) Cape Verde Is."},{name:"Etc/UTC",label:"(GMT) UTC"},{name:"Africa/Casablanca",label:"(GMT +0:00) Casablanca, Monrovia"},{name:"Europe/Dublin",label:"(GMT +0:00) Dublin, Edinburgh, London"},{name:"Europe/Amsterdam",label:"(GMT +1:00) Amsterdam, Berlin, Rome, Stockholm, Vienna"},{name:"Europe/Prague",label:"(GMT +1:00) Belgrade, Bratislava, Budapest, Prague"},{name:"Europe/Paris",label:"(GMT +1:00) Brussels, Copenhagen, Madrid, Paris"},{name:"Europe/Warsaw",label:"(GMT +1:00) Sarajevo, Skopje, Warsaw, Zagreb"},{name:"Africa/Lagos",label:"(GMT +1:00) West Central Africa"},{name:"Europe/Athens",label:"(GMT +2:00) Athens, Beirut, Bucharest"},{name:"Africa/Cairo",label:"(GMT +2:00) Cairo, Egypt"},{name:"Africa/Maputo",label:"(GMT +2:00) Harare"},{name:"Europe/Kiev",label:"(GMT +2:00) Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius"},{name:"Asia/Jerusalem",label:"(GMT +2:00) Jerusalem"},{name:"Africa/Johannesburg",label:"(GMT +2:00) Pretoria"},{name:"Asia/Baghdad",label:"(GMT +3:00) Baghdad"},{name:"Asia/Riyadh",label:"(GMT +3:00) Kuwait, Nairobi, Riyadh"},{name:"Europe/Istanbul",label:"(GMT +3:00) Istanbul, Ankara"},{name:"Europe/Moscow",label:"(GMT +3:00) Moscow, St. Petersburg, Volgograd"},{name:"Asia/Tehran",label:"(GMT +3:30) Tehran"},{name:"Asia/Dubai",label:"(GMT +4:00) Abu Dhabi, Muscat"},{name:"Asia/Baku",label:"(GMT +4:00) Baku, Tbilisi, Yerevan"},{name:"Asia/Kabul",label:"(GMT +4:30) Kabul"},{name:"Asia/Karachi",label:"(GMT +5:00) Islamabad, Karachi, Tashkent"},{name:"Asia/Yekaterinburg",label:"(GMT +5:00) Yekaterinburg"},{name:"Asia/Kolkata",label:"(GMT +5:30) Chennai, Calcutta, Mumbai, New Delhi"},{name:"Asia/Kathmandu",label:"(GMT +5:45) Katmandu"},{name:"Asia/Almaty",label:"(GMT +6:00) Almaty, Novosibirsk"},{name:"Asia/Dhaka",label:"(GMT +6:00) Astana, Dhaka, Sri Jayawardenepura"},{name:"Asia/Rangoon",label:"(GMT +6:30) Rangoon"},{name:"Asia/Bangkok",label:"(GMT +7:00) Bangkok, Hanoi, Jakarta"},{name:"Asia/Krasnoyarsk",label:"(GMT +7:00) Krasnoyarsk"},{name:"Asia/Hong_Kong",label:"(GMT +8:00) Beijing, Chongqing, Hong Kong, Urumqi"},{name:"Asia/Irkutsk",label:"(GMT +8:00) Irkutsk, Ulaan Bataar"},{name:"Asia/Singapore",label:"(GMT +8:00) Kuala Lumpur, Perth, Singapore, Taipei"},{name:"Asia/Tokyo",label:"(GMT +9:00) Osaka, Sapporo, Tokyo"},{name:"Asia/Seoul",label:"(GMT +9:00) Seoul"},{name:"Asia/Yakutsk",label:"(GMT +9:00) Yakutsk"},{name:"Australia/Adelaide",label:"(GMT +9:30) Adelaide"},{name:"Australia/Darwin",label:"(GMT +9:30) Darwin"},{name:"Australia/Brisbane",label:"(GMT +10:00) Brisbane, Guam, Port Moresby"},{name:"Australia/Sydney",label:"(GMT +10:00) Canberra, Hobart, Melbourne, Sydney, Vladivostok"},{name:"Asia/Magadan",label:"(GMT +11:00) Magadan, Soloman Is., New Caledonia"},{name:"Pacific/Auckland",label:"(GMT +12:00) Auckland, Wellington"},{name:"Pacific/Fiji",label:"(GMT +12:00) Fiji, Kamchatka, Marshall Is."},{name:"Pacific/Kwajalein",label:"(GMT +12:00) International Date Line West"}],A4=({timezone:n})=>{const[e,t]=x.useState(Tg(n));return x.useEffect(()=>{const r=setInterval(()=>{t(Tg(n))},1e3);return()=>{clearInterval(r)}},[n]),d.jsxs(d.Fragment,{children:["The local time here is currently ",e]})},M4=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l]=Te(e,["timezone"]),c=C4.map(f=>({value:f.name,label:f.label})),u=f=>{a("timezone",f||null),o(!0)};return d.jsx(Se,{description:"Set the time and date of your publication, used for all published posts",hideEditButton:!0,isEditing:t,keywords:n,navid:"timezone",saveState:r,testId:"timezone",title:"Site timezone",onCancel:s,onEditingChange:o,onSave:i,children:d.jsx(Ye,{columns:1,children:d.jsx(yr,{hint:d.jsx(A4,{timezone:l}),options:c,selectedOption:c.find(f=>f.value===l),testId:"timezone-select",title:"Site timezone",isSearchable:!0,onSelect:f=>u(f?.value)})})})},I4=Ce(M4,"Site timezone"),E4=({keywords:n})=>{const{errors:e,localSettings:t,isEditing:r,saveState:i,focusRef:s,clearError:a,handleSave:o,handleCancel:l,updateSetting:c,handleEditingChange:u}=Ot({onValidate:()=>f?f.length<4?{title:"Please use a site title longer than 3 characters."}:f.length>63?{title:"Please use a site title shorter than 63 characters."}:{}:{title:"Please enter a site title."}}),[f,h]=Te(t,["title","description"]),p=b=>{c("title",b.target.value)},g=b=>{c("description",b.target.value)},m=d.jsx(Ye,{columns:2,values:[{heading:"Site title",key:"site-title",value:f},{heading:"Site description",key:"site-description",value:h}]}),v=d.jsxs(Ye,{children:[d.jsx(tt,{error:!!e.title,hint:e.title||"The name of your site",inputRef:s,maxLength:63,placeholder:"Site title",title:"Site title",value:f,onChange:p,onKeyDown:()=>a("title")}),d.jsx(tt,{hint:"A short description, used in your theme, meta data and search results",maxLength:200,placeholder:"Site description",title:"Site description",value:h,onChange:g})]});return d.jsx(Se,{description:"The details used to identify your publication around the web",isEditing:r,keywords:n,navid:"general",saveState:i,testId:"title-and-description",title:"Title & description",onCancel:l,onEditingChange:u,onSave:o,children:r?v:m})},D4=Ce(E4,"Title & description"),R4=({user:n})=>{const{updateRoute:e}=be(),{currentUser:t}=Le(),r=()=>{ws(t)&&e({route:`staff/${n.slug}`})};return n?d.jsxs("div",{className:_("group flex gap-3",ws(t)&&"cursor-pointer"),"data-testid":"owner-user",onClick:r,children:[d.jsx(zf,{bgColor:Rh(n.name?n.name:n.email),image:n.profile_image??void 0,label:Yw(n.name),labelColor:"white",size:"lg"}),d.jsxs("div",{className:"flex flex-col",children:[d.jsxs("span",{children:[n.name," — ",d.jsx("strong",{children:"Owner"})," ",ws(t)&&d.jsx("button",{className:"ml-2 inline-block text-sm font-bold text-green group-hover:visible md:invisible",type:"button",children:"View profile"})]}),d.jsx("span",{className:"text-xs text-grey-700",children:n.email})]})]}):null},jl=({users:n,groupname:e})=>{const{updateRoute:t}=be(),{currentUser:r}=Le(),i=s=>{t({route:`staff/${s.slug}`})};return!n||!n.length?d.jsxs(ei,{icon:"single-user-block",children:["No ",e," found."]}):d.jsx(Yi,{titleSeparator:!1,children:n.map(s=>{let a=s.name||"";s.status==="inactive"&&(a=`${a} (Suspended)`);const o=ws(r)||ab(r)&&f2(s)||r.id===s.id;return d.jsx(Zc,{action:o&&d.jsx(ne,{color:"green",label:"Edit",link:!0,onClick:()=>i(s)}),avatar:d.jsx(zf,{bgColor:Rh(s.name?s.name:s.email),image:s.profile_image??void 0,label:Yw(s.name),labelColor:"white"}),bgOnHover:o,className:"min-h-[64px]",detail:s.email,hideActions:!0,id:`list-item-${s.id}`,separator:!1,testId:"user-list-item",title:a,onClick:()=>o&&i(s)},s.id)})})},O4=({invite:n})=>{const[e,t]=x.useState(""),[r,i]=x.useState(""),{mutateAsync:s}=t_(),{mutateAsync:a}=e_(),o=gt();let l="Revoke";e==="progress"&&(l="Revoking...");let c="Resend";return r==="progress"&&(c="Resending..."),d.jsxs("div",{className:"flex gap-2",children:[d.jsx(ne,{color:"red",label:l,link:!0,onClick:async()=>{try{t("progress"),await s(n.id),pn({title:"Invitation revoked",message:n.email,type:"success"})}catch(u){o(u)}finally{t("")}}}),d.jsx(ne,{className:"ml-2",color:"green",label:c,link:!0,onClick:async()=>{try{i("progress"),await s(n.id),await a({email:n.email,roleId:n.role_id}),pn({title:"Invitation resent",message:n.email,type:"success"})}catch(u){o(u)}finally{i("")}}})]})},T4=({users:n})=>!n||!n.length?d.jsx(ei,{icon:"single-user-block",children:"No invitations found."}):d.jsx(Yi,{children:n.map(e=>d.jsx(Zc,{action:d.jsx(O4,{invite:e}),avatar:d.jsx(zf,{bgColor:Rh(e.email),image:"",label:e.email.charAt(0).toUpperCase(),labelColor:"white"}),className:"min-h-[64px]",detail:e.role,hideActions:!0,id:`list-item-${e.id}`,separator:!1,testId:"user-invite",title:e.email,onClick:()=>{}},e.id))}),N4=({keywords:n,highlight:e=!0})=>{const{totalUsers:t,totalInvites:r,users:i,ownerUser:s,adminUsers:a,editorUsers:o,authorUsers:l,contributorUsers:c,invites:u,hasNextPage:f,fetchNextPage:h,invitesHasNextPage:p,fetchNextInvitePage:g}=Gw(),{updateRoute:m}=be(),{settings:v,config:b,currentUser:y}=Le(),w=()=>{m("staff/invite")},S=d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Invite people",size:"sm",linkWithPadding:!0,onClick:()=>{w()}}),k=Jw().getParam("tab"),A=k||"administrators",[C,E]=x.useState(A);x.useEffect(()=>{k&&E(k)},[k]);const M=L=>{m(`staff?tab=${L}`),E(L)},R=[{id:"administrators",title:"Administrators",contents:d.jsx(jl,{groupname:"administrators",users:a}),counter:a.length?a.length:void 0},{id:"editors",title:"Editors",contents:d.jsx(jl,{groupname:"editors",users:o}),counter:o.length?o.length:void 0},{id:"authors",title:"Authors",contents:d.jsx(jl,{groupname:"authors",users:l}),counter:l.length?l.length:void 0},{id:"contributors",title:"Contributors",contents:d.jsx(jl,{groupname:"contributors",users:c}),counter:c.length?c.length:void 0},{id:"invited",title:"Invited",contents:d.jsx(T4,{users:u}),counter:r||void 0}],T=rb(v,"require_email_mfa")||!1,{mutateAsync:N}=Xr(),P=gt();return d.jsxs(Se,{customButtons:S,highlightOnModalClose:e,keywords:n,navid:"staff",testId:"users",title:"Staff",children:[d.jsx(R4,{user:s}),(i.length>1||u.length>0)&&d.jsx(Kn,{selectedTab:C,tabs:R,testId:"user-tabview",onTabChange:M}),f&&C!=="invited"&&d.jsx(ne,{label:`Load more (showing ${i.length}/${t} users)`,link:!0,onClick:()=>h()}),p&&C==="invited"&&d.jsx(ne,{label:`Load more (showing ${u.length}/${r} invites)`,link:!0,onClick:()=>g()}),b?.security?.staffDeviceVerification&&ws(y)&&d.jsxs("div",{className:`flex flex-col gap-6 ${i.length>1||u.length>0?"-mt-6":""}`,children:[d.jsx(Ct,{}),d.jsxs("div",{className:"flex items-baseline justify-between",children:[d.jsxs("div",{className:"flex flex-col",children:[d.jsx("span",{className:"text-[1.5rem] font-semibold tracking-tight",children:"Security settings"}),d.jsx("span",{children:"Require email 2FA codes to be used on all staff logins"})]}),d.jsx(rn,{checked:T,direction:"rtl",gap:"gap-0",onChange:async()=>{const L=!T;try{await N([{key:"require_email_mfa",value:L}])}catch($){P($)}}})]})]})]})},mS=Ce(N4,"Staff"),ot={titleAndDescription:["general","title and description","site title","site description","title & description"],timeZone:["general","time","date","site timezone","time zone"],publicationLanguage:["general","publication language","locale"],users:["general","users and permissions","roles","staff","invite people","contributors","editors","authors","administrators"],metadata:["general","metadata","title","description","search","engine","google","meta data","twitter card","structured data","rich cards","x card","social","facebook card"],socialAccounts:["general","social accounts","facebook","twitter","structured data","rich cards"],lockSite:["general","password protection","lock site","make this site private"],analytics:["membership","analytics","tracking","privacy","membership"]},P4=()=>d.jsxs(rs,{keywords:Object.values(ot).flat(),title:"General settings",children:[d.jsx(D4,{keywords:ot.titleAndDescription}),d.jsx(I4,{keywords:ot.timeZone}),d.jsx($_,{keywords:ot.publicationLanguage}),d.jsx(mS,{keywords:ot.users}),d.jsx(U_,{keywords:ot.metadata}),d.jsx(k4,{keywords:ot.socialAccounts}),d.jsx(N_,{keywords:ot.analytics}),d.jsx(L_,{keywords:ot.lockSite})]}),L4=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("embed-signup-form/show")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Embed",size:"sm",onClick:t}),description:"Grow your audience from anywhere on the web",keywords:n,navid:"embed-signup-form",testId:"embed-signup-form",title:"Signup forms"})},gS=""+new URL("explore-default-logo-DyP-dkSK.png",import.meta.url).href,_4=""+new URL("ghost-explore-afOk0g_6.png",import.meta.url).href,j4=({keywords:n})=>{const{settings:e}=Le(),{mutateAsync:t}=Xr(),r=gt(),{updateRoute:i}=be(),{refetch:s}=ib({searchParams:{limit:"1"}}),[a,o]=x.useState(0);x.useEffect(()=>{(async()=>{const{data:k}=await s(),A=k?.meta?.pagination?.total||0;o(A)})()},[s]);const[l,c]=Te(e,["accent_color","icon"]),{localSettings:u,siteData:f}=Ot(),[h,p]=Te(u,["title","description"]),[g]=Te(e,["explore_ping"]),[m]=Te(e,["explore_ping_growth"]),v=f?.url,b=v?.replace(/^https?:\/\//,"").replace(/\/?$/,""),y=l||"#F6414E",w=async(S,k)=>{const A=[{key:S,value:k.target.checked}];try{await t(A)}catch(C){r(C)}};return d.jsx(Se,{customButtons:d.jsx(rn,{checked:g,direction:"rtl",testId:"explore-toggle",onChange:S=>w("explore_ping",S)}),description:"Promote your site across Ghost's website and publishing network",keywords:n,navid:"explore",testId:"explore",title:"Ghost Explore",children:g?d.jsxs(Ye,{columns:1,children:[d.jsx(Ct,{}),d.jsx(rn,{checked:m,containerClasses:"!items-center",direction:"rtl",gap:"gap-0",hint:"Enabling this will use your revenue/member growth data to rank your site more highly on Ghost Explore. Total member count will be displayed publicly, other data will be kept private.",label:"Share growth data to rank higher?",labelClasses:"w-full",testId:"explore-growth-toggle",onChange:S=>w("explore_ping_growth",S)}),d.jsx("div",{className:"-mx-5 -mb-5 flex flex-col items-center bg-grey-75 px-7 py-10 md:-mx-7 md:-mb-7","data-testid":"explore-preview",children:d.jsxs("div",{className:"relative w-full max-w-[320px] rounded-lg bg-white p-6 text-black shadow-lg",children:[d.jsx("div",{className:"absolute right-3 top-2.5 text-xs uppercase text-grey-300",children:"Preview"}),c?d.jsx("div",{className:"size-9 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${c})`}}):d.jsx("div",{className:"flex aspect-square size-10 items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:y},children:d.jsx("img",{className:"h-auto w-8",src:gS})}),d.jsx("div",{className:"mt-3 text-lg font-semibold tracking-tight",children:h}),p&&d.jsx("div",{className:"mt-1.5 text-sm leading-tight text-grey-700",children:p}),d.jsxs("a",{className:"group mt-8 flex h-6 w-full items-center justify-between gap-5 hover:cursor-pointer",href:v,rel:"noopener noreferrer",target:"_blank",children:[d.jsx("span",{className:"text-sm font-semibold",children:b}),m?d.jsxs("span",{className:"rounded-sm bg-black px-2 py-0.5 text-xs font-semibold text-white","data-testid":"explore-members-count",children:[h2(a)," ",a===1?"member":"members"]}):d.jsx("span",{className:"flex size-5 items-center justify-center rounded-full border border-black text-black group-hover:bg-black group-hover:text-white",children:d.jsx(ge,{name:"arrow-right",size:10})})]})]})}),d.jsxs("div",{className:"-mx-5 -mb-5 flex items-center justify-between gap-4 rounded-b-xl border-t border-[rgba(142,66,255,0.1)] bg-gradient-to-tr from-[rgba(142,66,255,0.07)] to-[rgba(142,66,255,0.02)] p-6 px-7 md:-mx-7 md:-mb-7",children:[d.jsxs("div",{className:"flex flex-col",children:[d.jsx("span",{className:"font-medium",children:"Get featured on the Ghost.org homepage"}),d.jsx("span",{className:"text-pretty text-sm text-black/80 dark:text-white/80",children:"Send us a quote we can use to highlight your site"})]}),d.jsx(ne,{className:"border border-purple bg-white text-purple hover:bg-purple/5 hover:text-purple dark:bg-transparent",icon:"send",label:"Send testimonial",onClick:()=>{i("explore/testimonial")}})]})]}):d.jsx("img",{src:_4})})},B4=Ce(j4,"Ghost Explore"),$4=""+new URL("network-BsaAQxl3.png",import.meta.url).href,F4=({keywords:n})=>{const{settings:e}=Le(),{mutateAsync:t}=Xr(),r=gt(),{updateRoute:i}=be(),a=ya()?.isDisabled("limitSocialWeb"),{subdir:o}=xd(),[l]=Te(e,["is_private"]),c=!!o,u=["localhost","127.0.0.1","::1"].includes(window.location.hostname),f=Ph.isIP(window.location.hostname),h=a||c||u||f,p=!!l,g=h||p,[m]=Te(e,["social_web"]),v=!!m&&!g,b=async y=>{const w=[{key:"social_web",value:y.target.checked}];try{await t(w)}catch(S){r(S)}};return d.jsx(Se,{customButtons:d.jsx(rn,{checked:v,direction:"rtl",disabled:g,onChange:b},`${v}-${g}`),description:"Distribute posts to the social web, so people can discover and follow your content across BlueSky, Threads, Mastodon, Flipboard, WordPress, and more.",keywords:n,navid:"network",testId:"network",title:"Network",children:d.jsxs(d.Fragment,{children:[d.jsx(Ye,{columns:1,values:[{key:"private",value:g&&d.jsxs("div",{className:"flex w-full gap-1.5 rounded-md border border-grey-200 bg-grey-75 p-3 text-sm dark:border-grey-900 dark:bg-grey-925",children:[d.jsx(ge,{name:"info",size:16}),d.jsx("div",{className:"-mt-0.5",children:p?d.jsxs(d.Fragment,{children:["Network is automatically disabled while your site is in ",d.jsx("span",{className:"cursor-pointer text-green",onClick:()=>i("locksite"),children:"private mode"})]}):d.jsxs(d.Fragment,{children:["You need to configure a supported custom domain to use this feature. ",d.jsx("a",{className:"text-green",href:"https://ghost.org/help/social-web/#custom-domain-required",rel:"noopener noreferrer",target:"_blank",children:"Help →"})]})})]})}]}),d.jsx("div",{className:"-mx-5 -mb-5 overflow-hidden rounded-b-xl md:-mx-7 md:-mb-7",children:d.jsx("img",{className:"dark:opacity-90",src:$4})})]})})},H4=Ce(F4,"Network"),Vv=[{isoCode:"USD",name:"United States dollar"},{isoCode:"EUR",name:"Euro"},{isoCode:"GBP",name:"Pound sterling"},{isoCode:"AUD",name:"Australian dollar"},{isoCode:"CAD",name:"Canadian dollar"},{isoCode:"AED",name:"United Arab Emirates dirham"},{isoCode:"AFN",name:"Afghan afghani"},{isoCode:"ALL",name:"Albanian lek"},{isoCode:"AMD",name:"Armenian dram"},{isoCode:"ANG",name:"Netherlands Antillean guilder"},{isoCode:"AOA",name:"Angolan kwanza"},{isoCode:"ARS",name:"Argentine peso"},{isoCode:"AWG",name:"Aruban florin"},{isoCode:"AZN",name:"Azerbaijani manat"},{isoCode:"BAM",name:"Bosnia and Herzegovina convertible mark"},{isoCode:"BBD",name:"Barbados dollar"},{isoCode:"BDT",name:"Bangladeshi taka"},{isoCode:"BGN",name:"Bulgarian lev"},{isoCode:"BMD",name:"Bermudian dollar"},{isoCode:"BND",name:"Brunei dollar"},{isoCode:"BOB",name:"Boliviano"},{isoCode:"BRL",name:"Brazilian real"},{isoCode:"BSD",name:"Bahamian dollar"},{isoCode:"BWP",name:"Botswana pula"},{isoCode:"BZD",name:"Belize dollar"},{isoCode:"CDF",name:"Congolese franc"},{isoCode:"CHF",name:"Swiss franc"},{isoCode:"CNY",name:"Chinese yuan"},{isoCode:"COP",name:"Colombian peso"},{isoCode:"CRC",name:"Costa Rican colon"},{isoCode:"CVE",name:"Cape Verdean escudo"},{isoCode:"CZK",name:"Czech koruna"},{isoCode:"DKK",name:"Danish krone"},{isoCode:"DOP",name:"Dominican peso"},{isoCode:"DZD",name:"Algerian dinar"},{isoCode:"EGP",name:"Egyptian pound"},{isoCode:"ETB",name:"Ethiopian birr"},{isoCode:"FJD",name:"Fiji dollar"},{isoCode:"FKP",name:"Falkland Islands pound"},{isoCode:"GEL",name:"Georgian lari"},{isoCode:"GIP",name:"Gibraltar pound"},{isoCode:"GMD",name:"Gambian dalasi"},{isoCode:"GTQ",name:"Guatemalan queztal"},{isoCode:"GYD",name:"Guyanese dollar"},{isoCode:"HKD",name:"Hong Kong dollar"},{isoCode:"HNL",name:"Honduran lempira"},{isoCode:"HRK",name:"Croation kuna"},{isoCode:"HTG",name:"Haitian gourde"},{isoCode:"HUF",name:"Hungarian forint"},{isoCode:"IDR",name:"Indonesian rupiah"},{isoCode:"ILS",name:"Israeli new shekel"},{isoCode:"INR",name:"Indian rupee"},{isoCode:"ISK",name:"Icelandic króna"},{isoCode:"JMD",name:"Jamaican dollar"},{isoCode:"KES",name:"Kenyan shilling"},{isoCode:"KGS",name:"Kyrgyzstani som"},{isoCode:"KHR",name:"Cambodian riel"},{isoCode:"KYD",name:"Cayman Islands dollar"},{isoCode:"KZT",name:"Kazakhstani tenge"},{isoCode:"LAK",name:"Lao kip"},{isoCode:"LBP",name:"Lebanese pound"},{isoCode:"LKR",name:"Sri Lankan rupee"},{isoCode:"LRD",name:"Liberian dollar"},{isoCode:"LSL",name:"Lesotho loti"},{isoCode:"MAD",name:"Moroccan dirham"},{isoCode:"MDL",name:"Moldovan leu"},{isoCode:"MKD",name:"Macedonian denar"},{isoCode:"MMK",name:"Myanmar kyat"},{isoCode:"MNT",name:"Mongolian tögrög"},{isoCode:"MOP",name:"Macanese pataca"},{isoCode:"MRO",name:"Mauritanian ouguiya"},{isoCode:"MUR",name:"Mauritian rupee"},{isoCode:"MVR",name:"Maldivian rufiyaa"},{isoCode:"MWK",name:"Malawian kwacha"},{isoCode:"MXN",name:"Mexican peso"},{isoCode:"MYR",name:"Malaysian ringgit"},{isoCode:"MZN",name:"Mozambican metical"},{isoCode:"NAD",name:"Namibian dollar"},{isoCode:"NGN",name:"Nigerian naira"},{isoCode:"NIO",name:"Nicaraguan córdoba"},{isoCode:"NOK",name:"Norwegian krone"},{isoCode:"NPR",name:"Nepalese rupee"},{isoCode:"NZD",name:"New Zealand dollar"},{isoCode:"PAB",name:"Panamanian balboa"},{isoCode:"PEN",name:"Peruvian sol"},{isoCode:"PGK",name:"Papua New Guinean kina"},{isoCode:"PHP",name:"Philippine peso"},{isoCode:"PKR",name:"Pakistani rupee"},{isoCode:"PLN",name:"Polish złoty"},{isoCode:"QAR",name:"Qatari riyal"},{isoCode:"RON",name:"Romanian leu"},{isoCode:"RSD",name:"Serbian dinar"},{isoCode:"RUB",name:"Russian ruble"},{isoCode:"SAR",name:"Saudi riyal"},{isoCode:"SBD",name:"Solomon Islands dollar"},{isoCode:"SCR",name:"Seychelles rupee"},{isoCode:"SEK",name:"Swedish krona"},{isoCode:"SGD",name:"Singapore dollar"},{isoCode:"SHP",name:"Saint Helena pound"},{isoCode:"SLL",name:"Sierra Leonean leone"},{isoCode:"SOS",name:"Somali shilling"},{isoCode:"SRD",name:"Surinamese dollar"},{isoCode:"STD",name:"São Tomé and Príncipe dobra"},{isoCode:"SZL",name:"Salvadoran colón"},{isoCode:"THB",name:"Thai baht"},{isoCode:"TJS",name:"Tajikistani somoni"},{isoCode:"TOP",name:"Tongan paʻanga"},{isoCode:"TRY",name:"Turkish lira"},{isoCode:"TTD",name:"Trinidad and Tobago dollar"},{isoCode:"TWD",name:"New Taiwan dollar"},{isoCode:"TZS",name:"Tanzanian shilling"},{isoCode:"UAH",name:"Ukrainian hryvnia"},{isoCode:"UYU",name:"Uruguayan peso"},{isoCode:"UZS",name:"Uzbekistan som"},{isoCode:"WST",name:"Samoan tala"},{isoCode:"XCD",name:"East Caribbean dollar"},{isoCode:"YER",name:"Yemeni rial"},{isoCode:"ZAR",name:"South African rand"},{isoCode:"ZMW",name:"Zambian kwacha"}];function V4(){return{top:Vv.slice(0,5),other:Vv.slice(5)}}function Uv({showName:n=!1}={}){return Object.values(V4()).map((e,t)=>({label:"—",key:t.toString(),options:e.map(({isoCode:r,name:i})=>({value:r,label:n?`${r} - ${i}`:r}))}))}function Qs(n){return n?Intl.NumberFormat("en",{currency:n,style:"currency"}).format(0).replace(/[\d\s.]/g,""):""}function Bi(n){return n/100}function U4(n){switch(n?.toUpperCase()){case"AED":return 4;case"BGN":return 2;case"CZK":return 30;case"DKK":return 5;case"HKD":return 8;case"HUF":return 250;case"JPY":return 100;case"MXN":return 20;case"MYR":return 4;case"NOK":return 6;case"PLN":return 4;case"RON":return 4;case"SEK":return 6;case"THB":return 20;default:return 1}}function z4(n,e,{allowZero:t=!0,maxAmount:r}={}){if(n===void 0||!e)return;const i=Qs(e),s=U4(e);if(!t&&n===0)return`Amount must be at least ${i}${s}.`;if(n!==0&&n<s*100)return`Non-zero amount must be at least ${i}${s}.`;if(r&&n!==0&&n>r*100)return`Suggested amount cannot be more than ${i}${r}.`}const vS=n=>{const e="/ghost/#/members",t=`offer_redemptions:[${n}]`;return`${e}?filter=${encodeURIComponent(t)}`},W4=n=>n==="month"?"monthly":"yearly",q4=n=>n==="once"?"First payment":n==="repeating"?"Repeating":"Forever",bS=(n,e,t,r,i)=>{let s="",a="";const o=t==="month"?i?.monthly_price??0:i?.yearly_price??0;let l=o;const c=h=>parseFloat(h.toFixed(2));let u=Qs(r)+kn(c(Bi(o)));switch(n){case"percent":s="text-green",a=e+"% off",l=o-o*e/100;break;case"fixed":s="text-blue",a=kn(c(Bi(e)))+" "+r+" off",l=o-e;break;case"trial":s="text-pink",a=e+" days free",u="";break}l<0&&(l=0);const f=Qs(r)+kn(c(Bi(l)));return{discountColor:s,discountOffer:a,originalPriceWithCurrency:u,updatedPriceWithCurrency:f}},xS=({offerCode:n})=>{const[e,t]=x.useState(!1),{siteData:r}=Le(),i=s=>{s?.stopPropagation();const a=`${p2(r)}${n}`;navigator.clipboard.writeText(a),t(!0),setTimeout(()=>t(!1),2e3)};return d.jsx(Uf,{containerClassName:"group-hover:opacity-100 opacity-0 inline-flex items-center -mr-1 justify-center leading-none w-5 h-5",content:e?"Copied":"Copy link",size:"sm",children:d.jsx(ne,{color:"clear",hideLabel:!0,icon:e?"check-circle":"hyperlink-circle",iconColorClass:e?"text-green w-[14px] h-[14px]":"w-[14px] h-[14px]",label:e?"Copied":"Copy",unstyled:!0,onClick:i})})},zv=({title:n="No offers found",description:e,buttonAction:t,buttonLabel:r})=>d.jsxs("div",{className:"flex h-full grow flex-col items-center justify-center text-center",children:[d.jsx(ge,{className:"-mt-14",colorClass:"text-grey-700 -mt-6",name:"tags-block",size:"xl"}),d.jsx("h1",{className:"mt-6 text-2xl",children:n}),d.jsx("p",{className:"mt-3 max-w-[420px] text-[1.6rem]",children:e}),d.jsx(ne,{className:"mt-8",color:"grey",label:r,onClick:t})]}),P6=()=>{const n=ir(),{updateRoute:e}=be(),{data:{offers:t=[]}={},isFetching:r}=Zw(),{data:{tiers:i}={}}=$c(),s=t.filter(k=>k.redemption_type==="signup"),a=s.filter(k=>{const A=i?.find(C=>C.id===k?.tier.id);return k.status==="active"&&A&&A.active===!0}),o=s.filter(k=>{const A=i?.find(C=>C.id===k?.tier.id);return k.status==="archived"||A&&A.active===!1});let l=[{id:"active",title:"Active"},{id:"archived",title:"Archived"}];const{sortingState:c,setSortingState:u}=OL(),f=c?.find(k=>k.type==="offers"),[h,p]=x.useState("active"),g=f?.option||"date-added",m=f?.direction||"desc",v=k=>{sessionStorage.setItem("editOfferPageSource","offersIndex"),e(`offers/edit/${k}`)},b=s.sort((k,A)=>{const C=m==="desc"?-1:1;switch(g){case"name":return C*k.name.localeCompare(A.name);case"redemptions":return C*(k.redemption_count-A.redemption_count);default:return C*((k.created_at?new Date(k.created_at).getTime():0)-(A.created_at?new Date(A.created_at).getTime():0))}}),y=lb(i||[]),w=d.jsx("div",{className:"overflow-x-auto",children:d.jsxs("table",{className:"m-0 w-full",children:[h==="active"&&a.length>0||h==="archived"&&o.length>0?d.jsxs("tr",{className:"border-b border-b-grey-300 dark:border-grey-800",children:[d.jsxs("th",{className:"px-5 py-2.5 pl-0 text-xs font-normal text-grey-700",children:[h==="active"?a.length:o.length," ",h==="active"?a.length!==1?"offers":"offer":o.length!==1?"offers":"offer"]}),d.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Terms"}),d.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Price"}),d.jsx("th",{className:"px-5 py-2.5 text-xs font-normal text-grey-700",children:"Redemptions"}),d.jsx("th",{className:"min-w-[80px] px-5 py-2.5 pr-0 text-xs font-normal text-grey-700"})]}):null,b.filter(k=>{const A=i?.find(C=>C.id===k?.tier.id);return h==="active"&&k.status==="active"&&A&&A.active===!0||h==="archived"&&(k.status==="archived"||A&&A.active===!1)}).map(k=>{const A=i?.find(T=>T.id===k?.tier.id);if(!A)return null;const C=A?.active===!1,{discountOffer:E,originalPriceWithCurrency:M,updatedPriceWithCurrency:R}=bS(k.type,k.amount,k.cadence,k.currency||"USD",A);return d.jsxs("tr",{className:"group relative scale-100 border-b border-b-grey-200 dark:border-grey-800","data-testid":"offer-item",children:[d.jsx("td",{className:`${C?"opacity-50":""} p-0`,children:d.jsxs("a",{className:`block ${C?"cursor-default select-none":"cursor-pointer"} p-5 pl-0`,onClick:C?()=>{}:()=>v(k?.id?k.id:""),children:[d.jsx("span",{className:"font-semibold",children:k?.name}),d.jsx("br",{}),d.jsxs("span",{className:"text-sm text-grey-700",children:[A.name," ",W4(k.cadence)]})]})}),d.jsx("td",{className:`${C?"opacity-50":""} whitespace-nowrap p-0 text-sm`,children:d.jsxs("a",{className:`block ${C?"cursor-default select-none":"cursor-pointer"} p-5`,onClick:C?()=>{}:()=>v(k?.id?k.id:""),children:[d.jsx("span",{className:"text-[1.3rem] font-medium uppercase",children:E}),d.jsx("br",{}),d.jsx("span",{className:"text-grey-700",children:k.type!=="trial"?q4(k.duration):"Trial period"})]})}),d.jsx("td",{className:`${C?"opacity-50":""} whitespace-nowrap p-0 text-sm`,children:d.jsxs("a",{className:`block ${C?"cursor-default select-none":"cursor-pointer"} p-5`,onClick:C?()=>{}:()=>v(k?.id?k.id:""),children:[d.jsx("span",{className:"font-medium",children:R})," ",k.type!=="trial"?d.jsx("span",{className:'relative text-xs text-grey-700 before:absolute before:-inset-x-0.5 before:top-1/2 before:rotate-[-20deg] before:border-t before:content-[""]',children:M}):null]})}),d.jsx("td",{className:`${C?"opacity-50":""} w-[120px] whitespace-nowrap p-0 text-sm`,children:d.jsx("a",{className:`block ${C?"cursor-default select-none":"cursor-pointer"} p-5 ${k.redemption_count===0?"":"hover:underline"}`,href:k.redemption_count>0?vS(k.id?k.id:""):void 0,onClick:k.redemption_count===0?C?()=>{}:()=>v(k?.id?k.id:""):()=>{},children:k.redemption_count})}),d.jsx("td",{className:`${C?"opacity-50":""} w-[120px] whitespace-nowrap p-5 pr-8 text-right text-sm leading-none`,children:C?null:d.jsx(xS,{offerCode:k.code})}),C?d.jsxs("div",{className:"absolute right-0 top-[11px] whitespace-nowrap rounded-sm bg-black px-2 py-0.5 text-xs leading-normal text-white opacity-0 transition-all group-hover:opacity-100 dark:bg-grey-950",children:["This offer is disabled, because ",d.jsx("br",{})," it is tied to an archived tier."]}):null]})})]})}),S=[{key:"cancel-modal",label:"Close",onClick:()=>{n.remove(),e("offers")}},{key:"new-offer",icon:"add",label:"New offer",color:"green",onClick:()=>{y.length===0?pn({type:"info",title:"You must have an active tier to create an offer."}):e("offers/new")}}];return d.jsx(Or,{afterClose:()=>{e("offers")},animate:!1,backDropClick:!1,cancelLabel:"",footer:!1,height:"full",size:"lg",testId:"offers-modal",title:"Offers",topRightContent:d.jsx(Ns,{buttons:S}),width:1140,children:d.jsxs("div",{className:"flex h-full flex-col pt-8",children:[d.jsx("header",{children:d.jsx(Kn,{selectedTab:h,tabs:l,topRightContent:h==="active"&&a.length>0||h==="archived"&&o.length>0?d.jsx("div",{className:"pt-1",children:d.jsx(fD,{direction:m,items:[{id:"date-added",label:"Date added",selected:g==="date-added",direction:m},{id:"name",label:"Name",selected:g==="name",direction:m},{id:"redemptions",label:"Redemptions",selected:g==="redemptions",direction:m}],position:"end",triggerButtonProps:{link:!0},onDirectionChange:k=>{u?.([{type:"offers",option:g,direction:k==="asc"?"desc":"asc"}])},onSortChange:k=>{u?.([{type:"offers",option:k,direction:m}])}})}):null,onTabChange:p})}),h==="active"&&a.length===0&&!r?d.jsx(zv,{buttonAction:()=>e("offers/new"),buttonLabel:"Create an offer",description:"Grow your audience with discounts or free trials."}):null,h==="archived"&&o.length===0&&!r?d.jsx(zv,{buttonAction:()=>p("active"),buttonLabel:"Back to active",description:"All archived offers will be shown here."}):null,w]})})},G4=({offerTitle:n,tier:e,cadence:t,redemptions:r,type:i,amount:s,currency:a,offerId:o,offerCode:l,goToOfferEdit:c})=>{const{discountOffer:u}=bS(i,s,t,a||"USD",e);return d.jsxs("div",{className:"group flex h-full cursor-pointer flex-col justify-between gap-4 break-words rounded-sm border border-transparent bg-grey-100 p-5 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[187px] dark:bg-grey-950 dark:hover:border-grey-800",onClick:()=>c(o),children:[d.jsx("span",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n}),d.jsxs("div",{className:"flex flex-col",children:[d.jsx("span",{className:"text-sm font-semibold uppercase",children:u}),d.jsxs("div",{className:"flex gap-1 text-xs",children:[d.jsx("span",{className:"font-semibold",children:e.name}),d.jsx("span",{className:"text-grey-700",children:t==="month"?"monthly":"yearly"})]}),d.jsxs("div",{className:"mt-2 flex items-end justify-between",children:[d.jsxs("a",{className:`text-xs text-grey-700 hover:text-black ${r===0?"pointer-events-none":"hover:underline"}`,"data-test-offer":n,href:vS(o),children:[kn(r)," ",r===1?"redemption":"redemptions"]}),d.jsx(xS,{offerCode:l})]})]})]})},K4=({keywords:n})=>{const{updateRoute:e}=be(),{settings:t,config:r}=Le(),{data:{offers:i=[]}={}}=Zw(),{data:{tiers:s}={}}=$c(),a=lb(s||[]),o=i.filter(b=>b.redemption_type==="signup"),l=o.map(b=>({...b,tier:a.find(y=>y.id===b.tier.id)})).filter(b=>b.status==="active"&&!!b.tier);l.sort((b,y)=>{const w=b.created_at?new Date(b.created_at):new Date(0);return(y.created_at?new Date(y.created_at):new Date(0)).getTime()-w.getTime()});const c=l.slice(0,3),u=()=>{e("offers/edit")},f=()=>{e("offers/new")},h=()=>{e("/tiers")},p=b=>{sessionStorage.setItem("editOfferPageSource","offers"),e(`offers/edit/${b}`)};let g="Manage offers",m=u,v="Learn more";return o.length>0?(g="Manage offers",m=u):a.length===0&&o.length===0?(g="",m=h,v=""):a.length>0&&o.length===0&&(g="Add offer",m=f),d.jsxs(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",disabled:!Qn(t,r),label:g,size:"sm",onClick:m}),description:d.jsxs(d.Fragment,{children:["Create discounts & coupons to boost new subscriptions. ",o.length===0&&d.jsx(d.Fragment,{children:d.jsx("a",{className:"text-green",href:"https://ghost.org/help/offers",rel:"noopener noreferrer",target:"_blank",children:v})})]}),keywords:n,navid:"offers",testId:"offers",title:"Offers",children:[c.length>0?d.jsxs("div",{children:[d.jsx("div",{className:"grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:c.map(b=>d.jsx(G4,{amount:b.amount,cadence:b.cadence,currency:b.currency||"USD",goToOfferEdit:p,offerCode:b.code,offerId:b.id,offerTitle:b.name,redemptions:b.redemption_count,tier:b.tier,type:b.type},b.id))}),o.length>3&&d.jsx("div",{className:"mt-4 border-t border-t-grey-200 pt-2",children:d.jsxs("span",{className:"text-xs text-grey-700 dark:text-grey-600",children:[o.length," offers in total"]})})]}):null,a.length===0&&o.length===0?d.jsxs("div",{children:[d.jsx("span",{children:"You must have an active tier to create an offer."})," ",d.jsx(ne,{className:"font-normal",color:"green",label:"Manage tiers",link:!0,linkWithPadding:!0,onClick:h})]}):""]})},Z4=Ce(K4,"Portal settings"),Y4="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAZZSURBVHgBzVpNcFNVFD73PdoitEkc21IGCnHnTHEmyMqyAfyhcQWOI+4Kg5aVAgqOC37a0YUCSgszzrSg1p1lHGEHbmxZNIzjOJSR7nAIrVMDyeIlVARjcjnfS194eXl/SdPSbybJfffe93L+7jnnnvsEVYgQo66uLkykRkgREZIiSEKGBVEY41KKEAkK2d4sSRNCapKExhea4F9J8g6P3JY5eSOVSoxRhRB+JulENzzTzc0dTHDEkcCaQI5RXhnOqrmrWiIR95rtykBzc9sWoYrjPG0LPQ1IGs4q+T43RmwZKEh8JRMuD9CSgOxP3v37oN1IGQOhtrZwnVQucjNCSwvxrMhvtWqjhIGC5Fdcp7kFWS3a29fyp53W8SedTlM6k6FMOkM3JydpnpjIPnqwVWMYHcvMo3NmE6YKsWFDB0W7uqiz82XazB83xGLXaDwWox9GLtD09F9UISLsTJhGrWhORQ3Mmc5tqgAg9tChjzyJdgKYOXHqS/23Ekg2pVSi4HKLDLS0rh4mIbr9PADmcWbgdNWEWwFtnGRG/GtEjvGi3oqWzkAl0o92baezZ/opEAiUjcHWJ29O0h/8mWR7n5qeZqKmdYYNM3NiGvOOHD1Ol6/8TH7Aa+FZrAWdgeZVqw9wVDztddNhNpfDhz4s6zdM4SYTnmEm3ABm8Ix3dr1tO37y1Fe6NrwgJfWl7s306gy0rFo96hWs7IiHpI8eO16xDQNg5OJPP7KnWls25o+JghmpaK5sDAy7TYXZnDzxeUnf0NA52r1nbzWeRAc0NXLhArW2turmZQbMDNq8detPlyeIcH2dOiAK6YIy6jQNkrrEkmo3SQrEHznWS7UCHILVpNIcN7a9+pq7gPLZjQqpwjXiwmzMxGNh1pJ4AGYIiZsRDAbo7EC/6315qo8okpSw0wQEJqtkYJ+1BqTdzeY4ZZE2/r/TxVUrSj6iCCnXO03AwjUD0h9hn70QgBv9YH957vixhYYS8F5E4Q2GbW4P27f67IUi3gC8GWKBGdBAu42nAiRvpBR9B2WDaHR7Wd94Fe6yUgydO1/2P04xg2NXWFEcdleImlZYF9pCwRoDNnd2Os5lDdgzYDUf2KhXlK0VChnrEy10dHQ4TQ0pdvtbuxuqDVjVwqwFuFSHdcAM2AA3WIEcfjGBZDBt0jicih0U8onFWMBmIDZMT015zvPNwGItYDPSmfuec2wZAPfW68VawJXClgErsZlMmp4GgoGmYtvJAmwZgMv0s4AWEoVd3Aa97WIBGscxituNxMavWR5oH84XCvt69hbbLg5Ec1zE49dK3WY02kWLBUg/2hUtXl++csVpqqbkuWJsN4LEzWxGb3QtHgOffdpXovGYQwziyraugbjdIOxuZGSkeO2Vm9cKSOGxhTXgVgATUsQVKcQdp4cNDn1TogXX3LwGgOSthQO3zb0kuqOubGx8gdNSW/vAyl/e0FDMBmGbwWCQfhkdo1rC2Hdb1xmId6sTqSLXr65oalzODOx2moTMEKk1qgfApk0vETLxWI1Si56e9+jc4Ndlrhq7P1Q93CDzuS/U+mXNmros94nbREgc0jGSvEKqPT8m8Izvv/tW36w0sJatxO988y2v6K8l79096LuwhdoNClFBU0kRAW8H/1ElqbZXQRhrDsR75V7sgcZSXNjS4wBvK6+SB/DAba+8XlI5gNp//+1X3X4hSbt6KYD+fT3v6gLAx4l4Q/J+Ekfeyw/rv/hqaVnDJ47yOvmAV2XaqI+CmEAgSC+y5vxEcZjj+1yV8KtNVeSfT/BpzZPyug8zMmMXSxw+e908UwyYDLzN0NB5/zfx4V/y3sweNIsMNLdxiVE6lxidUC0j0BRShEEmvNJU3ZA+2iVnZM+tWtOvkNxPVQCLHJEaLhcL3VqwhWngjAxbUxBfrQeTgsvqiZle49pyyBcO1dX/N8q9S+2E0sBE8u7MRnNHSTaqaXFNVfI72cYmaOlhgk1np7VTtXbMzs5qD/65P7iiqUmwerbQkoAcyD76d08qlUpYR1xfNWjjs7NcXvT6PfyrNRCsOOXsM04k7eDrZQ+dEdYGB7xuscAvexSIFldFLnspmUx6mrIvBqxA4MuLfJiTwAintOs5KobZPYT0Srfb6zYFEuP6txQaz+NANPe6jZA3/n/4cMJ8Cu8HjwHQPddRjKN7RgAAAABJRU5ErkJggg==",Lh=({title:n,favicon:e,featured_image:t,isGhostSite:r})=>{const[i,s]=x.useState(e||t||null),a=()=>{s(null)};if(!i)return d.jsx("div",{className:"relative size-6 shrink-0 rounded-sm"});const o=r?"This is a Ghost site that supports one-click subscribe":"";return d.jsxs("div",{className:"dark:group-hover/table-row:bg-grey-950 relative size-6 shrink-0 rounded-sm",title:o,children:[d.jsx("img",{alt:n,className:"size-6 rounded-sm",src:i,onError:a}),r&&d.jsx("img",{alt:"Ghost Logo",className:"absolute bottom-[-3px] right-[-3px] size-[14px]",src:Y4})]})},Sa="RecommendationResponseType",J4=Rf({dataType:Sa,path:"/recommendations/",returnData:n=>{const{pages:e}=n;let t=e.flatMap(r=>r.recommendations);return t=t.filter((r,i)=>t.findIndex(({id:s})=>s===r.id)===i),{recommendations:t,meta:e[e.length-1].meta}}}),X4=ze({method:"DELETE",path:n=>`/recommendations/${n.id}/`,invalidateQueries:{dataType:Sa}}),Q4=ze({method:"PUT",path:n=>`/recommendations/${n.id}/`,body:n=>({recommendations:[n]}),invalidateQueries:{dataType:Sa}}),L6=ze({method:"POST",path:()=>"/recommendations/",body:({...n})=>({recommendations:[n]}),invalidateQueries:{dataType:Sa}}),_6=ze({method:"POST",path:()=>"/recommendations/check/",body:n=>({recommendations:[{url:n.toString()}]})}),ej=Rf({dataType:Sa,path:"/incoming_recommendations/",returnData:n=>{const{pages:e}=n;let t=e.flatMap(r=>r.recommendations);return t=t.filter((r,i)=>t.findIndex(({id:s})=>s===r.id)===i),{recommendations:t,meta:e[e.length-1].meta}}}),tj=({incomingRecommendation:n,stats:e})=>{const{updateRoute:t}=be(),r=x.useMemo(()=>{let o=n.url;try{o=new URL(n.url).hostname.replace(/^www\./,"")}catch{}return e.reduce((l,c)=>c.source===o?l+c.signups:l,0)},[e,n.url]),i=()=>{t({route:`recommendations/add?url=${n.url}`})},s=()=>{window.open(n.url,"_blank")},a=r===1?"free member":"free members";return d.jsxs(tu,{action:!n.recommending_back&&d.jsx("div",{className:"flex items-center justify-end",children:d.jsx(ne,{color:"green",label:"Recommend back",size:"sm",link:!0,onClick:i})}),testId:"incoming-recommendation-list-item",hideActions:!0,children:[d.jsx(Hn,{className:"w-80",onClick:s,children:d.jsx("div",{className:"group flex items-center gap-3 hover:cursor-pointer",children:d.jsx("div",{className:"flex grow flex-col",children:d.jsxs("div",{className:"flex items-center gap-3",children:[d.jsx(Lh,{favicon:n.favicon,featured_image:n.featured_image,title:n.title||n.url}),d.jsx("span",{className:"line-clamp-1 font-medium",children:n.title||n.url})]})})})}),d.jsx(Hn,{className:"hidden w-auto whitespace-nowrap text-left align-middle md:!visible md:!table-cell",padding:!1,onClick:s,children:r===0?d.jsx("span",{className:"text-grey-500 dark:text-grey-900",children:"-"}):d.jsx("div",{className:"mr-2",children:d.jsx("span",{children:kn(r)})})}),d.jsx(Hn,{className:"hidden w-[1%] whitespace-nowrap align-middle md:!visible md:!table-cell",onClick:s,children:r===0?null:d.jsx("div",{className:"-mt-px text-left",children:d.jsx("span",{className:"-mb-px inline-block min-w-[60px] whitespace-nowrap text-left text-sm lowercase text-grey-700",children:a})})}),n.recommending_back&&d.jsx(Hn,{className:"w-[1%] whitespace-nowrap group-hover/table-row:visible md:invisible",children:d.jsx("div",{className:"mt-1 whitespace-nowrap text-right text-sm text-grey-700",children:"Recommending"})})]})},nj=({incomingRecommendations:n,stats:e,pagination:t,showMore:r,isLoading:i})=>i||n.length?d.jsx(Ti,{isLoading:i,pagination:t,showMore:r,hintSeparator:!0,children:n.map(s=>d.jsx(tj,{incomingRecommendation:s,stats:e},s.id))}):d.jsx(ei,{children:d.jsx("span",{className:"max-w-[40ch] text-center",children:"No one’s recommended you yet. Once they do, you’ll find them here along with how many memberships they’ve driven."})}),Wv=function(n,e,t){const r={...n};switch(e){case"title":t?delete r.title:r.title="Title is required";break;case"description":t&&t.length>200?r.description="Description cannot be longer than 200 characters":delete r.description;break;default:const i=e;throw new Error(`Unknown field ${i}`)}return r},yS=function(n){let e={};return e=Wv(e,"title",n.title),e=Wv(e,"description",n.description),e},rj=({showURL:n,formState:e,updateForm:t,errors:r,clearError:i,setErrors:s})=>{const[a,o]=Y.useState(e?.description?.length||0),l=a>200?"text-red":"text-green",c=Y.useRef(!1);return Y.useEffect(()=>{c.current||(c.current=!0,s(yS(e)))},[e,s]),d.jsxs(X2,{marginBottom:!1,marginTop:!0,children:[d.jsxs("div",{children:[d.jsx(ft,{className:"mb-2 block text-2xs font-semibold uppercase tracking-wider",grey:!0,level:6,children:"Preview"}),d.jsx("div",{className:"-mx-8 flex items-center justify-center overflow-hidden border-y border-grey-100 bg-grey-50 px-7 py-4 dark:border-grey-950 dark:bg-black",children:d.jsx("div",{className:"w-full rounded bg-white py-3 shadow",children:d.jsx("div",{className:"",children:d.jsxs("a",{className:"flex items-center justify-between bg-white px-5 py-3",href:e.url,rel:"noopener noreferrer",target:"_blank",children:[d.jsxs("div",{className:"flex flex-col gap-[2px]",children:[d.jsxs("div",{className:"flex items-start gap-2",children:[d.jsx(Lh,{...e}),d.jsx("span",{className:"text-[1.6rem] font-semibold text-grey-900",children:e.title})]}),e.description&&d.jsx("span",{className:"pl-[31px] text-[1.35rem] leading-snug text-grey-700",children:e.description})]}),e.one_click_subscribe&&d.jsx("span",{className:"flex whitespace-nowrap pl-6 text-md font-semibold text-green",children:"Subscribe"})]})})})}),e.one_click_subscribe&&d.jsx(Mn,{children:"This is a Ghost site, so your readers can subscribe with just one click"})]}),n&&d.jsx(rI,{disabled:!0,title:"URL",value:e.url,onChange:u=>t(f=>({...f,url:u||""}))}),d.jsx(tt,{autoFocus:!0,error:!!r.title,hint:r.title,maxLength:2e3,title:"Title",value:e.title??"",onChange:u=>{i?.("title"),t(f=>({...f,title:u.target.value}))}}),d.jsx(dx,{error:!!r.description,hint:d.jsxs(d.Fragment,{children:["Max: ",d.jsx("strong",{children:"200"})," characters. You’ve used ",d.jsx("strong",{className:l,children:a})]}),rows:4,title:"Short description",value:e.description??"",onChange:u=>{i?.("description"),o(u.target.value.length),t(f=>({...f,description:u.target.value}))}})]})},ij=({recommendation:n,animate:e})=>{const t=ir(),{updateRoute:r}=be(),{mutateAsync:i}=Q4(),{mutateAsync:s}=X4(),a=gt(),{formState:o,updateForm:l,handleSave:c,errors:u,clearError:f,setErrors:h,okProps:p}=Xf({initialState:{...n},savingDelay:500,savedDelay:500,onSave:async m=>{await i(m)},onSaveError:a,onValidate:m=>yS(m)});let g={label:"Delete",link:!0,color:"red",size:"sm",onClick:()=>{t.remove(),Ke.show(Gr,{title:"Delete recommendation",prompt:d.jsx(d.Fragment,{children:d.jsxs("p",{children:["Your recommendation ",d.jsx("strong",{children:n.title})," will no longer be visible to your audience."]})}),okLabel:"Delete",onOk:async m=>{try{await s(n),m?.remove()}catch(v){pn({title:"Failed to delete the recommendation",message:"Please try again later.",type:"error"}),a(v,{withToast:!1})}}})}};return d.jsx(Or,{afterClose:()=>{r("recommendations")},animate:e??!0,backDropClick:!1,buttonsDisabled:p.disabled,cancelLabel:"Close",leftButtonProps:g,okColor:p.color,okLabel:p.label||"Save",size:"sm",testId:"edit-recommendation-modal",title:"Edit recommendation",stickyFooter:!0,onOk:async()=>{m2();try{await c({force:!0})}catch{pn({title:"Something went wrong",type:"error",message:"Please try again later."})}},children:d.jsx(rj,{clearError:f,errors:u,formState:o,setErrors:h,showURL:!0,updateForm:l})})},sj=Ke.create(ij),aj=({recommendation:n})=>{const{route:e}=be(),t=()=>{Ke.show(sj,{pathName:e,animate:!1,recommendation:n})},r=n.one_click_subscribe,i=r&&!!n.count?.subscribers,s=(i?n.count?.subscribers:n.count?.clicks)||0,a=s===1?"signup":"signups",o=s===1?"click":"clicks";return d.jsxs(tu,{className:"group hover:cursor-pointer",testId:"recommendation-list-item",onClick:t,children:[d.jsx(Hn,{className:"w-80",children:d.jsxs("div",{className:"flex items-center gap-3",children:[d.jsx(Lh,{isGhostSite:r,...n}),d.jsx("span",{className:"line-clamp-1 font-medium",children:n.title})]})}),d.jsx(Hn,{className:"hidden w-auto whitespace-nowrap text-left align-middle md:!visible md:!table-cell",children:s===0?d.jsx("span",{className:"text-grey-500 dark:text-grey-900",children:"-"}):d.jsx(d.Fragment,{children:d.jsxs("div",{className:"flex items-center",children:[d.jsx("div",{className:"mr-2",children:d.jsx("span",{children:kn(s)})}),d.jsxs("div",{className:"text-sm lowercase text-grey-700",children:[d.jsx("span",{children:i?a:o}),d.jsx("span",{className:"invisible group-hover:visible",children:" from you"})]})]})})})]})},oj=({recommendations:n,pagination:e,showMore:t,isLoading:r})=>{const{siteData:i}=Ot(),s=`${i?.url.replace(/\/$/,"")}/#/portal/recommendations`,{updateRoute:a}=be(),o=()=>{a("recommendations/add")},[l,c]=x.useState(!1),u=()=>{navigator.clipboard.writeText(s),c(!0),setTimeout(()=>c(!1),2e3)};return r||n.length?d.jsx(Ti,{hint:d.jsxs("span",{className:"flex items-center gap-1",children:["Shared with new members after signup, or anytime using ",d.jsx(Ls,{href:s,target:"_blank",children:"this link"}),d.jsx(Uf,{containerClassName:"leading-none",content:l?"Copied":"Copy link",size:"sm",children:d.jsx(ne,{color:"clear",hideLabel:!0,icon:l?"check-circle":"duplicate",iconColorClass:l?"text-green w-[14px] h-[14px]":"text-grey-600 hover:opacity-80 w-[14px] h-[14px]",label:l?"Copied":"Copy",unstyled:!0,onClick:u})})]}),isLoading:r,pagination:e,showMore:t,hintSeparator:!0,children:n&&n.map(f=>d.jsx(aj,{recommendation:f},f.id))}):d.jsxs(ei,{children:[d.jsx(ne,{color:"grey",label:"Add first recommendation",size:"sm",onClick:()=>{o()}}),d.jsxs("span",{className:"mt-2 max-w-[40ch] text-center text-xs",children:["Need inspiration? ",d.jsx(Ls,{href:"https://ghost.org/explore",target:"_blank",children:"Explore thousands of sites"})]})]})},lj=({keywords:n})=>{const{saveState:e,handleSave:t}=Ot(),{data:{meta:r,recommendations:i}={},isLoading:s,hasNextPage:a,fetchNextPage:o}=J4({searchParams:{include:"count.clicks,count.subscribers",order:"created_at desc",limit:"5"},getNextPageParams:(E,M)=>{if(!E.meta)return;const{limit:R,page:T,pages:N}=E.meta.pagination;if(T>=N)return;const P=typeof R=="number"&&R<100?1:T+1;return{...M,page:P.toString(),limit:"100"}},keepPreviousData:!0}),l={hasMore:!!a,loadMore:o},{data:{recommendations:c,meta:u}={},isLoading:f,hasNextPage:h,fetchNextPage:p}=ej({searchParams:{limit:"5",order:"created_at desc"},getNextPageParams:(E,M)=>{if(!E.meta)return;const{limit:R,page:T,pages:N}=E.meta.pagination;if(T>=N)return;const P=typeof R=="number"&&R<100?1:T+1;return{...M,page:P.toString(),limit:"100"}},keepPreviousData:!0}),{data:{stats:g}={},isLoading:m}=I2({}),v={hasMore:!!h,loadMore:p},[b,y]=x.useState("your-recommendations"),w=[{id:"your-recommendations",title:"Your recommendations",counter:r?.pagination?.total,contents:d.jsx(oj,{isLoading:s,recommendations:i??[],showMore:l})},{id:"recommending-you",title:"Recommending you",counter:u?.pagination?.total,contents:d.jsx(nj,{incomingRecommendations:c??[],isLoading:f||m,showMore:v,stats:g??[]})}],S=d.jsx(d.Fragment,{children:"Recommend any publication that your audience will find valuable, and find out when others are recommending you."}),{updateRoute:k}=be(),A=()=>{k("recommendations/add")},C=d.jsx(ne,{className:"mt-[-5px] hidden md:!visible md:!block",color:"clear",label:"Add recommendation",size:"sm",onClick:()=>{A()}});return d.jsxs(Se,{beta:!0,customButtons:C,description:S,keywords:n,navid:"recommendations",saveState:e,testId:"recommendations",title:"Recommendations",onSave:t,children:[d.jsx("div",{className:"flex justify-center rounded border border-green px-4 py-2 md:hidden",children:d.jsx(ne,{color:"light-grey",label:"Add recommendation",link:!0,onClick:()=>{A()}})}),d.jsx(Kn,{selectedTab:b,tabs:w,onTabChange:y})]})},cj=Ce(lj,"Recommendations"),tn={network:["growth","network","activitypub","blog","fediverse","sharing"],explore:["ghost explore","explore","growth","share","list","listing"],recommendations:["growth","recommendations","recommend","blogroll"],embedSignupForm:["growth","embeddable signup form","embeddable form","embeddable sign up form","embeddable sign up"],offers:["growth","offers","discounts","coupons","promotions"]},uj=()=>{const{config:n,settings:e}=Le(),t=Qn(e||[],n||{});return d.jsxs(rs,{keywords:Object.values(tn).flat(),title:"Growth",children:[d.jsx(H4,{keywords:tn.network}),d.jsx(B4,{keywords:tn.explore}),d.jsx(cj,{keywords:tn.recommendations}),d.jsx(L4,{keywords:tn.embedSignupForm}),t&&d.jsx(Z4,{keywords:tn.offers})]})},qv=[{value:"all",label:"Anyone can sign up",hint:"All visitors will be able to subscribe and sign in"},{value:"paid",label:"Paid-members only",hint:"A paid Stripe subscription is required to sign up"},{value:"invite",label:"Invite-only",hint:"People can sign in but won't be able to sign up"},{value:"none",label:"Nobody",hint:"Disable all member features, including newsletters"}],Gv=[{value:"public",label:"Public",hint:"All site visitors to your site, no login required"},{value:"members",label:"Members only",hint:"All logged-in members"},{value:"paid",label:"Paid-members only",hint:"Only logged-in members with an active Stripe subscription"},{value:"tiers",label:"Specific tiers",hint:"Members with any of the selected tiers"}],Kv=[{value:"all",label:"All members",hint:"Logged-in members"},{value:"paid",label:"Paid-members only",hint:"Only logged-in members with an active Stripe subscription"},{value:"off",label:"Nobody",hint:"Disable commenting completely"}],dj=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,handleEditingChange:o}=Ot(),[l,c,u,f]=Te(e,["members_signup_access","default_content_visibility","default_content_visibility_tiers","comments_enabled"]),{data:{tiers:h}={}}=$c(),p=[{label:"Active Tiers",options:h?.filter(({active:y})=>y).map(y=>({value:y.id,label:y.name}))||[]},{label:"Archived Tiers",options:h?.filter(({active:y})=>!y).map(y=>({value:y.id,label:y.name}))||[]}],g=JSON.parse(u||"[]"),m=p.flatMap(y=>y.options).filter(y=>g.includes(y.value)),v=y=>{const w=y.map(S=>S.value);a("default_content_visibility_tiers",JSON.stringify(w))},b=d.jsxs(Ye,{className:"gap-y-4",columns:1,children:[d.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[d.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who should be able to subscribe to your site?"}),d.jsx("div",{className:"w-full md:flex-1",children:d.jsx(yr,{options:qv,selectedOption:qv.find(y=>y.value===l),testId:"subscription-access-select",onSelect:y=>{a("members_signup_access",y?.value||null),o(!0)}})})]}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[d.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who should have access to new posts?"}),d.jsx("div",{className:"w-full md:flex-1",children:d.jsx(yr,{options:Gv,selectedOption:Gv.find(y=>y.value===c),testId:"default-post-access-select",onSelect:y=>{a("default_content_visibility",y?.value||null),o(!0)}})})]}),c==="tiers"&&d.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[d.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Select specific tiers"}),d.jsx("div",{className:"w-full md:flex-1",children:d.jsx(ux,{color:"black",options:p.filter(y=>y.options.length>0),testId:"tiers-select",values:m,onChange:y=>{v(y),o(!0)}})})]}),d.jsx(Ct,{className:"border-grey-200 dark:border-grey-900"}),d.jsxs("div",{className:"flex flex-col content-center items-center gap-4 md:flex-row",children:[d.jsx("div",{className:"w-full min-w-[160px] max-w-none md:w-2/3 md:max-w-[320px]",children:"Who can comment on posts?"}),d.jsx("div",{className:"w-full md:flex-1",children:d.jsx(yr,{options:Kv,selectedOption:Kv.find(y=>y.value===f),testId:"commenting-select",title:"",onSelect:y=>{a("comments_enabled",y?.value||null),o(!0)}})})]})]});return d.jsx(Se,{description:"Set up default access options for subscription and posts",isEditing:t,keywords:n,navid:"members",saveState:r,testId:"access",title:"Access",hideEditButton:!0,onCancel:s,onEditingChange:o,onSave:i,children:b})},fj=Ce(dj,"Access"),hj=({value:n,placeholder:e,nodes:t="EMAIL_NODES",singleParagraph:r=!1,className:i,onChange:s})=>{const a=Hh("text-[1.6rem] leading-[1.6] tracking-[-0.01em]","dark:text-white dark:selection:bg-[rgba(88,101,116,0.99)]","[&_.koenig-lexical-editor-input-placeholder]:font-inter [&_.koenig-lexical-editor-input-placeholder]:text-xl [&_.koenig-lexical-editor-input-placeholder]:tracking-tight","[&_:is(h2,h3)]:dark:text-white","[&_:is(p,blockquote,aside,ul,ol)]:font-inter [&_:is(p,blockquote,aside,ul,ol)]:text-xl [&_:is(p,blockquote,aside,ul,ol)]:tracking-tight","[&_:is(h1)]:text-[36px] [&_:is(h2)]:text-[32px] [&_:is(h3)]:text-[26px] [&_:is(h4)]:text-[21px] [&_:is(h5)]:text-[19px] [&_:is(h6)]:text-[19px] [&_:is(h1,h2,h3,h4,h5,h6)]:mb-[0.5em]","[&_:is(hr)]:pt-0","[&_p]:mb-4 [&_strong]:font-semibold"),o=x.useCallback(c=>{if(s&&c&&typeof c=="object"){const u=JSON.stringify(c);u!==n&&s(u)}},[s,n]),l=x.useCallback(c=>{(c.metaKey||c.ctrlKey)&&c.key==="k"&&c.stopPropagation()},[]);return d.jsx("div",{onKeyDown:l,children:d.jsx(ik,{className:Hh(a,i),emojiPicker:!1,inheritFontStyles:!1,initialEditorState:n,loadingFallback:d.jsx(Tf,{delay:200,size:"lg"}),nodes:t,placeholder:e,singleParagraph:r,onChange:o,children:c=>d.jsxs(d.Fragment,{children:[d.jsx(c.ReplacementStringsPlugin,{}),d.jsx(c.ListPlugin,{}),d.jsx(c.HorizontalRulePlugin,{})]})})})},_h="AutomatedEmailsResponseType",pj=Qr({dataType:_h,path:"/automated_emails/"}),mj=ze({method:"POST",path:()=>"/automated_emails/",body:n=>({automated_emails:[n]}),updateQueries:{dataType:_h,emberUpdateType:"createOrUpdate",update:Of("automated_emails")}}),wS=ze({method:"PUT",path:n=>`/automated_emails/${n.id}/`,body:n=>({automated_emails:[n]}),updateQueries:{dataType:_h,emberUpdateType:"createOrUpdate",update:sb("automated_emails")}}),gj=ze({method:"POST",path:({id:n})=>`/automated_emails/${n}/test/`,body:({email:n,subject:e,lexical:t})=>({email:n,subject:e,lexical:t})}),vj=({automatedEmailId:n,subject:e,lexical:t,validateForm:r,onClose:i})=>{const{data:s}=nb(),{mutateAsync:a}=gj(),[o,l]=x.useState(s?.email||""),[c,u]=x.useState(""),[f,h]=x.useState("idle"),p=x.useRef(null);x.useEffect(()=>()=>{p.current&&clearTimeout(p.current)},[]),x.useEffect(()=>{s?.email&&l(s.email)},[s?.email]),x.useEffect(()=>{const m=v=>{v.key==="Escape"&&(v.stopPropagation(),i())};return document.addEventListener("keydown",m,!0),()=>document.removeEventListener("keydown",m,!0)},[i]);const g=async()=>{if(u(""),!Ph.isEmail(o)){u("Please enter a valid email address");return}if(!r()){u("Please complete the required fields");return}h("sending");try{await a({id:n,email:o,subject:e,lexical:t}),h("sent"),p.current&&clearTimeout(p.current),p.current=setTimeout(()=>h("idle"),2e3)}catch(m){h("idle");let v;m instanceof g2&&m.data&&m.data.errors[0]?v=m.data.errors[0].context||m.data.errors[0].message:m instanceof Error&&(v=m.message),u(v||"Failed to send test email")}};return d.jsxs("div",{className:"absolute right-0 top-full z-10 mt-2 w-[260px] rounded border border-grey-250 bg-white p-4 shadow-lg dark:border-grey-925 dark:bg-grey-975","data-testid":"test-email-dropdown",children:[d.jsxs("div",{className:"mb-3",children:[d.jsx("label",{className:"mb-2 block text-sm font-semibold",htmlFor:"test-email-input",children:"Send test email"}),d.jsx(tt,{className:"!h-[36px]",id:"test-email-input",placeholder:"you@yoursite.com",value:o,onChange:m=>{l(m.target.value)}})]}),d.jsx(ne,{className:"w-full",color:f==="sent"?"green":"black",disabled:f==="sending",label:f==="sent"?"Sent":f==="sending"?"Sending...":"Send",onClick:g}),c&&d.jsx(Mn,{className:"mt-2",color:"red",children:c})]})},bj=n=>{if(!n)return!0;try{const t=JSON.parse(n)?.root?.children;return!t||t.length===0||t.length===1&&t[0].type==="paragraph"&&(!t[0].children||t[0].children.length===0)}catch{return!0}},Zv=Ke.create(({emailType:n="free",automatedEmail:e})=>{const{updateRoute:t}=be(),{mutateAsync:r}=wS(),[i,s]=x.useState(!1),a=x.useRef(null),o=x.useRef(e?.lexical||""),l=x.useRef(!1),c=gt(),{settings:u}=Le(),[f,h]=Te(u,["title","default_email_address"]),{formState:p,saveState:g,updateForm:m,setFormState:v,handleSave:b,okProps:y,errors:w,validate:S}=Xf({initialState:{subject:e?.subject||"Welcome",lexical:e?.lexical||""},savingDelay:500,onSave:async M=>{await r({...e,...M})},onSaveError:c,onValidate:M=>{const R={};return M.subject?.trim()||(R.subject="A subject is required"),bj(M.lexical)&&(R.lexical="Email content is required"),R}});x.useEffect(()=>{const M=R=>{a.current&&!a.current.contains(R.target)&&s(!1)};return i&&document.addEventListener("mousedown",M),()=>{document.removeEventListener("mousedown",M)}},[i]);const k=x.useRef(b);x.useEffect(()=>{k.current=b},[b]),x.useEffect(()=>{const M=R=>{(R.metaKey||R.ctrlKey)&&R.key==="s"&&(R.preventDefault(),k.current({fakeWhenUnchanged:!0}))};return window.addEventListener("keydown",M),()=>{window.removeEventListener("keydown",M)}},[]);const A=x.useCallback(M=>{if(!l.current){o.current=M,v(R=>({...R,lexical:M}));return}M!==o.current?m(R=>({...R,lexical:M})):v(R=>({...R,lexical:M}))},[v,m]),C=e?.sender_email||h,E=e?.sender_reply_to||h;return d.jsx(Or,{afterClose:()=>{t("memberemails")},dirty:g==="unsaved",footer:!1,header:!1,testId:"welcome-email-modal",width:672,children:d.jsxs("div",{className:"-mx-8 flex h-[calc(100vh-16vmin)] flex-col overflow-y-auto dark:!bg-grey-975",children:[d.jsxs("div",{className:"sticky top-0 z-10 flex flex-col gap-2 border-b border-grey-100 bg-white p-5 dark:border-grey-900 dark:bg-grey-975",children:[d.jsxs("div",{className:"mb-2 flex items-center justify-between",children:[d.jsxs("h3",{className:"font-semibold",children:[n==="paid"?"Paid":"Free"," members welcome email"]}),d.jsxs("div",{className:"flex items-center gap-2",children:[d.jsxs("div",{ref:a,className:"relative",children:[d.jsx(ne,{className:"border border-grey-200 font-semibold hover:border-grey-300 hover:!bg-white dark:border-grey-900 dark:hover:border-grey-800 dark:hover:!bg-grey-950",color:"clear",icon:"send",label:"Test",onClick:()=>s(!i)}),i&&d.jsx(vj,{automatedEmailId:e.id,lexical:p.lexical,subject:p.subject,validateForm:S,onClose:()=>s(!1)})]}),d.jsx(ne,{color:y.color,disabled:y.disabled,label:y.label||"Save",onClick:async()=>await b({fakeWhenUnchanged:!0})})]})]}),d.jsxs("div",{className:"flex items-center",children:[d.jsx("div",{className:"w-20 font-semibold",children:"From:"}),d.jsxs("div",{className:"flex grow items-center gap-1",children:[d.jsx("span",{children:e?.sender_name||f}),d.jsx("span",{className:"text-grey-700 dark:text-grey-400",children:`<${C}>`})]})]}),E!==C&&d.jsxs("div",{className:"flex items-center py-0.5",children:[d.jsx("div",{className:"w-20 font-semibold",children:"Reply-to:"}),d.jsx("div",{className:"grow text-grey-700 dark:text-grey-400",children:E})]}),d.jsxs("div",{className:"flex items-center",children:[d.jsx("div",{className:"w-20 font-semibold",children:"Subject:"}),d.jsx("div",{className:"grow",children:d.jsx(tt,{className:"w-full",error:!!w.subject,hint:w.subject||"",maxLength:300,placeholder:`Welcome to ${f}`,value:p.subject,onChange:M=>m(R=>({...R,subject:M.target.value}))})})]})]}),d.jsxs("div",{className:"flex grow flex-col bg-grey-50 p-8 dark:bg-grey-975",children:[d.jsx("div",{className:`mx-auto w-full max-w-[600px] grow rounded border bg-white p-8 shadow-sm dark:bg-grey-950/25 dark:shadow-none ${w.lexical?"border-red":"border-grey-200 dark:border-grey-925"}`,onFocus:()=>{l.current=!0},children:d.jsx(hj,{className:"welcome-email-editor",placeholder:"Write your welcome email content...",singleParagraph:!1,value:p.lexical,onChange:A},e?.id||"new")}),w.lexical&&d.jsx(Mn,{className:"ml-8 mr-auto mt-2 max-w-[600px]",color:"red",children:w.lexical})]})]})})}),xj=`{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Welcome! Thanks for subscribing — it's great to have you here.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"You'll now receive new posts straight to your inbox. You can also log in any time to read the ","type":"extended-text","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"full archive","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"link","version":1,"rel":"noreferrer","target":null,"title":null,"url":"__GHOST_URL__/"},{"detail":0,"format":0,"mode":"normal","style":"","text":" or catch up on new posts as they go live.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"A little housekeeping: If this email landed in spam or promotions, try moving it to your primary inbox and adding this address to your contacts. Small signals like that help your inbox recognize that these messages matter to you.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Have questions or just want to say hi? Feel free to reply directly to this email or any newsletter in the future.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`,yj=`{"root":{"children":[{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Welcome, and thank you for your support — it means a lot.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"As a paid member, you now have full access to everything: the complete archive, and any paid-only content going forward. New posts will land straight to your inbox, and you can log in any time to ","type":"extended-text","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"catch up","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"link","version":1,"rel":"noreferrer","target":null,"title":null,"url":"__GHOST_URL__/"},{"detail":0,"format":0,"mode":"normal","style":"","text":" on anything you've missed.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"A little housekeeping: If this email landed in spam or promotions, try moving it to your primary inbox and adding this address to your contacts. Small signals like that help your inbox recognize that these messages matter to you.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1},{"children":[{"detail":0,"format":0,"mode":"normal","style":"","text":"Have questions or just want to say hi? Feel free to reply directly to this email or any newsletter in the future.","type":"extended-text","version":1}],"direction":"ltr","format":"","indent":0,"type":"paragraph","version":1}],"direction":"ltr","format":"","indent":0,"type":"root","version":1}}`,Yv=({automatedEmail:n,emailType:e,enabled:t,isInitialLoading:r,onEdit:i,onToggle:s})=>{const{settings:a}=Le(),[o,l,c]=Te(a,["accent_color","icon","title"]),u=o||"#F6414E",f=n.sender_name||c||"Your Site";return d.jsxs("div",{className:"relative flex w-full items-center justify-between gap-6 rounded-lg border border-grey-100 bg-grey-50 p-5 text-left transition-all hover:border-grey-200 hover:shadow-sm dark:border-grey-925 dark:bg-grey-975 dark:hover:border-grey-800","data-testid":`${e}-welcome-email-preview`,children:[d.jsxs("button",{className:'flex w-full cursor-pointer items-center justify-between before:absolute before:inset-0 before:rounded-lg before:content-[""] focus-visible:outline-none focus-visible:before:ring-2 focus-visible:before:ring-green',type:"button",onClick:i,children:[d.jsxs("div",{className:"flex items-start gap-3",children:[l?d.jsx("div",{className:"size-10 min-h-10 min-w-10 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${l})`}}):d.jsx("div",{className:"flex aspect-square size-10 items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:u},children:d.jsx("img",{alt:"",className:"h-auto w-8",src:gS})}),d.jsxs("div",{className:"text-left",children:[d.jsx("div",{className:"font-semibold",children:f}),d.jsx("div",{className:"text-sm",children:n.subject})]})]}),d.jsx("div",{className:"text-sm font-semibold opacity-100 transition-all hover:opacity-80",children:"Edit"})]}),d.jsx("div",{className:"relative z-10 rounded-full has-[:focus-visible]:ring-2 has-[:focus-visible]:ring-green",children:r?d.jsx("div",{className:"h-4 w-7 rounded-full bg-grey-300 dark:bg-grey-800"}):d.jsx(rn,{checked:t,onChange:s})})]})},Jv=({title:n,description:e})=>d.jsx("div",{className:"flex items-center justify-between py-4",children:d.jsxs("div",{children:[d.jsx("div",{className:"font-medium",children:n}),d.jsx("div",{className:"text-sm text-grey-700 dark:text-grey-600",children:e})]})}),wj=({keywords:n})=>{const{settings:e,config:t}=Le(),[r]=Te(e,["title"]),{data:i,isLoading:s}=pj(),{mutateAsync:a,isLoading:o}=mj(),{mutateAsync:l,isLoading:c}=wS(),u=gt(),f=i?.automated_emails||[],p=s||(o||c),g=f.find(M=>M.slug==="member-welcome-email-free"),m=f.find(M=>M.slug==="member-welcome-email-paid"),v=g?.status==="active",b=m?.status==="active",y=M=>({name:M==="free"?"Welcome Email (Free)":"Welcome Email (Paid)",slug:`member-welcome-email-${M}`,subject:M==="free"?`Welcome to ${r||"our site"}`:"Welcome to your paid subscription",lexical:M==="free"?xj:yj}),w=M=>({id:"",status:"inactive",...y(M),sender_name:null,sender_email:null,sender_reply_to:null,created_at:"",updated_at:null}),S=async(M,R)=>{const T=y(M);return a({...T,status:R})},k=async M=>{const R=`member-welcome-email-${M}`,T=f.find(P=>P.slug===R),N=M==="free"?"Free members":"Paid members";if(!p)try{T?T.status==="active"?(await l({...T,status:"inactive"}),pn({type:"success",title:`${N} welcome email disabled`})):(await l({...T,status:"active"}),pn({type:"success",title:`${N} welcome email enabled`})):(await S(M,"active"),pn({type:"success",title:`${N} welcome email enabled`}))}catch(P){u(P)}},A=async M=>{const R=`member-welcome-email-${M}`,T=f.find(N=>N.slug===R);if(!p)if(T)Ke.show(Zv,{emailType:M,automatedEmail:T});else try{const P=(await S(M,"inactive"))?.automated_emails?.[0];P&&Ke.show(Zv,{emailType:M,automatedEmail:P})}catch(N){u(N)}},C=g||w("free"),E=m||w("paid");return d.jsx(Se,{description:"Create and manage automated emails for your members",keywords:n,navid:"memberemails",testId:"memberemails",title:"Welcome emails",children:d.jsxs(Ye,{className:"!gap-y-0",columns:1,children:[d.jsx(Ct,{}),d.jsx(Jv,{description:"Email new free members receive when they join your site.",title:"Free members welcome email"}),d.jsx(Yv,{automatedEmail:C,emailType:"free",enabled:v,isInitialLoading:s,onEdit:()=>A("free"),onToggle:()=>k("free")}),Qn(e,t)&&d.jsxs("div",{className:"mt-4",children:[d.jsx(Jv,{description:"Sent to new paid members as soon as they start their subscription.",title:"Paid members welcome email"}),d.jsx(Yv,{automatedEmail:E,emailType:"paid",enabled:b,isInitialLoading:s,onEdit:()=>A("paid"),onToggle:()=>k("paid")})]})]})})},Sj=Ce(wj,"MemberEmails"),kj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAcCAYAAAB2+A+pAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAATkSURBVHgBrVZrTJtVGD5fWy6FDcZgnR3DsA1QRDaRoICBsEFA4IdEYkwwLEGJCYIJEDISwATBGF1C0B8g/iDETDeSaYgaNQJGMXJTQCVcisXEgm0Kxa3tWqR3n7f9PlIZHd3omzx9+53bc97Lec/h2MHC8XC2t7eLVCpVtEQikQUFBTmnp6dVs7Oz23y/iwVQJPTT19eXpdfrf3C5XIvADaAdaAM+2djY+HFgYCCPHy/2d2HuAFK7yWT6NSwsTAyST0UikRFtNkAHbAIaQAm8ZDAY3sjPz0+DByz4drIDPCDy0S6ura2NBJkrNDS0m+O4MqfTOYr2o8BJu93+pM1ma7VardfxveRwOErDw8OvzczM6BUKRSZPKmL3KeKampqz4FQSL1ALoq8mJiZqq6urT+fl5Um8F01JSQkeHR1Nwrgq4DNgS6vVtnp5zS+RlJeXJ2LyT0AM8F1PT0823yck2V7ZbW9oaJAi+a7Spo1G4zeCIewgS6uqqk5gkgqToqG/9JrIMf/E7Qm4u5XmA993dnY+wnxv2jMBA+3b29unoT+qqKg4yx4gTsIcnU73MUJ0ndZaXl5+nu+7i5xbXFx8E4NeweCKzc3N99jhRFRWVnYM603S8UPytYyPjxfuR0zWrgDHgZuIawLz372+RAwjSrHe7yD+ALqrsrIynHl7sbm5+QI63gIuAZ+zAMnCwsKzWO8FijXIW+fm5l4X+oidS0hIeBR6DJAjxlssQDIyMqKF+hrQofgkpqWlZaanpwcJxK7S0tJL0EeA26hSZlSgaBYAWV1dvQ0lB/oBKWDLyclxh9Ht75iYGDtUOmAGVjIyMh5mARC49g4UxXUCOAGoCwoKsqBdbmKUxH+gonlig9lsPsICIJOTk1Tbo5jHs39SW3JyciLjG+gCoMZ1gM7bVm5u7hl2+KwmseP2orJ5HJgDzshksjCBGAnn+It5bhS6WbIQ8ydYgO7XtbU1IiayReCYWCy2CsRMrVaT/gKgjAuXSqXnWlpaKCn8vl99SWpqaizzJBaF0w4jzQIx19/fr4Y2ME8i/IKDv9rW1kYbcRyCXNTY2BiHa9XCr0vJdWd9ff3v/41CQj1nsVgeQ7ypyjTgrq2HnuaP1v2Su8fDum6+KCUDHxLq6upOMa/8EeFSiELH0xhcB/0qPW148m8HBwcvsHvcMF7iHkNFApcEERXRmsB5PBx+Q7wb9psk6urqiqMSt7Oz8xr0ZeAKJrwN3T8/P1/ibc0+hKykpOShsbGxFzH+Hcx7hieNxv+fEb6bAs/uBG/ywsJC6dDQ0BVUMHLVH8jCo3j2PIW+Dbws9LGxse/SwOLi4hD0xWRmZsrxKjkFK2WI5y10rfFr0fldAm4AJhh1uampifqd+xELO3L29vaexxPoZZAaUWdTmeetdQvfscD7IKGzTw8/E2DnPbEDBANpABWPXljbrdFoxuLj4+fucpEPcddx3KMXs7OznSB14j19EW20Caq3/wIKYAXQ8t+UuSk8MZXJq0qlMjUpKWlEMMgf4l3rQSzr6OjIRYEXBwcHWxGCKLiZrKPzeRI4x/8nK+m5ew14fHh4WFNUVKTYS+oP8d5xLuSADJUtDgtGyuXykIiICOqjoqCnfngmcmpqylhfX7+EN7ZdmMcCIHs3y9GTF3d6CP/0Fcbc06j/APDXjC9ayXo+AAAAAElFTkSuQmCC",Cj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAKKSURBVHgB7ZmLcdswDIZ/9zpAuoFG8AZ1J0g2qEboBnYnqDewPUHSCeJOkHQCaQNlA4QMoZiGqFgkRUq583eHsySLDxAgCFLAlWlZYCSIaKV+bpUUSpb8+IXlr5KHxWJRY27ojit5pGHslBSYC6ozfyiMNabGMeqNkq2SOz3KLEslpZL7WSnhGHndwZsLZbRClSj3C7nhEbXZeJbfi/JL5ESM4hYBqHJPVh2PyIUY/eqS23xQz1JYoUAO6HwyRvkvnQeBPHOBTKQZxXeFNR+QGu0uts0RCZmo9O6OCOSLx7u2v9eYCT4KvFjXQZNXMEYdwxVQiVibmL01PkLkKKzrGoH4WEDzbF3fIY5b6/o/cqDDnTXxnhCImMCaFXLAkaiJjd9k0uroCBSEanAjRu+nZ/m1KB/riv7QeS6juZgas/VkFhuUS0VD7tRY35cyOvG7a+F6muA5NArcMWmJloYVanr+32MkfMOojV4T+nIYvUgVcC9WutwRU9LjEr5USkpE4nWsQsa/73E6NmlprfEPZrGz046C3/8O9+K3V/I7+ZELmU1IZyKSmbiD8hoy86YkdwAokApH5/V18CaEFdkKJdJsarixRozWKBtxtkbDUjj+X7OVw5Qjs/hUKU3Nbdz0PH9vFyHQ+bLfEOU7FqTYHRt1M8YSGRlDgZ1VQb6zm1P74QpQN21eITNDFfja83yFUxpQq0XmiISQyWbLD14pHEroxfLQV+HO0j7poROJ4xpPqr5kzo7zz0gIHxYcEcbBmQtp1azbb9xIUqgbovV9GzxqJT9kGWf+JEzaYCKGTmKXC9mrYvKRj6WjAJvlyLcHfFZo4q+JROMc/k4Knb4hbPBZmdoTrlyZO6//Zfm9iMHs2AAAAABJRU5ErkJggg==",gd=({title:n,color:e,price:t})=>d.jsxs("div",{className:"rounded-lg bg-grey-100/70 px-3 pb-3 pt-1.5",children:[d.jsx("div",{className:"font-space-grotesk text-[1.5rem] font-bold",style:{color:e},children:n}),d.jsx("div",{className:"-mt-1 font-space-grotesk text-[1.7rem] font-bold",children:t}),d.jsxs("div",{className:"mt-5 flex flex-col gap-1.5",children:[d.jsx("div",{className:"h-1.5 w-[100%] bg-grey-300/60"}),d.jsx("div",{className:"h-1.5 w-[70%] bg-grey-300/60"}),d.jsx("div",{className:"h-1.5 w-[90%] bg-grey-300/60"})]})]}),Aj=({keywords:n})=>{const{updateRoute:e}=be(),{settings:t}=Le(),[r,i,s]=Te(t,["accent_color","icon","members_signup_access"]),a=()=>{e("portal/edit")},o=r||"#F6414E";return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",disabled:s==="none",label:"Customize",size:"sm",onClick:a}),description:"Customize members modal signup flow",keywords:n,navid:"portal",testId:"portal",title:"Signup portal",children:d.jsxs("div",{className:"relative isolate -mx-5 -mb-5 hidden flex-col items-center justify-end overflow-hidden rounded-b-xl bg-grey-50 px-5 pt-6 text-black sm:!visible sm:!flex md:-mx-7 md:-mb-7",children:[d.jsx("div",{className:"absolute bottom-6 right-6 flex size-12 items-center justify-center rounded-full text-white shadow-lg",style:{backgroundColor:o},children:d.jsx("img",{className:"size-6",src:Cj})}),d.jsxs("div",{className:"grid w-full max-w-[440px] grid-cols-3 gap-5 rounded-t-xl bg-white px-9 py-6 shadow-xl",children:[d.jsxs("div",{className:"col-span-3 mb-1 flex flex-col items-center justify-center",children:[i?d.jsx("div",{className:"size-6 rounded-sm bg-cover bg-center",style:{backgroundImage:`url(${i})`}}):d.jsx("div",{className:"flex aspect-square items-center justify-center overflow-hidden rounded-full p-1 text-white",style:{backgroundColor:o},children:d.jsx("img",{className:"h-auto w-5",src:kj})}),d.jsx("div",{className:"mt-1.5 font-space-grotesk text-lg font-bold",children:"Sign up"}),d.jsx("div",{className:"mt-1.5 flex h-6 w-1/2 items-center rounded border border-grey-200 p-2 text-xs text-grey-700",children:"jamie@example.com"})]}),d.jsx(gd,{color:o,price:"$0",title:"Free"}),d.jsx(gd,{color:o,price:"$5",title:"Silver"}),d.jsx(gd,{color:o,price:"$10",title:"Gold"})]})]})})},Mj=Ce(Aj,"Portal settings"),Ij=({keywords:n})=>{const{localSettings:e,isEditing:t,saveState:r,handleSave:i,handleCancel:s,updateSetting:a,errors:o,clearError:l,handleEditingChange:c}=Ot({onValidate:()=>({})}),[u]=Te(e,["blocked_email_domains"]),f=JSON.parse(u||"[]"),[h,p]=Y.useState(f.join(`
|
|
33
33
|
`)),g=v=>{const b=v.target.value;p(b);const y=b.split(/[\s,]+/).map(w=>w.trim().toLowerCase().split("@").pop()).filter(w=>w&&w.includes("."));a("blocked_email_domains",JSON.stringify(y)),t||c(!0)},m=d.jsxs(d.Fragment,{children:["Prevent unwanted signups by blocking email domains. Add one domain per line, e.g., ",d.jsx("code",{children:"spam.xyz"})," to block signups from email addresses like ",d.jsx("code",{children:"hello@spam.xyz"}),"."]});return d.jsx(Se,{description:"Protect your member signups from spam",isEditing:t,keywords:n,navid:"spam-filters",saveState:r,testId:"spam-filters",title:"Spam filters",hideEditButton:!0,onCancel:s,onEditingChange:c,onSave:i,children:d.jsx(Ye,{columns:1,children:d.jsx(dx,{className:"h-[86px]",error:!!o.blockedEmailDomains,hint:o.blockedEmailDomains||m,placeholder:`spam.xyz
|
|
34
|
-
junk.com`,resize:"vertical",title:"Blocked email domains",value:h,onChange:g,onKeyDown:()=>l("spam-filters")})})})},Ej=Ce(Ij,"Spam Filters"),SS=({size:n="md",trialDays:e})=>{if(!e)return null;const t=_(n==="sm"?"px-1.5 py-0.5 text-xs":"px-2.5 py-1.5 text-sm","relative -mr-1 -mt-1 whitespace-nowrap rounded-full font-semibold leading-none tracking-wide text-grey-900");return d.jsxs("span",{className:t,children:[d.jsx("span",{className:"absolute inset-0 block rounded-full bg-accent opacity-20 dark:bg-pink"}),d.jsxs("span",{className:"dark:text-pink",children:[e," days free"]})]})},Dj=({benefits:n})=>n?.length?d.jsx(d.Fragment,{children:n.map(e=>d.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900",children:d.jsxs("div",{className:"mb-2.5 flex items-start",children:[d.jsx(ge,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),d.jsx("div",{children:e})]})},e))}):d.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900 opacity-30",children:d.jsxs("div",{className:"mb-2.5 flex items-start",children:[d.jsx(ge,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),d.jsx("div",{children:"Expert analysis"})]})}),Rj=({discount:n})=>n?d.jsxs("span",{className:"mt-1 text-sm font-semibold leading-none text-pink",children:[n,"% discount"]}):null,j6=({tier:n,isFreeTier:e})=>{const[t,r]=x.useState(!1),i=n?.name||"",s=n?.description||"",a=parseFloat(n?.trial_days||"0"),o=n?.currency||"USD",l=Qs(o),c=n?.benefits||[],u=e?0:500,f=e?0:5e3,h=Bi(n?.monthly_price??u),p=Bi(n?.yearly_price??f),g=n?.monthly_price&&n?.yearly_price?Math.ceil((h*12-p)/(h*12)*100):0;return d.jsxs("div",{"data-testid":"tier-preview",children:[d.jsxs("div",{className:"flex items-baseline justify-between",children:[d.jsx(ft,{className:"pb-2",level:6,grey:!0,children:e?"Free membership preview":"Tier preview"}),!e&&d.jsxs("div",{className:"flex gap-1",children:[d.jsx(ne,{className:`${t===!0?"text-grey-500":"text-grey-900 dark:text-white"}`,label:"Monthly",link:!0,unstyled:!0,onClick:()=>r(!1)}),d.jsx(ne,{className:`ml-2 ${t===!0?"text-grey-900 dark:text-white":"text-grey-500"}`,label:"Yearly",link:!0,unstyled:!0,onClick:()=>r(!0)})]})]}),d.jsx("div",{className:"rounded-sm border border-grey-200 bg-white dark:border-transparent",children:d.jsxs("div",{className:"flex-column relative flex min-h-[200px] w-full max-w-[420px] scale-90 items-start justify-stretch rounded bg-white p-4",children:[d.jsxs("div",{className:"min-h-[56px] w-full",children:[d.jsx("h4",{className:`-mt-1 mb-0 w-full break-words text-lg font-semibold leading-tight text-accent ${!i&&"opacity-30"}`,children:i||(e?"Free":"Bronze")}),d.jsxs("div",{className:"mt-4 flex w-full flex-row flex-wrap items-end justify-between gap-x-1 gap-y-[10px]",children:[d.jsxs("div",{className:`flex flex-wrap text-black ${(t&&n?.yearly_price===void 0||!t&&n?.monthly_price===void 0)&&!e?"opacity-30":""}`,children:[d.jsx("span",{className:"self-start text-[2.7rem] font-bold uppercase leading-[1.115]",children:l}),d.jsx("span",{className:"break-all text-[3.4rem] font-bold leading-none tracking-tight",children:kn(t?p:h)}),!e&&d.jsxs("span",{className:"ml-1 self-end text-[1.5rem] leading-snug text-grey-800",children:["/",t?"year":"month"]})]}),d.jsx(SS,{trialDays:a})]}),t&&g>0&&d.jsx(Rj,{discount:g})]}),d.jsx("div",{className:"flex-column flex w-full flex-1",children:d.jsxs("div",{className:"flex-1",children:[d.jsx("div",{className:`mt-4 w-full text-[1.55rem] font-semibold leading-snug text-grey-900 ${!s&&"opacity-30"}`,children:s||(e?"Free preview":"Full access to premium content")}),d.jsx(Dj,{benefits:c})]})})]})})]})},kS=_("group/tiercard flex cursor-pointer flex-col items-start justify-between gap-4 self-stretch rounded-sm border border-transparent bg-grey-100 p-4 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[200px] dark:bg-grey-950 dark:hover:border-grey-800"),Oj=({tier:n})=>{const{updateRoute:e}=be(),t=n?.currency||"USD",r=Qs(t);return d.jsx("div",{className:kS,"data-testid":"tier-card","data-tier":n.slug,children:d.jsxs("div",{className:"w-full grow",onClick:()=>{e({route:`tiers/${n.id}`})},children:[d.jsx("div",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n.name}),d.jsxs("div",{className:"mt-2 flex items-baseline",children:[d.jsx("span",{className:"ml-1 translate-y-[-3px] text-md font-bold uppercase",children:r}),d.jsx("span",{className:"text-xl font-bold tracking-tighter",children:kn(Bi(n.monthly_price||0))}),n.monthly_price&&n.monthly_price>0&&d.jsx("span",{className:"text-sm text-grey-700",children:"/month"})]}),n.trial_days?d.jsx("div",{className:"mb-4 mt-1",children:d.jsx(SS,{size:"sm",trialDays:n.trial_days})}):"",d.jsx("div",{className:"mt-2 line-clamp-2 text-[1.4rem] font-medium",children:n.description||d.jsx("span",{className:"opacity-30",children:"No description"})})]})})},vd=({tab:n,tiers:e})=>{const{updateRoute:t}=be(),r=()=>{t("tiers/add")};return e.length?d.jsxs("div",{className:"mt-4 grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:[e.map(i=>d.jsx(Oj,{tier:i})),n==="active-tiers"&&d.jsx("button",{className:`${kS} group cursor-pointer`,type:"button",onClick:()=>{r()},children:d.jsx("div",{className:"flex size-full flex-col items-center justify-center",children:d.jsxs("div",{className:"flex flex-col items-center justify-center",children:[d.jsx("div",{className:"translate-y-[15px] transition-all group-hover:translate-y-0",children:d.jsx(ge,{colorClass:"text-green",name:"add"})}),d.jsx("div",{className:"mt-2 translate-y-[-10px] text-sm font-semibold text-green opacity-0 transition-all group-hover:translate-y-0 group-hover:opacity-100",children:"Add tier"})]})})})]}):d.jsxs(ei,{icon:"money-bags",children:["No ",n==="active-tiers"?"active":"archived"," tiers found."]})},Xv=({className:n,onClick:e})=>(n=_("group flex shrink-0 items-center justify-center whitespace-nowrap rounded border border-grey-300 px-3 py-1.5 text-sm font-semibold text-grey-900 transition-all hover:border-grey-500 dark:border-grey-900 dark:text-white",n),d.jsxs("button",{className:n,"data-testid":"stripe-connected",type:"button",onClick:e,children:[d.jsx("span",{className:"inline-flex size-2 rounded-full bg-green transition-all group-hover:bg-[#625BF6]"}),d.jsx("span",{className:"ml-2",children:"Connected to Stripe"})]})),Tj=({keywords:n})=>{const[e,t]=x.useState("active-tiers"),{settings:r,config:i}=Le(),{data:{tiers:s,meta:a,isEnd:o}={},fetchNextPage:l}=$c(),c=E2(s||[]),u=D2(s||[]),{updateRoute:f}=be(),h=ya(),p=async()=>{if(h?.isDisabled("limitStripeConnect")&&!Qn(r,i))try{await h.errorIfWouldGoOverLimit("limitStripeConnect")}catch(b){if(b instanceof xa){Ke.show(px,{prompt:b.message||"Your current plan doesn't support Stripe Connect.",onOk:()=>f({route:"/pro",isExternal:!0})});return}}f("stripe-connect")},g=b=>[...b].sort((y,w)=>(y.monthly_price??0)-(w.monthly_price??0)),m=[{id:"active-tiers",title:"Active",contents:d.jsx(vd,{tab:"active-tiers",tiers:g(c)})},{id:"archived-tiers",title:"Archived",contents:d.jsx(vd,{tab:"archive-tiers",tiers:g(u)})}];let v;return Qn(r,i)?v=d.jsx(Kn,{selectedTab:e,tabs:m,onTabChange:t}):v=d.jsx(vd,{tab:"free-tier",tiers:c.filter(b=>b.type==="free")}),d.jsxs(Se,{customButtons:Qn(r,i)?d.jsx(Xv,{className:"hidden tablet:!visible tablet:!block",onClick:p}):d.jsx(Dp,{className:"hidden tablet:!visible tablet:!block",onClick:p}),description:"Set prices and paid member sign up settings",keywords:n,navid:"tiers",testId:"tiers",title:"Tiers",children:[d.jsx("div",{className:"w-full tablet:hidden",children:Qn(r,i)?d.jsx(Xv,{className:"w-full",onClick:p}):d.jsx(Dp,{onClick:p})}),v,o===!1&&d.jsx(ne,{label:`Load more (showing ${s?.length||0}/${a?.pagination.total||0} tiers)`,link:!0,onClick:()=>l()})]})},Nj=Ce(Tj,"Tiers"),Pj=1e4,Lj=({keywords:n})=>{const{localSettings:e,siteData:t,updateSetting:r,saveState:i,handleSave:s,handleCancel:a,focusRef:o,errors:l,validate:c,clearError:u,handleEditingChange:f}=Ot({onValidate:()=>({donationsSuggestedAmount:z4(g,h,{maxAmount:Pj})})}),[h="USD",p="500"]=Te(e,["donations_currency","donations_suggested_amount"]),g=parseInt(p),m=`${t?.url.replace(/\/$/,"")}/#/portal/support`;x.useEffect(()=>{c()},[h]);const[v,b]=x.useState(!1),[y,w]=x.useState(!1);x.useEffect(()=>{e.some(R=>R.dirty)&&!y&&(w(!0),f(!0))},[e,y,f]);const S=()=>{navigator.clipboard.writeText(m),b(!0),setTimeout(()=>b(!1),2e3)},k=()=>{Ps(i==="unsaved",()=>window.open(m,"_blank"))},A=(M,R)=>{r(M,R)},C=()=>{a(),w(!1)},E=async()=>{await s()&&w(!1)};return d.jsxs(Se,{description:"Give your audience a simple way to support your work with one-time payments.",isEditing:y,keywords:n,navid:"tips-and-donations",saveState:i,testId:"tips-and-donations",title:"Tips & donations",hideEditButton:!0,onCancel:C,onEditingChange:w,onSave:E,children:[d.jsxs(Ye,{columns:1,children:[d.jsx("div",{className:"flex max-w-[180px] items-end gap-[.6rem]",children:d.jsx(J2,{error:!!l.donationsSuggestedAmount,hint:l.donationsSuggestedAmount,inputRef:o,placeholder:"5",rightPlaceholder:d.jsx(yr,{border:!1,clearBg:!0,containerClassName:"w-14",fullWidth:!1,options:Uv(),selectedOption:Uv().flatMap(M=>M.options).find(M=>M.value===h),title:"Currency",hideTitle:!0,isSearchable:!0,onSelect:M=>A("donations_currency",M?.value||"USD")}),title:"Suggested amount",valueInCents:parseInt(p),onBlur:c,onChange:M=>A("donations_suggested_amount",M.toString()),onKeyDown:()=>u("donationsSuggestedAmount")},p)}),d.jsxs("div",{className:"w-100",children:[d.jsx("div",{className:"flex items-center gap-2",children:d.jsx(ft,{level:6,children:"Shareable link"})}),d.jsxs("div",{className:"w-100 group relative mt-0 flex items-center justify-between overflow-hidden border-b border-transparent pb-2 pt-1 hover:border-grey-300 dark:hover:border-grey-600",children:[d.jsx("span",{"data-testid":"donate-url",children:m}),d.jsxs("div",{className:"invisible flex gap-1 bg-white pl-1 group-hover:visible dark:bg-black",children:[d.jsx(ne,{color:"clear","data-testid":"preview-shareable-link",label:"Preview",size:"sm",onClick:k}),d.jsx(ne,{color:"light-grey","data-testid":"copy-shareable-link",label:v?"Copied":"Copy link",size:"sm",onClick:S})]})]})]})]}),d.jsxs("div",{className:"items-center-mt-1 flex text-sm",children:["All tips and donations are subject to Stripe's ",d.jsx("a",{className:"ml-1 text-green",href:"https://ghost.org/help/tips-donations/",rel:"noopener noreferrer",target:"_blank",children:" tipping policy"}),"."]})]})},_j=Ce(Lj,"Tips & donations"),qt={access:["membership","default","access","subscription","post","membership","comments","commenting","signup","sign up","spam","filters","prevention","prevent","block","domains","email"],tiers:["membership","tiers","payment","paid","stripe"],portal:["membership","portal","signup","sign up","signin","sign in","login","account","membership","support","email","address","support email address","support address"],memberEmails:["membership","signup","welcome email","email","new user","new member","account"],tips:["growth","tips","donations","one time","payment"]},jj=()=>{const{config:n,settings:e}=Le(),[t]=Te(e,["donations_enabled"]),r=Qn(e||[],n||{}),i=Eh("welcomeEmails");return d.jsxs(rs,{keywords:Object.values(qt).flat(),title:"Membership",children:[d.jsx(fj,{keywords:qt.access}),d.jsx(Ej,{keywords:qt.access}),d.jsx(Nj,{keywords:qt.tiers}),d.jsx(Mj,{keywords:qt.portal}),i&&d.jsx(Sj,{keywords:qt.memberEmails}),t&&r&&d.jsx(_j,{keywords:qt.tips})]})},Bj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("announcement-bar/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Highlight important updates or offers",keywords:n,navid:"announcement-bar",testId:"announcement-bar",title:"Announcement bar"})},$j=Ce(Bj,"Announcement bar"),B6=null,jh="CustomThemeSettingsResponseType",Fj=jh,$6=Qr({dataType:jh,path:"/custom_theme_settings/"}),F6=ze({method:"PUT",path:()=>"/custom_theme_settings/",body:n=>({custom_theme_settings:n}),updateQueries:{emberUpdateType:"skip",dataType:jh,update:n=>n}}),is="ThemesResponseType",Hj=Qr({dataType:is,path:"/themes/"}),H6=Qr({dataType:is,path:"/themes/active/"}),V6=ze({method:"PUT",path:n=>`/themes/${n}/activate/`,updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>({...e,themes:e.themes.map(t=>{const r=n.themes.find(({name:i})=>i===t.name);return r||{...t,active:!1}})})},invalidateQueries:{dataType:Fj}}),U6=ze({method:"DELETE",path:n=>`/themes/${n}/`,updateQueries:{dataType:is,emberUpdateType:"delete",update:(n,e,t)=>({...e,themes:e.themes.filter(r=>r.name!==t)})}}),z6=ze({method:"POST",path:()=>"/themes/install/",searchParams:n=>({source:"github",ref:n}),updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}}),W6=ze({method:"POST",path:()=>"/themes/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e},updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}});function Vj(n){return n.active}function CS(n){return n.name.toLowerCase()==="source"}function AS(n){return n.name.toLowerCase()==="casper"}function q6(n){return CS(n)||AS(n)}function G6(n){return!CS(n)&&!AS(n)&&!Vj(n)}const Uj=()=>{const n=ya(),{config:e}=Le(),t=e.hostSettings?.limits?.customThemes?.allowlist,r=t?.length===1||!1;return{checkThemeLimitError:x.useCallback(async s=>{if(!n?.isLimited("customThemes")||!(r||s&&t&&!t.includes(s.toLowerCase())))return null;try{const o=r?".":s||".";return await n.errorIfWouldGoOverLimit("customThemes",{value:o}),null}catch(o){return o instanceof xa?o.message||"Your current plan doesn't support changing themes.":null}},[n,t,r]),isThemeLimited:n?.isLimited("customThemes")||!1,isThemeLimitCheckReady:n!==void 0,allowedThemesList:t,noThemeChangesAllowed:r}},zj=({keywords:n})=>{const[e,t]=x.useState(null),[r,i]=x.useState(!1),{checkThemeLimitError:s}=Uj(),{updateRoute:a}=be(),{data:o}=Hj(),l=o?.themes.find(f=>f.active);x.useEffect(()=>{(async()=>{i(!0);const h=await s();t(h),i(!1)})()},[s]);const c=async()=>{r||(e?Ke.show(px,{prompt:e,onOk:()=>a({route:"/pro",isExternal:!0})}):a("design/change-theme"))},u=d.jsx(Ye,{values:[{heading:"Active theme",key:"active-theme",value:l?`${l.name} (v${l.package?.version||"1.0"})`:"Loading..."}]});return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Change theme",size:"sm",onClick:c}),description:"Browse and install official themes or upload one",keywords:n,navid:"theme",testId:"theme",title:"Theme",children:u})},Wj=Ce(zj,"Branding and design"),qj=""+new URL("design-settings-B-S7bLUU.png",import.meta.url).href,Gj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("design/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Customize the style and layout of your site",keywords:n,navid:"design",testId:"design",title:"Design & branding",children:d.jsx("img",{src:qj})})},Kj=Ce(Gj,"Branding and design"),Zj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("navigation/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Set up primary and secondary menus",keywords:n,navid:"navigation",testId:"navigation",title:"Navigation"})},Yj=Ce(Zj,"Navigation"),yn={design:["site","logo","cover","colors","fonts","background","themes","appearance","style","design & branding","design and branding"],theme:["theme","template","upload"],navigation:["site","navigation","menus","primary","secondary","links"],announcementBar:["site","announcement bar","important","banner"]},Jj=()=>d.jsx(d.Fragment,{children:d.jsxs(rs,{keywords:Object.values(yn).flat(),title:"Site",children:[d.jsx(Kj,{keywords:yn.design}),d.jsx(Wj,{keywords:yn.theme}),d.jsx(Yj,{keywords:yn.navigation}),d.jsx($j,{keywords:yn.announcementBar})]})}),Xj=()=>d.jsx(d.Fragment,{children:d.jsxs("div",{className:"mb-[60vh] px-8 pt-16 tablet:max-w-[760px] tablet:px-14 tablet:pt-0",children:[d.jsx(P4,{}),d.jsx(Jj,{}),d.jsx(jj,{}),d.jsx(O_,{}),d.jsx(uj,{}),d.jsx(x_,{})]})}),Qj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAC9FBMVEUAAAB+J/tVRv9VRf9VRv9XRP9VRf+UGf9ZQf94Lv9WRP/dAPBYRP9yMP+9AP7VAPNWQv9cPv9xMf+DIv+PG//KAPfdAO95Kv9/Jv/1DvHXAPTzAPOjEP9qN//lAPFbQf/5A/JWRf9hPf/5APLFAPr/H/BXRf+rCf9qNv+cE//xAPF3Lf9bQP9sM/9jOv9XPf9mPP/9O+fcHO5iPv//Ref/R+fDAPv/ROhtNf9VRf/eAPH/QOnyAPLUAPOoDP/vAPP8BPLXAPOxB/95LP//SeeHI///GfH+E/L/QOilDv/GAPdsNP9aP//yAfCvCP/uAe7mAO/RAPJbQP+9BPZXRf99M//NAPdfPv/fAPKwCP9yMv/EAPpdQP/NAPZhPf/TAPSdFP+4A///Ku+rC/+/AP7vAPK5Av9uNf/+BfObFP/pAPKDJf9zMP9lO/+UGv+9AP7fAPDMAPZmOv/EAPv4AvJXQ//6APFeP/+vCP/0APGNH/9cQP+eFP/oAPG4A/6KH/+8AP2pCv/FAPn7APPfAPHKAPS4Bv6FIf/lAPXzHPPgAPJhPf/sAPL/Nez4APN4Lv+IJP//QemFJf//R+d5Lf+JIv9fP/+UGv//R+h+Kv+bFf/eAPJtNf+VGf/yAPKQHf//QeiHI//QAPX/Ref3APP/MO2FJP+uB/+MH///L+3/NetpN/+vB///RejsAPFkOv+hEv9kPP//LO3/NepoOP//R+brAfC6Af7bAPLgAPDdAPFbP//4BPP/SOr1APDLAPa2Bv9qOP92L//CAPz/EfOAKf/UAPPGAPqrC/9oOP++AP7/NuyOHv/UAPRmO/+FJf+2BP//MO78CvL/POpuNv//POpWRf//Qeh6LP+cFv9kOv//Ke9gPf+aFf//F/H8APH/N+voAPD/SueWGP+BJ//CAPj7BvLRAPX2APByMf+hDf/hAPP/SOr/K+/jAPK1BP/QAPb/HfHNAPaNIP+4Av/zAPPOAPb/M+xdP/+5AP/HAPj/Tehx7sdAAAAA/HRSTlMABYVVdWhvPDWGfG5kWFhYRj4yMCwsKyIeE6mkoIuLiYWDb21pZWFNSERCLisrJhkSDge1oJyZlZN/enp3bGtnYV9eXFtVVU1HRT85ODY1NC4mIA8OCc2+uaako56dmJeWkZGJg39+fXl0dG5sa2lmZWRiXl5dW1lVUU9NTElHRUI9OTk3MiYkGArWzcnHwLu7trWxr62spqWenJqZlY6JiYSEgn9+fXl3d3V0cW1saGdeXlNRUE5NTT01MDAvKyoe19DHx8bDwLu6t7e0sqmpqKelpZ2alZCPjIaGgH10cWtiX15cWFZKRD4vHRfRvr28sK+YlpaNiHl4cThB/jUsAAAEnElEQVRIx2JAB4whBgYGIaEMxAGdUhYmJkUuFlY15mqfIILKORSvXZNnAgJFSxY2IOARDMGnnFEp7o4SK48aDysbiyXIHiDFxayPU72+7C2l9VsEfHw4ODh8BAWYWbmYLNnYLJlKcbhMz2L16iJBjt06Onp6QfpAEKTHwczCwsPKpai2G0sQACRukZPO6y2kq+utsaW66E6csfG0GHlWZmYetVJWFtZyDM8Y3Mjh5BUS0n3JmyN78uDB7pPnjMPDQXrkFVmZ1ViYBZg5UDUsy+Z0FhbW1sjh7D90hTcIbIauxsZcJfnw7hieci7m3QICjEjqn6xYlq0trO18o/8QpzhCOIRj4+rcuO5w+VIuNR3BaoQOiYXZC4HmZ086OlMcPSxy028BnZb7g0dHQAAumpc3v15EZNmkqa5Ygk9D1uKcbJyS0kafch2YBQBlZuaJiKyY+pkda4ALWVyZkz6nqLxaowgqUpN3l13k8fS57AyM2BIAg1BUlKyFrIag93pBsEjoBrsNIpoJsx5D1WPqeDllDmcUr5Cu93qwwCu7zJpXmbNuwpVjAud+zqh0XT2JLd4gnrrdcj/1ZBlPBjw6OKfMnCIkLqHNC+I4rbHzs0tMxpvwQ8/PPMorIS7ubMDAEJy/3KluTWQF3pTPUDVpwkKJdglnbQaGA/lpfBVpkQcYCFgxYapwe/uTegaGtvwUPr7EREK5cf6ZCa7iwq7AqBVVSSzmi1YhqGH6mRXt7FVgDWb5T09tJ6Th5tzpc0Xq66tAGqJ/PT3cREB9cMLdhFnsmuxVjAAxBBbGLioOEyWgoU1mQ4KMpiZ7DSPDa8f42MKwVgIaGmUqZGQ8gRqAljkuOmv7wYuABvVIpxPJnp6NmkA2v+2xRVL8DPgjzunC8hNr1Bs9/YC8HfzHzsbbBuO3Ie19cqSTup86KH537ZjdNZt7F171RhdO/fyyva6xwgjI6eDn7orgLsAfSIfN0lLqGrY3gHnbaiO6uK124vNC8fEUM74GL742MN+3Vq5n3kOrDtw6Os2izVL8Gur4IFzJ2nXSPanrsjpxalCJPR7t1dpUDEsPzWVfgTqy1uFSz//tU9hz0VYvFSOogGSlgoJ0X2qqPVblkrZS8WH8+0X3FyJiF6A9GfOAOmyWKGMqF+OWireSim0VDWwqRBJ2S8pQuNSnvERBEkV1Ry23nJQVN7+U7X6xQMdA5GBYlbTy9scjDmVLtCBaDF/v26OVJScnN9vKsaUgokUscMdzFLMMra+uXHrxbZJb2X1lhxIHZRsbG/tKLa2HWdtaxHa9KxAT2+mI7lgXE3Prpad7k1TdShzKKl80+/q+KLGx1/IPCIiQCwhoKcBMbG/WmpgsXjCx9/JK1U1ubs8c7mcob/P1F/OXnucfsNO+A2sAAuZiPsPcfKLJg1Xfby+9p+revGffvmfSCr7+lfaSuOLIw3Ty5IkzFltbr3qwabO7u+qlIxla7solRngS5t5Ha61NJ5teX3D96uXTvRdV3VXvNRPIjm9+uyw2nWFiar5g7WaPzZs8OhkIA8O9Hi6PXLZu3eqx15CBaGBkaIjF7QBYMGrq1RZRzQAAAABJRU5ErkJggg==",_e=({keywords:n,navid:e,...t})=>{const{ref:r,props:i}=Q3(e),{currentSection:s}=mu(),{checkVisible:a}=ba(),l=(Array.isArray(e)?e:[e]).includes(s||"");return d.jsx(dD,{ref:r,isCurrent:l,isVisible:a(n),navid:Array.isArray(e)?e[0]:e,...i,...t})},e6=()=>{const{filter:n,setFilter:e,checkVisible:t,noResult:r,setNoResult:i}=ba(),{updateRoute:s}=be(),a=x.useRef(null),{isAnyTextFieldFocused:o}=Gi();x.useEffect(()=>{const v=b=>{b.target instanceof HTMLElement&&(b.target.nodeName==="INPUT"||b.target.nodeName==="TEXTAREA"||b.target.isContentEditable)||b.key==="/"&&!o&&(b?.preventDefault(),a.current&&a.current.focus())};return window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}}),x.useEffect(()=>{a.current&&a.current.focus()},[]),x.useEffect(()=>{!t(Object.values(ot).flat())&&!t(Object.values(yn).flat())&&!t(Object.values(qt).flat())&&!t(Object.values(tn).flat())&&!t(Object.values(gr).flat())&&!t(Object.values(Wt).flat())?i(!0):i(!1)},[t,i,n]),x.useEffect(()=>{const v=b=>{b.key==="Escape"&&n&&(a.current?.blur(),b.stopPropagation())};return a.current?.addEventListener("keydown",v),()=>{a.current?.removeEventListener("keydown",v)}},[n]);const{settings:l,config:c}=Le(),[u]=Te(l,["donations_enabled"]),f=Qn(l||[],c||{}),h=Eh("welcomeEmails"),p=v=>{v&&(e(""),i(!1),s(v.currentTarget.id))},g=v=>{e(v.target.value),v.target.value&&document.querySelector(".admin-x-settings")?.scrollTo({top:0,left:0})},m=_("hidden pt-10 tablet:!visible tablet:!block");return d.jsxs("div",{className:"ml-auto flex w-full flex-col pt-0 tablet:max-w-[240px]","data-testid":"sidebar",children:[d.jsx("div",{className:"sticky top-0 flex content-stretch items-end tablet:h-20 tablet:bg-grey-50 xl:h-20 dark:bg-grey-975 dark:tablet:bg-[#101114]",children:d.jsxs("div",{className:"relative w-full",children:[d.jsx(ge,{className:"absolute left-3 top-3 z-10",colorClass:"text-grey-500",name:"magnifying-glass",size:"sm"}),d.jsx(tt,{autoComplete:"off",autoCorrect:"off",className:"mr-12 flex h-10 w-full items-center rounded-lg border border-transparent bg-white px-[33px] py-1.5 text-[14px] shadow-[0_0_1px_rgba(21,23,26,0.25),0_1px_3px_rgba(0,0,0,0.03),0_8px_10px_-12px_rgba(0,0,0,.1)] transition-colors hover:shadow-sm focus:border-green focus:bg-white focus:shadow-[0_0_0_2px_rgba(48,207,67,0.25)] focus:outline-2 tablet:mr-0 dark:border-transparent dark:bg-grey-925 dark:text-white dark:placeholder:text-grey-800 dark:focus:border-green dark:focus:bg-grey-950",containerClassName:"w-100",inputRef:a,placeholder:"Search settings",title:"Search",value:n,clearBg:!0,hideTitle:!0,unstyled:!0,onChange:g}),n?d.jsx(ne,{className:"absolute right-14 top-3 p-1 tablet:right-3",icon:"close",iconColorClass:"text-grey-700 !w-[10px] !h-[10px]",size:"sm",unstyled:!0,onClick:()=>{e(""),a.current?.focus()}}):d.jsx("div",{className:"absolute -right-1/2 top-[9px] hidden rounded border border-grey-400 bg-white px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wider text-grey-600 shadow-[0px_1px_#CED4D9] tablet:!visible tablet:right-3 tablet:!block dark:border-grey-800 dark:bg-grey-900 dark:text-grey-500 dark:shadow-[0px_1px_#626D79]",children:"/"})]})}),d.jsxs("nav",{className:m,id:"admin-x-settings-sidebar",children:[r&&d.jsxs("div",{className:"ml-2 text-base text-grey-700",children:[d.jsx("h2",{className:"mb-2 text-base font-semibold tracking-normal text-black dark:text-white",children:"No result"}),d.jsxs("div",{children:[`We couldn't find any setting matching '${n}'`,"."]})]}),d.jsxs(cs,{isVisible:t(Object.values(ot).flat()),title:"General settings",children:[d.jsx(_e,{icon:"textfield",keywords:ot.titleAndDescription,navid:"general",title:"Title & description",onClick:p}),d.jsx(_e,{icon:"world-clock",keywords:ot.timeZone,navid:"timezone",title:"Timezone",onClick:p}),d.jsx(_e,{icon:"language",keywords:ot.publicationLanguage,navid:"publication-language",title:"Publication language",onClick:p}),d.jsx(_e,{icon:"user-pen",keywords:ot.users,navid:"staff",title:"Staff",onClick:p}),d.jsx(_e,{icon:"layer",keywords:ot.metadata,navid:"metadata",title:"Meta data",onClick:p}),d.jsx(_e,{icon:"like",keywords:ot.socialAccounts,navid:"social-accounts",title:"Social accounts",onClick:p}),d.jsx(_e,{icon:"baseline-chart",keywords:ot.analytics,navid:"analytics",title:"Analytics",onClick:p}),d.jsx(_e,{icon:"lock-locked",keywords:ot.lockSite,navid:"locksite",title:"Make this site private",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(yn).flat()),title:"Site",children:[d.jsx(_e,{icon:"palette",keywords:yn.design,navid:"design",title:"Design & branding",onClick:p}),d.jsx(_e,{icon:"layout-2-col",keywords:yn.theme,navid:"theme",title:"Theme",onClick:p}),d.jsx(_e,{icon:"navigation",keywords:yn.navigation,navid:"navigation",title:"Navigation",onClick:p}),d.jsx(_e,{icon:"megaphone",keywords:yn.announcementBar,navid:"announcement-bar",title:"Announcement bar",onClick:p})]}),d.jsxs(cs,{isVisible:t([...Object.values(qt).flat(),...gr.newslettersNavMenu]),title:"Membership",children:[d.jsx(_e,{icon:"key",keywords:qt.access,navid:["members","spam-filters"],title:"Access",onClick:p}),d.jsx(_e,{icon:"bills",keywords:qt.tiers,navid:"tiers",title:"Tiers",onClick:p}),d.jsx(_e,{icon:"portal",keywords:qt.portal,navid:"portal",title:"Signup portal",onClick:p}),h&&d.jsx(_e,{icon:"mailplus",keywords:qt.memberEmails,navid:"memberemails",title:"Welcome emails",onClick:p}),u&&f&&d.jsx(_e,{icon:"piggybank",keywords:qt.tips,navid:"tips-and-donations",title:"Tips & donations",onClick:p}),d.jsx(_e,{icon:"email",keywords:gr.newslettersNavMenu,navid:["enable-newsletters","default-recipients","newsletters","mailgun"],title:"Newsletters",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(tn).flat()),title:"Growth",children:[d.jsx(_e,{icon:"ap-network",keywords:tn.network,navid:"network",title:"Network",onClick:p}),d.jsx(_e,{icon:"globe-simple",keywords:tn.explore,navid:"explore",title:"Ghost Explore",onClick:p}),d.jsx(_e,{icon:"heart",keywords:tn.recommendations,navid:"recommendations",title:"Recommendations",onClick:p}),d.jsx(_e,{icon:"emailfield",keywords:tn.embedSignupForm,navid:"embed-signup-form",title:"Signup forms",onClick:p}),f&&d.jsx(_e,{icon:"discount",keywords:tn.offers,navid:"offers",title:"Offers",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(Wt).flat()),title:"Advanced",children:[d.jsx(_e,{icon:"modules-3",keywords:Wt.integrations,navid:"integrations",title:"Integrations",onClick:p}),d.jsx(_e,{icon:"download",keywords:Wt.migrationtools,navid:"migration",title:"Import/Export",onClick:p}),d.jsx(_e,{icon:"brackets",keywords:Wt.codeInjection,navid:"code-injection",title:"Code injection",onClick:p}),d.jsx(_e,{icon:"labs-flask",keywords:Wt.labs,navid:"labs",title:"Labs",onClick:p}),d.jsx(_e,{icon:"time-back",keywords:Wt.history,navid:"history",title:"History",onClick:p})]}),!n&&d.jsxs("a",{className:"w-100 mb-10 mt-1 flex h-[38px] cursor-pointer items-center rounded-lg px-3 py-2 text-left text-[14px] font-medium text-grey-800 transition-all hover:bg-grey-200 focus:bg-grey-100 dark:text-grey-600 dark:hover:bg-grey-950 dark:focus:bg-grey-925",onClick:()=>{s("about")},children:[d.jsx("img",{alt:"Ghost Logo",className:"mr-[7px] size-[18px]",src:Qj}),"About Ghost"]})]})]})},Qv=({children:n})=>d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"fixed right-0 top-2 z-50 flex justify-end bg-transparent p-8 tablet:fixed tablet:top-0 tablet:px-8",id:"done-button-container",children:d.jsx(_3,{})}),d.jsx("div",{className:"w-full tablet:fixed tablet:left-0 tablet:top-0 tablet:flex tablet:h-full dark:bg-grey-975",id:"admin-x-settings-content",children:n})]}),t6=()=>{const{currentUser:n}=Le(),{loadingModal:e}=be(),{isDirty:t}=Vc(),r=i=>{window.location.hash=i};return x.useEffect(()=>{const i=s=>{if(s.key==="Escape"){if(document.getElementById("modal-backdrop"))return;Ps(t,()=>{r("/")})}};return window.addEventListener("keydown",i),()=>{window.removeEventListener("keydown",i)}},[t]),x.useEffect(()=>{v2.remove()},[]),b2(n)?ab(n)?d.jsx(Qv,{children:d.jsxs("div",{className:"mx-auto w-full max-w-5xl overflow-y-auto px-[5vmin] tablet:mt-16 xl:mt-10",id:"admin-x-settings-scroller",children:[d.jsx(ft,{className:"mb-[5vmin]",children:"Settings"}),d.jsx(mS,{highlight:!1,keywords:[]})]})}):d.jsxs(Qv,{children:[e&&d.jsx("div",{className:`fixed inset-0 z-40 h-[calc(100vh-55px)] w-[100vw] tablet:h-[100vh] ${hx}`}),d.jsx("div",{className:"no-scrollbar fixed inset-x-0 top-0 z-[35] flex-1 basis-[320px] bg-white p-8 tablet:relative tablet:inset-x-auto tablet:top-auto tablet:h-full tablet:overflow-y-scroll tablet:bg-grey-50 tablet:py-0 dark:bg-grey-975 dark:tablet:bg-[#101114]",id:"admin-x-settings-sidebar-scroller",children:d.jsx("div",{className:"relative w-full",children:d.jsx(e6,{})})}),d.jsx("div",{className:"relative h-full flex-1 overflow-y-scroll bg-white pt-12 tablet:basis-[800px] dark:bg-grey-975 dark:tablet:bg-black",id:"admin-x-settings-scroller",children:d.jsx(Xj,{})})]}):null},n6={"design/change-theme":"DesignAndThemeModal","design/edit":"DesignAndThemeModal","theme/install":"DesignAndThemeModal","navigation/edit":"NavigationModal","staff/invite":"InviteUserModal","staff/:slug/social-links":"UserDetailModal","staff/:slug/email-notifications":"UserDetailModal","staff/:slug/edit":"UserDetailModal","staff/:slug":"UserDetailModal","portal/edit":"PortalModal","tiers/add":"TierDetailModal","tiers/:id":"TierDetailModal","stripe-connect":"StripeConnectModal","newsletters/new":"AddNewsletterModal","newsletters/:id":"NewsletterDetailModal","history/view":"HistoryModal","history/view/:user":"HistoryModal","integrations/zapier":"ZapierModal","integrations/transistor":"TransistorModal","integrations/slack":"SlackModal","integrations/unsplash":"UnsplashModal","integrations/firstpromoter":"FirstPromoterModal","integrations/pintura":"PinturaModal","integrations/new":"AddIntegrationModal","integrations/:id":"CustomIntegrationModal","recommendations/add":"AddRecommendationModal","recommendations/edit":"EditRecommendationModal","announcement-bar/edit":"AnnouncementBarModal","embed-signup-form/show":"EmbedSignupFormModal","offers/edit":"OffersContainerModal","offers/edit/:id":"OffersContainerModal","offers/new":"OffersContainerModal","explore/testimonial":"TestimonialsModal",about:"AboutModal"},r6=()=>ea(()=>import("./modals-DzetQgXf.js"),__vite__mapDeps([10,1,2,4,11,5,6,3,12]),import.meta.url),i6=()=>{const{updateNavigatedSection:n,scrollToSection:e}=mu(),{route:t}=be();return K3((r,i)=>{r===i&&e(r.split("/")[0])},[e]),x.useEffect(()=>{t!==void 0&&n(t.split("/")[0])},[t,n]),null};function s6({designSystem:n,upgradeStatus:e}){return d.jsx(RL,{upgradeStatus:e,children:d.jsx(Ke.Provider,{children:d.jsx(G3,{basePath:"settings",modals:{paths:n6,load:r6},children:d.jsxs(bD,{className:"admin-x-settings",...n,children:[d.jsx(i6,{}),d.jsx(t6,{})]})})})})}async function a6(){return await ea(()=>import("./koenig-lexical-eRS1y7PS.js"),__vite__mapDeps([13,1,2]),import.meta.url)}function o6(){return Vr.createPortal(d.jsx("div",{className:"shade shade-admin",style:{position:"absolute",inset:0,zIndex:20},children:d.jsx(s6,{designSystem:{darkMode:!1,fetchKoenigLexical:a6}})}),document.body)}const K6=Object.freeze(Object.defineProperty({__proto__:null,default:o6},Symbol.toStringTag,{value:"Module"}));export{Gr as $,yr as A,ne as B,Ns as C,dT as D,G as E,Ps as F,Kn as G,ft as H,We as I,dI as J,ik as K,gf as L,Or as M,hy as N,Jf as O,bT as P,M6 as Q,L3 as R,Ct as S,dt as T,Ke as U,be as V,gu as W,eL as X,Le as Y,Yi as Z,Zc as _,Mn as a,Rh as a$,Ph as a0,Ot as a1,Xf as a2,Vv as a3,z4 as a4,X2 as a5,tt as a6,Uv as a7,J2 as a8,rn as a9,H6 as aA,CS as aB,AS as aC,Vj as aD,V6 as aE,U6 as aF,G6 as aG,D6 as aH,q6 as aI,Hj as aJ,z6 as aK,Uj as aL,W6 as aM,tc as aN,qw as aO,Zi as aP,qr as aQ,B6 as aR,$6 as aS,F6 as aT,Jw as aU,$u as aV,ux as aW,iI as aX,ei as aY,zf as aZ,Yw as a_,rI as aa,lD as ab,j6 as ac,R6 as ad,h6 as ae,I6 as af,ya as ag,xa as ah,px as ai,dx as aj,kn as ak,L6 as al,yS as am,qL as an,rj as ao,_6 as ap,Pu as aq,Tf as ar,Ti as as,tu as at,Hn as au,E6 as av,F_ as aw,Uh as ax,pd as ay,sI as az,Jt as b,r_ as b0,QL as b1,e_ as b2,p6 as b3,O6 as b4,Bi as b5,N6 as b6,Zw as b7,T6 as b8,vS as b9,P6 as ba,Qj as bb,Dp as bc,uD as bd,Eh as be,Ye as bf,$v as bg,Hv as bh,Fv as bi,w4 as bj,Bv as bk,y4 as bl,Gw as bm,sj as bn,K6 as bo,xe as c,S6 as d,k6 as e,YT as f,x6 as g,At as h,FT as i,g6 as j,y6 as k,w6 as l,_T as m,LT as n,C6 as o,v6 as p,dP as q,B as r,RT as s,j as t,Gi as u,A6 as v,yN as w,O2 as x,ir as y,Vc as z};
|
|
34
|
+
junk.com`,resize:"vertical",title:"Blocked email domains",value:h,onChange:g,onKeyDown:()=>l("spam-filters")})})})},Ej=Ce(Ij,"Spam Filters"),SS=({size:n="md",trialDays:e})=>{if(!e)return null;const t=_(n==="sm"?"px-1.5 py-0.5 text-xs":"px-2.5 py-1.5 text-sm","relative -mr-1 -mt-1 whitespace-nowrap rounded-full font-semibold leading-none tracking-wide text-grey-900");return d.jsxs("span",{className:t,children:[d.jsx("span",{className:"absolute inset-0 block rounded-full bg-accent opacity-20 dark:bg-pink"}),d.jsxs("span",{className:"dark:text-pink",children:[e," days free"]})]})},Dj=({benefits:n})=>n?.length?d.jsx(d.Fragment,{children:n.map(e=>d.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900",children:d.jsxs("div",{className:"mb-2.5 flex items-start",children:[d.jsx(ge,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),d.jsx("div",{children:e})]})},e))}):d.jsx("div",{className:"mt-4 w-full text-md leading-snug text-grey-900 opacity-30",children:d.jsxs("div",{className:"mb-2.5 flex items-start",children:[d.jsx(ge,{className:"mr-[10px] mt-[3px] !h-3.5 !w-3.5 min-w-[14px] overflow-visible !stroke-[3px]",name:"check"}),d.jsx("div",{children:"Expert analysis"})]})}),Rj=({discount:n})=>n?d.jsxs("span",{className:"mt-1 text-sm font-semibold leading-none text-pink",children:[n,"% discount"]}):null,j6=({tier:n,isFreeTier:e})=>{const[t,r]=x.useState(!1),i=n?.name||"",s=n?.description||"",a=parseFloat(n?.trial_days||"0"),o=n?.currency||"USD",l=Qs(o),c=n?.benefits||[],u=e?0:500,f=e?0:5e3,h=Bi(n?.monthly_price??u),p=Bi(n?.yearly_price??f),g=n?.monthly_price&&n?.yearly_price?Math.ceil((h*12-p)/(h*12)*100):0;return d.jsxs("div",{"data-testid":"tier-preview",children:[d.jsxs("div",{className:"flex items-baseline justify-between",children:[d.jsx(ft,{className:"pb-2",level:6,grey:!0,children:e?"Free membership preview":"Tier preview"}),!e&&d.jsxs("div",{className:"flex gap-1",children:[d.jsx(ne,{className:`${t===!0?"text-grey-500":"text-grey-900 dark:text-white"}`,label:"Monthly",link:!0,unstyled:!0,onClick:()=>r(!1)}),d.jsx(ne,{className:`ml-2 ${t===!0?"text-grey-900 dark:text-white":"text-grey-500"}`,label:"Yearly",link:!0,unstyled:!0,onClick:()=>r(!0)})]})]}),d.jsx("div",{className:"rounded-sm border border-grey-200 bg-white dark:border-transparent",children:d.jsxs("div",{className:"flex-column relative flex min-h-[200px] w-full max-w-[420px] scale-90 items-start justify-stretch rounded bg-white p-4",children:[d.jsxs("div",{className:"min-h-[56px] w-full",children:[d.jsx("h4",{className:`-mt-1 mb-0 w-full break-words text-lg font-semibold leading-tight text-accent ${!i&&"opacity-30"}`,children:i||(e?"Free":"Bronze")}),d.jsxs("div",{className:"mt-4 flex w-full flex-row flex-wrap items-end justify-between gap-x-1 gap-y-[10px]",children:[d.jsxs("div",{className:`flex flex-wrap text-black ${(t&&n?.yearly_price===void 0||!t&&n?.monthly_price===void 0)&&!e?"opacity-30":""}`,children:[d.jsx("span",{className:"self-start text-[2.7rem] font-bold uppercase leading-[1.115]",children:l}),d.jsx("span",{className:"break-all text-[3.4rem] font-bold leading-none tracking-tight",children:kn(t?p:h)}),!e&&d.jsxs("span",{className:"ml-1 self-end text-[1.5rem] leading-snug text-grey-800",children:["/",t?"year":"month"]})]}),d.jsx(SS,{trialDays:a})]}),t&&g>0&&d.jsx(Rj,{discount:g})]}),d.jsx("div",{className:"flex-column flex w-full flex-1",children:d.jsxs("div",{className:"flex-1",children:[d.jsx("div",{className:`mt-4 w-full text-[1.55rem] font-semibold leading-snug text-grey-900 ${!s&&"opacity-30"}`,children:s||(e?"Free preview":"Full access to premium content")}),d.jsx(Dj,{benefits:c})]})})]})})]})},kS=_("group/tiercard flex cursor-pointer flex-col items-start justify-between gap-4 self-stretch rounded-sm border border-transparent bg-grey-100 p-4 transition-all hover:border-grey-100 hover:bg-grey-75 hover:shadow-sm min-[900px]:min-h-[200px] dark:bg-grey-950 dark:hover:border-grey-800"),Oj=({tier:n})=>{const{updateRoute:e}=be(),t=n?.currency||"USD",r=Qs(t);return d.jsx("div",{className:kS,"data-testid":"tier-card","data-tier":n.slug,children:d.jsxs("div",{className:"w-full grow",onClick:()=>{e({route:`tiers/${n.id}`})},children:[d.jsx("div",{className:"text-[1.65rem] font-bold leading-tight tracking-tight text-black dark:text-white",children:n.name}),d.jsxs("div",{className:"mt-2 flex items-baseline",children:[d.jsx("span",{className:"ml-1 translate-y-[-3px] text-md font-bold uppercase",children:r}),d.jsx("span",{className:"text-xl font-bold tracking-tighter",children:kn(Bi(n.monthly_price||0))}),n.monthly_price&&n.monthly_price>0&&d.jsx("span",{className:"text-sm text-grey-700",children:"/month"})]}),n.trial_days?d.jsx("div",{className:"mb-4 mt-1",children:d.jsx(SS,{size:"sm",trialDays:n.trial_days})}):"",d.jsx("div",{className:"mt-2 line-clamp-2 text-[1.4rem] font-medium",children:n.description||d.jsx("span",{className:"opacity-30",children:"No description"})})]})})},vd=({tab:n,tiers:e})=>{const{updateRoute:t}=be(),r=()=>{t("tiers/add")};return e.length?d.jsxs("div",{className:"mt-4 grid grid-cols-1 gap-4 min-[900px]:grid-cols-3",children:[e.map(i=>d.jsx(Oj,{tier:i})),n==="active-tiers"&&d.jsx("button",{className:`${kS} group cursor-pointer`,type:"button",onClick:()=>{r()},children:d.jsx("div",{className:"flex size-full flex-col items-center justify-center",children:d.jsxs("div",{className:"flex flex-col items-center justify-center",children:[d.jsx("div",{className:"translate-y-[15px] transition-all group-hover:translate-y-0",children:d.jsx(ge,{colorClass:"text-green",name:"add"})}),d.jsx("div",{className:"mt-2 translate-y-[-10px] text-sm font-semibold text-green opacity-0 transition-all group-hover:translate-y-0 group-hover:opacity-100",children:"Add tier"})]})})})]}):d.jsxs(ei,{icon:"money-bags",children:["No ",n==="active-tiers"?"active":"archived"," tiers found."]})},Xv=({className:n,onClick:e})=>(n=_("group flex shrink-0 items-center justify-center whitespace-nowrap rounded border border-grey-300 px-3 py-1.5 text-sm font-semibold text-grey-900 transition-all hover:border-grey-500 dark:border-grey-900 dark:text-white",n),d.jsxs("button",{className:n,"data-testid":"stripe-connected",type:"button",onClick:e,children:[d.jsx("span",{className:"inline-flex size-2 rounded-full bg-green transition-all group-hover:bg-[#625BF6]"}),d.jsx("span",{className:"ml-2",children:"Connected to Stripe"})]})),Tj=({keywords:n})=>{const[e,t]=x.useState("active-tiers"),{settings:r,config:i}=Le(),{data:{tiers:s,meta:a,isEnd:o}={},fetchNextPage:l}=$c(),c=E2(s||[]),u=D2(s||[]),{updateRoute:f}=be(),h=ya(),p=async()=>{if(h?.isDisabled("limitStripeConnect")&&!Qn(r,i))try{await h.errorIfWouldGoOverLimit("limitStripeConnect")}catch(b){if(b instanceof xa){Ke.show(px,{prompt:b.message||"Your current plan doesn't support Stripe Connect.",onOk:()=>f({route:"/pro",isExternal:!0})});return}}f("stripe-connect")},g=b=>[...b].sort((y,w)=>(y.monthly_price??0)-(w.monthly_price??0)),m=[{id:"active-tiers",title:"Active",contents:d.jsx(vd,{tab:"active-tiers",tiers:g(c)})},{id:"archived-tiers",title:"Archived",contents:d.jsx(vd,{tab:"archive-tiers",tiers:g(u)})}];let v;return Qn(r,i)?v=d.jsx(Kn,{selectedTab:e,tabs:m,onTabChange:t}):v=d.jsx(vd,{tab:"free-tier",tiers:c.filter(b=>b.type==="free")}),d.jsxs(Se,{customButtons:Qn(r,i)?d.jsx(Xv,{className:"hidden tablet:!visible tablet:!block",onClick:p}):d.jsx(Dp,{className:"hidden tablet:!visible tablet:!block",onClick:p}),description:"Set prices and paid member sign up settings",keywords:n,navid:"tiers",testId:"tiers",title:"Tiers",children:[d.jsx("div",{className:"w-full tablet:hidden",children:Qn(r,i)?d.jsx(Xv,{className:"w-full",onClick:p}):d.jsx(Dp,{onClick:p})}),v,o===!1&&d.jsx(ne,{label:`Load more (showing ${s?.length||0}/${a?.pagination.total||0} tiers)`,link:!0,onClick:()=>l()})]})},Nj=Ce(Tj,"Tiers"),Pj=1e4,Lj=({keywords:n})=>{const{localSettings:e,siteData:t,updateSetting:r,saveState:i,handleSave:s,handleCancel:a,focusRef:o,errors:l,validate:c,clearError:u,handleEditingChange:f}=Ot({onValidate:()=>({donationsSuggestedAmount:z4(g,h,{maxAmount:Pj})})}),[h="USD",p="500"]=Te(e,["donations_currency","donations_suggested_amount"]),g=parseInt(p),m=`${t?.url.replace(/\/$/,"")}/#/portal/support`;x.useEffect(()=>{c()},[h]);const[v,b]=x.useState(!1),[y,w]=x.useState(!1);x.useEffect(()=>{e.some(R=>R.dirty)&&!y&&(w(!0),f(!0))},[e,y,f]);const S=()=>{navigator.clipboard.writeText(m),b(!0),setTimeout(()=>b(!1),2e3)},k=()=>{Ps(i==="unsaved",()=>window.open(m,"_blank"))},A=(M,R)=>{r(M,R)},C=()=>{a(),w(!1)},E=async()=>{await s()&&w(!1)};return d.jsxs(Se,{description:"Give your audience a simple way to support your work with one-time payments.",isEditing:y,keywords:n,navid:"tips-and-donations",saveState:i,testId:"tips-and-donations",title:"Tips & donations",hideEditButton:!0,onCancel:C,onEditingChange:w,onSave:E,children:[d.jsxs(Ye,{columns:1,children:[d.jsx("div",{className:"flex max-w-[180px] items-end gap-[.6rem]",children:d.jsx(J2,{error:!!l.donationsSuggestedAmount,hint:l.donationsSuggestedAmount,inputRef:o,placeholder:"5",rightPlaceholder:d.jsx(yr,{border:!1,clearBg:!0,containerClassName:"w-14",fullWidth:!1,options:Uv(),selectedOption:Uv().flatMap(M=>M.options).find(M=>M.value===h),title:"Currency",hideTitle:!0,isSearchable:!0,onSelect:M=>A("donations_currency",M?.value||"USD")}),title:"Suggested amount",valueInCents:parseInt(p),onBlur:c,onChange:M=>A("donations_suggested_amount",M.toString()),onKeyDown:()=>u("donationsSuggestedAmount")},p)}),d.jsxs("div",{className:"w-100",children:[d.jsx("div",{className:"flex items-center gap-2",children:d.jsx(ft,{level:6,children:"Shareable link"})}),d.jsxs("div",{className:"w-100 group relative mt-0 flex items-center justify-between overflow-hidden border-b border-transparent pb-2 pt-1 hover:border-grey-300 dark:hover:border-grey-600",children:[d.jsx("span",{"data-testid":"donate-url",children:m}),d.jsxs("div",{className:"invisible flex gap-1 bg-white pl-1 group-hover:visible dark:bg-black",children:[d.jsx(ne,{color:"clear","data-testid":"preview-shareable-link",label:"Preview",size:"sm",onClick:k}),d.jsx(ne,{color:"light-grey","data-testid":"copy-shareable-link",label:v?"Copied":"Copy link",size:"sm",onClick:S})]})]})]})]}),d.jsxs("div",{className:"items-center-mt-1 flex text-sm",children:["All tips and donations are subject to Stripe's ",d.jsx("a",{className:"ml-1 text-green",href:"https://ghost.org/help/tips-donations/",rel:"noopener noreferrer",target:"_blank",children:" tipping policy"}),"."]})]})},_j=Ce(Lj,"Tips & donations"),qt={access:["membership","default","access","subscription","post","membership","comments","commenting","signup","sign up","spam","filters","prevention","prevent","block","domains","email"],tiers:["membership","tiers","payment","paid","stripe"],portal:["membership","portal","signup","sign up","signin","sign in","login","account","membership","support","email","address","support email address","support address"],memberEmails:["membership","signup","welcome email","email","new user","new member","account"],tips:["growth","tips","donations","one time","payment"]},jj=()=>{const{config:n,settings:e}=Le(),[t]=Te(e,["donations_enabled"]),r=Qn(e||[],n||{}),i=Eh("welcomeEmails");return d.jsxs(rs,{keywords:Object.values(qt).flat(),title:"Membership",children:[d.jsx(fj,{keywords:qt.access}),d.jsx(Ej,{keywords:qt.access}),d.jsx(Nj,{keywords:qt.tiers}),d.jsx(Mj,{keywords:qt.portal}),i&&d.jsx(Sj,{keywords:qt.memberEmails}),t&&r&&d.jsx(_j,{keywords:qt.tips})]})},Bj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("announcement-bar/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Highlight important updates or offers",keywords:n,navid:"announcement-bar",testId:"announcement-bar",title:"Announcement bar"})},$j=Ce(Bj,"Announcement bar"),B6=null,jh="CustomThemeSettingsResponseType",Fj=jh,$6=Qr({dataType:jh,path:"/custom_theme_settings/"}),F6=ze({method:"PUT",path:()=>"/custom_theme_settings/",body:n=>({custom_theme_settings:n}),updateQueries:{emberUpdateType:"skip",dataType:jh,update:n=>n}}),is="ThemesResponseType",Hj=Qr({dataType:is,path:"/themes/"}),H6=Qr({dataType:is,path:"/themes/active/"}),V6=ze({method:"PUT",path:n=>`/themes/${n}/activate/`,updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>({...e,themes:e.themes.map(t=>{const r=n.themes.find(({name:i})=>i===t.name);return r||{...t,active:!1}})})},invalidateQueries:{dataType:Fj}}),U6=ze({method:"DELETE",path:n=>`/themes/${n}/`,updateQueries:{dataType:is,emberUpdateType:"delete",update:(n,e,t)=>({...e,themes:e.themes.filter(r=>r.name!==t)})}}),z6=ze({method:"POST",path:()=>"/themes/install/",searchParams:n=>({source:"github",ref:n}),updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}}),W6=ze({method:"POST",path:()=>"/themes/upload/",body:({file:n})=>{const e=new FormData;return e.append("file",n),e},updateQueries:{dataType:is,emberUpdateType:"createOrUpdate",update:(n,e)=>e&&{...e,themes:[...e.themes,...n.themes]}}});function Vj(n){return n.active}function CS(n){return n.name.toLowerCase()==="source"}function AS(n){return n.name.toLowerCase()==="casper"}function q6(n){return CS(n)||AS(n)}function G6(n){return!CS(n)&&!AS(n)&&!Vj(n)}const Uj=()=>{const n=ya(),{config:e}=Le(),t=e.hostSettings?.limits?.customThemes?.allowlist,r=t?.length===1||!1;return{checkThemeLimitError:x.useCallback(async s=>{if(!n?.isLimited("customThemes")||!(r||s&&t&&!t.includes(s.toLowerCase())))return null;try{const o=r?".":s||".";return await n.errorIfWouldGoOverLimit("customThemes",{value:o}),null}catch(o){return o instanceof xa?o.message||"Your current plan doesn't support changing themes.":null}},[n,t,r]),isThemeLimited:n?.isLimited("customThemes")||!1,isThemeLimitCheckReady:n!==void 0,allowedThemesList:t,noThemeChangesAllowed:r}},zj=({keywords:n})=>{const[e,t]=x.useState(null),[r,i]=x.useState(!1),{checkThemeLimitError:s}=Uj(),{updateRoute:a}=be(),{data:o}=Hj(),l=o?.themes.find(f=>f.active);x.useEffect(()=>{(async()=>{i(!0);const h=await s();t(h),i(!1)})()},[s]);const c=async()=>{r||(e?Ke.show(px,{prompt:e,onOk:()=>a({route:"/pro",isExternal:!0})}):a("design/change-theme"))},u=d.jsx(Ye,{values:[{heading:"Active theme",key:"active-theme",value:l?`${l.name} (v${l.package?.version||"1.0"})`:"Loading..."}]});return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Change theme",size:"sm",onClick:c}),description:"Browse and install official themes or upload one",keywords:n,navid:"theme",testId:"theme",title:"Theme",children:u})},Wj=Ce(zj,"Branding and design"),qj=""+new URL("design-settings-B-S7bLUU.png",import.meta.url).href,Gj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("design/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Customize the style and layout of your site",keywords:n,navid:"design",testId:"design",title:"Design & branding",children:d.jsx("img",{src:qj})})},Kj=Ce(Gj,"Branding and design"),Zj=({keywords:n})=>{const{updateRoute:e}=be(),t=()=>{e("navigation/edit")};return d.jsx(Se,{customButtons:d.jsx(ne,{className:"mt-[-5px]",color:"clear",label:"Customize",size:"sm",onClick:t}),description:"Set up primary and secondary menus",keywords:n,navid:"navigation",testId:"navigation",title:"Navigation"})},Yj=Ce(Zj,"Navigation"),yn={design:["site","logo","cover","colors","fonts","background","themes","appearance","style","design & branding","design and branding"],theme:["theme","template","upload"],navigation:["site","navigation","menus","primary","secondary","links"],announcementBar:["site","announcement bar","important","banner"]},Jj=()=>d.jsx(d.Fragment,{children:d.jsxs(rs,{keywords:Object.values(yn).flat(),title:"Site",children:[d.jsx(Kj,{keywords:yn.design}),d.jsx(Wj,{keywords:yn.theme}),d.jsx(Yj,{keywords:yn.navigation}),d.jsx($j,{keywords:yn.announcementBar})]})}),Xj=()=>d.jsx(d.Fragment,{children:d.jsxs("div",{className:"mb-[60vh] px-8 pt-16 tablet:max-w-[760px] tablet:px-14 tablet:pt-0",children:[d.jsx(P4,{}),d.jsx(Jj,{}),d.jsx(jj,{}),d.jsx(O_,{}),d.jsx(uj,{}),d.jsx(x_,{})]})}),Qj="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAC9FBMVEUAAAB+J/tVRv9VRf9VRv9XRP9VRf+UGf9ZQf94Lv9WRP/dAPBYRP9yMP+9AP7VAPNWQv9cPv9xMf+DIv+PG//KAPfdAO95Kv9/Jv/1DvHXAPTzAPOjEP9qN//lAPFbQf/5A/JWRf9hPf/5APLFAPr/H/BXRf+rCf9qNv+cE//xAPF3Lf9bQP9sM/9jOv9XPf9mPP/9O+fcHO5iPv//Ref/R+fDAPv/ROhtNf9VRf/eAPH/QOnyAPLUAPOoDP/vAPP8BPLXAPOxB/95LP//SeeHI///GfH+E/L/QOilDv/GAPdsNP9aP//yAfCvCP/uAe7mAO/RAPJbQP+9BPZXRf99M//NAPdfPv/fAPKwCP9yMv/EAPpdQP/NAPZhPf/TAPSdFP+4A///Ku+rC/+/AP7vAPK5Av9uNf/+BfObFP/pAPKDJf9zMP9lO/+UGv+9AP7fAPDMAPZmOv/EAPv4AvJXQ//6APFeP/+vCP/0APGNH/9cQP+eFP/oAPG4A/6KH/+8AP2pCv/FAPn7APPfAPHKAPS4Bv6FIf/lAPXzHPPgAPJhPf/sAPL/Nez4APN4Lv+IJP//QemFJf//R+d5Lf+JIv9fP/+UGv//R+h+Kv+bFf/eAPJtNf+VGf/yAPKQHf//QeiHI//QAPX/Ref3APP/MO2FJP+uB/+MH///L+3/NetpN/+vB///RejsAPFkOv+hEv9kPP//LO3/NepoOP//R+brAfC6Af7bAPLgAPDdAPFbP//4BPP/SOr1APDLAPa2Bv9qOP92L//CAPz/EfOAKf/UAPPGAPqrC/9oOP++AP7/NuyOHv/UAPRmO/+FJf+2BP//MO78CvL/POpuNv//POpWRf//Qeh6LP+cFv9kOv//Ke9gPf+aFf//F/H8APH/N+voAPD/SueWGP+BJ//CAPj7BvLRAPX2APByMf+hDf/hAPP/SOr/K+/jAPK1BP/QAPb/HfHNAPaNIP+4Av/zAPPOAPb/M+xdP/+5AP/HAPj/Tehx7sdAAAAA/HRSTlMABYVVdWhvPDWGfG5kWFhYRj4yMCwsKyIeE6mkoIuLiYWDb21pZWFNSERCLisrJhkSDge1oJyZlZN/enp3bGtnYV9eXFtVVU1HRT85ODY1NC4mIA8OCc2+uaako56dmJeWkZGJg39+fXl0dG5sa2lmZWRiXl5dW1lVUU9NTElHRUI9OTk3MiYkGArWzcnHwLu7trWxr62spqWenJqZlY6JiYSEgn9+fXl3d3V0cW1saGdeXlNRUE5NTT01MDAvKyoe19DHx8bDwLu6t7e0sqmpqKelpZ2alZCPjIaGgH10cWtiX15cWFZKRD4vHRfRvr28sK+YlpaNiHl4cThB/jUsAAAEnElEQVRIx2JAB4whBgYGIaEMxAGdUhYmJkUuFlY15mqfIILKORSvXZNnAgJFSxY2IOARDMGnnFEp7o4SK48aDysbiyXIHiDFxayPU72+7C2l9VsEfHw4ODh8BAWYWbmYLNnYLJlKcbhMz2L16iJBjt06Onp6QfpAEKTHwczCwsPKpai2G0sQACRukZPO6y2kq+utsaW66E6csfG0GHlWZmYetVJWFtZyDM8Y3Mjh5BUS0n3JmyN78uDB7pPnjMPDQXrkFVmZ1ViYBZg5UDUsy+Z0FhbW1sjh7D90hTcIbIauxsZcJfnw7hieci7m3QICjEjqn6xYlq0trO18o/8QpzhCOIRj4+rcuO5w+VIuNR3BaoQOiYXZC4HmZ086OlMcPSxy028BnZb7g0dHQAAumpc3v15EZNmkqa5Ygk9D1uKcbJyS0kafch2YBQBlZuaJiKyY+pkda4ALWVyZkz6nqLxaowgqUpN3l13k8fS57AyM2BIAg1BUlKyFrIag93pBsEjoBrsNIpoJsx5D1WPqeDllDmcUr5Cu93qwwCu7zJpXmbNuwpVjAud+zqh0XT2JLd4gnrrdcj/1ZBlPBjw6OKfMnCIkLqHNC+I4rbHzs0tMxpvwQ8/PPMorIS7ubMDAEJy/3KluTWQF3pTPUDVpwkKJdglnbQaGA/lpfBVpkQcYCFgxYapwe/uTegaGtvwUPr7EREK5cf6ZCa7iwq7AqBVVSSzmi1YhqGH6mRXt7FVgDWb5T09tJ6Th5tzpc0Xq66tAGqJ/PT3cREB9cMLdhFnsmuxVjAAxBBbGLioOEyWgoU1mQ4KMpiZ7DSPDa8f42MKwVgIaGmUqZGQ8gRqAljkuOmv7wYuABvVIpxPJnp6NmkA2v+2xRVL8DPgjzunC8hNr1Bs9/YC8HfzHzsbbBuO3Ie19cqSTup86KH537ZjdNZt7F171RhdO/fyyva6xwgjI6eDn7orgLsAfSIfN0lLqGrY3gHnbaiO6uK124vNC8fEUM74GL742MN+3Vq5n3kOrDtw6Os2izVL8Gur4IFzJ2nXSPanrsjpxalCJPR7t1dpUDEsPzWVfgTqy1uFSz//tU9hz0VYvFSOogGSlgoJ0X2qqPVblkrZS8WH8+0X3FyJiF6A9GfOAOmyWKGMqF+OWireSim0VDWwqRBJ2S8pQuNSnvERBEkV1Ry23nJQVN7+U7X6xQMdA5GBYlbTy9scjDmVLtCBaDF/v26OVJScnN9vKsaUgokUscMdzFLMMra+uXHrxbZJb2X1lhxIHZRsbG/tKLa2HWdtaxHa9KxAT2+mI7lgXE3Prpad7k1TdShzKKl80+/q+KLGx1/IPCIiQCwhoKcBMbG/WmpgsXjCx9/JK1U1ubs8c7mcob/P1F/OXnucfsNO+A2sAAuZiPsPcfKLJg1Xfby+9p+revGffvmfSCr7+lfaSuOLIw3Ty5IkzFltbr3qwabO7u+qlIxla7solRngS5t5Ha61NJ5teX3D96uXTvRdV3VXvNRPIjm9+uyw2nWFiar5g7WaPzZs8OhkIA8O9Hi6PXLZu3eqx15CBaGBkaIjF7QBYMGrq1RZRzQAAAABJRU5ErkJggg==",_e=({keywords:n,navid:e,...t})=>{const{ref:r,props:i}=Q3(e),{currentSection:s}=mu(),{checkVisible:a}=ba(),l=(Array.isArray(e)?e:[e]).includes(s||"");return d.jsx(dD,{ref:r,isCurrent:l,isVisible:a(n),navid:Array.isArray(e)?e[0]:e,...i,...t})},e6=()=>{const{filter:n,setFilter:e,checkVisible:t,noResult:r,setNoResult:i}=ba(),{updateRoute:s}=be(),a=x.useRef(null),{isAnyTextFieldFocused:o}=Gi();x.useEffect(()=>{const v=b=>{b.target instanceof HTMLElement&&(b.target.nodeName==="INPUT"||b.target.nodeName==="TEXTAREA"||b.target.isContentEditable)||b.key==="/"&&!o&&(b?.preventDefault(),a.current&&a.current.focus())};return window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}}),x.useEffect(()=>{a.current&&a.current.focus()},[]),x.useEffect(()=>{!t(Object.values(ot).flat())&&!t(Object.values(yn).flat())&&!t(Object.values(qt).flat())&&!t(Object.values(tn).flat())&&!t(Object.values(gr).flat())&&!t(Object.values(Wt).flat())?i(!0):i(!1)},[t,i,n]),x.useEffect(()=>{const v=b=>{b.key==="Escape"&&n&&(a.current?.blur(),b.stopPropagation())};return a.current?.addEventListener("keydown",v),()=>{a.current?.removeEventListener("keydown",v)}},[n]);const{settings:l,config:c}=Le(),[u]=Te(l,["donations_enabled"]),f=Qn(l||[],c||{}),h=Eh("welcomeEmails"),p=v=>{v&&(e(""),i(!1),s(v.currentTarget.id))},g=v=>{e(v.target.value),v.target.value&&document.querySelector(".admin-x-settings")?.scrollTo({top:0,left:0})},m=_("hidden pt-10 tablet:!visible tablet:!block");return d.jsxs("div",{className:"ml-auto flex w-full flex-col pt-0 tablet:max-w-[240px]","data-testid":"sidebar",children:[d.jsx("div",{className:"sticky top-0 flex content-stretch items-end tablet:h-20 tablet:bg-grey-50 xl:h-20 dark:bg-grey-975 dark:tablet:bg-[#101114]",children:d.jsxs("div",{className:"relative w-full",children:[d.jsx(ge,{className:"absolute left-3 top-3 z-10",colorClass:"text-grey-500",name:"magnifying-glass",size:"sm"}),d.jsx(tt,{autoComplete:"off",autoCorrect:"off",className:"mr-12 flex h-10 w-full items-center rounded-lg border border-transparent bg-white px-[33px] py-1.5 text-[14px] shadow-[0_0_1px_rgba(21,23,26,0.25),0_1px_3px_rgba(0,0,0,0.03),0_8px_10px_-12px_rgba(0,0,0,.1)] transition-colors hover:shadow-sm focus:border-green focus:bg-white focus:shadow-[0_0_0_2px_rgba(48,207,67,0.25)] focus:outline-2 tablet:mr-0 dark:border-transparent dark:bg-grey-925 dark:text-white dark:placeholder:text-grey-800 dark:focus:border-green dark:focus:bg-grey-950",containerClassName:"w-100",inputRef:a,placeholder:"Search settings",title:"Search",value:n,clearBg:!0,hideTitle:!0,unstyled:!0,onChange:g}),n?d.jsx(ne,{className:"absolute right-14 top-3 p-1 tablet:right-3",icon:"close",iconColorClass:"text-grey-700 !w-[10px] !h-[10px]",size:"sm",unstyled:!0,onClick:()=>{e(""),a.current?.focus()}}):d.jsx("div",{className:"absolute -right-1/2 top-[9px] hidden rounded border border-grey-400 bg-white px-1.5 py-0.5 text-2xs font-semibold uppercase tracking-wider text-grey-600 shadow-[0px_1px_#CED4D9] tablet:!visible tablet:right-3 tablet:!block dark:border-grey-800 dark:bg-grey-900 dark:text-grey-500 dark:shadow-[0px_1px_#626D79]",children:"/"})]})}),d.jsxs("nav",{className:m,id:"admin-x-settings-sidebar",children:[r&&d.jsxs("div",{className:"ml-2 text-base text-grey-700",children:[d.jsx("h2",{className:"mb-2 text-base font-semibold tracking-normal text-black dark:text-white",children:"No result"}),d.jsxs("div",{children:[`We couldn't find any setting matching '${n}'`,"."]})]}),d.jsxs(cs,{isVisible:t(Object.values(ot).flat()),title:"General settings",children:[d.jsx(_e,{icon:"textfield",keywords:ot.titleAndDescription,navid:"general",title:"Title & description",onClick:p}),d.jsx(_e,{icon:"world-clock",keywords:ot.timeZone,navid:"timezone",title:"Timezone",onClick:p}),d.jsx(_e,{icon:"language",keywords:ot.publicationLanguage,navid:"publication-language",title:"Publication language",onClick:p}),d.jsx(_e,{icon:"user-pen",keywords:ot.users,navid:"staff",title:"Staff",onClick:p}),d.jsx(_e,{icon:"layer",keywords:ot.metadata,navid:"metadata",title:"Meta data",onClick:p}),d.jsx(_e,{icon:"like",keywords:ot.socialAccounts,navid:"social-accounts",title:"Social accounts",onClick:p}),d.jsx(_e,{icon:"baseline-chart",keywords:ot.analytics,navid:"analytics",title:"Analytics",onClick:p}),d.jsx(_e,{icon:"lock-locked",keywords:ot.lockSite,navid:"locksite",title:"Make this site private",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(yn).flat()),title:"Site",children:[d.jsx(_e,{icon:"palette",keywords:yn.design,navid:"design",title:"Design & branding",onClick:p}),d.jsx(_e,{icon:"layout-2-col",keywords:yn.theme,navid:"theme",title:"Theme",onClick:p}),d.jsx(_e,{icon:"navigation",keywords:yn.navigation,navid:"navigation",title:"Navigation",onClick:p}),d.jsx(_e,{icon:"megaphone",keywords:yn.announcementBar,navid:"announcement-bar",title:"Announcement bar",onClick:p})]}),d.jsxs(cs,{isVisible:t([...Object.values(qt).flat(),...gr.newslettersNavMenu]),title:"Membership",children:[d.jsx(_e,{icon:"key",keywords:qt.access,navid:["members","spam-filters"],title:"Access",onClick:p}),d.jsx(_e,{icon:"bills",keywords:qt.tiers,navid:"tiers",title:"Tiers",onClick:p}),d.jsx(_e,{icon:"portal",keywords:qt.portal,navid:"portal",title:"Signup portal",onClick:p}),h&&d.jsx(_e,{icon:"mailplus",keywords:qt.memberEmails,navid:"memberemails",title:"Welcome emails",onClick:p}),u&&f&&d.jsx(_e,{icon:"piggybank",keywords:qt.tips,navid:"tips-and-donations",title:"Tips & donations",onClick:p}),d.jsx(_e,{icon:"email",keywords:gr.newslettersNavMenu,navid:["enable-newsletters","default-recipients","newsletters","mailgun"],title:"Newsletters",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(tn).flat()),title:"Growth",children:[d.jsx(_e,{icon:"ap-network",keywords:tn.network,navid:"network",title:"Network",onClick:p}),d.jsx(_e,{icon:"globe-simple",keywords:tn.explore,navid:"explore",title:"Ghost Explore",onClick:p}),d.jsx(_e,{icon:"heart",keywords:tn.recommendations,navid:"recommendations",title:"Recommendations",onClick:p}),d.jsx(_e,{icon:"emailfield",keywords:tn.embedSignupForm,navid:"embed-signup-form",title:"Signup forms",onClick:p}),f&&d.jsx(_e,{icon:"discount",keywords:tn.offers,navid:"offers",title:"Offers",onClick:p})]}),d.jsxs(cs,{isVisible:t(Object.values(Wt).flat()),title:"Advanced",children:[d.jsx(_e,{icon:"modules-3",keywords:Wt.integrations,navid:"integrations",title:"Integrations",onClick:p}),d.jsx(_e,{icon:"download",keywords:Wt.migrationtools,navid:"migration",title:"Import/Export",onClick:p}),d.jsx(_e,{icon:"brackets",keywords:Wt.codeInjection,navid:"code-injection",title:"Code injection",onClick:p}),d.jsx(_e,{icon:"labs-flask",keywords:Wt.labs,navid:"labs",title:"Labs",onClick:p}),d.jsx(_e,{icon:"time-back",keywords:Wt.history,navid:"history",title:"History",onClick:p})]}),!n&&d.jsxs("a",{className:"w-100 mb-10 mt-1 flex h-[38px] cursor-pointer items-center rounded-lg px-3 py-2 text-left text-[14px] font-medium text-grey-800 transition-all hover:bg-grey-200 focus:bg-grey-100 dark:text-grey-600 dark:hover:bg-grey-950 dark:focus:bg-grey-925",onClick:()=>{s("about")},children:[d.jsx("img",{alt:"Ghost Logo",className:"mr-[7px] size-[18px]",src:Qj}),"About Ghost"]})]})]})},Qv=({children:n})=>d.jsxs(d.Fragment,{children:[d.jsx("div",{className:"fixed right-0 top-2 z-50 flex justify-end bg-transparent p-8 tablet:fixed tablet:top-0 tablet:px-8",id:"done-button-container",children:d.jsx(_3,{})}),d.jsx("div",{className:"w-full tablet:fixed tablet:left-0 tablet:top-0 tablet:flex tablet:h-full dark:bg-grey-975",id:"admin-x-settings-content",children:n})]}),t6=()=>{const{currentUser:n}=Le(),{loadingModal:e}=be(),{isDirty:t}=Vc(),r=i=>{window.location.hash=i};return x.useEffect(()=>{const i=s=>{if(s.key==="Escape"){if(document.getElementById("modal-backdrop"))return;Ps(t,()=>{r("/")})}};return window.addEventListener("keydown",i),()=>{window.removeEventListener("keydown",i)}},[t]),x.useEffect(()=>{v2.remove()},[]),b2(n)?ab(n)?d.jsx(Qv,{children:d.jsxs("div",{className:"mx-auto w-full max-w-5xl overflow-y-auto px-[5vmin] tablet:mt-16 xl:mt-10",id:"admin-x-settings-scroller",children:[d.jsx(ft,{className:"mb-[5vmin]",children:"Settings"}),d.jsx(mS,{highlight:!1,keywords:[]})]})}):d.jsxs(Qv,{children:[e&&d.jsx("div",{className:`fixed inset-0 z-40 h-[calc(100vh-55px)] w-[100vw] tablet:h-[100vh] ${hx}`}),d.jsx("div",{className:"no-scrollbar fixed inset-x-0 top-0 z-[35] flex-1 basis-[320px] bg-white p-8 tablet:relative tablet:inset-x-auto tablet:top-auto tablet:h-full tablet:overflow-y-scroll tablet:bg-grey-50 tablet:py-0 dark:bg-grey-975 dark:tablet:bg-[#101114]",id:"admin-x-settings-sidebar-scroller",children:d.jsx("div",{className:"relative w-full",children:d.jsx(e6,{})})}),d.jsx("div",{className:"relative h-full flex-1 overflow-y-scroll bg-white pt-12 tablet:basis-[800px] dark:bg-grey-975 dark:tablet:bg-black",id:"admin-x-settings-scroller",children:d.jsx(Xj,{})})]}):null},n6={"design/change-theme":"DesignAndThemeModal","design/edit":"DesignAndThemeModal","theme/install":"DesignAndThemeModal","navigation/edit":"NavigationModal","staff/invite":"InviteUserModal","staff/:slug/social-links":"UserDetailModal","staff/:slug/email-notifications":"UserDetailModal","staff/:slug/edit":"UserDetailModal","staff/:slug":"UserDetailModal","portal/edit":"PortalModal","tiers/add":"TierDetailModal","tiers/:id":"TierDetailModal","stripe-connect":"StripeConnectModal","newsletters/new":"AddNewsletterModal","newsletters/:id":"NewsletterDetailModal","history/view":"HistoryModal","history/view/:user":"HistoryModal","integrations/zapier":"ZapierModal","integrations/transistor":"TransistorModal","integrations/slack":"SlackModal","integrations/unsplash":"UnsplashModal","integrations/firstpromoter":"FirstPromoterModal","integrations/pintura":"PinturaModal","integrations/new":"AddIntegrationModal","integrations/:id":"CustomIntegrationModal","recommendations/add":"AddRecommendationModal","recommendations/edit":"EditRecommendationModal","announcement-bar/edit":"AnnouncementBarModal","embed-signup-form/show":"EmbedSignupFormModal","offers/edit":"OffersContainerModal","offers/edit/:id":"OffersContainerModal","offers/new":"OffersContainerModal","explore/testimonial":"TestimonialsModal",about:"AboutModal"},r6=()=>ea(()=>import("./modals-fMQzR7L6.js"),__vite__mapDeps([10,1,2,4,11,5,6,3,12]),import.meta.url),i6=()=>{const{updateNavigatedSection:n,scrollToSection:e}=mu(),{route:t}=be();return K3((r,i)=>{r===i&&e(r.split("/")[0])},[e]),x.useEffect(()=>{t!==void 0&&n(t.split("/")[0])},[t,n]),null};function s6({designSystem:n,upgradeStatus:e}){return d.jsx(RL,{upgradeStatus:e,children:d.jsx(Ke.Provider,{children:d.jsx(G3,{basePath:"settings",modals:{paths:n6,load:r6},children:d.jsxs(bD,{className:"admin-x-settings",...n,children:[d.jsx(i6,{}),d.jsx(t6,{})]})})})})}async function a6(){return await ea(()=>import("./koenig-lexical-D2XHvS2J.js"),__vite__mapDeps([13,1,2]),import.meta.url)}function o6(){return Vr.createPortal(d.jsx("div",{className:"shade shade-admin",style:{position:"absolute",inset:0,zIndex:20},children:d.jsx(s6,{designSystem:{darkMode:!1,fetchKoenigLexical:a6}})}),document.body)}const K6=Object.freeze(Object.defineProperty({__proto__:null,default:o6},Symbol.toStringTag,{value:"Module"}));export{Gr as $,yr as A,ne as B,Ns as C,dT as D,G as E,Ps as F,Kn as G,ft as H,We as I,dI as J,ik as K,gf as L,Or as M,hy as N,Jf as O,bT as P,M6 as Q,L3 as R,Ct as S,dt as T,Ke as U,be as V,gu as W,eL as X,Le as Y,Yi as Z,Zc as _,Mn as a,Rh as a$,Ph as a0,Ot as a1,Xf as a2,Vv as a3,z4 as a4,X2 as a5,tt as a6,Uv as a7,J2 as a8,rn as a9,H6 as aA,CS as aB,AS as aC,Vj as aD,V6 as aE,U6 as aF,G6 as aG,D6 as aH,q6 as aI,Hj as aJ,z6 as aK,Uj as aL,W6 as aM,tc as aN,qw as aO,Zi as aP,qr as aQ,B6 as aR,$6 as aS,F6 as aT,Jw as aU,$u as aV,ux as aW,iI as aX,ei as aY,zf as aZ,Yw as a_,rI as aa,lD as ab,j6 as ac,R6 as ad,h6 as ae,I6 as af,ya as ag,xa as ah,px as ai,dx as aj,kn as ak,L6 as al,yS as am,qL as an,rj as ao,_6 as ap,Pu as aq,Tf as ar,Ti as as,tu as at,Hn as au,E6 as av,F_ as aw,Uh as ax,pd as ay,sI as az,Jt as b,r_ as b0,QL as b1,e_ as b2,p6 as b3,O6 as b4,Bi as b5,N6 as b6,Zw as b7,T6 as b8,vS as b9,P6 as ba,Qj as bb,Dp as bc,uD as bd,Eh as be,Ye as bf,$v as bg,Hv as bh,Fv as bi,w4 as bj,Bv as bk,y4 as bl,Gw as bm,sj as bn,K6 as bo,xe as c,S6 as d,k6 as e,YT as f,x6 as g,At as h,FT as i,g6 as j,y6 as k,w6 as l,_T as m,LT as n,C6 as o,v6 as p,dP as q,B as r,RT as s,j as t,Gi as u,A6 as v,yN as w,O2 as x,ir as y,Vc as z};
|