@tencent-ai/codebuddy-code 0.0.1-beta.12 → 0.0.1-beta.14

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.
@@ -0,0 +1 @@
1
+ "use strict";exports.id=422,exports.ids=[422],exports.modules={7422:(e,t,n)=>{n.a(e,(async(e,r)=>{try{n.r(t),n.d(t,{LoginView:()=>LoginView});var l=n(80932),a=n(14083),o=n(96540),c=n(66814),i=n(9813),s=n(82101),u=n(34209),m=n(53829),E=n(49034),d=n(47693),g=n(83175),b=n(42790),y=e([a,s,m,E,b]);[a,s,m,E,b]=y.then?(await y)():y;const LoginView=()=>{const{staticKey:e}=(0,E._W)();return o.createElement(o.Fragment,null,o.createElement(a.jC,{key:`login-view-${e}`,items:[o.createElement(LogoBox,{key:"logo-box"}),o.createElement(NewVersionBox,{key:"new-version-box"})]},(e=>e)),o.createElement(LoginBox,null))},LogoBox=()=>{const e=`Welcome to ${u.KR}`,t=e.length+8;return o.createElement(o.Fragment,null,o.createElement(a.az,{marginBottom:1,paddingLeft:1,borderStyle:"round",borderColor:g.Q.brand,width:t},o.createElement(a.EY,{color:g.Q.brand},"✻ ",e)),o.createElement(b.H,null))},NewVersionBox=()=>{const e="cyan",t=i.CW.getCurrentPackageJson(),n=t.version.includes("beta"),r=t.version.includes("alpha"),l=n?"@beta":r?"@alpha":"";return o.createElement(a.az,{paddingX:1,flexDirection:"column",borderStyle:"round",borderColor:e},o.createElement(a.EY,{color:e},"New Version Updated v",t.version," Release! Please visit ",u.KR," website to read changelog."),o.createElement(a.EY,{color:e},"Run npm install -g ",u.JP,l))},LoginBox=()=>{const{authSession:e,navigate:t}=(0,c.i7)(m.aO,(e=>({authSession:e.authSession,navigate:e.navigate}))),[n,r]=(0,o.useState)("idle"),[i,u]=(0,o.useState)(""),[b,y]=(0,o.useState)(""),h=(0,o.useRef)(new AbortController);return(0,o.useEffect)((()=>{const e=(0,d.bi)().urlSubject.subscribe(u);return()=>e.unsubscribe()}),[]),(0,a.Ge)(((l,a)=>{if(E.Om.RETURN(a)&&"idle"===n)try{r("loading"),y(""),(0,d.Yf)().login(h.current)}catch(e){r("error"),y(e instanceof Error?e.message:"Unknown error occurred")}else E.Om.ESCAPE(a)&&("loading"===n?(h.current.abort(),r("idle")):e&&t("/chat"))})),o.createElement(a.az,{paddingX:1,flexDirection:"column",gap:1,borderStyle:"round",borderColor:"grey"},"idle"===n?o.createElement(o.Fragment,null,o.createElement(a.az,null,o.createElement(a.EY,null,"Select login method:")),o.createElement(a.az,null,o.createElement(a.EY,{color:"green"},l.Ay.bullet," Login with Tencent Cloud CodeBuddy")),o.createElement(a.az,{justifyContent:"space-between"},o.createElement(a.EY,{color:"grey"},"(Press Enter to login)"))):"loading"===n?o.createElement(a.az,{paddingY:1,gap:1,flexDirection:"column"},o.createElement(a.az,null,o.createElement(a.EY,{color:"grey"},"Browser didn't open? User the url below to sign in:")),i&&o.createElement(a.az,null,o.createElement(a.EY,{color:"grey"},i)),o.createElement(a.az,{marginTop:1,gap:1},o.createElement(a.EY,{color:g.Q.brand},o.createElement(s.y$,{type:"star"})),o.createElement(a.EY,null,"Waiting for auth... (Press ESC to cancel)"))):"error"===n?o.createElement(o.Fragment,null,o.createElement(a.EY,{color:"red"},"Failed to login."),b&&o.createElement(a.EY,{color:"red"},"Message: ",b)):void 0)};r()}catch(e){r(e)}}))},42790:(e,t,n)=>{n.a(e,(async(e,r)=>{try{n.d(t,{H:()=>LogoText});var l=n(1597),a=n(14083),o=n(96540),c=n(83175),i=e([a]);a=(i.then?(await i)():i)[0];const LogoText=()=>{const e=(0,o.useRef)((0,l.Ay)(c.Q.GradientColors)),t=(0,o.useCallback)((t=>e.current.multiline(t)),[e]);return o.createElement(a.dL,{transform:t},o.createElement(a.EY,null,"\n ██████╗ ██████╗ ██████╗ ███████╗██████╗ ██╗ ██╗██████╗ ██████╗ ██╗ ██╗ ██████╗ ██████╗ ██████╗ ███████╗\n██╔════╝██╔═══██╗██╔══██╗██╔════╝██╔══██╗██║ ██║██╔══██╗██╔══██╗╚██╗ ██╔╝ ██╔════╝██╔═══██╗██╔══██╗██╔════╝\n██║ ██║ ██║██║ ██║█████╗ ██████╔╝██║ ██║██║ ██║██║ ██║ ╚████╔╝ ██║ ██║ ██║██║ ██║█████╗ \n██║ ██║ ██║██║ ██║██╔══╝ ██╔══██╗██║ ██║██║ ██║██║ ██║ ╚██╔╝ ██║ ██║ ██║██║ ██║██╔══╝ \n╚██████╗╚██████╔╝██████╔╝███████╗██████╔╝╚██████╔╝██████╔╝██████╔╝ ██║ ╚██████╗╚██████╔╝██████╔╝███████╗\n ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝╚═════╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚══════╝\n \n\n . * . * . *\n /\\_/\\ \n ( o.o ) * . * \n > ^ < . \n"))};r()}catch(e){r(e)}}))}};
@@ -0,0 +1 @@
1
+ "use strict";exports.id=566,exports.ids=[566],exports.modules={19250:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{NH:()=>m.NH,pF:()=>o.pF});var r=a(77146),c=a(89536),l=a(70790),o=a(62875),m=a(82388),s=e([r,c,l,o,m]);[r,c,l,o,m]=s.then?(await s)():s,n()}catch(e){n(e)}}))},24960:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{Er:()=>d,Tt:()=>u,hB:()=>i});var r=a(96540),c=a(36330),l=a(82101),o=a(49034),m=a(54156),s=e([c,l,o,m]);[c,l,o,m]=s.then?(await s)():s;const i=r.memo((({msg:e})=>e.content.map((t=>{const{columns:a}=(0,o.HP)(),n="output_text"===t.type?t.text:"";return e.providerData?.skipRun?r.createElement(c.HA,null,r.createElement(l.EY,{color:"incomplete"===e.status?"red":"white"},n)):r.createElement(l.az,{alignItems:"flex-start",marginTop:1,key:`${e.id}-${n}`},r.createElement(l.az,{flexShrink:0},r.createElement(l.EY,{color:"white"},"● ")),r.createElement(l.az,{width:a-2},r.createElement(l.oz,{content:n})))})))),u=r.memo((({msg:e,expanded:t})=>r.createElement(l.az,{key:`${e.id}-${e.callId}-call-${e.status}`,marginTop:1},r.createElement(m.Jv,{msg:e,expanded:t})))),d=r.memo((({msg:e,expanded:t})=>r.createElement(l.az,{key:`${e.id}-${e.callId}-result`},r.createElement(m.KR,{msg:e,expanded:t}))));n()}catch(e){n(e)}}))},28143:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{a:()=>o});var r=a(96540),c=a(82101),l=e([c]);c=(l.then?(await l)():l)[0];const MessageBox=({text:e})=>r.createElement(c.az,{marginTop:1},r.createElement(c.az,{flexShrink:0},r.createElement(c.EY,{color:"grey"},"> ")),r.createElement(c.EY,{color:"grey"},e)),o=(0,r.memo)((({msg:e})=>{const t=(0,r.useCallback)(((e,t)=>t?.content??e),[e]);return"string"==typeof e.content?r.createElement(MessageBox,{key:`${e.id}-${e.content}`,text:t(e.content,e.providerData)}):e.content.map((a=>"input_text"===a.type?r.createElement(MessageBox,{text:t(a.text,a.providerData),key:`${e.id}-${a.text}`}):r.createElement(r.Fragment,null)))}));n()}catch(e){n(e)}}))},66530:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{f:()=>ChatHeaderBox});var r=a(1708),c=a(96540),l=a(66814),o=a(3238),m=a(82101),s=a(34209),i=a(53829),u=a(83175),d=e([m,i]);[m,i]=d.then?(await d)():d;const ChatHeaderBox=()=>c.createElement(c.Fragment,null,c.createElement(WelcomeBox,null),c.createElement(TipsBox,null),c.createElement(HelloBox,null)),WelcomeBox=()=>{const e="Working in",t=(0,r.cwd)(),a=[`Welcome to ${s.KR}!`,"/help for help, /status for your current setup",`${e} ${t}`],n=Math.max(...a.map((e=>e.length)))+8,l=u.Q.brand,o="grey";return c.createElement(m.az,{marginBottom:1,paddingX:1,gap:1,borderStyle:"round",borderColor:l,width:n},c.createElement(m.az,{flexShrink:0},c.createElement(m.EY,{color:l},"✻")),c.createElement(m.az,{flexDirection:"column"},c.createElement(m.EY,null,a[0],"\n"),c.createElement(m.EY,{color:o},a[1],"\n"),c.createElement(m.az,{gap:1},c.createElement(m.EY,{color:o},e),c.createElement(m.EY,{color:u.Q.brand},t))))},TipsBox=()=>c.createElement(m.az,{marginBottom:1,paddingLeft:1,flexDirection:"column"},c.createElement(m.EY,{color:"grey"},"※ Tips for getting started:"),c.createElement(m.EY,{color:"grey"},"1. Ask questions, edit files, or run commands."),c.createElement(m.EY,{color:"grey"},"2. Be specific for the best results."),c.createElement(m.az,{gap:1},c.createElement(m.EY,{color:"grey"},"3. Run /init to create a"),c.createElement(m.EY,null,o._b),c.createElement(m.EY,{color:"grey"},"file with instructions for codebase."))),HelloBox=()=>{const e=(0,l.i7)(i.aO,(e=>e.authSession)),t=e?.account.nickname,a="grey",n=`What can I help you with today? You've got a well-structured project (${s.Dt}) with CLI and core packages, documentation, tests, and various configurations. Or just here to chat! Let me know. 🚀`;return c.createElement(m.az,{marginBottom:1,paddingLeft:1,flexDirection:"column",borderStyle:"round",borderColor:a},c.createElement(m.EY,{color:a},"Hi ",t,"! 👋","\n"),c.createElement(m.az,{paddingX:3},c.createElement(m.EY,{color:a},n)))};n()}catch(e){n(e)}}))},88851:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{i:()=>m});var r=a(96540),c=a(36330),l=a(66438),o=e([c,l]);[c,l]=o.then?(await o)():o;const m=r.memo((({msg:e,expanded:t})=>e.content.map((a=>{const n="output_text"===a.type?a.text:"";return r.createElement(c.HA,{key:`${e.id}-compact-branch`},r.createElement(l._g,{result:n,expanded:t}))}))));n()}catch(e){n(e)}}))},90566:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.r(t),a.d(t,{ChatView:()=>ChatView});var r=a(14083),c=a(96540),l=a(66814),o=a(26730),m=a(53829),s=a(59505),i=a(19250),u=a(66530),d=a(92709),E=e([r,o,m,s,i,u,d]);[r,o,m,s,i,u,d]=E.then?(await E)():E;const g=c.memo((()=>{const e=(0,l.i7)(m.Gb,(e=>e.staticKey)),t=(0,l.i7)(m.rZ,(e=>e.messageGroups)),a=(0,d.A)(t),[n,o]=(0,c.useState)([]);(0,c.useEffect)((()=>{o((()=>t.reduce(((e,t)=>(e.push(...t.messages),e)),[])))}),[t]);const s=c.useMemo((()=>[c.createElement(u.f,{key:"chat-header-box"}),...n.map((e=>c.createElement(d.h,{key:`message-item-${e.id}`,msg:e,expanded:a(e.id)})))]),[n,a]);return c.createElement(r.jC,{key:e,items:s},(e=>e))})),ChatContainer=()=>((0,o.o)(),(0,s.f)(),c.createElement(c.Fragment,null,c.createElement(g,null),c.createElement(i.NH,null,c.createElement(i.pF,null)))),ChatView=()=>c.createElement(m.Fn,null,c.createElement(m.N7,null,c.createElement(m.Y5,null,c.createElement(ChatContainer,null))));n()}catch(e){n(e)}}))},92709:(e,t,a)=>{a.a(e,(async(e,n)=>{try{a.d(t,{A:()=>useExpandedResult,h:()=>g});var r=a(96540),c=a(66814),l=a(31943),o=a(82101),m=a(53829),s=a(49034),i=a(24960),u=a(88851),d=a(28143),E=e([o,m,s,i,u,d]);[o,m,s,i,u,d]=E.then?(await E)():E;const renderMessage=(e,t)=>{const a=`${e.type}-${e.id}`;if("message"===e.type){const{agent:n}=e.providerData||{};switch(e.role){case"user":return r.createElement(d.a,{key:a,msg:e});case"assistant":return n===l.QY.COMPACT?r.createElement(u.i,{key:a,msg:e,expanded:t}):r.createElement(i.hB,{key:a,msg:e});default:return}}switch(e.type){case"function_call":return r.createElement(i.Tt,{key:a,msg:e,expanded:t});case"function_call_result":return r.createElement(i.Er,{key:a,msg:e,expanded:t});default:return}},g=(0,r.memo)((({msg:e,expanded:t})=>renderMessage(e,t))),useExpandedResult=e=>{const t=(0,c.i7)(m.Gb,(e=>e.refreshStatic)),[a,n]=(0,r.useState)([]);(0,r.useEffect)((()=>{const t=e.flatMap((e=>e.messages));if(0===t.length)return void n((e=>0===e.length?e:[]));let a=-1;for(let e=t.length-1;e>=0;e--){const n=t[e];if("message"===n.type&&"user"===n.role){a=e;break}}if(-1===a)for(let e=t.length-1;e>=0;e--)if("function_call"===t[e].type){a=e;break}const r=-1!==a?t.slice(a):[];n((e=>e.length===r.length&&e.every(((e,t)=>e.id===r[t]?.id))?e:r))}),[e]);const[l,i]=(0,r.useState)(!1);return(0,o.Ge)(((e,a)=>{s.Om.CTRL_R(e,a)&&(i(!l),setTimeout((()=>{t()}),0))})),(0,r.useCallback)((e=>-1!==a.findIndex((t=>t.id===e))&&l),[l,a])};n()}catch(e){n(e)}}))}};
@@ -0,0 +1 @@
1
+ exports.id=597,exports.ids=[597],exports.modules={1597:(t,e,o)=>{"use strict";o.d(e,{Ay:()=>P});const wrapAnsi16=(t=0)=>e=>`[${e+t}m`,wrapAnsi256=(t=0)=>e=>`[${38+t};5;${e}m`,wrapAnsi16m=(t=0)=>(e,o,r)=>`[${38+t};2;${e};${o};${r}m`,r={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(r.modifier),Object.keys(r.color),Object.keys(r.bgColor);const n=function assembleStyles(){const t=new Map;for(const[e,o]of Object.entries(r)){for(const[e,n]of Object.entries(o))r[e]={open:`[${n[0]}m`,close:`[${n[1]}m`},o[e]=r[e],t.set(n[0],n[1]);Object.defineProperty(r,e,{value:o,enumerable:!1})}return Object.defineProperty(r,"codes",{value:t,enumerable:!1}),r.color.close="",r.bgColor.close="",r.color.ansi=wrapAnsi16(),r.color.ansi256=wrapAnsi256(),r.color.ansi16m=wrapAnsi16m(),r.bgColor.ansi=wrapAnsi16(10),r.bgColor.ansi256=wrapAnsi256(10),r.bgColor.ansi16m=wrapAnsi16m(10),Object.defineProperties(r,{rgbToAnsi256:{value:(t,e,o)=>t===e&&e===o?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(e/255*5)+Math.round(o/255*5),enumerable:!1},hexToRgb:{value(t){const e=/[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));if(!e)return[0,0,0];let[o]=e;3===o.length&&(o=[...o].map((t=>t+t)).join(""));const r=Number.parseInt(o,16);return[r>>16&255,r>>8&255,255&r]},enumerable:!1},hexToAnsi256:{value:t=>r.rgbToAnsi256(...r.hexToRgb(t)),enumerable:!1},ansi256ToAnsi:{value(t){if(t<8)return 30+t;if(t<16)return t-8+90;let e,o,r;if(t>=232)e=(10*(t-232)+8)/255,o=e,r=e;else{const n=(t-=16)%36;e=Math.floor(t/36)/5,o=Math.floor(n/6)/5,r=n%6/5}const n=2*Math.max(e,o,r);if(0===n)return 30;let i=30+(Math.round(r)<<2|Math.round(o)<<1|Math.round(e));return 2===n&&(i+=60),i},enumerable:!1},rgbToAnsi:{value:(t,e,o)=>r.ansi256ToAnsi(r.rgbToAnsi256(t,e,o)),enumerable:!1},hexToAnsi:{value:t=>r.ansi256ToAnsi(r.hexToAnsi256(t)),enumerable:!1}}),r}();var i=o(1708),a=o(48161),s=o(7066);function hasFlag(t,e=(globalThis.Deno?globalThis.Deno.args:i.argv)){const o=t.startsWith("-")?"":1===t.length?"-":"--",r=e.indexOf(o+t),n=e.indexOf("--");return-1!==r&&(-1===n||r<n)}const{env:l}=i;let c;function _supportsColor(t,{streamIsTTY:e,sniffFlags:o=!0}={}){const r=function envForceColor(){if("FORCE_COLOR"in l)return"true"===l.FORCE_COLOR?1:"false"===l.FORCE_COLOR?0:0===l.FORCE_COLOR.length?1:Math.min(Number.parseInt(l.FORCE_COLOR,10),3)}();void 0!==r&&(c=r);const n=o?c:r;if(0===n)return 0;if(o){if(hasFlag("color=16m")||hasFlag("color=full")||hasFlag("color=truecolor"))return 3;if(hasFlag("color=256"))return 2}if("TF_BUILD"in l&&"AGENT_NAME"in l)return 1;if(t&&!e&&void 0===n)return 0;const s=n||0;if("dumb"===l.TERM)return s;if("win32"===i.platform){const t=a.release().split(".");return Number(t[0])>=10&&Number(t[2])>=10586?Number(t[2])>=14931?3:2:1}if("CI"in l)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((t=>t in l))?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((t=>t in l))||"codeship"===l.CI_NAME?1:s;if("TEAMCITY_VERSION"in l)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(l.TEAMCITY_VERSION)?1:0;if("truecolor"===l.COLORTERM)return 3;if("xterm-kitty"===l.TERM)return 3;if("TERM_PROGRAM"in l){const t=Number.parseInt((l.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(l.TERM_PROGRAM){case"iTerm.app":return t>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(l.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(l.TERM)||"COLORTERM"in l?1:s}function createSupportsColor(t,e={}){return function translateLevel(t){return 0!==t&&{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}(_supportsColor(t,{streamIsTTY:t&&t.isTTY,...e}))}hasFlag("no-color")||hasFlag("no-colors")||hasFlag("color=false")||hasFlag("color=never")?c=0:(hasFlag("color")||hasFlag("colors")||hasFlag("color=true")||hasFlag("color=always"))&&(c=1);const h={stdout:createSupportsColor({isTTY:s.isatty(1)}),stderr:createSupportsColor({isTTY:s.isatty(2)})};function stringReplaceAll(t,e,o){let r=t.indexOf(e);if(-1===r)return t;const n=e.length;let i=0,a="";do{a+=t.slice(i,r)+e+o,i=r+n,r=t.indexOf(e,i)}while(-1!==r);return a+=t.slice(i),a}const{stdout:u,stderr:f}=h,g=Symbol("GENERATOR"),p=Symbol("STYLER"),d=Symbol("IS_EMPTY"),b=["ansi","ansi","ansi256","ansi16m"],m=Object.create(null);const chalkFactory=t=>{const chalk=(...t)=>t.join(" ");return((t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");const o=u?u.level:0;t.level=void 0===e.level?o:e.level})(chalk,t),Object.setPrototypeOf(chalk,createChalk.prototype),chalk};function createChalk(t){return chalkFactory(t)}Object.setPrototypeOf(createChalk.prototype,Function.prototype);for(const[t,e]of Object.entries(n))m[t]={get(){const o=createBuilder(this,createStyler(e.open,e.close,this[p]),this[d]);return Object.defineProperty(this,t,{value:o}),o}};m.visible={get(){const t=createBuilder(this,this[p],!0);return Object.defineProperty(this,"visible",{value:t}),t}};const getModelAnsi=(t,e,o,...r)=>"rgb"===t?"ansi16m"===e?n[o].ansi16m(...r):"ansi256"===e?n[o].ansi256(n.rgbToAnsi256(...r)):n[o].ansi(n.rgbToAnsi(...r)):"hex"===t?getModelAnsi("rgb",e,o,...n.hexToRgb(...r)):n[o][t](...r),y=["rgb","hex","ansi256"];for(const t of y){m[t]={get(){const{level:e}=this;return function(...o){const r=createStyler(getModelAnsi(t,b[e],"color",...o),n.color.close,this[p]);return createBuilder(this,r,this[d])}}};m["bg"+t[0].toUpperCase()+t.slice(1)]={get(){const{level:e}=this;return function(...o){const r=createStyler(getModelAnsi(t,b[e],"bgColor",...o),n.bgColor.close,this[p]);return createBuilder(this,r,this[d])}}}}const v=Object.defineProperties((()=>{}),{...m,level:{enumerable:!0,get(){return this[g].level},set(t){this[g].level=t}}}),createStyler=(t,e,o)=>{let r,n;return void 0===o?(r=t,n=e):(r=o.openAll+t,n=e+o.closeAll),{open:t,close:e,openAll:r,closeAll:n,parent:o}},createBuilder=(t,e,o)=>{const builder=(...t)=>applyStyle(builder,1===t.length?""+t[0]:t.join(" "));return Object.setPrototypeOf(builder,v),builder[g]=t,builder[p]=e,builder[d]=o,builder},applyStyle=(t,e)=>{if(t.level<=0||!e)return t[d]?"":e;let o=t[p];if(void 0===o)return e;const{openAll:r,closeAll:n}=o;if(e.includes(""))for(;void 0!==o;)e=stringReplaceAll(e,o.close,o.open),o=o.parent;const i=e.indexOf("\n");return-1!==i&&(e=function stringEncaseCRLFWithFirstIndex(t,e,o,r){let n=0,i="";do{const a="\r"===t[r-1];i+=t.slice(n,a?r-1:r)+e+(a?"\r\n":"\n")+o,n=r+1,r=t.indexOf("\n",n)}while(-1!==r);return i+=t.slice(n),i}(e,n,r,i)),r+e+n};Object.defineProperties(createChalk.prototype,m);const _=createChalk(),x=(createChalk({level:f?f.level:0}),_);var A=o(34192);const gradient=(...t)=>{let e,o;if(0===t.length)throw new Error("Missing gradient colors");if(Array.isArray(t[0]))e=A(t[0]),o=validateOptions(t[1]);else{if(1===t.length)throw new Error(`Expected an array of colors, received ${JSON.stringify(t[0])}`);e=A(...t)}const fn=(t,r)=>function applyGradient(t,e,o){const r=validateOptions(o),n=Math.max(t.replace(/\s/g,"").length,e.stops.length),i=getColors(e,r,n);let a="";for(const e of t)a+=e.match(/\s/g)?e:x.hex(i.shift()?.toHex()||"#000")(e);return a}(t?t.toString():"",e,r??o);return fn.multiline=(t,r)=>function multiline(t,e,o){const r=validateOptions(o),n=t.split("\n"),i=Math.max(...n.map((t=>t.length)),e.stops.length),a=getColors(e,r,i),s=[];for(const t of n){const e=a.slice(0);let o="";for(const r of t)o+=x.hex(e.shift()?.toHex()||"#000")(r);s.push(o)}return s.join("\n")}(t?t.toString():"",e,r??o),fn},getColors=(t,e,o)=>"hsv"===e.interpolation?.toLowerCase()?t.hsv(o,e.hsvSpin?.toLowerCase()||!1):t.rgb(o);function validateOptions(t){const e={interpolation:"rgb",hsvSpin:"short",...t};if(void 0!==t&&"object"!=typeof t)throw new TypeError(`Expected \`options\` to be an \`object\`, got \`${typeof t}\``);if("string"!=typeof e.interpolation)throw new TypeError(`Expected \`options.interpolation\` to be \`rgb\` or \`hsv\`, got \`${typeof e.interpolation}\``);if("hsv"===e.interpolation.toLowerCase()&&"string"!=typeof e.hsvSpin)throw new TypeError(`Expected \`options.hsvSpin\` to be a \`short\` or \`long\`, got \`${typeof e.hsvSpin}\``);return e}const M={colors:["#bdfff3","#4ac29a"],options:{}},T={colors:["#77a1d3","#79cbca","#e684ae"],options:{}},w={colors:["#473b7b","#3584a7","#30d2be"],options:{}},S={colors:["#ff5f6d","#ffc371"],options:{interpolation:"hsv"}},R={colors:["#5ee7df","#b490ca"],options:{interpolation:"hsv"}},C={colors:["#f43b47","#453a94"],options:{}},H={colors:["#ff4e50","#f9d423"],options:{}},O={colors:["#833ab4","#fd1d1d","#fcb045"],options:{}},k={colors:["#3f51b1","#5a55ae","#7b5fac","#8f6aae","#a86aa4","#cc6b8e","#f18271","#f3a469","#f7c978"],options:{}},E={colors:["#fdbb2d","#22c1c3"],options:{}},F={colors:["#ff0000","#ff0100"],options:{interpolation:"hsv",hsvSpin:"long"}},I={colors:["#74ebd5","#74ecd5"],options:{interpolation:"hsv",hsvSpin:"long"}};function gradientAlias(t){const result=e=>gradient(...t.colors)(e,t.options);return result.multiline=(e="")=>gradient(...t.colors).multiline(e,t.options),result}const P=gradient,N=gradientAlias({colors:["#feac5e","#c779d0","#4bc0c8"],options:{}}),j=gradientAlias(M),L=gradientAlias(T),B=gradientAlias(w),G=gradientAlias(S),$=gradientAlias(R),U=gradientAlias(C),V=gradientAlias(H),D=gradientAlias(O),Y=gradientAlias(k),z=gradientAlias(E),q=gradientAlias(F),W=gradientAlias(I);gradient.atlas=N,gradient.cristal=j,gradient.teen=L,gradient.mind=B,gradient.morning=G,gradient.vice=$,gradient.passion=U,gradient.fruit=V,gradient.instagram=D,gradient.retro=Y,gradient.summer=z,gradient.rainbow=q,gradient.pastel=W},34192:(t,e,o)=>{const r=o(45888),n={r:256,g:256,b:256,a:1},i={h:360,s:1,v:1,a:1};function stepize(t,e,o){let r={};for(let n in t)t.hasOwnProperty(n)&&(r[n]=0===o?0:(e[n]-t[n])/o);return r}function interpolate(t,e,o,r){let n={};for(let i in e)e.hasOwnProperty(i)&&(n[i]=t[i]*o+e[i],n[i]=n[i]<0?n[i]+r[i]:1!==r[i]?n[i]%r[i]:n[i]);return n}function interpolateRgb(t,e,o){const i=t.color.toRgb(),a=stepize(i,e.color.toRgb(),o);let s=[t.color];for(let t=1;t<o;t++){const e=interpolate(a,i,t,n);s.push(r(e))}return s}function interpolateHsv(t,e,o,n){const a=t.color.toHsv(),s=e.color.toHsv();if(0===a.s||0===s.s)return interpolateRgb(t,e,o);let l;if("boolean"==typeof n)l=n;else{const t=a.h<s.h&&s.h-a.h<180||a.h>s.h&&a.h-s.h>180;l="long"===n&&t||"short"===n&&!t}const c=stepize(a,s,o);let h,u=[t.color];h=a.h<=s.h&&!l||a.h>=s.h&&l?s.h-a.h:l?360-s.h+a.h:360-a.h+s.h,c.h=Math.pow(-1,l?1:0)*Math.abs(h)/o;for(let t=1;t<o;t++){const e=interpolate(c,a,t,i);u.push(r(e))}return u}function computeSubsteps(t,e){const o=t.length;if(e=parseInt(e,10),isNaN(e)||e<2)throw new Error("Invalid number of steps (< 2)");if(e<o)throw new Error("Number of steps cannot be inferior to number of stops");let r=[];for(let n=1;n<o;n++){const o=(e-1)*(t[n].pos-t[n-1].pos);r.push(Math.max(1,Math.round(o)))}let n=1;for(let t=o-1;t--;)n+=r[t];for(;n!==e;)if(n<e){const t=Math.min.apply(null,r);r[r.indexOf(t)]++,n++}else{const t=Math.max.apply(null,r);r[r.indexOf(t)]--,n--}return r}function computeAt(t,e,o,n){if(e<0||e>1)throw new Error("Position must be between 0 and 1");let i,a;for(let o=0,r=t.length;o<r-1;o++)if(e>=t[o].pos&&e<t[o+1].pos){i=t[o],a=t[o+1];break}i||(i=a=t[t.length-1]);const s=interpolate(stepize(i.color[o](),a.color[o](),100*(a.pos-i.pos)),i.color[o](),100*(e-i.pos),n);return r(s)}class TinyGradient{constructor(t){if(t.length<2)throw new Error("Invalid number of stops (< 2)");const e=void 0!==t[0].pos;let o=t.length,n=-1,i=!1;this.stops=t.map(((t,a)=>{const s=void 0!==t.pos;if(e^s)throw new Error("Cannot mix positionned and not posionned color stops");if(s){const e=void 0!==t.color;if(!e&&(i||0===a||a===o-1))throw new Error("Cannot define two consecutive position-only stops");if(i=!e,(t={color:e?r(t.color):null,colorLess:!e,pos:t.pos}).pos<0||t.pos>1)throw new Error("Color stops positions must be between 0 and 1");if(t.pos<n)throw new Error("Color stops positions are not ordered");n=t.pos}else t={color:r(void 0!==t.color?t.color:t),pos:a/(o-1)};return t})),0!==this.stops[0].pos&&(this.stops.unshift({color:this.stops[0].color,pos:0}),o++),1!==this.stops[o-1].pos&&this.stops.push({color:this.stops[o-1].color,pos:1})}reverse(){let t=[];return this.stops.forEach((function(e){t.push({color:e.color,pos:1-e.pos})})),new TinyGradient(t.reverse())}loop(){let t=[],e=[];return this.stops.forEach((e=>{t.push({color:e.color,pos:e.pos/2})})),this.stops.slice(0,-1).forEach((t=>{e.push({color:t.color,pos:1-t.pos/2})})),new TinyGradient(t.concat(e.reverse()))}rgb(t){const e=computeSubsteps(this.stops,t);let o=[];this.stops.forEach(((t,e)=>{t.colorLess&&(t.color=interpolateRgb(this.stops[e-1],this.stops[e+1],2)[1])}));for(let t=0,r=this.stops.length;t<r-1;t++){const r=interpolateRgb(this.stops[t],this.stops[t+1],e[t]);o.splice(o.length,0,...r)}return o.push(this.stops[this.stops.length-1].color),o}hsv(t,e){const o=computeSubsteps(this.stops,t);let r=[];this.stops.forEach(((t,o)=>{t.colorLess&&(t.color=interpolateHsv(this.stops[o-1],this.stops[o+1],2,e)[1])}));for(let t=0,n=this.stops.length;t<n-1;t++){const n=interpolateHsv(this.stops[t],this.stops[t+1],o[t],e);r.splice(r.length,0,...n)}return r.push(this.stops[this.stops.length-1].color),r}css(t,e){let o=(t=t||"linear")+"-gradient("+(e=e||("linear"===t?"to right":"ellipse at center"));return this.stops.forEach((function(t){o+=", "+(t.colorLess?"":t.color.toRgbString()+" ")+100*t.pos+"%"})),o+=")",o}rgbAt(t){return computeAt(this.stops,t,"toRgb",n)}hsvAt(t){return computeAt(this.stops,t,"toHsv",i)}}t.exports=function(t){if(1===arguments.length){if(!Array.isArray(arguments[0]))throw new Error('"stops" is not an array');t=arguments[0]}else t=Array.prototype.slice.call(arguments);return new TinyGradient(t)}},45888:function(t){t.exports=function(){"use strict";function _typeof(t){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_typeof(t)}var t=/^\s+/,e=/\s+$/;function tinycolor(t,e){if(e=e||{},(t=t||"")instanceof tinycolor)return t;if(!(this instanceof tinycolor))return new tinycolor(t,e);var o=inputToRGB(t);this._originalInput=t,this._r=o.r,this._g=o.g,this._b=o.b,this._a=o.a,this._roundA=Math.round(100*this._a)/100,this._format=e.format||o.format,this._gradientType=e.gradientType,this._r<1&&(this._r=Math.round(this._r)),this._g<1&&(this._g=Math.round(this._g)),this._b<1&&(this._b=Math.round(this._b)),this._ok=o.ok}function inputToRGB(t){var e={r:0,g:0,b:0},o=1,r=null,n=null,i=null,a=!1,s=!1;return"string"==typeof t&&(t=stringInputToObject(t)),"object"==_typeof(t)&&(isValidCSSUnit(t.r)&&isValidCSSUnit(t.g)&&isValidCSSUnit(t.b)?(e=rgbToRgb(t.r,t.g,t.b),a=!0,s="%"===String(t.r).substr(-1)?"prgb":"rgb"):isValidCSSUnit(t.h)&&isValidCSSUnit(t.s)&&isValidCSSUnit(t.v)?(r=convertToPercentage(t.s),n=convertToPercentage(t.v),e=hsvToRgb(t.h,r,n),a=!0,s="hsv"):isValidCSSUnit(t.h)&&isValidCSSUnit(t.s)&&isValidCSSUnit(t.l)&&(r=convertToPercentage(t.s),i=convertToPercentage(t.l),e=hslToRgb(t.h,r,i),a=!0,s="hsl"),t.hasOwnProperty("a")&&(o=t.a)),o=boundAlpha(o),{ok:a,format:t.format||s,r:Math.min(255,Math.max(e.r,0)),g:Math.min(255,Math.max(e.g,0)),b:Math.min(255,Math.max(e.b,0)),a:o}}function rgbToRgb(t,e,o){return{r:255*bound01(t,255),g:255*bound01(e,255),b:255*bound01(o,255)}}function rgbToHsl(t,e,o){t=bound01(t,255),e=bound01(e,255),o=bound01(o,255);var r,n,i=Math.max(t,e,o),a=Math.min(t,e,o),s=(i+a)/2;if(i==a)r=n=0;else{var l=i-a;switch(n=s>.5?l/(2-i-a):l/(i+a),i){case t:r=(e-o)/l+(e<o?6:0);break;case e:r=(o-t)/l+2;break;case o:r=(t-e)/l+4}r/=6}return{h:r,s:n,l:s}}function hslToRgb(t,e,o){var r,n,i;function hue2rgb(t,e,o){return o<0&&(o+=1),o>1&&(o-=1),o<1/6?t+6*(e-t)*o:o<.5?e:o<2/3?t+(e-t)*(2/3-o)*6:t}if(t=bound01(t,360),e=bound01(e,100),o=bound01(o,100),0===e)r=n=i=o;else{var a=o<.5?o*(1+e):o+e-o*e,s=2*o-a;r=hue2rgb(s,a,t+1/3),n=hue2rgb(s,a,t),i=hue2rgb(s,a,t-1/3)}return{r:255*r,g:255*n,b:255*i}}function rgbToHsv(t,e,o){t=bound01(t,255),e=bound01(e,255),o=bound01(o,255);var r,n,i=Math.max(t,e,o),a=Math.min(t,e,o),s=i,l=i-a;if(n=0===i?0:l/i,i==a)r=0;else{switch(i){case t:r=(e-o)/l+(e<o?6:0);break;case e:r=(o-t)/l+2;break;case o:r=(t-e)/l+4}r/=6}return{h:r,s:n,v:s}}function hsvToRgb(t,e,o){t=6*bound01(t,360),e=bound01(e,100),o=bound01(o,100);var r=Math.floor(t),n=t-r,i=o*(1-e),a=o*(1-n*e),s=o*(1-(1-n)*e),l=r%6;return{r:255*[o,a,i,i,s,o][l],g:255*[s,o,o,a,i,i][l],b:255*[i,i,s,o,o,a][l]}}function rgbToHex(t,e,o,r){var n=[pad2(Math.round(t).toString(16)),pad2(Math.round(e).toString(16)),pad2(Math.round(o).toString(16))];return r&&n[0].charAt(0)==n[0].charAt(1)&&n[1].charAt(0)==n[1].charAt(1)&&n[2].charAt(0)==n[2].charAt(1)?n[0].charAt(0)+n[1].charAt(0)+n[2].charAt(0):n.join("")}function rgbaToHex(t,e,o,r,n){var i=[pad2(Math.round(t).toString(16)),pad2(Math.round(e).toString(16)),pad2(Math.round(o).toString(16)),pad2(convertDecimalToHex(r))];return n&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0):i.join("")}function rgbaToArgbHex(t,e,o,r){return[pad2(convertDecimalToHex(r)),pad2(Math.round(t).toString(16)),pad2(Math.round(e).toString(16)),pad2(Math.round(o).toString(16))].join("")}function _desaturate(t,e){e=0===e?0:e||10;var o=tinycolor(t).toHsl();return o.s-=e/100,o.s=clamp01(o.s),tinycolor(o)}function _saturate(t,e){e=0===e?0:e||10;var o=tinycolor(t).toHsl();return o.s+=e/100,o.s=clamp01(o.s),tinycolor(o)}function _greyscale(t){return tinycolor(t).desaturate(100)}function _lighten(t,e){e=0===e?0:e||10;var o=tinycolor(t).toHsl();return o.l+=e/100,o.l=clamp01(o.l),tinycolor(o)}function _brighten(t,e){e=0===e?0:e||10;var o=tinycolor(t).toRgb();return o.r=Math.max(0,Math.min(255,o.r-Math.round(-e/100*255))),o.g=Math.max(0,Math.min(255,o.g-Math.round(-e/100*255))),o.b=Math.max(0,Math.min(255,o.b-Math.round(-e/100*255))),tinycolor(o)}function _darken(t,e){e=0===e?0:e||10;var o=tinycolor(t).toHsl();return o.l-=e/100,o.l=clamp01(o.l),tinycolor(o)}function _spin(t,e){var o=tinycolor(t).toHsl(),r=(o.h+e)%360;return o.h=r<0?360+r:r,tinycolor(o)}function _complement(t){var e=tinycolor(t).toHsl();return e.h=(e.h+180)%360,tinycolor(e)}function polyad(t,e){if(isNaN(e)||e<=0)throw new Error("Argument to polyad must be a positive number");for(var o=tinycolor(t).toHsl(),r=[tinycolor(t)],n=360/e,i=1;i<e;i++)r.push(tinycolor({h:(o.h+i*n)%360,s:o.s,l:o.l}));return r}function _splitcomplement(t){var e=tinycolor(t).toHsl(),o=e.h;return[tinycolor(t),tinycolor({h:(o+72)%360,s:e.s,l:e.l}),tinycolor({h:(o+216)%360,s:e.s,l:e.l})]}function _analogous(t,e,o){e=e||6,o=o||30;var r=tinycolor(t).toHsl(),n=360/o,i=[tinycolor(t)];for(r.h=(r.h-(n*e>>1)+720)%360;--e;)r.h=(r.h+n)%360,i.push(tinycolor(r));return i}function _monochromatic(t,e){e=e||6;for(var o=tinycolor(t).toHsv(),r=o.h,n=o.s,i=o.v,a=[],s=1/e;e--;)a.push(tinycolor({h:r,s:n,v:i})),i=(i+s)%1;return a}tinycolor.prototype={isDark:function isDark(){return this.getBrightness()<128},isLight:function isLight(){return!this.isDark()},isValid:function isValid(){return this._ok},getOriginalInput:function getOriginalInput(){return this._originalInput},getFormat:function getFormat(){return this._format},getAlpha:function getAlpha(){return this._a},getBrightness:function getBrightness(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function getLuminance(){var t,e,o,r=this.toRgb();return t=r.r/255,e=r.g/255,o=r.b/255,.2126*(t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.7152*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))},setAlpha:function setAlpha(t){return this._a=boundAlpha(t),this._roundA=Math.round(100*this._a)/100,this},toHsv:function toHsv(){var t=rgbToHsv(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function toHsvString(){var t=rgbToHsv(this._r,this._g,this._b),e=Math.round(360*t.h),o=Math.round(100*t.s),r=Math.round(100*t.v);return 1==this._a?"hsv("+e+", "+o+"%, "+r+"%)":"hsva("+e+", "+o+"%, "+r+"%, "+this._roundA+")"},toHsl:function toHsl(){var t=rgbToHsl(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function toHslString(){var t=rgbToHsl(this._r,this._g,this._b),e=Math.round(360*t.h),o=Math.round(100*t.s),r=Math.round(100*t.l);return 1==this._a?"hsl("+e+", "+o+"%, "+r+"%)":"hsla("+e+", "+o+"%, "+r+"%, "+this._roundA+")"},toHex:function toHex(t){return rgbToHex(this._r,this._g,this._b,t)},toHexString:function toHexString(t){return"#"+this.toHex(t)},toHex8:function toHex8(t){return rgbaToHex(this._r,this._g,this._b,this._a,t)},toHex8String:function toHex8String(t){return"#"+this.toHex8(t)},toRgb:function toRgb(){return{r:Math.round(this._r),g:Math.round(this._g),b:Math.round(this._b),a:this._a}},toRgbString:function toRgbString(){return 1==this._a?"rgb("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+")":"rgba("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+", "+this._roundA+")"},toPercentageRgb:function toPercentageRgb(){return{r:Math.round(100*bound01(this._r,255))+"%",g:Math.round(100*bound01(this._g,255))+"%",b:Math.round(100*bound01(this._b,255))+"%",a:this._a}},toPercentageRgbString:function toPercentageRgbString(){return 1==this._a?"rgb("+Math.round(100*bound01(this._r,255))+"%, "+Math.round(100*bound01(this._g,255))+"%, "+Math.round(100*bound01(this._b,255))+"%)":"rgba("+Math.round(100*bound01(this._r,255))+"%, "+Math.round(100*bound01(this._g,255))+"%, "+Math.round(100*bound01(this._b,255))+"%, "+this._roundA+")"},toName:function toName(){return 0===this._a?"transparent":!(this._a<1)&&(r[rgbToHex(this._r,this._g,this._b,!0)]||!1)},toFilter:function toFilter(t){var e="#"+rgbaToArgbHex(this._r,this._g,this._b,this._a),o=e,r=this._gradientType?"GradientType = 1, ":"";if(t){var n=tinycolor(t);o="#"+rgbaToArgbHex(n._r,n._g,n._b,n._a)}return"progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+e+",endColorstr="+o+")"},toString:function toString(t){var e=!!t;t=t||this._format;var o=!1,r=this._a<1&&this._a>=0;return e||!r||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(o=this.toRgbString()),"prgb"===t&&(o=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(o=this.toHexString()),"hex3"===t&&(o=this.toHexString(!0)),"hex4"===t&&(o=this.toHex8String(!0)),"hex8"===t&&(o=this.toHex8String()),"name"===t&&(o=this.toName()),"hsl"===t&&(o=this.toHslString()),"hsv"===t&&(o=this.toHsvString()),o||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function clone(){return tinycolor(this.toString())},_applyModification:function _applyModification(t,e){var o=t.apply(null,[this].concat([].slice.call(e)));return this._r=o._r,this._g=o._g,this._b=o._b,this.setAlpha(o._a),this},lighten:function lighten(){return this._applyModification(_lighten,arguments)},brighten:function brighten(){return this._applyModification(_brighten,arguments)},darken:function darken(){return this._applyModification(_darken,arguments)},desaturate:function desaturate(){return this._applyModification(_desaturate,arguments)},saturate:function saturate(){return this._applyModification(_saturate,arguments)},greyscale:function greyscale(){return this._applyModification(_greyscale,arguments)},spin:function spin(){return this._applyModification(_spin,arguments)},_applyCombination:function _applyCombination(t,e){return t.apply(null,[this].concat([].slice.call(e)))},analogous:function analogous(){return this._applyCombination(_analogous,arguments)},complement:function complement(){return this._applyCombination(_complement,arguments)},monochromatic:function monochromatic(){return this._applyCombination(_monochromatic,arguments)},splitcomplement:function splitcomplement(){return this._applyCombination(_splitcomplement,arguments)},triad:function triad(){return this._applyCombination(polyad,[3])},tetrad:function tetrad(){return this._applyCombination(polyad,[4])}},tinycolor.fromRatio=function(t,e){if("object"==_typeof(t)){var o={};for(var r in t)t.hasOwnProperty(r)&&(o[r]="a"===r?t[r]:convertToPercentage(t[r]));t=o}return tinycolor(t,e)},tinycolor.equals=function(t,e){return!(!t||!e)&&tinycolor(t).toRgbString()==tinycolor(e).toRgbString()},tinycolor.random=function(){return tinycolor.fromRatio({r:Math.random(),g:Math.random(),b:Math.random()})},tinycolor.mix=function(t,e,o){o=0===o?0:o||50;var r=tinycolor(t).toRgb(),n=tinycolor(e).toRgb(),i=o/100;return tinycolor({r:(n.r-r.r)*i+r.r,g:(n.g-r.g)*i+r.g,b:(n.b-r.b)*i+r.b,a:(n.a-r.a)*i+r.a})},tinycolor.readability=function(t,e){var o=tinycolor(t),r=tinycolor(e);return(Math.max(o.getLuminance(),r.getLuminance())+.05)/(Math.min(o.getLuminance(),r.getLuminance())+.05)},tinycolor.isReadable=function(t,e,o){var r,n,i=tinycolor.readability(t,e);switch(n=!1,(r=validateWCAG2Parms(o)).level+r.size){case"AAsmall":case"AAAlarge":n=i>=4.5;break;case"AAlarge":n=i>=3;break;case"AAAsmall":n=i>=7}return n},tinycolor.mostReadable=function(t,e,o){var r,n,i,a,s=null,l=0;n=(o=o||{}).includeFallbackColors,i=o.level,a=o.size;for(var c=0;c<e.length;c++)(r=tinycolor.readability(t,e[c]))>l&&(l=r,s=tinycolor(e[c]));return tinycolor.isReadable(t,s,{level:i,size:a})||!n?s:(o.includeFallbackColors=!1,tinycolor.mostReadable(t,["#fff","#000"],o))};var o=tinycolor.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},r=tinycolor.hexNames=flip(o);function flip(t){var e={};for(var o in t)t.hasOwnProperty(o)&&(e[t[o]]=o);return e}function boundAlpha(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function bound01(t,e){isOnePointZero(t)&&(t="100%");var o=isPercentage(t);return t=Math.min(e,Math.max(0,parseFloat(t))),o&&(t=parseInt(t*e,10)/100),Math.abs(t-e)<1e-6?1:t%e/parseFloat(e)}function clamp01(t){return Math.min(1,Math.max(0,t))}function parseIntFromHex(t){return parseInt(t,16)}function isOnePointZero(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)}function isPercentage(t){return"string"==typeof t&&-1!=t.indexOf("%")}function pad2(t){return 1==t.length?"0"+t:""+t}function convertToPercentage(t){return t<=1&&(t=100*t+"%"),t}function convertDecimalToHex(t){return Math.round(255*parseFloat(t)).toString(16)}function convertHexToDecimal(t){return parseIntFromHex(t)/255}var n,i,a,s=(i="[\\s|\\(]+("+(n="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",a="[\\s|\\(]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")[,|\\s]+("+n+")\\s*\\)?",{CSS_UNIT:new RegExp(n),rgb:new RegExp("rgb"+i),rgba:new RegExp("rgba"+a),hsl:new RegExp("hsl"+i),hsla:new RegExp("hsla"+a),hsv:new RegExp("hsv"+i),hsva:new RegExp("hsva"+a),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function isValidCSSUnit(t){return!!s.CSS_UNIT.exec(t)}function stringInputToObject(r){r=r.replace(t,"").replace(e,"").toLowerCase();var n,i=!1;if(o[r])r=o[r],i=!0;else if("transparent"==r)return{r:0,g:0,b:0,a:0,format:"name"};return(n=s.rgb.exec(r))?{r:n[1],g:n[2],b:n[3]}:(n=s.rgba.exec(r))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=s.hsl.exec(r))?{h:n[1],s:n[2],l:n[3]}:(n=s.hsla.exec(r))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=s.hsv.exec(r))?{h:n[1],s:n[2],v:n[3]}:(n=s.hsva.exec(r))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=s.hex8.exec(r))?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),a:convertHexToDecimal(n[4]),format:i?"name":"hex8"}:(n=s.hex6.exec(r))?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),format:i?"name":"hex"}:(n=s.hex4.exec(r))?{r:parseIntFromHex(n[1]+""+n[1]),g:parseIntFromHex(n[2]+""+n[2]),b:parseIntFromHex(n[3]+""+n[3]),a:convertHexToDecimal(n[4]+""+n[4]),format:i?"name":"hex8"}:!!(n=s.hex3.exec(r))&&{r:parseIntFromHex(n[1]+""+n[1]),g:parseIntFromHex(n[2]+""+n[2]),b:parseIntFromHex(n[3]+""+n[3]),format:i?"name":"hex"}}function validateWCAG2Parms(t){var e,o;return"AA"!==(e=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase())&&"AAA"!==e&&(e="AA"),"small"!==(o=(t.size||"small").toLowerCase())&&"large"!==o&&(o="small"),{level:e,size:o}}return tinycolor}()}};
@@ -1 +1 @@
1
- "use strict";exports.id=726,exports.ids=[726],exports.modules={51345:(r,e,t)=>{let o;async function random(r){const e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~";let t="";const n=await async function getRandomValues(r){return(await o).getRandomValues(new Uint8Array(r))}(r);for(let o=0;o<r;o++){t+=e[n[o]%66]}return t}async function generateChallenge(r){const e=await(await o).subtle.digest("SHA-256",(new TextEncoder).encode(r));return btoa(String.fromCharCode(...new Uint8Array(e))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function pkceChallenge(r){if(r||(r=43),r<43||r>128)throw`Expected a length between 43 and 128. Received ${r}.`;const e=await async function generateVerifier(r){return await random(r)}(r);return{code_verifier:e,code_challenge:await generateChallenge(e)}}t.d(e,{D_:()=>UnauthorizedError,j2:()=>auth,cV:()=>extractResourceMetadataUrl}),o=globalThis.crypto?.webcrypto??globalThis.crypto??Promise.resolve().then(t.t.bind(t,77598,19)).then((r=>r.webcrypto));var n=t(13298),a=t(46195);const i=a.z.object({resource:a.z.string().url(),authorization_servers:a.z.array(a.z.string().url()).optional(),jwks_uri:a.z.string().url().optional(),scopes_supported:a.z.array(a.z.string()).optional(),bearer_methods_supported:a.z.array(a.z.string()).optional(),resource_signing_alg_values_supported:a.z.array(a.z.string()).optional(),resource_name:a.z.string().optional(),resource_documentation:a.z.string().optional(),resource_policy_uri:a.z.string().url().optional(),resource_tos_uri:a.z.string().url().optional(),tls_client_certificate_bound_access_tokens:a.z.boolean().optional(),authorization_details_types_supported:a.z.array(a.z.string()).optional(),dpop_signing_alg_values_supported:a.z.array(a.z.string()).optional(),dpop_bound_access_tokens_required:a.z.boolean().optional()}).passthrough(),s=a.z.object({issuer:a.z.string(),authorization_endpoint:a.z.string(),token_endpoint:a.z.string(),registration_endpoint:a.z.string().optional(),scopes_supported:a.z.array(a.z.string()).optional(),response_types_supported:a.z.array(a.z.string()),response_modes_supported:a.z.array(a.z.string()).optional(),grant_types_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),service_documentation:a.z.string().optional(),revocation_endpoint:a.z.string().optional(),revocation_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),revocation_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),introspection_endpoint:a.z.string().optional(),introspection_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),introspection_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),code_challenge_methods_supported:a.z.array(a.z.string()).optional()}).passthrough(),c=a.z.object({issuer:a.z.string(),authorization_endpoint:a.z.string(),token_endpoint:a.z.string(),userinfo_endpoint:a.z.string().optional(),jwks_uri:a.z.string(),registration_endpoint:a.z.string().optional(),scopes_supported:a.z.array(a.z.string()).optional(),response_types_supported:a.z.array(a.z.string()),response_modes_supported:a.z.array(a.z.string()).optional(),grant_types_supported:a.z.array(a.z.string()).optional(),acr_values_supported:a.z.array(a.z.string()).optional(),subject_types_supported:a.z.array(a.z.string()),id_token_signing_alg_values_supported:a.z.array(a.z.string()),id_token_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),id_token_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),userinfo_signing_alg_values_supported:a.z.array(a.z.string()).optional(),userinfo_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),userinfo_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),request_object_signing_alg_values_supported:a.z.array(a.z.string()).optional(),request_object_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),request_object_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),display_values_supported:a.z.array(a.z.string()).optional(),claim_types_supported:a.z.array(a.z.string()).optional(),claims_supported:a.z.array(a.z.string()).optional(),service_documentation:a.z.string().optional(),claims_locales_supported:a.z.array(a.z.string()).optional(),ui_locales_supported:a.z.array(a.z.string()).optional(),claims_parameter_supported:a.z.boolean().optional(),request_parameter_supported:a.z.boolean().optional(),request_uri_parameter_supported:a.z.boolean().optional(),require_request_uri_registration:a.z.boolean().optional(),op_policy_uri:a.z.string().optional(),op_tos_uri:a.z.string().optional()}).passthrough().merge(s.pick({code_challenge_methods_supported:!0})),l=a.z.object({access_token:a.z.string(),id_token:a.z.string().optional(),token_type:a.z.string(),expires_in:a.z.number().optional(),scope:a.z.string().optional(),refresh_token:a.z.string().optional()}).strip(),p=a.z.object({error:a.z.string(),error_description:a.z.string().optional(),error_uri:a.z.string().optional()}),d=a.z.object({redirect_uris:a.z.array(a.z.string()).refine((r=>r.every((r=>URL.canParse(r)))),{message:"redirect_uris must contain valid URLs"}),token_endpoint_auth_method:a.z.string().optional(),grant_types:a.z.array(a.z.string()).optional(),response_types:a.z.array(a.z.string()).optional(),client_name:a.z.string().optional(),client_uri:a.z.string().optional(),logo_uri:a.z.string().optional(),scope:a.z.string().optional(),contacts:a.z.array(a.z.string()).optional(),tos_uri:a.z.string().optional(),policy_uri:a.z.string().optional(),jwks_uri:a.z.string().optional(),jwks:a.z.any().optional(),software_id:a.z.string().optional(),software_version:a.z.string().optional(),software_statement:a.z.string().optional()}).strip(),u=a.z.object({client_id:a.z.string(),client_secret:a.z.string().optional(),client_id_issued_at:a.z.number().optional(),client_secret_expires_at:a.z.number().optional()}).strip(),_=d.merge(u);a.z.object({error:a.z.string(),error_description:a.z.string().optional()}).strip(),a.z.object({token:a.z.string(),token_type_hint:a.z.string().optional()}).strip();class OAuthError extends Error{constructor(r,e){super(r),this.errorUri=e,this.name=this.constructor.name}toResponseObject(){const r={error:this.errorCode,error_description:this.message};return this.errorUri&&(r.error_uri=this.errorUri),r}get errorCode(){return this.constructor.errorCode}}class InvalidRequestError extends OAuthError{}InvalidRequestError.errorCode="invalid_request";class InvalidClientError extends OAuthError{}InvalidClientError.errorCode="invalid_client";class InvalidGrantError extends OAuthError{}InvalidGrantError.errorCode="invalid_grant";class UnauthorizedClientError extends OAuthError{}UnauthorizedClientError.errorCode="unauthorized_client";class UnsupportedGrantTypeError extends OAuthError{}UnsupportedGrantTypeError.errorCode="unsupported_grant_type";class InvalidScopeError extends OAuthError{}InvalidScopeError.errorCode="invalid_scope";class AccessDeniedError extends OAuthError{}AccessDeniedError.errorCode="access_denied";class ServerError extends OAuthError{}ServerError.errorCode="server_error";class TemporarilyUnavailableError extends OAuthError{}TemporarilyUnavailableError.errorCode="temporarily_unavailable";class UnsupportedResponseTypeError extends OAuthError{}UnsupportedResponseTypeError.errorCode="unsupported_response_type";class UnsupportedTokenTypeError extends OAuthError{}UnsupportedTokenTypeError.errorCode="unsupported_token_type";class InvalidTokenError extends OAuthError{}InvalidTokenError.errorCode="invalid_token";class MethodNotAllowedError extends OAuthError{}MethodNotAllowedError.errorCode="method_not_allowed";class TooManyRequestsError extends OAuthError{}TooManyRequestsError.errorCode="too_many_requests";class InvalidClientMetadataError extends OAuthError{}InvalidClientMetadataError.errorCode="invalid_client_metadata";class InsufficientScopeError extends OAuthError{}InsufficientScopeError.errorCode="insufficient_scope";const h={[InvalidRequestError.errorCode]:InvalidRequestError,[InvalidClientError.errorCode]:InvalidClientError,[InvalidGrantError.errorCode]:InvalidGrantError,[UnauthorizedClientError.errorCode]:UnauthorizedClientError,[UnsupportedGrantTypeError.errorCode]:UnsupportedGrantTypeError,[InvalidScopeError.errorCode]:InvalidScopeError,[AccessDeniedError.errorCode]:AccessDeniedError,[ServerError.errorCode]:ServerError,[TemporarilyUnavailableError.errorCode]:TemporarilyUnavailableError,[UnsupportedResponseTypeError.errorCode]:UnsupportedResponseTypeError,[UnsupportedTokenTypeError.errorCode]:UnsupportedTokenTypeError,[InvalidTokenError.errorCode]:InvalidTokenError,[MethodNotAllowedError.errorCode]:MethodNotAllowedError,[TooManyRequestsError.errorCode]:TooManyRequestsError,[InvalidClientMetadataError.errorCode]:InvalidClientMetadataError,[InsufficientScopeError.errorCode]:InsufficientScopeError};class UnauthorizedError extends Error{constructor(r){super(null!=r?r:"Unauthorized")}}function selectClientAuthMethod(r,e){const t=void 0!==r.client_secret;return 0===e.length?t?"client_secret_post":"none":t&&e.includes("client_secret_basic")?"client_secret_basic":t&&e.includes("client_secret_post")?"client_secret_post":e.includes("none")?"none":t?"client_secret_post":"none"}function applyClientAuthentication(r,e,t,o){const{client_id:n,client_secret:a}=e;switch(r){case"client_secret_basic":return void function applyBasicAuth(r,e,t){if(!e)throw new Error("client_secret_basic authentication requires a client_secret");const o=btoa(`${r}:${e}`);t.set("Authorization",`Basic ${o}`)}(n,a,t);case"client_secret_post":return void function applyPostAuth(r,e,t){t.set("client_id",r),e&&t.set("client_secret",e)}(n,a,o);case"none":return void function applyPublicAuth(r,e){e.set("client_id",r)}(n,o);default:throw new Error(`Unsupported client authentication method: ${r}`)}}async function parseErrorResponse(r){const e=r instanceof Response?r.status:void 0,t=r instanceof Response?await r.text():r;try{const r=p.parse(JSON.parse(t)),{error:e,error_description:o,error_uri:n}=r;return new(h[e]||ServerError)(o||"",n)}catch(r){return new ServerError(`${e?`HTTP ${e}: `:""}Invalid OAuth error response: ${r}. Raw body: ${t}`)}}async function auth(r,e){var t,o;try{return await authInternal(r,e)}catch(n){if(n instanceof InvalidClientError||n instanceof UnauthorizedClientError)return await(null===(t=r.invalidateCredentials)||void 0===t?void 0:t.call(r,"all")),await authInternal(r,e);if(n instanceof InvalidGrantError)return await(null===(o=r.invalidateCredentials)||void 0===o?void 0:o.call(r,"tokens")),await authInternal(r,e);throw n}}async function authInternal(r,{serverUrl:e,authorizationCode:t,scope:o,resourceMetadataUrl:a,fetchFn:p}){let d,u;try{d=await async function discoverOAuthProtectedResourceMetadata(r,e,t=fetch){const o=await discoverMetadataWithFallback(r,"oauth-protected-resource",t,{protocolVersion:null==e?void 0:e.protocolVersion,metadataUrl:null==e?void 0:e.resourceMetadataUrl});if(!o||404===o.status)throw new Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!o.ok)throw new Error(`HTTP ${o.status} trying to load well-known OAuth protected resource metadata.`);return i.parse(await o.json())}(e,{resourceMetadataUrl:a},p),d.authorization_servers&&d.authorization_servers.length>0&&(u=d.authorization_servers[0])}catch(r){}u||(u=e);const h=await async function selectResourceURL(r,e,t){const o=function resourceUrlFromServerUrl(r){const e="string"==typeof r?new URL(r):new URL(r.href);return e.hash="",e}(r);if(e.validateResourceURL)return await e.validateResourceURL(o,null==t?void 0:t.resource);if(!t)return;if(!function checkResourceAllowed({requestedResource:r,configuredResource:e}){const t="string"==typeof r?new URL(r):new URL(r.href),o="string"==typeof e?new URL(e):new URL(e.href);if(t.origin!==o.origin)return!1;if(t.pathname.length<o.pathname.length)return!1;const n=t.pathname.endsWith("/")?t.pathname:t.pathname+"/",a=o.pathname.endsWith("/")?o.pathname:o.pathname+"/";return n.startsWith(a)}({requestedResource:o,configuredResource:t.resource}))throw new Error(`Protected resource ${t.resource} does not match expected ${o} (or origin)`);return new URL(t.resource)}(e,r,d),g=await async function discoverAuthorizationServerMetadata(r,{fetchFn:e=fetch,protocolVersion:t=n.LATEST_PROTOCOL_VERSION}={}){var o;const a={"MCP-Protocol-Version":t},i=function buildDiscoveryUrls(r){const e="string"==typeof r?new URL(r):r,t="/"!==e.pathname,o=[];if(!t)return o.push({url:new URL("/.well-known/oauth-authorization-server",e.origin),type:"oauth"}),o.push({url:new URL("/.well-known/openid-configuration",e.origin),type:"oidc"}),o;let n=e.pathname;n.endsWith("/")&&(n=n.slice(0,-1));return o.push({url:new URL(`/.well-known/oauth-authorization-server${n}`,e.origin),type:"oauth"}),o.push({url:new URL("/.well-known/oauth-authorization-server",e.origin),type:"oauth"}),o.push({url:new URL(`/.well-known/openid-configuration${n}`,e.origin),type:"oidc"}),o.push({url:new URL(`${n}/.well-known/openid-configuration`,e.origin),type:"oidc"}),o}(r);for(const{url:r,type:t}of i){const n=await fetchWithCorsRetry(r,a,e);if(n){if(!n.ok){if(n.status>=400&&n.status<500)continue;throw new Error(`HTTP ${n.status} trying to load ${"oauth"===t?"OAuth":"OpenID provider"} metadata from ${r}`)}if("oauth"===t)return s.parse(await n.json());{const e=c.parse(await n.json());if(!(null===(o=e.code_challenge_methods_supported)||void 0===o?void 0:o.includes("S256")))throw new Error(`Incompatible OIDC provider at ${r}: does not support S256 code challenge method required by MCP specification`);return e}}}return}(u,{fetchFn:p});let z=await Promise.resolve(r.clientInformation());if(!z){if(void 0!==t)throw new Error("Existing OAuth client information is required when exchanging an authorization code");if(!r.saveClientInformation)throw new Error("OAuth client information must be saveable for dynamic registration");const e=await async function registerClient(r,{metadata:e,clientMetadata:t,fetchFn:o}){let n;if(e){if(!e.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");n=new URL(e.registration_endpoint)}else n=new URL("/register",r);const a=await(null!=o?o:fetch)(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw await parseErrorResponse(a);return _.parse(await a.json())}(u,{metadata:g,clientMetadata:r.clientMetadata});await r.saveClientInformation(e),z=e}if(void 0!==t){const e=await r.codeVerifier(),o=await async function exchangeAuthorization(r,{metadata:e,clientInformation:t,authorizationCode:o,codeVerifier:n,redirectUri:a,resource:i,addClientAuthentication:s,fetchFn:c}){var p;const d="authorization_code",u=(null==e?void 0:e.token_endpoint)?new URL(e.token_endpoint):new URL("/token",r);if((null==e?void 0:e.grant_types_supported)&&!e.grant_types_supported.includes(d))throw new Error(`Incompatible auth server: does not support grant type ${d}`);const _=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),h=new URLSearchParams({grant_type:d,code:o,code_verifier:n,redirect_uri:String(a)});if(s)s(_,h,r,e);else{applyClientAuthentication(selectClientAuthMethod(t,null!==(p=null==e?void 0:e.token_endpoint_auth_methods_supported)&&void 0!==p?p:[]),t,_,h)}i&&h.set("resource",i.href);const g=await(null!=c?c:fetch)(u,{method:"POST",headers:_,body:h});if(!g.ok)throw await parseErrorResponse(g);return l.parse(await g.json())}(u,{metadata:g,clientInformation:z,authorizationCode:t,codeVerifier:e,redirectUri:r.redirectUrl,resource:h,addClientAuthentication:r.addClientAuthentication,fetchFn:p});return await r.saveTokens(o),"AUTHORIZED"}const f=await r.tokens();if(null==f?void 0:f.refresh_token)try{const e=await async function refreshAuthorization(r,{metadata:e,clientInformation:t,refreshToken:o,resource:n,addClientAuthentication:a,fetchFn:i}){var s;const c="refresh_token";let p;if(e){if(p=new URL(e.token_endpoint),e.grant_types_supported&&!e.grant_types_supported.includes(c))throw new Error(`Incompatible auth server: does not support grant type ${c}`)}else p=new URL("/token",r);const d=new Headers({"Content-Type":"application/x-www-form-urlencoded"}),u=new URLSearchParams({grant_type:c,refresh_token:o});if(a)a(d,u,r,e);else{applyClientAuthentication(selectClientAuthMethod(t,null!==(s=null==e?void 0:e.token_endpoint_auth_methods_supported)&&void 0!==s?s:[]),t,d,u)}n&&u.set("resource",n.href);const _=await(null!=i?i:fetch)(p,{method:"POST",headers:d,body:u});if(!_.ok)throw await parseErrorResponse(_);return l.parse({refresh_token:o,...await _.json()})}(u,{metadata:g,clientInformation:z,refreshToken:f.refresh_token,resource:h,addClientAuthentication:r.addClientAuthentication});return await r.saveTokens(e),"AUTHORIZED"}catch(r){if(r instanceof OAuthError&&!(r instanceof ServerError))throw r}const y=r.state?await r.state():void 0,{authorizationUrl:w,codeVerifier:v}=await async function startAuthorization(r,{metadata:e,clientInformation:t,redirectUrl:o,scope:n,state:a,resource:i}){const s="code",c="S256";let l;if(e){if(l=new URL(e.authorization_endpoint),!e.response_types_supported.includes(s))throw new Error(`Incompatible auth server: does not support response type ${s}`);if(!e.code_challenge_methods_supported||!e.code_challenge_methods_supported.includes(c))throw new Error(`Incompatible auth server: does not support code challenge method ${c}`)}else l=new URL("/authorize",r);const p=await pkceChallenge(),d=p.code_verifier,u=p.code_challenge;l.searchParams.set("response_type",s),l.searchParams.set("client_id",t.client_id),l.searchParams.set("code_challenge",u),l.searchParams.set("code_challenge_method",c),l.searchParams.set("redirect_uri",String(o)),a&&l.searchParams.set("state",a);n&&l.searchParams.set("scope",n);(null==n?void 0:n.includes("offline_access"))&&l.searchParams.append("prompt","consent");i&&l.searchParams.set("resource",i.href);return{authorizationUrl:l,codeVerifier:d}}(u,{metadata:g,clientInformation:z,state:y,redirectUrl:r.redirectUrl,scope:o||r.clientMetadata.scope,resource:h});return await r.saveCodeVerifier(v),await r.redirectToAuthorization(w),"REDIRECT"}function extractResourceMetadataUrl(r){const e=r.headers.get("WWW-Authenticate");if(!e)return;const[t,o]=e.split(" ");if("bearer"!==t.toLowerCase()||!o)return;const n=/resource_metadata="([^"]*)"/.exec(e);if(n)try{return new URL(n[1])}catch(r){return}}async function fetchWithCorsRetry(r,e,t=fetch){try{return await t(r,{headers:e})}catch(o){if(o instanceof TypeError)return e?fetchWithCorsRetry(r,void 0,t):void 0;throw o}}async function tryMetadataDiscovery(r,e,t=fetch){const o={"MCP-Protocol-Version":e};return await fetchWithCorsRetry(r,o,t)}async function discoverMetadataWithFallback(r,e,t,o){var a,i;const s=new URL(r),c=null!==(a=null==o?void 0:o.protocolVersion)&&void 0!==a?a:n.LATEST_PROTOCOL_VERSION;let l;if(null==o?void 0:o.metadataUrl)l=new URL(o.metadataUrl);else{const r=function buildWellKnownPath(r,e="",t={}){return e.endsWith("/")&&(e=e.slice(0,-1)),t.prependPathname?`${e}/.well-known/${r}`:`/.well-known/${r}${e}`}(e,s.pathname);l=new URL(r,null!==(i=null==o?void 0:o.metadataServerUrl)&&void 0!==i?i:s),l.search=s.search}let p=await tryMetadataDiscovery(l,c,t);if(!(null==o?void 0:o.metadataUrl)&&function shouldAttemptFallback(r,e){return!r||404===r.status&&"/"!==e}(p,s.pathname)){const r=new URL(`/.well-known/${e}`,s);p=await tryMetadataDiscovery(r,c,t)}return p}}};
1
+ "use strict";exports.id=726,exports.ids=[726],exports.modules={51345:(r,e,t)=>{let o;async function random(r){const e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~";let t="";const n=await async function getRandomValues(r){return(await o).getRandomValues(new Uint8Array(r))}(r);for(let o=0;o<r;o++){t+=e[n[o]%66]}return t}async function generateChallenge(r){const e=await(await o).subtle.digest("SHA-256",(new TextEncoder).encode(r));return btoa(String.fromCharCode(...new Uint8Array(e))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function pkceChallenge(r){if(r||(r=43),r<43||r>128)throw`Expected a length between 43 and 128. Received ${r}.`;const e=await async function generateVerifier(r){return await random(r)}(r);return{code_verifier:e,code_challenge:await generateChallenge(e)}}t.d(e,{D_:()=>UnauthorizedError,j2:()=>auth,cV:()=>extractResourceMetadataUrl}),o=globalThis.crypto?.webcrypto??globalThis.crypto??Promise.resolve().then(t.t.bind(t,77598,19)).then((r=>r.webcrypto));var n=t(13298),a=t(83478);const i=a.z.object({resource:a.z.string().url(),authorization_servers:a.z.array(a.z.string().url()).optional(),jwks_uri:a.z.string().url().optional(),scopes_supported:a.z.array(a.z.string()).optional(),bearer_methods_supported:a.z.array(a.z.string()).optional(),resource_signing_alg_values_supported:a.z.array(a.z.string()).optional(),resource_name:a.z.string().optional(),resource_documentation:a.z.string().optional(),resource_policy_uri:a.z.string().url().optional(),resource_tos_uri:a.z.string().url().optional(),tls_client_certificate_bound_access_tokens:a.z.boolean().optional(),authorization_details_types_supported:a.z.array(a.z.string()).optional(),dpop_signing_alg_values_supported:a.z.array(a.z.string()).optional(),dpop_bound_access_tokens_required:a.z.boolean().optional()}).passthrough(),s=a.z.object({issuer:a.z.string(),authorization_endpoint:a.z.string(),token_endpoint:a.z.string(),registration_endpoint:a.z.string().optional(),scopes_supported:a.z.array(a.z.string()).optional(),response_types_supported:a.z.array(a.z.string()),response_modes_supported:a.z.array(a.z.string()).optional(),grant_types_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),service_documentation:a.z.string().optional(),revocation_endpoint:a.z.string().optional(),revocation_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),revocation_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),introspection_endpoint:a.z.string().optional(),introspection_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),introspection_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),code_challenge_methods_supported:a.z.array(a.z.string()).optional()}).passthrough(),c=a.z.object({issuer:a.z.string(),authorization_endpoint:a.z.string(),token_endpoint:a.z.string(),userinfo_endpoint:a.z.string().optional(),jwks_uri:a.z.string(),registration_endpoint:a.z.string().optional(),scopes_supported:a.z.array(a.z.string()).optional(),response_types_supported:a.z.array(a.z.string()),response_modes_supported:a.z.array(a.z.string()).optional(),grant_types_supported:a.z.array(a.z.string()).optional(),acr_values_supported:a.z.array(a.z.string()).optional(),subject_types_supported:a.z.array(a.z.string()),id_token_signing_alg_values_supported:a.z.array(a.z.string()),id_token_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),id_token_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),userinfo_signing_alg_values_supported:a.z.array(a.z.string()).optional(),userinfo_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),userinfo_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),request_object_signing_alg_values_supported:a.z.array(a.z.string()).optional(),request_object_encryption_alg_values_supported:a.z.array(a.z.string()).optional(),request_object_encryption_enc_values_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_methods_supported:a.z.array(a.z.string()).optional(),token_endpoint_auth_signing_alg_values_supported:a.z.array(a.z.string()).optional(),display_values_supported:a.z.array(a.z.string()).optional(),claim_types_supported:a.z.array(a.z.string()).optional(),claims_supported:a.z.array(a.z.string()).optional(),service_documentation:a.z.string().optional(),claims_locales_supported:a.z.array(a.z.string()).optional(),ui_locales_supported:a.z.array(a.z.string()).optional(),claims_parameter_supported:a.z.boolean().optional(),request_parameter_supported:a.z.boolean().optional(),request_uri_parameter_supported:a.z.boolean().optional(),require_request_uri_registration:a.z.boolean().optional(),op_policy_uri:a.z.string().optional(),op_tos_uri:a.z.string().optional()}).passthrough().merge(s.pick({code_challenge_methods_supported:!0})),l=a.z.object({access_token:a.z.string(),id_token:a.z.string().optional(),token_type:a.z.string(),expires_in:a.z.number().optional(),scope:a.z.string().optional(),refresh_token:a.z.string().optional()}).strip(),p=a.z.object({error:a.z.string(),error_description:a.z.string().optional(),error_uri:a.z.string().optional()}),d=a.z.object({redirect_uris:a.z.array(a.z.string()).refine((r=>r.every((r=>URL.canParse(r)))),{message:"redirect_uris must contain valid URLs"}),token_endpoint_auth_method:a.z.string().optional(),grant_types:a.z.array(a.z.string()).optional(),response_types:a.z.array(a.z.string()).optional(),client_name:a.z.string().optional(),client_uri:a.z.string().optional(),logo_uri:a.z.string().optional(),scope:a.z.string().optional(),contacts:a.z.array(a.z.string()).optional(),tos_uri:a.z.string().optional(),policy_uri:a.z.string().optional(),jwks_uri:a.z.string().optional(),jwks:a.z.any().optional(),software_id:a.z.string().optional(),software_version:a.z.string().optional(),software_statement:a.z.string().optional()}).strip(),u=a.z.object({client_id:a.z.string(),client_secret:a.z.string().optional(),client_id_issued_at:a.z.number().optional(),client_secret_expires_at:a.z.number().optional()}).strip(),_=d.merge(u);a.z.object({error:a.z.string(),error_description:a.z.string().optional()}).strip(),a.z.object({token:a.z.string(),token_type_hint:a.z.string().optional()}).strip();class OAuthError extends Error{constructor(r,e){super(r),this.errorUri=e,this.name=this.constructor.name}toResponseObject(){const r={error:this.errorCode,error_description:this.message};return this.errorUri&&(r.error_uri=this.errorUri),r}get errorCode(){return this.constructor.errorCode}}class InvalidRequestError extends OAuthError{}InvalidRequestError.errorCode="invalid_request";class InvalidClientError extends OAuthError{}InvalidClientError.errorCode="invalid_client";class InvalidGrantError extends OAuthError{}InvalidGrantError.errorCode="invalid_grant";class UnauthorizedClientError extends OAuthError{}UnauthorizedClientError.errorCode="unauthorized_client";class UnsupportedGrantTypeError extends OAuthError{}UnsupportedGrantTypeError.errorCode="unsupported_grant_type";class InvalidScopeError extends OAuthError{}InvalidScopeError.errorCode="invalid_scope";class AccessDeniedError extends OAuthError{}AccessDeniedError.errorCode="access_denied";class ServerError extends OAuthError{}ServerError.errorCode="server_error";class TemporarilyUnavailableError extends OAuthError{}TemporarilyUnavailableError.errorCode="temporarily_unavailable";class UnsupportedResponseTypeError extends OAuthError{}UnsupportedResponseTypeError.errorCode="unsupported_response_type";class UnsupportedTokenTypeError extends OAuthError{}UnsupportedTokenTypeError.errorCode="unsupported_token_type";class InvalidTokenError extends OAuthError{}InvalidTokenError.errorCode="invalid_token";class MethodNotAllowedError extends OAuthError{}MethodNotAllowedError.errorCode="method_not_allowed";class TooManyRequestsError extends OAuthError{}TooManyRequestsError.errorCode="too_many_requests";class InvalidClientMetadataError extends OAuthError{}InvalidClientMetadataError.errorCode="invalid_client_metadata";class InsufficientScopeError extends OAuthError{}InsufficientScopeError.errorCode="insufficient_scope";const h={[InvalidRequestError.errorCode]:InvalidRequestError,[InvalidClientError.errorCode]:InvalidClientError,[InvalidGrantError.errorCode]:InvalidGrantError,[UnauthorizedClientError.errorCode]:UnauthorizedClientError,[UnsupportedGrantTypeError.errorCode]:UnsupportedGrantTypeError,[InvalidScopeError.errorCode]:InvalidScopeError,[AccessDeniedError.errorCode]:AccessDeniedError,[ServerError.errorCode]:ServerError,[TemporarilyUnavailableError.errorCode]:TemporarilyUnavailableError,[UnsupportedResponseTypeError.errorCode]:UnsupportedResponseTypeError,[UnsupportedTokenTypeError.errorCode]:UnsupportedTokenTypeError,[InvalidTokenError.errorCode]:InvalidTokenError,[MethodNotAllowedError.errorCode]:MethodNotAllowedError,[TooManyRequestsError.errorCode]:TooManyRequestsError,[InvalidClientMetadataError.errorCode]:InvalidClientMetadataError,[InsufficientScopeError.errorCode]:InsufficientScopeError};class UnauthorizedError extends Error{constructor(r){super(null!=r?r:"Unauthorized")}}function selectClientAuthMethod(r,e){const t=void 0!==r.client_secret;return 0===e.length?t?"client_secret_post":"none":t&&e.includes("client_secret_basic")?"client_secret_basic":t&&e.includes("client_secret_post")?"client_secret_post":e.includes("none")?"none":t?"client_secret_post":"none"}function applyClientAuthentication(r,e,t,o){const{client_id:n,client_secret:a}=e;switch(r){case"client_secret_basic":return void function applyBasicAuth(r,e,t){if(!e)throw new Error("client_secret_basic authentication requires a client_secret");const o=btoa(`${r}:${e}`);t.set("Authorization",`Basic ${o}`)}(n,a,t);case"client_secret_post":return void function applyPostAuth(r,e,t){t.set("client_id",r),e&&t.set("client_secret",e)}(n,a,o);case"none":return void function applyPublicAuth(r,e){e.set("client_id",r)}(n,o);default:throw new Error(`Unsupported client authentication method: ${r}`)}}async function parseErrorResponse(r){const e=r instanceof Response?r.status:void 0,t=r instanceof Response?await r.text():r;try{const r=p.parse(JSON.parse(t)),{error:e,error_description:o,error_uri:n}=r;return new(h[e]||ServerError)(o||"",n)}catch(r){return new ServerError(`${e?`HTTP ${e}: `:""}Invalid OAuth error response: ${r}. Raw body: ${t}`)}}async function auth(r,e){var t,o;try{return await authInternal(r,e)}catch(n){if(n instanceof InvalidClientError||n instanceof UnauthorizedClientError)return await(null===(t=r.invalidateCredentials)||void 0===t?void 0:t.call(r,"all")),await authInternal(r,e);if(n instanceof InvalidGrantError)return await(null===(o=r.invalidateCredentials)||void 0===o?void 0:o.call(r,"tokens")),await authInternal(r,e);throw n}}async function authInternal(r,{serverUrl:e,authorizationCode:t,scope:o,resourceMetadataUrl:a,fetchFn:p}){let d,u;try{d=await async function discoverOAuthProtectedResourceMetadata(r,e,t=fetch){const o=await discoverMetadataWithFallback(r,"oauth-protected-resource",t,{protocolVersion:null==e?void 0:e.protocolVersion,metadataUrl:null==e?void 0:e.resourceMetadataUrl});if(!o||404===o.status)throw new Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!o.ok)throw new Error(`HTTP ${o.status} trying to load well-known OAuth protected resource metadata.`);return i.parse(await o.json())}(e,{resourceMetadataUrl:a},p),d.authorization_servers&&d.authorization_servers.length>0&&(u=d.authorization_servers[0])}catch(r){}u||(u=e);const h=await async function selectResourceURL(r,e,t){const o=function resourceUrlFromServerUrl(r){const e="string"==typeof r?new URL(r):new URL(r.href);return e.hash="",e}(r);if(e.validateResourceURL)return await e.validateResourceURL(o,null==t?void 0:t.resource);if(!t)return;if(!function checkResourceAllowed({requestedResource:r,configuredResource:e}){const t="string"==typeof r?new URL(r):new URL(r.href),o="string"==typeof e?new URL(e):new URL(e.href);if(t.origin!==o.origin)return!1;if(t.pathname.length<o.pathname.length)return!1;const n=t.pathname.endsWith("/")?t.pathname:t.pathname+"/",a=o.pathname.endsWith("/")?o.pathname:o.pathname+"/";return n.startsWith(a)}({requestedResource:o,configuredResource:t.resource}))throw new Error(`Protected resource ${t.resource} does not match expected ${o} (or origin)`);return new URL(t.resource)}(e,r,d),g=await async function discoverAuthorizationServerMetadata(r,{fetchFn:e=fetch,protocolVersion:t=n.LATEST_PROTOCOL_VERSION}={}){var o;const a={"MCP-Protocol-Version":t},i=function buildDiscoveryUrls(r){const e="string"==typeof r?new URL(r):r,t="/"!==e.pathname,o=[];if(!t)return o.push({url:new URL("/.well-known/oauth-authorization-server",e.origin),type:"oauth"}),o.push({url:new URL("/.well-known/openid-configuration",e.origin),type:"oidc"}),o;let n=e.pathname;n.endsWith("/")&&(n=n.slice(0,-1));return o.push({url:new URL(`/.well-known/oauth-authorization-server${n}`,e.origin),type:"oauth"}),o.push({url:new URL("/.well-known/oauth-authorization-server",e.origin),type:"oauth"}),o.push({url:new URL(`/.well-known/openid-configuration${n}`,e.origin),type:"oidc"}),o.push({url:new URL(`${n}/.well-known/openid-configuration`,e.origin),type:"oidc"}),o}(r);for(const{url:r,type:t}of i){const n=await fetchWithCorsRetry(r,a,e);if(n){if(!n.ok){if(n.status>=400&&n.status<500)continue;throw new Error(`HTTP ${n.status} trying to load ${"oauth"===t?"OAuth":"OpenID provider"} metadata from ${r}`)}if("oauth"===t)return s.parse(await n.json());{const e=c.parse(await n.json());if(!(null===(o=e.code_challenge_methods_supported)||void 0===o?void 0:o.includes("S256")))throw new Error(`Incompatible OIDC provider at ${r}: does not support S256 code challenge method required by MCP specification`);return e}}}return}(u,{fetchFn:p});let z=await Promise.resolve(r.clientInformation());if(!z){if(void 0!==t)throw new Error("Existing OAuth client information is required when exchanging an authorization code");if(!r.saveClientInformation)throw new Error("OAuth client information must be saveable for dynamic registration");const e=await async function registerClient(r,{metadata:e,clientMetadata:t,fetchFn:o}){let n;if(e){if(!e.registration_endpoint)throw new Error("Incompatible auth server: does not support dynamic client registration");n=new URL(e.registration_endpoint)}else n=new URL("/register",r);const a=await(null!=o?o:fetch)(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!a.ok)throw await parseErrorResponse(a);return _.parse(await a.json())}(u,{metadata:g,clientMetadata:r.clientMetadata});await r.saveClientInformation(e),z=e}if(void 0!==t){const e=await r.codeVerifier(),o=await async function exchangeAuthorization(r,{metadata:e,clientInformation:t,authorizationCode:o,codeVerifier:n,redirectUri:a,resource:i,addClientAuthentication:s,fetchFn:c}){var p;const d="authorization_code",u=(null==e?void 0:e.token_endpoint)?new URL(e.token_endpoint):new URL("/token",r);if((null==e?void 0:e.grant_types_supported)&&!e.grant_types_supported.includes(d))throw new Error(`Incompatible auth server: does not support grant type ${d}`);const _=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"}),h=new URLSearchParams({grant_type:d,code:o,code_verifier:n,redirect_uri:String(a)});if(s)s(_,h,r,e);else{applyClientAuthentication(selectClientAuthMethod(t,null!==(p=null==e?void 0:e.token_endpoint_auth_methods_supported)&&void 0!==p?p:[]),t,_,h)}i&&h.set("resource",i.href);const g=await(null!=c?c:fetch)(u,{method:"POST",headers:_,body:h});if(!g.ok)throw await parseErrorResponse(g);return l.parse(await g.json())}(u,{metadata:g,clientInformation:z,authorizationCode:t,codeVerifier:e,redirectUri:r.redirectUrl,resource:h,addClientAuthentication:r.addClientAuthentication,fetchFn:p});return await r.saveTokens(o),"AUTHORIZED"}const f=await r.tokens();if(null==f?void 0:f.refresh_token)try{const e=await async function refreshAuthorization(r,{metadata:e,clientInformation:t,refreshToken:o,resource:n,addClientAuthentication:a,fetchFn:i}){var s;const c="refresh_token";let p;if(e){if(p=new URL(e.token_endpoint),e.grant_types_supported&&!e.grant_types_supported.includes(c))throw new Error(`Incompatible auth server: does not support grant type ${c}`)}else p=new URL("/token",r);const d=new Headers({"Content-Type":"application/x-www-form-urlencoded"}),u=new URLSearchParams({grant_type:c,refresh_token:o});if(a)a(d,u,r,e);else{applyClientAuthentication(selectClientAuthMethod(t,null!==(s=null==e?void 0:e.token_endpoint_auth_methods_supported)&&void 0!==s?s:[]),t,d,u)}n&&u.set("resource",n.href);const _=await(null!=i?i:fetch)(p,{method:"POST",headers:d,body:u});if(!_.ok)throw await parseErrorResponse(_);return l.parse({refresh_token:o,...await _.json()})}(u,{metadata:g,clientInformation:z,refreshToken:f.refresh_token,resource:h,addClientAuthentication:r.addClientAuthentication});return await r.saveTokens(e),"AUTHORIZED"}catch(r){if(r instanceof OAuthError&&!(r instanceof ServerError))throw r}const y=r.state?await r.state():void 0,{authorizationUrl:w,codeVerifier:v}=await async function startAuthorization(r,{metadata:e,clientInformation:t,redirectUrl:o,scope:n,state:a,resource:i}){const s="code",c="S256";let l;if(e){if(l=new URL(e.authorization_endpoint),!e.response_types_supported.includes(s))throw new Error(`Incompatible auth server: does not support response type ${s}`);if(!e.code_challenge_methods_supported||!e.code_challenge_methods_supported.includes(c))throw new Error(`Incompatible auth server: does not support code challenge method ${c}`)}else l=new URL("/authorize",r);const p=await pkceChallenge(),d=p.code_verifier,u=p.code_challenge;l.searchParams.set("response_type",s),l.searchParams.set("client_id",t.client_id),l.searchParams.set("code_challenge",u),l.searchParams.set("code_challenge_method",c),l.searchParams.set("redirect_uri",String(o)),a&&l.searchParams.set("state",a);n&&l.searchParams.set("scope",n);(null==n?void 0:n.includes("offline_access"))&&l.searchParams.append("prompt","consent");i&&l.searchParams.set("resource",i.href);return{authorizationUrl:l,codeVerifier:d}}(u,{metadata:g,clientInformation:z,state:y,redirectUrl:r.redirectUrl,scope:o||r.clientMetadata.scope,resource:h});return await r.saveCodeVerifier(v),await r.redirectToAuthorization(w),"REDIRECT"}function extractResourceMetadataUrl(r){const e=r.headers.get("WWW-Authenticate");if(!e)return;const[t,o]=e.split(" ");if("bearer"!==t.toLowerCase()||!o)return;const n=/resource_metadata="([^"]*)"/.exec(e);if(n)try{return new URL(n[1])}catch(r){return}}async function fetchWithCorsRetry(r,e,t=fetch){try{return await t(r,{headers:e})}catch(o){if(o instanceof TypeError)return e?fetchWithCorsRetry(r,void 0,t):void 0;throw o}}async function tryMetadataDiscovery(r,e,t=fetch){const o={"MCP-Protocol-Version":e};return await fetchWithCorsRetry(r,o,t)}async function discoverMetadataWithFallback(r,e,t,o){var a,i;const s=new URL(r),c=null!==(a=null==o?void 0:o.protocolVersion)&&void 0!==a?a:n.LATEST_PROTOCOL_VERSION;let l;if(null==o?void 0:o.metadataUrl)l=new URL(o.metadataUrl);else{const r=function buildWellKnownPath(r,e="",t={}){return e.endsWith("/")&&(e=e.slice(0,-1)),t.prependPathname?`${e}/.well-known/${r}`:`/.well-known/${r}${e}`}(e,s.pathname);l=new URL(r,null!==(i=null==o?void 0:o.metadataServerUrl)&&void 0!==i?i:s),l.search=s.search}let p=await tryMetadataDiscovery(l,c,t);if(!(null==o?void 0:o.metadataUrl)&&function shouldAttemptFallback(r,e){return!r||404===r.status&&"/"!==e}(p,s.pathname)){const r=new URL(`/.well-known/${e}`,s);p=await tryMetadataDiscovery(r,c,t)}return p}}};