resend-cli 2.3.0 → 2.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cli.cjs CHANGED
@@ -1,166 +1,165 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var x0=Object.create;var Qa=Object.defineProperty;var k0=Object.getOwnPropertyDescriptor;var A0=Object.getOwnPropertyNames;var E0=Object.getPrototypeOf,P0=Object.prototype.hasOwnProperty;var De=(e,t)=>()=>(e&&(t=e(e=0)),t);var f=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Mr=(e,t)=>{for(var r in t)Qa(e,r,{get:t[r],enumerable:!0})},T0=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of A0(t))!P0.call(e,n)&&n!==r&&Qa(e,n,{get:()=>t[n],enumerable:!(i=k0(t,n))||i.enumerable});return e};var we=(e,t,r)=>(r=e!=null?x0(E0(e)):{},T0(t||!e||!e.__esModule?Qa(r,"default",{value:e,enumerable:!0}):r,e));var zr=f(Xa=>{var si=class extends Error{constructor(t,r,i){super(i),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=r,this.exitCode=t,this.nestedError=void 0}},Za=class extends si{constructor(t){super(1,"commander.invalidArgument",t),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};Xa.CommanderError=si;Xa.InvalidArgumentError=Za});var ai=f(tu=>{var{InvalidArgumentError:I0}=zr(),eu=class{constructor(t,r){switch(this.description=r||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,t[0]){case"<":this.required=!0,this._name=t.slice(1,-1);break;case"[":this.required=!1,this._name=t.slice(1,-1);break;default:this.required=!0,this._name=t;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(t,r){return r===this.defaultValue||!Array.isArray(r)?[t]:(r.push(t),r)}default(t,r){return this.defaultValue=t,this.defaultValueDescription=r,this}argParser(t){return this.parseArg=t,this}choices(t){return this.argChoices=t.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new I0(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(r,i):r},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function $0(e){let t=e.name()+(e.variadic===!0?"...":"");return e.required?"<"+t+">":"["+t+"]"}tu.Argument=eu;tu.humanReadableArgName=$0});var nu=f(iu=>{var{humanReadableArgName:j0}=ai(),ru=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(t){this.helpWidth=this.helpWidth??t.helpWidth??80}visibleCommands(t){let r=t.commands.filter(n=>!n._hidden),i=t._getHelpCommand();return i&&!i._hidden&&r.push(i),this.sortSubcommands&&r.sort((n,o)=>n.name().localeCompare(o.name())),r}compareOptions(t,r){let i=n=>n.short?n.short.replace(/^-/,""):n.long.replace(/^--/,"");return i(t).localeCompare(i(r))}visibleOptions(t){let r=t.options.filter(n=>!n.hidden),i=t._getHelpOption();if(i&&!i.hidden){let n=i.short&&t._findOption(i.short),o=i.long&&t._findOption(i.long);!n&&!o?r.push(i):i.long&&!o?r.push(t.createOption(i.long,i.description)):i.short&&!n&&r.push(t.createOption(i.short,i.description))}return this.sortOptions&&r.sort(this.compareOptions),r}visibleGlobalOptions(t){if(!this.showGlobalOptions)return[];let r=[];for(let i=t.parent;i;i=i.parent){let n=i.options.filter(o=>!o.hidden);r.push(...n)}return this.sortOptions&&r.sort(this.compareOptions),r}visibleArguments(t){return t._argsDescription&&t.registeredArguments.forEach(r=>{r.description=r.description||t._argsDescription[r.name()]||""}),t.registeredArguments.find(r=>r.description)?t.registeredArguments:[]}subcommandTerm(t){let r=t.registeredArguments.map(i=>j0(i)).join(" ");return t._name+(t._aliases[0]?"|"+t._aliases[0]:"")+(t.options.length?" [options]":"")+(r?" "+r:"")}optionTerm(t){return t.flags}argumentTerm(t){return t.name()}longestSubcommandTermLength(t,r){return r.visibleCommands(t).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleSubcommandTerm(r.subcommandTerm(n)))),0)}longestOptionTermLength(t,r){return r.visibleOptions(t).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestGlobalOptionTermLength(t,r){return r.visibleGlobalOptions(t).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestArgumentTermLength(t,r){return r.visibleArguments(t).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleArgumentTerm(r.argumentTerm(n)))),0)}commandUsage(t){let r=t._name;t._aliases[0]&&(r=r+"|"+t._aliases[0]);let i="";for(let n=t.parent;n;n=n.parent)i=n.name()+" "+i;return i+r+" "+t.usage()}commandDescription(t){return t.description()}subcommandDescription(t){return t.summary()||t.description()}optionDescription(t){let r=[];if(t.argChoices&&r.push(`choices: ${t.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),t.defaultValue!==void 0&&(t.required||t.optional||t.isBoolean()&&typeof t.defaultValue=="boolean")&&r.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`),t.presetArg!==void 0&&t.optional&&r.push(`preset: ${JSON.stringify(t.presetArg)}`),t.envVar!==void 0&&r.push(`env: ${t.envVar}`),r.length>0){let i=`(${r.join(", ")})`;return t.description?`${t.description} ${i}`:i}return t.description}argumentDescription(t){let r=[];if(t.argChoices&&r.push(`choices: ${t.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),t.defaultValue!==void 0&&r.push(`default: ${t.defaultValueDescription||JSON.stringify(t.defaultValue)}`),r.length>0){let i=`(${r.join(", ")})`;return t.description?`${t.description} ${i}`:i}return t.description}formatItemList(t,r,i){return r.length===0?[]:[i.styleTitle(t),...r,""]}groupItems(t,r,i){let n=new Map;return t.forEach(o=>{let s=i(o);n.has(s)||n.set(s,[])}),r.forEach(o=>{let s=i(o);n.has(s)||n.set(s,[]),n.get(s).push(o)}),n}formatHelp(t,r){let i=r.padWidth(t,r),n=r.helpWidth??80;function o(c,m){return r.formatItem(c,i,m,r)}let s=[`${r.styleTitle("Usage:")} ${r.styleUsage(r.commandUsage(t))}`,""],a=r.commandDescription(t);a.length>0&&(s=s.concat([r.boxWrap(r.styleCommandDescription(a),n),""]));let u=r.visibleArguments(t).map(c=>o(r.styleArgumentTerm(r.argumentTerm(c)),r.styleArgumentDescription(r.argumentDescription(c))));if(s=s.concat(this.formatItemList("Arguments:",u,r)),this.groupItems(t.options,r.visibleOptions(t),c=>c.helpGroupHeading??"Options:").forEach((c,m)=>{let v=c.map(b=>o(r.styleOptionTerm(r.optionTerm(b)),r.styleOptionDescription(r.optionDescription(b))));s=s.concat(this.formatItemList(m,v,r))}),r.showGlobalOptions){let c=r.visibleGlobalOptions(t).map(m=>o(r.styleOptionTerm(r.optionTerm(m)),r.styleOptionDescription(r.optionDescription(m))));s=s.concat(this.formatItemList("Global Options:",c,r))}return this.groupItems(t.commands,r.visibleCommands(t),c=>c.helpGroup()||"Commands:").forEach((c,m)=>{let v=c.map(b=>o(r.styleSubcommandTerm(r.subcommandTerm(b)),r.styleSubcommandDescription(r.subcommandDescription(b))));s=s.concat(this.formatItemList(m,v,r))}),s.join(`
3
- `)}displayWidth(t){return xc(t).length}styleTitle(t){return t}styleUsage(t){return t.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r==="[command]"?this.styleSubcommandText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleCommandText(r)).join(" ")}styleCommandDescription(t){return this.styleDescriptionText(t)}styleOptionDescription(t){return this.styleDescriptionText(t)}styleSubcommandDescription(t){return this.styleDescriptionText(t)}styleArgumentDescription(t){return this.styleDescriptionText(t)}styleDescriptionText(t){return t}styleOptionTerm(t){return this.styleOptionText(t)}styleSubcommandTerm(t){return t.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleSubcommandText(r)).join(" ")}styleArgumentTerm(t){return this.styleArgumentText(t)}styleOptionText(t){return t}styleArgumentText(t){return t}styleSubcommandText(t){return t}styleCommandText(t){return t}padWidth(t,r){return Math.max(r.longestOptionTermLength(t,r),r.longestGlobalOptionTermLength(t,r),r.longestSubcommandTermLength(t,r),r.longestArgumentTermLength(t,r))}preformatted(t){return/\n[^\S\r\n]/.test(t)}formatItem(t,r,i,n){let s=" ".repeat(2);if(!i)return s+t;let a=t.padEnd(r+t.length-n.displayWidth(t)),u=2,l=(this.helpWidth??80)-r-u-2,c;return l<this.minWidthToWrap||n.preformatted(i)?c=i:c=n.boxWrap(i,l).replace(/\n/g,`
4
- `+" ".repeat(r+u)),s+a+" ".repeat(u)+c.replace(/\n/g,`
5
- ${s}`)}boxWrap(t,r){if(r<this.minWidthToWrap)return t;let i=t.split(/\r\n|\n/),n=/[\s]*[^\s]+/g,o=[];return i.forEach(s=>{let a=s.match(n);if(a===null){o.push("");return}let u=[a.shift()],d=this.displayWidth(u[0]);a.forEach(l=>{let c=this.displayWidth(l);if(d+c<=r){u.push(l),d+=c;return}o.push(u.join(""));let m=l.trimStart();u=[m],d=this.displayWidth(m)}),o.push(u.join(""))}),o.join(`
6
- `)}};function xc(e){let t=/\x1b\[\d*(;\d*)*m/g;return e.replace(t,"")}iu.Help=ru;iu.stripColor=xc});var uu=f(au=>{var{InvalidArgumentError:D0}=zr(),ou=class{constructor(t,r){this.flags=t,this.description=r||"",this.required=t.includes("<"),this.optional=t.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(t),this.mandatory=!1;let i=q0(t);this.short=i.shortFlag,this.long=i.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(t,r){return this.defaultValue=t,this.defaultValueDescription=r,this}preset(t){return this.presetArg=t,this}conflicts(t){return this.conflictsWith=this.conflictsWith.concat(t),this}implies(t){let r=t;return typeof t=="string"&&(r={[t]:!0}),this.implied=Object.assign(this.implied||{},r),this}env(t){return this.envVar=t,this}argParser(t){return this.parseArg=t,this}makeOptionMandatory(t=!0){return this.mandatory=!!t,this}hideHelp(t=!0){return this.hidden=!!t,this}_collectValue(t,r){return r===this.defaultValue||!Array.isArray(r)?[t]:(r.push(t),r)}choices(t){return this.argChoices=t.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new D0(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(r,i):r},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?kc(this.name().replace(/^no-/,"")):kc(this.name())}helpGroup(t){return this.helpGroupHeading=t,this}is(t){return this.short===t||this.long===t}isBoolean(){return!this.required&&!this.optional&&!this.negate}},su=class{constructor(t){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,t.forEach(r=>{r.negate?this.negativeOptions.set(r.attributeName(),r):this.positiveOptions.set(r.attributeName(),r)}),this.negativeOptions.forEach((r,i)=>{this.positiveOptions.has(i)&&this.dualOptions.add(i)})}valueFromOption(t,r){let i=r.attributeName();if(!this.dualOptions.has(i))return!0;let n=this.negativeOptions.get(i).presetArg,o=n!==void 0?n:!1;return r.negate===(o===t)}};function kc(e){return e.split("-").reduce((t,r)=>t+r[0].toUpperCase()+r.slice(1))}function q0(e){let t,r,i=/^-[^-]$/,n=/^--[^-]/,o=e.split(/[ |,]+/).concat("guard");if(i.test(o[0])&&(t=o.shift()),n.test(o[0])&&(r=o.shift()),!t&&i.test(o[0])&&(t=o.shift()),!t&&n.test(o[0])&&(t=r,r=o.shift()),o[0].startsWith("-")){let s=o[0],a=`option creation failed due to '${s}' in option flags '${e}'`;throw/^-[^-][^-]/.test(s)?new Error(`${a}
2
+ "use strict";var Yc=Object.create;var an=Object.defineProperty;var Qc=Object.getOwnPropertyDescriptor;var Xc=Object.getOwnPropertyNames;var Zc=Object.getPrototypeOf,eu=Object.prototype.hasOwnProperty;var xe=(t,e)=>()=>(t&&(e=t(t=0)),e);var Ae=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Vt=(t,e)=>{for(var r in e)an(t,r,{get:e[r],enumerable:!0})},tu=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of Xc(e))!eu.call(t,i)&&i!==r&&an(t,i,{get:()=>e[i],enumerable:!(n=Qc(e,i))||n.enumerable});return t};var pe=(t,e,r)=>(r=t!=null?Yc(Zc(t)):{},tu(e||!t||!t.__esModule?an(r,"default",{value:t,enumerable:!0}):r,t));var Kt=Ae(cn=>{var mr=class extends Error{constructor(e,r,n){super(n),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=r,this.exitCode=e,this.nestedError=void 0}},ln=class extends mr{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};cn.CommanderError=mr;cn.InvalidArgumentError=ln});var pr=Ae(dn=>{var{InvalidArgumentError:ru}=Kt(),un=class{constructor(e,r){switch(this.description=r||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.endsWith("...")&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_collectValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:(r.push(e),r)}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,n)=>{if(!this.argChoices.includes(r))throw new ru(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(r,n):r},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function nu(t){let e=t.name()+(t.variadic===!0?"...":"");return t.required?"<"+e+">":"["+e+"]"}dn.Argument=un;dn.humanReadableArgName=nu});var fn=Ae(pn=>{var{humanReadableArgName:iu}=pr(),mn=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let r=e.commands.filter(i=>!i._hidden),n=e._getHelpCommand();return n&&!n._hidden&&r.push(n),this.sortSubcommands&&r.sort((i,o)=>i.name().localeCompare(o.name())),r}compareOptions(e,r){let n=i=>i.short?i.short.replace(/^-/,""):i.long.replace(/^--/,"");return n(e).localeCompare(n(r))}visibleOptions(e){let r=e.options.filter(i=>!i.hidden),n=e._getHelpOption();if(n&&!n.hidden){let i=n.short&&e._findOption(n.short),o=n.long&&e._findOption(n.long);!i&&!o?r.push(n):n.long&&!o?r.push(e.createOption(n.long,n.description)):n.short&&!i&&r.push(e.createOption(n.short,n.description))}return this.sortOptions&&r.sort(this.compareOptions),r}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let r=[];for(let n=e.parent;n;n=n.parent){let i=n.options.filter(o=>!o.hidden);r.push(...i)}return this.sortOptions&&r.sort(this.compareOptions),r}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(r=>{r.description=r.description||e._argsDescription[r.name()]||""}),e.registeredArguments.find(r=>r.description)?e.registeredArguments:[]}subcommandTerm(e){let r=e.registeredArguments.map(n=>iu(n)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(r?" "+r:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,r){return r.visibleCommands(e).reduce((n,i)=>Math.max(n,this.displayWidth(r.styleSubcommandTerm(r.subcommandTerm(i)))),0)}longestOptionTermLength(e,r){return r.visibleOptions(e).reduce((n,i)=>Math.max(n,this.displayWidth(r.styleOptionTerm(r.optionTerm(i)))),0)}longestGlobalOptionTermLength(e,r){return r.visibleGlobalOptions(e).reduce((n,i)=>Math.max(n,this.displayWidth(r.styleOptionTerm(r.optionTerm(i)))),0)}longestArgumentTermLength(e,r){return r.visibleArguments(e).reduce((n,i)=>Math.max(n,this.displayWidth(r.styleArgumentTerm(r.argumentTerm(i)))),0)}commandUsage(e){let r=e._name;e._aliases[0]&&(r=r+"|"+e._aliases[0]);let n="";for(let i=e.parent;i;i=i.parent)n=i.name()+" "+n;return n+r+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let r=[];if(e.argChoices&&r.push(`choices: ${e.argChoices.map(n=>JSON.stringify(n)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&r.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&r.push(`env: ${e.envVar}`),r.length>0){let n=`(${r.join(", ")})`;return e.description?`${e.description} ${n}`:n}return e.description}argumentDescription(e){let r=[];if(e.argChoices&&r.push(`choices: ${e.argChoices.map(n=>JSON.stringify(n)).join(", ")}`),e.defaultValue!==void 0&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),r.length>0){let n=`(${r.join(", ")})`;return e.description?`${e.description} ${n}`:n}return e.description}formatItemList(e,r,n){return r.length===0?[]:[n.styleTitle(e),...r,""]}groupItems(e,r,n){let i=new Map;return e.forEach(o=>{let s=n(o);i.has(s)||i.set(s,[])}),r.forEach(o=>{let s=n(o);i.has(s)||i.set(s,[]),i.get(s).push(o)}),i}formatHelp(e,r){let n=r.padWidth(e,r),i=r.helpWidth??80;function o(u,m){return r.formatItem(u,n,m,r)}let s=[`${r.styleTitle("Usage:")} ${r.styleUsage(r.commandUsage(e))}`,""],a=r.commandDescription(e);a.length>0&&(s=s.concat([r.boxWrap(r.styleCommandDescription(a),i),""]));let l=r.visibleArguments(e).map(u=>o(r.styleArgumentTerm(r.argumentTerm(u)),r.styleArgumentDescription(r.argumentDescription(u))));if(s=s.concat(this.formatItemList("Arguments:",l,r)),this.groupItems(e.options,r.visibleOptions(e),u=>u.helpGroupHeading??"Options:").forEach((u,m)=>{let y=u.map(g=>o(r.styleOptionTerm(r.optionTerm(g)),r.styleOptionDescription(r.optionDescription(g))));s=s.concat(this.formatItemList(m,y,r))}),r.showGlobalOptions){let u=r.visibleGlobalOptions(e).map(m=>o(r.styleOptionTerm(r.optionTerm(m)),r.styleOptionDescription(r.optionDescription(m))));s=s.concat(this.formatItemList("Global Options:",u,r))}return this.groupItems(e.commands,r.visibleCommands(e),u=>u.helpGroup()||"Commands:").forEach((u,m)=>{let y=u.map(g=>o(r.styleSubcommandTerm(r.subcommandTerm(g)),r.styleSubcommandDescription(r.subcommandDescription(g))));s=s.concat(this.formatItemList(m,y,r))}),s.join(`
3
+ `)}displayWidth(e){return xi(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r==="[command]"?this.styleSubcommandText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleCommandText(r)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleSubcommandText(r)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,r){return Math.max(r.longestOptionTermLength(e,r),r.longestGlobalOptionTermLength(e,r),r.longestSubcommandTermLength(e,r),r.longestArgumentTermLength(e,r))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,r,n,i){let s=" ".repeat(2);if(!n)return s+e;let a=e.padEnd(r+e.length-i.displayWidth(e)),l=2,c=(this.helpWidth??80)-r-l-2,u;return c<this.minWidthToWrap||i.preformatted(n)?u=n:u=i.boxWrap(n,c).replace(/\n/g,`
4
+ `+" ".repeat(r+l)),s+a+" ".repeat(l)+u.replace(/\n/g,`
5
+ ${s}`)}boxWrap(e,r){if(r<this.minWidthToWrap)return e;let n=e.split(/\r\n|\n/),i=/[\s]*[^\s]+/g,o=[];return n.forEach(s=>{let a=s.match(i);if(a===null){o.push("");return}let l=[a.shift()],d=this.displayWidth(l[0]);a.forEach(c=>{let u=this.displayWidth(c);if(d+u<=r){l.push(c),d+=u;return}o.push(l.join(""));let m=c.trimStart();l=[m],d=this.displayWidth(m)}),o.push(l.join(""))}),o.join(`
6
+ `)}};function xi(t){let e=/\x1b\[\d*(;\d*)*m/g;return t.replace(e,"")}pn.Help=mn;pn.stripColor=xi});var yn=Ae(bn=>{var{InvalidArgumentError:ou}=Kt(),hn=class{constructor(e,r){this.flags=e,this.description=r||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let n=su(e);this.short=n.shortFlag,this.long=n.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0,this.helpGroupHeading=void 0}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let r=e;return typeof e=="string"&&(r={[e]:!0}),this.implied=Object.assign(this.implied||{},r),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_collectValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:(r.push(e),r)}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,n)=>{if(!this.argChoices.includes(r))throw new ou(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._collectValue(r,n):r},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?Ai(this.name().replace(/^no-/,"")):Ai(this.name())}helpGroup(e){return this.helpGroupHeading=e,this}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},gn=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(r=>{r.negate?this.negativeOptions.set(r.attributeName(),r):this.positiveOptions.set(r.attributeName(),r)}),this.negativeOptions.forEach((r,n)=>{this.positiveOptions.has(n)&&this.dualOptions.add(n)})}valueFromOption(e,r){let n=r.attributeName();if(!this.dualOptions.has(n))return!0;let i=this.negativeOptions.get(n).presetArg,o=i!==void 0?i:!1;return r.negate===(o===e)}};function Ai(t){return t.split("-").reduce((e,r)=>e+r[0].toUpperCase()+r.slice(1))}function su(t){let e,r,n=/^-[^-]$/,i=/^--[^-]/,o=t.split(/[ |,]+/).concat("guard");if(n.test(o[0])&&(e=o.shift()),i.test(o[0])&&(r=o.shift()),!e&&n.test(o[0])&&(e=o.shift()),!e&&i.test(o[0])&&(e=r,r=o.shift()),o[0].startsWith("-")){let s=o[0],a=`option creation failed due to '${s}' in option flags '${t}'`;throw/^-[^-][^-]/.test(s)?new Error(`${a}
7
7
  - a short flag is a single dash and a single character
8
8
  - either use a single dash and a single character (for a short flag)
9
- - or use a double dash for a long option (and can have two, like '--ws, --workspace')`):i.test(s)?new Error(`${a}
10
- - too many short flags`):n.test(s)?new Error(`${a}
9
+ - or use a double dash for a long option (and can have two, like '--ws, --workspace')`):n.test(s)?new Error(`${a}
10
+ - too many short flags`):i.test(s)?new Error(`${a}
11
11
  - too many long flags`):new Error(`${a}
12
- - unrecognised flag format`)}if(t===void 0&&r===void 0)throw new Error(`option creation failed due to no flags found in '${e}'.`);return{shortFlag:t,longFlag:r}}au.Option=ou;au.DualOptions=su});var Ec=f(Ac=>{function R0(e,t){if(Math.abs(e.length-t.length)>3)return Math.max(e.length,t.length);let r=[];for(let i=0;i<=e.length;i++)r[i]=[i];for(let i=0;i<=t.length;i++)r[0][i]=i;for(let i=1;i<=t.length;i++)for(let n=1;n<=e.length;n++){let o=1;e[n-1]===t[i-1]?o=0:o=1,r[n][i]=Math.min(r[n-1][i]+1,r[n][i-1]+1,r[n-1][i-1]+o),n>1&&i>1&&e[n-1]===t[i-2]&&e[n-2]===t[i-1]&&(r[n][i]=Math.min(r[n][i],r[n-2][i-2]+1))}return r[e.length][t.length]}function M0(e,t){if(!t||t.length===0)return"";t=Array.from(new Set(t));let r=e.startsWith("--");r&&(e=e.slice(2),t=t.map(s=>s.slice(2)));let i=[],n=3,o=.4;return t.forEach(s=>{if(s.length<=1)return;let a=R0(e,s),u=Math.max(e.length,s.length);(u-a)/u>o&&(a<n?(n=a,i=[s]):a===n&&i.push(s))}),i.sort((s,a)=>s.localeCompare(a)),r&&(i=i.map(s=>`--${s}`)),i.length>1?`
13
- (Did you mean one of ${i.join(", ")}?)`:i.length===1?`
14
- (Did you mean ${i[0]}?)`:""}Ac.suggestSimilar=M0});var $c=f(pu=>{var z0=require("node:events").EventEmitter,lu=require("node:child_process"),ht=require("node:path"),ui=require("node:fs"),V=require("node:process"),{Argument:J0,humanReadableArgName:F0}=ai(),{CommanderError:cu}=zr(),{Help:H0,stripColor:B0}=nu(),{Option:Pc,DualOptions:L0}=uu(),{suggestSimilar:Tc}=Ec(),du=class e extends z0{constructor(t){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=t||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:r=>V.stdout.write(r),writeErr:r=>V.stderr.write(r),outputError:(r,i)=>i(r),getOutHelpWidth:()=>V.stdout.isTTY?V.stdout.columns:void 0,getErrHelpWidth:()=>V.stderr.isTTY?V.stderr.columns:void 0,getOutHasColors:()=>mu()??(V.stdout.isTTY&&V.stdout.hasColors?.()),getErrHasColors:()=>mu()??(V.stderr.isTTY&&V.stderr.hasColors?.()),stripColor:r=>B0(r)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(t){return this._outputConfiguration=t._outputConfiguration,this._helpOption=t._helpOption,this._helpCommand=t._helpCommand,this._helpConfiguration=t._helpConfiguration,this._exitCallback=t._exitCallback,this._storeOptionsAsProperties=t._storeOptionsAsProperties,this._combineFlagAndOptionalValue=t._combineFlagAndOptionalValue,this._allowExcessArguments=t._allowExcessArguments,this._enablePositionalOptions=t._enablePositionalOptions,this._showHelpAfterError=t._showHelpAfterError,this._showSuggestionAfterError=t._showSuggestionAfterError,this}_getCommandAndAncestors(){let t=[];for(let r=this;r;r=r.parent)t.push(r);return t}command(t,r,i){let n=r,o=i;typeof n=="object"&&n!==null&&(o=n,n=null),o=o||{};let[,s,a]=t.match(/([^ ]+) *(.*)/),u=this.createCommand(s);return n&&(u.description(n),u._executableHandler=!0),o.isDefault&&(this._defaultCommandName=u._name),u._hidden=!!(o.noHelp||o.hidden),u._executableFile=o.executableFile||null,a&&u.arguments(a),this._registerCommand(u),u.parent=this,u.copyInheritedSettings(this),n?this:u}createCommand(t){return new e(t)}createHelp(){return Object.assign(new H0,this.configureHelp())}configureHelp(t){return t===void 0?this._helpConfiguration:(this._helpConfiguration=t,this)}configureOutput(t){return t===void 0?this._outputConfiguration:(this._outputConfiguration={...this._outputConfiguration,...t},this)}showHelpAfterError(t=!0){return typeof t!="string"&&(t=!!t),this._showHelpAfterError=t,this}showSuggestionAfterError(t=!0){return this._showSuggestionAfterError=!!t,this}addCommand(t,r){if(!t._name)throw new Error(`Command passed to .addCommand() must have a name
15
- - specify the name in Command constructor or using .name()`);return r=r||{},r.isDefault&&(this._defaultCommandName=t._name),(r.noHelp||r.hidden)&&(t._hidden=!0),this._registerCommand(t),t.parent=this,t._checkForBrokenPassThrough(),this}createArgument(t,r){return new J0(t,r)}argument(t,r,i,n){let o=this.createArgument(t,r);return typeof i=="function"?o.default(n).argParser(i):o.default(i),this.addArgument(o),this}arguments(t){return t.trim().split(/ +/).forEach(r=>{this.argument(r)}),this}addArgument(t){let r=this.registeredArguments.slice(-1)[0];if(r?.variadic)throw new Error(`only the last argument can be variadic '${r.name()}'`);if(t.required&&t.defaultValue!==void 0&&t.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${t.name()}'`);return this.registeredArguments.push(t),this}helpCommand(t,r){if(typeof t=="boolean")return this._addImplicitHelpCommand=t,t&&this._defaultCommandGroup&&this._initCommandGroup(this._getHelpCommand()),this;let i=t??"help [command]",[,n,o]=i.match(/([^ ]+) *(.*)/),s=r??"display help for command",a=this.createCommand(n);return a.helpOption(!1),o&&a.arguments(o),s&&a.description(s),this._addImplicitHelpCommand=!0,this._helpCommand=a,(t||r)&&this._initCommandGroup(a),this}addHelpCommand(t,r){return typeof t!="object"?(this.helpCommand(t,r),this):(this._addImplicitHelpCommand=!0,this._helpCommand=t,this._initCommandGroup(t),this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(t,r){let i=["preSubcommand","preAction","postAction"];if(!i.includes(t))throw new Error(`Unexpected value for event passed to hook : '${t}'.
16
- Expecting one of '${i.join("', '")}'`);return this._lifeCycleHooks[t]?this._lifeCycleHooks[t].push(r):this._lifeCycleHooks[t]=[r],this}exitOverride(t){return t?this._exitCallback=t:this._exitCallback=r=>{if(r.code!=="commander.executeSubCommandAsync")throw r},this}_exit(t,r,i){this._exitCallback&&this._exitCallback(new cu(t,r,i)),V.exit(t)}action(t){let r=i=>{let n=this.registeredArguments.length,o=i.slice(0,n);return this._storeOptionsAsProperties?o[n]=this:o[n]=this.opts(),o.push(this),t.apply(this,o)};return this._actionHandler=r,this}createOption(t,r){return new Pc(t,r)}_callParseArg(t,r,i,n){try{return t.parseArg(r,i)}catch(o){if(o.code==="commander.invalidArgument"){let s=`${n} ${o.message}`;this.error(s,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(t){let r=t.short&&this._findOption(t.short)||t.long&&this._findOption(t.long);if(r){let i=t.long&&this._findOption(t.long)?t.long:t.short;throw new Error(`Cannot add option '${t.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${i}'
17
- - already used by option '${r.flags}'`)}this._initOptionGroup(t),this.options.push(t)}_registerCommand(t){let r=n=>[n.name()].concat(n.aliases()),i=r(t).find(n=>this._findCommand(n));if(i){let n=r(this._findCommand(i)).join("|"),o=r(t).join("|");throw new Error(`cannot add command '${o}' as already have command '${n}'`)}this._initCommandGroup(t),this.commands.push(t)}addOption(t){this._registerOption(t);let r=t.name(),i=t.attributeName();if(t.negate){let o=t.long.replace(/^--no-/,"--");this._findOption(o)||this.setOptionValueWithSource(i,t.defaultValue===void 0?!0:t.defaultValue,"default")}else t.defaultValue!==void 0&&this.setOptionValueWithSource(i,t.defaultValue,"default");let n=(o,s,a)=>{o==null&&t.presetArg!==void 0&&(o=t.presetArg);let u=this.getOptionValue(i);o!==null&&t.parseArg?o=this._callParseArg(t,o,u,s):o!==null&&t.variadic&&(o=t._collectValue(o,u)),o==null&&(t.negate?o=!1:t.isBoolean()||t.optional?o=!0:o=""),this.setOptionValueWithSource(i,o,a)};return this.on("option:"+r,o=>{let s=`error: option '${t.flags}' argument '${o}' is invalid.`;n(o,s,"cli")}),t.envVar&&this.on("optionEnv:"+r,o=>{let s=`error: option '${t.flags}' value '${o}' from env '${t.envVar}' is invalid.`;n(o,s,"env")}),this}_optionEx(t,r,i,n,o){if(typeof r=="object"&&r instanceof Pc)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let s=this.createOption(r,i);if(s.makeOptionMandatory(!!t.mandatory),typeof n=="function")s.default(o).argParser(n);else if(n instanceof RegExp){let a=n;n=(u,d)=>{let l=a.exec(u);return l?l[0]:d},s.default(o).argParser(n)}else s.default(n);return this.addOption(s)}option(t,r,i,n){return this._optionEx({},t,r,i,n)}requiredOption(t,r,i,n){return this._optionEx({mandatory:!0},t,r,i,n)}combineFlagAndOptionalValue(t=!0){return this._combineFlagAndOptionalValue=!!t,this}allowUnknownOption(t=!0){return this._allowUnknownOption=!!t,this}allowExcessArguments(t=!0){return this._allowExcessArguments=!!t,this}enablePositionalOptions(t=!0){return this._enablePositionalOptions=!!t,this}passThroughOptions(t=!0){return this._passThroughOptions=!!t,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(t=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!t,this}getOptionValue(t){return this._storeOptionsAsProperties?this[t]:this._optionValues[t]}setOptionValue(t,r){return this.setOptionValueWithSource(t,r,void 0)}setOptionValueWithSource(t,r,i){return this._storeOptionsAsProperties?this[t]=r:this._optionValues[t]=r,this._optionValueSources[t]=i,this}getOptionValueSource(t){return this._optionValueSources[t]}getOptionValueSourceWithGlobals(t){let r;return this._getCommandAndAncestors().forEach(i=>{i.getOptionValueSource(t)!==void 0&&(r=i.getOptionValueSource(t))}),r}_prepareUserArgs(t,r){if(t!==void 0&&!Array.isArray(t))throw new Error("first parameter to parse must be array or undefined");if(r=r||{},t===void 0&&r.from===void 0){V.versions?.electron&&(r.from="electron");let n=V.execArgv??[];(n.includes("-e")||n.includes("--eval")||n.includes("-p")||n.includes("--print"))&&(r.from="eval")}t===void 0&&(t=V.argv),this.rawArgs=t.slice();let i;switch(r.from){case void 0:case"node":this._scriptPath=t[1],i=t.slice(2);break;case"electron":V.defaultApp?(this._scriptPath=t[1],i=t.slice(2)):i=t.slice(1);break;case"user":i=t.slice(0);break;case"eval":i=t.slice(1);break;default:throw new Error(`unexpected parse option { from: '${r.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",i}parse(t,r){this._prepareForParse();let i=this._prepareUserArgs(t,r);return this._parseCommand([],i),this}async parseAsync(t,r){this._prepareForParse();let i=this._prepareUserArgs(t,r);return await this._parseCommand([],i),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
18
- - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(t,r,i){if(ui.existsSync(t))return;let n=r?`searched for local subcommand relative to directory '${r}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${t}' does not exist
19
- - if '${i}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
12
+ - unrecognised flag format`)}if(e===void 0&&r===void 0)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:e,longFlag:r}}bn.Option=hn;bn.DualOptions=gn});var $i=Ae(ki=>{function au(t,e){if(Math.abs(t.length-e.length)>3)return Math.max(t.length,e.length);let r=[];for(let n=0;n<=t.length;n++)r[n]=[n];for(let n=0;n<=e.length;n++)r[0][n]=n;for(let n=1;n<=e.length;n++)for(let i=1;i<=t.length;i++){let o=1;t[i-1]===e[n-1]?o=0:o=1,r[i][n]=Math.min(r[i-1][n]+1,r[i][n-1]+1,r[i-1][n-1]+o),i>1&&n>1&&t[i-1]===e[n-2]&&t[i-2]===e[n-1]&&(r[i][n]=Math.min(r[i][n],r[i-2][n-2]+1))}return r[t.length][e.length]}function lu(t,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let r=t.startsWith("--");r&&(t=t.slice(2),e=e.map(s=>s.slice(2)));let n=[],i=3,o=.4;return e.forEach(s=>{if(s.length<=1)return;let a=au(t,s),l=Math.max(t.length,s.length);(l-a)/l>o&&(a<i?(i=a,n=[s]):a===i&&n.push(s))}),n.sort((s,a)=>s.localeCompare(a)),r&&(n=n.map(s=>`--${s}`)),n.length>1?`
13
+ (Did you mean one of ${n.join(", ")}?)`:n.length===1?`
14
+ (Did you mean ${n[0]}?)`:""}ki.suggestSimilar=lu});var Ti=Ae(xn=>{var cu=require("node:events").EventEmitter,vn=require("node:child_process"),Je=require("node:path"),fr=require("node:fs"),W=require("node:process"),{Argument:uu,humanReadableArgName:du}=pr(),{CommanderError:Cn}=Kt(),{Help:mu,stripColor:pu}=fn(),{Option:Ei,DualOptions:fu}=yn(),{suggestSimilar:Di}=$i(),wn=class t extends cu{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:r=>W.stdout.write(r),writeErr:r=>W.stderr.write(r),outputError:(r,n)=>n(r),getOutHelpWidth:()=>W.stdout.isTTY?W.stdout.columns:void 0,getErrHelpWidth:()=>W.stderr.isTTY?W.stderr.columns:void 0,getOutHasColors:()=>_n()??(W.stdout.isTTY&&W.stdout.hasColors?.()),getErrHasColors:()=>_n()??(W.stderr.isTTY&&W.stderr.hasColors?.()),stripColor:r=>pu(r)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={},this._helpGroupHeading=void 0,this._defaultCommandGroup=void 0,this._defaultOptionGroup=void 0}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let r=this;r;r=r.parent)e.push(r);return e}command(e,r,n){let i=r,o=n;typeof i=="object"&&i!==null&&(o=i,i=null),o=o||{};let[,s,a]=e.match(/([^ ]+) *(.*)/),l=this.createCommand(s);return i&&(l.description(i),l._executableHandler=!0),o.isDefault&&(this._defaultCommandName=l._name),l._hidden=!!(o.noHelp||o.hidden),l._executableFile=o.executableFile||null,a&&l.arguments(a),this._registerCommand(l),l.parent=this,l.copyInheritedSettings(this),i?this:l}createCommand(e){return new t(e)}createHelp(){return Object.assign(new mu,this.configureHelp())}configureHelp(e){return e===void 0?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return e===void 0?this._outputConfiguration:(this._outputConfiguration={...this._outputConfiguration,...e},this)}showHelpAfterError(e=!0){return typeof e!="string"&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,r){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
15
+ - specify the name in Command constructor or using .name()`);return r=r||{},r.isDefault&&(this._defaultCommandName=e._name),(r.noHelp||r.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,r){return new uu(e,r)}argument(e,r,n,i){let o=this.createArgument(e,r);return typeof n=="function"?o.default(i).argParser(n):o.default(n),this.addArgument(o),this}arguments(e){return e.trim().split(/ +/).forEach(r=>{this.argument(r)}),this}addArgument(e){let r=this.registeredArguments.slice(-1)[0];if(r?.variadic)throw new Error(`only the last argument can be variadic '${r.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,r){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,e&&this._defaultCommandGroup&&this._initCommandGroup(this._getHelpCommand()),this;let n=e??"help [command]",[,i,o]=n.match(/([^ ]+) *(.*)/),s=r??"display help for command",a=this.createCommand(i);return a.helpOption(!1),o&&a.arguments(o),s&&a.description(s),this._addImplicitHelpCommand=!0,this._helpCommand=a,(e||r)&&this._initCommandGroup(a),this}addHelpCommand(e,r){return typeof e!="object"?(this.helpCommand(e,r),this):(this._addImplicitHelpCommand=!0,this._helpCommand=e,this._initCommandGroup(e),this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(e,r){let n=["preSubcommand","preAction","postAction"];if(!n.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
16
+ Expecting one of '${n.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(r):this._lifeCycleHooks[e]=[r],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=r=>{if(r.code!=="commander.executeSubCommandAsync")throw r},this}_exit(e,r,n){this._exitCallback&&this._exitCallback(new Cn(e,r,n)),W.exit(e)}action(e){let r=n=>{let i=this.registeredArguments.length,o=n.slice(0,i);return this._storeOptionsAsProperties?o[i]=this:o[i]=this.opts(),o.push(this),e.apply(this,o)};return this._actionHandler=r,this}createOption(e,r){return new Ei(e,r)}_callParseArg(e,r,n,i){try{return e.parseArg(r,n)}catch(o){if(o.code==="commander.invalidArgument"){let s=`${i} ${o.message}`;this.error(s,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(e){let r=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(r){let n=e.long&&this._findOption(e.long)?e.long:e.short;throw new Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${n}'
17
+ - already used by option '${r.flags}'`)}this._initOptionGroup(e),this.options.push(e)}_registerCommand(e){let r=i=>[i.name()].concat(i.aliases()),n=r(e).find(i=>this._findCommand(i));if(n){let i=r(this._findCommand(n)).join("|"),o=r(e).join("|");throw new Error(`cannot add command '${o}' as already have command '${i}'`)}this._initCommandGroup(e),this.commands.push(e)}addOption(e){this._registerOption(e);let r=e.name(),n=e.attributeName();if(e.negate){let o=e.long.replace(/^--no-/,"--");this._findOption(o)||this.setOptionValueWithSource(n,e.defaultValue===void 0?!0:e.defaultValue,"default")}else e.defaultValue!==void 0&&this.setOptionValueWithSource(n,e.defaultValue,"default");let i=(o,s,a)=>{o==null&&e.presetArg!==void 0&&(o=e.presetArg);let l=this.getOptionValue(n);o!==null&&e.parseArg?o=this._callParseArg(e,o,l,s):o!==null&&e.variadic&&(o=e._collectValue(o,l)),o==null&&(e.negate?o=!1:e.isBoolean()||e.optional?o=!0:o=""),this.setOptionValueWithSource(n,o,a)};return this.on("option:"+r,o=>{let s=`error: option '${e.flags}' argument '${o}' is invalid.`;i(o,s,"cli")}),e.envVar&&this.on("optionEnv:"+r,o=>{let s=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;i(o,s,"env")}),this}_optionEx(e,r,n,i,o){if(typeof r=="object"&&r instanceof Ei)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let s=this.createOption(r,n);if(s.makeOptionMandatory(!!e.mandatory),typeof i=="function")s.default(o).argParser(i);else if(i instanceof RegExp){let a=i;i=(l,d)=>{let c=a.exec(l);return c?c[0]:d},s.default(o).argParser(i)}else s.default(i);return this.addOption(s)}option(e,r,n,i){return this._optionEx({},e,r,n,i)}requiredOption(e,r,n,i){return this._optionEx({mandatory:!0},e,r,n,i)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,r){return this.setOptionValueWithSource(e,r,void 0)}setOptionValueWithSource(e,r,n){return this._storeOptionsAsProperties?this[e]=r:this._optionValues[e]=r,this._optionValueSources[e]=n,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let r;return this._getCommandAndAncestors().forEach(n=>{n.getOptionValueSource(e)!==void 0&&(r=n.getOptionValueSource(e))}),r}_prepareUserArgs(e,r){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(r=r||{},e===void 0&&r.from===void 0){W.versions?.electron&&(r.from="electron");let i=W.execArgv??[];(i.includes("-e")||i.includes("--eval")||i.includes("-p")||i.includes("--print"))&&(r.from="eval")}e===void 0&&(e=W.argv),this.rawArgs=e.slice();let n;switch(r.from){case void 0:case"node":this._scriptPath=e[1],n=e.slice(2);break;case"electron":W.defaultApp?(this._scriptPath=e[1],n=e.slice(2)):n=e.slice(1);break;case"user":n=e.slice(0);break;case"eval":n=e.slice(1);break;default:throw new Error(`unexpected parse option { from: '${r.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",n}parse(e,r){this._prepareForParse();let n=this._prepareUserArgs(e,r);return this._parseCommand([],n),this}async parseAsync(e,r){this._prepareForParse();let n=this._prepareUserArgs(e,r);return await this._parseCommand([],n),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
18
+ - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,r,n){if(fr.existsSync(e))return;let i=r?`searched for local subcommand relative to directory '${r}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
19
+ - if '${n}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
20
20
  - if the default executable name is not suitable, use the executableFile option to supply a custom name or path
21
- - ${n}`;throw new Error(o)}_executeSubCommand(t,r){r=r.slice();let i=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(l,c){let m=ht.resolve(l,c);if(ui.existsSync(m))return m;if(n.includes(ht.extname(c)))return;let v=n.find(b=>ui.existsSync(`${m}${b}`));if(v)return`${m}${v}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let s=t._executableFile||`${this._name}-${t._name}`,a=this._executableDir||"";if(this._scriptPath){let l;try{l=ui.realpathSync(this._scriptPath)}catch{l=this._scriptPath}a=ht.resolve(ht.dirname(l),a)}if(a){let l=o(a,s);if(!l&&!t._executableFile&&this._scriptPath){let c=ht.basename(this._scriptPath,ht.extname(this._scriptPath));c!==this._name&&(l=o(a,`${c}-${t._name}`))}s=l||s}i=n.includes(ht.extname(s));let u;V.platform!=="win32"?i?(r.unshift(s),r=Ic(V.execArgv).concat(r),u=lu.spawn(V.argv[0],r,{stdio:"inherit"})):u=lu.spawn(s,r,{stdio:"inherit"}):(this._checkForMissingExecutable(s,a,t._name),r.unshift(s),r=Ic(V.execArgv).concat(r),u=lu.spawn(V.execPath,r,{stdio:"inherit"})),u.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(c=>{V.on(c,()=>{u.killed===!1&&u.exitCode===null&&u.kill(c)})});let d=this._exitCallback;u.on("close",l=>{l=l??1,d?d(new cu(l,"commander.executeSubCommandAsync","(close)")):V.exit(l)}),u.on("error",l=>{if(l.code==="ENOENT")this._checkForMissingExecutable(s,a,t._name);else if(l.code==="EACCES")throw new Error(`'${s}' not executable`);if(!d)V.exit(1);else{let c=new cu(1,"commander.executeSubCommandAsync","(error)");c.nestedError=l,d(c)}}),this.runningCommand=u}_dispatchSubcommand(t,r,i){let n=this._findCommand(t);n||this.help({error:!0}),n._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,n,"preSubcommand"),o=this._chainOrCall(o,()=>{if(n._executableHandler)this._executeSubCommand(n,r.concat(i));else return n._parseCommand(r,i)}),o}_dispatchHelpCommand(t){t||this.help();let r=this._findCommand(t);return r&&!r._executableHandler&&r.help(),this._dispatchSubcommand(t,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((t,r)=>{t.required&&this.args[r]==null&&this.missingArgument(t.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let t=(i,n,o)=>{let s=n;if(n!==null&&i.parseArg){let a=`error: command-argument value '${n}' is invalid for argument '${i.name()}'.`;s=this._callParseArg(i,n,o,a)}return s};this._checkNumberOfArguments();let r=[];this.registeredArguments.forEach((i,n)=>{let o=i.defaultValue;i.variadic?n<this.args.length?(o=this.args.slice(n),i.parseArg&&(o=o.reduce((s,a)=>t(i,a,s),i.defaultValue))):o===void 0&&(o=[]):n<this.args.length&&(o=this.args[n],i.parseArg&&(o=t(i,o,i.defaultValue))),r[n]=o}),this.processedArgs=r}_chainOrCall(t,r){return t?.then&&typeof t.then=="function"?t.then(()=>r()):r()}_chainOrCallHooks(t,r){let i=t,n=[];return this._getCommandAndAncestors().reverse().filter(o=>o._lifeCycleHooks[r]!==void 0).forEach(o=>{o._lifeCycleHooks[r].forEach(s=>{n.push({hookedCommand:o,callback:s})})}),r==="postAction"&&n.reverse(),n.forEach(o=>{i=this._chainOrCall(i,()=>o.callback(o.hookedCommand,this))}),i}_chainOrCallSubCommandHook(t,r,i){let n=t;return this._lifeCycleHooks[i]!==void 0&&this._lifeCycleHooks[i].forEach(o=>{n=this._chainOrCall(n,()=>o(this,r))}),n}_parseCommand(t,r){let i=this.parseOptions(r);if(this._parseOptionsEnv(),this._parseOptionsImplied(),t=t.concat(i.operands),r=i.unknown,this.args=t.concat(r),t&&this._findCommand(t[0]))return this._dispatchSubcommand(t[0],t.slice(1),r);if(this._getHelpCommand()&&t[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(t[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(r),this._dispatchSubcommand(this._defaultCommandName,t,r);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(i.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let n=()=>{i.unknown.length>0&&this.unknownOption(i.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){n(),this._processArguments();let s;return s=this._chainOrCallHooks(s,"preAction"),s=this._chainOrCall(s,()=>this._actionHandler(this.processedArgs)),this.parent&&(s=this._chainOrCall(s,()=>{this.parent.emit(o,t,r)})),s=this._chainOrCallHooks(s,"postAction"),s}if(this.parent?.listenerCount(o))n(),this._processArguments(),this.parent.emit(o,t,r);else if(t.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",t,r);this.listenerCount("command:*")?this.emit("command:*",t,r):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(t){if(t)return this.commands.find(r=>r._name===t||r._aliases.includes(t))}_findOption(t){return this.options.find(r=>r.is(t))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(t=>{t.options.forEach(r=>{r.mandatory&&t.getOptionValue(r.attributeName())===void 0&&t.missingMandatoryOptionValue(r)})})}_checkForConflictingLocalOptions(){let t=this.options.filter(i=>{let n=i.attributeName();return this.getOptionValue(n)===void 0?!1:this.getOptionValueSource(n)!=="default"});t.filter(i=>i.conflictsWith.length>0).forEach(i=>{let n=t.find(o=>i.conflictsWith.includes(o.attributeName()));n&&this._conflictingOption(i,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(t=>{t._checkForConflictingLocalOptions()})}parseOptions(t){let r=[],i=[],n=r;function o(l){return l.length>1&&l[0]==="-"}let s=l=>/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(l)?!this._getCommandAndAncestors().some(c=>c.options.map(m=>m.short).some(m=>/^-\d$/.test(m))):!1,a=null,u=null,d=0;for(;d<t.length||u;){let l=u??t[d++];if(u=null,l==="--"){n===i&&n.push(l),n.push(...t.slice(d));break}if(a&&(!o(l)||s(l))){this.emit(`option:${a.name()}`,l);continue}if(a=null,o(l)){let c=this._findOption(l);if(c){if(c.required){let m=t[d++];m===void 0&&this.optionMissingArgument(c),this.emit(`option:${c.name()}`,m)}else if(c.optional){let m=null;d<t.length&&(!o(t[d])||s(t[d]))&&(m=t[d++]),this.emit(`option:${c.name()}`,m)}else this.emit(`option:${c.name()}`);a=c.variadic?c:null;continue}}if(l.length>2&&l[0]==="-"&&l[1]!=="-"){let c=this._findOption(`-${l[1]}`);if(c){c.required||c.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${c.name()}`,l.slice(2)):(this.emit(`option:${c.name()}`),u=`-${l.slice(2)}`);continue}}if(/^--[^=]+=/.test(l)){let c=l.indexOf("="),m=this._findOption(l.slice(0,c));if(m&&(m.required||m.optional)){this.emit(`option:${m.name()}`,l.slice(c+1));continue}}if(n===r&&o(l)&&!(this.commands.length===0&&s(l))&&(n=i),(this._enablePositionalOptions||this._passThroughOptions)&&r.length===0&&i.length===0){if(this._findCommand(l)){r.push(l),i.push(...t.slice(d));break}else if(this._getHelpCommand()&&l===this._getHelpCommand().name()){r.push(l,...t.slice(d));break}else if(this._defaultCommandName){i.push(l,...t.slice(d));break}}if(this._passThroughOptions){n.push(l,...t.slice(d));break}n.push(l)}return{operands:r,unknown:i}}opts(){if(this._storeOptionsAsProperties){let t={},r=this.options.length;for(let i=0;i<r;i++){let n=this.options[i].attributeName();t[n]=n===this._versionOptionName?this._version:this[n]}return t}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((t,r)=>Object.assign(t,r.opts()),{})}error(t,r){this._outputConfiguration.outputError(`${t}
21
+ - ${i}`;throw new Error(o)}_executeSubCommand(e,r){r=r.slice();let n=!1,i=[".js",".ts",".tsx",".mjs",".cjs"];function o(c,u){let m=Je.resolve(c,u);if(fr.existsSync(m))return m;if(i.includes(Je.extname(u)))return;let y=i.find(g=>fr.existsSync(`${m}${g}`));if(y)return`${m}${y}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let s=e._executableFile||`${this._name}-${e._name}`,a=this._executableDir||"";if(this._scriptPath){let c;try{c=fr.realpathSync(this._scriptPath)}catch{c=this._scriptPath}a=Je.resolve(Je.dirname(c),a)}if(a){let c=o(a,s);if(!c&&!e._executableFile&&this._scriptPath){let u=Je.basename(this._scriptPath,Je.extname(this._scriptPath));u!==this._name&&(c=o(a,`${u}-${e._name}`))}s=c||s}n=i.includes(Je.extname(s));let l;W.platform!=="win32"?n?(r.unshift(s),r=Si(W.execArgv).concat(r),l=vn.spawn(W.argv[0],r,{stdio:"inherit"})):l=vn.spawn(s,r,{stdio:"inherit"}):(this._checkForMissingExecutable(s,a,e._name),r.unshift(s),r=Si(W.execArgv).concat(r),l=vn.spawn(W.execPath,r,{stdio:"inherit"})),l.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(u=>{W.on(u,()=>{l.killed===!1&&l.exitCode===null&&l.kill(u)})});let d=this._exitCallback;l.on("close",c=>{c=c??1,d?d(new Cn(c,"commander.executeSubCommandAsync","(close)")):W.exit(c)}),l.on("error",c=>{if(c.code==="ENOENT")this._checkForMissingExecutable(s,a,e._name);else if(c.code==="EACCES")throw new Error(`'${s}' not executable`);if(!d)W.exit(1);else{let u=new Cn(1,"commander.executeSubCommandAsync","(error)");u.nestedError=c,d(u)}}),this.runningCommand=l}_dispatchSubcommand(e,r,n){let i=this._findCommand(e);i||this.help({error:!0}),i._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,i,"preSubcommand"),o=this._chainOrCall(o,()=>{if(i._executableHandler)this._executeSubCommand(i,r.concat(n));else return i._parseCommand(r,n)}),o}_dispatchHelpCommand(e){e||this.help();let r=this._findCommand(e);return r&&!r._executableHandler&&r.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,r)=>{e.required&&this.args[r]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(n,i,o)=>{let s=i;if(i!==null&&n.parseArg){let a=`error: command-argument value '${i}' is invalid for argument '${n.name()}'.`;s=this._callParseArg(n,i,o,a)}return s};this._checkNumberOfArguments();let r=[];this.registeredArguments.forEach((n,i)=>{let o=n.defaultValue;n.variadic?i<this.args.length?(o=this.args.slice(i),n.parseArg&&(o=o.reduce((s,a)=>e(n,a,s),n.defaultValue))):o===void 0&&(o=[]):i<this.args.length&&(o=this.args[i],n.parseArg&&(o=e(n,o,n.defaultValue))),r[i]=o}),this.processedArgs=r}_chainOrCall(e,r){return e?.then&&typeof e.then=="function"?e.then(()=>r()):r()}_chainOrCallHooks(e,r){let n=e,i=[];return this._getCommandAndAncestors().reverse().filter(o=>o._lifeCycleHooks[r]!==void 0).forEach(o=>{o._lifeCycleHooks[r].forEach(s=>{i.push({hookedCommand:o,callback:s})})}),r==="postAction"&&i.reverse(),i.forEach(o=>{n=this._chainOrCall(n,()=>o.callback(o.hookedCommand,this))}),n}_chainOrCallSubCommandHook(e,r,n){let i=e;return this._lifeCycleHooks[n]!==void 0&&this._lifeCycleHooks[n].forEach(o=>{i=this._chainOrCall(i,()=>o(this,r))}),i}_parseCommand(e,r){let n=this.parseOptions(r);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(n.operands),r=n.unknown,this.args=e.concat(r),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),r);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(r),this._dispatchSubcommand(this._defaultCommandName,e,r);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(n.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let i=()=>{n.unknown.length>0&&this.unknownOption(n.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){i(),this._processArguments();let s;return s=this._chainOrCallHooks(s,"preAction"),s=this._chainOrCall(s,()=>this._actionHandler(this.processedArgs)),this.parent&&(s=this._chainOrCall(s,()=>{this.parent.emit(o,e,r)})),s=this._chainOrCallHooks(s,"postAction"),s}if(this.parent?.listenerCount(o))i(),this._processArguments(),this.parent.emit(o,e,r);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,r);this.listenerCount("command:*")?this.emit("command:*",e,r):this.commands.length?this.unknownCommand():(i(),this._processArguments())}else this.commands.length?(i(),this.help({error:!0})):(i(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(r=>r._name===e||r._aliases.includes(e))}_findOption(e){return this.options.find(r=>r.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(r=>{r.mandatory&&e.getOptionValue(r.attributeName())===void 0&&e.missingMandatoryOptionValue(r)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(n=>{let i=n.attributeName();return this.getOptionValue(i)===void 0?!1:this.getOptionValueSource(i)!=="default"});e.filter(n=>n.conflictsWith.length>0).forEach(n=>{let i=e.find(o=>n.conflictsWith.includes(o.attributeName()));i&&this._conflictingOption(n,i)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let r=[],n=[],i=r;function o(c){return c.length>1&&c[0]==="-"}let s=c=>/^-(\d+|\d*\.\d+)(e[+-]?\d+)?$/.test(c)?!this._getCommandAndAncestors().some(u=>u.options.map(m=>m.short).some(m=>/^-\d$/.test(m))):!1,a=null,l=null,d=0;for(;d<e.length||l;){let c=l??e[d++];if(l=null,c==="--"){i===n&&i.push(c),i.push(...e.slice(d));break}if(a&&(!o(c)||s(c))){this.emit(`option:${a.name()}`,c);continue}if(a=null,o(c)){let u=this._findOption(c);if(u){if(u.required){let m=e[d++];m===void 0&&this.optionMissingArgument(u),this.emit(`option:${u.name()}`,m)}else if(u.optional){let m=null;d<e.length&&(!o(e[d])||s(e[d]))&&(m=e[d++]),this.emit(`option:${u.name()}`,m)}else this.emit(`option:${u.name()}`);a=u.variadic?u:null;continue}}if(c.length>2&&c[0]==="-"&&c[1]!=="-"){let u=this._findOption(`-${c[1]}`);if(u){u.required||u.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${u.name()}`,c.slice(2)):(this.emit(`option:${u.name()}`),l=`-${c.slice(2)}`);continue}}if(/^--[^=]+=/.test(c)){let u=c.indexOf("="),m=this._findOption(c.slice(0,u));if(m&&(m.required||m.optional)){this.emit(`option:${m.name()}`,c.slice(u+1));continue}}if(i===r&&o(c)&&!(this.commands.length===0&&s(c))&&(i=n),(this._enablePositionalOptions||this._passThroughOptions)&&r.length===0&&n.length===0){if(this._findCommand(c)){r.push(c),n.push(...e.slice(d));break}else if(this._getHelpCommand()&&c===this._getHelpCommand().name()){r.push(c,...e.slice(d));break}else if(this._defaultCommandName){n.push(c,...e.slice(d));break}}if(this._passThroughOptions){i.push(c,...e.slice(d));break}i.push(c)}return{operands:r,unknown:n}}opts(){if(this._storeOptionsAsProperties){let e={},r=this.options.length;for(let n=0;n<r;n++){let i=this.options[n].attributeName();e[i]=i===this._versionOptionName?this._version:this[i]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,r)=>Object.assign(e,r.opts()),{})}error(e,r){this._outputConfiguration.outputError(`${e}
22
22
  `,this._outputConfiguration.writeErr),typeof this._showHelpAfterError=="string"?this._outputConfiguration.writeErr(`${this._showHelpAfterError}
23
23
  `):this._showHelpAfterError&&(this._outputConfiguration.writeErr(`
24
- `),this.outputHelp({error:!0}));let i=r||{},n=i.exitCode||1,o=i.code||"commander.error";this._exit(n,o,t)}_parseOptionsEnv(){this.options.forEach(t=>{if(t.envVar&&t.envVar in V.env){let r=t.attributeName();(this.getOptionValue(r)===void 0||["default","config","env"].includes(this.getOptionValueSource(r)))&&(t.required||t.optional?this.emit(`optionEnv:${t.name()}`,V.env[t.envVar]):this.emit(`optionEnv:${t.name()}`))}})}_parseOptionsImplied(){let t=new L0(this.options),r=i=>this.getOptionValue(i)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(i));this.options.filter(i=>i.implied!==void 0&&r(i.attributeName())&&t.valueFromOption(this.getOptionValue(i.attributeName()),i)).forEach(i=>{Object.keys(i.implied).filter(n=>!r(n)).forEach(n=>{this.setOptionValueWithSource(n,i.implied[n],"implied")})})}missingArgument(t){let r=`error: missing required argument '${t}'`;this.error(r,{code:"commander.missingArgument"})}optionMissingArgument(t){let r=`error: option '${t.flags}' argument missing`;this.error(r,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(t){let r=`error: required option '${t.flags}' not specified`;this.error(r,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(t,r){let i=s=>{let a=s.attributeName(),u=this.getOptionValue(a),d=this.options.find(c=>c.negate&&a===c.attributeName()),l=this.options.find(c=>!c.negate&&a===c.attributeName());return d&&(d.presetArg===void 0&&u===!1||d.presetArg!==void 0&&u===d.presetArg)?d:l||s},n=s=>{let a=i(s),u=a.attributeName();return this.getOptionValueSource(u)==="env"?`environment variable '${a.envVar}'`:`option '${a.flags}'`},o=`error: ${n(t)} cannot be used with ${n(r)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(t){if(this._allowUnknownOption)return;let r="";if(t.startsWith("--")&&this._showSuggestionAfterError){let n=[],o=this;do{let s=o.createHelp().visibleOptions(o).filter(a=>a.long).map(a=>a.long);n=n.concat(s),o=o.parent}while(o&&!o._enablePositionalOptions);r=Tc(t,n)}let i=`error: unknown option '${t}'${r}`;this.error(i,{code:"commander.unknownOption"})}_excessArguments(t){if(this._allowExcessArguments)return;let r=this.registeredArguments.length,i=r===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${r} argument${i} but got ${t.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let t=this.args[0],r="";if(this._showSuggestionAfterError){let n=[];this.createHelp().visibleCommands(this).forEach(o=>{n.push(o.name()),o.alias()&&n.push(o.alias())}),r=Tc(t,n)}let i=`error: unknown command '${t}'${r}`;this.error(i,{code:"commander.unknownCommand"})}version(t,r,i){if(t===void 0)return this._version;this._version=t,r=r||"-V, --version",i=i||"output the version number";let n=this.createOption(r,i);return this._versionOptionName=n.attributeName(),this._registerOption(n),this.on("option:"+n.name(),()=>{this._outputConfiguration.writeOut(`${t}
25
- `),this._exit(0,"commander.version",t)}),this}description(t,r){return t===void 0&&r===void 0?this._description:(this._description=t,r&&(this._argsDescription=r),this)}summary(t){return t===void 0?this._summary:(this._summary=t,this)}alias(t){if(t===void 0)return this._aliases[0];let r=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(r=this.commands[this.commands.length-1]),t===r._name)throw new Error("Command alias can't be the same as its name");let i=this.parent?._findCommand(t);if(i){let n=[i.name()].concat(i.aliases()).join("|");throw new Error(`cannot add alias '${t}' to command '${this.name()}' as already have command '${n}'`)}return r._aliases.push(t),this}aliases(t){return t===void 0?this._aliases:(t.forEach(r=>this.alias(r)),this)}usage(t){if(t===void 0){if(this._usage)return this._usage;let r=this.registeredArguments.map(i=>F0(i));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?r:[]).join(" ")}return this._usage=t,this}name(t){return t===void 0?this._name:(this._name=t,this)}helpGroup(t){return t===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=t,this)}commandsGroup(t){return t===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=t,this)}optionsGroup(t){return t===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=t,this)}_initOptionGroup(t){this._defaultOptionGroup&&!t.helpGroupHeading&&t.helpGroup(this._defaultOptionGroup)}_initCommandGroup(t){this._defaultCommandGroup&&!t.helpGroup()&&t.helpGroup(this._defaultCommandGroup)}nameFromFilename(t){return this._name=ht.basename(t,ht.extname(t)),this}executableDir(t){return t===void 0?this._executableDir:(this._executableDir=t,this)}helpInformation(t){let r=this.createHelp(),i=this._getOutputContext(t);r.prepareContext({error:i.error,helpWidth:i.helpWidth,outputHasColors:i.hasColors});let n=r.formatHelp(this,r);return i.hasColors?n:this._outputConfiguration.stripColor(n)}_getOutputContext(t){t=t||{};let r=!!t.error,i,n,o;return r?(i=a=>this._outputConfiguration.writeErr(a),n=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth()):(i=a=>this._outputConfiguration.writeOut(a),n=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth()),{error:r,write:a=>(n||(a=this._outputConfiguration.stripColor(a)),i(a)),hasColors:n,helpWidth:o}}outputHelp(t){let r;typeof t=="function"&&(r=t,t=void 0);let i=this._getOutputContext(t),n={error:i.error,write:i.write,command:this};this._getCommandAndAncestors().reverse().forEach(s=>s.emit("beforeAllHelp",n)),this.emit("beforeHelp",n);let o=this.helpInformation({error:i.error});if(r&&(o=r(o),typeof o!="string"&&!Buffer.isBuffer(o)))throw new Error("outputHelp callback must return a string or a Buffer");i.write(o),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",n),this._getCommandAndAncestors().forEach(s=>s.emit("afterAllHelp",n))}helpOption(t,r){return typeof t=="boolean"?(t?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(t??"-h, --help",r??"display help for command"),(t||r)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(t){return this._helpOption=t,this._initOptionGroup(t),this}help(t){this.outputHelp(t);let r=Number(V.exitCode??0);r===0&&t&&typeof t!="function"&&t.error&&(r=1),this._exit(r,"commander.help","(outputHelp)")}addHelpText(t,r){let i=["beforeAll","before","after","afterAll"];if(!i.includes(t))throw new Error(`Unexpected value for position to addHelpText.
26
- Expecting one of '${i.join("', '")}'`);let n=`${t}Help`;return this.on(n,o=>{let s;typeof r=="function"?s=r({error:o.error,command:o.command}):s=r,s&&o.write(`${s}
27
- `)}),this}_outputHelpIfRequested(t){let r=this._getHelpOption();r&&t.find(n=>r.is(n))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function Ic(e){return e.map(t=>{if(!t.startsWith("--inspect"))return t;let r,i="127.0.0.1",n="9229",o;return(o=t.match(/^(--inspect(-brk)?)$/))!==null?r=o[1]:(o=t.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=o[1],/^\d+$/.test(o[3])?n=o[3]:i=o[3]):(o=t.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=o[1],i=o[3],n=o[4]),r&&n!=="0"?`${r}=${i}:${parseInt(n)+1}`:t})}function mu(){if(V.env.NO_COLOR||V.env.FORCE_COLOR==="0"||V.env.FORCE_COLOR==="false")return!1;if(V.env.FORCE_COLOR||V.env.CLICOLOR_FORCE!==void 0)return!0}pu.Command=du;pu.useColor=mu});var Rc=f(Ve=>{var{Argument:jc}=ai(),{Command:fu}=$c(),{CommanderError:N0,InvalidArgumentError:Dc}=zr(),{Help:G0}=nu(),{Option:qc}=uu();Ve.program=new fu;Ve.createCommand=e=>new fu(e);Ve.createOption=(e,t)=>new qc(e,t);Ve.createArgument=(e,t)=>new jc(e,t);Ve.Command=fu;Ve.Option=qc;Ve.Argument=jc;Ve.Help=G0;Ve.CommanderError=N0;Ve.InvalidArgumentError=Dc;Ve.InvalidOptionArgumentError=Dc});var zc=f((Le,Mc)=>{var ot=Rc();Le=Mc.exports={};Le.program=new ot.Command;Le.Argument=ot.Argument;Le.Command=ot.Command;Le.CommanderError=ot.CommanderError;Le.Help=ot.Help;Le.InvalidArgumentError=ot.InvalidArgumentError;Le.InvalidOptionArgumentError=ot.InvalidArgumentError;Le.Option=ot.Option;Le.createCommand=e=>new ot.Command(e);Le.createOption=(e,t)=>new ot.Option(e,t);Le.createArgument=(e,t)=>new ot.Argument(e,t)});var yt=f((Nx,hu)=>{var ci=process||{},Hc=ci.argv||[],li=ci.env||{},U0=!(li.NO_COLOR||Hc.includes("--no-color"))&&(!!li.FORCE_COLOR||Hc.includes("--color")||ci.platform==="win32"||(ci.stdout||{}).isTTY&&li.TERM!=="dumb"||!!li.CI),W0=(e,t,r=e)=>i=>{let n=""+i,o=n.indexOf(t,e.length);return~o?e+V0(n,t,r,o)+t:e+n+t},V0=(e,t,r,i)=>{let n="",o=0;do n+=e.substring(o,i)+r,o=i+t.length,i=e.indexOf(t,o);while(~i);return n+e.substring(o)},Bc=(e=U0)=>{let t=e?W0:()=>String;return{isColorSupported:e,reset:t("\x1B[0m","\x1B[0m"),bold:t("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:t("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:t("\x1B[3m","\x1B[23m"),underline:t("\x1B[4m","\x1B[24m"),inverse:t("\x1B[7m","\x1B[27m"),hidden:t("\x1B[8m","\x1B[28m"),strikethrough:t("\x1B[9m","\x1B[29m"),black:t("\x1B[30m","\x1B[39m"),red:t("\x1B[31m","\x1B[39m"),green:t("\x1B[32m","\x1B[39m"),yellow:t("\x1B[33m","\x1B[39m"),blue:t("\x1B[34m","\x1B[39m"),magenta:t("\x1B[35m","\x1B[39m"),cyan:t("\x1B[36m","\x1B[39m"),white:t("\x1B[37m","\x1B[39m"),gray:t("\x1B[90m","\x1B[39m"),bgBlack:t("\x1B[40m","\x1B[49m"),bgRed:t("\x1B[41m","\x1B[49m"),bgGreen:t("\x1B[42m","\x1B[49m"),bgYellow:t("\x1B[43m","\x1B[49m"),bgBlue:t("\x1B[44m","\x1B[49m"),bgMagenta:t("\x1B[45m","\x1B[49m"),bgCyan:t("\x1B[46m","\x1B[49m"),bgWhite:t("\x1B[47m","\x1B[49m"),blackBright:t("\x1B[90m","\x1B[39m"),redBright:t("\x1B[91m","\x1B[39m"),greenBright:t("\x1B[92m","\x1B[39m"),yellowBright:t("\x1B[93m","\x1B[39m"),blueBright:t("\x1B[94m","\x1B[39m"),magentaBright:t("\x1B[95m","\x1B[39m"),cyanBright:t("\x1B[96m","\x1B[39m"),whiteBright:t("\x1B[97m","\x1B[39m"),bgBlackBright:t("\x1B[100m","\x1B[49m"),bgRedBright:t("\x1B[101m","\x1B[49m"),bgGreenBright:t("\x1B[102m","\x1B[49m"),bgYellowBright:t("\x1B[103m","\x1B[49m"),bgBlueBright:t("\x1B[104m","\x1B[49m"),bgMagentaBright:t("\x1B[105m","\x1B[49m"),bgCyanBright:t("\x1B[106m","\x1B[49m"),bgWhiteBright:t("\x1B[107m","\x1B[49m")}};hu.exports=Bc();hu.exports.createColors=Bc});var yu=f((Xx,id)=>{"use strict";var vu={to(e,t){return t?`\x1B[${t+1};${e+1}H`:`\x1B[${e+1}G`},move(e,t){let r="";return e<0?r+=`\x1B[${-e}D`:e>0&&(r+=`\x1B[${e}C`),t<0?r+=`\x1B[${-t}A`:t>0&&(r+=`\x1B[${t}B`),r},up:(e=1)=>`\x1B[${e}A`,down:(e=1)=>`\x1B[${e}B`,forward:(e=1)=>`\x1B[${e}C`,backward:(e=1)=>`\x1B[${e}D`,nextLine:(e=1)=>"\x1B[E".repeat(e),prevLine:(e=1)=>"\x1B[F".repeat(e),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},d2={up:(e=1)=>"\x1B[S".repeat(e),down:(e=1)=>"\x1B[T".repeat(e)},m2={screen:"\x1B[2J",up:(e=1)=>"\x1B[1J".repeat(e),down:(e=1)=>"\x1B[J".repeat(e),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(e){let t="";for(let r=0;r<e;r++)t+=this.line+(r<e-1?vu.up():"");return e&&(t+=vu.left),t}};id.exports={cursor:vu,scroll:d2,erase:m2,beep:"\x07"}});var ku,_d=De(()=>{ku={name:"resend-cli",version:"2.3.0",description:"The official CLI for Resend",license:"MIT",repository:{type:"git",url:"https://github.com/resend/resend-cli"},homepage:"https://github.com/resend/resend-cli#readme",keywords:["cli","resend","email","api","tanstack-intent"],engines:{node:">=22"},packageManager:"pnpm@11.2.2",files:["dist/cli.cjs","skills/"],type:"module",bin:{resend:"./dist/cli.cjs"},scripts:{dev:"tsx src/cli.ts","dev:watch":"tsx --watch src/cli.ts",build:"node scripts/build.mjs","build:bin":"pnpm build && pkg dist/cli.cjs --config package.json --compress Brotli --target node24 --output dist/resend",lint:"biome check .","lint:fix":"biome check --write .",typecheck:"tsc --noEmit",test:"vitest run","test:e2e":"vitest run --config vitest.config.e2e.ts",prepack:"pnpm install && pnpm build && node scripts/verify-bundle.mjs"},dependencies:{"@clack/prompts":"1.4.0","@commander-js/extra-typings":"14.0.0",commander:"14.0.3",esbuild:"0.28.0","esbuild-wasm":"0.28.0",picocolors:"1.1.1",resend:"6.12.3"},pkg:{scripts:["node_modules/esbuild-wasm/bin/esbuild","node_modules/esbuild-wasm/wasm_exec.js","node_modules/esbuild-wasm/wasm_exec_node.js"],assets:["node_modules/esbuild-wasm/esbuild.wasm"]},devDependencies:{"@biomejs/biome":"2.4.11","@types/node":"24.12.4","@yao-pkg/pkg":"6.19.0",tsx:"4.22.3",typescript:"5.9.3",vitest:"4.1.7"}}});var se,vd,Mt=De(()=>{"use strict";_d();se=ku.version,vd=ku.name});var wi=f(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.ApplicationInSerializer=void 0;Si.ApplicationInSerializer={_fromJsonObject(e){return{metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid}},_toJsonObject(e){return{metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid}}}});var qu=f(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.ApplicationOutSerializer=void 0;xi.ApplicationOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),id:e.id,metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{createdAt:e.createdAt,id:e.id,metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,updatedAt:e.updatedAt}}}});var Pd=f(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.ApplicationPatchSerializer=void 0;ki.ApplicationPatchSerializer={_fromJsonObject(e){return{metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,uid:e.uid}},_toJsonObject(e){return{metadata:e.metadata,name:e.name,rateLimit:e.rateLimit,uid:e.uid}}}});var Id=f(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.ListResponseApplicationOutSerializer=void 0;var Td=qu();Ai.ListResponseApplicationOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Td.ApplicationOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Td.ApplicationOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Mu=f(Ei=>{"use strict";Object.defineProperty(Ei,"__esModule",{value:!0});Ei.ApiException=void 0;var Ru=class extends Error{constructor(t,r,i){super(`HTTP-Code: ${t}
28
- Headers: ${JSON.stringify(i)}`),this.code=t,this.body=r,this.headers={},i.forEach((n,o)=>{this.headers[o]=n})}};Ei.ApiException=Ru});var ie=f(Ye=>{"use strict";var Vr=Ye&&Ye.__awaiter||function(e,t,r,i){function n(o){return o instanceof r?o:new r(function(s){s(o)})}return new(r||(r=Promise))(function(o,s){function a(l){try{d(i.next(l))}catch(c){s(c)}}function u(l){try{d(i.throw(l))}catch(c){s(c)}}function d(l){l.done?o(l.value):n(l.value).then(a,u)}d((i=i.apply(e,t||[])).next())})};Object.defineProperty(Ye,"__esModule",{value:!0});Ye.SvixRequest=Ye.HttpMethod=Ye.LIB_VERSION=void 0;var zu=Mu();Ye.LIB_VERSION="1.92.2";var B2=`svix-libs/${Ye.LIB_VERSION}/javascript`,L2;(function(e){e.GET="GET",e.HEAD="HEAD",e.POST="POST",e.PUT="PUT",e.DELETE="DELETE",e.CONNECT="CONNECT",e.OPTIONS="OPTIONS",e.TRACE="TRACE",e.PATCH="PATCH"})(L2=Ye.HttpMethod||(Ye.HttpMethod={}));var Ju=class{constructor(t,r){this.method=t,this.path=r,this.queryParams={},this.headerParams={}}setPathParam(t,r){let i=this.path.replace(`{${t}}`,encodeURIComponent(r));if(this.path===i)throw new Error(`path parameter ${t} not found`);this.path=i}setQueryParams(t){for(let[r,i]of Object.entries(t))this.setQueryParam(r,i)}setQueryParam(t,r){if(r!=null)if(typeof r=="string")this.queryParams[t]=r;else if(typeof r=="boolean"||typeof r=="number")this.queryParams[t]=r.toString();else if(r instanceof Date)this.queryParams[t]=r.toISOString();else if(Array.isArray(r))r.length>0&&(this.queryParams[t]=r.join(","));else{let i=r;throw new Error(`query parameter ${t} has unsupported type`)}}setHeaderParam(t,r){r!==void 0&&(this.headerParams[t]=r)}setBody(t){this.body=JSON.stringify(t)}send(t,r){return Vr(this,void 0,void 0,function*(){let i=yield this.sendInner(t);if(i.status===204)return null;let n=yield i.text();return r(JSON.parse(n))})}sendNoResponseBody(t){return Vr(this,void 0,void 0,function*(){yield this.sendInner(t)})}sendInner(t){var r,i;return Vr(this,void 0,void 0,function*(){let n=new URL(t.baseUrl+this.path);for(let[u,d]of Object.entries(this.queryParams))n.searchParams.set(u,d);this.headerParams["idempotency-key"]===void 0&&this.method.toUpperCase()==="POST"&&(this.headerParams["idempotency-key"]=`auto_${crypto.randomUUID()}`);let o=Math.floor(Math.random()*Number.MAX_SAFE_INTEGER);this.body!=null&&(this.headerParams["content-type"]="application/json");let s="credentials"in Request.prototype,a=yield $d(n,{method:this.method.toString(),body:this.body,headers:Object.assign({accept:"application/json, */*;q=0.8",authorization:`Bearer ${t.token}`,"user-agent":B2,"svix-req-id":o.toString()},this.headerParams),credentials:s?"same-origin":void 0,signal:t.timeout!==void 0?AbortSignal.timeout(t.timeout):void 0},t.retryScheduleInMs,(r=t.retryScheduleInMs)===null||r===void 0?void 0:r[0],((i=t.retryScheduleInMs)===null||i===void 0?void 0:i.length)||t.numRetries,t.fetch);return N2(a)})}};Ye.SvixRequest=Ju;function N2(e){return Vr(this,void 0,void 0,function*(){if(e.status<300)return e;let t=yield e.text();throw e.status===422?new zu.ApiException(e.status,JSON.parse(t),e.headers):e.status>=400&&e.status<=499?new zu.ApiException(e.status,JSON.parse(t),e.headers):new zu.ApiException(e.status,t,e.headers)})}function $d(e,t,r,i=50,n=2,o=fetch,s=1){return Vr(this,void 0,void 0,function*(){let a=u=>new Promise(d=>setTimeout(d,u));try{let u=yield o(e,t);if(n<=0||u.status<500)return u}catch(u){if(n<=0)throw u}return yield a(i),t.headers["svix-retry-count"]=s.toString(),i=r?.[s]||i*2,yield $d(e,t,r,i,--n,o,++s)})}});var jd=f(Pi=>{"use strict";Object.defineProperty(Pi,"__esModule",{value:!0});Pi.Application=void 0;var Fu=wi(),Kr=qu(),G2=Pd(),U2=Id(),Re=ie(),Hu=class{constructor(t){this.requestCtx=t}list(t){let r=new Re.SvixRequest(Re.HttpMethod.GET,"/api/v1/app");return r.setQueryParams({exclude_apps_with_no_endpoints:t?.excludeAppsWithNoEndpoints,exclude_apps_with_disabled_endpoints:t?.excludeAppsWithDisabledEndpoints,exclude_apps_with_svix_play_endpoints:t?.excludeAppsWithSvixPlayEndpoints,limit:t?.limit,iterator:t?.iterator,order:t?.order}),r.send(this.requestCtx,U2.ListResponseApplicationOutSerializer._fromJsonObject)}create(t,r){let i=new Re.SvixRequest(Re.HttpMethod.POST,"/api/v1/app");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(Fu.ApplicationInSerializer._toJsonObject(t)),i.send(this.requestCtx,Kr.ApplicationOutSerializer._fromJsonObject)}getOrCreate(t,r){let i=new Re.SvixRequest(Re.HttpMethod.POST,"/api/v1/app");return i.setQueryParam("get_if_exists",!0),i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(Fu.ApplicationInSerializer._toJsonObject(t)),i.send(this.requestCtx,Kr.ApplicationOutSerializer._fromJsonObject)}get(t){let r=new Re.SvixRequest(Re.HttpMethod.GET,"/api/v1/app/{app_id}");return r.setPathParam("app_id",t),r.send(this.requestCtx,Kr.ApplicationOutSerializer._fromJsonObject)}update(t,r){let i=new Re.SvixRequest(Re.HttpMethod.PUT,"/api/v1/app/{app_id}");return i.setPathParam("app_id",t),i.setBody(Fu.ApplicationInSerializer._toJsonObject(r)),i.send(this.requestCtx,Kr.ApplicationOutSerializer._fromJsonObject)}delete(t){let r=new Re.SvixRequest(Re.HttpMethod.DELETE,"/api/v1/app/{app_id}");return r.setPathParam("app_id",t),r.sendNoResponseBody(this.requestCtx)}patch(t,r){let i=new Re.SvixRequest(Re.HttpMethod.PATCH,"/api/v1/app/{app_id}");return i.setPathParam("app_id",t),i.setBody(G2.ApplicationPatchSerializer._toJsonObject(r)),i.send(this.requestCtx,Kr.ApplicationOutSerializer._fromJsonObject)}};Pi.Application=Hu});var Dd=f(Ti=>{"use strict";Object.defineProperty(Ti,"__esModule",{value:!0});Ti.ApiTokenOutSerializer=void 0;Ti.ApiTokenOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),expiresAt:e.expiresAt?new Date(e.expiresAt):null,id:e.id,name:e.name,scopes:e.scopes,token:e.token}},_toJsonObject(e){return{createdAt:e.createdAt,expiresAt:e.expiresAt,id:e.id,name:e.name,scopes:e.scopes,token:e.token}}}});var Bu=f(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.AppPortalCapabilitySerializer=Ft.AppPortalCapability=void 0;var W2;(function(e){e.ViewBase="ViewBase",e.ViewEndpointSecret="ViewEndpointSecret",e.ManageEndpointSecret="ManageEndpointSecret",e.ManageTransformations="ManageTransformations",e.CreateAttempts="CreateAttempts",e.ManageEndpoint="ManageEndpoint"})(W2=Ft.AppPortalCapability||(Ft.AppPortalCapability={}));Ft.AppPortalCapabilitySerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Md=f(Ii=>{"use strict";Object.defineProperty(Ii,"__esModule",{value:!0});Ii.AppPortalAccessInSerializer=void 0;var qd=Bu(),Rd=wi();Ii.AppPortalAccessInSerializer={_fromJsonObject(e){var t;return{application:e.application!=null?Rd.ApplicationInSerializer._fromJsonObject(e.application):void 0,capabilities:(t=e.capabilities)===null||t===void 0?void 0:t.map(r=>qd.AppPortalCapabilitySerializer._fromJsonObject(r)),expiry:e.expiry,featureFlags:e.featureFlags,readOnly:e.readOnly,sessionId:e.sessionId}},_toJsonObject(e){var t;return{application:e.application!=null?Rd.ApplicationInSerializer._toJsonObject(e.application):void 0,capabilities:(t=e.capabilities)===null||t===void 0?void 0:t.map(r=>qd.AppPortalCapabilitySerializer._toJsonObject(r)),expiry:e.expiry,featureFlags:e.featureFlags,readOnly:e.readOnly,sessionId:e.sessionId}}}});var zd=f($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.AppPortalAccessOutSerializer=void 0;$i.AppPortalAccessOutSerializer={_fromJsonObject(e){return{token:e.token,url:e.url}},_toJsonObject(e){return{token:e.token,url:e.url}}}});var Jd=f(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.ApplicationTokenExpireInSerializer=void 0;ji.ApplicationTokenExpireInSerializer={_fromJsonObject(e){return{expiry:e.expiry,sessionIds:e.sessionIds}},_toJsonObject(e){return{expiry:e.expiry,sessionIds:e.sessionIds}}}});var Fd=f(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.RotatePollerTokenInSerializer=void 0;Di.RotatePollerTokenInSerializer={_fromJsonObject(e){return{expiry:e.expiry,oldTokenExpiry:e.oldTokenExpiry}},_toJsonObject(e){return{expiry:e.expiry,oldTokenExpiry:e.oldTokenExpiry}}}});var Hd=f(qi=>{"use strict";Object.defineProperty(qi,"__esModule",{value:!0});qi.StreamPortalAccessInSerializer=void 0;qi.StreamPortalAccessInSerializer={_fromJsonObject(e){return{expiry:e.expiry,featureFlags:e.featureFlags,sessionId:e.sessionId}},_toJsonObject(e){return{expiry:e.expiry,featureFlags:e.featureFlags,sessionId:e.sessionId}}}});var Bd=f(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.StreamTokenExpireInSerializer=void 0;Ri.StreamTokenExpireInSerializer={_fromJsonObject(e){return{expiry:e.expiry,sessionIds:e.sessionIds}},_toJsonObject(e){return{expiry:e.expiry,sessionIds:e.sessionIds}}}});var Lu=f(Mi=>{"use strict";Object.defineProperty(Mi,"__esModule",{value:!0});Mi.DashboardAccessOutSerializer=void 0;Mi.DashboardAccessOutSerializer={_fromJsonObject(e){return{token:e.token,url:e.url}},_toJsonObject(e){return{token:e.token,url:e.url}}}});var Gd=f(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.Authentication=void 0;var Ld=Dd(),V2=Md(),Nd=zd(),K2=Jd(),Y2=Fd(),Q2=Hd(),Z2=Bd(),X2=Lu(),be=ie(),Nu=class{constructor(t){this.requestCtx=t}appPortalAccess(t,r,i){let n=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/app-portal-access/{app_id}");return n.setPathParam("app_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(V2.AppPortalAccessInSerializer._toJsonObject(r)),n.send(this.requestCtx,Nd.AppPortalAccessOutSerializer._fromJsonObject)}expireAll(t,r,i){let n=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/app/{app_id}/expire-all");return n.setPathParam("app_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(K2.ApplicationTokenExpireInSerializer._toJsonObject(r)),n.sendNoResponseBody(this.requestCtx)}dashboardAccess(t,r){let i=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/dashboard-access/{app_id}");return i.setPathParam("app_id",t),i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.send(this.requestCtx,X2.DashboardAccessOutSerializer._fromJsonObject)}logout(t){let r=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/logout");return r.setHeaderParam("idempotency-key",t?.idempotencyKey),r.sendNoResponseBody(this.requestCtx)}streamLogout(t){let r=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/stream-logout");return r.setHeaderParam("idempotency-key",t?.idempotencyKey),r.sendNoResponseBody(this.requestCtx)}streamPortalAccess(t,r,i){let n=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/stream-portal-access/{stream_id}");return n.setPathParam("stream_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(Q2.StreamPortalAccessInSerializer._toJsonObject(r)),n.send(this.requestCtx,Nd.AppPortalAccessOutSerializer._fromJsonObject)}streamExpireAll(t,r,i){let n=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/stream/{stream_id}/expire-all");return n.setPathParam("stream_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(Z2.StreamTokenExpireInSerializer._toJsonObject(r)),n.sendNoResponseBody(this.requestCtx)}getStreamPollerToken(t,r){let i=new be.SvixRequest(be.HttpMethod.GET,"/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.send(this.requestCtx,Ld.ApiTokenOutSerializer._fromJsonObject)}rotateStreamPollerToken(t,r,i,n){let o=new be.SvixRequest(be.HttpMethod.POST,"/api/v1/auth/stream/{stream_id}/sink/{sink_id}/poller/token/rotate");return o.setPathParam("stream_id",t),o.setPathParam("sink_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(Y2.RotatePollerTokenInSerializer._toJsonObject(i)),o.send(this.requestCtx,Ld.ApiTokenOutSerializer._fromJsonObject)}};zi.Authentication=Nu});var xt=f(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.BackgroundTaskStatusSerializer=Ht.BackgroundTaskStatus=void 0;var eC;(function(e){e.Running="running",e.Finished="finished",e.Failed="failed"})(eC=Ht.BackgroundTaskStatus||(Ht.BackgroundTaskStatus={}));Ht.BackgroundTaskStatusSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var kt=f(Bt=>{"use strict";Object.defineProperty(Bt,"__esModule",{value:!0});Bt.BackgroundTaskTypeSerializer=Bt.BackgroundTaskType=void 0;var tC;(function(e){e.EndpointReplay="endpoint.replay",e.EndpointRecover="endpoint.recover",e.ApplicationStats="application.stats",e.MessageBroadcast="message.broadcast",e.SdkGenerate="sdk.generate",e.EventTypeAggregate="event-type.aggregate",e.ApplicationPurgeContent="application.purge_content",e.EndpointBulkReplay="endpoint.bulk-replay"})(tC=Bt.BackgroundTaskType||(Bt.BackgroundTaskType={}));Bt.BackgroundTaskTypeSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Gu=f(Ji=>{"use strict";Object.defineProperty(Ji,"__esModule",{value:!0});Ji.BackgroundTaskOutSerializer=void 0;var Ud=xt(),Wd=kt();Ji.BackgroundTaskOutSerializer={_fromJsonObject(e){return{data:e.data,id:e.id,status:Ud.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:Wd.BackgroundTaskTypeSerializer._fromJsonObject(e.task),updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{data:e.data,id:e.id,status:Ud.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:Wd.BackgroundTaskTypeSerializer._toJsonObject(e.task),updatedAt:e.updatedAt}}}});var Kd=f(Fi=>{"use strict";Object.defineProperty(Fi,"__esModule",{value:!0});Fi.ListResponseBackgroundTaskOutSerializer=void 0;var Vd=Gu();Fi.ListResponseBackgroundTaskOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Vd.BackgroundTaskOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Vd.BackgroundTaskOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Yd=f(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.BackgroundTask=void 0;var rC=Gu(),iC=Kd(),Hi=ie(),Uu=class{constructor(t){this.requestCtx=t}list(t){let r=new Hi.SvixRequest(Hi.HttpMethod.GET,"/api/v1/background-task");return r.setQueryParams({status:t?.status,task:t?.task,limit:t?.limit,iterator:t?.iterator,order:t?.order}),r.send(this.requestCtx,iC.ListResponseBackgroundTaskOutSerializer._fromJsonObject)}listByEndpoint(t){return this.list(t)}get(t){let r=new Hi.SvixRequest(Hi.HttpMethod.GET,"/api/v1/background-task/{task_id}");return r.setPathParam("task_id",t),r.send(this.requestCtx,rC.BackgroundTaskOutSerializer._fromJsonObject)}};Bi.BackgroundTask=Uu});var lr=f(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.ConnectorKindSerializer=Lt.ConnectorKind=void 0;var nC;(function(e){e.Custom="Custom",e.AgenticCommerceProtocol="AgenticCommerceProtocol",e.CloseCrm="CloseCRM",e.CustomerIo="CustomerIO",e.Discord="Discord",e.Hubspot="Hubspot",e.Inngest="Inngest",e.Loops="Loops",e.Otel="Otel",e.Resend="Resend",e.Salesforce="Salesforce",e.Segment="Segment",e.Sendgrid="Sendgrid",e.Slack="Slack",e.Teams="Teams",e.TriggerDev="TriggerDev",e.Windmill="Windmill",e.Zapier="Zapier"})(nC=Lt.ConnectorKind||(Lt.ConnectorKind={}));Lt.ConnectorKindSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Li=f(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.ConnectorProductSerializer=Nt.ConnectorProduct=void 0;var oC;(function(e){e.Dispatch="Dispatch",e.Stream="Stream"})(oC=Nt.ConnectorProduct||(Nt.ConnectorProduct={}));Nt.ConnectorProductSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Wu=f(Ni=>{"use strict";Object.defineProperty(Ni,"__esModule",{value:!0});Ni.ConnectorInSerializer=void 0;var Qd=lr(),Zd=Li();Ni.ConnectorInSerializer={_fromJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?Qd.ConnectorKindSerializer._fromJsonObject(e.kind):void 0,logo:e.logo,name:e.name,productType:e.productType!=null?Zd.ConnectorProductSerializer._fromJsonObject(e.productType):void 0,transformation:e.transformation,uid:e.uid}},_toJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?Qd.ConnectorKindSerializer._toJsonObject(e.kind):void 0,logo:e.logo,name:e.name,productType:e.productType!=null?Zd.ConnectorProductSerializer._toJsonObject(e.productType):void 0,transformation:e.transformation,uid:e.uid}}}});var Ui=f(Gi=>{"use strict";Object.defineProperty(Gi,"__esModule",{value:!0});Gi.ConnectorOutSerializer=void 0;var Xd=lr(),em=Li();Gi.ConnectorOutSerializer={_fromJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,createdAt:new Date(e.createdAt),description:e.description,featureFlags:e.featureFlags,id:e.id,instructions:e.instructions,kind:Xd.ConnectorKindSerializer._fromJsonObject(e.kind),logo:e.logo,name:e.name,orgId:e.orgId,productType:em.ConnectorProductSerializer._fromJsonObject(e.productType),transformation:e.transformation,transformationUpdatedAt:new Date(e.transformationUpdatedAt),uid:e.uid,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,createdAt:e.createdAt,description:e.description,featureFlags:e.featureFlags,id:e.id,instructions:e.instructions,kind:Xd.ConnectorKindSerializer._toJsonObject(e.kind),logo:e.logo,name:e.name,orgId:e.orgId,productType:em.ConnectorProductSerializer._toJsonObject(e.productType),transformation:e.transformation,transformationUpdatedAt:e.transformationUpdatedAt,uid:e.uid,updatedAt:e.updatedAt}}}});var rm=f(Wi=>{"use strict";Object.defineProperty(Wi,"__esModule",{value:!0});Wi.ConnectorPatchSerializer=void 0;var tm=lr();Wi.ConnectorPatchSerializer={_fromJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?tm.ConnectorKindSerializer._fromJsonObject(e.kind):void 0,logo:e.logo,name:e.name,transformation:e.transformation}},_toJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?tm.ConnectorKindSerializer._toJsonObject(e.kind):void 0,logo:e.logo,name:e.name,transformation:e.transformation}}}});var nm=f(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.ConnectorUpdateSerializer=void 0;var im=lr();Vi.ConnectorUpdateSerializer={_fromJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?im.ConnectorKindSerializer._fromJsonObject(e.kind):void 0,logo:e.logo,name:e.name,transformation:e.transformation}},_toJsonObject(e){return{allowedEventTypes:e.allowedEventTypes,description:e.description,featureFlags:e.featureFlags,instructions:e.instructions,kind:e.kind!=null?im.ConnectorKindSerializer._toJsonObject(e.kind):void 0,logo:e.logo,name:e.name,transformation:e.transformation}}}});var sm=f(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.ListResponseConnectorOutSerializer=void 0;var om=Ui();Ki.ListResponseConnectorOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>om.ConnectorOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>om.ConnectorOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var am=f(Qi=>{"use strict";Object.defineProperty(Qi,"__esModule",{value:!0});Qi.Connector=void 0;var sC=Wu(),Yi=Ui(),aC=rm(),uC=nm(),lC=sm(),Qe=ie(),Vu=class{constructor(t){this.requestCtx=t}list(t){let r=new Qe.SvixRequest(Qe.HttpMethod.GET,"/api/v1/connector");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order,product_type:t?.productType}),r.send(this.requestCtx,lC.ListResponseConnectorOutSerializer._fromJsonObject)}create(t,r){let i=new Qe.SvixRequest(Qe.HttpMethod.POST,"/api/v1/connector");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(sC.ConnectorInSerializer._toJsonObject(t)),i.send(this.requestCtx,Yi.ConnectorOutSerializer._fromJsonObject)}get(t){let r=new Qe.SvixRequest(Qe.HttpMethod.GET,"/api/v1/connector/{connector_id}");return r.setPathParam("connector_id",t),r.send(this.requestCtx,Yi.ConnectorOutSerializer._fromJsonObject)}update(t,r){let i=new Qe.SvixRequest(Qe.HttpMethod.PUT,"/api/v1/connector/{connector_id}");return i.setPathParam("connector_id",t),i.setBody(uC.ConnectorUpdateSerializer._toJsonObject(r)),i.send(this.requestCtx,Yi.ConnectorOutSerializer._fromJsonObject)}delete(t){let r=new Qe.SvixRequest(Qe.HttpMethod.DELETE,"/api/v1/connector/{connector_id}");return r.setPathParam("connector_id",t),r.sendNoResponseBody(this.requestCtx)}patch(t,r){let i=new Qe.SvixRequest(Qe.HttpMethod.PATCH,"/api/v1/connector/{connector_id}");return i.setPathParam("connector_id",t),i.setBody(aC.ConnectorPatchSerializer._toJsonObject(r)),i.send(this.requestCtx,Yi.ConnectorOutSerializer._fromJsonObject)}};Qi.Connector=Vu});var cr=f(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.MessageStatusSerializer=Gt.MessageStatus=void 0;var cC;(function(e){e[e.Success=0]="Success",e[e.Pending=1]="Pending",e[e.Fail=2]="Fail",e[e.Sending=3]="Sending"})(cC=Gt.MessageStatus||(Gt.MessageStatus={}));Gt.MessageStatusSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Ku=f(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.StatusCodeClassSerializer=Ut.StatusCodeClass=void 0;var dC;(function(e){e[e.CodeNone=0]="CodeNone",e[e.Code1xx=100]="Code1xx",e[e.Code2xx=200]="Code2xx",e[e.Code3xx=300]="Code3xx",e[e.Code4xx=400]="Code4xx",e[e.Code5xx=500]="Code5xx"})(dC=Ut.StatusCodeClass||(Ut.StatusCodeClass={}));Ut.StatusCodeClassSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var cm=f(Zi=>{"use strict";Object.defineProperty(Zi,"__esModule",{value:!0});Zi.BulkReplayInSerializer=void 0;var um=cr(),lm=Ku();Zi.BulkReplayInSerializer={_fromJsonObject(e){return{channel:e.channel,eventTypes:e.eventTypes,since:new Date(e.since),status:e.status!=null?um.MessageStatusSerializer._fromJsonObject(e.status):void 0,statusCodeClass:e.statusCodeClass!=null?lm.StatusCodeClassSerializer._fromJsonObject(e.statusCodeClass):void 0,tag:e.tag,until:e.until?new Date(e.until):null}},_toJsonObject(e){return{channel:e.channel,eventTypes:e.eventTypes,since:e.since,status:e.status!=null?um.MessageStatusSerializer._toJsonObject(e.status):void 0,statusCodeClass:e.statusCodeClass!=null?lm.StatusCodeClassSerializer._toJsonObject(e.statusCodeClass):void 0,tag:e.tag,until:e.until}}}});var dm=f(Xi=>{"use strict";Object.defineProperty(Xi,"__esModule",{value:!0});Xi.EndpointHeadersInSerializer=void 0;Xi.EndpointHeadersInSerializer={_fromJsonObject(e){return{headers:e.headers}},_toJsonObject(e){return{headers:e.headers}}}});var Yu=f(en=>{"use strict";Object.defineProperty(en,"__esModule",{value:!0});en.EndpointHeadersOutSerializer=void 0;en.EndpointHeadersOutSerializer={_fromJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}},_toJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}}}});var mm=f(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.EndpointHeadersPatchInSerializer=void 0;tn.EndpointHeadersPatchInSerializer={_fromJsonObject(e){return{deleteHeaders:e.deleteHeaders,headers:e.headers}},_toJsonObject(e){return{deleteHeaders:e.deleteHeaders,headers:e.headers}}}});var pm=f(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.EndpointInSerializer=void 0;rn.EndpointInSerializer={_fromJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,headers:e.headers,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}},_toJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,headers:e.headers,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}}}});var Qu=f(nn=>{"use strict";Object.defineProperty(nn,"__esModule",{value:!0});nn.EndpointOutSerializer=void 0;nn.EndpointOutSerializer={_fromJsonObject(e){return{channels:e.channels,createdAt:new Date(e.createdAt),description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,updatedAt:new Date(e.updatedAt),url:e.url,version:e.version}},_toJsonObject(e){return{channels:e.channels,createdAt:e.createdAt,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,updatedAt:e.updatedAt,url:e.url,version:e.version}}}});var fm=f(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.EndpointPatchSerializer=void 0;on.EndpointPatchSerializer={_fromJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}},_toJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}}}});var hm=f(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.EndpointSecretOutSerializer=void 0;sn.EndpointSecretOutSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var Zu=f(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.EndpointSecretRotateInSerializer=void 0;an.EndpointSecretRotateInSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var gm=f(un=>{"use strict";Object.defineProperty(un,"__esModule",{value:!0});un.EndpointStatsSerializer=void 0;un.EndpointStatsSerializer={_fromJsonObject(e){return{fail:e.fail,pending:e.pending,sending:e.sending,success:e.success}},_toJsonObject(e){return{fail:e.fail,pending:e.pending,sending:e.sending,success:e.success}}}});var bm=f(ln=>{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.EndpointTransformationInSerializer=void 0;ln.EndpointTransformationInSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled}},_toJsonObject(e){return{code:e.code,enabled:e.enabled}}}});var _m=f(cn=>{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.EndpointTransformationOutSerializer=void 0;cn.EndpointTransformationOutSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled,updatedAt:e.updatedAt?new Date(e.updatedAt):null}},_toJsonObject(e){return{code:e.code,enabled:e.enabled,updatedAt:e.updatedAt}}}});var vm=f(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.EndpointTransformationPatchSerializer=void 0;dn.EndpointTransformationPatchSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled}},_toJsonObject(e){return{code:e.code,enabled:e.enabled}}}});var ym=f(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.EndpointUpdateSerializer=void 0;mn.EndpointUpdateSerializer={_fromJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}},_toJsonObject(e){return{channels:e.channels,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,throttleRate:e.throttleRate,uid:e.uid,url:e.url,version:e.version}}}});var Cm=f(pn=>{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});pn.EventExampleInSerializer=void 0;pn.EventExampleInSerializer={_fromJsonObject(e){return{eventType:e.eventType,exampleIndex:e.exampleIndex}},_toJsonObject(e){return{eventType:e.eventType,exampleIndex:e.exampleIndex}}}});var Sm=f(fn=>{"use strict";Object.defineProperty(fn,"__esModule",{value:!0});fn.ListResponseEndpointOutSerializer=void 0;var Om=Qu();fn.ListResponseEndpointOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Om.EndpointOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Om.EndpointOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Yr=f(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.MessageOutSerializer=void 0;hn.MessageOutSerializer={_fromJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt?new Date(e.deliverAt):null,eventId:e.eventId,eventType:e.eventType,id:e.id,payload:e.payload,tags:e.tags,timestamp:new Date(e.timestamp)}},_toJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt,eventId:e.eventId,eventType:e.eventType,id:e.id,payload:e.payload,tags:e.tags,timestamp:e.timestamp}}}});var wm=f(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.RecoverInSerializer=void 0;gn.RecoverInSerializer={_fromJsonObject(e){return{since:new Date(e.since),until:e.until?new Date(e.until):null}},_toJsonObject(e){return{since:e.since,until:e.until}}}});var Am=f(bn=>{"use strict";Object.defineProperty(bn,"__esModule",{value:!0});bn.RecoverOutSerializer=void 0;var xm=xt(),km=kt();bn.RecoverOutSerializer={_fromJsonObject(e){return{id:e.id,status:xm.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:km.BackgroundTaskTypeSerializer._fromJsonObject(e.task),updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{id:e.id,status:xm.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:km.BackgroundTaskTypeSerializer._toJsonObject(e.task),updatedAt:e.updatedAt}}}});var Em=f(_n=>{"use strict";Object.defineProperty(_n,"__esModule",{value:!0});_n.ReplayInSerializer=void 0;_n.ReplayInSerializer={_fromJsonObject(e){return{since:new Date(e.since),until:e.until?new Date(e.until):null}},_toJsonObject(e){return{since:e.since,until:e.until}}}});var Im=f(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.ReplayOutSerializer=void 0;var Pm=xt(),Tm=kt();vn.ReplayOutSerializer={_fromJsonObject(e){return{id:e.id,status:Pm.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:Tm.BackgroundTaskTypeSerializer._fromJsonObject(e.task),updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{id:e.id,status:Pm.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:Tm.BackgroundTaskTypeSerializer._toJsonObject(e.task),updatedAt:e.updatedAt}}}});var jm=f(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.Endpoint=void 0;var mC=cm(),pC=dm(),fC=Yu(),hC=mm(),gC=pm(),yn=Qu(),bC=fm(),_C=hm(),vC=Zu(),yC=gm(),CC=bm(),OC=_m(),SC=vm(),wC=ym(),xC=Cm(),kC=Sm(),AC=Yr(),EC=wm(),PC=Am(),TC=Em(),$m=Im(),R=ie(),Xu=class{constructor(t){this.requestCtx=t}list(t,r){let i=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint");return i.setPathParam("app_id",t),i.setQueryParams({limit:r?.limit,iterator:r?.iterator,order:r?.order}),i.send(this.requestCtx,kC.ListResponseEndpointOutSerializer._fromJsonObject)}create(t,r,i){let n=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint");return n.setPathParam("app_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(gC.EndpointInSerializer._toJsonObject(r)),n.send(this.requestCtx,yn.EndpointOutSerializer._fromJsonObject)}get(t,r){let i=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}");return i.setPathParam("app_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,yn.EndpointOutSerializer._fromJsonObject)}update(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PUT,"/api/v1/app/{app_id}/endpoint/{endpoint_id}");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(wC.EndpointUpdateSerializer._toJsonObject(i)),n.send(this.requestCtx,yn.EndpointOutSerializer._fromJsonObject)}delete(t,r){let i=new R.SvixRequest(R.HttpMethod.DELETE,"/api/v1/app/{app_id}/endpoint/{endpoint_id}");return i.setPathParam("app_id",t),i.setPathParam("endpoint_id",r),i.sendNoResponseBody(this.requestCtx)}patch(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PATCH,"/api/v1/app/{app_id}/endpoint/{endpoint_id}");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(bC.EndpointPatchSerializer._toJsonObject(i)),n.send(this.requestCtx,yn.EndpointOutSerializer._fromJsonObject)}bulkReplay(t,r,i,n){let o=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/bulk-replay");return o.setPathParam("app_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(mC.BulkReplayInSerializer._toJsonObject(i)),o.send(this.requestCtx,$m.ReplayOutSerializer._fromJsonObject)}getHeaders(t,r){let i=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/headers");return i.setPathParam("app_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,fC.EndpointHeadersOutSerializer._fromJsonObject)}updateHeaders(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PUT,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/headers");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(pC.EndpointHeadersInSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}headersUpdate(t,r,i){return this.updateHeaders(t,r,i)}patchHeaders(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PATCH,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/headers");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(hC.EndpointHeadersPatchInSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}headersPatch(t,r,i){return this.patchHeaders(t,r,i)}recover(t,r,i,n){let o=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/recover");return o.setPathParam("app_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(EC.RecoverInSerializer._toJsonObject(i)),o.send(this.requestCtx,PC.RecoverOutSerializer._fromJsonObject)}replayMissing(t,r,i,n){let o=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/replay-missing");return o.setPathParam("app_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(TC.ReplayInSerializer._toJsonObject(i)),o.send(this.requestCtx,$m.ReplayOutSerializer._fromJsonObject)}getSecret(t,r){let i=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/secret");return i.setPathParam("app_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,_C.EndpointSecretOutSerializer._fromJsonObject)}rotateSecret(t,r,i,n){let o=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/secret/rotate");return o.setPathParam("app_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(vC.EndpointSecretRotateInSerializer._toJsonObject(i)),o.sendNoResponseBody(this.requestCtx)}sendExample(t,r,i,n){let o=new R.SvixRequest(R.HttpMethod.POST,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/send-example");return o.setPathParam("app_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(xC.EventExampleInSerializer._toJsonObject(i)),o.send(this.requestCtx,AC.MessageOutSerializer._fromJsonObject)}getStats(t,r,i){let n=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/stats");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setQueryParams({since:i?.since,until:i?.until}),n.send(this.requestCtx,yC.EndpointStatsSerializer._fromJsonObject)}transformationGet(t,r){let i=new R.SvixRequest(R.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/transformation");return i.setPathParam("app_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,OC.EndpointTransformationOutSerializer._fromJsonObject)}patchTransformation(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PATCH,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/transformation");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(SC.EndpointTransformationPatchSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}transformationPartialUpdate(t,r,i){let n=new R.SvixRequest(R.HttpMethod.PATCH,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/transformation");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setBody(CC.EndpointTransformationInSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}};Cn.Endpoint=Xu});var el=f(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.EventTypeInSerializer=void 0;On.EventTypeInSerializer={_fromJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas}},_toJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas}}}});var Rm=f(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.EnvironmentInSerializer=void 0;var Dm=Wu(),qm=el();Sn.EnvironmentInSerializer={_fromJsonObject(e){var t,r;return{connectors:(t=e.connectors)===null||t===void 0?void 0:t.map(i=>Dm.ConnectorInSerializer._fromJsonObject(i)),eventTypes:(r=e.eventTypes)===null||r===void 0?void 0:r.map(i=>qm.EventTypeInSerializer._fromJsonObject(i)),settings:e.settings}},_toJsonObject(e){var t,r;return{connectors:(t=e.connectors)===null||t===void 0?void 0:t.map(i=>Dm.ConnectorInSerializer._toJsonObject(i)),eventTypes:(r=e.eventTypes)===null||r===void 0?void 0:r.map(i=>qm.EventTypeInSerializer._toJsonObject(i)),settings:e.settings}}}});var xn=f(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.EventTypeOutSerializer=void 0;wn.EventTypeOutSerializer={_fromJsonObject(e){return{archived:e.archived,createdAt:new Date(e.createdAt),deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{archived:e.archived,createdAt:e.createdAt,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas,updatedAt:e.updatedAt}}}});var Jm=f(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.EnvironmentOutSerializer=void 0;var Mm=Ui(),zm=xn();kn.EnvironmentOutSerializer={_fromJsonObject(e){return{connectors:e.connectors.map(t=>Mm.ConnectorOutSerializer._fromJsonObject(t)),createdAt:new Date(e.createdAt),eventTypes:e.eventTypes.map(t=>zm.EventTypeOutSerializer._fromJsonObject(t)),settings:e.settings,version:e.version}},_toJsonObject(e){return{connectors:e.connectors.map(t=>Mm.ConnectorOutSerializer._toJsonObject(t)),createdAt:e.createdAt,eventTypes:e.eventTypes.map(t=>zm.EventTypeOutSerializer._toJsonObject(t)),settings:e.settings,version:e.version}}}});var Fm=f(En=>{"use strict";Object.defineProperty(En,"__esModule",{value:!0});En.Environment=void 0;var IC=Rm(),$C=Jm(),An=ie(),tl=class{constructor(t){this.requestCtx=t}export(t){let r=new An.SvixRequest(An.HttpMethod.POST,"/api/v1/environment/export");return r.setHeaderParam("idempotency-key",t?.idempotencyKey),r.send(this.requestCtx,$C.EnvironmentOutSerializer._fromJsonObject)}import(t,r){let i=new An.SvixRequest(An.HttpMethod.POST,"/api/v1/environment/import");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(IC.EnvironmentInSerializer._toJsonObject(t)),i.sendNoResponseBody(this.requestCtx)}};En.Environment=tl});var Hm=f(Pn=>{"use strict";Object.defineProperty(Pn,"__esModule",{value:!0});Pn.EventTypeImportOpenApiInSerializer=void 0;Pn.EventTypeImportOpenApiInSerializer={_fromJsonObject(e){return{dryRun:e.dryRun,replaceAll:e.replaceAll,spec:e.spec,specRaw:e.specRaw}},_toJsonObject(e){return{dryRun:e.dryRun,replaceAll:e.replaceAll,spec:e.spec,specRaw:e.specRaw}}}});var Bm=f(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.EventTypeFromOpenApiSerializer=void 0;Tn.EventTypeFromOpenApiSerializer={_fromJsonObject(e){return{deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas}},_toJsonObject(e){return{deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,name:e.name,schemas:e.schemas}}}});var Nm=f(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.EventTypeImportOpenApiOutDataSerializer=void 0;var Lm=Bm();In.EventTypeImportOpenApiOutDataSerializer={_fromJsonObject(e){var t;return{modified:e.modified,toModify:(t=e.to_modify)===null||t===void 0?void 0:t.map(r=>Lm.EventTypeFromOpenApiSerializer._fromJsonObject(r))}},_toJsonObject(e){var t;return{modified:e.modified,to_modify:(t=e.toModify)===null||t===void 0?void 0:t.map(r=>Lm.EventTypeFromOpenApiSerializer._toJsonObject(r))}}}});var Um=f($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.EventTypeImportOpenApiOutSerializer=void 0;var Gm=Nm();$n.EventTypeImportOpenApiOutSerializer={_fromJsonObject(e){return{data:Gm.EventTypeImportOpenApiOutDataSerializer._fromJsonObject(e.data)}},_toJsonObject(e){return{data:Gm.EventTypeImportOpenApiOutDataSerializer._toJsonObject(e.data)}}}});var Wm=f(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.EventTypePatchSerializer=void 0;jn.EventTypePatchSerializer={_fromJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,schemas:e.schemas}},_toJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,schemas:e.schemas}}}});var Vm=f(Dn=>{"use strict";Object.defineProperty(Dn,"__esModule",{value:!0});Dn.EventTypeUpdateSerializer=void 0;Dn.EventTypeUpdateSerializer={_fromJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,schemas:e.schemas}},_toJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlag:e.featureFlag,featureFlags:e.featureFlags,groupName:e.groupName,schemas:e.schemas}}}});var Ym=f(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.ListResponseEventTypeOutSerializer=void 0;var Km=xn();qn.ListResponseEventTypeOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Km.EventTypeOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Km.EventTypeOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Qm=f(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.EventType=void 0;var jC=Hm(),DC=Um(),qC=el(),Rn=xn(),RC=Wm(),MC=Vm(),zC=Ym(),Me=ie(),rl=class{constructor(t){this.requestCtx=t}list(t){let r=new Me.SvixRequest(Me.HttpMethod.GET,"/api/v1/event-type");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order,include_archived:t?.includeArchived,with_content:t?.withContent}),r.send(this.requestCtx,zC.ListResponseEventTypeOutSerializer._fromJsonObject)}create(t,r){let i=new Me.SvixRequest(Me.HttpMethod.POST,"/api/v1/event-type");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(qC.EventTypeInSerializer._toJsonObject(t)),i.send(this.requestCtx,Rn.EventTypeOutSerializer._fromJsonObject)}importOpenapi(t,r){let i=new Me.SvixRequest(Me.HttpMethod.POST,"/api/v1/event-type/import/openapi");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(jC.EventTypeImportOpenApiInSerializer._toJsonObject(t)),i.send(this.requestCtx,DC.EventTypeImportOpenApiOutSerializer._fromJsonObject)}get(t){let r=new Me.SvixRequest(Me.HttpMethod.GET,"/api/v1/event-type/{event_type_name}");return r.setPathParam("event_type_name",t),r.send(this.requestCtx,Rn.EventTypeOutSerializer._fromJsonObject)}update(t,r){let i=new Me.SvixRequest(Me.HttpMethod.PUT,"/api/v1/event-type/{event_type_name}");return i.setPathParam("event_type_name",t),i.setBody(MC.EventTypeUpdateSerializer._toJsonObject(r)),i.send(this.requestCtx,Rn.EventTypeOutSerializer._fromJsonObject)}delete(t,r){let i=new Me.SvixRequest(Me.HttpMethod.DELETE,"/api/v1/event-type/{event_type_name}");return i.setPathParam("event_type_name",t),i.setQueryParams({expunge:r?.expunge}),i.sendNoResponseBody(this.requestCtx)}patch(t,r){let i=new Me.SvixRequest(Me.HttpMethod.PATCH,"/api/v1/event-type/{event_type_name}");return i.setPathParam("event_type_name",t),i.setBody(RC.EventTypePatchSerializer._toJsonObject(r)),i.send(this.requestCtx,Rn.EventTypeOutSerializer._fromJsonObject)}};Mn.EventType=rl});var Xm=f(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.Health=void 0;var Zm=ie(),il=class{constructor(t){this.requestCtx=t}get(){return new Zm.SvixRequest(Zm.HttpMethod.GET,"/api/v1/health").sendNoResponseBody(this.requestCtx)}};zn.Health=il});var ep=f(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.IngestSourceConsumerPortalAccessInSerializer=void 0;Jn.IngestSourceConsumerPortalAccessInSerializer={_fromJsonObject(e){return{expiry:e.expiry,readOnly:e.readOnly}},_toJsonObject(e){return{expiry:e.expiry,readOnly:e.readOnly}}}});var tp=f(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.IngestEndpointHeadersInSerializer=void 0;Fn.IngestEndpointHeadersInSerializer={_fromJsonObject(e){return{headers:e.headers}},_toJsonObject(e){return{headers:e.headers}}}});var rp=f(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.IngestEndpointHeadersOutSerializer=void 0;Hn.IngestEndpointHeadersOutSerializer={_fromJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}},_toJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}}}});var ip=f(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.IngestEndpointInSerializer=void 0;Bn.IngestEndpointInSerializer={_fromJsonObject(e){return{description:e.description,disabled:e.disabled,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,uid:e.uid,url:e.url}},_toJsonObject(e){return{description:e.description,disabled:e.disabled,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,uid:e.uid,url:e.url}}}});var nl=f(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.IngestEndpointOutSerializer=void 0;Ln.IngestEndpointOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),description:e.description,disabled:e.disabled,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,updatedAt:new Date(e.updatedAt),url:e.url}},_toJsonObject(e){return{createdAt:e.createdAt,description:e.description,disabled:e.disabled,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,updatedAt:e.updatedAt,url:e.url}}}});var np=f(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.IngestEndpointSecretInSerializer=void 0;Nn.IngestEndpointSecretInSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var op=f(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.IngestEndpointSecretOutSerializer=void 0;Gn.IngestEndpointSecretOutSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var sp=f(Un=>{"use strict";Object.defineProperty(Un,"__esModule",{value:!0});Un.IngestEndpointTransformationOutSerializer=void 0;Un.IngestEndpointTransformationOutSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled}},_toJsonObject(e){return{code:e.code,enabled:e.enabled}}}});var ap=f(Wn=>{"use strict";Object.defineProperty(Wn,"__esModule",{value:!0});Wn.IngestEndpointTransformationPatchSerializer=void 0;Wn.IngestEndpointTransformationPatchSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled}},_toJsonObject(e){return{code:e.code,enabled:e.enabled}}}});var up=f(Vn=>{"use strict";Object.defineProperty(Vn,"__esModule",{value:!0});Vn.IngestEndpointUpdateSerializer=void 0;Vn.IngestEndpointUpdateSerializer={_fromJsonObject(e){return{description:e.description,disabled:e.disabled,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,url:e.url}},_toJsonObject(e){return{description:e.description,disabled:e.disabled,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,url:e.url}}}});var cp=f(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.ListResponseIngestEndpointOutSerializer=void 0;var lp=nl();Kn.ListResponseIngestEndpointOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>lp.IngestEndpointOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>lp.IngestEndpointOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var dp=f(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.IngestEndpoint=void 0;var JC=tp(),FC=rp(),HC=ip(),ol=nl(),BC=np(),LC=op(),NC=sp(),GC=ap(),UC=up(),WC=cp(),ae=ie(),sl=class{constructor(t){this.requestCtx=t}list(t,r){let i=new ae.SvixRequest(ae.HttpMethod.GET,"/ingest/api/v1/source/{source_id}/endpoint");return i.setPathParam("source_id",t),i.setQueryParams({limit:r?.limit,iterator:r?.iterator,order:r?.order}),i.send(this.requestCtx,WC.ListResponseIngestEndpointOutSerializer._fromJsonObject)}create(t,r,i){let n=new ae.SvixRequest(ae.HttpMethod.POST,"/ingest/api/v1/source/{source_id}/endpoint");return n.setPathParam("source_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(HC.IngestEndpointInSerializer._toJsonObject(r)),n.send(this.requestCtx,ol.IngestEndpointOutSerializer._fromJsonObject)}get(t,r){let i=new ae.SvixRequest(ae.HttpMethod.GET,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}");return i.setPathParam("source_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,ol.IngestEndpointOutSerializer._fromJsonObject)}update(t,r,i){let n=new ae.SvixRequest(ae.HttpMethod.PUT,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}");return n.setPathParam("source_id",t),n.setPathParam("endpoint_id",r),n.setBody(UC.IngestEndpointUpdateSerializer._toJsonObject(i)),n.send(this.requestCtx,ol.IngestEndpointOutSerializer._fromJsonObject)}delete(t,r){let i=new ae.SvixRequest(ae.HttpMethod.DELETE,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}");return i.setPathParam("source_id",t),i.setPathParam("endpoint_id",r),i.sendNoResponseBody(this.requestCtx)}getHeaders(t,r){let i=new ae.SvixRequest(ae.HttpMethod.GET,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/headers");return i.setPathParam("source_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,FC.IngestEndpointHeadersOutSerializer._fromJsonObject)}updateHeaders(t,r,i){let n=new ae.SvixRequest(ae.HttpMethod.PUT,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/headers");return n.setPathParam("source_id",t),n.setPathParam("endpoint_id",r),n.setBody(JC.IngestEndpointHeadersInSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}getSecret(t,r){let i=new ae.SvixRequest(ae.HttpMethod.GET,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/secret");return i.setPathParam("source_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,LC.IngestEndpointSecretOutSerializer._fromJsonObject)}rotateSecret(t,r,i,n){let o=new ae.SvixRequest(ae.HttpMethod.POST,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/secret/rotate");return o.setPathParam("source_id",t),o.setPathParam("endpoint_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(BC.IngestEndpointSecretInSerializer._toJsonObject(i)),o.sendNoResponseBody(this.requestCtx)}getTransformation(t,r){let i=new ae.SvixRequest(ae.HttpMethod.GET,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/transformation");return i.setPathParam("source_id",t),i.setPathParam("endpoint_id",r),i.send(this.requestCtx,NC.IngestEndpointTransformationOutSerializer._fromJsonObject)}setTransformation(t,r,i){let n=new ae.SvixRequest(ae.HttpMethod.PATCH,"/ingest/api/v1/source/{source_id}/endpoint/{endpoint_id}/transformation");return n.setPathParam("source_id",t),n.setPathParam("endpoint_id",r),n.setBody(GC.IngestEndpointTransformationPatchSerializer._toJsonObject(i)),n.sendNoResponseBody(this.requestCtx)}};Yn.IngestEndpoint=sl});var mp=f(Qn=>{"use strict";Object.defineProperty(Qn,"__esModule",{value:!0});Qn.AdobeSignConfigSerializer=void 0;Qn.AdobeSignConfigSerializer={_fromJsonObject(e){return{clientId:e.clientId}},_toJsonObject(e){return{clientId:e.clientId}}}});var pp=f(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.AirwallexConfigSerializer=void 0;Zn.AirwallexConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var fp=f(Xn=>{"use strict";Object.defineProperty(Xn,"__esModule",{value:!0});Xn.CheckbookConfigSerializer=void 0;Xn.CheckbookConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var al=f(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});eo.CronConfigSerializer=void 0;eo.CronConfigSerializer={_fromJsonObject(e){return{contentType:e.contentType,payload:e.payload,schedule:e.schedule}},_toJsonObject(e){return{contentType:e.contentType,payload:e.payload,schedule:e.schedule}}}});var hp=f(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.DocusignConfigSerializer=void 0;to.DocusignConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var gp=f(ro=>{"use strict";Object.defineProperty(ro,"__esModule",{value:!0});ro.EasypostConfigSerializer=void 0;ro.EasypostConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var bp=f(io=>{"use strict";Object.defineProperty(io,"__esModule",{value:!0});io.GithubConfigSerializer=void 0;io.GithubConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var _p=f(no=>{"use strict";Object.defineProperty(no,"__esModule",{value:!0});no.HubspotConfigSerializer=void 0;no.HubspotConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var vp=f(oo=>{"use strict";Object.defineProperty(oo,"__esModule",{value:!0});oo.MetaConfigSerializer=void 0;oo.MetaConfigSerializer={_fromJsonObject(e){return{secret:e.secret,verifyToken:e.verifyToken}},_toJsonObject(e){return{secret:e.secret,verifyToken:e.verifyToken}}}});var yp=f(so=>{"use strict";Object.defineProperty(so,"__esModule",{value:!0});so.OrumIoConfigSerializer=void 0;so.OrumIoConfigSerializer={_fromJsonObject(e){return{publicKey:e.publicKey}},_toJsonObject(e){return{publicKey:e.publicKey}}}});var Cp=f(ao=>{"use strict";Object.defineProperty(ao,"__esModule",{value:!0});ao.PandaDocConfigSerializer=void 0;ao.PandaDocConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Op=f(uo=>{"use strict";Object.defineProperty(uo,"__esModule",{value:!0});uo.PortIoConfigSerializer=void 0;uo.PortIoConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Sp=f(lo=>{"use strict";Object.defineProperty(lo,"__esModule",{value:!0});lo.RutterConfigSerializer=void 0;lo.RutterConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var wp=f(co=>{"use strict";Object.defineProperty(co,"__esModule",{value:!0});co.SegmentConfigSerializer=void 0;co.SegmentConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var xp=f(mo=>{"use strict";Object.defineProperty(mo,"__esModule",{value:!0});mo.ShopifyConfigSerializer=void 0;mo.ShopifyConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var kp=f(po=>{"use strict";Object.defineProperty(po,"__esModule",{value:!0});po.SlackConfigSerializer=void 0;po.SlackConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Ap=f(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.StripeConfigSerializer=void 0;fo.StripeConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Ep=f(ho=>{"use strict";Object.defineProperty(ho,"__esModule",{value:!0});ho.SvixConfigSerializer=void 0;ho.SvixConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Pp=f(go=>{"use strict";Object.defineProperty(go,"__esModule",{value:!0});go.TelnyxConfigSerializer=void 0;go.TelnyxConfigSerializer={_fromJsonObject(e){return{publicKey:e.publicKey}},_toJsonObject(e){return{publicKey:e.publicKey}}}});var Tp=f(bo=>{"use strict";Object.defineProperty(bo,"__esModule",{value:!0});bo.VapiConfigSerializer=void 0;bo.VapiConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var Ip=f(_o=>{"use strict";Object.defineProperty(_o,"__esModule",{value:!0});_o.VeriffConfigSerializer=void 0;_o.VeriffConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var $p=f(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.ZoomConfigSerializer=void 0;vo.ZoomConfigSerializer={_fromJsonObject(e){return{secret:e.secret}},_toJsonObject(e){return{secret:e.secret}}}});var ef=f(yo=>{"use strict";Object.defineProperty(yo,"__esModule",{value:!0});yo.IngestSourceInSerializer=void 0;var jp=mp(),Dp=pp(),qp=fp(),Rp=al(),Mp=hp(),zp=gp(),Jp=bp(),Fp=_p(),Hp=vp(),Bp=yp(),Lp=Cp(),Np=Op(),Gp=Sp(),Up=wp(),Wp=xp(),Vp=kp(),Kp=Ap(),H=Ep(),Yp=Pp(),Qp=Tp(),Zp=Ip(),Xp=$p();yo.IngestSourceInSerializer={_fromJsonObject(e){let t=e.type;function r(i){switch(i){case"generic-webhook":return{};case"cron":return Rp.CronConfigSerializer._fromJsonObject(e.config);case"adobe-sign":return jp.AdobeSignConfigSerializer._fromJsonObject(e.config);case"beehiiv":return H.SvixConfigSerializer._fromJsonObject(e.config);case"brex":return H.SvixConfigSerializer._fromJsonObject(e.config);case"checkbook":return qp.CheckbookConfigSerializer._fromJsonObject(e.config);case"clerk":return H.SvixConfigSerializer._fromJsonObject(e.config);case"docusign":return Mp.DocusignConfigSerializer._fromJsonObject(e.config);case"easypost":return zp.EasypostConfigSerializer._fromJsonObject(e.config);case"github":return Jp.GithubConfigSerializer._fromJsonObject(e.config);case"guesty":return H.SvixConfigSerializer._fromJsonObject(e.config);case"hubspot":return Fp.HubspotConfigSerializer._fromJsonObject(e.config);case"incident-io":return H.SvixConfigSerializer._fromJsonObject(e.config);case"lithic":return H.SvixConfigSerializer._fromJsonObject(e.config);case"meta":return Hp.MetaConfigSerializer._fromJsonObject(e.config);case"nash":return H.SvixConfigSerializer._fromJsonObject(e.config);case"orum-io":return Bp.OrumIoConfigSerializer._fromJsonObject(e.config);case"panda-doc":return Lp.PandaDocConfigSerializer._fromJsonObject(e.config);case"port-io":return Np.PortIoConfigSerializer._fromJsonObject(e.config);case"pleo":return H.SvixConfigSerializer._fromJsonObject(e.config);case"psi-fi":return H.SvixConfigSerializer._fromJsonObject(e.config);case"replicate":return H.SvixConfigSerializer._fromJsonObject(e.config);case"resend":return H.SvixConfigSerializer._fromJsonObject(e.config);case"rutter":return Gp.RutterConfigSerializer._fromJsonObject(e.config);case"safebase":return H.SvixConfigSerializer._fromJsonObject(e.config);case"sardine":return H.SvixConfigSerializer._fromJsonObject(e.config);case"segment":return Up.SegmentConfigSerializer._fromJsonObject(e.config);case"shopify":return Wp.ShopifyConfigSerializer._fromJsonObject(e.config);case"slack":return Vp.SlackConfigSerializer._fromJsonObject(e.config);case"stripe":return Kp.StripeConfigSerializer._fromJsonObject(e.config);case"stych":return H.SvixConfigSerializer._fromJsonObject(e.config);case"svix":return H.SvixConfigSerializer._fromJsonObject(e.config);case"zoom":return Xp.ZoomConfigSerializer._fromJsonObject(e.config);case"telnyx":return Yp.TelnyxConfigSerializer._fromJsonObject(e.config);case"vapi":return Qp.VapiConfigSerializer._fromJsonObject(e.config);case"open-ai":return H.SvixConfigSerializer._fromJsonObject(e.config);case"render":return H.SvixConfigSerializer._fromJsonObject(e.config);case"veriff":return Zp.VeriffConfigSerializer._fromJsonObject(e.config);case"airwallex":return Dp.AirwallexConfigSerializer._fromJsonObject(e.config);default:throw new Error(`Unexpected type: ${i}`)}}return{type:t,config:r(t),metadata:e.metadata,name:e.name,uid:e.uid}},_toJsonObject(e){let t;switch(e.type){case"generic-webhook":t={};break;case"cron":t=Rp.CronConfigSerializer._toJsonObject(e.config);break;case"adobe-sign":t=jp.AdobeSignConfigSerializer._toJsonObject(e.config);break;case"beehiiv":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"brex":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"checkbook":t=qp.CheckbookConfigSerializer._toJsonObject(e.config);break;case"clerk":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"docusign":t=Mp.DocusignConfigSerializer._toJsonObject(e.config);break;case"easypost":t=zp.EasypostConfigSerializer._toJsonObject(e.config);break;case"github":t=Jp.GithubConfigSerializer._toJsonObject(e.config);break;case"guesty":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"hubspot":t=Fp.HubspotConfigSerializer._toJsonObject(e.config);break;case"incident-io":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"lithic":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"meta":t=Hp.MetaConfigSerializer._toJsonObject(e.config);break;case"nash":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"orum-io":t=Bp.OrumIoConfigSerializer._toJsonObject(e.config);break;case"panda-doc":t=Lp.PandaDocConfigSerializer._toJsonObject(e.config);break;case"port-io":t=Np.PortIoConfigSerializer._toJsonObject(e.config);break;case"pleo":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"psi-fi":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"replicate":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"resend":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"rutter":t=Gp.RutterConfigSerializer._toJsonObject(e.config);break;case"safebase":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"sardine":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"segment":t=Up.SegmentConfigSerializer._toJsonObject(e.config);break;case"shopify":t=Wp.ShopifyConfigSerializer._toJsonObject(e.config);break;case"slack":t=Vp.SlackConfigSerializer._toJsonObject(e.config);break;case"stripe":t=Kp.StripeConfigSerializer._toJsonObject(e.config);break;case"stych":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"svix":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"zoom":t=Xp.ZoomConfigSerializer._toJsonObject(e.config);break;case"telnyx":t=Yp.TelnyxConfigSerializer._toJsonObject(e.config);break;case"vapi":t=Qp.VapiConfigSerializer._toJsonObject(e.config);break;case"open-ai":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"render":t=H.SvixConfigSerializer._toJsonObject(e.config);break;case"veriff":t=Zp.VeriffConfigSerializer._toJsonObject(e.config);break;case"airwallex":t=Dp.AirwallexConfigSerializer._toJsonObject(e.config);break}return{type:e.type,config:t,metadata:e.metadata,name:e.name,uid:e.uid}}}});var tf=f(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.AdobeSignConfigOutSerializer=void 0;Co.AdobeSignConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var rf=f(Oo=>{"use strict";Object.defineProperty(Oo,"__esModule",{value:!0});Oo.AirwallexConfigOutSerializer=void 0;Oo.AirwallexConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var nf=f(So=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});So.CheckbookConfigOutSerializer=void 0;So.CheckbookConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var of=f(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.DocusignConfigOutSerializer=void 0;wo.DocusignConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var sf=f(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.EasypostConfigOutSerializer=void 0;xo.EasypostConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var af=f(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});ko.GithubConfigOutSerializer=void 0;ko.GithubConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var uf=f(Ao=>{"use strict";Object.defineProperty(Ao,"__esModule",{value:!0});Ao.HubspotConfigOutSerializer=void 0;Ao.HubspotConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var lf=f(Eo=>{"use strict";Object.defineProperty(Eo,"__esModule",{value:!0});Eo.MetaConfigOutSerializer=void 0;Eo.MetaConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var cf=f(Po=>{"use strict";Object.defineProperty(Po,"__esModule",{value:!0});Po.OrumIoConfigOutSerializer=void 0;Po.OrumIoConfigOutSerializer={_fromJsonObject(e){return{publicKey:e.publicKey}},_toJsonObject(e){return{publicKey:e.publicKey}}}});var df=f(To=>{"use strict";Object.defineProperty(To,"__esModule",{value:!0});To.PandaDocConfigOutSerializer=void 0;To.PandaDocConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var mf=f(Io=>{"use strict";Object.defineProperty(Io,"__esModule",{value:!0});Io.PortIoConfigOutSerializer=void 0;Io.PortIoConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var pf=f($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.RutterConfigOutSerializer=void 0;$o.RutterConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var ff=f(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.SegmentConfigOutSerializer=void 0;jo.SegmentConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var hf=f(Do=>{"use strict";Object.defineProperty(Do,"__esModule",{value:!0});Do.ShopifyConfigOutSerializer=void 0;Do.ShopifyConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var gf=f(qo=>{"use strict";Object.defineProperty(qo,"__esModule",{value:!0});qo.SlackConfigOutSerializer=void 0;qo.SlackConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var bf=f(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});Ro.StripeConfigOutSerializer=void 0;Ro.StripeConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var _f=f(Mo=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});Mo.SvixConfigOutSerializer=void 0;Mo.SvixConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var vf=f(zo=>{"use strict";Object.defineProperty(zo,"__esModule",{value:!0});zo.TelnyxConfigOutSerializer=void 0;zo.TelnyxConfigOutSerializer={_fromJsonObject(e){return{publicKey:e.publicKey}},_toJsonObject(e){return{publicKey:e.publicKey}}}});var yf=f(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.VapiConfigOutSerializer=void 0;Jo.VapiConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var Cf=f(Fo=>{"use strict";Object.defineProperty(Fo,"__esModule",{value:!0});Fo.VeriffConfigOutSerializer=void 0;Fo.VeriffConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var Of=f(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});Ho.ZoomConfigOutSerializer=void 0;Ho.ZoomConfigOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var ul=f(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.IngestSourceOutSerializer=void 0;var Sf=tf(),wf=rf(),xf=nf(),kf=al(),Af=of(),Ef=sf(),Pf=af(),Tf=uf(),If=lf(),$f=cf(),jf=df(),Df=mf(),qf=pf(),Rf=ff(),Mf=hf(),zf=gf(),Jf=bf(),B=_f(),Ff=vf(),Hf=yf(),Bf=Cf(),Lf=Of();Bo.IngestSourceOutSerializer={_fromJsonObject(e){let t=e.type;function r(i){switch(i){case"generic-webhook":return{};case"cron":return kf.CronConfigSerializer._fromJsonObject(e.config);case"adobe-sign":return Sf.AdobeSignConfigOutSerializer._fromJsonObject(e.config);case"beehiiv":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"brex":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"checkbook":return xf.CheckbookConfigOutSerializer._fromJsonObject(e.config);case"clerk":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"docusign":return Af.DocusignConfigOutSerializer._fromJsonObject(e.config);case"easypost":return Ef.EasypostConfigOutSerializer._fromJsonObject(e.config);case"github":return Pf.GithubConfigOutSerializer._fromJsonObject(e.config);case"guesty":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"hubspot":return Tf.HubspotConfigOutSerializer._fromJsonObject(e.config);case"incident-io":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"lithic":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"meta":return If.MetaConfigOutSerializer._fromJsonObject(e.config);case"nash":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"orum-io":return $f.OrumIoConfigOutSerializer._fromJsonObject(e.config);case"panda-doc":return jf.PandaDocConfigOutSerializer._fromJsonObject(e.config);case"port-io":return Df.PortIoConfigOutSerializer._fromJsonObject(e.config);case"psi-fi":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"pleo":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"replicate":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"resend":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"rutter":return qf.RutterConfigOutSerializer._fromJsonObject(e.config);case"safebase":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"sardine":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"segment":return Rf.SegmentConfigOutSerializer._fromJsonObject(e.config);case"shopify":return Mf.ShopifyConfigOutSerializer._fromJsonObject(e.config);case"slack":return zf.SlackConfigOutSerializer._fromJsonObject(e.config);case"stripe":return Jf.StripeConfigOutSerializer._fromJsonObject(e.config);case"stych":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"svix":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"zoom":return Lf.ZoomConfigOutSerializer._fromJsonObject(e.config);case"telnyx":return Ff.TelnyxConfigOutSerializer._fromJsonObject(e.config);case"vapi":return Hf.VapiConfigOutSerializer._fromJsonObject(e.config);case"open-ai":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"render":return B.SvixConfigOutSerializer._fromJsonObject(e.config);case"veriff":return Bf.VeriffConfigOutSerializer._fromJsonObject(e.config);case"airwallex":return wf.AirwallexConfigOutSerializer._fromJsonObject(e.config);default:throw new Error(`Unexpected type: ${i}`)}}return{type:t,config:r(t),createdAt:new Date(e.createdAt),id:e.id,ingestUrl:e.ingestUrl,metadata:e.metadata,name:e.name,uid:e.uid,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){let t;switch(e.type){case"generic-webhook":t={};break;case"cron":t=kf.CronConfigSerializer._toJsonObject(e.config);break;case"adobe-sign":t=Sf.AdobeSignConfigOutSerializer._toJsonObject(e.config);break;case"beehiiv":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"brex":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"checkbook":t=xf.CheckbookConfigOutSerializer._toJsonObject(e.config);break;case"clerk":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"docusign":t=Af.DocusignConfigOutSerializer._toJsonObject(e.config);break;case"easypost":t=Ef.EasypostConfigOutSerializer._toJsonObject(e.config);break;case"github":t=Pf.GithubConfigOutSerializer._toJsonObject(e.config);break;case"guesty":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"hubspot":t=Tf.HubspotConfigOutSerializer._toJsonObject(e.config);break;case"incident-io":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"lithic":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"meta":t=If.MetaConfigOutSerializer._toJsonObject(e.config);break;case"nash":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"orum-io":t=$f.OrumIoConfigOutSerializer._toJsonObject(e.config);break;case"panda-doc":t=jf.PandaDocConfigOutSerializer._toJsonObject(e.config);break;case"port-io":t=Df.PortIoConfigOutSerializer._toJsonObject(e.config);break;case"psi-fi":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"pleo":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"replicate":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"resend":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"rutter":t=qf.RutterConfigOutSerializer._toJsonObject(e.config);break;case"safebase":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"sardine":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"segment":t=Rf.SegmentConfigOutSerializer._toJsonObject(e.config);break;case"shopify":t=Mf.ShopifyConfigOutSerializer._toJsonObject(e.config);break;case"slack":t=zf.SlackConfigOutSerializer._toJsonObject(e.config);break;case"stripe":t=Jf.StripeConfigOutSerializer._toJsonObject(e.config);break;case"stych":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"svix":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"zoom":t=Lf.ZoomConfigOutSerializer._toJsonObject(e.config);break;case"telnyx":t=Ff.TelnyxConfigOutSerializer._toJsonObject(e.config);break;case"vapi":t=Hf.VapiConfigOutSerializer._toJsonObject(e.config);break;case"open-ai":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"render":t=B.SvixConfigOutSerializer._toJsonObject(e.config);break;case"veriff":t=Bf.VeriffConfigOutSerializer._toJsonObject(e.config);break;case"airwallex":t=wf.AirwallexConfigOutSerializer._toJsonObject(e.config);break}return{type:e.type,config:t,createdAt:e.createdAt,id:e.id,ingestUrl:e.ingestUrl,metadata:e.metadata,name:e.name,uid:e.uid,updatedAt:e.updatedAt}}}});var Gf=f(Lo=>{"use strict";Object.defineProperty(Lo,"__esModule",{value:!0});Lo.ListResponseIngestSourceOutSerializer=void 0;var Nf=ul();Lo.ListResponseIngestSourceOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Nf.IngestSourceOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Nf.IngestSourceOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Uf=f(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.RotateTokenOutSerializer=void 0;No.RotateTokenOutSerializer={_fromJsonObject(e){return{ingestUrl:e.ingestUrl}},_toJsonObject(e){return{ingestUrl:e.ingestUrl}}}});var Vf=f(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.IngestSource=void 0;var Wf=ef(),ll=ul(),VC=Gf(),KC=Uf(),Ze=ie(),cl=class{constructor(t){this.requestCtx=t}list(t){let r=new Ze.SvixRequest(Ze.HttpMethod.GET,"/ingest/api/v1/source");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order}),r.send(this.requestCtx,VC.ListResponseIngestSourceOutSerializer._fromJsonObject)}create(t,r){let i=new Ze.SvixRequest(Ze.HttpMethod.POST,"/ingest/api/v1/source");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(Wf.IngestSourceInSerializer._toJsonObject(t)),i.send(this.requestCtx,ll.IngestSourceOutSerializer._fromJsonObject)}get(t){let r=new Ze.SvixRequest(Ze.HttpMethod.GET,"/ingest/api/v1/source/{source_id}");return r.setPathParam("source_id",t),r.send(this.requestCtx,ll.IngestSourceOutSerializer._fromJsonObject)}update(t,r){let i=new Ze.SvixRequest(Ze.HttpMethod.PUT,"/ingest/api/v1/source/{source_id}");return i.setPathParam("source_id",t),i.setBody(Wf.IngestSourceInSerializer._toJsonObject(r)),i.send(this.requestCtx,ll.IngestSourceOutSerializer._fromJsonObject)}delete(t){let r=new Ze.SvixRequest(Ze.HttpMethod.DELETE,"/ingest/api/v1/source/{source_id}");return r.setPathParam("source_id",t),r.sendNoResponseBody(this.requestCtx)}rotateToken(t,r){let i=new Ze.SvixRequest(Ze.HttpMethod.POST,"/ingest/api/v1/source/{source_id}/token/rotate");return i.setPathParam("source_id",t),i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.send(this.requestCtx,KC.RotateTokenOutSerializer._fromJsonObject)}};Go.IngestSource=cl});var Yf=f(Uo=>{"use strict";Object.defineProperty(Uo,"__esModule",{value:!0});Uo.Ingest=void 0;var YC=Lu(),QC=ep(),ZC=dp(),XC=Vf(),Kf=ie(),dl=class{constructor(t){this.requestCtx=t}get endpoint(){return new ZC.IngestEndpoint(this.requestCtx)}get source(){return new XC.IngestSource(this.requestCtx)}dashboard(t,r,i){let n=new Kf.SvixRequest(Kf.HttpMethod.POST,"/ingest/api/v1/source/{source_id}/dashboard");return n.setPathParam("source_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(QC.IngestSourceConsumerPortalAccessInSerializer._toJsonObject(r)),n.send(this.requestCtx,YC.DashboardAccessOutSerializer._fromJsonObject)}};Uo.Ingest=dl});var Qf=f(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.IntegrationInSerializer=void 0;Wo.IntegrationInSerializer={_fromJsonObject(e){return{featureFlags:e.featureFlags,name:e.name}},_toJsonObject(e){return{featureFlags:e.featureFlags,name:e.name}}}});var Zf=f(Vo=>{"use strict";Object.defineProperty(Vo,"__esModule",{value:!0});Vo.IntegrationKeyOutSerializer=void 0;Vo.IntegrationKeyOutSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var ml=f(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.IntegrationOutSerializer=void 0;Ko.IntegrationOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),featureFlags:e.featureFlags,id:e.id,name:e.name,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{createdAt:e.createdAt,featureFlags:e.featureFlags,id:e.id,name:e.name,updatedAt:e.updatedAt}}}});var Xf=f(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.IntegrationUpdateSerializer=void 0;Yo.IntegrationUpdateSerializer={_fromJsonObject(e){return{featureFlags:e.featureFlags,name:e.name}},_toJsonObject(e){return{featureFlags:e.featureFlags,name:e.name}}}});var th=f(Qo=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});Qo.ListResponseIntegrationOutSerializer=void 0;var eh=ml();Qo.ListResponseIntegrationOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>eh.IntegrationOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>eh.IntegrationOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var ih=f(Zo=>{"use strict";Object.defineProperty(Zo,"__esModule",{value:!0});Zo.Integration=void 0;var eO=Qf(),rh=Zf(),pl=ml(),tO=Xf(),rO=th(),ze=ie(),fl=class{constructor(t){this.requestCtx=t}list(t,r){let i=new ze.SvixRequest(ze.HttpMethod.GET,"/api/v1/app/{app_id}/integration");return i.setPathParam("app_id",t),i.setQueryParams({limit:r?.limit,iterator:r?.iterator,order:r?.order}),i.send(this.requestCtx,rO.ListResponseIntegrationOutSerializer._fromJsonObject)}create(t,r,i){let n=new ze.SvixRequest(ze.HttpMethod.POST,"/api/v1/app/{app_id}/integration");return n.setPathParam("app_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(eO.IntegrationInSerializer._toJsonObject(r)),n.send(this.requestCtx,pl.IntegrationOutSerializer._fromJsonObject)}get(t,r){let i=new ze.SvixRequest(ze.HttpMethod.GET,"/api/v1/app/{app_id}/integration/{integ_id}");return i.setPathParam("app_id",t),i.setPathParam("integ_id",r),i.send(this.requestCtx,pl.IntegrationOutSerializer._fromJsonObject)}update(t,r,i){let n=new ze.SvixRequest(ze.HttpMethod.PUT,"/api/v1/app/{app_id}/integration/{integ_id}");return n.setPathParam("app_id",t),n.setPathParam("integ_id",r),n.setBody(tO.IntegrationUpdateSerializer._toJsonObject(i)),n.send(this.requestCtx,pl.IntegrationOutSerializer._fromJsonObject)}delete(t,r){let i=new ze.SvixRequest(ze.HttpMethod.DELETE,"/api/v1/app/{app_id}/integration/{integ_id}");return i.setPathParam("app_id",t),i.setPathParam("integ_id",r),i.sendNoResponseBody(this.requestCtx)}getKey(t,r){let i=new ze.SvixRequest(ze.HttpMethod.GET,"/api/v1/app/{app_id}/integration/{integ_id}/key");return i.setPathParam("app_id",t),i.setPathParam("integ_id",r),i.send(this.requestCtx,rh.IntegrationKeyOutSerializer._fromJsonObject)}rotateKey(t,r,i){let n=new ze.SvixRequest(ze.HttpMethod.POST,"/api/v1/app/{app_id}/integration/{integ_id}/key/rotate");return n.setPathParam("app_id",t),n.setPathParam("integ_id",r),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.send(this.requestCtx,rh.IntegrationKeyOutSerializer._fromJsonObject)}};Zo.Integration=fl});var sh=f(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});Xo.ExpungeAllContentsOutSerializer=void 0;var nh=xt(),oh=kt();Xo.ExpungeAllContentsOutSerializer={_fromJsonObject(e){return{id:e.id,status:nh.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:oh.BackgroundTaskTypeSerializer._fromJsonObject(e.task),updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{id:e.id,status:nh.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:oh.BackgroundTaskTypeSerializer._toJsonObject(e.task),updatedAt:e.updatedAt}}}});var uh=f(es=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});es.ListResponseMessageOutSerializer=void 0;var ah=Yr();es.ListResponseMessageOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>ah.MessageOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>ah.MessageOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var lh=f(ts=>{"use strict";Object.defineProperty(ts,"__esModule",{value:!0});ts.MessagePrecheckInSerializer=void 0;ts.MessagePrecheckInSerializer={_fromJsonObject(e){return{channels:e.channels,eventType:e.eventType}},_toJsonObject(e){return{channels:e.channels,eventType:e.eventType}}}});var ch=f(rs=>{"use strict";Object.defineProperty(rs,"__esModule",{value:!0});rs.MessagePrecheckOutSerializer=void 0;rs.MessagePrecheckOutSerializer={_fromJsonObject(e){return{active:e.active}},_toJsonObject(e){return{active:e.active}}}});var dh=f(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});is.PollingEndpointConsumerSeekInSerializer=void 0;is.PollingEndpointConsumerSeekInSerializer={_fromJsonObject(e){return{after:new Date(e.after)}},_toJsonObject(e){return{after:e.after}}}});var mh=f(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.PollingEndpointConsumerSeekOutSerializer=void 0;ns.PollingEndpointConsumerSeekOutSerializer={_fromJsonObject(e){return{iterator:e.iterator}},_toJsonObject(e){return{iterator:e.iterator}}}});var ph=f(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.PollingEndpointMessageOutSerializer=void 0;os.PollingEndpointMessageOutSerializer={_fromJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt?new Date(e.deliverAt):null,eventId:e.eventId,eventType:e.eventType,headers:e.headers,id:e.id,payload:e.payload,tags:e.tags,timestamp:new Date(e.timestamp)}},_toJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt,eventId:e.eventId,eventType:e.eventType,headers:e.headers,id:e.id,payload:e.payload,tags:e.tags,timestamp:e.timestamp}}}});var hh=f(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.PollingEndpointOutSerializer=void 0;var fh=ph();ss.PollingEndpointOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>fh.PollingEndpointMessageOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator}},_toJsonObject(e){return{data:e.data.map(t=>fh.PollingEndpointMessageOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator}}}});var bh=f(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});as.MessagePoller=void 0;var iO=dh(),nO=mh(),gh=hh(),dr=ie(),hl=class{constructor(t){this.requestCtx=t}poll(t,r,i){let n=new dr.SvixRequest(dr.HttpMethod.GET,"/api/v1/app/{app_id}/poller/{sink_id}");return n.setPathParam("app_id",t),n.setPathParam("sink_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator,event_type:i?.eventType,channel:i?.channel,after:i?.after}),n.send(this.requestCtx,gh.PollingEndpointOutSerializer._fromJsonObject)}consumerPoll(t,r,i,n){let o=new dr.SvixRequest(dr.HttpMethod.GET,"/api/v1/app/{app_id}/poller/{sink_id}/consumer/{consumer_id}");return o.setPathParam("app_id",t),o.setPathParam("sink_id",r),o.setPathParam("consumer_id",i),o.setQueryParams({limit:n?.limit,iterator:n?.iterator}),o.send(this.requestCtx,gh.PollingEndpointOutSerializer._fromJsonObject)}consumerSeek(t,r,i,n,o){let s=new dr.SvixRequest(dr.HttpMethod.POST,"/api/v1/app/{app_id}/poller/{sink_id}/consumer/{consumer_id}/seek");return s.setPathParam("app_id",t),s.setPathParam("sink_id",r),s.setPathParam("consumer_id",i),s.setHeaderParam("idempotency-key",o?.idempotencyKey),s.setBody(iO.PollingEndpointConsumerSeekInSerializer._toJsonObject(n)),s.send(this.requestCtx,nO.PollingEndpointConsumerSeekOutSerializer._fromJsonObject)}};as.MessagePoller=hl});var vh=f(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.MessageInSerializer=void 0;var _h=wi();us.MessageInSerializer={_fromJsonObject(e){return{application:e.application!=null?_h.ApplicationInSerializer._fromJsonObject(e.application):void 0,channels:e.channels,deliverAt:e.deliverAt?new Date(e.deliverAt):null,eventId:e.eventId,eventType:e.eventType,payload:e.payload,payloadRetentionHours:e.payloadRetentionHours,payloadRetentionPeriod:e.payloadRetentionPeriod,tags:e.tags,transformationsParams:e.transformationsParams}},_toJsonObject(e){return{application:e.application!=null?_h.ApplicationInSerializer._toJsonObject(e.application):void 0,channels:e.channels,deliverAt:e.deliverAt,eventId:e.eventId,eventType:e.eventType,payload:e.payload,payloadRetentionHours:e.payloadRetentionHours,payloadRetentionPeriod:e.payloadRetentionPeriod,tags:e.tags,transformationsParams:e.transformationsParams}}}});var bl=f(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.messageInRaw=mr.Message=void 0;var oO=sh(),sO=uh(),yh=Yr(),aO=lh(),uO=ch(),lO=bh(),Xe=ie(),cO=vh(),gl=class{constructor(t){this.requestCtx=t}get poller(){return new lO.MessagePoller(this.requestCtx)}list(t,r){let i=new Xe.SvixRequest(Xe.HttpMethod.GET,"/api/v1/app/{app_id}/msg");return i.setPathParam("app_id",t),i.setQueryParams({limit:r?.limit,iterator:r?.iterator,channel:r?.channel,before:r?.before,after:r?.after,with_content:r?.withContent,tag:r?.tag,event_types:r?.eventTypes}),i.send(this.requestCtx,sO.ListResponseMessageOutSerializer._fromJsonObject)}create(t,r,i){let n=new Xe.SvixRequest(Xe.HttpMethod.POST,"/api/v1/app/{app_id}/msg");return n.setPathParam("app_id",t),n.setQueryParams({with_content:i?.withContent}),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(cO.MessageInSerializer._toJsonObject(r)),n.send(this.requestCtx,yh.MessageOutSerializer._fromJsonObject)}expungeAllContents(t,r){let i=new Xe.SvixRequest(Xe.HttpMethod.POST,"/api/v1/app/{app_id}/msg/expunge-all-contents");return i.setPathParam("app_id",t),i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.send(this.requestCtx,oO.ExpungeAllContentsOutSerializer._fromJsonObject)}precheck(t,r,i){let n=new Xe.SvixRequest(Xe.HttpMethod.POST,"/api/v1/app/{app_id}/msg/precheck/active");return n.setPathParam("app_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(aO.MessagePrecheckInSerializer._toJsonObject(r)),n.send(this.requestCtx,uO.MessagePrecheckOutSerializer._fromJsonObject)}get(t,r,i){let n=new Xe.SvixRequest(Xe.HttpMethod.GET,"/api/v1/app/{app_id}/msg/{msg_id}");return n.setPathParam("app_id",t),n.setPathParam("msg_id",r),n.setQueryParams({with_content:i?.withContent}),n.send(this.requestCtx,yh.MessageOutSerializer._fromJsonObject)}expungeContent(t,r){let i=new Xe.SvixRequest(Xe.HttpMethod.DELETE,"/api/v1/app/{app_id}/msg/{msg_id}/content");return i.setPathParam("app_id",t),i.setPathParam("msg_id",r),i.sendNoResponseBody(this.requestCtx)}};mr.Message=gl;function dO(e,t,r){return{eventType:e,payload:{},transformationsParams:{rawPayload:t,headers:r?{"content-type":r}:void 0}}}mr.messageInRaw=dO});var _l=f(ls=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});ls.EmptyResponseSerializer=void 0;ls.EmptyResponseSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var Qr=f(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.MessageStatusTextSerializer=Wt.MessageStatusText=void 0;var mO;(function(e){e.Success="success",e.Pending="pending",e.Fail="fail",e.Sending="sending"})(mO=Wt.MessageStatusText||(Wt.MessageStatusText={}));Wt.MessageStatusTextSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var Sh=f(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.EndpointMessageOutSerializer=void 0;var Ch=cr(),Oh=Qr();cs.EndpointMessageOutSerializer={_fromJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt?new Date(e.deliverAt):null,eventId:e.eventId,eventType:e.eventType,id:e.id,nextAttempt:e.nextAttempt?new Date(e.nextAttempt):null,payload:e.payload,status:Ch.MessageStatusSerializer._fromJsonObject(e.status),statusText:Oh.MessageStatusTextSerializer._fromJsonObject(e.statusText),tags:e.tags,timestamp:new Date(e.timestamp)}},_toJsonObject(e){return{channels:e.channels,deliverAt:e.deliverAt,eventId:e.eventId,eventType:e.eventType,id:e.id,nextAttempt:e.nextAttempt,payload:e.payload,status:Ch.MessageStatusSerializer._toJsonObject(e.status),statusText:Oh.MessageStatusTextSerializer._toJsonObject(e.statusText),tags:e.tags,timestamp:e.timestamp}}}});var xh=f(ds=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});ds.ListResponseEndpointMessageOutSerializer=void 0;var wh=Sh();ds.ListResponseEndpointMessageOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>wh.EndpointMessageOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>wh.EndpointMessageOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var vl=f(Vt=>{"use strict";Object.defineProperty(Vt,"__esModule",{value:!0});Vt.MessageAttemptTriggerTypeSerializer=Vt.MessageAttemptTriggerType=void 0;var pO;(function(e){e[e.Scheduled=0]="Scheduled",e[e.Manual=1]="Manual"})(pO=Vt.MessageAttemptTriggerType||(Vt.MessageAttemptTriggerType={}));Vt.MessageAttemptTriggerTypeSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var yl=f(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.MessageAttemptOutSerializer=void 0;var kh=vl(),Ah=Yr(),Eh=cr(),Ph=Qr();ms.MessageAttemptOutSerializer={_fromJsonObject(e){return{endpointId:e.endpointId,id:e.id,msg:e.msg!=null?Ah.MessageOutSerializer._fromJsonObject(e.msg):void 0,msgId:e.msgId,response:e.response,responseDurationMs:e.responseDurationMs,responseStatusCode:e.responseStatusCode,status:Eh.MessageStatusSerializer._fromJsonObject(e.status),statusText:Ph.MessageStatusTextSerializer._fromJsonObject(e.statusText),timestamp:new Date(e.timestamp),triggerType:kh.MessageAttemptTriggerTypeSerializer._fromJsonObject(e.triggerType),url:e.url}},_toJsonObject(e){return{endpointId:e.endpointId,id:e.id,msg:e.msg!=null?Ah.MessageOutSerializer._toJsonObject(e.msg):void 0,msgId:e.msgId,response:e.response,responseDurationMs:e.responseDurationMs,responseStatusCode:e.responseStatusCode,status:Eh.MessageStatusSerializer._toJsonObject(e.status),statusText:Ph.MessageStatusTextSerializer._toJsonObject(e.statusText),timestamp:e.timestamp,triggerType:kh.MessageAttemptTriggerTypeSerializer._toJsonObject(e.triggerType),url:e.url}}}});var Ih=f(ps=>{"use strict";Object.defineProperty(ps,"__esModule",{value:!0});ps.ListResponseMessageAttemptOutSerializer=void 0;var Th=yl();ps.ListResponseMessageAttemptOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Th.MessageAttemptOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Th.MessageAttemptOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Dh=f(fs=>{"use strict";Object.defineProperty(fs,"__esModule",{value:!0});fs.MessageEndpointOutSerializer=void 0;var $h=cr(),jh=Qr();fs.MessageEndpointOutSerializer={_fromJsonObject(e){return{channels:e.channels,createdAt:new Date(e.createdAt),description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,nextAttempt:e.nextAttempt?new Date(e.nextAttempt):null,rateLimit:e.rateLimit,status:$h.MessageStatusSerializer._fromJsonObject(e.status),statusText:jh.MessageStatusTextSerializer._fromJsonObject(e.statusText),throttleRate:e.throttleRate,uid:e.uid,updatedAt:new Date(e.updatedAt),url:e.url,version:e.version}},_toJsonObject(e){return{channels:e.channels,createdAt:e.createdAt,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,nextAttempt:e.nextAttempt,rateLimit:e.rateLimit,status:$h.MessageStatusSerializer._toJsonObject(e.status),statusText:jh.MessageStatusTextSerializer._toJsonObject(e.statusText),throttleRate:e.throttleRate,uid:e.uid,updatedAt:e.updatedAt,url:e.url,version:e.version}}}});var Rh=f(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.ListResponseMessageEndpointOutSerializer=void 0;var qh=Dh();hs.ListResponseMessageEndpointOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>qh.MessageEndpointOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>qh.MessageEndpointOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var zh=f(gs=>{"use strict";Object.defineProperty(gs,"__esModule",{value:!0});gs.MessageAttempt=void 0;var fO=_l(),hO=xh(),Mh=Ih(),gO=Rh(),bO=yl(),Je=ie(),Cl=class{constructor(t){this.requestCtx=t}listByEndpoint(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.GET,"/api/v1/app/{app_id}/attempt/endpoint/{endpoint_id}");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator,status:i?.status,status_code_class:i?.statusCodeClass,channel:i?.channel,tag:i?.tag,before:i?.before,after:i?.after,with_content:i?.withContent,with_msg:i?.withMsg,event_types:i?.eventTypes}),n.send(this.requestCtx,Mh.ListResponseMessageAttemptOutSerializer._fromJsonObject)}listByMsg(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.GET,"/api/v1/app/{app_id}/attempt/msg/{msg_id}");return n.setPathParam("app_id",t),n.setPathParam("msg_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator,status:i?.status,status_code_class:i?.statusCodeClass,channel:i?.channel,tag:i?.tag,endpoint_id:i?.endpointId,before:i?.before,after:i?.after,with_content:i?.withContent,event_types:i?.eventTypes}),n.send(this.requestCtx,Mh.ListResponseMessageAttemptOutSerializer._fromJsonObject)}listAttemptedMessages(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.GET,"/api/v1/app/{app_id}/endpoint/{endpoint_id}/msg");return n.setPathParam("app_id",t),n.setPathParam("endpoint_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator,channel:i?.channel,tag:i?.tag,status:i?.status,before:i?.before,after:i?.after,with_content:i?.withContent,event_types:i?.eventTypes}),n.send(this.requestCtx,hO.ListResponseEndpointMessageOutSerializer._fromJsonObject)}get(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.GET,"/api/v1/app/{app_id}/msg/{msg_id}/attempt/{attempt_id}");return n.setPathParam("app_id",t),n.setPathParam("msg_id",r),n.setPathParam("attempt_id",i),n.send(this.requestCtx,bO.MessageAttemptOutSerializer._fromJsonObject)}expungeContent(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.DELETE,"/api/v1/app/{app_id}/msg/{msg_id}/attempt/{attempt_id}/content");return n.setPathParam("app_id",t),n.setPathParam("msg_id",r),n.setPathParam("attempt_id",i),n.sendNoResponseBody(this.requestCtx)}listAttemptedDestinations(t,r,i){let n=new Je.SvixRequest(Je.HttpMethod.GET,"/api/v1/app/{app_id}/msg/{msg_id}/endpoint");return n.setPathParam("app_id",t),n.setPathParam("msg_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator}),n.send(this.requestCtx,gO.ListResponseMessageEndpointOutSerializer._fromJsonObject)}resend(t,r,i,n){let o=new Je.SvixRequest(Je.HttpMethod.POST,"/api/v1/app/{app_id}/msg/{msg_id}/endpoint/{endpoint_id}/resend");return o.setPathParam("app_id",t),o.setPathParam("msg_id",r),o.setPathParam("endpoint_id",i),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.send(this.requestCtx,fO.EmptyResponseSerializer._fromJsonObject)}};gs.MessageAttempt=Cl});var Ol=f(bs=>{"use strict";Object.defineProperty(bs,"__esModule",{value:!0});bs.OperationalWebhookEndpointOutSerializer=void 0;bs.OperationalWebhookEndpointOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,updatedAt:new Date(e.updatedAt),url:e.url}},_toJsonObject(e){return{createdAt:e.createdAt,description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,id:e.id,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,updatedAt:e.updatedAt,url:e.url}}}});var Fh=f(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});_s.ListResponseOperationalWebhookEndpointOutSerializer=void 0;var Jh=Ol();_s.ListResponseOperationalWebhookEndpointOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Jh.OperationalWebhookEndpointOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Jh.OperationalWebhookEndpointOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Hh=f(vs=>{"use strict";Object.defineProperty(vs,"__esModule",{value:!0});vs.OperationalWebhookEndpointHeadersInSerializer=void 0;vs.OperationalWebhookEndpointHeadersInSerializer={_fromJsonObject(e){return{headers:e.headers}},_toJsonObject(e){return{headers:e.headers}}}});var Bh=f(ys=>{"use strict";Object.defineProperty(ys,"__esModule",{value:!0});ys.OperationalWebhookEndpointHeadersOutSerializer=void 0;ys.OperationalWebhookEndpointHeadersOutSerializer={_fromJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}},_toJsonObject(e){return{headers:e.headers,sensitive:e.sensitive}}}});var Lh=f(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.OperationalWebhookEndpointInSerializer=void 0;Cs.OperationalWebhookEndpointInSerializer={_fromJsonObject(e){return{description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,uid:e.uid,url:e.url}},_toJsonObject(e){return{description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,secret:e.secret,uid:e.uid,url:e.url}}}});var Nh=f(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.OperationalWebhookEndpointSecretInSerializer=void 0;Os.OperationalWebhookEndpointSecretInSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var Gh=f(Ss=>{"use strict";Object.defineProperty(Ss,"__esModule",{value:!0});Ss.OperationalWebhookEndpointSecretOutSerializer=void 0;Ss.OperationalWebhookEndpointSecretOutSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var Uh=f(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});ws.OperationalWebhookEndpointUpdateSerializer=void 0;ws.OperationalWebhookEndpointUpdateSerializer={_fromJsonObject(e){return{description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,url:e.url}},_toJsonObject(e){return{description:e.description,disabled:e.disabled,filterTypes:e.filterTypes,metadata:e.metadata,rateLimit:e.rateLimit,uid:e.uid,url:e.url}}}});var xl=f(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});xs.OperationalWebhookEndpoint=void 0;var _O=Fh(),vO=Hh(),yO=Bh(),CO=Lh(),Sl=Ol(),OO=Nh(),SO=Gh(),wO=Uh(),_e=ie(),wl=class{constructor(t){this.requestCtx=t}list(t){let r=new _e.SvixRequest(_e.HttpMethod.GET,"/api/v1/operational-webhook/endpoint");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order}),r.send(this.requestCtx,_O.ListResponseOperationalWebhookEndpointOutSerializer._fromJsonObject)}create(t,r){let i=new _e.SvixRequest(_e.HttpMethod.POST,"/api/v1/operational-webhook/endpoint");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(CO.OperationalWebhookEndpointInSerializer._toJsonObject(t)),i.send(this.requestCtx,Sl.OperationalWebhookEndpointOutSerializer._fromJsonObject)}get(t){let r=new _e.SvixRequest(_e.HttpMethod.GET,"/api/v1/operational-webhook/endpoint/{endpoint_id}");return r.setPathParam("endpoint_id",t),r.send(this.requestCtx,Sl.OperationalWebhookEndpointOutSerializer._fromJsonObject)}update(t,r){let i=new _e.SvixRequest(_e.HttpMethod.PUT,"/api/v1/operational-webhook/endpoint/{endpoint_id}");return i.setPathParam("endpoint_id",t),i.setBody(wO.OperationalWebhookEndpointUpdateSerializer._toJsonObject(r)),i.send(this.requestCtx,Sl.OperationalWebhookEndpointOutSerializer._fromJsonObject)}delete(t){let r=new _e.SvixRequest(_e.HttpMethod.DELETE,"/api/v1/operational-webhook/endpoint/{endpoint_id}");return r.setPathParam("endpoint_id",t),r.sendNoResponseBody(this.requestCtx)}getHeaders(t){let r=new _e.SvixRequest(_e.HttpMethod.GET,"/api/v1/operational-webhook/endpoint/{endpoint_id}/headers");return r.setPathParam("endpoint_id",t),r.send(this.requestCtx,yO.OperationalWebhookEndpointHeadersOutSerializer._fromJsonObject)}updateHeaders(t,r){let i=new _e.SvixRequest(_e.HttpMethod.PUT,"/api/v1/operational-webhook/endpoint/{endpoint_id}/headers");return i.setPathParam("endpoint_id",t),i.setBody(vO.OperationalWebhookEndpointHeadersInSerializer._toJsonObject(r)),i.sendNoResponseBody(this.requestCtx)}getSecret(t){let r=new _e.SvixRequest(_e.HttpMethod.GET,"/api/v1/operational-webhook/endpoint/{endpoint_id}/secret");return r.setPathParam("endpoint_id",t),r.send(this.requestCtx,SO.OperationalWebhookEndpointSecretOutSerializer._fromJsonObject)}rotateSecret(t,r,i){let n=new _e.SvixRequest(_e.HttpMethod.POST,"/api/v1/operational-webhook/endpoint/{endpoint_id}/secret/rotate");return n.setPathParam("endpoint_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(OO.OperationalWebhookEndpointSecretInSerializer._toJsonObject(r)),n.sendNoResponseBody(this.requestCtx)}};xs.OperationalWebhookEndpoint=wl});var Wh=f(ks=>{"use strict";Object.defineProperty(ks,"__esModule",{value:!0});ks.OperationalWebhook=void 0;var xO=xl(),kl=class{constructor(t){this.requestCtx=t}get endpoint(){return new xO.OperationalWebhookEndpoint(this.requestCtx)}};ks.OperationalWebhook=kl});var Yh=f(As=>{"use strict";Object.defineProperty(As,"__esModule",{value:!0});As.AggregateEventTypesOutSerializer=void 0;var Vh=xt(),Kh=kt();As.AggregateEventTypesOutSerializer={_fromJsonObject(e){return{id:e.id,status:Vh.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:Kh.BackgroundTaskTypeSerializer._fromJsonObject(e.task),updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{id:e.id,status:Vh.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:Kh.BackgroundTaskTypeSerializer._toJsonObject(e.task),updatedAt:e.updatedAt}}}});var Qh=f(Es=>{"use strict";Object.defineProperty(Es,"__esModule",{value:!0});Es.AppUsageStatsInSerializer=void 0;Es.AppUsageStatsInSerializer={_fromJsonObject(e){return{appIds:e.appIds,since:new Date(e.since),until:new Date(e.until)}},_toJsonObject(e){return{appIds:e.appIds,since:e.since,until:e.until}}}});var eg=f(Ps=>{"use strict";Object.defineProperty(Ps,"__esModule",{value:!0});Ps.AppUsageStatsOutSerializer=void 0;var Zh=xt(),Xh=kt();Ps.AppUsageStatsOutSerializer={_fromJsonObject(e){return{id:e.id,status:Zh.BackgroundTaskStatusSerializer._fromJsonObject(e.status),task:Xh.BackgroundTaskTypeSerializer._fromJsonObject(e.task),unresolvedAppIds:e.unresolvedAppIds,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{id:e.id,status:Zh.BackgroundTaskStatusSerializer._toJsonObject(e.status),task:Xh.BackgroundTaskTypeSerializer._toJsonObject(e.task),unresolvedAppIds:e.unresolvedAppIds,updatedAt:e.updatedAt}}}});var tg=f(Is=>{"use strict";Object.defineProperty(Is,"__esModule",{value:!0});Is.Statistics=void 0;var kO=Yh(),AO=Qh(),EO=eg(),Ts=ie(),Al=class{constructor(t){this.requestCtx=t}aggregateAppStats(t,r){let i=new Ts.SvixRequest(Ts.HttpMethod.POST,"/api/v1/stats/usage/app");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(AO.AppUsageStatsInSerializer._toJsonObject(t)),i.send(this.requestCtx,EO.AppUsageStatsOutSerializer._fromJsonObject)}aggregateEventTypes(){return new Ts.SvixRequest(Ts.HttpMethod.PUT,"/api/v1/stats/usage/event-types").send(this.requestCtx,kO.AggregateEventTypesOutSerializer._fromJsonObject)}};Is.Statistics=Al});var rg=f($s=>{"use strict";Object.defineProperty($s,"__esModule",{value:!0});$s.HttpSinkHeadersPatchInSerializer=void 0;$s.HttpSinkHeadersPatchInSerializer={_fromJsonObject(e){return{headers:e.headers}},_toJsonObject(e){return{headers:e.headers}}}});var ig=f(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});js.SinkTransformationOutSerializer=void 0;js.SinkTransformationOutSerializer={_fromJsonObject(e){return{code:e.code,enabled:e.enabled}},_toJsonObject(e){return{code:e.code,enabled:e.enabled}}}});var El=f(Ds=>{"use strict";Object.defineProperty(Ds,"__esModule",{value:!0});Ds.StreamEventTypeOutSerializer=void 0;Ds.StreamEventTypeOutSerializer={_fromJsonObject(e){return{archived:e.archived,createdAt:new Date(e.createdAt),deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{archived:e.archived,createdAt:e.createdAt,deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name,updatedAt:e.updatedAt}}}});var og=f(qs=>{"use strict";Object.defineProperty(qs,"__esModule",{value:!0});qs.ListResponseStreamEventTypeOutSerializer=void 0;var ng=El();qs.ListResponseStreamEventTypeOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>ng.StreamEventTypeOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>ng.StreamEventTypeOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var sg=f(Rs=>{"use strict";Object.defineProperty(Rs,"__esModule",{value:!0});Rs.StreamEventTypeInSerializer=void 0;Rs.StreamEventTypeInSerializer={_fromJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name}},_toJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name}}}});var ag=f(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});Ms.StreamEventTypePatchSerializer=void 0;Ms.StreamEventTypePatchSerializer={_fromJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name}},_toJsonObject(e){return{archived:e.archived,deprecated:e.deprecated,description:e.description,featureFlags:e.featureFlags,name:e.name}}}});var lg=f(Js=>{"use strict";Object.defineProperty(Js,"__esModule",{value:!0});Js.StreamingEventType=void 0;var PO=og(),ug=sg(),zs=El(),TO=ag(),et=ie(),Pl=class{constructor(t){this.requestCtx=t}list(t){let r=new et.SvixRequest(et.HttpMethod.GET,"/api/v1/stream/event-type");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order,include_archived:t?.includeArchived}),r.send(this.requestCtx,PO.ListResponseStreamEventTypeOutSerializer._fromJsonObject)}create(t,r){let i=new et.SvixRequest(et.HttpMethod.POST,"/api/v1/stream/event-type");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(ug.StreamEventTypeInSerializer._toJsonObject(t)),i.send(this.requestCtx,zs.StreamEventTypeOutSerializer._fromJsonObject)}get(t){let r=new et.SvixRequest(et.HttpMethod.GET,"/api/v1/stream/event-type/{name}");return r.setPathParam("name",t),r.send(this.requestCtx,zs.StreamEventTypeOutSerializer._fromJsonObject)}update(t,r){let i=new et.SvixRequest(et.HttpMethod.PUT,"/api/v1/stream/event-type/{name}");return i.setPathParam("name",t),i.setBody(ug.StreamEventTypeInSerializer._toJsonObject(r)),i.send(this.requestCtx,zs.StreamEventTypeOutSerializer._fromJsonObject)}delete(t,r){let i=new et.SvixRequest(et.HttpMethod.DELETE,"/api/v1/stream/event-type/{name}");return i.setPathParam("name",t),i.setQueryParams({expunge:r?.expunge}),i.sendNoResponseBody(this.requestCtx)}patch(t,r){let i=new et.SvixRequest(et.HttpMethod.PATCH,"/api/v1/stream/event-type/{name}");return i.setPathParam("name",t),i.setBody(TO.StreamEventTypePatchSerializer._toJsonObject(r)),i.send(this.requestCtx,zs.StreamEventTypeOutSerializer._fromJsonObject)}};Js.StreamingEventType=Pl});var cg=f(Fs=>{"use strict";Object.defineProperty(Fs,"__esModule",{value:!0});Fs.EventInSerializer=void 0;Fs.EventInSerializer={_fromJsonObject(e){return{eventType:e.eventType,payload:e.payload}},_toJsonObject(e){return{eventType:e.eventType,payload:e.payload}}}});var Tl=f(Hs=>{"use strict";Object.defineProperty(Hs,"__esModule",{value:!0});Hs.StreamInSerializer=void 0;Hs.StreamInSerializer={_fromJsonObject(e){return{metadata:e.metadata,name:e.name,uid:e.uid}},_toJsonObject(e){return{metadata:e.metadata,name:e.name,uid:e.uid}}}});var pg=f(Bs=>{"use strict";Object.defineProperty(Bs,"__esModule",{value:!0});Bs.CreateStreamEventsInSerializer=void 0;var dg=cg(),mg=Tl();Bs.CreateStreamEventsInSerializer={_fromJsonObject(e){return{events:e.events.map(t=>dg.EventInSerializer._fromJsonObject(t)),stream:e.stream!=null?mg.StreamInSerializer._fromJsonObject(e.stream):void 0}},_toJsonObject(e){return{events:e.events.map(t=>dg.EventInSerializer._toJsonObject(t)),stream:e.stream!=null?mg.StreamInSerializer._toJsonObject(e.stream):void 0}}}});var fg=f(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.CreateStreamEventsOutSerializer=void 0;Ls.CreateStreamEventsOutSerializer={_fromJsonObject(e){return{}},_toJsonObject(e){return{}}}});var hg=f(Ns=>{"use strict";Object.defineProperty(Ns,"__esModule",{value:!0});Ns.EventOutSerializer=void 0;Ns.EventOutSerializer={_fromJsonObject(e){return{eventType:e.eventType,payload:e.payload,timestamp:new Date(e.timestamp)}},_toJsonObject(e){return{eventType:e.eventType,payload:e.payload,timestamp:e.timestamp}}}});var bg=f(Gs=>{"use strict";Object.defineProperty(Gs,"__esModule",{value:!0});Gs.EventStreamOutSerializer=void 0;var gg=hg();Gs.EventStreamOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>gg.EventOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator}},_toJsonObject(e){return{data:e.data.map(t=>gg.EventOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator}}}});var _g=f(Ws=>{"use strict";Object.defineProperty(Ws,"__esModule",{value:!0});Ws.StreamingEvents=void 0;var IO=pg(),$O=fg(),jO=bg(),Us=ie(),Il=class{constructor(t){this.requestCtx=t}create(t,r,i){let n=new Us.SvixRequest(Us.HttpMethod.POST,"/api/v1/stream/{stream_id}/events");return n.setPathParam("stream_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(IO.CreateStreamEventsInSerializer._toJsonObject(r)),n.send(this.requestCtx,$O.CreateStreamEventsOutSerializer._fromJsonObject)}get(t,r,i){let n=new Us.SvixRequest(Us.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink/{sink_id}/events");return n.setPathParam("stream_id",t),n.setPathParam("sink_id",r),n.setQueryParams({limit:i?.limit,iterator:i?.iterator,after:i?.after}),n.send(this.requestCtx,jO.EventStreamOutSerializer._fromJsonObject)}};Ws.StreamingEvents=Il});var $l=f(Vs=>{"use strict";Object.defineProperty(Vs,"__esModule",{value:!0});Vs.AzureBlobStorageConfigSerializer=void 0;Vs.AzureBlobStorageConfigSerializer={_fromJsonObject(e){return{accessKey:e.accessKey,account:e.account,container:e.container}},_toJsonObject(e){return{accessKey:e.accessKey,account:e.account,container:e.container}}}});var jl=f(Ks=>{"use strict";Object.defineProperty(Ks,"__esModule",{value:!0});Ks.GoogleCloudStorageConfigSerializer=void 0;Ks.GoogleCloudStorageConfigSerializer={_fromJsonObject(e){return{bucket:e.bucket,credentials:e.credentials}},_toJsonObject(e){return{bucket:e.bucket,credentials:e.credentials}}}});var Dl=f(Ys=>{"use strict";Object.defineProperty(Ys,"__esModule",{value:!0});Ys.S3ConfigSerializer=void 0;Ys.S3ConfigSerializer={_fromJsonObject(e){return{accessKeyId:e.accessKeyId,bucket:e.bucket,endpointUrl:e.endpointUrl,region:e.region,secretAccessKey:e.secretAccessKey}},_toJsonObject(e){return{accessKeyId:e.accessKeyId,bucket:e.bucket,endpointUrl:e.endpointUrl,region:e.region,secretAccessKey:e.secretAccessKey}}}});var ql=f(Qs=>{"use strict";Object.defineProperty(Qs,"__esModule",{value:!0});Qs.SinkHttpConfigSerializer=void 0;Qs.SinkHttpConfigSerializer={_fromJsonObject(e){return{headers:e.headers,key:e.key,url:e.url}},_toJsonObject(e){return{headers:e.headers,key:e.key,url:e.url}}}});var Rl=f(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.SinkOtelV1ConfigSerializer=void 0;Zs.SinkOtelV1ConfigSerializer={_fromJsonObject(e){return{headers:e.headers,url:e.url}},_toJsonObject(e){return{headers:e.headers,url:e.url}}}});var Ml=f(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.SinkStatusSerializer=Kt.SinkStatus=void 0;var DO;(function(e){e.Enabled="enabled",e.Paused="paused",e.Disabled="disabled",e.Retrying="retrying"})(DO=Kt.SinkStatus||(Kt.SinkStatus={}));Kt.SinkStatusSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var zl=f(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.StreamSinkOutSerializer=void 0;var vg=$l(),yg=jl(),Cg=Dl(),Og=ql(),Sg=Rl(),wg=Ml();Xs.StreamSinkOutSerializer={_fromJsonObject(e){let t=e.type;function r(i){switch(i){case"poller":return{};case"azureBlobStorage":return vg.AzureBlobStorageConfigSerializer._fromJsonObject(e.config);case"otelTracing":return Sg.SinkOtelV1ConfigSerializer._fromJsonObject(e.config);case"http":return Og.SinkHttpConfigSerializer._fromJsonObject(e.config);case"amazonS3":return Cg.S3ConfigSerializer._fromJsonObject(e.config);case"googleCloudStorage":return yg.GoogleCloudStorageConfigSerializer._fromJsonObject(e.config);default:throw new Error(`Unexpected type: ${i}`)}}return{type:t,config:r(t),batchSize:e.batchSize,createdAt:new Date(e.createdAt),currentIterator:e.currentIterator,eventTypes:e.eventTypes,failureReason:e.failureReason,id:e.id,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,nextRetryAt:e.nextRetryAt?new Date(e.nextRetryAt):null,status:wg.SinkStatusSerializer._fromJsonObject(e.status),uid:e.uid,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){let t;switch(e.type){case"poller":t={};break;case"azureBlobStorage":t=vg.AzureBlobStorageConfigSerializer._toJsonObject(e.config);break;case"otelTracing":t=Sg.SinkOtelV1ConfigSerializer._toJsonObject(e.config);break;case"http":t=Og.SinkHttpConfigSerializer._toJsonObject(e.config);break;case"amazonS3":t=Cg.S3ConfigSerializer._toJsonObject(e.config);break;case"googleCloudStorage":t=yg.GoogleCloudStorageConfigSerializer._toJsonObject(e.config);break}return{type:e.type,config:t,batchSize:e.batchSize,createdAt:e.createdAt,currentIterator:e.currentIterator,eventTypes:e.eventTypes,failureReason:e.failureReason,id:e.id,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,nextRetryAt:e.nextRetryAt,status:wg.SinkStatusSerializer._toJsonObject(e.status),uid:e.uid,updatedAt:e.updatedAt}}}});var kg=f(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.ListResponseStreamSinkOutSerializer=void 0;var xg=zl();ea.ListResponseStreamSinkOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>xg.StreamSinkOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>xg.StreamSinkOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Ag=f(ta=>{"use strict";Object.defineProperty(ta,"__esModule",{value:!0});ta.SinkSecretOutSerializer=void 0;ta.SinkSecretOutSerializer={_fromJsonObject(e){return{key:e.key}},_toJsonObject(e){return{key:e.key}}}});var Eg=f(ra=>{"use strict";Object.defineProperty(ra,"__esModule",{value:!0});ra.SinkTransformInSerializer=void 0;ra.SinkTransformInSerializer={_fromJsonObject(e){return{code:e.code}},_toJsonObject(e){return{code:e.code}}}});var ia=f(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.SinkStatusInSerializer=Yt.SinkStatusIn=void 0;var qO;(function(e){e.Enabled="enabled",e.Disabled="disabled"})(qO=Yt.SinkStatusIn||(Yt.SinkStatusIn={}));Yt.SinkStatusInSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var qg=f(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});na.StreamSinkInSerializer=void 0;var Pg=$l(),Tg=jl(),Ig=Dl(),$g=ql(),jg=Rl(),Dg=ia();na.StreamSinkInSerializer={_fromJsonObject(e){let t=e.type;function r(i){switch(i){case"poller":return{};case"azureBlobStorage":return Pg.AzureBlobStorageConfigSerializer._fromJsonObject(e.config);case"otelTracing":return jg.SinkOtelV1ConfigSerializer._fromJsonObject(e.config);case"http":return $g.SinkHttpConfigSerializer._fromJsonObject(e.config);case"amazonS3":return Ig.S3ConfigSerializer._fromJsonObject(e.config);case"googleCloudStorage":return Tg.GoogleCloudStorageConfigSerializer._fromJsonObject(e.config);default:throw new Error(`Unexpected type: ${i}`)}}return{type:t,config:r(t),batchSize:e.batchSize,eventTypes:e.eventTypes,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,status:e.status!=null?Dg.SinkStatusInSerializer._fromJsonObject(e.status):void 0,uid:e.uid}},_toJsonObject(e){let t;switch(e.type){case"poller":t={};break;case"azureBlobStorage":t=Pg.AzureBlobStorageConfigSerializer._toJsonObject(e.config);break;case"otelTracing":t=jg.SinkOtelV1ConfigSerializer._toJsonObject(e.config);break;case"http":t=$g.SinkHttpConfigSerializer._toJsonObject(e.config);break;case"amazonS3":t=Ig.S3ConfigSerializer._toJsonObject(e.config);break;case"googleCloudStorage":t=Tg.GoogleCloudStorageConfigSerializer._toJsonObject(e.config);break}return{type:e.type,config:t,batchSize:e.batchSize,eventTypes:e.eventTypes,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,status:e.status!=null?Dg.SinkStatusInSerializer._toJsonObject(e.status):void 0,uid:e.uid}}}});var Rg=f(oa=>{"use strict";Object.defineProperty(oa,"__esModule",{value:!0});oa.AmazonS3PatchConfigSerializer=void 0;oa.AmazonS3PatchConfigSerializer={_fromJsonObject(e){return{accessKeyId:e.accessKeyId,bucket:e.bucket,endpointUrl:e.endpointUrl,region:e.region,secretAccessKey:e.secretAccessKey}},_toJsonObject(e){return{accessKeyId:e.accessKeyId,bucket:e.bucket,endpointUrl:e.endpointUrl,region:e.region,secretAccessKey:e.secretAccessKey}}}});var Mg=f(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.AzureBlobStoragePatchConfigSerializer=void 0;sa.AzureBlobStoragePatchConfigSerializer={_fromJsonObject(e){return{accessKey:e.accessKey,account:e.account,container:e.container}},_toJsonObject(e){return{accessKey:e.accessKey,account:e.account,container:e.container}}}});var zg=f(aa=>{"use strict";Object.defineProperty(aa,"__esModule",{value:!0});aa.GoogleCloudStoragePatchConfigSerializer=void 0;aa.GoogleCloudStoragePatchConfigSerializer={_fromJsonObject(e){return{bucket:e.bucket,credentials:e.credentials}},_toJsonObject(e){return{bucket:e.bucket,credentials:e.credentials}}}});var Jg=f(ua=>{"use strict";Object.defineProperty(ua,"__esModule",{value:!0});ua.HttpPatchConfigSerializer=void 0;ua.HttpPatchConfigSerializer={_fromJsonObject(e){return{url:e.url}},_toJsonObject(e){return{url:e.url}}}});var Fg=f(la=>{"use strict";Object.defineProperty(la,"__esModule",{value:!0});la.OtelTracingPatchConfigSerializer=void 0;la.OtelTracingPatchConfigSerializer={_fromJsonObject(e){return{url:e.url}},_toJsonObject(e){return{url:e.url}}}});var Wg=f(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.StreamSinkPatchSerializer=void 0;var Hg=Rg(),Bg=Mg(),Lg=zg(),Ng=Jg(),Gg=Fg(),Ug=ia();ca.StreamSinkPatchSerializer={_fromJsonObject(e){let t=e.type;function r(i){switch(i){case"poller":return{};case"azureBlobStorage":return Bg.AzureBlobStoragePatchConfigSerializer._fromJsonObject(e.config);case"otelTracing":return Gg.OtelTracingPatchConfigSerializer._fromJsonObject(e.config);case"http":return Ng.HttpPatchConfigSerializer._fromJsonObject(e.config);case"amazonS3":return Hg.AmazonS3PatchConfigSerializer._fromJsonObject(e.config);case"googleCloudStorage":return Lg.GoogleCloudStoragePatchConfigSerializer._fromJsonObject(e.config);default:throw new Error(`Unexpected type: ${i}`)}}return{type:t,config:r(t),batchSize:e.batchSize,eventTypes:e.eventTypes,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,status:e.status!=null?Ug.SinkStatusInSerializer._fromJsonObject(e.status):void 0,uid:e.uid}},_toJsonObject(e){let t;switch(e.type){case"poller":t={};break;case"azureBlobStorage":t=Bg.AzureBlobStoragePatchConfigSerializer._toJsonObject(e.config);break;case"otelTracing":t=Gg.OtelTracingPatchConfigSerializer._toJsonObject(e.config);break;case"http":t=Ng.HttpPatchConfigSerializer._toJsonObject(e.config);break;case"amazonS3":t=Hg.AmazonS3PatchConfigSerializer._toJsonObject(e.config);break;case"googleCloudStorage":t=Lg.GoogleCloudStoragePatchConfigSerializer._toJsonObject(e.config);break}return{type:e.type,config:t,batchSize:e.batchSize,eventTypes:e.eventTypes,maxWaitSecs:e.maxWaitSecs,metadata:e.metadata,status:e.status!=null?Ug.SinkStatusInSerializer._toJsonObject(e.status):void 0,uid:e.uid}}}});var Yg=f(ma=>{"use strict";Object.defineProperty(ma,"__esModule",{value:!0});ma.StreamingSink=void 0;var Vg=_l(),RO=Zu(),MO=kg(),zO=Ag(),JO=Eg(),Kg=qg(),da=zl(),FO=Wg(),ve=ie(),Jl=class{constructor(t){this.requestCtx=t}list(t,r){let i=new ve.SvixRequest(ve.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink");return i.setPathParam("stream_id",t),i.setQueryParams({limit:r?.limit,iterator:r?.iterator,order:r?.order}),i.send(this.requestCtx,MO.ListResponseStreamSinkOutSerializer._fromJsonObject)}create(t,r,i){let n=new ve.SvixRequest(ve.HttpMethod.POST,"/api/v1/stream/{stream_id}/sink");return n.setPathParam("stream_id",t),n.setHeaderParam("idempotency-key",i?.idempotencyKey),n.setBody(Kg.StreamSinkInSerializer._toJsonObject(r)),n.send(this.requestCtx,da.StreamSinkOutSerializer._fromJsonObject)}get(t,r){let i=new ve.SvixRequest(ve.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink/{sink_id}");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.send(this.requestCtx,da.StreamSinkOutSerializer._fromJsonObject)}update(t,r,i){let n=new ve.SvixRequest(ve.HttpMethod.PUT,"/api/v1/stream/{stream_id}/sink/{sink_id}");return n.setPathParam("stream_id",t),n.setPathParam("sink_id",r),n.setBody(Kg.StreamSinkInSerializer._toJsonObject(i)),n.send(this.requestCtx,da.StreamSinkOutSerializer._fromJsonObject)}delete(t,r){let i=new ve.SvixRequest(ve.HttpMethod.DELETE,"/api/v1/stream/{stream_id}/sink/{sink_id}");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.sendNoResponseBody(this.requestCtx)}patch(t,r,i){let n=new ve.SvixRequest(ve.HttpMethod.PATCH,"/api/v1/stream/{stream_id}/sink/{sink_id}");return n.setPathParam("stream_id",t),n.setPathParam("sink_id",r),n.setBody(FO.StreamSinkPatchSerializer._toJsonObject(i)),n.send(this.requestCtx,da.StreamSinkOutSerializer._fromJsonObject)}getSecret(t,r){let i=new ve.SvixRequest(ve.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink/{sink_id}/secret");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.send(this.requestCtx,zO.SinkSecretOutSerializer._fromJsonObject)}rotateSecret(t,r,i,n){let o=new ve.SvixRequest(ve.HttpMethod.POST,"/api/v1/stream/{stream_id}/sink/{sink_id}/secret/rotate");return o.setPathParam("stream_id",t),o.setPathParam("sink_id",r),o.setHeaderParam("idempotency-key",n?.idempotencyKey),o.setBody(RO.EndpointSecretRotateInSerializer._toJsonObject(i)),o.send(this.requestCtx,Vg.EmptyResponseSerializer._fromJsonObject)}transformationPartialUpdate(t,r,i){let n=new ve.SvixRequest(ve.HttpMethod.PATCH,"/api/v1/stream/{stream_id}/sink/{sink_id}/transformation");return n.setPathParam("stream_id",t),n.setPathParam("sink_id",r),n.setBody(JO.SinkTransformInSerializer._toJsonObject(i)),n.send(this.requestCtx,Vg.EmptyResponseSerializer._fromJsonObject)}};ma.StreamingSink=Jl});var Fl=f(pa=>{"use strict";Object.defineProperty(pa,"__esModule",{value:!0});pa.StreamOutSerializer=void 0;pa.StreamOutSerializer={_fromJsonObject(e){return{createdAt:new Date(e.createdAt),id:e.id,metadata:e.metadata,name:e.name,uid:e.uid,updatedAt:new Date(e.updatedAt)}},_toJsonObject(e){return{createdAt:e.createdAt,id:e.id,metadata:e.metadata,name:e.name,uid:e.uid,updatedAt:e.updatedAt}}}});var Zg=f(fa=>{"use strict";Object.defineProperty(fa,"__esModule",{value:!0});fa.ListResponseStreamOutSerializer=void 0;var Qg=Fl();fa.ListResponseStreamOutSerializer={_fromJsonObject(e){return{data:e.data.map(t=>Qg.StreamOutSerializer._fromJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}},_toJsonObject(e){return{data:e.data.map(t=>Qg.StreamOutSerializer._toJsonObject(t)),done:e.done,iterator:e.iterator,prevIterator:e.prevIterator}}}});var Xg=f(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.StreamPatchSerializer=void 0;ha.StreamPatchSerializer={_fromJsonObject(e){return{description:e.description,metadata:e.metadata,uid:e.uid}},_toJsonObject(e){return{description:e.description,metadata:e.metadata,uid:e.uid}}}});var tb=f(ba=>{"use strict";Object.defineProperty(ba,"__esModule",{value:!0});ba.StreamingStream=void 0;var HO=Zg(),eb=Tl(),ga=Fl(),BO=Xg(),tt=ie(),Hl=class{constructor(t){this.requestCtx=t}list(t){let r=new tt.SvixRequest(tt.HttpMethod.GET,"/api/v1/stream");return r.setQueryParams({limit:t?.limit,iterator:t?.iterator,order:t?.order}),r.send(this.requestCtx,HO.ListResponseStreamOutSerializer._fromJsonObject)}create(t,r){let i=new tt.SvixRequest(tt.HttpMethod.POST,"/api/v1/stream");return i.setHeaderParam("idempotency-key",r?.idempotencyKey),i.setBody(eb.StreamInSerializer._toJsonObject(t)),i.send(this.requestCtx,ga.StreamOutSerializer._fromJsonObject)}get(t){let r=new tt.SvixRequest(tt.HttpMethod.GET,"/api/v1/stream/{stream_id}");return r.setPathParam("stream_id",t),r.send(this.requestCtx,ga.StreamOutSerializer._fromJsonObject)}update(t,r){let i=new tt.SvixRequest(tt.HttpMethod.PUT,"/api/v1/stream/{stream_id}");return i.setPathParam("stream_id",t),i.setBody(eb.StreamInSerializer._toJsonObject(r)),i.send(this.requestCtx,ga.StreamOutSerializer._fromJsonObject)}delete(t){let r=new tt.SvixRequest(tt.HttpMethod.DELETE,"/api/v1/stream/{stream_id}");return r.setPathParam("stream_id",t),r.sendNoResponseBody(this.requestCtx)}patch(t,r){let i=new tt.SvixRequest(tt.HttpMethod.PATCH,"/api/v1/stream/{stream_id}");return i.setPathParam("stream_id",t),i.setBody(BO.StreamPatchSerializer._toJsonObject(r)),i.send(this.requestCtx,ga.StreamOutSerializer._fromJsonObject)}};ba.StreamingStream=Hl});var ib=f(_a=>{"use strict";Object.defineProperty(_a,"__esModule",{value:!0});_a.Streaming=void 0;var rb=Yu(),LO=rg(),NO=ig(),GO=lg(),UO=_g(),WO=Yg(),VO=tb(),pr=ie(),Bl=class{constructor(t){this.requestCtx=t}get event_type(){return new GO.StreamingEventType(this.requestCtx)}get events(){return new UO.StreamingEvents(this.requestCtx)}get sink(){return new WO.StreamingSink(this.requestCtx)}get stream(){return new VO.StreamingStream(this.requestCtx)}sinkHeadersGet(t,r){let i=new pr.SvixRequest(pr.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink/{sink_id}/headers");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.send(this.requestCtx,rb.EndpointHeadersOutSerializer._fromJsonObject)}sinkHeadersPatch(t,r,i){let n=new pr.SvixRequest(pr.HttpMethod.PATCH,"/api/v1/stream/{stream_id}/sink/{sink_id}/headers");return n.setPathParam("stream_id",t),n.setPathParam("sink_id",r),n.setBody(LO.HttpSinkHeadersPatchInSerializer._toJsonObject(i)),n.send(this.requestCtx,rb.EndpointHeadersOutSerializer._fromJsonObject)}sinkTransformationGet(t,r){let i=new pr.SvixRequest(pr.HttpMethod.GET,"/api/v1/stream/{stream_id}/sink/{sink_id}/transformation");return i.setPathParam("stream_id",t),i.setPathParam("sink_id",r),i.send(this.requestCtx,NO.SinkTransformationOutSerializer._fromJsonObject)}};_a.Streaming=Bl});var nb=f(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.HTTPValidationError=At.ValidationError=At.HttpErrorOut=void 0;var fr=class e{static getAttributeTypeMap(){return e.attributeTypeMap}};At.HttpErrorOut=fr;fr.discriminator=void 0;fr.mapping=void 0;fr.attributeTypeMap=[{name:"code",baseName:"code",type:"string",format:""},{name:"detail",baseName:"detail",type:"string",format:""}];var hr=class e{static getAttributeTypeMap(){return e.attributeTypeMap}};At.ValidationError=hr;hr.discriminator=void 0;hr.mapping=void 0;hr.attributeTypeMap=[{name:"loc",baseName:"loc",type:"Array<string>",format:""},{name:"msg",baseName:"msg",type:"string",format:""},{name:"type",baseName:"type",type:"string",format:""}];var gr=class e{static getAttributeTypeMap(){return e.attributeTypeMap}};At.HTTPValidationError=gr;gr.discriminator=void 0;gr.mapping=void 0;gr.attributeTypeMap=[{name:"detail",baseName:"detail",type:"Array<ValidationError>",format:""}]});var sb=f(va=>{"use strict";Object.defineProperty(va,"__esModule",{value:!0});va.timingSafeEqual=void 0;function ob(e,t=""){if(!e)throw new Error(t)}function KO(e,t){if(e.byteLength!==t.byteLength)return!1;e instanceof DataView||(e=new DataView(ArrayBuffer.isView(e)?e.buffer:e)),t instanceof DataView||(t=new DataView(ArrayBuffer.isView(t)?t.buffer:t)),ob(e instanceof DataView),ob(t instanceof DataView);let r=e.byteLength,i=0,n=-1;for(;++n<r;)i|=e.getUint8(n)^t.getUint8(n);return i===0}va.timingSafeEqual=KO});var lb=f(Ge=>{"use strict";var YO=Ge&&Ge.__extends||(function(){var e=function(t,r){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var o in n)n.hasOwnProperty(o)&&(i[o]=n[o])},e(t,r)};return function(t,r){e(t,r);function i(){this.constructor=t}t.prototype=r===null?Object.create(r):(i.prototype=r.prototype,new i)}})();Object.defineProperty(Ge,"__esModule",{value:!0});var ce=256,Ll=(function(){function e(t){t===void 0&&(t="="),this._paddingCharacter=t}return e.prototype.encodedLength=function(t){return this._paddingCharacter?(t+2)/3*4|0:(t*8+5)/6|0},e.prototype.encode=function(t){for(var r="",i=0;i<t.length-2;i+=3){var n=t[i]<<16|t[i+1]<<8|t[i+2];r+=this._encodeByte(n>>>18&63),r+=this._encodeByte(n>>>12&63),r+=this._encodeByte(n>>>6&63),r+=this._encodeByte(n>>>0&63)}var o=t.length-i;if(o>0){var n=t[i]<<16|(o===2?t[i+1]<<8:0);r+=this._encodeByte(n>>>18&63),r+=this._encodeByte(n>>>12&63),o===2?r+=this._encodeByte(n>>>6&63):r+=this._paddingCharacter||"",r+=this._paddingCharacter||""}return r},e.prototype.maxDecodedLength=function(t){return this._paddingCharacter?t/4*3|0:(t*6+7)/8|0},e.prototype.decodedLength=function(t){return this.maxDecodedLength(t.length-this._getPaddingLength(t))},e.prototype.decode=function(t){if(t.length===0)return new Uint8Array(0);for(var r=this._getPaddingLength(t),i=t.length-r,n=new Uint8Array(this.maxDecodedLength(i)),o=0,s=0,a=0,u=0,d=0,l=0,c=0;s<i-4;s+=4)u=this._decodeChar(t.charCodeAt(s+0)),d=this._decodeChar(t.charCodeAt(s+1)),l=this._decodeChar(t.charCodeAt(s+2)),c=this._decodeChar(t.charCodeAt(s+3)),n[o++]=u<<2|d>>>4,n[o++]=d<<4|l>>>2,n[o++]=l<<6|c,a|=u&ce,a|=d&ce,a|=l&ce,a|=c&ce;if(s<i-1&&(u=this._decodeChar(t.charCodeAt(s)),d=this._decodeChar(t.charCodeAt(s+1)),n[o++]=u<<2|d>>>4,a|=u&ce,a|=d&ce),s<i-2&&(l=this._decodeChar(t.charCodeAt(s+2)),n[o++]=d<<4|l>>>2,a|=l&ce),s<i-3&&(c=this._decodeChar(t.charCodeAt(s+3)),n[o++]=l<<6|c,a|=c&ce),a!==0)throw new Error("Base64Coder: incorrect characters for decoding");return n},e.prototype._encodeByte=function(t){var r=t;return r+=65,r+=25-t>>>8&6,r+=51-t>>>8&-75,r+=61-t>>>8&-15,r+=62-t>>>8&3,String.fromCharCode(r)},e.prototype._decodeChar=function(t){var r=ce;return r+=(42-t&t-44)>>>8&-ce+t-43+62,r+=(46-t&t-48)>>>8&-ce+t-47+63,r+=(47-t&t-58)>>>8&-ce+t-48+52,r+=(64-t&t-91)>>>8&-ce+t-65+0,r+=(96-t&t-123)>>>8&-ce+t-97+26,r},e.prototype._getPaddingLength=function(t){var r=0;if(this._paddingCharacter){for(var i=t.length-1;i>=0&&t[i]===this._paddingCharacter;i--)r++;if(t.length<4||r>2)throw new Error("Base64Coder: incorrect padding")}return r},e})();Ge.Coder=Ll;var Zr=new Ll;function QO(e){return Zr.encode(e)}Ge.encode=QO;function ZO(e){return Zr.decode(e)}Ge.decode=ZO;var ab=(function(e){YO(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype._encodeByte=function(r){var i=r;return i+=65,i+=25-r>>>8&6,i+=51-r>>>8&-75,i+=61-r>>>8&-13,i+=62-r>>>8&49,String.fromCharCode(i)},t.prototype._decodeChar=function(r){var i=ce;return i+=(44-r&r-46)>>>8&-ce+r-45+62,i+=(94-r&r-96)>>>8&-ce+r-95+63,i+=(47-r&r-58)>>>8&-ce+r-48+52,i+=(64-r&r-91)>>>8&-ce+r-65+0,i+=(96-r&r-123)>>>8&-ce+r-97+26,i},t})(Ll);Ge.URLSafeCoder=ab;var ub=new ab;function XO(e){return ub.encode(e)}Ge.encodeURLSafe=XO;function eS(e){return ub.decode(e)}Ge.decodeURLSafe=eS;Ge.encodedLength=function(e){return Zr.encodedLength(e)};Ge.maxDecodedLength=function(e){return Zr.maxDecodedLength(e)};Ge.decodedLength=function(e){return Zr.decodedLength(e)}});var db=f((cb,ya)=>{(function(e,t){var r={};t(r);var i=r.default;for(var n in r)i[n]=r[n];typeof ya=="object"&&typeof ya.exports=="object"?ya.exports=i:typeof define=="function"&&define.amd?define(function(){return i}):e.sha256=i})(cb,function(e){"use strict";e.__esModule=!0,e.digestLength=32,e.blockSize=64;var t=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function r(c,m,v,b,_){for(var S,x,w,A,M,P,$,I,E,j,Ae,oe,qt;_>=64;){for(S=m[0],x=m[1],w=m[2],A=m[3],M=m[4],P=m[5],$=m[6],I=m[7],j=0;j<16;j++)Ae=b+j*4,c[j]=(v[Ae]&255)<<24|(v[Ae+1]&255)<<16|(v[Ae+2]&255)<<8|v[Ae+3]&255;for(j=16;j<64;j++)E=c[j-2],oe=(E>>>17|E<<15)^(E>>>19|E<<13)^E>>>10,E=c[j-15],qt=(E>>>7|E<<25)^(E>>>18|E<<14)^E>>>3,c[j]=(oe+c[j-7]|0)+(qt+c[j-16]|0);for(j=0;j<64;j++)oe=(((M>>>6|M<<26)^(M>>>11|M<<21)^(M>>>25|M<<7))+(M&P^~M&$)|0)+(I+(t[j]+c[j]|0)|0)|0,qt=((S>>>2|S<<30)^(S>>>13|S<<19)^(S>>>22|S<<10))+(S&x^S&w^x&w)|0,I=$,$=P,P=M,M=A+oe|0,A=w,w=x,x=S,S=oe+qt|0;m[0]+=S,m[1]+=x,m[2]+=w,m[3]+=A,m[4]+=M,m[5]+=P,m[6]+=$,m[7]+=I,b+=64,_-=64}return b}var i=(function(){function c(){this.digestLength=e.digestLength,this.blockSize=e.blockSize,this.state=new Int32Array(8),this.temp=new Int32Array(64),this.buffer=new Uint8Array(128),this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this.reset()}return c.prototype.reset=function(){return this.state[0]=1779033703,this.state[1]=3144134277,this.state[2]=1013904242,this.state[3]=2773480762,this.state[4]=1359893119,this.state[5]=2600822924,this.state[6]=528734635,this.state[7]=1541459225,this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this},c.prototype.clean=function(){for(var m=0;m<this.buffer.length;m++)this.buffer[m]=0;for(var m=0;m<this.temp.length;m++)this.temp[m]=0;this.reset()},c.prototype.update=function(m,v){if(v===void 0&&(v=m.length),this.finished)throw new Error("SHA256: can't update because hash was finished.");var b=0;if(this.bytesHashed+=v,this.bufferLength>0){for(;this.bufferLength<64&&v>0;)this.buffer[this.bufferLength++]=m[b++],v--;this.bufferLength===64&&(r(this.temp,this.state,this.buffer,0,64),this.bufferLength=0)}for(v>=64&&(b=r(this.temp,this.state,m,b,v),v%=64);v>0;)this.buffer[this.bufferLength++]=m[b++],v--;return this},c.prototype.finish=function(m){if(!this.finished){var v=this.bytesHashed,b=this.bufferLength,_=v/536870912|0,S=v<<3,x=v%64<56?64:128;this.buffer[b]=128;for(var w=b+1;w<x-8;w++)this.buffer[w]=0;this.buffer[x-8]=_>>>24&255,this.buffer[x-7]=_>>>16&255,this.buffer[x-6]=_>>>8&255,this.buffer[x-5]=_>>>0&255,this.buffer[x-4]=S>>>24&255,this.buffer[x-3]=S>>>16&255,this.buffer[x-2]=S>>>8&255,this.buffer[x-1]=S>>>0&255,r(this.temp,this.state,this.buffer,0,x),this.finished=!0}for(var w=0;w<8;w++)m[w*4+0]=this.state[w]>>>24&255,m[w*4+1]=this.state[w]>>>16&255,m[w*4+2]=this.state[w]>>>8&255,m[w*4+3]=this.state[w]>>>0&255;return this},c.prototype.digest=function(){var m=new Uint8Array(this.digestLength);return this.finish(m),m},c.prototype._saveState=function(m){for(var v=0;v<this.state.length;v++)m[v]=this.state[v]},c.prototype._restoreState=function(m,v){for(var b=0;b<this.state.length;b++)this.state[b]=m[b];this.bytesHashed=v,this.finished=!1,this.bufferLength=0},c})();e.Hash=i;var n=(function(){function c(m){this.inner=new i,this.outer=new i,this.blockSize=this.inner.blockSize,this.digestLength=this.inner.digestLength;var v=new Uint8Array(this.blockSize);if(m.length>this.blockSize)new i().update(m).finish(v).clean();else for(var b=0;b<m.length;b++)v[b]=m[b];for(var b=0;b<v.length;b++)v[b]^=54;this.inner.update(v);for(var b=0;b<v.length;b++)v[b]^=106;this.outer.update(v),this.istate=new Uint32Array(8),this.ostate=new Uint32Array(8),this.inner._saveState(this.istate),this.outer._saveState(this.ostate);for(var b=0;b<v.length;b++)v[b]=0}return c.prototype.reset=function(){return this.inner._restoreState(this.istate,this.inner.blockSize),this.outer._restoreState(this.ostate,this.outer.blockSize),this},c.prototype.clean=function(){for(var m=0;m<this.istate.length;m++)this.ostate[m]=this.istate[m]=0;this.inner.clean(),this.outer.clean()},c.prototype.update=function(m){return this.inner.update(m),this},c.prototype.finish=function(m){return this.outer.finished?this.outer.finish(m):(this.inner.finish(m),this.outer.update(m,this.digestLength).finish(m)),this},c.prototype.digest=function(){var m=new Uint8Array(this.digestLength);return this.finish(m),m},c})();e.HMAC=n;function o(c){var m=new i().update(c),v=m.digest();return m.clean(),v}e.hash=o,e.default=o;function s(c,m){var v=new n(c).update(m),b=v.digest();return v.clean(),b}e.hmac=s;function a(c,m,v,b){var _=b[0];if(_===0)throw new Error("hkdf: cannot expand more");m.reset(),_>1&&m.update(c),v&&m.update(v),m.update(b),m.finish(c),b[0]++}var u=new Uint8Array(e.digestLength);function d(c,m,v,b){m===void 0&&(m=u),b===void 0&&(b=32);for(var _=new Uint8Array([1]),S=s(m,c),x=new n(S),w=new Uint8Array(x.digestLength),A=w.length,M=new Uint8Array(b),P=0;P<b;P++)A===w.length&&(a(w,x,v,_),A=0),M[P]=w[A++];return x.clean(),w.fill(0),_.fill(0),M}e.hkdf=d;function l(c,m,v,b){for(var _=new n(c),S=_.digestLength,x=new Uint8Array(4),w=new Uint8Array(S),A=new Uint8Array(S),M=new Uint8Array(b),P=0;P*S<b;P++){var $=P+1;x[0]=$>>>24&255,x[1]=$>>>16&255,x[2]=$>>>8&255,x[3]=$>>>0&255,_.reset(),_.update(m),_.update(x),_.finish(A);for(var I=0;I<S;I++)w[I]=A[I];for(var I=2;I<=v;I++){_.reset(),_.update(A).finish(A);for(var E=0;E<S;E++)w[E]^=A[E]}for(var I=0;I<S&&P*S+I<b;I++)M[P*S+I]=w[I]}for(var P=0;P<S;P++)w[P]=A[P]=0;for(var P=0;P<4;P++)x[P]=0;return _.clean(),M}e.pbkdf2=l})});var Gl=f(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.Webhook=br.WebhookVerificationError=void 0;var tS=sb(),mb=lb(),rS=db(),pb=300,Nl=class e extends Error{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype),this.name="ExtendableError",this.stack=new Error(t).stack}},Et=class e extends Nl{constructor(t){super(t),Object.setPrototypeOf(this,e.prototype),this.name="WebhookVerificationError"}};br.WebhookVerificationError=Et;var Ca=class e{constructor(t,r){if(!t)throw new Error("Secret can't be empty.");if(r?.format==="raw")t instanceof Uint8Array?this.key=t:this.key=Uint8Array.from(t,i=>i.charCodeAt(0));else{if(typeof t!="string")throw new Error("Expected secret to be of type string");t.startsWith(e.prefix)&&(t=t.substring(e.prefix.length)),this.key=mb.decode(t)}}verify(t,r){let i={};for(let m of Object.keys(r))i[m.toLowerCase()]=r[m];let n=i["webhook-id"],o=i["webhook-signature"],s=i["webhook-timestamp"];if(!o||!n||!s)throw new Et("Missing required headers");let a=this.verifyTimestamp(s),d=this.sign(n,a,t).split(",")[1],l=o.split(" "),c=new globalThis.TextEncoder;for(let m of l){let[v,b]=m.split(",");if(v==="v1"&&(0,tS.timingSafeEqual)(c.encode(b),c.encode(d)))return JSON.parse(t.toString())}throw new Et("No matching signature found")}sign(t,r,i){if(typeof i!="string")if(i.constructor.name==="Buffer")i=i.toString();else throw new Error("Expected payload to be of type string or Buffer.");let n=new TextEncoder,o=Math.floor(r.getTime()/1e3),s=n.encode(`${t}.${o}.${i}`);return`v1,${mb.encode(rS.hmac(this.key,s))}`}verifyTimestamp(t){let r=Math.floor(Date.now()/1e3),i=parseInt(t,10);if(isNaN(i))throw new Et("Invalid Signature Headers");if(r-i>pb)throw new Et("Message timestamp too old");if(i>r+pb)throw new Et("Message timestamp too new");return new Date(i*1e3)}};br.Webhook=Ca;Ca.prefix="whsec_"});var fb=f(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.Webhook=_r.WebhookVerificationError=void 0;var iS=Gl(),nS=Gl();Object.defineProperty(_r,"WebhookVerificationError",{enumerable:!0,get:function(){return nS.WebhookVerificationError}});var Ul=class{constructor(t,r){this.inner=new iS.Webhook(t,r)}verify(t,r){var i,n,o,s,a,u;let d={};for(let l of Object.keys(r))d[l.toLowerCase()]=r[l];return d["webhook-id"]=(n=(i=d["svix-id"])!==null&&i!==void 0?i:d["webhook-id"])!==null&&n!==void 0?n:"",d["webhook-signature"]=(s=(o=d["svix-signature"])!==null&&o!==void 0?o:d["webhook-signature"])!==null&&s!==void 0?s:"",d["webhook-timestamp"]=(u=(a=d["svix-timestamp"])!==null&&a!==void 0?a:d["webhook-timestamp"])!==null&&u!==void 0?u:"",this.inner.verify(t,d)}sign(t,r,i){return this.inner.sign(t,r,i)}};_r.Webhook=Ul});var hb=f(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.EndpointDisabledTriggerSerializer=Qt.EndpointDisabledTrigger=void 0;var oS;(function(e){e.Manual="manual",e.Automatic="automatic"})(oS=Qt.EndpointDisabledTrigger||(Qt.EndpointDisabledTrigger={}));Qt.EndpointDisabledTriggerSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var gb=f(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.OrderingSerializer=Zt.Ordering=void 0;var sS;(function(e){e.Ascending="ascending",e.Descending="descending"})(sS=Zt.Ordering||(Zt.Ordering={}));Zt.OrderingSerializer={_fromJsonObject(e){return e},_toJsonObject(e){return e}}});var bb=f(Z=>{"use strict";Object.defineProperty(Z,"__esModule",{value:!0});Z.StatusCodeClass=Z.SinkStatusIn=Z.SinkStatus=Z.Ordering=Z.MessageStatusText=Z.MessageStatus=Z.MessageAttemptTriggerType=Z.EndpointDisabledTrigger=Z.ConnectorProduct=Z.ConnectorKind=Z.BackgroundTaskType=Z.BackgroundTaskStatus=Z.AppPortalCapability=void 0;var aS=Bu();Object.defineProperty(Z,"AppPortalCapability",{enumerable:!0,get:function(){return aS.AppPortalCapability}});var uS=xt();Object.defineProperty(Z,"BackgroundTaskStatus",{enumerable:!0,get:function(){return uS.BackgroundTaskStatus}});var lS=kt();Object.defineProperty(Z,"BackgroundTaskType",{enumerable:!0,get:function(){return lS.BackgroundTaskType}});var cS=lr();Object.defineProperty(Z,"ConnectorKind",{enumerable:!0,get:function(){return cS.ConnectorKind}});var dS=Li();Object.defineProperty(Z,"ConnectorProduct",{enumerable:!0,get:function(){return dS.ConnectorProduct}});var mS=hb();Object.defineProperty(Z,"EndpointDisabledTrigger",{enumerable:!0,get:function(){return mS.EndpointDisabledTrigger}});var pS=vl();Object.defineProperty(Z,"MessageAttemptTriggerType",{enumerable:!0,get:function(){return pS.MessageAttemptTriggerType}});var fS=cr();Object.defineProperty(Z,"MessageStatus",{enumerable:!0,get:function(){return fS.MessageStatus}});var hS=Qr();Object.defineProperty(Z,"MessageStatusText",{enumerable:!0,get:function(){return hS.MessageStatusText}});var gS=gb();Object.defineProperty(Z,"Ordering",{enumerable:!0,get:function(){return gS.Ordering}});var bS=Ml();Object.defineProperty(Z,"SinkStatus",{enumerable:!0,get:function(){return bS.SinkStatus}});var _S=ia();Object.defineProperty(Z,"SinkStatusIn",{enumerable:!0,get:function(){return _S.SinkStatusIn}});var vS=Ku();Object.defineProperty(Z,"StatusCodeClass",{enumerable:!0,get:function(){return vS.StatusCodeClass}})});var vb=f(de=>{"use strict";var yS=de&&de.__createBinding||(Object.create?(function(e,t,r,i){i===void 0&&(i=r);var n=Object.getOwnPropertyDescriptor(t,r);(!n||("get"in n?!t.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,i,n)}):(function(e,t,r,i){i===void 0&&(i=r),e[i]=t[r]})),_b=de&&de.__exportStar||function(e,t){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r)&&yS(t,e,r)};Object.defineProperty(de,"__esModule",{value:!0});de.Svix=de.messageInRaw=de.ValidationError=de.HttpErrorOut=de.HTTPValidationError=de.ApiException=void 0;var CS=jd(),OS=Gd(),SS=Yd(),wS=am(),xS=jm(),kS=Fm(),AS=Qm(),ES=Xm(),PS=Yf(),TS=ih(),IS=bl(),$S=zh(),jS=Wh(),DS=tg(),qS=ib(),RS=xl(),MS=Mu();Object.defineProperty(de,"ApiException",{enumerable:!0,get:function(){return MS.ApiException}});var Vl=nb();Object.defineProperty(de,"HTTPValidationError",{enumerable:!0,get:function(){return Vl.HTTPValidationError}});Object.defineProperty(de,"HttpErrorOut",{enumerable:!0,get:function(){return Vl.HttpErrorOut}});Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return Vl.ValidationError}});_b(fb(),de);_b(bb(),de);var zS=bl();Object.defineProperty(de,"messageInRaw",{enumerable:!0,get:function(){return zS.messageInRaw}});var JS=[{region:"us",url:"https://api.us.svix.com"},{region:"eu",url:"https://api.eu.svix.com"},{region:"in",url:"https://api.in.svix.com"},{region:"ca",url:"https://api.ca.svix.com"},{region:"au",url:"https://api.au.svix.com"}],Wl=class{constructor(t,r={}){var i,n,o;let s=(i=JS.find(u=>u.region===t.split(".")[1]))===null||i===void 0?void 0:i.url,a=(o=(n=r.serverUrl)!==null&&n!==void 0?n:s)!==null&&o!==void 0?o:"https://api.svix.com";if(r.retryScheduleInMs){this.requestCtx={baseUrl:a,token:t,timeout:r.requestTimeout,retryScheduleInMs:r.retryScheduleInMs,fetch:r.fetch};return}if(r.numRetries){this.requestCtx={baseUrl:a,token:t,timeout:r.requestTimeout,numRetries:r.numRetries,fetch:r.fetch};return}this.requestCtx={baseUrl:a,token:t,timeout:r.requestTimeout,fetch:r.fetch}}get application(){return new CS.Application(this.requestCtx)}get authentication(){return new OS.Authentication(this.requestCtx)}get backgroundTask(){return new SS.BackgroundTask(this.requestCtx)}get connector(){return new wS.Connector(this.requestCtx)}get endpoint(){return new xS.Endpoint(this.requestCtx)}get environment(){return new kS.Environment(this.requestCtx)}get eventType(){return new AS.EventType(this.requestCtx)}get health(){return new ES.Health(this.requestCtx)}get ingest(){return new PS.Ingest(this.requestCtx)}get integration(){return new TS.Integration(this.requestCtx)}get message(){return new IS.Message(this.requestCtx)}get messageAttempt(){return new $S.MessageAttempt(this.requestCtx)}get operationalWebhook(){return new jS.OperationalWebhook(this.requestCtx)}get statistics(){return new DS.Statistics(this.requestCtx)}get streaming(){return new qS.Streaming(this.requestCtx)}get operationalWebhookEndpoint(){return new RS.OperationalWebhookEndpoint(this.requestCtx)}};de.Svix=Wl});var Sa,Tb=De(()=>{"use strict";Sa=class extends Error{constructor(t){super(`Credentials file is corrupted or contains invalid JSON: ${t}
24
+ `),this.outputHelp({error:!0}));let n=r||{},i=n.exitCode||1,o=n.code||"commander.error";this._exit(i,o,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in W.env){let r=e.attributeName();(this.getOptionValue(r)===void 0||["default","config","env"].includes(this.getOptionValueSource(r)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,W.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new fu(this.options),r=n=>this.getOptionValue(n)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(n));this.options.filter(n=>n.implied!==void 0&&r(n.attributeName())&&e.valueFromOption(this.getOptionValue(n.attributeName()),n)).forEach(n=>{Object.keys(n.implied).filter(i=>!r(i)).forEach(i=>{this.setOptionValueWithSource(i,n.implied[i],"implied")})})}missingArgument(e){let r=`error: missing required argument '${e}'`;this.error(r,{code:"commander.missingArgument"})}optionMissingArgument(e){let r=`error: option '${e.flags}' argument missing`;this.error(r,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let r=`error: required option '${e.flags}' not specified`;this.error(r,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,r){let n=s=>{let a=s.attributeName(),l=this.getOptionValue(a),d=this.options.find(u=>u.negate&&a===u.attributeName()),c=this.options.find(u=>!u.negate&&a===u.attributeName());return d&&(d.presetArg===void 0&&l===!1||d.presetArg!==void 0&&l===d.presetArg)?d:c||s},i=s=>{let a=n(s),l=a.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${a.envVar}'`:`option '${a.flags}'`},o=`error: ${i(e)} cannot be used with ${i(r)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let r="";if(e.startsWith("--")&&this._showSuggestionAfterError){let i=[],o=this;do{let s=o.createHelp().visibleOptions(o).filter(a=>a.long).map(a=>a.long);i=i.concat(s),o=o.parent}while(o&&!o._enablePositionalOptions);r=Di(e,i)}let n=`error: unknown option '${e}'${r}`;this.error(n,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let r=this.registeredArguments.length,n=r===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${r} argument${n} but got ${e.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],r="";if(this._showSuggestionAfterError){let i=[];this.createHelp().visibleCommands(this).forEach(o=>{i.push(o.name()),o.alias()&&i.push(o.alias())}),r=Di(e,i)}let n=`error: unknown command '${e}'${r}`;this.error(n,{code:"commander.unknownCommand"})}version(e,r,n){if(e===void 0)return this._version;this._version=e,r=r||"-V, --version",n=n||"output the version number";let i=this.createOption(r,n);return this._versionOptionName=i.attributeName(),this._registerOption(i),this.on("option:"+i.name(),()=>{this._outputConfiguration.writeOut(`${e}
25
+ `),this._exit(0,"commander.version",e)}),this}description(e,r){return e===void 0&&r===void 0?this._description:(this._description=e,r&&(this._argsDescription=r),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let r=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(r=this.commands[this.commands.length-1]),e===r._name)throw new Error("Command alias can't be the same as its name");let n=this.parent?._findCommand(e);if(n){let i=[n.name()].concat(n.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${i}'`)}return r._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(r=>this.alias(r)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let r=this.registeredArguments.map(n=>du(n));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?r:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}helpGroup(e){return e===void 0?this._helpGroupHeading??"":(this._helpGroupHeading=e,this)}commandsGroup(e){return e===void 0?this._defaultCommandGroup??"":(this._defaultCommandGroup=e,this)}optionsGroup(e){return e===void 0?this._defaultOptionGroup??"":(this._defaultOptionGroup=e,this)}_initOptionGroup(e){this._defaultOptionGroup&&!e.helpGroupHeading&&e.helpGroup(this._defaultOptionGroup)}_initCommandGroup(e){this._defaultCommandGroup&&!e.helpGroup()&&e.helpGroup(this._defaultCommandGroup)}nameFromFilename(e){return this._name=Je.basename(e,Je.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let r=this.createHelp(),n=this._getOutputContext(e);r.prepareContext({error:n.error,helpWidth:n.helpWidth,outputHasColors:n.hasColors});let i=r.formatHelp(this,r);return n.hasColors?i:this._outputConfiguration.stripColor(i)}_getOutputContext(e){e=e||{};let r=!!e.error,n,i,o;return r?(n=a=>this._outputConfiguration.writeErr(a),i=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth()):(n=a=>this._outputConfiguration.writeOut(a),i=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth()),{error:r,write:a=>(i||(a=this._outputConfiguration.stripColor(a)),n(a)),hasColors:i,helpWidth:o}}outputHelp(e){let r;typeof e=="function"&&(r=e,e=void 0);let n=this._getOutputContext(e),i={error:n.error,write:n.write,command:this};this._getCommandAndAncestors().reverse().forEach(s=>s.emit("beforeAllHelp",i)),this.emit("beforeHelp",i);let o=this.helpInformation({error:n.error});if(r&&(o=r(o),typeof o!="string"&&!Buffer.isBuffer(o)))throw new Error("outputHelp callback must return a string or a Buffer");n.write(o),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",i),this._getCommandAndAncestors().forEach(s=>s.emit("afterAllHelp",i))}helpOption(e,r){return typeof e=="boolean"?(e?(this._helpOption===null&&(this._helpOption=void 0),this._defaultOptionGroup&&this._initOptionGroup(this._getHelpOption())):this._helpOption=null,this):(this._helpOption=this.createOption(e??"-h, --help",r??"display help for command"),(e||r)&&this._initOptionGroup(this._helpOption),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this._initOptionGroup(e),this}help(e){this.outputHelp(e);let r=Number(W.exitCode??0);r===0&&e&&typeof e!="function"&&e.error&&(r=1),this._exit(r,"commander.help","(outputHelp)")}addHelpText(e,r){let n=["beforeAll","before","after","afterAll"];if(!n.includes(e))throw new Error(`Unexpected value for position to addHelpText.
26
+ Expecting one of '${n.join("', '")}'`);let i=`${e}Help`;return this.on(i,o=>{let s;typeof r=="function"?s=r({error:o.error,command:o.command}):s=r,s&&o.write(`${s}
27
+ `)}),this}_outputHelpIfRequested(e){let r=this._getHelpOption();r&&e.find(i=>r.is(i))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function Si(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let r,n="127.0.0.1",i="9229",o;return(o=e.match(/^(--inspect(-brk)?)$/))!==null?r=o[1]:(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=o[1],/^\d+$/.test(o[3])?i=o[3]:n=o[3]):(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=o[1],n=o[3],i=o[4]),r&&i!=="0"?`${r}=${n}:${parseInt(i)+1}`:e})}function _n(){if(W.env.NO_COLOR||W.env.FORCE_COLOR==="0"||W.env.FORCE_COLOR==="false")return!1;if(W.env.FORCE_COLOR||W.env.CLICOLOR_FORCE!==void 0)return!0}xn.Command=wn;xn.useColor=_n});var ji=Ae(Re=>{var{Argument:Oi}=pr(),{Command:An}=Ti(),{CommanderError:hu,InvalidArgumentError:Ii}=Kt(),{Help:gu}=fn(),{Option:Pi}=yn();Re.program=new An;Re.createCommand=t=>new An(t);Re.createOption=(t,e)=>new Pi(t,e);Re.createArgument=(t,e)=>new Oi(t,e);Re.Command=An;Re.Option=Pi;Re.Argument=Oi;Re.Help=gu;Re.CommanderError=hu;Re.InvalidArgumentError=Ii;Re.InvalidOptionArgumentError=Ii});var Fi=Ae((Te,Ri)=>{var Le=ji();Te=Ri.exports={};Te.program=new Le.Command;Te.Argument=Le.Argument;Te.Command=Le.Command;Te.CommanderError=Le.CommanderError;Te.Help=Le.Help;Te.InvalidArgumentError=Le.InvalidArgumentError;Te.InvalidOptionArgumentError=Le.InvalidArgumentError;Te.Option=Le.Option;Te.createCommand=t=>new Le.Command(t);Te.createOption=(t,e)=>new Le.Option(t,e);Te.createArgument=(t,e)=>new Le.Argument(t,e)});var et=Ae((Rp,kn)=>{var gr=process||{},Hi=gr.argv||[],hr=gr.env||{},bu=!(hr.NO_COLOR||Hi.includes("--no-color"))&&(!!hr.FORCE_COLOR||Hi.includes("--color")||gr.platform==="win32"||(gr.stdout||{}).isTTY&&hr.TERM!=="dumb"||!!hr.CI),yu=(t,e,r=t)=>n=>{let i=""+n,o=i.indexOf(e,t.length);return~o?t+vu(i,e,r,o)+e:t+i+e},vu=(t,e,r,n)=>{let i="",o=0;do i+=t.substring(o,n)+r,o=n+e.length,n=t.indexOf(e,o);while(~n);return i+t.substring(o)},Li=(t=bu)=>{let e=t?yu:()=>String;return{isColorSupported:t,reset:e("\x1B[0m","\x1B[0m"),bold:e("\x1B[1m","\x1B[22m","\x1B[22m\x1B[1m"),dim:e("\x1B[2m","\x1B[22m","\x1B[22m\x1B[2m"),italic:e("\x1B[3m","\x1B[23m"),underline:e("\x1B[4m","\x1B[24m"),inverse:e("\x1B[7m","\x1B[27m"),hidden:e("\x1B[8m","\x1B[28m"),strikethrough:e("\x1B[9m","\x1B[29m"),black:e("\x1B[30m","\x1B[39m"),red:e("\x1B[31m","\x1B[39m"),green:e("\x1B[32m","\x1B[39m"),yellow:e("\x1B[33m","\x1B[39m"),blue:e("\x1B[34m","\x1B[39m"),magenta:e("\x1B[35m","\x1B[39m"),cyan:e("\x1B[36m","\x1B[39m"),white:e("\x1B[37m","\x1B[39m"),gray:e("\x1B[90m","\x1B[39m"),bgBlack:e("\x1B[40m","\x1B[49m"),bgRed:e("\x1B[41m","\x1B[49m"),bgGreen:e("\x1B[42m","\x1B[49m"),bgYellow:e("\x1B[43m","\x1B[49m"),bgBlue:e("\x1B[44m","\x1B[49m"),bgMagenta:e("\x1B[45m","\x1B[49m"),bgCyan:e("\x1B[46m","\x1B[49m"),bgWhite:e("\x1B[47m","\x1B[49m"),blackBright:e("\x1B[90m","\x1B[39m"),redBright:e("\x1B[91m","\x1B[39m"),greenBright:e("\x1B[92m","\x1B[39m"),yellowBright:e("\x1B[93m","\x1B[39m"),blueBright:e("\x1B[94m","\x1B[39m"),magentaBright:e("\x1B[95m","\x1B[39m"),cyanBright:e("\x1B[96m","\x1B[39m"),whiteBright:e("\x1B[97m","\x1B[39m"),bgBlackBright:e("\x1B[100m","\x1B[49m"),bgRedBright:e("\x1B[101m","\x1B[49m"),bgGreenBright:e("\x1B[102m","\x1B[49m"),bgYellowBright:e("\x1B[103m","\x1B[49m"),bgBlueBright:e("\x1B[104m","\x1B[49m"),bgMagentaBright:e("\x1B[105m","\x1B[49m"),bgCyanBright:e("\x1B[106m","\x1B[49m"),bgWhiteBright:e("\x1B[107m","\x1B[49m")}};kn.exports=Li();kn.exports.createColors=Li});var Tn=Ae((Up,to)=>{"use strict";var Sn={to(t,e){return e?`\x1B[${e+1};${t+1}H`:`\x1B[${t+1}G`},move(t,e){let r="";return t<0?r+=`\x1B[${-t}D`:t>0&&(r+=`\x1B[${t}C`),e<0?r+=`\x1B[${-e}A`:e>0&&(r+=`\x1B[${e}B`),r},up:(t=1)=>`\x1B[${t}A`,down:(t=1)=>`\x1B[${t}B`,forward:(t=1)=>`\x1B[${t}C`,backward:(t=1)=>`\x1B[${t}D`,nextLine:(t=1)=>"\x1B[E".repeat(t),prevLine:(t=1)=>"\x1B[F".repeat(t),left:"\x1B[G",hide:"\x1B[?25l",show:"\x1B[?25h",save:"\x1B7",restore:"\x1B8"},Fu={up:(t=1)=>"\x1B[S".repeat(t),down:(t=1)=>"\x1B[T".repeat(t)},Bu={screen:"\x1B[2J",up:(t=1)=>"\x1B[1J".repeat(t),down:(t=1)=>"\x1B[J".repeat(t),line:"\x1B[2K",lineEnd:"\x1B[K",lineStart:"\x1B[1K",lines(t){let e="";for(let r=0;r<t;r++)e+=this.line+(r<t-1?Sn.up():"");return t&&(e+=Sn.left),e}};to.exports={cursor:Sn,scroll:Fu,erase:Bu,beep:"\x07"}});var Fn,bo=xe(()=>{Fn={name:"resend-cli",version:"2.4.0",description:"The official CLI for Resend",license:"MIT",repository:{type:"git",url:"https://github.com/resend/resend-cli"},homepage:"https://github.com/resend/resend-cli#readme",keywords:["cli","resend","email","api","tanstack-intent"],engines:{node:">=22"},packageManager:"pnpm@11.2.2",files:["dist/cli.cjs","skills/"],type:"module",bin:{resend:"./dist/cli.cjs"},scripts:{dev:"tsx src/cli.ts","dev:watch":"tsx --watch src/cli.ts",build:"node scripts/build.mjs","build:bin":"pnpm build && pkg dist/cli.cjs --config package.json --compress Brotli --target node24 --output dist/resend",lint:"biome check .","lint:fix":"biome check --write .",typecheck:"tsc --noEmit",test:"vitest run","test:e2e":"vitest run --config vitest.config.e2e.ts",prepack:"pnpm install && pnpm build && node scripts/verify-bundle.mjs"},dependencies:{"@clack/prompts":"1.4.0","@commander-js/extra-typings":"14.0.0",commander:"14.0.3",esbuild:"0.28.0","esbuild-wasm":"0.28.0",picocolors:"1.1.1",resend:"6.14.0"},pkg:{scripts:["node_modules/esbuild-wasm/bin/esbuild","node_modules/esbuild-wasm/wasm_exec.js","node_modules/esbuild-wasm/wasm_exec_node.js"],assets:["node_modules/esbuild-wasm/esbuild.wasm"]},devDependencies:{"@biomejs/biome":"2.4.11","@types/node":"24.12.4","@yao-pkg/pkg":"6.19.0",tsx:"4.22.3",typescript:"5.9.3",vitest:"4.1.7"}}});var te,yo,ht=xe(()=>{"use strict";bo();te=Fn.version,yo=Fn.name});var So=Ae(Sr=>{"use strict";Object.defineProperty(Sr,"__esModule",{value:!0});Sr.timingSafeEqual=void 0;function Do(t,e=""){if(!t)throw new Error(e)}function pd(t,e){if(t.byteLength!==e.byteLength)return!1;t instanceof DataView||(t=new DataView(ArrayBuffer.isView(t)?t.buffer:t)),e instanceof DataView||(e=new DataView(ArrayBuffer.isView(e)?e.buffer:e)),Do(t instanceof DataView),Do(e instanceof DataView);let r=t.byteLength,n=0,i=-1;for(;++i<r;)n|=t.getUint8(i)^e.getUint8(i);return n===0}Sr.timingSafeEqual=pd});var Io=Ae(Ie=>{"use strict";var fd=Ie&&Ie.__extends||(function(){var t=function(e,r){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var o in i)i.hasOwnProperty(o)&&(n[o]=i[o])},t(e,r)};return function(e,r){t(e,r);function n(){this.constructor=e}e.prototype=r===null?Object.create(r):(n.prototype=r.prototype,new n)}})();Object.defineProperty(Ie,"__esModule",{value:!0});var ne=256,Wn=(function(){function t(e){e===void 0&&(e="="),this._paddingCharacter=e}return t.prototype.encodedLength=function(e){return this._paddingCharacter?(e+2)/3*4|0:(e*8+5)/6|0},t.prototype.encode=function(e){for(var r="",n=0;n<e.length-2;n+=3){var i=e[n]<<16|e[n+1]<<8|e[n+2];r+=this._encodeByte(i>>>18&63),r+=this._encodeByte(i>>>12&63),r+=this._encodeByte(i>>>6&63),r+=this._encodeByte(i>>>0&63)}var o=e.length-n;if(o>0){var i=e[n]<<16|(o===2?e[n+1]<<8:0);r+=this._encodeByte(i>>>18&63),r+=this._encodeByte(i>>>12&63),o===2?r+=this._encodeByte(i>>>6&63):r+=this._paddingCharacter||"",r+=this._paddingCharacter||""}return r},t.prototype.maxDecodedLength=function(e){return this._paddingCharacter?e/4*3|0:(e*6+7)/8|0},t.prototype.decodedLength=function(e){return this.maxDecodedLength(e.length-this._getPaddingLength(e))},t.prototype.decode=function(e){if(e.length===0)return new Uint8Array(0);for(var r=this._getPaddingLength(e),n=e.length-r,i=new Uint8Array(this.maxDecodedLength(n)),o=0,s=0,a=0,l=0,d=0,c=0,u=0;s<n-4;s+=4)l=this._decodeChar(e.charCodeAt(s+0)),d=this._decodeChar(e.charCodeAt(s+1)),c=this._decodeChar(e.charCodeAt(s+2)),u=this._decodeChar(e.charCodeAt(s+3)),i[o++]=l<<2|d>>>4,i[o++]=d<<4|c>>>2,i[o++]=c<<6|u,a|=l&ne,a|=d&ne,a|=c&ne,a|=u&ne;if(s<n-1&&(l=this._decodeChar(e.charCodeAt(s)),d=this._decodeChar(e.charCodeAt(s+1)),i[o++]=l<<2|d>>>4,a|=l&ne,a|=d&ne),s<n-2&&(c=this._decodeChar(e.charCodeAt(s+2)),i[o++]=d<<4|c>>>2,a|=c&ne),s<n-3&&(u=this._decodeChar(e.charCodeAt(s+3)),i[o++]=c<<6|u,a|=u&ne),a!==0)throw new Error("Base64Coder: incorrect characters for decoding");return i},t.prototype._encodeByte=function(e){var r=e;return r+=65,r+=25-e>>>8&6,r+=51-e>>>8&-75,r+=61-e>>>8&-15,r+=62-e>>>8&3,String.fromCharCode(r)},t.prototype._decodeChar=function(e){var r=ne;return r+=(42-e&e-44)>>>8&-ne+e-43+62,r+=(46-e&e-48)>>>8&-ne+e-47+63,r+=(47-e&e-58)>>>8&-ne+e-48+52,r+=(64-e&e-91)>>>8&-ne+e-65+0,r+=(96-e&e-123)>>>8&-ne+e-97+26,r},t.prototype._getPaddingLength=function(e){var r=0;if(this._paddingCharacter){for(var n=e.length-1;n>=0&&e[n]===this._paddingCharacter;n--)r++;if(e.length<4||r>2)throw new Error("Base64Coder: incorrect padding")}return r},t})();Ie.Coder=Wn;var nr=new Wn;function hd(t){return nr.encode(t)}Ie.encode=hd;function gd(t){return nr.decode(t)}Ie.decode=gd;var To=(function(t){fd(e,t);function e(){return t!==null&&t.apply(this,arguments)||this}return e.prototype._encodeByte=function(r){var n=r;return n+=65,n+=25-r>>>8&6,n+=51-r>>>8&-75,n+=61-r>>>8&-13,n+=62-r>>>8&49,String.fromCharCode(n)},e.prototype._decodeChar=function(r){var n=ne;return n+=(44-r&r-46)>>>8&-ne+r-45+62,n+=(94-r&r-96)>>>8&-ne+r-95+63,n+=(47-r&r-58)>>>8&-ne+r-48+52,n+=(64-r&r-91)>>>8&-ne+r-65+0,n+=(96-r&r-123)>>>8&-ne+r-97+26,n},e})(Wn);Ie.URLSafeCoder=To;var Oo=new To;function bd(t){return Oo.encode(t)}Ie.encodeURLSafe=bd;function yd(t){return Oo.decode(t)}Ie.decodeURLSafe=yd;Ie.encodedLength=function(t){return nr.encodedLength(t)};Ie.maxDecodedLength=function(t){return nr.maxDecodedLength(t)};Ie.decodedLength=function(t){return nr.decodedLength(t)}});var jo=Ae((Po,Tr)=>{(function(t,e){var r={};e(r);var n=r.default;for(var i in r)n[i]=r[i];typeof Tr=="object"&&typeof Tr.exports=="object"?Tr.exports=n:typeof define=="function"&&define.amd?define(function(){return n}):t.sha256=n})(Po,function(t){"use strict";t.__esModule=!0,t.digestLength=32,t.blockSize=64;var e=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function r(u,m,y,g,b){for(var _,A,x,$,F,D,O,T,E,I,ge,Z,pt;b>=64;){for(_=m[0],A=m[1],x=m[2],$=m[3],F=m[4],D=m[5],O=m[6],T=m[7],I=0;I<16;I++)ge=g+I*4,u[I]=(y[ge]&255)<<24|(y[ge+1]&255)<<16|(y[ge+2]&255)<<8|y[ge+3]&255;for(I=16;I<64;I++)E=u[I-2],Z=(E>>>17|E<<15)^(E>>>19|E<<13)^E>>>10,E=u[I-15],pt=(E>>>7|E<<25)^(E>>>18|E<<14)^E>>>3,u[I]=(Z+u[I-7]|0)+(pt+u[I-16]|0);for(I=0;I<64;I++)Z=(((F>>>6|F<<26)^(F>>>11|F<<21)^(F>>>25|F<<7))+(F&D^~F&O)|0)+(T+(e[I]+u[I]|0)|0)|0,pt=((_>>>2|_<<30)^(_>>>13|_<<19)^(_>>>22|_<<10))+(_&A^_&x^A&x)|0,T=O,O=D,D=F,F=$+Z|0,$=x,x=A,A=_,_=Z+pt|0;m[0]+=_,m[1]+=A,m[2]+=x,m[3]+=$,m[4]+=F,m[5]+=D,m[6]+=O,m[7]+=T,g+=64,b-=64}return g}var n=(function(){function u(){this.digestLength=t.digestLength,this.blockSize=t.blockSize,this.state=new Int32Array(8),this.temp=new Int32Array(64),this.buffer=new Uint8Array(128),this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this.reset()}return u.prototype.reset=function(){return this.state[0]=1779033703,this.state[1]=3144134277,this.state[2]=1013904242,this.state[3]=2773480762,this.state[4]=1359893119,this.state[5]=2600822924,this.state[6]=528734635,this.state[7]=1541459225,this.bufferLength=0,this.bytesHashed=0,this.finished=!1,this},u.prototype.clean=function(){for(var m=0;m<this.buffer.length;m++)this.buffer[m]=0;for(var m=0;m<this.temp.length;m++)this.temp[m]=0;this.reset()},u.prototype.update=function(m,y){if(y===void 0&&(y=m.length),this.finished)throw new Error("SHA256: can't update because hash was finished.");var g=0;if(this.bytesHashed+=y,this.bufferLength>0){for(;this.bufferLength<64&&y>0;)this.buffer[this.bufferLength++]=m[g++],y--;this.bufferLength===64&&(r(this.temp,this.state,this.buffer,0,64),this.bufferLength=0)}for(y>=64&&(g=r(this.temp,this.state,m,g,y),y%=64);y>0;)this.buffer[this.bufferLength++]=m[g++],y--;return this},u.prototype.finish=function(m){if(!this.finished){var y=this.bytesHashed,g=this.bufferLength,b=y/536870912|0,_=y<<3,A=y%64<56?64:128;this.buffer[g]=128;for(var x=g+1;x<A-8;x++)this.buffer[x]=0;this.buffer[A-8]=b>>>24&255,this.buffer[A-7]=b>>>16&255,this.buffer[A-6]=b>>>8&255,this.buffer[A-5]=b>>>0&255,this.buffer[A-4]=_>>>24&255,this.buffer[A-3]=_>>>16&255,this.buffer[A-2]=_>>>8&255,this.buffer[A-1]=_>>>0&255,r(this.temp,this.state,this.buffer,0,A),this.finished=!0}for(var x=0;x<8;x++)m[x*4+0]=this.state[x]>>>24&255,m[x*4+1]=this.state[x]>>>16&255,m[x*4+2]=this.state[x]>>>8&255,m[x*4+3]=this.state[x]>>>0&255;return this},u.prototype.digest=function(){var m=new Uint8Array(this.digestLength);return this.finish(m),m},u.prototype._saveState=function(m){for(var y=0;y<this.state.length;y++)m[y]=this.state[y]},u.prototype._restoreState=function(m,y){for(var g=0;g<this.state.length;g++)this.state[g]=m[g];this.bytesHashed=y,this.finished=!1,this.bufferLength=0},u})();t.Hash=n;var i=(function(){function u(m){this.inner=new n,this.outer=new n,this.blockSize=this.inner.blockSize,this.digestLength=this.inner.digestLength;var y=new Uint8Array(this.blockSize);if(m.length>this.blockSize)new n().update(m).finish(y).clean();else for(var g=0;g<m.length;g++)y[g]=m[g];for(var g=0;g<y.length;g++)y[g]^=54;this.inner.update(y);for(var g=0;g<y.length;g++)y[g]^=106;this.outer.update(y),this.istate=new Uint32Array(8),this.ostate=new Uint32Array(8),this.inner._saveState(this.istate),this.outer._saveState(this.ostate);for(var g=0;g<y.length;g++)y[g]=0}return u.prototype.reset=function(){return this.inner._restoreState(this.istate,this.inner.blockSize),this.outer._restoreState(this.ostate,this.outer.blockSize),this},u.prototype.clean=function(){for(var m=0;m<this.istate.length;m++)this.ostate[m]=this.istate[m]=0;this.inner.clean(),this.outer.clean()},u.prototype.update=function(m){return this.inner.update(m),this},u.prototype.finish=function(m){return this.outer.finished?this.outer.finish(m):(this.inner.finish(m),this.outer.update(m,this.digestLength).finish(m)),this},u.prototype.digest=function(){var m=new Uint8Array(this.digestLength);return this.finish(m),m},u})();t.HMAC=i;function o(u){var m=new n().update(u),y=m.digest();return m.clean(),y}t.hash=o,t.default=o;function s(u,m){var y=new i(u).update(m),g=y.digest();return y.clean(),g}t.hmac=s;function a(u,m,y,g){var b=g[0];if(b===0)throw new Error("hkdf: cannot expand more");m.reset(),b>1&&m.update(u),y&&m.update(y),m.update(g),m.finish(u),g[0]++}var l=new Uint8Array(t.digestLength);function d(u,m,y,g){m===void 0&&(m=l),g===void 0&&(g=32);for(var b=new Uint8Array([1]),_=s(m,u),A=new i(_),x=new Uint8Array(A.digestLength),$=x.length,F=new Uint8Array(g),D=0;D<g;D++)$===x.length&&(a(x,A,y,b),$=0),F[D]=x[$++];return A.clean(),x.fill(0),b.fill(0),F}t.hkdf=d;function c(u,m,y,g){for(var b=new i(u),_=b.digestLength,A=new Uint8Array(4),x=new Uint8Array(_),$=new Uint8Array(_),F=new Uint8Array(g),D=0;D*_<g;D++){var O=D+1;A[0]=O>>>24&255,A[1]=O>>>16&255,A[2]=O>>>8&255,A[3]=O>>>0&255,b.reset(),b.update(m),b.update(A),b.finish($);for(var T=0;T<_;T++)x[T]=$[T];for(var T=2;T<=y;T++){b.reset(),b.update($).finish($);for(var E=0;E<_;E++)x[E]^=$[E]}for(var T=0;T<_&&D*_+T<g;T++)F[D*_+T]=x[T]}for(var D=0;D<_;D++)x[D]=$[D]=0;for(var D=0;D<4;D++)A[D]=0;return b.clean(),F}t.pbkdf2=c})});var Bo=Ae(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.Webhook=Et.WebhookVerificationError=void 0;var vd=So(),Ro=Io(),Cd=jo(),Fo=300,Vn=class t extends Error{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype),this.name="ExtendableError",this.stack=new Error(e).stack}},ot=class t extends Vn{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype),this.name="WebhookVerificationError"}};Et.WebhookVerificationError=ot;var Or=class t{constructor(e,r){if(!e)throw new Error("Secret can't be empty.");if(r?.format==="raw")e instanceof Uint8Array?this.key=e:this.key=Uint8Array.from(e,n=>n.charCodeAt(0));else{if(typeof e!="string")throw new Error("Expected secret to be of type string");e.startsWith(t.prefix)&&(e=e.substring(t.prefix.length)),this.key=Ro.decode(e)}}verify(e,r){let n={};for(let m of Object.keys(r))n[m.toLowerCase()]=r[m];let i=n["webhook-id"],o=n["webhook-signature"],s=n["webhook-timestamp"];if(!o||!i||!s)throw new ot("Missing required headers");let a=this.verifyTimestamp(s),d=this.sign(i,a,e).split(",")[1],c=o.split(" "),u=new globalThis.TextEncoder;for(let m of c){let[y,g]=m.split(",");if(y==="v1"&&(0,vd.timingSafeEqual)(u.encode(g),u.encode(d)))return JSON.parse(e.toString())}throw new ot("No matching signature found")}sign(e,r,n){if(typeof n!="string")if(n.constructor.name==="Buffer")n=n.toString();else throw new Error("Expected payload to be of type string or Buffer.");let i=new TextEncoder,o=Math.floor(r.getTime()/1e3),s=i.encode(`${e}.${o}.${n}`);return`v1,${Ro.encode(Cd.hmac(this.key,s))}`}verifyTimestamp(e){let r=Math.floor(Date.now()/1e3),n=parseInt(e,10);if(isNaN(n))throw new ot("Invalid Signature Headers");if(r-n>Fo)throw new ot("Message timestamp too old");if(n>r+Fo)throw new ot("Message timestamp too new");return new Date(n*1e3)}};Et.Webhook=Or;Or.prefix="whsec_"});var Ir,zo=xe(()=>{"use strict";Ir=class extends Error{constructor(e){super(`Credentials file is corrupted or contains invalid JSON: ${e}
29
28
  The file has been preserved for manual inspection.
30
- To fix: either repair the JSON manually, or delete the file and run: resend login`),this.name="CorruptedCredentialsError"}}});var Yl={};Mr(Yl,{FileBackend:()=>Kl});var Kl,Ql=De(()=>{"use strict";Pe();Kl=class{name="plaintext file";isSecure=!1;async get(t,r){let i=Fe();return i?i.profiles[r]?.api_key??null:null}async set(t,r,i){Zl(i,r)}async delete(t,r){try{return Ib(r),!0}catch{return!1}}async isAvailable(){return!0}}});var jb={};Mr(jb,{MacOSBackend:()=>ec});function Xl(e,t){return new Promise(r=>{(0,$b.execFile)(e,t,{timeout:5e3},(i,n,o)=>{let s=i&&"code"in i?i.code:0;r({stdout:n??"",stderr:o??"",code:s})})})}var $b,ec,Db=De(()=>{"use strict";$b=require("node:child_process");ec=class{name="macOS Keychain";isSecure=!0;async get(t,r){let{stdout:i,stderr:n,code:o}=await Xl("/usr/bin/security",["find-generic-password","-s",t,"-a",r,"-w"]);if(o===44)return null;if(o!==0)throw new Error(`Failed to read from macOS Keychain (exit code ${o}): ${n.trim()}`);return i.trim()||null}async set(t,r,i){let{code:n,stderr:o}=await Xl("/usr/bin/security",["add-generic-password","-s",t,"-a",r,"-w",i,"-U"]);if(n!==0)throw new Error(`Failed to store credential in macOS Keychain: ${o.trim()}`)}async delete(t,r){let{code:i}=await Xl("/usr/bin/security",["delete-generic-password","-s",t,"-a",r]);return i===0}async isAvailable(){return process.platform==="darwin"}}});var qb={};Mr(qb,{LinuxBackend:()=>tc});function wa(e,t,r){return new Promise(i=>{(0,xa.execFile)(e,t,{timeout:r?.timeout??5e3},(n,o,s)=>{let a=n&&"code"in n?n.code:0;i({stdout:o??"",stderr:s??"",code:a})})})}function hw(e,t,r){return new Promise(i=>{let n=(0,xa.spawn)(e,t,{stdio:["pipe","ignore","pipe"],timeout:5e3}),o="";n.stderr?.on("data",s=>{o+=s.toString()}),n.on("close",s=>{i({code:s,stderr:o})}),n.on("error",()=>{i({code:1,stderr:"Failed to spawn process"})}),n.stdin?.on("error",()=>{}),n.stdin?.write(r),n.stdin?.end()})}var xa,tc,Rb=De(()=>{"use strict";xa=require("node:child_process");tc=class{name="Secret Service (libsecret)";isSecure=!0;async get(t,r){let{stdout:i,code:n}=await wa("secret-tool",["lookup","service",t,"account",r]);return n!==0||!i.trim()?null:i.trim()}async set(t,r,i){let{code:n,stderr:o}=await hw("secret-tool",["store",`--label=Resend CLI (${r})`,"service",t,"account",r],i);if(n!==0)throw new Error(`Failed to store credential in Secret Service: ${o.trim()}`)}async delete(t,r){let{code:i}=await wa("secret-tool",["clear","service",t,"account",r]);return i===0}async isAvailable(){if(process.platform!=="linux"||(await wa("which",["secret-tool"])).code!==0)return!1;let r=await wa("secret-tool",["lookup","service","__resend_cli_probe__"],{timeout:3e3});return r.code===0||r.code===1}}});var Mb={};Mr(Mb,{WindowsBackend:()=>rc});function ka(e){return new Promise(t=>{(0,Aa.execFile)("powershell.exe",["-NoProfile","-NonInteractive","-Command",e],{timeout:1e4},(r,i,n)=>{let o=r&&"code"in r?r.code:0;t({stdout:i??"",stderr:n??"",code:o})})})}function gw(e,t){return new Promise(r=>{let i=(0,Aa.spawn)("powershell.exe",["-NoProfile","-NonInteractive","-Command",e],{stdio:["pipe","pipe","pipe"],timeout:1e4}),n="",o="";i.stdout?.on("data",s=>{n+=s.toString()}),i.stderr?.on("data",s=>{o+=s.toString()}),i.on("close",s=>{r({stdout:n,stderr:o,code:s})}),i.on("error",()=>{r({stdout:"",stderr:"Failed to spawn process",code:1})}),i.stdin?.on("error",()=>{}),i.stdin?.write(t),i.stdin?.end()})}function Pt(e){return e.replace(/'/g,"''")}var Aa,Xr,rc,zb=De(()=>{"use strict";Aa=require("node:child_process");Xr=`
29
+ To fix: either repair the JSON manually, or delete the file and run: resend login`),this.name="CorruptedCredentialsError"}}});var zn={};Vt(zn,{FileBackend:()=>Kn});var Kn,Jn=xe(()=>{"use strict";ye();Kn=class{name="plaintext file";isSecure=!1;async get(e,r){let n=$e();return n?n.profiles[r]?.api_key??null:null}async set(e,r,n){Yn(n,r)}async delete(e,r){try{return Jo(r),!0}catch{return!1}}async isAvailable(){return!0}}});var Qo={};Vt(Qo,{MacOSBackend:()=>Xn});function Qn(t,e){return new Promise(r=>{(0,Yo.execFile)(t,e,{timeout:5e3},(n,i,o)=>{let s=n&&"code"in n?n.code:0;r({stdout:i??"",stderr:o??"",code:s})})})}var Yo,Xn,Xo=xe(()=>{"use strict";Yo=require("node:child_process");Xn=class{name="macOS Keychain";isSecure=!0;async get(e,r){let{stdout:n,stderr:i,code:o}=await Qn("/usr/bin/security",["find-generic-password","-s",e,"-a",r,"-w"]);if(o===44)return null;if(o!==0)throw new Error(`Failed to read from macOS Keychain (exit code ${o}): ${i.trim()}`);return n.trim()||null}async set(e,r,n){let{code:i,stderr:o}=await Qn("/usr/bin/security",["add-generic-password","-s",e,"-a",r,"-w",n,"-U"]);if(i!==0)throw new Error(`Failed to store credential in macOS Keychain: ${o.trim()}`)}async delete(e,r){let{code:n}=await Qn("/usr/bin/security",["delete-generic-password","-s",e,"-a",r]);return n===0}async isAvailable(){return process.platform==="darwin"}}});var Zo={};Vt(Zo,{LinuxBackend:()=>Zn});function Pr(t,e,r){return new Promise(n=>{(0,jr.execFile)(t,e,{timeout:r?.timeout??5e3},(i,o,s)=>{let a=i&&"code"in i?i.code:0;n({stdout:o??"",stderr:s??"",code:a})})})}function Xd(t,e,r){return new Promise(n=>{let i=(0,jr.spawn)(t,e,{stdio:["pipe","ignore","pipe"],timeout:5e3}),o="";i.stderr?.on("data",s=>{o+=s.toString()}),i.on("close",s=>{n({code:s,stderr:o})}),i.on("error",()=>{n({code:1,stderr:"Failed to spawn process"})}),i.stdin?.on("error",()=>{}),i.stdin?.write(r),i.stdin?.end()})}var jr,Zn,es=xe(()=>{"use strict";jr=require("node:child_process");Zn=class{name="Secret Service (libsecret)";isSecure=!0;async get(e,r){let{stdout:n,code:i}=await Pr("secret-tool",["lookup","service",e,"account",r]);return i!==0||!n.trim()?null:n.trim()}async set(e,r,n){let{code:i,stderr:o}=await Xd("secret-tool",["store",`--label=Resend CLI (${r})`,"service",e,"account",r],n);if(i!==0)throw new Error(`Failed to store credential in Secret Service: ${o.trim()}`)}async delete(e,r){let{code:n}=await Pr("secret-tool",["clear","service",e,"account",r]);return n===0}async isAvailable(){if(process.platform!=="linux"||(await Pr("which",["secret-tool"])).code!==0)return!1;let r=await Pr("secret-tool",["lookup","service","__resend_cli_probe__"],{timeout:3e3});return r.code===0||r.code===1}}});var ts={};Vt(ts,{WindowsBackend:()=>ei});function Rr(t){return new Promise(e=>{(0,Fr.execFile)("powershell.exe",["-NoProfile","-NonInteractive","-Command",t],{timeout:1e4},(r,n,i)=>{let o=r&&"code"in r?r.code:0;e({stdout:n??"",stderr:i??"",code:o})})})}function Zd(t,e){return new Promise(r=>{let n=(0,Fr.spawn)("powershell.exe",["-NoProfile","-NonInteractive","-Command",t],{stdio:["pipe","pipe","pipe"],timeout:1e4}),i="",o="";n.stdout?.on("data",s=>{i+=s.toString()}),n.stderr?.on("data",s=>{o+=s.toString()}),n.on("close",s=>{r({stdout:i,stderr:o,code:s})}),n.on("error",()=>{r({stdout:"",stderr:"Failed to spawn process",code:1})}),n.stdin?.on("error",()=>{}),n.stdin?.write(e),n.stdin?.end()})}function st(t){return t.replace(/'/g,"''")}var Fr,or,ei,rs=xe(()=>{"use strict";Fr=require("node:child_process");or=`
31
30
  try { $null = [Windows.Security.Credentials.PasswordVault] } catch {
32
31
  [void][Windows.Security.Credentials.PasswordVault,Windows.Security.Credentials,ContentType=WindowsRuntime]
33
32
  }
34
- `,rc=class{name="Windows Credential Manager";isSecure=!0;async get(t,r){let i=`${Xr}
33
+ `,ei=class{name="Windows Credential Manager";isSecure=!0;async get(e,r){let n=`${or}
35
34
  $v = New-Object Windows.Security.Credentials.PasswordVault
36
35
  try {
37
- $c = $v.Retrieve('${Pt(t)}', '${Pt(r)}')
36
+ $c = $v.Retrieve('${st(e)}', '${st(r)}')
38
37
  $c.RetrievePassword()
39
38
  Write-Output $c.Password
40
39
  } catch {
41
40
  exit 1
42
41
  }
43
- `,{stdout:n,code:o}=await ka(i);return o!==0||!n.trim()?null:n.trim()}async set(t,r,i){let n=`${Xr}
42
+ `,{stdout:i,code:o}=await Rr(n);return o!==0||!i.trim()?null:i.trim()}async set(e,r,n){let i=`${or}
44
43
  $v = New-Object Windows.Security.Credentials.PasswordVault
45
44
  try {
46
- $c = $v.Retrieve('${Pt(t)}', '${Pt(r)}')
45
+ $c = $v.Retrieve('${st(e)}', '${st(r)}')
47
46
  $v.Remove($c)
48
47
  } catch {}
49
- `;await ka(n);let o=`${Xr}
48
+ `;await Rr(i);let o=`${or}
50
49
  $secret = [Console]::In.ReadLine()
51
50
  $v = New-Object Windows.Security.Credentials.PasswordVault
52
- $c = New-Object Windows.Security.Credentials.PasswordCredential('${Pt(t)}', '${Pt(r)}', $secret)
51
+ $c = New-Object Windows.Security.Credentials.PasswordCredential('${st(e)}', '${st(r)}', $secret)
53
52
  $v.Add($c)
54
- `,{code:s,stderr:a}=await gw(o,i);if(s!==0)throw new Error(`Failed to store credential in Windows Credential Manager: ${a.trim()}`)}async delete(t,r){let i=`${Xr}
53
+ `,{code:s,stderr:a}=await Zd(o,n);if(s!==0)throw new Error(`Failed to store credential in Windows Credential Manager: ${a.trim()}`)}async delete(e,r){let n=`${or}
55
54
  $v = New-Object Windows.Security.Credentials.PasswordVault
56
55
  try {
57
- $c = $v.Retrieve('${Pt(t)}', '${Pt(r)}')
56
+ $c = $v.Retrieve('${st(e)}', '${st(r)}')
58
57
  $v.Remove($c)
59
58
  } catch {
60
59
  exit 1
61
60
  }
62
- `,{code:n}=await ka(i);return n===0}async isAvailable(){if(process.platform!=="win32")return!1;let{code:t}=await ka(`${Xr} $null = New-Object Windows.Security.Credentials.PasswordVault`);return t===0}}});async function Tt(){if(ct)return ct;let e=process.env.RESEND_CREDENTIAL_STORE;if(e==="file"){let{FileBackend:r}=await Promise.resolve().then(()=>(Ql(),Yl));return ct=new r,ct}if(e==="secure_storage"){let r=await Jb();if(r)return ct=r,ct}if(!e){let r=await Jb();if(r)return ct=r,ct}let{FileBackend:t}=await Promise.resolve().then(()=>(Ql(),Yl));return ct=new t,ct}async function Jb(){if(process.platform==="darwin"){let{MacOSBackend:e}=await Promise.resolve().then(()=>(Db(),jb)),t=new e;if(await t.isAvailable())return t}else if(process.platform==="linux"){let{LinuxBackend:e}=await Promise.resolve().then(()=>(Rb(),qb)),t=new e;if(await t.isAvailable())return t}else if(process.platform==="win32"){let{WindowsBackend:e}=await Promise.resolve().then(()=>(zb(),Mb)),t=new e;if(await t.isAvailable())return t}return null}var gt,ct,ic=De(()=>{"use strict";gt="resend-cli",ct=null});function It(e,t){(0,Te.mkdirSync)((0,Bb.dirname)(e),{recursive:!0});let r=vw(e);try{let i=t();return i instanceof Promise?i.finally(()=>nc(e,r)):(nc(e,r),i)}catch(i){throw nc(e,r),i}}var Hb,Te,Bb,bw,_w,Fb,vw,nc,yw,Cw,Lb=De(()=>{"use strict";Hb=require("node:crypto"),Te=require("node:fs"),Bb=require("node:path"),bw=1e4,_w=50,Fb=200;vw=e=>{let t=(0,Hb.randomUUID)();for(let r=0;r<Fb;r++)try{let i=(0,Te.openSync)(e,"wx");try{(0,Te.writeSync)(i,t)}finally{(0,Te.closeSync)(i)}return t}catch(i){if(i.code!=="EEXIST")throw i;if(yw(e)){try{(0,Te.unlinkSync)(e)}catch{}continue}Cw(_w)}throw new Error(`Could not acquire lock on ${e} after ${Fb} retries. If no other resend process is running, delete the lock file manually.`)},nc=(e,t)=>{try{if((0,Te.readFileSync)(e,"utf-8")!==t)return;(0,Te.unlinkSync)(e)}catch{}},yw=e=>{try{let t=(0,Te.statSync)(e);return Date.now()-t.mtimeMs>bw}catch{return!0}},Cw=e=>{Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,e)}});var Nb,Ie,Gb,Ub,Ow,Wb=De(()=>{"use strict";Nb=require("node:crypto"),Ie=require("node:fs"),Gb=require("node:path"),Ub=(e,t,r)=>{let i=`${e}.tmp.${process.pid}.${(0,Nb.randomUUID)()}`;try{let n=(0,Ie.openSync)(i,"w",r);try{(0,Ie.writeSync)(n,t),(0,Ie.fsyncSync)(n)}finally{(0,Ie.closeSync)(n)}(0,Ie.renameSync)(i,e),Ow((0,Gb.dirname)(e))}catch(n){try{(0,Ie.unlinkSync)(i)}catch{}throw n}},Ow=e=>{if(process.platform!=="win32")try{let t=(0,Ie.openSync)(e,"r");try{(0,Ie.fsyncSync)(t)}finally{(0,Ie.closeSync)(t)}}catch{}}});function rt(){return process.env.XDG_CONFIG_HOME?(0,yr.join)(process.env.XDG_CONFIG_HOME,"resend"):process.platform==="win32"&&process.env.APPDATA?(0,yr.join)(process.env.APPDATA,"resend"):(0,yr.join)((0,Vb.homedir)(),".config","resend")}function Xt(){return(0,yr.join)(rt(),"credentials.json")}function oc(){try{return Fe()}catch{return null}}function Fe(){let e=Xt();if(!(0,Ue.existsSync)(e))return null;let t=(0,Ue.readFileSync)(e,"utf-8");if(t.trim().length===0)return null;let r;try{r=JSON.parse(t)}catch{throw new Sa(e)}if(typeof r=="object"&&r!==null&&"api_key"in r&&!("profiles"in r)&&!("teams"in r))return{active_profile:"default",profiles:{default:{api_key:r.api_key}}};if("profiles"in r){let i=r.storage==="keychain"?"secure_storage":r.storage;return{active_profile:r.active_profile??"default",...i?{storage:i}:{},profiles:r.profiles}}return"teams"in r?{active_profile:r.active_team??"default",profiles:r.teams}:null}function tr(e){let t=rt();(0,Ue.mkdirSync)(t,{recursive:!0,mode:448});let r=Xt();return Ub(r,`${JSON.stringify(e,null,2)}
63
- `,384),(0,Ue.chmodSync)(r,384),r}function Ea(e){if(e)return e;let t=process.env.RESEND_PROFILE;if(t)return t;let r=Fe();return r?.active_profile?r.active_profile:"default"}function Zl(e,t,r){let i=t||"default",n=pe(i);if(n)throw new Error(n);return It(er(),()=>{let o=Fe()||{active_profile:"default",profiles:{}},s={...o.profiles,[i]:{api_key:e,...r&&{permission:r}}},a={...o,profiles:s,...Object.keys(s).length===1?{active_profile:i}:{}};return tr(a)})}function Ib(e){return It(er(),()=>{let t=Fe();if(!t)throw new Error("No credentials file found.");let r=e||Ea();if(!t.profiles[r])throw new Error(`Profile "${r}" not found. Available profiles: ${Object.keys(t.profiles).join(", ")}`);let{[r]:i,...n}=t.profiles;if(Object.keys(n).length===0){let s=Xt();return(0,Ue.unlinkSync)(s),s}let o=t.active_profile===r?Object.keys(n)[0]||"default":t.active_profile;return tr({...t,active_profile:o,profiles:n})})}function Pa(e){let t=pe(e);if(t)throw new Error(t);It(er(),()=>{let r=Fe();if(!r)throw new Error("No credentials file found. Run: resend login");if(!r.profiles[e])throw new Error(`Profile "${e}" not found. Available profiles: ${Object.keys(r.profiles).join(", ")}`);tr({...r,active_profile:e})})}function $e(){let e=Fe();return e?Object.keys(e.profiles).map(t=>({name:t,active:t===e.active_profile})):[]}function pe(e){if(!e||e.length===0)return"Profile name must not be empty";if(e.length>64)return"Profile name must be 64 characters or fewer";if(!/^[a-zA-Z0-9._-]+$/.test(e))return"Profile name must contain only letters, numbers, dots, dashes, and underscores"}function rr(e){return e.length<=7?`${e.slice(0,3)}...`:`${e.slice(0,3)}...${e.slice(-4)}`}async function ir(e,t){if(e)return{key:e,source:"flag"};let r=process.env.RESEND_API_KEY;if(r)return{key:r,source:"env"};let i=Fe(),n=t||process.env.RESEND_PROFILE||i?.active_profile||"default";if(i?.storage==="secure_storage"&&i.profiles[n]){let s=await(await Tt()).get(gt,n);if(s){let a=i.profiles[n]?.permission;return{key:s,source:"secure_storage",profile:n,permission:a}}}if(i){let o=i.profiles[n];if(o?.api_key)return{key:o.api_key,source:"config",profile:n,permission:o.permission}}return null}async function Kb(e,t,r){let i=t||"default",n=pe(i);if(n)throw new Error(n);let o=await Tt();return o.isSecure?{configPath:await It(er(),async()=>{await o.set(gt,i,e);let a=Fe()||{active_profile:"default",profiles:{}},u={...a.profiles,[i]:{...r&&{permission:r}}};return tr({...a,storage:"secure_storage",profiles:u,...Object.keys(u).length===1?{active_profile:i}:{}})}),backend:o}:{configPath:Zl(e,i,r),backend:o}}async function Ta(e){return It(er(),async()=>{let t=Fe(),r=e||process.env.RESEND_PROFILE||t?.active_profile||"default";if(!t?.profiles[r])throw new Error(t?`Profile "${r}" not found. Available profiles: ${Object.keys(t.profiles).join(", ")}`:"No credentials file found.");if(t.storage==="secure_storage"){let s=await Tt();if(s.isSecure&&!await s.delete(gt,r))throw new Error(`Failed to remove API key for profile "${r}" from ${s.name}. Credential may still exist in secure storage.`)}let{[r]:i,...n}=t.profiles;if(Object.keys(n).length===0){let s=Xt();return(0,Ue.unlinkSync)(s),s}let o=t.active_profile===r?Object.keys(n)[0]||"default":t.active_profile;return tr({...t,active_profile:o,profiles:n})})}async function Yb(){return It(er(),async()=>{let e=oc(),t=Xt();if(e?.storage==="secure_storage"){let r=await Tt();if(r.isSecure){let i=Object.keys(e.profiles),n=await Promise.all(i.map(s=>r.delete(gt,s))),o=i.filter((s,a)=>!n[a]);if(o.length>0){let s=Object.fromEntries(Object.entries(e.profiles).filter(([u])=>!n[i.indexOf(u)])),a=Object.keys(s);throw tr({...e,active_profile:e.active_profile&&s[e.active_profile]?e.active_profile:a[0]??"default",profiles:s}),new Error(`Failed to remove API keys from ${r.name} for profiles: ${o.join(", ")}. Credentials may still exist in secure storage.`)}}}return(0,Ue.existsSync)(t)&&(0,Ue.unlinkSync)(t),t})}async function Ia(e,t){if(e===t)return;let r=pe(t);if(r)throw new Error(r);await It(er(),async()=>{let i=Fe();if(!i)throw new Error("No credentials file found. Run: resend login");if(!i.profiles[e])throw new Error(`Profile "${e}" not found. Available profiles: ${Object.keys(i.profiles).join(", ")}`);if(i.profiles[t])throw new Error(`Profile "${t}" already exists.`);if(i.storage==="secure_storage"){let s=await Tt();if(s.isSecure){let a=await s.get(gt,e);if(a&&(await s.set(gt,t,a),!await s.delete(gt,e))){let d=await s.delete(gt,t);throw new Error(d?`Failed to remove old credential "${e}" from ${s.name} during rename. The rename has been rolled back.`:`Failed to remove old credential "${e}" from ${s.name} during rename. Rollback also failed \u2014 credential "${t}" may still exist in secure storage.`)}}}let{[e]:n,...o}=i.profiles;tr({...i,active_profile:i.active_profile===e?t:i.active_profile,profiles:{...o,[t]:n}})})}var Ue,Vb,yr,Cr,er,Pe=De(()=>{"use strict";Ue=require("node:fs"),Vb=require("node:os"),yr=require("node:path");Tb();ic();Lb();Wb();Cr=`Sending-only keys work with: emails send, emails batch, broadcasts send.
64
- Create a full access key at https://resend.com/api-keys`;er=()=>(0,yr.join)(rt(),"credentials.json.lock")});function O(){return!(!process.stdin.isTTY||!process.stdout.isTTY||process.env.CI==="true"||process.env.CI==="1"||process.env.GITHUB_ACTIONS||process.env.TERM==="dumb")}var bt,X=De(()=>{"use strict";bt=process.platform!=="win32"||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"});function qv(){return(0,Dv.join)(rt(),"update-state.json")}function Zw(){try{return JSON.parse((0,$r.readFileSync)(qv(),"utf-8"))}catch{return null}}function Xw(e){(0,$r.mkdirSync)(rt(),{recursive:!0,mode:448}),(0,$r.writeFileSync)(qv(),JSON.stringify(e),{mode:384})}function Ua(e,t){let r=d=>d.replace(/^v/,"").split(".").map(Number),[i,n,o]=r(e),[s,a,u]=r(t);return s!==i?s>i:a!==n?a>n:u>o}async function gc(){try{let e=await fetch(hc,{headers:{Accept:"application/vnd.github.v3+json"},signal:AbortSignal.timeout(5e3)});if(!e.ok)return null;let t=await e.json();if(t.prerelease||t.draft)return null;let r=t.tag_name?.replace(/^v/,"");return!r||!/^\d+\.\d+\.\d+$/.test(r)?null:r}catch{return null}}function ex(e){return!!(e?.json||process.env.RESEND_NO_UPDATE_NOTIFIER==="1"||process.env.CI==="true"||process.env.CI==="1"||process.env.GITHUB_ACTIONS||!process.stdout.isTTY)}function Rv(){let e=Wa();return e.startsWith("npm")?"npm":e.startsWith("brew")?"homebrew":e.startsWith("curl")||e.startsWith("irm")?"install-script":"manual"}function Wa(){let e=process.execPath||process.argv[0]||"",t=process.argv[1]||"";return process.env.npm_execpath||/node_modules/.test(t)||/node_modules/.test(e)?"npm install -g resend-cli":/\/(Cellar|homebrew)\//i.test(e)?"brew update && brew upgrade resend":/[/\\]\.resend[/\\]bin[/\\]/.test(e)?process.platform==="win32"?"irm https://resend.com/install.ps1 | iex":"curl -fsSL https://resend.com/install.sh | bash":"https://github.com/resend/resend-cli/releases/latest"}function jv(e){let t=Wa(),r=t.startsWith("http"),i="\x1B[2m",n="\x1B[33m",o="\x1B[36m",s="\x1B[0m",a=["",`${i}Update available: ${n}v${se}${s}${i} \u2192 ${o}v${e}${s}`,`${i}${r?"Visit":"Run"}: ${o}${t}${s}`];return process.platform==="win32"&&a.push(`${i}Or download from: ${o}https://github.com/resend/resend-cli/releases/latest${s}`),a.push(""),a.join(`
65
- `)}async function Mv(e){if(ex(e))return;let t=Zw(),r=Date.now();if(t&&r-t.lastChecked<Qw){Ua(se,t.latestVersion)&&process.stderr.write(jv(t.latestVersion));return}let i=await gc();i&&(Xw({lastChecked:r,latestVersion:i}),Ua(se,i)&&process.stderr.write(jv(i)))}var $r,Dv,Qw,hc,oi=De(()=>{"use strict";$r=require("node:fs"),Dv=require("node:path");Pe();Mt();Qw=3600*1e3,hc="https://api.github.com/repos/resend/resend-cli/releases/latest"});var C0={};Mr(C0,{flushFromFile:()=>kx,flushPayload:()=>y0,getOrCreateAnonymousId:()=>v0,getSpoolDir:()=>Cc,isDisabled:()=>_0,trackCommand:()=>Oc});function Cx(){return yx[process.platform]??process.platform}function Cc(){let e=(0,at.join)(rt(),"telemetry-spool");return(0,U.mkdirSync)(e,{recursive:!0,mode:448}),e}function _0(){return!b0||process.env.DO_NOT_TRACK==="1"||process.env.RESEND_TELEMETRY_DISABLED==="1"}function v0(){let e=rt(),t=(0,at.join)(e,"telemetry-id");try{let i=(0,U.readFileSync)(t,"utf-8").trim();if(i)return i}catch{}let r=crypto.randomUUID();return(0,U.mkdirSync)(e,{recursive:!0,mode:448}),(0,U.writeFileSync)(t,r,{mode:384}),r}function Ox(e){if(!e)return;let t=rt(),r=(0,at.join)(t,"telemetry-notice-shown");(0,U.existsSync)(r)||((0,U.mkdirSync)(t,{recursive:!0,mode:448}),(0,U.writeFileSync)(r,"",{mode:384}),process.stderr.write(`
61
+ `,{code:i}=await Rr(n);return i===0}async isAvailable(){if(process.platform!=="win32")return!1;let{code:e}=await Rr(`${or} $null = New-Object Windows.Security.Credentials.PasswordVault`);return e===0}}});async function at(){if(We)return We;let t=process.env.RESEND_CREDENTIAL_STORE;if(t==="file"){let{FileBackend:r}=await Promise.resolve().then(()=>(Jn(),zn));return We=new r,We}if(t==="secure_storage"){let r=await ns();if(r)return We=r,We}if(!t){let r=await ns();if(r)return We=r,We}let{FileBackend:e}=await Promise.resolve().then(()=>(Jn(),zn));return We=new e,We}async function ns(){if(process.platform==="darwin"){let{MacOSBackend:t}=await Promise.resolve().then(()=>(Xo(),Qo)),e=new t;if(await e.isAvailable())return e}else if(process.platform==="linux"){let{LinuxBackend:t}=await Promise.resolve().then(()=>(es(),Zo)),e=new t;if(await e.isAvailable())return e}else if(process.platform==="win32"){let{WindowsBackend:t}=await Promise.resolve().then(()=>(rs(),ts)),e=new t;if(await e.isAvailable())return e}return null}var Ye,We,ti=xe(()=>{"use strict";Ye="resend-cli",We=null});function lt(t,e){(0,ve.mkdirSync)((0,ss.dirname)(t),{recursive:!0});let r=rm(t);try{let n=e();return n instanceof Promise?n.finally(()=>ri(t,r)):(ri(t,r),n)}catch(n){throw ri(t,r),n}}var os,ve,ss,em,tm,is,rm,ri,nm,im,as=xe(()=>{"use strict";os=require("node:crypto"),ve=require("node:fs"),ss=require("node:path"),em=1e4,tm=50,is=200;rm=t=>{let e=(0,os.randomUUID)();for(let r=0;r<is;r++)try{let n=(0,ve.openSync)(t,"wx");try{(0,ve.writeSync)(n,e)}finally{(0,ve.closeSync)(n)}return e}catch(n){if(n.code!=="EEXIST")throw n;if(nm(t)){try{(0,ve.unlinkSync)(t)}catch{}continue}im(tm)}throw new Error(`Could not acquire lock on ${t} after ${is} retries. If no other resend process is running, delete the lock file manually.`)},ri=(t,e)=>{try{if((0,ve.readFileSync)(t,"utf-8")!==e)return;(0,ve.unlinkSync)(t)}catch{}},nm=t=>{try{let e=(0,ve.statSync)(t);return Date.now()-e.mtimeMs>em}catch{return!0}},im=t=>{Atomics.wait(new Int32Array(new SharedArrayBuffer(4)),0,0,t)}});var ls,Ce,cs,us,om,ds=xe(()=>{"use strict";ls=require("node:crypto"),Ce=require("node:fs"),cs=require("node:path"),us=(t,e,r)=>{let n=`${t}.tmp.${process.pid}.${(0,ls.randomUUID)()}`;try{let i=(0,Ce.openSync)(n,"w",r);try{(0,Ce.writeSync)(i,e),(0,Ce.fsyncSync)(i)}finally{(0,Ce.closeSync)(i)}(0,Ce.renameSync)(n,t),om((0,cs.dirname)(t))}catch(i){try{(0,Ce.unlinkSync)(n)}catch{}throw i}},om=t=>{if(process.platform!=="win32")try{let e=(0,Ce.openSync)(t,"r");try{(0,Ce.fsyncSync)(e)}finally{(0,Ce.closeSync)(e)}}catch{}}});function Be(){return process.env.XDG_CONFIG_HOME?(0,St.join)(process.env.XDG_CONFIG_HOME,"resend"):process.platform==="win32"&&process.env.APPDATA?(0,St.join)(process.env.APPDATA,"resend"):(0,St.join)((0,ms.homedir)(),".config","resend")}function yt(){return(0,St.join)(Be(),"credentials.json")}function ni(){try{return $e()}catch{return null}}function $e(){let t=yt();if(!(0,Pe.existsSync)(t))return null;let e=(0,Pe.readFileSync)(t,"utf-8");if(e.trim().length===0)return null;let r;try{r=JSON.parse(e)}catch{throw new Ir(t)}if(typeof r=="object"&&r!==null&&"api_key"in r&&!("profiles"in r)&&!("teams"in r))return{active_profile:"default",profiles:{default:{api_key:r.api_key}}};if("profiles"in r){let n=r.storage==="keychain"?"secure_storage":r.storage;return{active_profile:r.active_profile??"default",...n?{storage:n}:{},profiles:r.profiles}}return"teams"in r?{active_profile:r.active_team??"default",profiles:r.teams}:null}function Ct(t){let e=Be();(0,Pe.mkdirSync)(e,{recursive:!0,mode:448});let r=yt();return us(r,`${JSON.stringify(t,null,2)}
62
+ `,384),(0,Pe.chmodSync)(r,384),r}function Br(t){if(t)return t;let e=process.env.RESEND_PROFILE;if(e)return e;let r=$e();return r?.active_profile?r.active_profile:"default"}function Yn(t,e,r){let n=e||"default",i=se(n);if(i)throw new Error(i);return lt(vt(),()=>{let o=$e()||{active_profile:"default",profiles:{}},s={...o.profiles,[n]:{api_key:t,...r&&{permission:r}}},a={...o,profiles:s,...Object.keys(s).length===1?{active_profile:n}:{}};return Ct(a)})}function Jo(t){return lt(vt(),()=>{let e=$e();if(!e)throw new Error("No credentials file found.");let r=t||Br();if(!e.profiles[r])throw new Error(`Profile "${r}" not found. Available profiles: ${Object.keys(e.profiles).join(", ")}`);let{[r]:n,...i}=e.profiles;if(Object.keys(i).length===0){let s=yt();return(0,Pe.unlinkSync)(s),s}let o=e.active_profile===r?Object.keys(i)[0]||"default":e.active_profile;return Ct({...e,active_profile:o,profiles:i})})}function Nr(t){let e=se(t);if(e)throw new Error(e);lt(vt(),()=>{let r=$e();if(!r)throw new Error("No credentials file found. Run: resend login");if(!r.profiles[t])throw new Error(`Profile "${t}" not found. Available profiles: ${Object.keys(r.profiles).join(", ")}`);Ct({...r,active_profile:t})})}function we(){let t=$e();return t?Object.keys(t.profiles).map(e=>({name:e,active:e===t.active_profile})):[]}function se(t){if(!t||t.length===0)return"Profile name must not be empty";if(t.length>64)return"Profile name must be 64 characters or fewer";if(!/^[a-zA-Z0-9._-]+$/.test(t))return"Profile name must contain only letters, numbers, dots, dashes, and underscores"}function wt(t){return t.length<=7?`${t.slice(0,3)}...`:`${t.slice(0,3)}...${t.slice(-4)}`}async function _t(t,e){if(t)return{key:t,source:"flag"};let r=process.env.RESEND_API_KEY;if(r)return{key:r,source:"env"};let n=$e(),i=e||process.env.RESEND_PROFILE||n?.active_profile||"default";if(n?.storage==="secure_storage"&&n.profiles[i]){let s=await(await at()).get(Ye,i);if(s){let a=n.profiles[i]?.permission;return{key:s,source:"secure_storage",profile:i,permission:a}}}if(n){let o=n.profiles[i];if(o?.api_key)return{key:o.api_key,source:"config",profile:i,permission:o.permission}}return null}async function ps(t,e,r){let n=e||"default",i=se(n);if(i)throw new Error(i);let o=await at();return o.isSecure?{configPath:await lt(vt(),async()=>{await o.set(Ye,n,t);let a=$e()||{active_profile:"default",profiles:{}},l={...a.profiles,[n]:{...r&&{permission:r}}};return Ct({...a,storage:"secure_storage",profiles:l,...Object.keys(l).length===1?{active_profile:n}:{}})}),backend:o}:{configPath:Yn(t,n,r),backend:o}}async function Hr(t){return lt(vt(),async()=>{let e=$e(),r=t||process.env.RESEND_PROFILE||e?.active_profile||"default";if(!e?.profiles[r])throw new Error(e?`Profile "${r}" not found. Available profiles: ${Object.keys(e.profiles).join(", ")}`:"No credentials file found.");if(e.storage==="secure_storage"){let s=await at();if(s.isSecure&&!await s.delete(Ye,r))throw new Error(`Failed to remove API key for profile "${r}" from ${s.name}. Credential may still exist in secure storage.`)}let{[r]:n,...i}=e.profiles;if(Object.keys(i).length===0){let s=yt();return(0,Pe.unlinkSync)(s),s}let o=e.active_profile===r?Object.keys(i)[0]||"default":e.active_profile;return Ct({...e,active_profile:o,profiles:i})})}async function fs(){return lt(vt(),async()=>{let t=ni(),e=yt();if(t?.storage==="secure_storage"){let r=await at();if(r.isSecure){let n=Object.keys(t.profiles),i=await Promise.all(n.map(s=>r.delete(Ye,s))),o=n.filter((s,a)=>!i[a]);if(o.length>0){let s=Object.fromEntries(Object.entries(t.profiles).filter(([l])=>!i[n.indexOf(l)])),a=Object.keys(s);throw Ct({...t,active_profile:t.active_profile&&s[t.active_profile]?t.active_profile:a[0]??"default",profiles:s}),new Error(`Failed to remove API keys from ${r.name} for profiles: ${o.join(", ")}. Credentials may still exist in secure storage.`)}}}return(0,Pe.existsSync)(e)&&(0,Pe.unlinkSync)(e),e})}async function Lr(t,e){if(t===e)return;let r=se(e);if(r)throw new Error(r);await lt(vt(),async()=>{let n=$e();if(!n)throw new Error("No credentials file found. Run: resend login");if(!n.profiles[t])throw new Error(`Profile "${t}" not found. Available profiles: ${Object.keys(n.profiles).join(", ")}`);if(n.profiles[e])throw new Error(`Profile "${e}" already exists.`);if(n.storage==="secure_storage"){let s=await at();if(s.isSecure){let a=await s.get(Ye,t);if(a&&(await s.set(Ye,e,a),!await s.delete(Ye,t))){let d=await s.delete(Ye,e);throw new Error(d?`Failed to remove old credential "${t}" from ${s.name} during rename. The rename has been rolled back.`:`Failed to remove old credential "${t}" from ${s.name} during rename. Rollback also failed \u2014 credential "${e}" may still exist in secure storage.`)}}}let{[t]:i,...o}=n.profiles;Ct({...n,active_profile:n.active_profile===t?e:n.active_profile,profiles:{...o,[e]:i}})})}var Pe,ms,St,Tt,vt,ye=xe(()=>{"use strict";Pe=require("node:fs"),ms=require("node:os"),St=require("node:path");zo();ti();as();ds();Tt=`Sending-only keys work with: emails send, emails batch, broadcasts send.
63
+ Create a full access key at https://resend.com/api-keys`;vt=()=>(0,St.join)(Be(),"credentials.json.lock")});function w(){return!(!process.stdin.isTTY||!process.stdout.isTTY||process.env.CI==="true"||process.env.CI==="1"||process.env.GITHUB_ACTIONS||process.env.TERM==="dumb")}var Qe,z=xe(()=>{"use strict";Qe=process.platform!=="win32"||!!process.env.WT_SESSION||process.env.TERM_PROGRAM==="vscode"});function Za(){return(0,Xa.join)(Be(),"update-state.json")}function Rm(){try{return JSON.parse((0,Gt.readFileSync)(Za(),"utf-8"))}catch{return null}}function Fm(t){(0,Gt.mkdirSync)(Be(),{recursive:!0,mode:448}),(0,Gt.writeFileSync)(Za(),JSON.stringify(t),{mode:384})}function tn(t,e){let r=d=>d.replace(/^v/,"").split(".").map(Number),[n,i,o]=r(t),[s,a,l]=r(e);return s!==n?s>n:a!==i?a>i:l>o}async function fi(){try{let t=await fetch(pi,{headers:{Accept:"application/vnd.github.v3+json"},signal:AbortSignal.timeout(5e3)});if(!t.ok)return null;let e=await t.json();if(e.prerelease||e.draft)return null;let r=e.tag_name?.replace(/^v/,"");return!r||!/^\d+\.\d+\.\d+$/.test(r)?null:r}catch{return null}}function Bm(t){return!!(t?.json||process.env.RESEND_NO_UPDATE_NOTIFIER==="1"||process.env.CI==="true"||process.env.CI==="1"||process.env.GITHUB_ACTIONS||!process.stdout.isTTY)}function el(){let t=rn();return t.startsWith("npm")?"npm":t.startsWith("brew")?"homebrew":t.startsWith("curl")||t.startsWith("irm")?"install-script":"manual"}function rn(){let t=process.execPath||process.argv[0]||"",e=process.argv[1]||"";return process.env.npm_execpath||/node_modules/.test(e)||/node_modules/.test(t)?"npm install -g resend-cli":/\/(Cellar|homebrew)\//i.test(t)?"brew update && brew upgrade resend":/[/\\]\.resend[/\\]bin[/\\]/.test(t)?process.platform==="win32"?"irm https://resend.com/install.ps1 | iex":"curl -fsSL https://resend.com/install.sh | bash":"https://github.com/resend/resend-cli/releases/latest"}function Qa(t){let e=rn(),r=e.startsWith("http"),n="\x1B[2m",i="\x1B[33m",o="\x1B[36m",s="\x1B[0m",a=["",`${n}Update available: ${i}v${te}${s}${n} \u2192 ${o}v${t}${s}`,`${n}${r?"Visit":"Run"}: ${o}${e}${s}`];return process.platform==="win32"&&a.push(`${n}Or download from: ${o}https://github.com/resend/resend-cli/releases/latest${s}`),a.push(""),a.join(`
64
+ `)}async function tl(t){if(Bm(t))return;let e=Rm(),r=Date.now();if(e&&r-e.lastChecked<jm){tn(te,e.latestVersion)&&process.stderr.write(Qa(e.latestVersion));return}let n=await fi();n&&(Fm({lastChecked:r,latestVersion:n}),tn(te,n)&&process.stderr.write(Qa(n)))}var Gt,Xa,jm,pi,dr=xe(()=>{"use strict";Gt=require("node:fs"),Xa=require("node:path");ye();ht();jm=3600*1e3,pi="https://api.github.com/repos/resend/resend-cli/releases/latest"});var Vc={};Vt(Vc,{flushFromFile:()=>bp,flushPayload:()=>Wc,getOrCreateAnonymousId:()=>Uc,getSpoolDir:()=>vi,isDisabled:()=>qc,trackCommand:()=>Ci});function mp(){return dp[process.platform]??process.platform}function vi(){let t=(0,Me.join)(Be(),"telemetry-spool");return(0,U.mkdirSync)(t,{recursive:!0,mode:448}),t}function qc(){return!Mc||process.env.DO_NOT_TRACK==="1"||process.env.RESEND_TELEMETRY_DISABLED==="1"}function Uc(){let t=Be(),e=(0,Me.join)(t,"telemetry-id");try{let n=(0,U.readFileSync)(e,"utf-8").trim();if(n)return n}catch{}let r=crypto.randomUUID();return(0,U.mkdirSync)(t,{recursive:!0,mode:448}),(0,U.writeFileSync)(e,r,{mode:384}),r}function pp(t){if(!t)return;let e=Be(),r=(0,Me.join)(e,"telemetry-notice-shown");(0,U.existsSync)(r)||((0,U.mkdirSync)(e,{recursive:!0,mode:448}),(0,U.writeFileSync)(r,"",{mode:384}),process.stderr.write(`
66
65
  Resend collects anonymous CLI usage data to improve the tool.
67
66
  To opt out: export RESEND_TELEMETRY_DISABLED=1
68
67
 
69
- `))}function Oc(e,t){if(!_0())try{let r=O()&&!t.json;Ox(r);let i=v0(),n={command:e,cli_version:se,os:Cx(),node_version:process.version,interactive:r,install_method:Rv()};t.flags?.length&&(n.flags=t.flags),t.globalFlags?.length&&(n.global_flags=t.globalFlags);let o=crypto.randomUUID(),s=JSON.stringify({api_key:b0,distinct_id:i,event:"cli.used",properties:n,_nonce:o}),a=Cc(),u=(0,at.join)(a,`resend-telemetry-${crypto.randomUUID()}.json`),d=(0,U.openSync)(u,U.constants.O_CREAT|U.constants.O_EXCL|U.constants.O_WRONLY|(U.constants.O_NOFOLLOW??0),384);try{(0,U.writeFileSync)(d,s)}finally{(0,U.closeSync)(d)}let l="pkg"in process,c=l?["telemetry","flush",u]:process.execArgv.concat([process.argv[1],"telemetry","flush",u]);(0,g0.spawn)(process.execPath,c,{detached:!0,stdio:"ignore",env:{...process.env,RESEND_TELEMETRY_DISABLED:"1",...l?{PKG_EXECPATH:""}:{}}}).unref()}catch{}}async function y0(e){let t=JSON.parse(e);if(!Sx(t))throw new Error("invalid telemetry payload schema");let{_nonce:r,...i}=t,n=JSON.stringify(i),o=await fetch(vx,{method:"POST",headers:{"Content-Type":"application/json"},body:n,signal:AbortSignal.timeout(3e3)});if(!o.ok)throw new Error(`telemetry flush failed: ${o.status}`)}async function kx(e){let t=(0,at.join)(e),r=Cc(),i=(0,at.basename)(t);if((0,at.dirname)(t)!==r||!xx.test(i)||(0,U.realpathSync)((0,at.dirname)(t))!==(0,U.realpathSync)(r))throw new Error("invalid telemetry flush path");let n=(0,U.openSync)(t,U.constants.O_RDONLY|U.constants.O_NOFOLLOW),o;try{let s=(0,U.fstatSync)(n);if(!s.isFile()||s.nlink!==1)throw new Error("invalid telemetry flush path");o=(0,U.readFileSync)(n,"utf-8")}finally{(0,U.closeSync)(n)}try{await y0(o)}finally{(0,U.unlinkSync)(t)}}var g0,U,at,b0,vx,yx,h0,Sx,wx,xx,Sc=De(()=>{"use strict";g0=require("node:child_process"),U=require("node:fs"),at=require("node:path");Pe();X();oi();Mt();b0="phc_AgEBpcQTRsBl3UgQX2U8XvimTlgdXG6YEhfvJl2cUfc",vx="https://us.i.posthog.com/capture/",yx={darwin:"macOS",win32:"Windows",linux:"Linux"};h0=new Set(["api_key","distinct_id","event","properties","_nonce"]),Sx=e=>{if(typeof e!="object"||e===null||Array.isArray(e))return!1;let t=e,r=Object.keys(t);return r.length!==h0.size||r.some(i=>!h0.has(i))?!1:typeof t.api_key=="string"&&typeof t.distinct_id=="string"&&t.event==="cli.used"&&typeof t.properties=="object"&&t.properties!==null&&!Array.isArray(t.properties)&&typeof t._nonce=="string"&&t._nonce.length>0};wx="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",xx=new RegExp(`^resend-telemetry-${wx}\\.json$`)});var Jc=we(zc(),1),{program:qx,createCommand:Rx,createArgument:Mx,createOption:zx,CommanderError:Jx,InvalidArgumentError:Fx,InvalidOptionArgumentError:Hx,Command:p,Argument:Fc,Option:le,Help:Bx}=Jc.default;var Rr=we(yt(),1);var K0=`Global options:
68
+ `))}function Ci(t,e){if(!qc())try{let r=w()&&!e.json;pp(r);let n=Uc(),i={command:t,cli_version:te,os:mp(),node_version:process.version,interactive:r,install_method:el()};e.flags?.length&&(i.flags=e.flags),e.globalFlags?.length&&(i.global_flags=e.globalFlags);let o=crypto.randomUUID(),s=JSON.stringify({api_key:Mc,distinct_id:n,event:"cli.used",properties:i,_nonce:o}),a=vi(),l=(0,Me.join)(a,`resend-telemetry-${crypto.randomUUID()}.json`),d=(0,U.openSync)(l,U.constants.O_CREAT|U.constants.O_EXCL|U.constants.O_WRONLY|(U.constants.O_NOFOLLOW??0),384);try{(0,U.writeFileSync)(d,s)}finally{(0,U.closeSync)(d)}let c="pkg"in process,u=c?["telemetry","flush",l]:process.execArgv.concat([process.argv[1],"telemetry","flush",l]);(0,Gc.spawn)(process.execPath,u,{detached:!0,stdio:"ignore",env:{...process.env,RESEND_TELEMETRY_DISABLED:"1",...c?{PKG_EXECPATH:""}:{}}}).unref()}catch{}}async function Wc(t){let e=JSON.parse(t);if(!fp(e))throw new Error("invalid telemetry payload schema");let{_nonce:r,...n}=e,i=JSON.stringify(n),o=await fetch(up,{method:"POST",headers:{"Content-Type":"application/json"},body:i,signal:AbortSignal.timeout(3e3)});if(!o.ok)throw new Error(`telemetry flush failed: ${o.status}`)}async function bp(t){let e=(0,Me.join)(t),r=vi(),n=(0,Me.basename)(e);if((0,Me.dirname)(e)!==r||!gp.test(n)||(0,U.realpathSync)((0,Me.dirname)(e))!==(0,U.realpathSync)(r))throw new Error("invalid telemetry flush path");let i=(0,U.openSync)(e,U.constants.O_RDONLY|U.constants.O_NOFOLLOW),o;try{let s=(0,U.fstatSync)(i);if(!s.isFile()||s.nlink!==1)throw new Error("invalid telemetry flush path");o=(0,U.readFileSync)(i,"utf-8")}finally{(0,U.closeSync)(i)}try{await Wc(o)}finally{(0,U.unlinkSync)(e)}}var Gc,U,Me,Mc,up,dp,Lc,fp,hp,gp,wi=xe(()=>{"use strict";Gc=require("node:child_process"),U=require("node:fs"),Me=require("node:path");ye();z();dr();ht();Mc="phc_AgEBpcQTRsBl3UgQX2U8XvimTlgdXG6YEhfvJl2cUfc",up="https://us.i.posthog.com/capture/",dp={darwin:"macOS",win32:"Windows",linux:"Linux"};Lc=new Set(["api_key","distinct_id","event","properties","_nonce"]),fp=t=>{if(typeof t!="object"||t===null||Array.isArray(t))return!1;let e=t,r=Object.keys(e);return r.length!==Lc.size||r.some(n=>!Lc.has(n))?!1:typeof e.api_key=="string"&&typeof e.distinct_id=="string"&&e.event==="cli.used"&&typeof e.properties=="object"&&e.properties!==null&&!Array.isArray(e.properties)&&typeof e._nonce=="string"&&e._nonce.length>0};hp="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",gp=new RegExp(`^resend-telemetry-${hp}\\.json$`)});var Bi=pe(Fi(),1),{program:$p,createCommand:Ep,createArgument:Dp,createOption:Sp,CommanderError:Tp,InvalidArgumentError:Op,InvalidOptionArgumentError:Ip,Command:p,Argument:Ni,Option:ee,Help:Pp}=Bi.default;var Wt=pe(et(),1);var Cu=`Global options:
70
69
  --api-key <key> API key (or set RESEND_API_KEY env var)
71
70
  -p, --profile <name> Profile to use (overrides RESEND_PROFILE)
72
71
  --json Force JSON output (also auto-enabled when stdout is piped)
73
- -q, --quiet Suppress spinners and status output (implies --json)`,Y0=`Global options:
72
+ -q, --quiet Suppress spinners and status output (implies --json)`,wu=`Global options:
74
73
  -p, --profile <name> Profile to use
75
74
  --json Force JSON output
76
- -q, --quiet Suppress spinners and status output (implies --json)`,Q0=' {"error":{"message":"<message>","code":"<code>"}}';function h(e){let t=[];return e.context!=null&&t.push(e.context),t.push(e.setup?Y0:K0),e.output!=null&&t.push(`Output (--json or piped):
77
- ${e.output}`),e.errorCodes!=null&&t.push(`Errors (exit code 1, JSON on stderr when using --json or non-TTY):
78
- ${Q0}
79
- Codes: ${e.errorCodes.join(" | ")}`),t.push(`Examples:
80
- ${e.examples.map(r=>` $ ${r}`).join(`
75
+ -q, --quiet Suppress spinners and status output (implies --json)`,_u=' {"error":{"message":"<message>","code":"<code>"}}';function f(t){let e=[];return t.context!=null&&e.push(t.context),e.push(t.setup?wu:Cu),t.output!=null&&e.push(`Output (--json or piped):
76
+ ${t.output}`),t.errorCodes!=null&&e.push(`Errors (exit code 1, JSON on stderr when using --json or non-TTY):
77
+ ${_u}
78
+ Codes: ${t.errorCodes.join(" | ")}`),e.push(`Examples:
79
+ ${t.examples.map(r=>` $ ${r}`).join(`
81
80
  `)}`),`
82
- ${t.join(`
83
-
84
- `)}`}var pi=require("node:util"),Jr=require("node:process");var nd=we(require("node:readline"),1);var Lc=(()=>{let e=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return t=>{let r=0;for(e.lastIndex=0;e.test(t);)r+=1;return t.length-r}})(),Nc=e=>e===12288||e>=65281&&e<=65376||e>=65504&&e<=65510,Gc=e=>e===8987||e===9001||e>=12272&&e<=12287||e>=12289&&e<=12350||e>=12441&&e<=12543||e>=12549&&e<=12591||e>=12593&&e<=12686||e>=12688&&e<=12771||e>=12783&&e<=12830||e>=12832&&e<=12871||e>=12880&&e<=19903||e>=65040&&e<=65049||e>=65072&&e<=65106||e>=65108&&e<=65126||e>=65128&&e<=65131||e>=127488&&e<=127490||e>=127504&&e<=127547||e>=127552&&e<=127560||e>=131072&&e<=196605||e>=196608&&e<=262141;var Z0=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,X0=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Uc=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,e2=/\t{1,1000}/y,Wc=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,t2=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,r2=/\p{M}+/gu,i2={limit:1/0,ellipsis:""},Vc=(e,t={},r={})=>{let i=t.limit??1/0,n=t.ellipsis??"",o=t?.ellipsisWidth??(n?Vc(n,i2,r).width:0),s=0,a=r.controlWidth??0,u=r.tabWidth??8,d=r.emojiWidth??2,l=2,c=r.regularWidth??1,m=r.wideWidth??l,v=[[t2,c],[Z0,s],[X0,a],[e2,u],[Wc,d],[Uc,m]],b=0,_=0,S=e.length,x=0,w=!1,A=S,M=Math.max(0,i-o),P=0,$=0,I=0,E=0;e:for(;;){if($>P||_>=S&&_>b){let j=e.slice(P,$)||e.slice(b,_);x=0;for(let Ae of j.replaceAll(r2,"")){let oe=Ae.codePointAt(0)||0;if(Nc(oe)?E=l:Gc(oe)?E=m:E=c,I+E>M&&(A=Math.min(A,Math.max(P,b)+x)),I+E>i){w=!0;break e}x+=Ae.length,I+=E}P=$=0}if(_>=S)break e;for(let j=0,Ae=v.length;j<Ae;j++){let[oe,qt]=v[j];if(oe.lastIndex=_,oe.test(e)){if(x=oe===Uc?Lc(e.slice(_,oe.lastIndex)):oe===Wc?1:oe.lastIndex-_,E=x*qt,I+E>M&&(A=Math.min(A,_+Math.floor((M-I)/qt))),I+E>i){w=!0;break e}I+=E,P=b,$=_,_=b=oe.lastIndex;continue e}}_+=1}return{width:w?M:I,index:w?A:S,truncated:w,ellipsed:w&&i>=o}},Kc=Vc;var n2={limit:1/0,ellipsis:"",ellipsisWidth:0},o2=(e,t={})=>Kc(e,n2,t).width,ut=o2;var di="\x1B",ed="\x9B",s2=39,bu="\x07",td="[",a2="]",rd="m",_u=`${a2}8;;`,Yc=new RegExp(`(?:\\${td}(?<code>\\d+)m|\\${_u}(?<uri>.*)${bu})`,"y"),Qc=e=>{if(e>=30&&e<=37||e>=90&&e<=97)return 39;if(e>=40&&e<=47||e>=100&&e<=107)return 49;if(e===1||e===2)return 22;if(e===3)return 23;if(e===4)return 24;if(e===7)return 27;if(e===8)return 28;if(e===9)return 29;if(e===0)return 0},Zc=e=>`${di}${td}${e}${rd}`,Xc=e=>`${di}${_u}${e}${bu}`,gu=(e,t,r)=>{let i=t[Symbol.iterator](),n=!1,o=!1,s=e.at(-1),a=s===void 0?0:ut(s),u=i.next(),d=i.next(),l=0;for(;!u.done;){let c=u.value,m=ut(c);a+m<=r?e[e.length-1]+=c:(e.push(c),a=0),(c===di||c===ed)&&(n=!0,o=t.startsWith(_u,l+1)),n?o?c===bu&&(n=!1,o=!1):c===rd&&(n=!1):(a+=m,a===r&&!d.done&&(e.push(""),a=0)),u=d,d=i.next(),l+=c.length}s=e.at(-1),!a&&s!==void 0&&s.length&&e.length>1&&(e[e.length-2]+=e.pop())},u2=e=>{let t=e.split(" "),r=t.length;for(;r&&!ut(t[r-1]);)r--;return r===t.length?e:t.slice(0,r).join(" ")+t.slice(r).join("")},l2=(e,t,r={})=>{if(r.trim!==!1&&e.trim()==="")return"";let i="",n,o,s=e.split(" "),a=[""],u=0;for(let c=0;c<s.length;c++){let m=s[c];if(r.trim!==!1){let b=a.at(-1)??"",_=b.trimStart();b.length!==_.length&&(a[a.length-1]=_,u=ut(_))}c!==0&&(u>=t&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),u=0),(u||r.trim===!1)&&(a[a.length-1]+=" ",u++));let v=ut(m);if(r.hard&&v>t){let b=t-u,_=1+Math.floor((v-b-1)/t);Math.floor((v-1)/t)<_&&a.push(""),gu(a,m,t),u=ut(a.at(-1)??"");continue}if(u+v>t&&u&&v){if(r.wordWrap===!1&&u<t){gu(a,m,t),u=ut(a.at(-1)??"");continue}a.push(""),u=0}if(u+v>t&&r.wordWrap===!1){gu(a,m,t),u=ut(a.at(-1)??"");continue}a[a.length-1]+=m,u+=v}r.trim!==!1&&(a=a.map(c=>u2(c)));let d=a.join(`
85
- `),l=!1;for(let c=0;c<d.length;c++){let m=d[c];if(i+=m,l)l=!1;else if(l=m>="\uD800"&&m<="\uDBFF",l)continue;if(m===di||m===ed){Yc.lastIndex=c+1;let b=Yc.exec(d)?.groups;if(b?.code!==void 0){let _=Number.parseFloat(b.code);n=_===s2?void 0:_}else b?.uri!==void 0&&(o=b.uri.length===0?void 0:b.uri)}if(d[c+1]===`
86
- `){o&&(i+=Xc(""));let v=n?Qc(n):void 0;n&&v&&(i+=Zc(v))}else m===`
87
- `&&(n&&Qc(n)&&(i+=Zc(n)),o&&(i+=Xc(o)))}return i},c2=/\r?\n/;function sr(e,t,r){return String(e).normalize().split(c2).map(i=>l2(i,t,r)).join(`
88
- `)}var Ne=we(yu(),1);function Rt(e,t,r){if(!r.some(s=>!s.disabled))return e;let i=e+t,n=Math.max(r.length-1,0),o=i<0?n:i>n?0:i;return r[o].disabled?Rt(o,t<0?-1:1,r):o}var p2=["up","down","left","right","space","enter","cancel"],f2=["January","February","March","April","May","June","July","August","September","October","November","December"],Ee={actions:new Set(p2),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...f2],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(e,t)=>`There are only ${e} days in ${t}`,afterMin:e=>`Date must be on or after ${e.toISOString().slice(0,10)}`,beforeMax:e=>`Date must be on or before ${e.toISOString().slice(0,10)}`}}};function od(e,t){if(typeof e=="string")return Ee.aliases.get(e)===t;for(let r of e)if(r!==void 0&&od(r,t))return!0;return!1}function h2(e,t){if(e===t)return;let r=e.split(`
89
- `),i=t.split(`
90
- `),n=Math.max(r.length,i.length),o=[];for(let s=0;s<n;s++)r[s]!==i[s]&&o.push(s);return{lines:o,numLinesBefore:r.length,numLinesAfter:i.length,numLines:n}}var t1=globalThis.process.platform.startsWith("win"),Cu=Symbol("clack:cancel");function k(e){return e===Cu}function mi(e,t){let r=e;r.isTTY&&r.setRawMode(t)}var Ou=e=>"columns"in e&&typeof e.columns=="number"?e.columns:80,Su=e=>"rows"in e&&typeof e.rows=="number"?e.rows:20;function Ct(e,t,r,i=r,n=r,o){let s=Ou(e??Jr.stdout);return sr(t,s-r.length,{hard:!0,trim:!1}).split(`
91
- `).map((a,u,d)=>{let l=o?o(a,u):a;return u===0?`${i}${l}`:u===d.length-1?`${n}${l}`:`${r}${l}`}).join(`
92
- `)}var Fr=class{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(e,t=!0){let{input:r=Jr.stdin,output:i=Jr.stdout,render:n,signal:o,...s}=e;this.opts=s,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=n.bind(this),this._track=t,this._abortSignal=o,this.input=r,this.output=i}unsubscribe(){this._subscribers.clear()}setSubscriber(e,t){let r=this._subscribers.get(e)??[];r.push(t),this._subscribers.set(e,r)}on(e,t){this.setSubscriber(e,{cb:t})}once(e,t){this.setSubscriber(e,{cb:t,once:!0})}emit(e,...t){let r=this._subscribers.get(e)??[],i=[];for(let n of r)n.cb(...t),n.once&&i.push(()=>r.splice(r.indexOf(n),1));for(let n of i)n()}prompt(){return new Promise(e=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),e(Cu);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=nd.default.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),mi(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(Ne.cursor.show),this.output.off("resize",this.render),mi(this.input,!1),e(this.value)}),this.once("cancel",()=>{this.output.write(Ne.cursor.show),this.output.off("resize",this.render),mi(this.input,!1),e(Cu)})})}_isActionKey(e,t){return e===" "}_shouldSubmit(e,t){return!0}_setValue(e){this.value=e,this.emit("value",this.value)}_setUserInput(e,t){this.userInput=e??"",this.emit("userInput",this.userInput),t&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(e,t){if(this._track&&t.name!=="return"&&(t.name&&this._isActionKey(e,t)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),t?.name&&(!this._track&&Ee.aliases.has(t.name)&&this.emit("cursor",Ee.aliases.get(t.name)),Ee.actions.has(t.name)&&this.emit("cursor",t.name)),e&&(e.toLowerCase()==="y"||e.toLowerCase()==="n")&&this.emit("confirm",e.toLowerCase()==="y"),this.emit("key",e?.toLowerCase(),t),t?.name==="return"&&this._shouldSubmit(e,t)){if(this.opts.validate){let r=this.opts.validate(this.value);r&&(this.error=r instanceof Error?r.message:r,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}od([e,t?.name,t?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
93
- `),mi(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let e=sr(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
94
- `).length-1;this.output.write(Ne.cursor.move(-999,e*-1))}render(){let e=sr(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(e!==this._prevFrame){if(this.state==="initial")this.output.write(Ne.cursor.hide);else{let t=h2(this._prevFrame,e),r=Su(this.output);if(this.restoreCursor(),t){let i=Math.max(0,t.numLinesAfter-r),n=Math.max(0,t.numLinesBefore-r),o=t.lines.find(s=>s>=i);if(o===void 0){this._prevFrame=e;return}if(t.lines.length===1){this.output.write(Ne.cursor.move(0,o-n)),this.output.write(Ne.erase.lines(1));let s=e.split(`
95
- `);this.output.write(s[o]),this._prevFrame=e,this.output.write(Ne.cursor.move(0,s.length-o-1));return}else if(t.lines.length>1){if(i<n)o=i;else{let a=o-n;a>0&&this.output.write(Ne.cursor.move(0,a))}this.output.write(Ne.erase.down());let s=e.split(`
81
+ ${e.join(`
82
+
83
+ `)}`}var vr=require("node:util"),zt=require("node:process");var ro=pe(require("node:readline"),1);var Gi=(()=>{let t=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;return e=>{let r=0;for(t.lastIndex=0;t.test(e);)r+=1;return e.length-r}})(),Mi=t=>t===12288||t>=65281&&t<=65376||t>=65504&&t<=65510,qi=t=>t===8987||t===9001||t>=12272&&t<=12287||t>=12289&&t<=12350||t>=12441&&t<=12543||t>=12549&&t<=12591||t>=12593&&t<=12686||t>=12688&&t<=12771||t>=12783&&t<=12830||t>=12832&&t<=12871||t>=12880&&t<=19903||t>=65040&&t<=65049||t>=65072&&t<=65106||t>=65108&&t<=65126||t>=65128&&t<=65131||t>=127488&&t<=127490||t>=127504&&t<=127547||t>=127552&&t<=127560||t>=131072&&t<=196605||t>=196608&&t<=262141;var xu=/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]|\u001b\]8;[^;]*;.*?(?:\u0007|\u001b\u005c)/y,Au=/[\x00-\x08\x0A-\x1F\x7F-\x9F]{1,1000}/y,Ui=/(?:(?![\uFF61-\uFF9F\uFF00-\uFFEF])[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Hangul}\p{Script=Tangut}]){1,1000}/yu,ku=/\t{1,1000}/y,Wi=/[\u{1F1E6}-\u{1F1FF}]{2}|\u{1F3F4}[\u{E0061}-\u{E007A}]{2}[\u{E0030}-\u{E0039}\u{E0061}-\u{E007A}]{1,3}\u{E007F}|(?:\p{Emoji}\uFE0F\u20E3?|\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation})(?:\u200D(?:\p{Emoji_Modifier_Base}\p{Emoji_Modifier}?|\p{Emoji_Presentation}|\p{Emoji}\uFE0F\u20E3?))*/yu,$u=/(?:[\x20-\x7E\xA0-\xFF](?!\uFE0F)){1,1000}/y,Eu=/\p{M}+/gu,Du={limit:1/0,ellipsis:""},Vi=(t,e={},r={})=>{let n=e.limit??1/0,i=e.ellipsis??"",o=e?.ellipsisWidth??(i?Vi(i,Du,r).width:0),s=0,a=r.controlWidth??0,l=r.tabWidth??8,d=r.emojiWidth??2,c=2,u=r.regularWidth??1,m=r.wideWidth??c,y=[[$u,u],[xu,s],[Au,a],[ku,l],[Wi,d],[Ui,m]],g=0,b=0,_=t.length,A=0,x=!1,$=_,F=Math.max(0,n-o),D=0,O=0,T=0,E=0;e:for(;;){if(O>D||b>=_&&b>g){let I=t.slice(D,O)||t.slice(g,b);A=0;for(let ge of I.replaceAll(Eu,"")){let Z=ge.codePointAt(0)||0;if(Mi(Z)?E=c:qi(Z)?E=m:E=u,T+E>F&&($=Math.min($,Math.max(D,g)+A)),T+E>n){x=!0;break e}A+=ge.length,T+=E}D=O=0}if(b>=_)break e;for(let I=0,ge=y.length;I<ge;I++){let[Z,pt]=y[I];if(Z.lastIndex=b,Z.test(t)){if(A=Z===Ui?Gi(t.slice(b,Z.lastIndex)):Z===Wi?1:Z.lastIndex-b,E=A*pt,T+E>F&&($=Math.min($,b+Math.floor((F-T)/pt))),T+E>n){x=!0;break e}T+=E,D=g,O=b,b=g=Z.lastIndex;continue e}}b+=1}return{width:x?F:T,index:x?$:_,truncated:x,ellipsed:x&&n>=o}},Ki=Vi;var Su={limit:1/0,ellipsis:"",ellipsisWidth:0},Tu=(t,e={})=>Ki(t,Su,e).width,qe=Tu;var br="\x1B",Xi="\x9B",Ou=39,En="\x07",Zi="[",Iu="]",eo="m",Dn=`${Iu}8;;`,zi=new RegExp(`(?:\\${Zi}(?<code>\\d+)m|\\${Dn}(?<uri>.*)${En})`,"y"),Ji=t=>{if(t>=30&&t<=37||t>=90&&t<=97)return 39;if(t>=40&&t<=47||t>=100&&t<=107)return 49;if(t===1||t===2)return 22;if(t===3)return 23;if(t===4)return 24;if(t===7)return 27;if(t===8)return 28;if(t===9)return 29;if(t===0)return 0},Yi=t=>`${br}${Zi}${t}${eo}`,Qi=t=>`${br}${Dn}${t}${En}`,$n=(t,e,r)=>{let n=e[Symbol.iterator](),i=!1,o=!1,s=t.at(-1),a=s===void 0?0:qe(s),l=n.next(),d=n.next(),c=0;for(;!l.done;){let u=l.value,m=qe(u);a+m<=r?t[t.length-1]+=u:(t.push(u),a=0),(u===br||u===Xi)&&(i=!0,o=e.startsWith(Dn,c+1)),i?o?u===En&&(i=!1,o=!1):u===eo&&(i=!1):(a+=m,a===r&&!d.done&&(t.push(""),a=0)),l=d,d=n.next(),c+=u.length}s=t.at(-1),!a&&s!==void 0&&s.length&&t.length>1&&(t[t.length-2]+=t.pop())},Pu=t=>{let e=t.split(" "),r=e.length;for(;r&&!qe(e[r-1]);)r--;return r===e.length?t:e.slice(0,r).join(" ")+e.slice(r).join("")},ju=(t,e,r={})=>{if(r.trim!==!1&&t.trim()==="")return"";let n="",i,o,s=t.split(" "),a=[""],l=0;for(let u=0;u<s.length;u++){let m=s[u];if(r.trim!==!1){let g=a.at(-1)??"",b=g.trimStart();g.length!==b.length&&(a[a.length-1]=b,l=qe(b))}u!==0&&(l>=e&&(r.wordWrap===!1||r.trim===!1)&&(a.push(""),l=0),(l||r.trim===!1)&&(a[a.length-1]+=" ",l++));let y=qe(m);if(r.hard&&y>e){let g=e-l,b=1+Math.floor((y-g-1)/e);Math.floor((y-1)/e)<b&&a.push(""),$n(a,m,e),l=qe(a.at(-1)??"");continue}if(l+y>e&&l&&y){if(r.wordWrap===!1&&l<e){$n(a,m,e),l=qe(a.at(-1)??"");continue}a.push(""),l=0}if(l+y>e&&r.wordWrap===!1){$n(a,m,e),l=qe(a.at(-1)??"");continue}a[a.length-1]+=m,l+=y}r.trim!==!1&&(a=a.map(u=>Pu(u)));let d=a.join(`
84
+ `),c=!1;for(let u=0;u<d.length;u++){let m=d[u];if(n+=m,c)c=!1;else if(c=m>="\uD800"&&m<="\uDBFF",c)continue;if(m===br||m===Xi){zi.lastIndex=u+1;let g=zi.exec(d)?.groups;if(g?.code!==void 0){let b=Number.parseFloat(g.code);i=b===Ou?void 0:b}else g?.uri!==void 0&&(o=g.uri.length===0?void 0:g.uri)}if(d[u+1]===`
85
+ `){o&&(n+=Qi(""));let y=i?Ji(i):void 0;i&&y&&(n+=Yi(y))}else m===`
86
+ `&&(i&&Ji(i)&&(n+=Yi(i)),o&&(n+=Qi(o)))}return n},Ru=/\r?\n/;function At(t,e,r){return String(t).normalize().split(Ru).map(n=>ju(n,e,r)).join(`
87
+ `)}var Oe=pe(Tn(),1);function ft(t,e,r){if(!r.some(s=>!s.disabled))return t;let n=t+e,i=Math.max(r.length-1,0),o=n<0?i:n>i?0:n;return r[o].disabled?ft(o,e<0?-1:1,r):o}var Nu=["up","down","left","right","space","enter","cancel"],Hu=["January","February","March","April","May","June","July","August","September","October","November","December"],be={actions:new Set(Nu),aliases:new Map([["k","up"],["j","down"],["h","left"],["l","right"],["","cancel"],["escape","cancel"]]),messages:{cancel:"Canceled",error:"Something went wrong"},withGuide:!0,date:{monthNames:[...Hu],messages:{required:"Please enter a valid date",invalidMonth:"There are only 12 months in a year",invalidDay:(t,e)=>`There are only ${t} days in ${e}`,afterMin:t=>`Date must be on or after ${t.toISOString().slice(0,10)}`,beforeMax:t=>`Date must be on or before ${t.toISOString().slice(0,10)}`}}};function no(t,e){if(typeof t=="string")return be.aliases.get(t)===e;for(let r of t)if(r!==void 0&&no(r,e))return!0;return!1}function Lu(t,e){if(t===e)return;let r=t.split(`
88
+ `),n=e.split(`
89
+ `),i=Math.max(r.length,n.length),o=[];for(let s=0;s<i;s++)r[s]!==n[s]&&o.push(s);return{lines:o,numLinesBefore:r.length,numLinesAfter:n.length,numLines:i}}var Vp=globalThis.process.platform.startsWith("win"),On=Symbol("clack:cancel");function k(t){return t===On}function yr(t,e){let r=t;r.isTTY&&r.setRawMode(e)}var In=t=>"columns"in t&&typeof t.columns=="number"?t.columns:80,Pn=t=>"rows"in t&&typeof t.rows=="number"?t.rows:20;function tt(t,e,r,n=r,i=r,o){let s=In(t??zt.stdout);return At(e,s-r.length,{hard:!0,trim:!1}).split(`
90
+ `).map((a,l,d)=>{let c=o?o(a,l):a;return l===0?`${n}${c}`:l===d.length-1?`${i}${c}`:`${r}${c}`}).join(`
91
+ `)}var Jt=class{input;output;_abortSignal;rl;opts;_render;_track=!1;_prevFrame="";_subscribers=new Map;_cursor=0;state="initial";error="";value;userInput="";constructor(t,e=!0){let{input:r=zt.stdin,output:n=zt.stdout,render:i,signal:o,...s}=t;this.opts=s,this.onKeypress=this.onKeypress.bind(this),this.close=this.close.bind(this),this.render=this.render.bind(this),this._render=i.bind(this),this._track=e,this._abortSignal=o,this.input=r,this.output=n}unsubscribe(){this._subscribers.clear()}setSubscriber(t,e){let r=this._subscribers.get(t)??[];r.push(e),this._subscribers.set(t,r)}on(t,e){this.setSubscriber(t,{cb:e})}once(t,e){this.setSubscriber(t,{cb:e,once:!0})}emit(t,...e){let r=this._subscribers.get(t)??[],n=[];for(let i of r)i.cb(...e),i.once&&n.push(()=>r.splice(r.indexOf(i),1));for(let i of n)i()}prompt(){return new Promise(t=>{if(this._abortSignal){if(this._abortSignal.aborted)return this.state="cancel",this.close(),t(On);this._abortSignal.addEventListener("abort",()=>{this.state="cancel",this.close()},{once:!0})}this.rl=ro.default.createInterface({input:this.input,tabSize:2,prompt:"",escapeCodeTimeout:50,terminal:!0}),this.rl.prompt(),this.opts.initialUserInput!==void 0&&this._setUserInput(this.opts.initialUserInput,!0),this.input.on("keypress",this.onKeypress),yr(this.input,!0),this.output.on("resize",this.render),this.render(),this.once("submit",()=>{this.output.write(Oe.cursor.show),this.output.off("resize",this.render),yr(this.input,!1),t(this.value)}),this.once("cancel",()=>{this.output.write(Oe.cursor.show),this.output.off("resize",this.render),yr(this.input,!1),t(On)})})}_isActionKey(t,e){return t===" "}_shouldSubmit(t,e){return!0}_setValue(t){this.value=t,this.emit("value",this.value)}_setUserInput(t,e){this.userInput=t??"",this.emit("userInput",this.userInput),e&&this._track&&this.rl&&(this.rl.write(this.userInput),this._cursor=this.rl.cursor)}_clearUserInput(){this.rl?.write(null,{ctrl:!0,name:"u"}),this._setUserInput("")}onKeypress(t,e){if(this._track&&e.name!=="return"&&(e.name&&this._isActionKey(t,e)&&this.rl?.write(null,{ctrl:!0,name:"h"}),this._cursor=this.rl?.cursor??0,this._setUserInput(this.rl?.line)),this.state==="error"&&(this.state="active"),e?.name&&(!this._track&&be.aliases.has(e.name)&&this.emit("cursor",be.aliases.get(e.name)),be.actions.has(e.name)&&this.emit("cursor",e.name)),t&&(t.toLowerCase()==="y"||t.toLowerCase()==="n")&&this.emit("confirm",t.toLowerCase()==="y"),this.emit("key",t?.toLowerCase(),e),e?.name==="return"&&this._shouldSubmit(t,e)){if(this.opts.validate){let r=this.opts.validate(this.value);r&&(this.error=r instanceof Error?r.message:r,this.state="error",this.rl?.write(this.userInput))}this.state!=="error"&&(this.state="submit")}no([t,e?.name,e?.sequence],"cancel")&&(this.state="cancel"),(this.state==="submit"||this.state==="cancel")&&this.emit("finalize"),this.render(),(this.state==="submit"||this.state==="cancel")&&this.close()}close(){this.input.unpipe(),this.input.removeListener("keypress",this.onKeypress),this.output.write(`
92
+ `),yr(this.input,!1),this.rl?.close(),this.rl=void 0,this.emit(`${this.state}`,this.value),this.unsubscribe()}restoreCursor(){let t=At(this._prevFrame,process.stdout.columns,{hard:!0,trim:!1}).split(`
93
+ `).length-1;this.output.write(Oe.cursor.move(-999,t*-1))}render(){let t=At(this._render(this)??"",process.stdout.columns,{hard:!0,trim:!1});if(t!==this._prevFrame){if(this.state==="initial")this.output.write(Oe.cursor.hide);else{let e=Lu(this._prevFrame,t),r=Pn(this.output);if(this.restoreCursor(),e){let n=Math.max(0,e.numLinesAfter-r),i=Math.max(0,e.numLinesBefore-r),o=e.lines.find(s=>s>=n);if(o===void 0){this._prevFrame=t;return}if(e.lines.length===1){this.output.write(Oe.cursor.move(0,o-i)),this.output.write(Oe.erase.lines(1));let s=t.split(`
94
+ `);this.output.write(s[o]),this._prevFrame=t,this.output.write(Oe.cursor.move(0,s.length-o-1));return}else if(e.lines.length>1){if(n<i)o=n;else{let a=o-i;a>0&&this.output.write(Oe.cursor.move(0,a))}this.output.write(Oe.erase.down());let s=t.split(`
96
95
  `).slice(o);this.output.write(s.join(`
97
- `)),this._prevFrame=e;return}}this.output.write(Ne.erase.down())}this.output.write(e),this.state==="initial"&&(this.state="active"),this._prevFrame=e}}};var fi=class extends Fr{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(t){super(t,!1),this.value=!!t.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(Ne.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var sd=class extends Fr{options;cursor=0;get _value(){return this.options[this.cursor].value}get _enabledOptions(){return this.options.filter(e=>e.disabled!==!0)}toggleAll(){let e=this._enabledOptions,t=this.value!==void 0&&this.value.length===e.length;this.value=t?[]:e.map(r=>r.value)}toggleInvert(){let e=this.value;if(!e)return;let t=this._enabledOptions.filter(r=>!e.includes(r.value));this.value=t.map(r=>r.value)}toggleValue(){this.value===void 0&&(this.value=[]);let e=this.value.includes(this._value);this.value=e?this.value.filter(t=>t!==this._value):[...this.value,this._value]}constructor(e){super(e,!1),this.options=e.options,this.value=[...e.initialValues??[]];let t=Math.max(this.options.findIndex(({value:r})=>r===e.cursorAt),0);this.cursor=this.options[t].disabled?Rt(t,1,this.options):t,this.on("key",r=>{r==="a"&&this.toggleAll(),r==="i"&&this.toggleInvert()}),this.on("cursor",r=>{switch(r){case"left":case"up":this.cursor=Rt(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=Rt(this.cursor,1,this.options);break;case"space":this.toggleValue();break}})}},hi=class extends Fr{_mask="\u2022";get cursor(){return this._cursor}get masked(){return this.userInput.replaceAll(/./g,this._mask)}get userInputWithCursor(){if(this.state==="submit"||this.state==="cancel")return this.masked;let t=this.userInput;if(this.cursor>=t.length)return`${this.masked}${(0,pi.styleText)(["inverse","hidden"],"_")}`;let r=this.masked,i=r.slice(0,this.cursor),n=r.slice(this.cursor);return`${i}${(0,pi.styleText)("inverse",n[0])}${n.slice(1)}`}clear(){this._clearUserInput()}constructor({mask:t,...r}){super(r),this._mask=t??"\u2022",this.on("userInput",i=>{this._setValue(i)})}},gi=class extends Fr{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(t){super(t,!1),this.options=t.options;let r=this.options.findIndex(({value:n})=>n===t.initialValue),i=r===-1?0:r;this.cursor=this.options[i].disabled?Rt(i,1,this.options):i,this.changeValue(),this.on("cursor",n=>{switch(n){case"left":case"up":this.cursor=Rt(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=Rt(this.cursor,1,this.options);break}this.changeValue()})}};var bi=class extends Fr{get userInputWithCursor(){if(this.state==="submit")return this.userInput;let t=this.userInput;if(this.cursor>=t.length)return`${this.userInput}\u2588`;let r=t.slice(0,this.cursor),[i,...n]=t.slice(this.cursor);return`${r}${(0,pi.styleText)("inverse",i)}${n.join("")}`}get cursor(){return this._cursor}constructor(t){super({...t,initialUserInput:t.initialUserInput??t.initialValue}),this.on("userInput",r=>{this._setValue(r)}),this.on("finalize",()=>{this.value||(this.value=t.defaultValue),this.value===void 0&&(this.value="")})}};var y=require("node:util"),Ke=we(require("node:process"),1);var cd=we(yu(),1);function g2(){return Ke.default.platform!=="win32"?Ke.default.env.TERM!=="linux":!!Ke.default.env.CI||!!Ke.default.env.WT_SESSION||!!Ke.default.env.TERMINUS_SUBLIME||Ke.default.env.ConEmuTask==="{cmd::Cmder}"||Ke.default.env.TERM_PROGRAM==="Terminus-Sublime"||Ke.default.env.TERM_PROGRAM==="vscode"||Ke.default.env.TERM==="xterm-256color"||Ke.default.env.TERM==="alacritty"||Ke.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var b2=g2();var Q=(e,t)=>b2?e:t,_2=Q("\u25C6","*"),v2=Q("\u25A0","x"),y2=Q("\u25B2","x"),dd=Q("\u25C7","o"),C2=Q("\u250C","T"),q=Q("\u2502","|"),lt=Q("\u2514","\u2014"),h1=Q("\u2510","T"),g1=Q("\u2518","\u2014"),wu=Q("\u25CF",">"),vi=Q("\u25CB"," "),O2=Q("\u25FB","[\u2022]"),ad=Q("\u25FC","[+]"),ud=Q("\u25FB","[ ]"),S2=Q("\u25AA","\u2022"),b1=Q("\u2500","-"),_1=Q("\u256E","+"),v1=Q("\u251C","+"),y1=Q("\u256F","+"),C1=Q("\u2570","+"),O1=Q("\u256D","+"),w2=Q("\u25CF","\u2022"),x2=Q("\u25C6","*"),k2=Q("\u25B2","!"),A2=Q("\u25A0","x"),Br=e=>{switch(e){case"initial":case"active":return(0,y.styleText)("cyan",_2);case"cancel":return(0,y.styleText)("red",v2);case"error":return(0,y.styleText)("yellow",y2);case"submit":return(0,y.styleText)("green",dd)}},md=e=>{switch(e){case"initial":case"active":return(0,y.styleText)("cyan",q);case"cancel":return(0,y.styleText)("red",q);case"error":return(0,y.styleText)("yellow",q);case"submit":return(0,y.styleText)("green",q)}},ld=(e,t,r,i,n,o=!1)=>{let s=t,a=0;if(o)for(let u=i-1;u>=r&&(s-=e[u].length,a++,!(s<=n));u--);else for(let u=r;u<i&&(s-=e[u].length,a++,!(s<=n));u++);return{lineCount:s,removals:a}},xu=({cursor:e,options:t,style:r,output:i=process.stdout,maxItems:n=Number.POSITIVE_INFINITY,columnPadding:o=0,rowPadding:s=4})=>{let a=Ou(i)-o,u=Su(i),d=(0,y.styleText)("dim","..."),l=Math.max(u-s,0),c=Math.max(Math.min(n,l),5),m=0;e>=c-3&&(m=Math.max(Math.min(e-c+3,t.length-c),0));let v=c<t.length&&m>0,b=c<t.length&&m+c<t.length,_=Math.min(m+c,t.length),S=[],x=0;v&&x++,b&&x++;let w=m+(v?1:0),A=_-(b?1:0);for(let P=w;P<A;P++){let $=sr(r(t[P],P===e),a,{hard:!0,trim:!1}).split(`
98
- `);S.push($),x+=$.length}if(x>l){let P=0,$=0,I=x,E=e-w,j=l,Ae=()=>ld(S,I,0,E,j),oe=()=>ld(S,I,E+1,S.length,j,!0);v?({lineCount:I,removals:P}=Ae(),I>j&&(b||(j-=1),{lineCount:I,removals:$}=oe())):(b||(j-=1),{lineCount:I,removals:$}=oe(),I>j&&(j-=1,{lineCount:I,removals:P}=Ae())),P>0&&(v=!0,S.splice(0,P)),$>0&&(b=!0,S.splice(S.length-$,$))}let M=[];v&&M.push(d);for(let P of S)for(let $ of P)M.push($);return b&&M.push(d),M};var Ot=e=>{let t=e.active??"Yes",r=e.inactive??"No";return new fi({active:t,inactive:r,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue??!0,render(){let i=e.withGuide??Ee.withGuide,n=`${Br(this.state)} `,o=i?`${(0,y.styleText)("gray",q)} `:"",s=Ct(e.output,e.message,o,n),a=`${i?`${(0,y.styleText)("gray",q)}
96
+ `)),this._prevFrame=t;return}}this.output.write(Oe.erase.down())}this.output.write(t),this.state==="initial"&&(this.state="active"),this._prevFrame=t}}};var Cr=class extends Jt{get cursor(){return this.value?0:1}get _value(){return this.cursor===0}constructor(e){super(e,!1),this.value=!!e.initialValue,this.on("userInput",()=>{this.value=this._value}),this.on("confirm",r=>{this.output.write(Oe.cursor.move(0,-1)),this.value=r,this.state="submit",this.close()}),this.on("cursor",()=>{this.value=!this.value})}};var io=class extends Jt{options;cursor=0;get _value(){return this.options[this.cursor].value}get _enabledOptions(){return this.options.filter(t=>t.disabled!==!0)}toggleAll(){let t=this._enabledOptions,e=this.value!==void 0&&this.value.length===t.length;this.value=e?[]:t.map(r=>r.value)}toggleInvert(){let t=this.value;if(!t)return;let e=this._enabledOptions.filter(r=>!t.includes(r.value));this.value=e.map(r=>r.value)}toggleValue(){this.value===void 0&&(this.value=[]);let t=this.value.includes(this._value);this.value=t?this.value.filter(e=>e!==this._value):[...this.value,this._value]}constructor(t){super(t,!1),this.options=t.options,this.value=[...t.initialValues??[]];let e=Math.max(this.options.findIndex(({value:r})=>r===t.cursorAt),0);this.cursor=this.options[e].disabled?ft(e,1,this.options):e,this.on("key",r=>{r==="a"&&this.toggleAll(),r==="i"&&this.toggleInvert()}),this.on("cursor",r=>{switch(r){case"left":case"up":this.cursor=ft(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=ft(this.cursor,1,this.options);break;case"space":this.toggleValue();break}})}},wr=class extends Jt{_mask="\u2022";get cursor(){return this._cursor}get masked(){return this.userInput.replaceAll(/./g,this._mask)}get userInputWithCursor(){if(this.state==="submit"||this.state==="cancel")return this.masked;let e=this.userInput;if(this.cursor>=e.length)return`${this.masked}${(0,vr.styleText)(["inverse","hidden"],"_")}`;let r=this.masked,n=r.slice(0,this.cursor),i=r.slice(this.cursor);return`${n}${(0,vr.styleText)("inverse",i[0])}${i.slice(1)}`}clear(){this._clearUserInput()}constructor({mask:e,...r}){super(r),this._mask=e??"\u2022",this.on("userInput",n=>{this._setValue(n)})}},_r=class extends Jt{options;cursor=0;get _selectedValue(){return this.options[this.cursor]}changeValue(){this.value=this._selectedValue.value}constructor(e){super(e,!1),this.options=e.options;let r=this.options.findIndex(({value:i})=>i===e.initialValue),n=r===-1?0:r;this.cursor=this.options[n].disabled?ft(n,1,this.options):n,this.changeValue(),this.on("cursor",i=>{switch(i){case"left":case"up":this.cursor=ft(this.cursor,-1,this.options);break;case"down":case"right":this.cursor=ft(this.cursor,1,this.options);break}this.changeValue()})}};var xr=class extends Jt{get userInputWithCursor(){if(this.state==="submit")return this.userInput;let e=this.userInput;if(this.cursor>=e.length)return`${this.userInput}\u2588`;let r=e.slice(0,this.cursor),[n,...i]=e.slice(this.cursor);return`${r}${(0,vr.styleText)("inverse",n)}${i.join("")}`}get cursor(){return this._cursor}constructor(e){super({...e,initialUserInput:e.initialUserInput??e.initialValue}),this.on("userInput",r=>{this._setValue(r)}),this.on("finalize",()=>{this.value||(this.value=e.defaultValue),this.value===void 0&&(this.value="")})}};var v=require("node:util"),Fe=pe(require("node:process"),1);var lo=pe(Tn(),1);function Gu(){return Fe.default.platform!=="win32"?Fe.default.env.TERM!=="linux":!!Fe.default.env.CI||!!Fe.default.env.WT_SESSION||!!Fe.default.env.TERMINUS_SUBLIME||Fe.default.env.ConEmuTask==="{cmd::Cmder}"||Fe.default.env.TERM_PROGRAM==="Terminus-Sublime"||Fe.default.env.TERM_PROGRAM==="vscode"||Fe.default.env.TERM==="xterm-256color"||Fe.default.env.TERM==="alacritty"||Fe.default.env.TERMINAL_EMULATOR==="JetBrains-JediTerm"}var Mu=Gu();var K=(t,e)=>Mu?t:e,qu=K("\u25C6","*"),Uu=K("\u25A0","x"),Wu=K("\u25B2","x"),co=K("\u25C7","o"),Vu=K("\u250C","T"),j=K("\u2502","|"),Ue=K("\u2514","\u2014"),af=K("\u2510","T"),lf=K("\u2518","\u2014"),jn=K("\u25CF",">"),kr=K("\u25CB"," "),Ku=K("\u25FB","[\u2022]"),oo=K("\u25FC","[+]"),so=K("\u25FB","[ ]"),zu=K("\u25AA","\u2022"),cf=K("\u2500","-"),uf=K("\u256E","+"),df=K("\u251C","+"),mf=K("\u256F","+"),pf=K("\u2570","+"),ff=K("\u256D","+"),Ju=K("\u25CF","\u2022"),Yu=K("\u25C6","*"),Qu=K("\u25B2","!"),Xu=K("\u25A0","x"),Qt=t=>{switch(t){case"initial":case"active":return(0,v.styleText)("cyan",qu);case"cancel":return(0,v.styleText)("red",Uu);case"error":return(0,v.styleText)("yellow",Wu);case"submit":return(0,v.styleText)("green",co)}},uo=t=>{switch(t){case"initial":case"active":return(0,v.styleText)("cyan",j);case"cancel":return(0,v.styleText)("red",j);case"error":return(0,v.styleText)("yellow",j);case"submit":return(0,v.styleText)("green",j)}},ao=(t,e,r,n,i,o=!1)=>{let s=e,a=0;if(o)for(let l=n-1;l>=r&&(s-=t[l].length,a++,!(s<=i));l--);else for(let l=r;l<n&&(s-=t[l].length,a++,!(s<=i));l++);return{lineCount:s,removals:a}},Rn=({cursor:t,options:e,style:r,output:n=process.stdout,maxItems:i=Number.POSITIVE_INFINITY,columnPadding:o=0,rowPadding:s=4})=>{let a=In(n)-o,l=Pn(n),d=(0,v.styleText)("dim","..."),c=Math.max(l-s,0),u=Math.max(Math.min(i,c),5),m=0;t>=u-3&&(m=Math.max(Math.min(t-u+3,e.length-u),0));let y=u<e.length&&m>0,g=u<e.length&&m+u<e.length,b=Math.min(m+u,e.length),_=[],A=0;y&&A++,g&&A++;let x=m+(y?1:0),$=b-(g?1:0);for(let D=x;D<$;D++){let O=At(r(e[D],D===t),a,{hard:!0,trim:!1}).split(`
97
+ `);_.push(O),A+=O.length}if(A>c){let D=0,O=0,T=A,E=t-x,I=c,ge=()=>ao(_,T,0,E,I),Z=()=>ao(_,T,E+1,_.length,I,!0);y?({lineCount:T,removals:D}=ge(),T>I&&(g||(I-=1),{lineCount:T,removals:O}=Z())):(g||(I-=1),{lineCount:T,removals:O}=Z(),T>I&&(I-=1,{lineCount:T,removals:D}=ge())),D>0&&(y=!0,_.splice(0,D)),O>0&&(g=!0,_.splice(_.length-O,O))}let F=[];y&&F.push(d);for(let D of _)for(let O of D)F.push(O);return g&&F.push(d),F};var rt=t=>{let e=t.active??"Yes",r=t.inactive??"No";return new Cr({active:e,inactive:r,signal:t.signal,input:t.input,output:t.output,initialValue:t.initialValue??!0,render(){let n=t.withGuide??be.withGuide,i=`${Qt(this.state)} `,o=n?`${(0,v.styleText)("gray",j)} `:"",s=tt(t.output,t.message,o,i),a=`${n?`${(0,v.styleText)("gray",j)}
99
98
  `:""}${s}
100
- `,u=this.value?t:r;switch(this.state){case"submit":{let d=i?`${(0,y.styleText)("gray",q)} `:"";return`${a}${d}${(0,y.styleText)("dim",u)}`}case"cancel":{let d=i?`${(0,y.styleText)("gray",q)} `:"";return`${a}${d}${(0,y.styleText)(["strikethrough","dim"],u)}${i?`
101
- ${(0,y.styleText)("gray",q)}`:""}`}default:{let d=i?`${(0,y.styleText)("cyan",q)} `:"",l=i?(0,y.styleText)("cyan",lt):"";return`${a}${d}${this.value?`${(0,y.styleText)("green",wu)} ${t}`:`${(0,y.styleText)("dim",vi)} ${(0,y.styleText)("dim",t)}`}${e.vertical?i?`
102
- ${(0,y.styleText)("cyan",q)} `:`
103
- `:` ${(0,y.styleText)("dim","/")} `}${this.value?`${(0,y.styleText)("dim",vi)} ${(0,y.styleText)("dim",r)}`:`${(0,y.styleText)("green",wu)} ${r}`}
104
- ${l}
105
- `}}}}).prompt()};var pd=async(e,t)=>{let r={},i=Object.keys(e);for(let n of i){let o=e[n],s=await o({results:r})?.catch(a=>{throw a});if(typeof t?.onCancel=="function"&&k(s)){r[n]="canceled",t.onCancel({results:r});continue}r[n]=s}return r};var re={message:(e=[],{symbol:t=(0,y.styleText)("gray",q),secondarySymbol:r=(0,y.styleText)("gray",q),output:i=process.stdout,spacing:n=1,withGuide:o}={})=>{let s=[],a=o??Ee.withGuide,u=a?r:"",d=a?`${t} `:"",l=a?`${r} `:"";for(let m=0;m<n;m++)s.push(u);let c=Array.isArray(e)?e:e.split(`
106
- `);if(c.length>0){let[m,...v]=c;m.length>0?s.push(`${d}${m}`):s.push(a?t:"");for(let b of v)b.length>0?s.push(`${l}${b}`):s.push(a?r:"")}i.write(`${s.join(`
99
+ `,l=this.value?e:r;switch(this.state){case"submit":{let d=n?`${(0,v.styleText)("gray",j)} `:"";return`${a}${d}${(0,v.styleText)("dim",l)}`}case"cancel":{let d=n?`${(0,v.styleText)("gray",j)} `:"";return`${a}${d}${(0,v.styleText)(["strikethrough","dim"],l)}${n?`
100
+ ${(0,v.styleText)("gray",j)}`:""}`}default:{let d=n?`${(0,v.styleText)("cyan",j)} `:"",c=n?(0,v.styleText)("cyan",Ue):"";return`${a}${d}${this.value?`${(0,v.styleText)("green",jn)} ${e}`:`${(0,v.styleText)("dim",kr)} ${(0,v.styleText)("dim",e)}`}${t.vertical?n?`
101
+ ${(0,v.styleText)("cyan",j)} `:`
102
+ `:` ${(0,v.styleText)("dim","/")} `}${this.value?`${(0,v.styleText)("dim",kr)} ${(0,v.styleText)("dim",r)}`:`${(0,v.styleText)("green",jn)} ${r}`}
103
+ ${c}
104
+ `}}}}).prompt()};var mo=async(t,e)=>{let r={},n=Object.keys(t);for(let i of n){let o=t[i],s=await o({results:r})?.catch(a=>{throw a});if(typeof e?.onCancel=="function"&&k(s)){r[i]="canceled",e.onCancel({results:r});continue}r[i]=s}return r};var Q={message:(t=[],{symbol:e=(0,v.styleText)("gray",j),secondarySymbol:r=(0,v.styleText)("gray",j),output:n=process.stdout,spacing:i=1,withGuide:o}={})=>{let s=[],a=o??be.withGuide,l=a?r:"",d=a?`${e} `:"",c=a?`${r} `:"";for(let m=0;m<i;m++)s.push(l);let u=Array.isArray(t)?t:t.split(`
105
+ `);if(u.length>0){let[m,...y]=u;m.length>0?s.push(`${d}${m}`):s.push(a?e:"");for(let g of y)g.length>0?s.push(`${c}${g}`):s.push(a?r:"")}n.write(`${s.join(`
107
106
  `)}
108
- `)},info:(e,t)=>{re.message(e,{...t,symbol:(0,y.styleText)("blue",w2)})},success:(e,t)=>{re.message(e,{...t,symbol:(0,y.styleText)("green",x2)})},step:(e,t)=>{re.message(e,{...t,symbol:(0,y.styleText)("green",dd)})},warn:(e,t)=>{re.message(e,{...t,symbol:(0,y.styleText)("yellow",k2)})},warning:(e,t)=>{re.warn(e,t)},error:(e,t)=>{re.message(e,{...t,symbol:(0,y.styleText)("red",A2)})}},fd=(e="",t)=>{let r=t?.output??process.stdout,i=t?.withGuide??Ee.withGuide?`${(0,y.styleText)("gray",lt)} `:"";r.write(`${i}${(0,y.styleText)("red",e)}
109
-
110
- `)},hd=(e="",t)=>{let r=t?.output??process.stdout,i=t?.withGuide??Ee.withGuide?`${(0,y.styleText)("gray",C2)} `:"";r.write(`${i}${e}
111
- `)},yi=(e="",t)=>{let r=t?.output??process.stdout,i=t?.withGuide??Ee.withGuide?`${(0,y.styleText)("gray",q)}
112
- ${(0,y.styleText)("gray",lt)} `:"";r.write(`${i}${e}
113
-
114
- `)};var Hr=(e,t)=>e.split(`
115
- `).map(r=>t(r)).join(`
116
- `),gd=e=>{let t=(i,n)=>{let o=i.label??String(i.value);return n==="disabled"?`${(0,y.styleText)("gray",ud)} ${Hr(o,s=>(0,y.styleText)(["strikethrough","gray"],s))}${i.hint?` ${(0,y.styleText)("dim",`(${i.hint??"disabled"})`)}`:""}`:n==="active"?`${(0,y.styleText)("cyan",O2)} ${o}${i.hint?` ${(0,y.styleText)("dim",`(${i.hint})`)}`:""}`:n==="selected"?`${(0,y.styleText)("green",ad)} ${Hr(o,s=>(0,y.styleText)("dim",s))}${i.hint?` ${(0,y.styleText)("dim",`(${i.hint})`)}`:""}`:n==="cancelled"?`${Hr(o,s=>(0,y.styleText)(["strikethrough","dim"],s))}`:n==="active-selected"?`${(0,y.styleText)("green",ad)} ${o}${i.hint?` ${(0,y.styleText)("dim",`(${i.hint})`)}`:""}`:n==="submitted"?`${Hr(o,s=>(0,y.styleText)("dim",s))}`:`${(0,y.styleText)("dim",ud)} ${Hr(o,s=>(0,y.styleText)("dim",s))}`},r=e.required??!0;return new sd({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValues:e.initialValues,required:r,cursorAt:e.cursorAt,validate(i){if(r&&(i===void 0||i.length===0))return`Please select at least one option.
117
- ${(0,y.styleText)("reset",(0,y.styleText)("dim",`Press ${(0,y.styleText)(["gray","bgWhite","inverse"]," space ")} to select, ${(0,y.styleText)("gray",(0,y.styleText)("bgWhite",(0,y.styleText)("inverse"," enter ")))} to submit`))}`},render(){let i=e.withGuide??Ee.withGuide,n=Ct(e.output,e.message,i?`${md(this.state)} `:"",`${Br(this.state)} `),o=`${i?`${(0,y.styleText)("gray",q)}
118
- `:""}${n}
119
- `,s=this.value??[],a=(u,d)=>{if(u.disabled)return t(u,"disabled");let l=s.includes(u.value);return d&&l?t(u,"active-selected"):l?t(u,"selected"):t(u,d?"active":"inactive")};switch(this.state){case"submit":{let u=this.options.filter(({value:l})=>s.includes(l)).map(l=>t(l,"submitted")).join((0,y.styleText)("dim",", "))||(0,y.styleText)("dim","none"),d=Ct(e.output,u,i?`${(0,y.styleText)("gray",q)} `:"");return`${o}${d}`}case"cancel":{let u=this.options.filter(({value:l})=>s.includes(l)).map(l=>t(l,"cancelled")).join((0,y.styleText)("dim",", "));if(u.trim()==="")return`${o}${(0,y.styleText)("gray",q)}`;let d=Ct(e.output,u,i?`${(0,y.styleText)("gray",q)} `:"");return`${o}${d}${i?`
120
- ${(0,y.styleText)("gray",q)}`:""}`}case"error":{let u=i?`${(0,y.styleText)("yellow",q)} `:"",d=this.error.split(`
121
- `).map((m,v)=>v===0?`${i?`${(0,y.styleText)("yellow",lt)} `:""}${(0,y.styleText)("yellow",m)}`:` ${m}`).join(`
122
- `),l=o.split(`
123
- `).length,c=d.split(`
124
- `).length+1;return`${o}${u}${xu({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:l+c,style:a}).join(`
125
- ${u}`)}
107
+ `)},info:(t,e)=>{Q.message(t,{...e,symbol:(0,v.styleText)("blue",Ju)})},success:(t,e)=>{Q.message(t,{...e,symbol:(0,v.styleText)("green",Yu)})},step:(t,e)=>{Q.message(t,{...e,symbol:(0,v.styleText)("green",co)})},warn:(t,e)=>{Q.message(t,{...e,symbol:(0,v.styleText)("yellow",Qu)})},warning:(t,e)=>{Q.warn(t,e)},error:(t,e)=>{Q.message(t,{...e,symbol:(0,v.styleText)("red",Xu)})}},po=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??be.withGuide?`${(0,v.styleText)("gray",Ue)} `:"";r.write(`${n}${(0,v.styleText)("red",t)}
108
+
109
+ `)},fo=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??be.withGuide?`${(0,v.styleText)("gray",Vu)} `:"";r.write(`${n}${t}
110
+ `)},$r=(t="",e)=>{let r=e?.output??process.stdout,n=e?.withGuide??be.withGuide?`${(0,v.styleText)("gray",j)}
111
+ ${(0,v.styleText)("gray",Ue)} `:"";r.write(`${n}${t}
112
+
113
+ `)};var Yt=(t,e)=>t.split(`
114
+ `).map(r=>e(r)).join(`
115
+ `),ho=t=>{let e=(n,i)=>{let o=n.label??String(n.value);return i==="disabled"?`${(0,v.styleText)("gray",so)} ${Yt(o,s=>(0,v.styleText)(["strikethrough","gray"],s))}${n.hint?` ${(0,v.styleText)("dim",`(${n.hint??"disabled"})`)}`:""}`:i==="active"?`${(0,v.styleText)("cyan",Ku)} ${o}${n.hint?` ${(0,v.styleText)("dim",`(${n.hint})`)}`:""}`:i==="selected"?`${(0,v.styleText)("green",oo)} ${Yt(o,s=>(0,v.styleText)("dim",s))}${n.hint?` ${(0,v.styleText)("dim",`(${n.hint})`)}`:""}`:i==="cancelled"?`${Yt(o,s=>(0,v.styleText)(["strikethrough","dim"],s))}`:i==="active-selected"?`${(0,v.styleText)("green",oo)} ${o}${n.hint?` ${(0,v.styleText)("dim",`(${n.hint})`)}`:""}`:i==="submitted"?`${Yt(o,s=>(0,v.styleText)("dim",s))}`:`${(0,v.styleText)("dim",so)} ${Yt(o,s=>(0,v.styleText)("dim",s))}`},r=t.required??!0;return new io({options:t.options,signal:t.signal,input:t.input,output:t.output,initialValues:t.initialValues,required:r,cursorAt:t.cursorAt,validate(n){if(r&&(n===void 0||n.length===0))return`Please select at least one option.
116
+ ${(0,v.styleText)("reset",(0,v.styleText)("dim",`Press ${(0,v.styleText)(["gray","bgWhite","inverse"]," space ")} to select, ${(0,v.styleText)("gray",(0,v.styleText)("bgWhite",(0,v.styleText)("inverse"," enter ")))} to submit`))}`},render(){let n=t.withGuide??be.withGuide,i=tt(t.output,t.message,n?`${uo(this.state)} `:"",`${Qt(this.state)} `),o=`${n?`${(0,v.styleText)("gray",j)}
117
+ `:""}${i}
118
+ `,s=this.value??[],a=(l,d)=>{if(l.disabled)return e(l,"disabled");let c=s.includes(l.value);return d&&c?e(l,"active-selected"):c?e(l,"selected"):e(l,d?"active":"inactive")};switch(this.state){case"submit":{let l=this.options.filter(({value:c})=>s.includes(c)).map(c=>e(c,"submitted")).join((0,v.styleText)("dim",", "))||(0,v.styleText)("dim","none"),d=tt(t.output,l,n?`${(0,v.styleText)("gray",j)} `:"");return`${o}${d}`}case"cancel":{let l=this.options.filter(({value:c})=>s.includes(c)).map(c=>e(c,"cancelled")).join((0,v.styleText)("dim",", "));if(l.trim()==="")return`${o}${(0,v.styleText)("gray",j)}`;let d=tt(t.output,l,n?`${(0,v.styleText)("gray",j)} `:"");return`${o}${d}${n?`
119
+ ${(0,v.styleText)("gray",j)}`:""}`}case"error":{let l=n?`${(0,v.styleText)("yellow",j)} `:"",d=this.error.split(`
120
+ `).map((m,y)=>y===0?`${n?`${(0,v.styleText)("yellow",Ue)} `:""}${(0,v.styleText)("yellow",m)}`:` ${m}`).join(`
121
+ `),c=o.split(`
122
+ `).length,u=d.split(`
123
+ `).length+1;return`${o}${l}${Rn({output:t.output,options:this.options,cursor:this.cursor,maxItems:t.maxItems,columnPadding:l.length,rowPadding:c+u,style:a}).join(`
124
+ ${l}`)}
126
125
  ${d}
127
- `}default:{let u=i?`${(0,y.styleText)("cyan",q)} `:"",d=o.split(`
128
- `).length,l=i?2:1;return`${o}${u}${xu({output:e.output,options:this.options,cursor:this.cursor,maxItems:e.maxItems,columnPadding:u.length,rowPadding:d+l,style:a}).join(`
129
- ${u}`)}
130
- ${i?(0,y.styleText)("cyan",lt):""}
131
- `}}}}).prompt()};var bd=e=>new hi({validate:e.validate,mask:e.mask??S2,signal:e.signal,input:e.input,output:e.output,render(){let t=e.withGuide??Ee.withGuide,r=`${t?`${(0,y.styleText)("gray",q)}
132
- `:""}${Br(this.state)} ${e.message}
133
- `,i=this.userInputWithCursor,n=this.masked;switch(this.state){case"error":{let o=t?`${(0,y.styleText)("yellow",q)} `:"",s=t?`${(0,y.styleText)("yellow",lt)} `:"",a=n??"";return e.clearOnError&&this.clear(),`${r.trim()}
126
+ `}default:{let l=n?`${(0,v.styleText)("cyan",j)} `:"",d=o.split(`
127
+ `).length,c=n?2:1;return`${o}${l}${Rn({output:t.output,options:this.options,cursor:this.cursor,maxItems:t.maxItems,columnPadding:l.length,rowPadding:d+c,style:a}).join(`
128
+ ${l}`)}
129
+ ${n?(0,v.styleText)("cyan",Ue):""}
130
+ `}}}}).prompt()};var go=t=>new wr({validate:t.validate,mask:t.mask??zu,signal:t.signal,input:t.input,output:t.output,render(){let e=t.withGuide??be.withGuide,r=`${e?`${(0,v.styleText)("gray",j)}
131
+ `:""}${Qt(this.state)} ${t.message}
132
+ `,n=this.userInputWithCursor,i=this.masked;switch(this.state){case"error":{let o=e?`${(0,v.styleText)("yellow",j)} `:"",s=e?`${(0,v.styleText)("yellow",Ue)} `:"",a=i??"";return t.clearOnError&&this.clear(),`${r.trim()}
134
133
  ${o}${a}
135
- ${s}${(0,y.styleText)("yellow",this.error)}
136
- `}case"submit":{let o=t?`${(0,y.styleText)("gray",q)} `:"",s=n?(0,y.styleText)("dim",n):"";return`${r}${o}${s}`}case"cancel":{let o=t?`${(0,y.styleText)("gray",q)} `:"",s=n?(0,y.styleText)(["strikethrough","dim"],n):"";return`${r}${o}${s}${n&&t?`
137
- ${(0,y.styleText)("gray",q)}`:""}`}default:{let o=t?`${(0,y.styleText)("cyan",q)} `:"",s=t?(0,y.styleText)("cyan",lt):"";return`${r}${o}${i}
134
+ ${s}${(0,v.styleText)("yellow",this.error)}
135
+ `}case"submit":{let o=e?`${(0,v.styleText)("gray",j)} `:"",s=i?(0,v.styleText)("dim",i):"";return`${r}${o}${s}`}case"cancel":{let o=e?`${(0,v.styleText)("gray",j)} `:"",s=i?(0,v.styleText)(["strikethrough","dim"],i):"";return`${r}${o}${s}${i&&e?`
136
+ ${(0,v.styleText)("gray",j)}`:""}`}default:{let o=e?`${(0,v.styleText)("cyan",j)} `:"",s=e?(0,v.styleText)("cyan",Ue):"";return`${r}${o}${n}
138
137
  ${s}
139
- `}}}}).prompt();var S1={light:Q("\u2500","-"),heavy:Q("\u2501","="),block:Q("\u2588","#")};var _i=(e,t)=>e.includes(`
140
- `)?e.split(`
141
- `).map(r=>t(r)).join(`
142
- `):t(e),me=e=>{let t=(r,i)=>{let n=r.label??String(r.value);switch(i){case"disabled":return`${(0,y.styleText)("gray",vi)} ${_i(n,o=>(0,y.styleText)("gray",o))}${r.hint?` ${(0,y.styleText)("dim",`(${r.hint??"disabled"})`)}`:""}`;case"selected":return`${_i(n,o=>(0,y.styleText)("dim",o))}`;case"active":return`${(0,y.styleText)("green",wu)} ${n}${r.hint?` ${(0,y.styleText)("dim",`(${r.hint})`)}`:""}`;case"cancelled":return`${_i(n,o=>(0,y.styleText)(["strikethrough","dim"],o))}`;default:return`${(0,y.styleText)("dim",vi)} ${_i(n,o=>(0,y.styleText)("dim",o))}`}};return new gi({options:e.options,signal:e.signal,input:e.input,output:e.output,initialValue:e.initialValue,render(){let r=e.withGuide??Ee.withGuide,i=`${Br(this.state)} `,n=`${md(this.state)} `,o=Ct(e.output,e.message,n,i),s=`${r?`${(0,y.styleText)("gray",q)}
138
+ `}}}}).prompt();var hf={light:K("\u2500","-"),heavy:K("\u2501","="),block:K("\u2588","#")};var Ar=(t,e)=>t.includes(`
139
+ `)?t.split(`
140
+ `).map(r=>e(r)).join(`
141
+ `):e(t),ie=t=>{let e=(r,n)=>{let i=r.label??String(r.value);switch(n){case"disabled":return`${(0,v.styleText)("gray",kr)} ${Ar(i,o=>(0,v.styleText)("gray",o))}${r.hint?` ${(0,v.styleText)("dim",`(${r.hint??"disabled"})`)}`:""}`;case"selected":return`${Ar(i,o=>(0,v.styleText)("dim",o))}`;case"active":return`${(0,v.styleText)("green",jn)} ${i}${r.hint?` ${(0,v.styleText)("dim",`(${r.hint})`)}`:""}`;case"cancelled":return`${Ar(i,o=>(0,v.styleText)(["strikethrough","dim"],o))}`;default:return`${(0,v.styleText)("dim",kr)} ${Ar(i,o=>(0,v.styleText)("dim",o))}`}};return new _r({options:t.options,signal:t.signal,input:t.input,output:t.output,initialValue:t.initialValue,render(){let r=t.withGuide??be.withGuide,n=`${Qt(this.state)} `,i=`${uo(this.state)} `,o=tt(t.output,t.message,i,n),s=`${r?`${(0,v.styleText)("gray",j)}
143
142
  `:""}${o}
144
- `;switch(this.state){case"submit":{let a=r?`${(0,y.styleText)("gray",q)} `:"",u=Ct(e.output,t(this.options[this.cursor],"selected"),a);return`${s}${u}`}case"cancel":{let a=r?`${(0,y.styleText)("gray",q)} `:"",u=Ct(e.output,t(this.options[this.cursor],"cancelled"),a);return`${s}${u}${r?`
145
- ${(0,y.styleText)("gray",q)}`:""}`}default:{let a=r?`${(0,y.styleText)("cyan",q)} `:"",u=r?(0,y.styleText)("cyan",lt):"",d=s.split(`
146
- `).length,l=r?2:1;return`${s}${a}${xu({output:e.output,cursor:this.cursor,options:this.options,maxItems:e.maxItems,columnPadding:a.length,rowPadding:d+l,style:(c,m)=>t(c,c.disabled?"disabled":m?"active":"inactive")}).join(`
143
+ `;switch(this.state){case"submit":{let a=r?`${(0,v.styleText)("gray",j)} `:"",l=tt(t.output,e(this.options[this.cursor],"selected"),a);return`${s}${l}`}case"cancel":{let a=r?`${(0,v.styleText)("gray",j)} `:"",l=tt(t.output,e(this.options[this.cursor],"cancelled"),a);return`${s}${l}${r?`
144
+ ${(0,v.styleText)("gray",j)}`:""}`}default:{let a=r?`${(0,v.styleText)("cyan",j)} `:"",l=r?(0,v.styleText)("cyan",Ue):"",d=s.split(`
145
+ `).length,c=r?2:1;return`${s}${a}${Rn({output:t.output,cursor:this.cursor,options:this.options,maxItems:t.maxItems,columnPadding:a.length,rowPadding:d+c,style:(u,m)=>e(u,u.disabled?"disabled":m?"active":"inactive")}).join(`
147
146
  ${a}`)}
148
- ${u}
149
- `}}}}).prompt()};var w1=`${(0,y.styleText)("gray",q)} `;var ee=e=>new bi({validate:e.validate,placeholder:e.placeholder,defaultValue:e.defaultValue,initialValue:e.initialValue,output:e.output,signal:e.signal,input:e.input,render(){let t=e?.withGuide??Ee.withGuide,r=`${`${t?`${(0,y.styleText)("gray",q)}
150
- `:""}${Br(this.state)} `}${e.message}
151
- `,i=e.placeholder?(0,y.styleText)("inverse",e.placeholder[0])+(0,y.styleText)("dim",e.placeholder.slice(1)):(0,y.styleText)(["inverse","hidden"],"_"),n=this.userInput?this.userInputWithCursor:i,o=this.value??"";switch(this.state){case"error":{let s=this.error?` ${(0,y.styleText)("yellow",this.error)}`:"",a=t?`${(0,y.styleText)("yellow",q)} `:"",u=t?(0,y.styleText)("yellow",lt):"";return`${r.trim()}
152
- ${a}${n}
153
- ${u}${s}
154
- `}case"submit":{let s=o?` ${(0,y.styleText)("dim",o)}`:"",a=t?(0,y.styleText)("gray",q):"";return`${r}${a}${s}`}case"cancel":{let s=o?` ${(0,y.styleText)(["strikethrough","dim"],o)}`:"",a=t?(0,y.styleText)("gray",q):"";return`${r}${a}${s}${o.trim()?`
155
- ${a}`:""}`}default:{let s=t?`${(0,y.styleText)("cyan",q)} `:"",a=t?(0,y.styleText)("cyan",lt):"";return`${r}${s}${n}
147
+ ${l}
148
+ `}}}}).prompt()};var gf=`${(0,v.styleText)("gray",j)} `;var Y=t=>new xr({validate:t.validate,placeholder:t.placeholder,defaultValue:t.defaultValue,initialValue:t.initialValue,output:t.output,signal:t.signal,input:t.input,render(){let e=t?.withGuide??be.withGuide,r=`${`${e?`${(0,v.styleText)("gray",j)}
149
+ `:""}${Qt(this.state)} `}${t.message}
150
+ `,n=t.placeholder?(0,v.styleText)("inverse",t.placeholder[0])+(0,v.styleText)("dim",t.placeholder.slice(1)):(0,v.styleText)(["inverse","hidden"],"_"),i=this.userInput?this.userInputWithCursor:n,o=this.value??"";switch(this.state){case"error":{let s=this.error?` ${(0,v.styleText)("yellow",this.error)}`:"",a=e?`${(0,v.styleText)("yellow",j)} `:"",l=e?(0,v.styleText)("yellow",Ue):"";return`${r.trim()}
151
+ ${a}${i}
152
+ ${l}${s}
153
+ `}case"submit":{let s=o?` ${(0,v.styleText)("dim",o)}`:"",a=e?(0,v.styleText)("gray",j):"";return`${r}${a}${s}`}case"cancel":{let s=o?` ${(0,v.styleText)(["strikethrough","dim"],o)}`:"",a=e?(0,v.styleText)("gray",j):"";return`${r}${a}${s}${o.trim()?`
154
+ ${a}`:""}`}default:{let s=e?`${(0,v.styleText)("cyan",j)} `:"",a=e?(0,v.styleText)("cyan",Ue):"";return`${r}${s}${i}
156
155
  ${a}
157
- `}}}}).prompt();var ti=we(yt(),1);Mt();process.env.RESEND_USER_AGENT=`resend-cli:${se}`;var St=new TextEncoder,yd="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Lr=new Uint8Array(256);for(let e=0;e<yd.length;e++)Lr[yd.charCodeAt(e)]=e;function Ci(e){let t=Math.ceil(e.length/4)*3,r=e.length,i=0;e.length%4===3?t--:e.length%4===2?t-=2:e[e.length-1]==="="&&(t--,e[e.length-2]==="="&&t--);let n=new ArrayBuffer(t),o=new Uint8Array(n);for(let s=0;s<r;s+=4){let a=Lr[e.charCodeAt(s)],u=Lr[e.charCodeAt(s+1)],d=Lr[e.charCodeAt(s+2)],l=Lr[e.charCodeAt(s+3)];o[i++]=a<<2|u>>4,o[i++]=(u&15)<<4|d>>2,o[i++]=(d&3)<<6|l&63}return n}function ar(e){e=e||"utf8";let t;try{t=new TextDecoder(e)}catch{t=new TextDecoder("windows-1252")}return t}async function wt(e){if("arrayBuffer"in e)return await e.arrayBuffer();let t=new FileReader;return new Promise((r,i)=>{t.onload=function(n){r(n.target.result)},t.onerror=function(n){i(t.error)},t.readAsArrayBuffer(e)})}function Cd(e){return e>=48&&e<=57||e>=97&&e<=102||e>=65&&e<=70?String.fromCharCode(e):!1}function P2(e,t,r){let i=e.indexOf("*");i>=0&&(e=e.substr(0,i)),t=t.toUpperCase();let n;if(t==="Q"){r=r.replace(/=\s+([0-9a-fA-F])/g,"=$1").replace(/[_\s]/g," ");let o=St.encode(r),s=[];for(let u=0,d=o.length;u<d;u++){let l=o[u];if(u<=d-2&&l===61){let c=Cd(o[u+1]),m=Cd(o[u+2]);if(c&&m){let v=parseInt(c+m,16);s.push(v),u+=2;continue}}s.push(l)}n=new ArrayBuffer(s.length);let a=new DataView(n);for(let u=0,d=s.length;u<d;u++)a.setUint8(u,s[u])}else t==="B"?n=Ci(r.replace(/[^a-zA-Z0-9\+\/=]+/g,"")):n=St.encode(r);return ar(e).decode(n)}function zt(e){let t=!0,r=!1;for(;!r;){let i=(e||"").toString().replace(/(=\?([^?]+)\?[Bb]\?([^?]*)\?=)\s*(?==\?([^?]+)\?[Bb]\?[^?]*\?=)/g,(n,o,s,a,u)=>t&&s===u&&a.length%4===0&&!/=$/.test(a)?o+"__\0JOIN\0__":n).replace(/(=\?([^?]+)\?[Qq]\?[^?]*\?=)\s*(?==\?([^?]+)\?[Qq]\?[^?]*\?=)/g,(n,o,s,a)=>t&&s===a?o+"__\0JOIN\0__":n).replace(/(\?=)?__\x00JOIN\x00__(=\?([^?]+)\?[QqBb]\?)?/g,"").replace(/(=\?[^?]+\?[QqBb]\?[^?]*\?=)\s+(?==\?[^?]+\?[QqBb]\?[^?]*\?=)/g,"$1").replace(/=\?([\w_\-*]+)\?([QqBb])\?([^?]*)\?=/g,(n,o,s,a)=>P2(o,s,a));if(t&&i.indexOf("\uFFFD")>=0)t=!1;else return i}}function T2(e,t){t=t||"utf-8";let r=[];for(let o=0;o<e.length;o++){let s=e.charAt(o);if(s==="%"&&/^[a-f0-9]{2}/i.test(e.substr(o+1,2))){let a=e.substr(o+1,2);o+=2,r.push(parseInt(a,16))}else if(s.charCodeAt(0)>126){s=St.encode(s);for(let a=0;a<s.length;a++)r.push(s[a])}else r.push(s.charCodeAt(0))}let i=new ArrayBuffer(r.length),n=new DataView(i);for(let o=0,s=r.length;o<s;o++)n.setUint8(o,r[o]);return ar(t).decode(i)}function Od(e){let t=new Map;Object.keys(e.params).forEach(r=>{let i=r.match(/\*((\d+)\*?)?$/);if(!i)return;let n=r.substr(0,i.index).toLowerCase(),o=Number(i[2])||0,s;t.has(n)?s=t.get(n):(s={charset:!1,values:[]},t.set(n,s));let a=e.params[r];o===0&&i[0].charAt(i[0].length-1)==="*"&&(i=a.match(/^([^']*)'[^']*'(.*)$/))&&(s.charset=i[1]||"utf-8",a=i[2]),s.values.push({nr:o,value:a}),delete e.params[r]}),t.forEach((r,i)=>{e.params[i]=T2(r.values.sort((n,o)=>n.nr-o.nr).map(n=>n.value).join(""),r.charset)})}var Nr=class{constructor(){this.chunks=[]}update(t){this.chunks.push(t),this.chunks.push(`
158
- `)}finalize(){return wt(new Blob(this.chunks,{type:"application/octet-stream"}))}};var Gr=class{constructor(t){t=t||{},this.decoder=t.decoder||new TextDecoder,this.maxChunkSize=100*1024,this.chunks=[],this.remainder=""}update(t){let r=this.decoder.decode(t);if(r=r.replace(/[^a-zA-Z0-9+\/]+/g,""),this.remainder+=r,this.remainder.length>=this.maxChunkSize){let i=Math.floor(this.remainder.length/4)*4,n;i===this.remainder.length?(n=this.remainder,this.remainder=""):(n=this.remainder.substr(0,i),this.remainder=this.remainder.substr(i)),n.length&&this.chunks.push(Ci(n))}}finalize(){return this.remainder&&!/^=+$/.test(this.remainder)&&this.chunks.push(Ci(this.remainder)),wt(new Blob(this.chunks,{type:"application/octet-stream"}))}};var Sd=/^=[a-f0-9]{2}$/i,I2=/(?==[a-f0-9]{2})/i,$2=/=\r?\n/g,j2=/=[a-fA-F0-9]?$/,Ur=class{constructor(t){t=t||{},this.decoder=t.decoder||new TextDecoder,this.maxChunkSize=100*1024,this.remainder="",this.chunks=[]}decodeQPBytes(t){let r=new ArrayBuffer(t.length),i=new DataView(r);for(let n=0,o=t.length;n<o;n++)i.setUint8(n,parseInt(t[n],16));return r}decodeChunks(t){t=t.replace($2,"");let r=t.split(I2),i=[];for(let n of r){if(n.charAt(0)!=="="){i.length&&(this.chunks.push(this.decodeQPBytes(i)),i=[]),this.chunks.push(n);continue}if(n.length===3){Sd.test(n)?i.push(n.substr(1)):(i.length&&(this.chunks.push(this.decodeQPBytes(i)),i=[]),this.chunks.push(n));continue}if(n.length>3){let o=n.substr(0,3);Sd.test(o)?(i.push(n.substr(1,2)),this.chunks.push(this.decodeQPBytes(i)),i=[],n=n.substr(3),this.chunks.push(n)):(i.length&&(this.chunks.push(this.decodeQPBytes(i)),i=[]),this.chunks.push(n))}}i.length&&this.chunks.push(this.decodeQPBytes(i))}update(t){let r=this.decoder.decode(t)+`
159
- `;if(r=this.remainder+r,r.length<this.maxChunkSize){this.remainder=r;return}this.remainder="";let i=r.match(j2);if(i){if(i.index===0){this.remainder=r;return}this.remainder=r.substr(i.index),r=r.substr(0,i.index)}this.decodeChunks(r)}finalize(){return this.remainder.length&&(this.decodeChunks(this.remainder),this.remainder=""),wt(new Blob(this.chunks,{type:"application/octet-stream"}))}};var D2=ar(),ur=class{constructor(t){if(this.options=t||{},this.postalMime=this.options.postalMime,this.root=!!this.options.parentNode,this.childNodes=[],this.options.parentNode){if(this.parentNode=this.options.parentNode,this.depth=this.parentNode.depth+1,this.depth>this.options.maxNestingDepth)throw new Error(`Maximum MIME nesting depth of ${this.options.maxNestingDepth} levels exceeded`);this.options.parentNode.childNodes.push(this)}else this.depth=0;this.state="header",this.headerLines=[],this.headerSize=0;let i=(this.options.parentMultipartType||null)==="digest"?"message/rfc822":"text/plain";this.contentType={value:i,default:!0},this.contentTransferEncoding={value:"8bit"},this.contentDisposition={value:""},this.headers=[],this.contentDecoder=!1}setupContentDecoder(t){/base64/i.test(t)?this.contentDecoder=new Gr:/quoted-printable/i.test(t)?this.contentDecoder=new Ur({decoder:ar(this.contentType.parsed.params.charset)}):this.contentDecoder=new Nr}async finalize(){if(this.state==="finished")return;this.state==="header"&&this.processHeaders();let t=this.postalMime.boundaries;for(let r=t.length-1;r>=0;r--)if(t[r].node===this){t.splice(r,1);break}await this.finalizeChildNodes(),this.content=this.contentDecoder?await this.contentDecoder.finalize():null,this.state="finished"}async finalizeChildNodes(){for(let t of this.childNodes)await t.finalize()}stripComments(t){let r="",i=0,n=!1,o=!1;for(let s=0;s<t.length;s++){let a=t.charAt(s);if(n){i===0&&(r+=a),n=!1;continue}if(a==="\\"){n=!0,i===0&&(r+=a);continue}if(a==='"'&&i===0){o=!o,r+=a;continue}if(!o){if(a==="("){i++;continue}if(a===")"&&i>0){i--;continue}}i===0&&(r+=a)}return r}parseStructuredHeader(t){t=this.stripComments(t);let r={value:!1,params:{}},i=!1,n="",o="value",s=!1,a=!1,u;for(let d=0,l=t.length;d<l;d++)switch(u=t.charAt(d),o){case"key":if(u==="="){i=n.trim().toLowerCase(),o="value",n="";break}n+=u;break;case"value":if(a)n+=u;else if(u==="\\"){a=!0;continue}else s&&u===s?s=!1:!s&&u==='"'?s=u:!s&&u===";"?(i===!1?r.value=n.trim():r.params[i]=n.trim(),o="key",n=""):n+=u;a=!1;break}return n=n.trim(),o==="value"?i===!1?r.value=n:r.params[i]=n:n&&(r.params[n.toLowerCase()]=""),r.value&&(r.value=r.value.toLowerCase()),Od(r),r}decodeFlowedText(t,r){return t.split(/\r?\n/).reduce((i,n)=>i.endsWith(" ")&&i!=="-- "&&!i.endsWith(`
160
- -- `)?r?i.slice(0,-1)+n:i+n:i+`
161
- `+n).replace(/^ /gm,"")}getTextContent(){if(!this.content)return"";let t=ar(this.contentType.parsed.params.charset).decode(this.content);return/^flowed$/i.test(this.contentType.parsed.params.format)&&(t=this.decodeFlowedText(t,/^yes$/i.test(this.contentType.parsed.params.delsp))),t}processHeaders(){for(let t=this.headerLines.length-1;t>=0;t--){let r=this.headerLines[t];t&&/^\s/.test(r)&&(this.headerLines[t-1]+=`
162
- `+r,this.headerLines.splice(t,1))}this.rawHeaderLines=[];for(let t=this.headerLines.length-1;t>=0;t--){let r=this.headerLines[t],i=r.indexOf(":"),n=i<0?r.trim():r.substr(0,i).trim();this.rawHeaderLines.push({key:n.toLowerCase(),line:r});let o=r.replace(/\s+/g," ");i=o.indexOf(":");let s=i<0?o.trim():o.substr(0,i).trim(),a=i<0?"":o.substr(i+1).trim();switch(this.headers.push({key:s.toLowerCase(),originalKey:s,value:a}),s.toLowerCase()){case"content-type":this.contentType.default&&(this.contentType={value:a,parsed:{}});break;case"content-transfer-encoding":this.contentTransferEncoding={value:a,parsed:{}};break;case"content-disposition":this.contentDisposition={value:a,parsed:{}};break;case"content-id":this.contentId=a;break;case"content-description":this.contentDescription=a;break}}this.contentType.parsed=this.parseStructuredHeader(this.contentType.value),this.contentType.multipart=/^multipart\//i.test(this.contentType.parsed.value)?this.contentType.parsed.value.substr(this.contentType.parsed.value.indexOf("/")+1):!1,this.contentType.multipart&&this.contentType.parsed.params.boundary&&this.postalMime.boundaries.push({value:St.encode(this.contentType.parsed.params.boundary),node:this}),this.contentDisposition.parsed=this.parseStructuredHeader(this.contentDisposition.value),this.contentTransferEncoding.encoding=this.contentTransferEncoding.value.toLowerCase().split(/[^\w-]/).shift(),this.setupContentDecoder(this.contentTransferEncoding.encoding)}feed(t){switch(this.state){case"header":if(!t.length)return this.state="body",this.processHeaders();if(this.headerSize+=t.length,this.headerSize>this.options.maxHeadersSize)throw new Error(`Maximum header size of ${this.options.maxHeadersSize} bytes exceeded`);this.headerLines.push(D2.decode(t));break;case"body":this.contentDecoder.update(t)}}};var q2={"&AElig":"\xC6","&AElig;":"\xC6","&AMP":"&","&AMP;":"&","&Aacute":"\xC1","&Aacute;":"\xC1","&Abreve;":"\u0102","&Acirc":"\xC2","&Acirc;":"\xC2","&Acy;":"\u0410","&Afr;":"\u{1D504}","&Agrave":"\xC0","&Agrave;":"\xC0","&Alpha;":"\u0391","&Amacr;":"\u0100","&And;":"\u2A53","&Aogon;":"\u0104","&Aopf;":"\u{1D538}","&ApplyFunction;":"\u2061","&Aring":"\xC5","&Aring;":"\xC5","&Ascr;":"\u{1D49C}","&Assign;":"\u2254","&Atilde":"\xC3","&Atilde;":"\xC3","&Auml":"\xC4","&Auml;":"\xC4","&Backslash;":"\u2216","&Barv;":"\u2AE7","&Barwed;":"\u2306","&Bcy;":"\u0411","&Because;":"\u2235","&Bernoullis;":"\u212C","&Beta;":"\u0392","&Bfr;":"\u{1D505}","&Bopf;":"\u{1D539}","&Breve;":"\u02D8","&Bscr;":"\u212C","&Bumpeq;":"\u224E","&CHcy;":"\u0427","&COPY":"\xA9","&COPY;":"\xA9","&Cacute;":"\u0106","&Cap;":"\u22D2","&CapitalDifferentialD;":"\u2145","&Cayleys;":"\u212D","&Ccaron;":"\u010C","&Ccedil":"\xC7","&Ccedil;":"\xC7","&Ccirc;":"\u0108","&Cconint;":"\u2230","&Cdot;":"\u010A","&Cedilla;":"\xB8","&CenterDot;":"\xB7","&Cfr;":"\u212D","&Chi;":"\u03A7","&CircleDot;":"\u2299","&CircleMinus;":"\u2296","&CirclePlus;":"\u2295","&CircleTimes;":"\u2297","&ClockwiseContourIntegral;":"\u2232","&CloseCurlyDoubleQuote;":"\u201D","&CloseCurlyQuote;":"\u2019","&Colon;":"\u2237","&Colone;":"\u2A74","&Congruent;":"\u2261","&Conint;":"\u222F","&ContourIntegral;":"\u222E","&Copf;":"\u2102","&Coproduct;":"\u2210","&CounterClockwiseContourIntegral;":"\u2233","&Cross;":"\u2A2F","&Cscr;":"\u{1D49E}","&Cup;":"\u22D3","&CupCap;":"\u224D","&DD;":"\u2145","&DDotrahd;":"\u2911","&DJcy;":"\u0402","&DScy;":"\u0405","&DZcy;":"\u040F","&Dagger;":"\u2021","&Darr;":"\u21A1","&Dashv;":"\u2AE4","&Dcaron;":"\u010E","&Dcy;":"\u0414","&Del;":"\u2207","&Delta;":"\u0394","&Dfr;":"\u{1D507}","&DiacriticalAcute;":"\xB4","&DiacriticalDot;":"\u02D9","&DiacriticalDoubleAcute;":"\u02DD","&DiacriticalGrave;":"`","&DiacriticalTilde;":"\u02DC","&Diamond;":"\u22C4","&DifferentialD;":"\u2146","&Dopf;":"\u{1D53B}","&Dot;":"\xA8","&DotDot;":"\u20DC","&DotEqual;":"\u2250","&DoubleContourIntegral;":"\u222F","&DoubleDot;":"\xA8","&DoubleDownArrow;":"\u21D3","&DoubleLeftArrow;":"\u21D0","&DoubleLeftRightArrow;":"\u21D4","&DoubleLeftTee;":"\u2AE4","&DoubleLongLeftArrow;":"\u27F8","&DoubleLongLeftRightArrow;":"\u27FA","&DoubleLongRightArrow;":"\u27F9","&DoubleRightArrow;":"\u21D2","&DoubleRightTee;":"\u22A8","&DoubleUpArrow;":"\u21D1","&DoubleUpDownArrow;":"\u21D5","&DoubleVerticalBar;":"\u2225","&DownArrow;":"\u2193","&DownArrowBar;":"\u2913","&DownArrowUpArrow;":"\u21F5","&DownBreve;":"\u0311","&DownLeftRightVector;":"\u2950","&DownLeftTeeVector;":"\u295E","&DownLeftVector;":"\u21BD","&DownLeftVectorBar;":"\u2956","&DownRightTeeVector;":"\u295F","&DownRightVector;":"\u21C1","&DownRightVectorBar;":"\u2957","&DownTee;":"\u22A4","&DownTeeArrow;":"\u21A7","&Downarrow;":"\u21D3","&Dscr;":"\u{1D49F}","&Dstrok;":"\u0110","&ENG;":"\u014A","&ETH":"\xD0","&ETH;":"\xD0","&Eacute":"\xC9","&Eacute;":"\xC9","&Ecaron;":"\u011A","&Ecirc":"\xCA","&Ecirc;":"\xCA","&Ecy;":"\u042D","&Edot;":"\u0116","&Efr;":"\u{1D508}","&Egrave":"\xC8","&Egrave;":"\xC8","&Element;":"\u2208","&Emacr;":"\u0112","&EmptySmallSquare;":"\u25FB","&EmptyVerySmallSquare;":"\u25AB","&Eogon;":"\u0118","&Eopf;":"\u{1D53C}","&Epsilon;":"\u0395","&Equal;":"\u2A75","&EqualTilde;":"\u2242","&Equilibrium;":"\u21CC","&Escr;":"\u2130","&Esim;":"\u2A73","&Eta;":"\u0397","&Euml":"\xCB","&Euml;":"\xCB","&Exists;":"\u2203","&ExponentialE;":"\u2147","&Fcy;":"\u0424","&Ffr;":"\u{1D509}","&FilledSmallSquare;":"\u25FC","&FilledVerySmallSquare;":"\u25AA","&Fopf;":"\u{1D53D}","&ForAll;":"\u2200","&Fouriertrf;":"\u2131","&Fscr;":"\u2131","&GJcy;":"\u0403","&GT":">","&GT;":">","&Gamma;":"\u0393","&Gammad;":"\u03DC","&Gbreve;":"\u011E","&Gcedil;":"\u0122","&Gcirc;":"\u011C","&Gcy;":"\u0413","&Gdot;":"\u0120","&Gfr;":"\u{1D50A}","&Gg;":"\u22D9","&Gopf;":"\u{1D53E}","&GreaterEqual;":"\u2265","&GreaterEqualLess;":"\u22DB","&GreaterFullEqual;":"\u2267","&GreaterGreater;":"\u2AA2","&GreaterLess;":"\u2277","&GreaterSlantEqual;":"\u2A7E","&GreaterTilde;":"\u2273","&Gscr;":"\u{1D4A2}","&Gt;":"\u226B","&HARDcy;":"\u042A","&Hacek;":"\u02C7","&Hat;":"^","&Hcirc;":"\u0124","&Hfr;":"\u210C","&HilbertSpace;":"\u210B","&Hopf;":"\u210D","&HorizontalLine;":"\u2500","&Hscr;":"\u210B","&Hstrok;":"\u0126","&HumpDownHump;":"\u224E","&HumpEqual;":"\u224F","&IEcy;":"\u0415","&IJlig;":"\u0132","&IOcy;":"\u0401","&Iacute":"\xCD","&Iacute;":"\xCD","&Icirc":"\xCE","&Icirc;":"\xCE","&Icy;":"\u0418","&Idot;":"\u0130","&Ifr;":"\u2111","&Igrave":"\xCC","&Igrave;":"\xCC","&Im;":"\u2111","&Imacr;":"\u012A","&ImaginaryI;":"\u2148","&Implies;":"\u21D2","&Int;":"\u222C","&Integral;":"\u222B","&Intersection;":"\u22C2","&InvisibleComma;":"\u2063","&InvisibleTimes;":"\u2062","&Iogon;":"\u012E","&Iopf;":"\u{1D540}","&Iota;":"\u0399","&Iscr;":"\u2110","&Itilde;":"\u0128","&Iukcy;":"\u0406","&Iuml":"\xCF","&Iuml;":"\xCF","&Jcirc;":"\u0134","&Jcy;":"\u0419","&Jfr;":"\u{1D50D}","&Jopf;":"\u{1D541}","&Jscr;":"\u{1D4A5}","&Jsercy;":"\u0408","&Jukcy;":"\u0404","&KHcy;":"\u0425","&KJcy;":"\u040C","&Kappa;":"\u039A","&Kcedil;":"\u0136","&Kcy;":"\u041A","&Kfr;":"\u{1D50E}","&Kopf;":"\u{1D542}","&Kscr;":"\u{1D4A6}","&LJcy;":"\u0409","&LT":"<","&LT;":"<","&Lacute;":"\u0139","&Lambda;":"\u039B","&Lang;":"\u27EA","&Laplacetrf;":"\u2112","&Larr;":"\u219E","&Lcaron;":"\u013D","&Lcedil;":"\u013B","&Lcy;":"\u041B","&LeftAngleBracket;":"\u27E8","&LeftArrow;":"\u2190","&LeftArrowBar;":"\u21E4","&LeftArrowRightArrow;":"\u21C6","&LeftCeiling;":"\u2308","&LeftDoubleBracket;":"\u27E6","&LeftDownTeeVector;":"\u2961","&LeftDownVector;":"\u21C3","&LeftDownVectorBar;":"\u2959","&LeftFloor;":"\u230A","&LeftRightArrow;":"\u2194","&LeftRightVector;":"\u294E","&LeftTee;":"\u22A3","&LeftTeeArrow;":"\u21A4","&LeftTeeVector;":"\u295A","&LeftTriangle;":"\u22B2","&LeftTriangleBar;":"\u29CF","&LeftTriangleEqual;":"\u22B4","&LeftUpDownVector;":"\u2951","&LeftUpTeeVector;":"\u2960","&LeftUpVector;":"\u21BF","&LeftUpVectorBar;":"\u2958","&LeftVector;":"\u21BC","&LeftVectorBar;":"\u2952","&Leftarrow;":"\u21D0","&Leftrightarrow;":"\u21D4","&LessEqualGreater;":"\u22DA","&LessFullEqual;":"\u2266","&LessGreater;":"\u2276","&LessLess;":"\u2AA1","&LessSlantEqual;":"\u2A7D","&LessTilde;":"\u2272","&Lfr;":"\u{1D50F}","&Ll;":"\u22D8","&Lleftarrow;":"\u21DA","&Lmidot;":"\u013F","&LongLeftArrow;":"\u27F5","&LongLeftRightArrow;":"\u27F7","&LongRightArrow;":"\u27F6","&Longleftarrow;":"\u27F8","&Longleftrightarrow;":"\u27FA","&Longrightarrow;":"\u27F9","&Lopf;":"\u{1D543}","&LowerLeftArrow;":"\u2199","&LowerRightArrow;":"\u2198","&Lscr;":"\u2112","&Lsh;":"\u21B0","&Lstrok;":"\u0141","&Lt;":"\u226A","&Map;":"\u2905","&Mcy;":"\u041C","&MediumSpace;":"\u205F","&Mellintrf;":"\u2133","&Mfr;":"\u{1D510}","&MinusPlus;":"\u2213","&Mopf;":"\u{1D544}","&Mscr;":"\u2133","&Mu;":"\u039C","&NJcy;":"\u040A","&Nacute;":"\u0143","&Ncaron;":"\u0147","&Ncedil;":"\u0145","&Ncy;":"\u041D","&NegativeMediumSpace;":"\u200B","&NegativeThickSpace;":"\u200B","&NegativeThinSpace;":"\u200B","&NegativeVeryThinSpace;":"\u200B","&NestedGreaterGreater;":"\u226B","&NestedLessLess;":"\u226A","&NewLine;":`
163
- `,"&Nfr;":"\u{1D511}","&NoBreak;":"\u2060","&NonBreakingSpace;":"\xA0","&Nopf;":"\u2115","&Not;":"\u2AEC","&NotCongruent;":"\u2262","&NotCupCap;":"\u226D","&NotDoubleVerticalBar;":"\u2226","&NotElement;":"\u2209","&NotEqual;":"\u2260","&NotEqualTilde;":"\u2242\u0338","&NotExists;":"\u2204","&NotGreater;":"\u226F","&NotGreaterEqual;":"\u2271","&NotGreaterFullEqual;":"\u2267\u0338","&NotGreaterGreater;":"\u226B\u0338","&NotGreaterLess;":"\u2279","&NotGreaterSlantEqual;":"\u2A7E\u0338","&NotGreaterTilde;":"\u2275","&NotHumpDownHump;":"\u224E\u0338","&NotHumpEqual;":"\u224F\u0338","&NotLeftTriangle;":"\u22EA","&NotLeftTriangleBar;":"\u29CF\u0338","&NotLeftTriangleEqual;":"\u22EC","&NotLess;":"\u226E","&NotLessEqual;":"\u2270","&NotLessGreater;":"\u2278","&NotLessLess;":"\u226A\u0338","&NotLessSlantEqual;":"\u2A7D\u0338","&NotLessTilde;":"\u2274","&NotNestedGreaterGreater;":"\u2AA2\u0338","&NotNestedLessLess;":"\u2AA1\u0338","&NotPrecedes;":"\u2280","&NotPrecedesEqual;":"\u2AAF\u0338","&NotPrecedesSlantEqual;":"\u22E0","&NotReverseElement;":"\u220C","&NotRightTriangle;":"\u22EB","&NotRightTriangleBar;":"\u29D0\u0338","&NotRightTriangleEqual;":"\u22ED","&NotSquareSubset;":"\u228F\u0338","&NotSquareSubsetEqual;":"\u22E2","&NotSquareSuperset;":"\u2290\u0338","&NotSquareSupersetEqual;":"\u22E3","&NotSubset;":"\u2282\u20D2","&NotSubsetEqual;":"\u2288","&NotSucceeds;":"\u2281","&NotSucceedsEqual;":"\u2AB0\u0338","&NotSucceedsSlantEqual;":"\u22E1","&NotSucceedsTilde;":"\u227F\u0338","&NotSuperset;":"\u2283\u20D2","&NotSupersetEqual;":"\u2289","&NotTilde;":"\u2241","&NotTildeEqual;":"\u2244","&NotTildeFullEqual;":"\u2247","&NotTildeTilde;":"\u2249","&NotVerticalBar;":"\u2224","&Nscr;":"\u{1D4A9}","&Ntilde":"\xD1","&Ntilde;":"\xD1","&Nu;":"\u039D","&OElig;":"\u0152","&Oacute":"\xD3","&Oacute;":"\xD3","&Ocirc":"\xD4","&Ocirc;":"\xD4","&Ocy;":"\u041E","&Odblac;":"\u0150","&Ofr;":"\u{1D512}","&Ograve":"\xD2","&Ograve;":"\xD2","&Omacr;":"\u014C","&Omega;":"\u03A9","&Omicron;":"\u039F","&Oopf;":"\u{1D546}","&OpenCurlyDoubleQuote;":"\u201C","&OpenCurlyQuote;":"\u2018","&Or;":"\u2A54","&Oscr;":"\u{1D4AA}","&Oslash":"\xD8","&Oslash;":"\xD8","&Otilde":"\xD5","&Otilde;":"\xD5","&Otimes;":"\u2A37","&Ouml":"\xD6","&Ouml;":"\xD6","&OverBar;":"\u203E","&OverBrace;":"\u23DE","&OverBracket;":"\u23B4","&OverParenthesis;":"\u23DC","&PartialD;":"\u2202","&Pcy;":"\u041F","&Pfr;":"\u{1D513}","&Phi;":"\u03A6","&Pi;":"\u03A0","&PlusMinus;":"\xB1","&Poincareplane;":"\u210C","&Popf;":"\u2119","&Pr;":"\u2ABB","&Precedes;":"\u227A","&PrecedesEqual;":"\u2AAF","&PrecedesSlantEqual;":"\u227C","&PrecedesTilde;":"\u227E","&Prime;":"\u2033","&Product;":"\u220F","&Proportion;":"\u2237","&Proportional;":"\u221D","&Pscr;":"\u{1D4AB}","&Psi;":"\u03A8","&QUOT":'"',"&QUOT;":'"',"&Qfr;":"\u{1D514}","&Qopf;":"\u211A","&Qscr;":"\u{1D4AC}","&RBarr;":"\u2910","&REG":"\xAE","&REG;":"\xAE","&Racute;":"\u0154","&Rang;":"\u27EB","&Rarr;":"\u21A0","&Rarrtl;":"\u2916","&Rcaron;":"\u0158","&Rcedil;":"\u0156","&Rcy;":"\u0420","&Re;":"\u211C","&ReverseElement;":"\u220B","&ReverseEquilibrium;":"\u21CB","&ReverseUpEquilibrium;":"\u296F","&Rfr;":"\u211C","&Rho;":"\u03A1","&RightAngleBracket;":"\u27E9","&RightArrow;":"\u2192","&RightArrowBar;":"\u21E5","&RightArrowLeftArrow;":"\u21C4","&RightCeiling;":"\u2309","&RightDoubleBracket;":"\u27E7","&RightDownTeeVector;":"\u295D","&RightDownVector;":"\u21C2","&RightDownVectorBar;":"\u2955","&RightFloor;":"\u230B","&RightTee;":"\u22A2","&RightTeeArrow;":"\u21A6","&RightTeeVector;":"\u295B","&RightTriangle;":"\u22B3","&RightTriangleBar;":"\u29D0","&RightTriangleEqual;":"\u22B5","&RightUpDownVector;":"\u294F","&RightUpTeeVector;":"\u295C","&RightUpVector;":"\u21BE","&RightUpVectorBar;":"\u2954","&RightVector;":"\u21C0","&RightVectorBar;":"\u2953","&Rightarrow;":"\u21D2","&Ropf;":"\u211D","&RoundImplies;":"\u2970","&Rrightarrow;":"\u21DB","&Rscr;":"\u211B","&Rsh;":"\u21B1","&RuleDelayed;":"\u29F4","&SHCHcy;":"\u0429","&SHcy;":"\u0428","&SOFTcy;":"\u042C","&Sacute;":"\u015A","&Sc;":"\u2ABC","&Scaron;":"\u0160","&Scedil;":"\u015E","&Scirc;":"\u015C","&Scy;":"\u0421","&Sfr;":"\u{1D516}","&ShortDownArrow;":"\u2193","&ShortLeftArrow;":"\u2190","&ShortRightArrow;":"\u2192","&ShortUpArrow;":"\u2191","&Sigma;":"\u03A3","&SmallCircle;":"\u2218","&Sopf;":"\u{1D54A}","&Sqrt;":"\u221A","&Square;":"\u25A1","&SquareIntersection;":"\u2293","&SquareSubset;":"\u228F","&SquareSubsetEqual;":"\u2291","&SquareSuperset;":"\u2290","&SquareSupersetEqual;":"\u2292","&SquareUnion;":"\u2294","&Sscr;":"\u{1D4AE}","&Star;":"\u22C6","&Sub;":"\u22D0","&Subset;":"\u22D0","&SubsetEqual;":"\u2286","&Succeeds;":"\u227B","&SucceedsEqual;":"\u2AB0","&SucceedsSlantEqual;":"\u227D","&SucceedsTilde;":"\u227F","&SuchThat;":"\u220B","&Sum;":"\u2211","&Sup;":"\u22D1","&Superset;":"\u2283","&SupersetEqual;":"\u2287","&Supset;":"\u22D1","&THORN":"\xDE","&THORN;":"\xDE","&TRADE;":"\u2122","&TSHcy;":"\u040B","&TScy;":"\u0426","&Tab;":" ","&Tau;":"\u03A4","&Tcaron;":"\u0164","&Tcedil;":"\u0162","&Tcy;":"\u0422","&Tfr;":"\u{1D517}","&Therefore;":"\u2234","&Theta;":"\u0398","&ThickSpace;":"\u205F\u200A","&ThinSpace;":"\u2009","&Tilde;":"\u223C","&TildeEqual;":"\u2243","&TildeFullEqual;":"\u2245","&TildeTilde;":"\u2248","&Topf;":"\u{1D54B}","&TripleDot;":"\u20DB","&Tscr;":"\u{1D4AF}","&Tstrok;":"\u0166","&Uacute":"\xDA","&Uacute;":"\xDA","&Uarr;":"\u219F","&Uarrocir;":"\u2949","&Ubrcy;":"\u040E","&Ubreve;":"\u016C","&Ucirc":"\xDB","&Ucirc;":"\xDB","&Ucy;":"\u0423","&Udblac;":"\u0170","&Ufr;":"\u{1D518}","&Ugrave":"\xD9","&Ugrave;":"\xD9","&Umacr;":"\u016A","&UnderBar;":"_","&UnderBrace;":"\u23DF","&UnderBracket;":"\u23B5","&UnderParenthesis;":"\u23DD","&Union;":"\u22C3","&UnionPlus;":"\u228E","&Uogon;":"\u0172","&Uopf;":"\u{1D54C}","&UpArrow;":"\u2191","&UpArrowBar;":"\u2912","&UpArrowDownArrow;":"\u21C5","&UpDownArrow;":"\u2195","&UpEquilibrium;":"\u296E","&UpTee;":"\u22A5","&UpTeeArrow;":"\u21A5","&Uparrow;":"\u21D1","&Updownarrow;":"\u21D5","&UpperLeftArrow;":"\u2196","&UpperRightArrow;":"\u2197","&Upsi;":"\u03D2","&Upsilon;":"\u03A5","&Uring;":"\u016E","&Uscr;":"\u{1D4B0}","&Utilde;":"\u0168","&Uuml":"\xDC","&Uuml;":"\xDC","&VDash;":"\u22AB","&Vbar;":"\u2AEB","&Vcy;":"\u0412","&Vdash;":"\u22A9","&Vdashl;":"\u2AE6","&Vee;":"\u22C1","&Verbar;":"\u2016","&Vert;":"\u2016","&VerticalBar;":"\u2223","&VerticalLine;":"|","&VerticalSeparator;":"\u2758","&VerticalTilde;":"\u2240","&VeryThinSpace;":"\u200A","&Vfr;":"\u{1D519}","&Vopf;":"\u{1D54D}","&Vscr;":"\u{1D4B1}","&Vvdash;":"\u22AA","&Wcirc;":"\u0174","&Wedge;":"\u22C0","&Wfr;":"\u{1D51A}","&Wopf;":"\u{1D54E}","&Wscr;":"\u{1D4B2}","&Xfr;":"\u{1D51B}","&Xi;":"\u039E","&Xopf;":"\u{1D54F}","&Xscr;":"\u{1D4B3}","&YAcy;":"\u042F","&YIcy;":"\u0407","&YUcy;":"\u042E","&Yacute":"\xDD","&Yacute;":"\xDD","&Ycirc;":"\u0176","&Ycy;":"\u042B","&Yfr;":"\u{1D51C}","&Yopf;":"\u{1D550}","&Yscr;":"\u{1D4B4}","&Yuml;":"\u0178","&ZHcy;":"\u0416","&Zacute;":"\u0179","&Zcaron;":"\u017D","&Zcy;":"\u0417","&Zdot;":"\u017B","&ZeroWidthSpace;":"\u200B","&Zeta;":"\u0396","&Zfr;":"\u2128","&Zopf;":"\u2124","&Zscr;":"\u{1D4B5}","&aacute":"\xE1","&aacute;":"\xE1","&abreve;":"\u0103","&ac;":"\u223E","&acE;":"\u223E\u0333","&acd;":"\u223F","&acirc":"\xE2","&acirc;":"\xE2","&acute":"\xB4","&acute;":"\xB4","&acy;":"\u0430","&aelig":"\xE6","&aelig;":"\xE6","&af;":"\u2061","&afr;":"\u{1D51E}","&agrave":"\xE0","&agrave;":"\xE0","&alefsym;":"\u2135","&aleph;":"\u2135","&alpha;":"\u03B1","&amacr;":"\u0101","&amalg;":"\u2A3F","&amp":"&","&amp;":"&","&and;":"\u2227","&andand;":"\u2A55","&andd;":"\u2A5C","&andslope;":"\u2A58","&andv;":"\u2A5A","&ang;":"\u2220","&ange;":"\u29A4","&angle;":"\u2220","&angmsd;":"\u2221","&angmsdaa;":"\u29A8","&angmsdab;":"\u29A9","&angmsdac;":"\u29AA","&angmsdad;":"\u29AB","&angmsdae;":"\u29AC","&angmsdaf;":"\u29AD","&angmsdag;":"\u29AE","&angmsdah;":"\u29AF","&angrt;":"\u221F","&angrtvb;":"\u22BE","&angrtvbd;":"\u299D","&angsph;":"\u2222","&angst;":"\xC5","&angzarr;":"\u237C","&aogon;":"\u0105","&aopf;":"\u{1D552}","&ap;":"\u2248","&apE;":"\u2A70","&apacir;":"\u2A6F","&ape;":"\u224A","&apid;":"\u224B","&apos;":"'","&approx;":"\u2248","&approxeq;":"\u224A","&aring":"\xE5","&aring;":"\xE5","&ascr;":"\u{1D4B6}","&ast;":"*","&asymp;":"\u2248","&asympeq;":"\u224D","&atilde":"\xE3","&atilde;":"\xE3","&auml":"\xE4","&auml;":"\xE4","&awconint;":"\u2233","&awint;":"\u2A11","&bNot;":"\u2AED","&backcong;":"\u224C","&backepsilon;":"\u03F6","&backprime;":"\u2035","&backsim;":"\u223D","&backsimeq;":"\u22CD","&barvee;":"\u22BD","&barwed;":"\u2305","&barwedge;":"\u2305","&bbrk;":"\u23B5","&bbrktbrk;":"\u23B6","&bcong;":"\u224C","&bcy;":"\u0431","&bdquo;":"\u201E","&becaus;":"\u2235","&because;":"\u2235","&bemptyv;":"\u29B0","&bepsi;":"\u03F6","&bernou;":"\u212C","&beta;":"\u03B2","&beth;":"\u2136","&between;":"\u226C","&bfr;":"\u{1D51F}","&bigcap;":"\u22C2","&bigcirc;":"\u25EF","&bigcup;":"\u22C3","&bigodot;":"\u2A00","&bigoplus;":"\u2A01","&bigotimes;":"\u2A02","&bigsqcup;":"\u2A06","&bigstar;":"\u2605","&bigtriangledown;":"\u25BD","&bigtriangleup;":"\u25B3","&biguplus;":"\u2A04","&bigvee;":"\u22C1","&bigwedge;":"\u22C0","&bkarow;":"\u290D","&blacklozenge;":"\u29EB","&blacksquare;":"\u25AA","&blacktriangle;":"\u25B4","&blacktriangledown;":"\u25BE","&blacktriangleleft;":"\u25C2","&blacktriangleright;":"\u25B8","&blank;":"\u2423","&blk12;":"\u2592","&blk14;":"\u2591","&blk34;":"\u2593","&block;":"\u2588","&bne;":"=\u20E5","&bnequiv;":"\u2261\u20E5","&bnot;":"\u2310","&bopf;":"\u{1D553}","&bot;":"\u22A5","&bottom;":"\u22A5","&bowtie;":"\u22C8","&boxDL;":"\u2557","&boxDR;":"\u2554","&boxDl;":"\u2556","&boxDr;":"\u2553","&boxH;":"\u2550","&boxHD;":"\u2566","&boxHU;":"\u2569","&boxHd;":"\u2564","&boxHu;":"\u2567","&boxUL;":"\u255D","&boxUR;":"\u255A","&boxUl;":"\u255C","&boxUr;":"\u2559","&boxV;":"\u2551","&boxVH;":"\u256C","&boxVL;":"\u2563","&boxVR;":"\u2560","&boxVh;":"\u256B","&boxVl;":"\u2562","&boxVr;":"\u255F","&boxbox;":"\u29C9","&boxdL;":"\u2555","&boxdR;":"\u2552","&boxdl;":"\u2510","&boxdr;":"\u250C","&boxh;":"\u2500","&boxhD;":"\u2565","&boxhU;":"\u2568","&boxhd;":"\u252C","&boxhu;":"\u2534","&boxminus;":"\u229F","&boxplus;":"\u229E","&boxtimes;":"\u22A0","&boxuL;":"\u255B","&boxuR;":"\u2558","&boxul;":"\u2518","&boxur;":"\u2514","&boxv;":"\u2502","&boxvH;":"\u256A","&boxvL;":"\u2561","&boxvR;":"\u255E","&boxvh;":"\u253C","&boxvl;":"\u2524","&boxvr;":"\u251C","&bprime;":"\u2035","&breve;":"\u02D8","&brvbar":"\xA6","&brvbar;":"\xA6","&bscr;":"\u{1D4B7}","&bsemi;":"\u204F","&bsim;":"\u223D","&bsime;":"\u22CD","&bsol;":"\\","&bsolb;":"\u29C5","&bsolhsub;":"\u27C8","&bull;":"\u2022","&bullet;":"\u2022","&bump;":"\u224E","&bumpE;":"\u2AAE","&bumpe;":"\u224F","&bumpeq;":"\u224F","&cacute;":"\u0107","&cap;":"\u2229","&capand;":"\u2A44","&capbrcup;":"\u2A49","&capcap;":"\u2A4B","&capcup;":"\u2A47","&capdot;":"\u2A40","&caps;":"\u2229\uFE00","&caret;":"\u2041","&caron;":"\u02C7","&ccaps;":"\u2A4D","&ccaron;":"\u010D","&ccedil":"\xE7","&ccedil;":"\xE7","&ccirc;":"\u0109","&ccups;":"\u2A4C","&ccupssm;":"\u2A50","&cdot;":"\u010B","&cedil":"\xB8","&cedil;":"\xB8","&cemptyv;":"\u29B2","&cent":"\xA2","&cent;":"\xA2","&centerdot;":"\xB7","&cfr;":"\u{1D520}","&chcy;":"\u0447","&check;":"\u2713","&checkmark;":"\u2713","&chi;":"\u03C7","&cir;":"\u25CB","&cirE;":"\u29C3","&circ;":"\u02C6","&circeq;":"\u2257","&circlearrowleft;":"\u21BA","&circlearrowright;":"\u21BB","&circledR;":"\xAE","&circledS;":"\u24C8","&circledast;":"\u229B","&circledcirc;":"\u229A","&circleddash;":"\u229D","&cire;":"\u2257","&cirfnint;":"\u2A10","&cirmid;":"\u2AEF","&cirscir;":"\u29C2","&clubs;":"\u2663","&clubsuit;":"\u2663","&colon;":":","&colone;":"\u2254","&coloneq;":"\u2254","&comma;":",","&commat;":"@","&comp;":"\u2201","&compfn;":"\u2218","&complement;":"\u2201","&complexes;":"\u2102","&cong;":"\u2245","&congdot;":"\u2A6D","&conint;":"\u222E","&copf;":"\u{1D554}","&coprod;":"\u2210","&copy":"\xA9","&copy;":"\xA9","&copysr;":"\u2117","&crarr;":"\u21B5","&cross;":"\u2717","&cscr;":"\u{1D4B8}","&csub;":"\u2ACF","&csube;":"\u2AD1","&csup;":"\u2AD0","&csupe;":"\u2AD2","&ctdot;":"\u22EF","&cudarrl;":"\u2938","&cudarrr;":"\u2935","&cuepr;":"\u22DE","&cuesc;":"\u22DF","&cularr;":"\u21B6","&cularrp;":"\u293D","&cup;":"\u222A","&cupbrcap;":"\u2A48","&cupcap;":"\u2A46","&cupcup;":"\u2A4A","&cupdot;":"\u228D","&cupor;":"\u2A45","&cups;":"\u222A\uFE00","&curarr;":"\u21B7","&curarrm;":"\u293C","&curlyeqprec;":"\u22DE","&curlyeqsucc;":"\u22DF","&curlyvee;":"\u22CE","&curlywedge;":"\u22CF","&curren":"\xA4","&curren;":"\xA4","&curvearrowleft;":"\u21B6","&curvearrowright;":"\u21B7","&cuvee;":"\u22CE","&cuwed;":"\u22CF","&cwconint;":"\u2232","&cwint;":"\u2231","&cylcty;":"\u232D","&dArr;":"\u21D3","&dHar;":"\u2965","&dagger;":"\u2020","&daleth;":"\u2138","&darr;":"\u2193","&dash;":"\u2010","&dashv;":"\u22A3","&dbkarow;":"\u290F","&dblac;":"\u02DD","&dcaron;":"\u010F","&dcy;":"\u0434","&dd;":"\u2146","&ddagger;":"\u2021","&ddarr;":"\u21CA","&ddotseq;":"\u2A77","&deg":"\xB0","&deg;":"\xB0","&delta;":"\u03B4","&demptyv;":"\u29B1","&dfisht;":"\u297F","&dfr;":"\u{1D521}","&dharl;":"\u21C3","&dharr;":"\u21C2","&diam;":"\u22C4","&diamond;":"\u22C4","&diamondsuit;":"\u2666","&diams;":"\u2666","&die;":"\xA8","&digamma;":"\u03DD","&disin;":"\u22F2","&div;":"\xF7","&divide":"\xF7","&divide;":"\xF7","&divideontimes;":"\u22C7","&divonx;":"\u22C7","&djcy;":"\u0452","&dlcorn;":"\u231E","&dlcrop;":"\u230D","&dollar;":"$","&dopf;":"\u{1D555}","&dot;":"\u02D9","&doteq;":"\u2250","&doteqdot;":"\u2251","&dotminus;":"\u2238","&dotplus;":"\u2214","&dotsquare;":"\u22A1","&doublebarwedge;":"\u2306","&downarrow;":"\u2193","&downdownarrows;":"\u21CA","&downharpoonleft;":"\u21C3","&downharpoonright;":"\u21C2","&drbkarow;":"\u2910","&drcorn;":"\u231F","&drcrop;":"\u230C","&dscr;":"\u{1D4B9}","&dscy;":"\u0455","&dsol;":"\u29F6","&dstrok;":"\u0111","&dtdot;":"\u22F1","&dtri;":"\u25BF","&dtrif;":"\u25BE","&duarr;":"\u21F5","&duhar;":"\u296F","&dwangle;":"\u29A6","&dzcy;":"\u045F","&dzigrarr;":"\u27FF","&eDDot;":"\u2A77","&eDot;":"\u2251","&eacute":"\xE9","&eacute;":"\xE9","&easter;":"\u2A6E","&ecaron;":"\u011B","&ecir;":"\u2256","&ecirc":"\xEA","&ecirc;":"\xEA","&ecolon;":"\u2255","&ecy;":"\u044D","&edot;":"\u0117","&ee;":"\u2147","&efDot;":"\u2252","&efr;":"\u{1D522}","&eg;":"\u2A9A","&egrave":"\xE8","&egrave;":"\xE8","&egs;":"\u2A96","&egsdot;":"\u2A98","&el;":"\u2A99","&elinters;":"\u23E7","&ell;":"\u2113","&els;":"\u2A95","&elsdot;":"\u2A97","&emacr;":"\u0113","&empty;":"\u2205","&emptyset;":"\u2205","&emptyv;":"\u2205","&emsp13;":"\u2004","&emsp14;":"\u2005","&emsp;":"\u2003","&eng;":"\u014B","&ensp;":"\u2002","&eogon;":"\u0119","&eopf;":"\u{1D556}","&epar;":"\u22D5","&eparsl;":"\u29E3","&eplus;":"\u2A71","&epsi;":"\u03B5","&epsilon;":"\u03B5","&epsiv;":"\u03F5","&eqcirc;":"\u2256","&eqcolon;":"\u2255","&eqsim;":"\u2242","&eqslantgtr;":"\u2A96","&eqslantless;":"\u2A95","&equals;":"=","&equest;":"\u225F","&equiv;":"\u2261","&equivDD;":"\u2A78","&eqvparsl;":"\u29E5","&erDot;":"\u2253","&erarr;":"\u2971","&escr;":"\u212F","&esdot;":"\u2250","&esim;":"\u2242","&eta;":"\u03B7","&eth":"\xF0","&eth;":"\xF0","&euml":"\xEB","&euml;":"\xEB","&euro;":"\u20AC","&excl;":"!","&exist;":"\u2203","&expectation;":"\u2130","&exponentiale;":"\u2147","&fallingdotseq;":"\u2252","&fcy;":"\u0444","&female;":"\u2640","&ffilig;":"\uFB03","&fflig;":"\uFB00","&ffllig;":"\uFB04","&ffr;":"\u{1D523}","&filig;":"\uFB01","&fjlig;":"fj","&flat;":"\u266D","&fllig;":"\uFB02","&fltns;":"\u25B1","&fnof;":"\u0192","&fopf;":"\u{1D557}","&forall;":"\u2200","&fork;":"\u22D4","&forkv;":"\u2AD9","&fpartint;":"\u2A0D","&frac12":"\xBD","&frac12;":"\xBD","&frac13;":"\u2153","&frac14":"\xBC","&frac14;":"\xBC","&frac15;":"\u2155","&frac16;":"\u2159","&frac18;":"\u215B","&frac23;":"\u2154","&frac25;":"\u2156","&frac34":"\xBE","&frac34;":"\xBE","&frac35;":"\u2157","&frac38;":"\u215C","&frac45;":"\u2158","&frac56;":"\u215A","&frac58;":"\u215D","&frac78;":"\u215E","&frasl;":"\u2044","&frown;":"\u2322","&fscr;":"\u{1D4BB}","&gE;":"\u2267","&gEl;":"\u2A8C","&gacute;":"\u01F5","&gamma;":"\u03B3","&gammad;":"\u03DD","&gap;":"\u2A86","&gbreve;":"\u011F","&gcirc;":"\u011D","&gcy;":"\u0433","&gdot;":"\u0121","&ge;":"\u2265","&gel;":"\u22DB","&geq;":"\u2265","&geqq;":"\u2267","&geqslant;":"\u2A7E","&ges;":"\u2A7E","&gescc;":"\u2AA9","&gesdot;":"\u2A80","&gesdoto;":"\u2A82","&gesdotol;":"\u2A84","&gesl;":"\u22DB\uFE00","&gesles;":"\u2A94","&gfr;":"\u{1D524}","&gg;":"\u226B","&ggg;":"\u22D9","&gimel;":"\u2137","&gjcy;":"\u0453","&gl;":"\u2277","&glE;":"\u2A92","&gla;":"\u2AA5","&glj;":"\u2AA4","&gnE;":"\u2269","&gnap;":"\u2A8A","&gnapprox;":"\u2A8A","&gne;":"\u2A88","&gneq;":"\u2A88","&gneqq;":"\u2269","&gnsim;":"\u22E7","&gopf;":"\u{1D558}","&grave;":"`","&gscr;":"\u210A","&gsim;":"\u2273","&gsime;":"\u2A8E","&gsiml;":"\u2A90","&gt":">","&gt;":">","&gtcc;":"\u2AA7","&gtcir;":"\u2A7A","&gtdot;":"\u22D7","&gtlPar;":"\u2995","&gtquest;":"\u2A7C","&gtrapprox;":"\u2A86","&gtrarr;":"\u2978","&gtrdot;":"\u22D7","&gtreqless;":"\u22DB","&gtreqqless;":"\u2A8C","&gtrless;":"\u2277","&gtrsim;":"\u2273","&gvertneqq;":"\u2269\uFE00","&gvnE;":"\u2269\uFE00","&hArr;":"\u21D4","&hairsp;":"\u200A","&half;":"\xBD","&hamilt;":"\u210B","&hardcy;":"\u044A","&harr;":"\u2194","&harrcir;":"\u2948","&harrw;":"\u21AD","&hbar;":"\u210F","&hcirc;":"\u0125","&hearts;":"\u2665","&heartsuit;":"\u2665","&hellip;":"\u2026","&hercon;":"\u22B9","&hfr;":"\u{1D525}","&hksearow;":"\u2925","&hkswarow;":"\u2926","&hoarr;":"\u21FF","&homtht;":"\u223B","&hookleftarrow;":"\u21A9","&hookrightarrow;":"\u21AA","&hopf;":"\u{1D559}","&horbar;":"\u2015","&hscr;":"\u{1D4BD}","&hslash;":"\u210F","&hstrok;":"\u0127","&hybull;":"\u2043","&hyphen;":"\u2010","&iacute":"\xED","&iacute;":"\xED","&ic;":"\u2063","&icirc":"\xEE","&icirc;":"\xEE","&icy;":"\u0438","&iecy;":"\u0435","&iexcl":"\xA1","&iexcl;":"\xA1","&iff;":"\u21D4","&ifr;":"\u{1D526}","&igrave":"\xEC","&igrave;":"\xEC","&ii;":"\u2148","&iiiint;":"\u2A0C","&iiint;":"\u222D","&iinfin;":"\u29DC","&iiota;":"\u2129","&ijlig;":"\u0133","&imacr;":"\u012B","&image;":"\u2111","&imagline;":"\u2110","&imagpart;":"\u2111","&imath;":"\u0131","&imof;":"\u22B7","&imped;":"\u01B5","&in;":"\u2208","&incare;":"\u2105","&infin;":"\u221E","&infintie;":"\u29DD","&inodot;":"\u0131","&int;":"\u222B","&intcal;":"\u22BA","&integers;":"\u2124","&intercal;":"\u22BA","&intlarhk;":"\u2A17","&intprod;":"\u2A3C","&iocy;":"\u0451","&iogon;":"\u012F","&iopf;":"\u{1D55A}","&iota;":"\u03B9","&iprod;":"\u2A3C","&iquest":"\xBF","&iquest;":"\xBF","&iscr;":"\u{1D4BE}","&isin;":"\u2208","&isinE;":"\u22F9","&isindot;":"\u22F5","&isins;":"\u22F4","&isinsv;":"\u22F3","&isinv;":"\u2208","&it;":"\u2062","&itilde;":"\u0129","&iukcy;":"\u0456","&iuml":"\xEF","&iuml;":"\xEF","&jcirc;":"\u0135","&jcy;":"\u0439","&jfr;":"\u{1D527}","&jmath;":"\u0237","&jopf;":"\u{1D55B}","&jscr;":"\u{1D4BF}","&jsercy;":"\u0458","&jukcy;":"\u0454","&kappa;":"\u03BA","&kappav;":"\u03F0","&kcedil;":"\u0137","&kcy;":"\u043A","&kfr;":"\u{1D528}","&kgreen;":"\u0138","&khcy;":"\u0445","&kjcy;":"\u045C","&kopf;":"\u{1D55C}","&kscr;":"\u{1D4C0}","&lAarr;":"\u21DA","&lArr;":"\u21D0","&lAtail;":"\u291B","&lBarr;":"\u290E","&lE;":"\u2266","&lEg;":"\u2A8B","&lHar;":"\u2962","&lacute;":"\u013A","&laemptyv;":"\u29B4","&lagran;":"\u2112","&lambda;":"\u03BB","&lang;":"\u27E8","&langd;":"\u2991","&langle;":"\u27E8","&lap;":"\u2A85","&laquo":"\xAB","&laquo;":"\xAB","&larr;":"\u2190","&larrb;":"\u21E4","&larrbfs;":"\u291F","&larrfs;":"\u291D","&larrhk;":"\u21A9","&larrlp;":"\u21AB","&larrpl;":"\u2939","&larrsim;":"\u2973","&larrtl;":"\u21A2","&lat;":"\u2AAB","&latail;":"\u2919","&late;":"\u2AAD","&lates;":"\u2AAD\uFE00","&lbarr;":"\u290C","&lbbrk;":"\u2772","&lbrace;":"{","&lbrack;":"[","&lbrke;":"\u298B","&lbrksld;":"\u298F","&lbrkslu;":"\u298D","&lcaron;":"\u013E","&lcedil;":"\u013C","&lceil;":"\u2308","&lcub;":"{","&lcy;":"\u043B","&ldca;":"\u2936","&ldquo;":"\u201C","&ldquor;":"\u201E","&ldrdhar;":"\u2967","&ldrushar;":"\u294B","&ldsh;":"\u21B2","&le;":"\u2264","&leftarrow;":"\u2190","&leftarrowtail;":"\u21A2","&leftharpoondown;":"\u21BD","&leftharpoonup;":"\u21BC","&leftleftarrows;":"\u21C7","&leftrightarrow;":"\u2194","&leftrightarrows;":"\u21C6","&leftrightharpoons;":"\u21CB","&leftrightsquigarrow;":"\u21AD","&leftthreetimes;":"\u22CB","&leg;":"\u22DA","&leq;":"\u2264","&leqq;":"\u2266","&leqslant;":"\u2A7D","&les;":"\u2A7D","&lescc;":"\u2AA8","&lesdot;":"\u2A7F","&lesdoto;":"\u2A81","&lesdotor;":"\u2A83","&lesg;":"\u22DA\uFE00","&lesges;":"\u2A93","&lessapprox;":"\u2A85","&lessdot;":"\u22D6","&lesseqgtr;":"\u22DA","&lesseqqgtr;":"\u2A8B","&lessgtr;":"\u2276","&lesssim;":"\u2272","&lfisht;":"\u297C","&lfloor;":"\u230A","&lfr;":"\u{1D529}","&lg;":"\u2276","&lgE;":"\u2A91","&lhard;":"\u21BD","&lharu;":"\u21BC","&lharul;":"\u296A","&lhblk;":"\u2584","&ljcy;":"\u0459","&ll;":"\u226A","&llarr;":"\u21C7","&llcorner;":"\u231E","&llhard;":"\u296B","&lltri;":"\u25FA","&lmidot;":"\u0140","&lmoust;":"\u23B0","&lmoustache;":"\u23B0","&lnE;":"\u2268","&lnap;":"\u2A89","&lnapprox;":"\u2A89","&lne;":"\u2A87","&lneq;":"\u2A87","&lneqq;":"\u2268","&lnsim;":"\u22E6","&loang;":"\u27EC","&loarr;":"\u21FD","&lobrk;":"\u27E6","&longleftarrow;":"\u27F5","&longleftrightarrow;":"\u27F7","&longmapsto;":"\u27FC","&longrightarrow;":"\u27F6","&looparrowleft;":"\u21AB","&looparrowright;":"\u21AC","&lopar;":"\u2985","&lopf;":"\u{1D55D}","&loplus;":"\u2A2D","&lotimes;":"\u2A34","&lowast;":"\u2217","&lowbar;":"_","&loz;":"\u25CA","&lozenge;":"\u25CA","&lozf;":"\u29EB","&lpar;":"(","&lparlt;":"\u2993","&lrarr;":"\u21C6","&lrcorner;":"\u231F","&lrhar;":"\u21CB","&lrhard;":"\u296D","&lrm;":"\u200E","&lrtri;":"\u22BF","&lsaquo;":"\u2039","&lscr;":"\u{1D4C1}","&lsh;":"\u21B0","&lsim;":"\u2272","&lsime;":"\u2A8D","&lsimg;":"\u2A8F","&lsqb;":"[","&lsquo;":"\u2018","&lsquor;":"\u201A","&lstrok;":"\u0142","&lt":"<","&lt;":"<","&ltcc;":"\u2AA6","&ltcir;":"\u2A79","&ltdot;":"\u22D6","&lthree;":"\u22CB","&ltimes;":"\u22C9","&ltlarr;":"\u2976","&ltquest;":"\u2A7B","&ltrPar;":"\u2996","&ltri;":"\u25C3","&ltrie;":"\u22B4","&ltrif;":"\u25C2","&lurdshar;":"\u294A","&luruhar;":"\u2966","&lvertneqq;":"\u2268\uFE00","&lvnE;":"\u2268\uFE00","&mDDot;":"\u223A","&macr":"\xAF","&macr;":"\xAF","&male;":"\u2642","&malt;":"\u2720","&maltese;":"\u2720","&map;":"\u21A6","&mapsto;":"\u21A6","&mapstodown;":"\u21A7","&mapstoleft;":"\u21A4","&mapstoup;":"\u21A5","&marker;":"\u25AE","&mcomma;":"\u2A29","&mcy;":"\u043C","&mdash;":"\u2014","&measuredangle;":"\u2221","&mfr;":"\u{1D52A}","&mho;":"\u2127","&micro":"\xB5","&micro;":"\xB5","&mid;":"\u2223","&midast;":"*","&midcir;":"\u2AF0","&middot":"\xB7","&middot;":"\xB7","&minus;":"\u2212","&minusb;":"\u229F","&minusd;":"\u2238","&minusdu;":"\u2A2A","&mlcp;":"\u2ADB","&mldr;":"\u2026","&mnplus;":"\u2213","&models;":"\u22A7","&mopf;":"\u{1D55E}","&mp;":"\u2213","&mscr;":"\u{1D4C2}","&mstpos;":"\u223E","&mu;":"\u03BC","&multimap;":"\u22B8","&mumap;":"\u22B8","&nGg;":"\u22D9\u0338","&nGt;":"\u226B\u20D2","&nGtv;":"\u226B\u0338","&nLeftarrow;":"\u21CD","&nLeftrightarrow;":"\u21CE","&nLl;":"\u22D8\u0338","&nLt;":"\u226A\u20D2","&nLtv;":"\u226A\u0338","&nRightarrow;":"\u21CF","&nVDash;":"\u22AF","&nVdash;":"\u22AE","&nabla;":"\u2207","&nacute;":"\u0144","&nang;":"\u2220\u20D2","&nap;":"\u2249","&napE;":"\u2A70\u0338","&napid;":"\u224B\u0338","&napos;":"\u0149","&napprox;":"\u2249","&natur;":"\u266E","&natural;":"\u266E","&naturals;":"\u2115","&nbsp":"\xA0","&nbsp;":"\xA0","&nbump;":"\u224E\u0338","&nbumpe;":"\u224F\u0338","&ncap;":"\u2A43","&ncaron;":"\u0148","&ncedil;":"\u0146","&ncong;":"\u2247","&ncongdot;":"\u2A6D\u0338","&ncup;":"\u2A42","&ncy;":"\u043D","&ndash;":"\u2013","&ne;":"\u2260","&neArr;":"\u21D7","&nearhk;":"\u2924","&nearr;":"\u2197","&nearrow;":"\u2197","&nedot;":"\u2250\u0338","&nequiv;":"\u2262","&nesear;":"\u2928","&nesim;":"\u2242\u0338","&nexist;":"\u2204","&nexists;":"\u2204","&nfr;":"\u{1D52B}","&ngE;":"\u2267\u0338","&nge;":"\u2271","&ngeq;":"\u2271","&ngeqq;":"\u2267\u0338","&ngeqslant;":"\u2A7E\u0338","&nges;":"\u2A7E\u0338","&ngsim;":"\u2275","&ngt;":"\u226F","&ngtr;":"\u226F","&nhArr;":"\u21CE","&nharr;":"\u21AE","&nhpar;":"\u2AF2","&ni;":"\u220B","&nis;":"\u22FC","&nisd;":"\u22FA","&niv;":"\u220B","&njcy;":"\u045A","&nlArr;":"\u21CD","&nlE;":"\u2266\u0338","&nlarr;":"\u219A","&nldr;":"\u2025","&nle;":"\u2270","&nleftarrow;":"\u219A","&nleftrightarrow;":"\u21AE","&nleq;":"\u2270","&nleqq;":"\u2266\u0338","&nleqslant;":"\u2A7D\u0338","&nles;":"\u2A7D\u0338","&nless;":"\u226E","&nlsim;":"\u2274","&nlt;":"\u226E","&nltri;":"\u22EA","&nltrie;":"\u22EC","&nmid;":"\u2224","&nopf;":"\u{1D55F}","&not":"\xAC","&not;":"\xAC","&notin;":"\u2209","&notinE;":"\u22F9\u0338","&notindot;":"\u22F5\u0338","&notinva;":"\u2209","&notinvb;":"\u22F7","&notinvc;":"\u22F6","&notni;":"\u220C","&notniva;":"\u220C","&notnivb;":"\u22FE","&notnivc;":"\u22FD","&npar;":"\u2226","&nparallel;":"\u2226","&nparsl;":"\u2AFD\u20E5","&npart;":"\u2202\u0338","&npolint;":"\u2A14","&npr;":"\u2280","&nprcue;":"\u22E0","&npre;":"\u2AAF\u0338","&nprec;":"\u2280","&npreceq;":"\u2AAF\u0338","&nrArr;":"\u21CF","&nrarr;":"\u219B","&nrarrc;":"\u2933\u0338","&nrarrw;":"\u219D\u0338","&nrightarrow;":"\u219B","&nrtri;":"\u22EB","&nrtrie;":"\u22ED","&nsc;":"\u2281","&nsccue;":"\u22E1","&nsce;":"\u2AB0\u0338","&nscr;":"\u{1D4C3}","&nshortmid;":"\u2224","&nshortparallel;":"\u2226","&nsim;":"\u2241","&nsime;":"\u2244","&nsimeq;":"\u2244","&nsmid;":"\u2224","&nspar;":"\u2226","&nsqsube;":"\u22E2","&nsqsupe;":"\u22E3","&nsub;":"\u2284","&nsubE;":"\u2AC5\u0338","&nsube;":"\u2288","&nsubset;":"\u2282\u20D2","&nsubseteq;":"\u2288","&nsubseteqq;":"\u2AC5\u0338","&nsucc;":"\u2281","&nsucceq;":"\u2AB0\u0338","&nsup;":"\u2285","&nsupE;":"\u2AC6\u0338","&nsupe;":"\u2289","&nsupset;":"\u2283\u20D2","&nsupseteq;":"\u2289","&nsupseteqq;":"\u2AC6\u0338","&ntgl;":"\u2279","&ntilde":"\xF1","&ntilde;":"\xF1","&ntlg;":"\u2278","&ntriangleleft;":"\u22EA","&ntrianglelefteq;":"\u22EC","&ntriangleright;":"\u22EB","&ntrianglerighteq;":"\u22ED","&nu;":"\u03BD","&num;":"#","&numero;":"\u2116","&numsp;":"\u2007","&nvDash;":"\u22AD","&nvHarr;":"\u2904","&nvap;":"\u224D\u20D2","&nvdash;":"\u22AC","&nvge;":"\u2265\u20D2","&nvgt;":">\u20D2","&nvinfin;":"\u29DE","&nvlArr;":"\u2902","&nvle;":"\u2264\u20D2","&nvlt;":"<\u20D2","&nvltrie;":"\u22B4\u20D2","&nvrArr;":"\u2903","&nvrtrie;":"\u22B5\u20D2","&nvsim;":"\u223C\u20D2","&nwArr;":"\u21D6","&nwarhk;":"\u2923","&nwarr;":"\u2196","&nwarrow;":"\u2196","&nwnear;":"\u2927","&oS;":"\u24C8","&oacute":"\xF3","&oacute;":"\xF3","&oast;":"\u229B","&ocir;":"\u229A","&ocirc":"\xF4","&ocirc;":"\xF4","&ocy;":"\u043E","&odash;":"\u229D","&odblac;":"\u0151","&odiv;":"\u2A38","&odot;":"\u2299","&odsold;":"\u29BC","&oelig;":"\u0153","&ofcir;":"\u29BF","&ofr;":"\u{1D52C}","&ogon;":"\u02DB","&ograve":"\xF2","&ograve;":"\xF2","&ogt;":"\u29C1","&ohbar;":"\u29B5","&ohm;":"\u03A9","&oint;":"\u222E","&olarr;":"\u21BA","&olcir;":"\u29BE","&olcross;":"\u29BB","&oline;":"\u203E","&olt;":"\u29C0","&omacr;":"\u014D","&omega;":"\u03C9","&omicron;":"\u03BF","&omid;":"\u29B6","&ominus;":"\u2296","&oopf;":"\u{1D560}","&opar;":"\u29B7","&operp;":"\u29B9","&oplus;":"\u2295","&or;":"\u2228","&orarr;":"\u21BB","&ord;":"\u2A5D","&order;":"\u2134","&orderof;":"\u2134","&ordf":"\xAA","&ordf;":"\xAA","&ordm":"\xBA","&ordm;":"\xBA","&origof;":"\u22B6","&oror;":"\u2A56","&orslope;":"\u2A57","&orv;":"\u2A5B","&oscr;":"\u2134","&oslash":"\xF8","&oslash;":"\xF8","&osol;":"\u2298","&otilde":"\xF5","&otilde;":"\xF5","&otimes;":"\u2297","&otimesas;":"\u2A36","&ouml":"\xF6","&ouml;":"\xF6","&ovbar;":"\u233D","&par;":"\u2225","&para":"\xB6","&para;":"\xB6","&parallel;":"\u2225","&parsim;":"\u2AF3","&parsl;":"\u2AFD","&part;":"\u2202","&pcy;":"\u043F","&percnt;":"%","&period;":".","&permil;":"\u2030","&perp;":"\u22A5","&pertenk;":"\u2031","&pfr;":"\u{1D52D}","&phi;":"\u03C6","&phiv;":"\u03D5","&phmmat;":"\u2133","&phone;":"\u260E","&pi;":"\u03C0","&pitchfork;":"\u22D4","&piv;":"\u03D6","&planck;":"\u210F","&planckh;":"\u210E","&plankv;":"\u210F","&plus;":"+","&plusacir;":"\u2A23","&plusb;":"\u229E","&pluscir;":"\u2A22","&plusdo;":"\u2214","&plusdu;":"\u2A25","&pluse;":"\u2A72","&plusmn":"\xB1","&plusmn;":"\xB1","&plussim;":"\u2A26","&plustwo;":"\u2A27","&pm;":"\xB1","&pointint;":"\u2A15","&popf;":"\u{1D561}","&pound":"\xA3","&pound;":"\xA3","&pr;":"\u227A","&prE;":"\u2AB3","&prap;":"\u2AB7","&prcue;":"\u227C","&pre;":"\u2AAF","&prec;":"\u227A","&precapprox;":"\u2AB7","&preccurlyeq;":"\u227C","&preceq;":"\u2AAF","&precnapprox;":"\u2AB9","&precneqq;":"\u2AB5","&precnsim;":"\u22E8","&precsim;":"\u227E","&prime;":"\u2032","&primes;":"\u2119","&prnE;":"\u2AB5","&prnap;":"\u2AB9","&prnsim;":"\u22E8","&prod;":"\u220F","&profalar;":"\u232E","&profline;":"\u2312","&profsurf;":"\u2313","&prop;":"\u221D","&propto;":"\u221D","&prsim;":"\u227E","&prurel;":"\u22B0","&pscr;":"\u{1D4C5}","&psi;":"\u03C8","&puncsp;":"\u2008","&qfr;":"\u{1D52E}","&qint;":"\u2A0C","&qopf;":"\u{1D562}","&qprime;":"\u2057","&qscr;":"\u{1D4C6}","&quaternions;":"\u210D","&quatint;":"\u2A16","&quest;":"?","&questeq;":"\u225F","&quot":'"',"&quot;":'"',"&rAarr;":"\u21DB","&rArr;":"\u21D2","&rAtail;":"\u291C","&rBarr;":"\u290F","&rHar;":"\u2964","&race;":"\u223D\u0331","&racute;":"\u0155","&radic;":"\u221A","&raemptyv;":"\u29B3","&rang;":"\u27E9","&rangd;":"\u2992","&range;":"\u29A5","&rangle;":"\u27E9","&raquo":"\xBB","&raquo;":"\xBB","&rarr;":"\u2192","&rarrap;":"\u2975","&rarrb;":"\u21E5","&rarrbfs;":"\u2920","&rarrc;":"\u2933","&rarrfs;":"\u291E","&rarrhk;":"\u21AA","&rarrlp;":"\u21AC","&rarrpl;":"\u2945","&rarrsim;":"\u2974","&rarrtl;":"\u21A3","&rarrw;":"\u219D","&ratail;":"\u291A","&ratio;":"\u2236","&rationals;":"\u211A","&rbarr;":"\u290D","&rbbrk;":"\u2773","&rbrace;":"}","&rbrack;":"]","&rbrke;":"\u298C","&rbrksld;":"\u298E","&rbrkslu;":"\u2990","&rcaron;":"\u0159","&rcedil;":"\u0157","&rceil;":"\u2309","&rcub;":"}","&rcy;":"\u0440","&rdca;":"\u2937","&rdldhar;":"\u2969","&rdquo;":"\u201D","&rdquor;":"\u201D","&rdsh;":"\u21B3","&real;":"\u211C","&realine;":"\u211B","&realpart;":"\u211C","&reals;":"\u211D","&rect;":"\u25AD","&reg":"\xAE","&reg;":"\xAE","&rfisht;":"\u297D","&rfloor;":"\u230B","&rfr;":"\u{1D52F}","&rhard;":"\u21C1","&rharu;":"\u21C0","&rharul;":"\u296C","&rho;":"\u03C1","&rhov;":"\u03F1","&rightarrow;":"\u2192","&rightarrowtail;":"\u21A3","&rightharpoondown;":"\u21C1","&rightharpoonup;":"\u21C0","&rightleftarrows;":"\u21C4","&rightleftharpoons;":"\u21CC","&rightrightarrows;":"\u21C9","&rightsquigarrow;":"\u219D","&rightthreetimes;":"\u22CC","&ring;":"\u02DA","&risingdotseq;":"\u2253","&rlarr;":"\u21C4","&rlhar;":"\u21CC","&rlm;":"\u200F","&rmoust;":"\u23B1","&rmoustache;":"\u23B1","&rnmid;":"\u2AEE","&roang;":"\u27ED","&roarr;":"\u21FE","&robrk;":"\u27E7","&ropar;":"\u2986","&ropf;":"\u{1D563}","&roplus;":"\u2A2E","&rotimes;":"\u2A35","&rpar;":")","&rpargt;":"\u2994","&rppolint;":"\u2A12","&rrarr;":"\u21C9","&rsaquo;":"\u203A","&rscr;":"\u{1D4C7}","&rsh;":"\u21B1","&rsqb;":"]","&rsquo;":"\u2019","&rsquor;":"\u2019","&rthree;":"\u22CC","&rtimes;":"\u22CA","&rtri;":"\u25B9","&rtrie;":"\u22B5","&rtrif;":"\u25B8","&rtriltri;":"\u29CE","&ruluhar;":"\u2968","&rx;":"\u211E","&sacute;":"\u015B","&sbquo;":"\u201A","&sc;":"\u227B","&scE;":"\u2AB4","&scap;":"\u2AB8","&scaron;":"\u0161","&sccue;":"\u227D","&sce;":"\u2AB0","&scedil;":"\u015F","&scirc;":"\u015D","&scnE;":"\u2AB6","&scnap;":"\u2ABA","&scnsim;":"\u22E9","&scpolint;":"\u2A13","&scsim;":"\u227F","&scy;":"\u0441","&sdot;":"\u22C5","&sdotb;":"\u22A1","&sdote;":"\u2A66","&seArr;":"\u21D8","&searhk;":"\u2925","&searr;":"\u2198","&searrow;":"\u2198","&sect":"\xA7","&sect;":"\xA7","&semi;":";","&seswar;":"\u2929","&setminus;":"\u2216","&setmn;":"\u2216","&sext;":"\u2736","&sfr;":"\u{1D530}","&sfrown;":"\u2322","&sharp;":"\u266F","&shchcy;":"\u0449","&shcy;":"\u0448","&shortmid;":"\u2223","&shortparallel;":"\u2225","&shy":"\xAD","&shy;":"\xAD","&sigma;":"\u03C3","&sigmaf;":"\u03C2","&sigmav;":"\u03C2","&sim;":"\u223C","&simdot;":"\u2A6A","&sime;":"\u2243","&simeq;":"\u2243","&simg;":"\u2A9E","&simgE;":"\u2AA0","&siml;":"\u2A9D","&simlE;":"\u2A9F","&simne;":"\u2246","&simplus;":"\u2A24","&simrarr;":"\u2972","&slarr;":"\u2190","&smallsetminus;":"\u2216","&smashp;":"\u2A33","&smeparsl;":"\u29E4","&smid;":"\u2223","&smile;":"\u2323","&smt;":"\u2AAA","&smte;":"\u2AAC","&smtes;":"\u2AAC\uFE00","&softcy;":"\u044C","&sol;":"/","&solb;":"\u29C4","&solbar;":"\u233F","&sopf;":"\u{1D564}","&spades;":"\u2660","&spadesuit;":"\u2660","&spar;":"\u2225","&sqcap;":"\u2293","&sqcaps;":"\u2293\uFE00","&sqcup;":"\u2294","&sqcups;":"\u2294\uFE00","&sqsub;":"\u228F","&sqsube;":"\u2291","&sqsubset;":"\u228F","&sqsubseteq;":"\u2291","&sqsup;":"\u2290","&sqsupe;":"\u2292","&sqsupset;":"\u2290","&sqsupseteq;":"\u2292","&squ;":"\u25A1","&square;":"\u25A1","&squarf;":"\u25AA","&squf;":"\u25AA","&srarr;":"\u2192","&sscr;":"\u{1D4C8}","&ssetmn;":"\u2216","&ssmile;":"\u2323","&sstarf;":"\u22C6","&star;":"\u2606","&starf;":"\u2605","&straightepsilon;":"\u03F5","&straightphi;":"\u03D5","&strns;":"\xAF","&sub;":"\u2282","&subE;":"\u2AC5","&subdot;":"\u2ABD","&sube;":"\u2286","&subedot;":"\u2AC3","&submult;":"\u2AC1","&subnE;":"\u2ACB","&subne;":"\u228A","&subplus;":"\u2ABF","&subrarr;":"\u2979","&subset;":"\u2282","&subseteq;":"\u2286","&subseteqq;":"\u2AC5","&subsetneq;":"\u228A","&subsetneqq;":"\u2ACB","&subsim;":"\u2AC7","&subsub;":"\u2AD5","&subsup;":"\u2AD3","&succ;":"\u227B","&succapprox;":"\u2AB8","&succcurlyeq;":"\u227D","&succeq;":"\u2AB0","&succnapprox;":"\u2ABA","&succneqq;":"\u2AB6","&succnsim;":"\u22E9","&succsim;":"\u227F","&sum;":"\u2211","&sung;":"\u266A","&sup1":"\xB9","&sup1;":"\xB9","&sup2":"\xB2","&sup2;":"\xB2","&sup3":"\xB3","&sup3;":"\xB3","&sup;":"\u2283","&supE;":"\u2AC6","&supdot;":"\u2ABE","&supdsub;":"\u2AD8","&supe;":"\u2287","&supedot;":"\u2AC4","&suphsol;":"\u27C9","&suphsub;":"\u2AD7","&suplarr;":"\u297B","&supmult;":"\u2AC2","&supnE;":"\u2ACC","&supne;":"\u228B","&supplus;":"\u2AC0","&supset;":"\u2283","&supseteq;":"\u2287","&supseteqq;":"\u2AC6","&supsetneq;":"\u228B","&supsetneqq;":"\u2ACC","&supsim;":"\u2AC8","&supsub;":"\u2AD4","&supsup;":"\u2AD6","&swArr;":"\u21D9","&swarhk;":"\u2926","&swarr;":"\u2199","&swarrow;":"\u2199","&swnwar;":"\u292A","&szlig":"\xDF","&szlig;":"\xDF","&target;":"\u2316","&tau;":"\u03C4","&tbrk;":"\u23B4","&tcaron;":"\u0165","&tcedil;":"\u0163","&tcy;":"\u0442","&tdot;":"\u20DB","&telrec;":"\u2315","&tfr;":"\u{1D531}","&there4;":"\u2234","&therefore;":"\u2234","&theta;":"\u03B8","&thetasym;":"\u03D1","&thetav;":"\u03D1","&thickapprox;":"\u2248","&thicksim;":"\u223C","&thinsp;":"\u2009","&thkap;":"\u2248","&thksim;":"\u223C","&thorn":"\xFE","&thorn;":"\xFE","&tilde;":"\u02DC","&times":"\xD7","&times;":"\xD7","&timesb;":"\u22A0","&timesbar;":"\u2A31","&timesd;":"\u2A30","&tint;":"\u222D","&toea;":"\u2928","&top;":"\u22A4","&topbot;":"\u2336","&topcir;":"\u2AF1","&topf;":"\u{1D565}","&topfork;":"\u2ADA","&tosa;":"\u2929","&tprime;":"\u2034","&trade;":"\u2122","&triangle;":"\u25B5","&triangledown;":"\u25BF","&triangleleft;":"\u25C3","&trianglelefteq;":"\u22B4","&triangleq;":"\u225C","&triangleright;":"\u25B9","&trianglerighteq;":"\u22B5","&tridot;":"\u25EC","&trie;":"\u225C","&triminus;":"\u2A3A","&triplus;":"\u2A39","&trisb;":"\u29CD","&tritime;":"\u2A3B","&trpezium;":"\u23E2","&tscr;":"\u{1D4C9}","&tscy;":"\u0446","&tshcy;":"\u045B","&tstrok;":"\u0167","&twixt;":"\u226C","&twoheadleftarrow;":"\u219E","&twoheadrightarrow;":"\u21A0","&uArr;":"\u21D1","&uHar;":"\u2963","&uacute":"\xFA","&uacute;":"\xFA","&uarr;":"\u2191","&ubrcy;":"\u045E","&ubreve;":"\u016D","&ucirc":"\xFB","&ucirc;":"\xFB","&ucy;":"\u0443","&udarr;":"\u21C5","&udblac;":"\u0171","&udhar;":"\u296E","&ufisht;":"\u297E","&ufr;":"\u{1D532}","&ugrave":"\xF9","&ugrave;":"\xF9","&uharl;":"\u21BF","&uharr;":"\u21BE","&uhblk;":"\u2580","&ulcorn;":"\u231C","&ulcorner;":"\u231C","&ulcrop;":"\u230F","&ultri;":"\u25F8","&umacr;":"\u016B","&uml":"\xA8","&uml;":"\xA8","&uogon;":"\u0173","&uopf;":"\u{1D566}","&uparrow;":"\u2191","&updownarrow;":"\u2195","&upharpoonleft;":"\u21BF","&upharpoonright;":"\u21BE","&uplus;":"\u228E","&upsi;":"\u03C5","&upsih;":"\u03D2","&upsilon;":"\u03C5","&upuparrows;":"\u21C8","&urcorn;":"\u231D","&urcorner;":"\u231D","&urcrop;":"\u230E","&uring;":"\u016F","&urtri;":"\u25F9","&uscr;":"\u{1D4CA}","&utdot;":"\u22F0","&utilde;":"\u0169","&utri;":"\u25B5","&utrif;":"\u25B4","&uuarr;":"\u21C8","&uuml":"\xFC","&uuml;":"\xFC","&uwangle;":"\u29A7","&vArr;":"\u21D5","&vBar;":"\u2AE8","&vBarv;":"\u2AE9","&vDash;":"\u22A8","&vangrt;":"\u299C","&varepsilon;":"\u03F5","&varkappa;":"\u03F0","&varnothing;":"\u2205","&varphi;":"\u03D5","&varpi;":"\u03D6","&varpropto;":"\u221D","&varr;":"\u2195","&varrho;":"\u03F1","&varsigma;":"\u03C2","&varsubsetneq;":"\u228A\uFE00","&varsubsetneqq;":"\u2ACB\uFE00","&varsupsetneq;":"\u228B\uFE00","&varsupsetneqq;":"\u2ACC\uFE00","&vartheta;":"\u03D1","&vartriangleleft;":"\u22B2","&vartriangleright;":"\u22B3","&vcy;":"\u0432","&vdash;":"\u22A2","&vee;":"\u2228","&veebar;":"\u22BB","&veeeq;":"\u225A","&vellip;":"\u22EE","&verbar;":"|","&vert;":"|","&vfr;":"\u{1D533}","&vltri;":"\u22B2","&vnsub;":"\u2282\u20D2","&vnsup;":"\u2283\u20D2","&vopf;":"\u{1D567}","&vprop;":"\u221D","&vrtri;":"\u22B3","&vscr;":"\u{1D4CB}","&vsubnE;":"\u2ACB\uFE00","&vsubne;":"\u228A\uFE00","&vsupnE;":"\u2ACC\uFE00","&vsupne;":"\u228B\uFE00","&vzigzag;":"\u299A","&wcirc;":"\u0175","&wedbar;":"\u2A5F","&wedge;":"\u2227","&wedgeq;":"\u2259","&weierp;":"\u2118","&wfr;":"\u{1D534}","&wopf;":"\u{1D568}","&wp;":"\u2118","&wr;":"\u2240","&wreath;":"\u2240","&wscr;":"\u{1D4CC}","&xcap;":"\u22C2","&xcirc;":"\u25EF","&xcup;":"\u22C3","&xdtri;":"\u25BD","&xfr;":"\u{1D535}","&xhArr;":"\u27FA","&xharr;":"\u27F7","&xi;":"\u03BE","&xlArr;":"\u27F8","&xlarr;":"\u27F5","&xmap;":"\u27FC","&xnis;":"\u22FB","&xodot;":"\u2A00","&xopf;":"\u{1D569}","&xoplus;":"\u2A01","&xotime;":"\u2A02","&xrArr;":"\u27F9","&xrarr;":"\u27F6","&xscr;":"\u{1D4CD}","&xsqcup;":"\u2A06","&xuplus;":"\u2A04","&xutri;":"\u25B3","&xvee;":"\u22C1","&xwedge;":"\u22C0","&yacute":"\xFD","&yacute;":"\xFD","&yacy;":"\u044F","&ycirc;":"\u0177","&ycy;":"\u044B","&yen":"\xA5","&yen;":"\xA5","&yfr;":"\u{1D536}","&yicy;":"\u0457","&yopf;":"\u{1D56A}","&yscr;":"\u{1D4CE}","&yucy;":"\u044E","&yuml":"\xFF","&yuml;":"\xFF","&zacute;":"\u017A","&zcaron;":"\u017E","&zcy;":"\u0437","&zdot;":"\u017C","&zeetrf;":"\u2128","&zeta;":"\u03B6","&zfr;":"\u{1D537}","&zhcy;":"\u0436","&zigrarr;":"\u21DD","&zopf;":"\u{1D56B}","&zscr;":"\u{1D4CF}","&zwj;":"\u200D","&zwnj;":"\u200C"},Au=q2;function R2(e){return e.replace(/&(#\d+|#x[a-f0-9]+|[a-z]+\d*);?/gi,(t,r)=>{if(typeof Au[t]=="string")return Au[t];if(r.charAt(0)!=="#"||t.charAt(t.length-1)!==";")return t;let i;r.charAt(1)==="x"?i=parseInt(r.substr(2),16):i=parseInt(r.substr(1),10);let n="";return i>=55296&&i<=57343||i>1114111?"\uFFFD":(i>65535&&(i-=65536,n+=String.fromCharCode(i>>>10&1023|55296),i=56320|i&1023),n+=String.fromCharCode(i),n)})}function Jt(e){return e.trim().replace(/[<>"'?&]/g,t=>{let r=t.charCodeAt(0).toString(16);return r.length<2&&(r="0"+r),"&#x"+r.toUpperCase()+";"})}function wd(e){return"<div>"+Jt(e).replace(/\n/g,"<br />")+"</div>"}function xd(e){return e=e.replace(/\r?\n/g,"").replace(/<\!\-\-.*?\-\->/gi," ").replace(/<br\b[^>]*>/gi,`
156
+ `}}}}).prompt();var ar=pe(et(),1);ht();process.env.RESEND_USER_AGENT=`resend-cli:${te}`;var nt=new TextEncoder,vo="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Xt=new Uint8Array(256);for(let t=0;t<vo.length;t++)Xt[vo.charCodeAt(t)]=t;function Er(t){let e=Math.ceil(t.length/4)*3,r=t.length,n=0;t.length%4===3?e--:t.length%4===2?e-=2:t[t.length-1]==="="&&(e--,t[t.length-2]==="="&&e--);let i=new ArrayBuffer(e),o=new Uint8Array(i);for(let s=0;s<r;s+=4){let a=Xt[t.charCodeAt(s)],l=Xt[t.charCodeAt(s+1)],d=Xt[t.charCodeAt(s+2)],c=Xt[t.charCodeAt(s+3)];o[n++]=a<<2|l>>4,o[n++]=(l&15)<<4|d>>2,o[n++]=(d&3)<<6|c&63}return i}function kt(t){t=t||"utf8";let e;try{e=new TextDecoder(t)}catch{e=new TextDecoder("windows-1252")}return e}async function it(t){if("arrayBuffer"in t)return await t.arrayBuffer();let e=new FileReader;return new Promise((r,n)=>{e.onload=function(i){r(i.target.result)},e.onerror=function(i){n(e.error)},e.readAsArrayBuffer(t)})}function Co(t){return t>=48&&t<=57||t>=97&&t<=102||t>=65&&t<=70?String.fromCharCode(t):!1}function ed(t,e,r){let n=t.indexOf("*");n>=0&&(t=t.substr(0,n)),e=e.toUpperCase();let i;if(e==="Q"){r=r.replace(/=\s+([0-9a-fA-F])/g,"=$1").replace(/[_\s]/g," ");let o=nt.encode(r),s=[];for(let l=0,d=o.length;l<d;l++){let c=o[l];if(l<=d-2&&c===61){let u=Co(o[l+1]),m=Co(o[l+2]);if(u&&m){let y=parseInt(u+m,16);s.push(y),l+=2;continue}}s.push(c)}i=new ArrayBuffer(s.length);let a=new DataView(i);for(let l=0,d=s.length;l<d;l++)a.setUint8(l,s[l])}else e==="B"?i=Er(r.replace(/[^a-zA-Z0-9\+\/=]+/g,"")):i=nt.encode(r);return kt(t).decode(i)}function gt(t){let e=!0,r=!1;for(;!r;){let n=(t||"").toString().replace(/(=\?([^?]+)\?[Bb]\?([^?]*)\?=)\s*(?==\?([^?]+)\?[Bb]\?[^?]*\?=)/g,(i,o,s,a,l)=>e&&s===l&&a.length%4===0&&!/=$/.test(a)?o+"__\0JOIN\0__":i).replace(/(=\?([^?]+)\?[Qq]\?[^?]*\?=)\s*(?==\?([^?]+)\?[Qq]\?[^?]*\?=)/g,(i,o,s,a)=>e&&s===a?o+"__\0JOIN\0__":i).replace(/(\?=)?__\x00JOIN\x00__(=\?([^?]+)\?[QqBb]\?)?/g,"").replace(/(=\?[^?]+\?[QqBb]\?[^?]*\?=)\s+(?==\?[^?]+\?[QqBb]\?[^?]*\?=)/g,"$1").replace(/=\?([\w_\-*]+)\?([QqBb])\?([^?]*)\?=/g,(i,o,s,a)=>ed(o,s,a));if(e&&n.indexOf("\uFFFD")>=0)e=!1;else return n}}function td(t,e){e=e||"utf-8";let r=[];for(let o=0;o<t.length;o++){let s=t.charAt(o);if(s==="%"&&/^[a-f0-9]{2}/i.test(t.substr(o+1,2))){let a=t.substr(o+1,2);o+=2,r.push(parseInt(a,16))}else if(s.charCodeAt(0)>126){s=nt.encode(s);for(let a=0;a<s.length;a++)r.push(s[a])}else r.push(s.charCodeAt(0))}let n=new ArrayBuffer(r.length),i=new DataView(n);for(let o=0,s=r.length;o<s;o++)i.setUint8(o,r[o]);return kt(e).decode(n)}function wo(t){let e=new Map;Object.keys(t.params).forEach(r=>{let n=r.match(/\*((\d+)\*?)?$/);if(!n)return;let i=r.substr(0,n.index).toLowerCase(),o=Number(n[2])||0,s;e.has(i)?s=e.get(i):(s={charset:!1,values:[]},e.set(i,s));let a=t.params[r];o===0&&n[0].charAt(n[0].length-1)==="*"&&(n=a.match(/^([^']*)'[^']*'(.*)$/))&&(s.charset=n[1]||"utf-8",a=n[2]),s.values.push({nr:o,value:a}),delete t.params[r]}),e.forEach((r,n)=>{t.params[n]=td(r.values.sort((i,o)=>i.nr-o.nr).map(i=>i.value).join(""),r.charset)})}var Zt=class{constructor(){this.chunks=[]}update(e){this.chunks.push(e),this.chunks.push(`
157
+ `)}finalize(){return it(new Blob(this.chunks,{type:"application/octet-stream"}))}};var er=class{constructor(e){e=e||{},this.decoder=e.decoder||new TextDecoder,this.maxChunkSize=100*1024,this.chunks=[],this.remainder=""}update(e){let r=this.decoder.decode(e);if(r=r.replace(/[^a-zA-Z0-9+\/]+/g,""),this.remainder+=r,this.remainder.length>=this.maxChunkSize){let n=Math.floor(this.remainder.length/4)*4,i;n===this.remainder.length?(i=this.remainder,this.remainder=""):(i=this.remainder.substr(0,n),this.remainder=this.remainder.substr(n)),i.length&&this.chunks.push(Er(i))}}finalize(){return this.remainder&&!/^=+$/.test(this.remainder)&&this.chunks.push(Er(this.remainder)),it(new Blob(this.chunks,{type:"application/octet-stream"}))}};var _o=/^=[a-f0-9]{2}$/i,rd=/(?==[a-f0-9]{2})/i,nd=/=\r?\n/g,id=/=[a-fA-F0-9]?$/,tr=class{constructor(e){e=e||{},this.decoder=e.decoder||new TextDecoder,this.maxChunkSize=100*1024,this.remainder="",this.chunks=[]}decodeQPBytes(e){let r=new ArrayBuffer(e.length),n=new DataView(r);for(let i=0,o=e.length;i<o;i++)n.setUint8(i,parseInt(e[i],16));return r}decodeChunks(e){e=e.replace(nd,"");let r=e.split(rd),n=[];for(let i of r){if(i.charAt(0)!=="="){n.length&&(this.chunks.push(this.decodeQPBytes(n)),n=[]),this.chunks.push(i);continue}if(i.length===3){_o.test(i)?n.push(i.substr(1)):(n.length&&(this.chunks.push(this.decodeQPBytes(n)),n=[]),this.chunks.push(i));continue}if(i.length>3){let o=i.substr(0,3);_o.test(o)?(n.push(i.substr(1,2)),this.chunks.push(this.decodeQPBytes(n)),n=[],i=i.substr(3),this.chunks.push(i)):(n.length&&(this.chunks.push(this.decodeQPBytes(n)),n=[]),this.chunks.push(i))}}n.length&&this.chunks.push(this.decodeQPBytes(n))}update(e){let r=this.decoder.decode(e)+`
158
+ `;if(r=this.remainder+r,r.length<this.maxChunkSize){this.remainder=r;return}this.remainder="";let n=r.match(id);if(n){if(n.index===0){this.remainder=r;return}this.remainder=r.substr(n.index),r=r.substr(0,n.index)}this.decodeChunks(r)}finalize(){return this.remainder.length&&(this.decodeChunks(this.remainder),this.remainder=""),it(new Blob(this.chunks,{type:"application/octet-stream"}))}};var od=kt(),$t=class{constructor(e){if(this.options=e||{},this.postalMime=this.options.postalMime,this.root=!!this.options.parentNode,this.childNodes=[],this.options.parentNode){if(this.parentNode=this.options.parentNode,this.depth=this.parentNode.depth+1,this.depth>this.options.maxNestingDepth)throw new Error(`Maximum MIME nesting depth of ${this.options.maxNestingDepth} levels exceeded`);this.options.parentNode.childNodes.push(this)}else this.depth=0;this.state="header",this.headerLines=[],this.headerSize=0;let n=(this.options.parentMultipartType||null)==="digest"?"message/rfc822":"text/plain";this.contentType={value:n,default:!0},this.contentTransferEncoding={value:"8bit"},this.contentDisposition={value:""},this.headers=[],this.contentDecoder=!1}setupContentDecoder(e){/base64/i.test(e)?this.contentDecoder=new er:/quoted-printable/i.test(e)?this.contentDecoder=new tr({decoder:kt(this.contentType.parsed.params.charset)}):this.contentDecoder=new Zt}async finalize(){if(this.state==="finished")return;this.state==="header"&&this.processHeaders();let e=this.postalMime.boundaries;for(let r=e.length-1;r>=0;r--)if(e[r].node===this){e.splice(r,1);break}await this.finalizeChildNodes(),this.content=this.contentDecoder?await this.contentDecoder.finalize():null,this.state="finished"}async finalizeChildNodes(){for(let e of this.childNodes)await e.finalize()}stripComments(e){let r="",n=0,i=!1,o=!1;for(let s=0;s<e.length;s++){let a=e.charAt(s);if(i){n===0&&(r+=a),i=!1;continue}if(a==="\\"){i=!0,n===0&&(r+=a);continue}if(a==='"'&&n===0){o=!o,r+=a;continue}if(!o){if(a==="("){n++;continue}if(a===")"&&n>0){n--;continue}}n===0&&(r+=a)}return r}parseStructuredHeader(e){e=this.stripComments(e);let r={value:!1,params:{}},n=!1,i="",o="value",s=!1,a=!1,l;for(let d=0,c=e.length;d<c;d++)switch(l=e.charAt(d),o){case"key":if(l==="="){n=i.trim().toLowerCase(),o="value",i="";break}i+=l;break;case"value":if(a)i+=l;else if(l==="\\"){a=!0;continue}else s&&l===s?s=!1:!s&&l==='"'?s=l:!s&&l===";"?(n===!1?r.value=i.trim():r.params[n]=i.trim(),o="key",i=""):i+=l;a=!1;break}return i=i.trim(),o==="value"?n===!1?r.value=i:r.params[n]=i:i&&(r.params[i.toLowerCase()]=""),r.value&&(r.value=r.value.toLowerCase()),wo(r),r}decodeFlowedText(e,r){return e.split(/\r?\n/).reduce((n,i)=>n.endsWith(" ")&&n!=="-- "&&!n.endsWith(`
159
+ -- `)?r?n.slice(0,-1)+i:n+i:n+`
160
+ `+i).replace(/^ /gm,"")}getTextContent(){if(!this.content)return"";let e=kt(this.contentType.parsed.params.charset).decode(this.content);return/^flowed$/i.test(this.contentType.parsed.params.format)&&(e=this.decodeFlowedText(e,/^yes$/i.test(this.contentType.parsed.params.delsp))),e}processHeaders(){for(let e=this.headerLines.length-1;e>=0;e--){let r=this.headerLines[e];e&&/^\s/.test(r)&&(this.headerLines[e-1]+=`
161
+ `+r,this.headerLines.splice(e,1))}this.rawHeaderLines=[];for(let e=this.headerLines.length-1;e>=0;e--){let r=this.headerLines[e],n=r.indexOf(":"),i=n<0?r.trim():r.substr(0,n).trim();this.rawHeaderLines.push({key:i.toLowerCase(),line:r});let o=r.replace(/\s+/g," ");n=o.indexOf(":");let s=n<0?o.trim():o.substr(0,n).trim(),a=n<0?"":o.substr(n+1).trim();switch(this.headers.push({key:s.toLowerCase(),originalKey:s,value:a}),s.toLowerCase()){case"content-type":this.contentType.default&&(this.contentType={value:a,parsed:{}});break;case"content-transfer-encoding":this.contentTransferEncoding={value:a,parsed:{}};break;case"content-disposition":this.contentDisposition={value:a,parsed:{}};break;case"content-id":this.contentId=a;break;case"content-description":this.contentDescription=a;break}}this.contentType.parsed=this.parseStructuredHeader(this.contentType.value),this.contentType.multipart=/^multipart\//i.test(this.contentType.parsed.value)?this.contentType.parsed.value.substr(this.contentType.parsed.value.indexOf("/")+1):!1,this.contentType.multipart&&this.contentType.parsed.params.boundary&&this.postalMime.boundaries.push({value:nt.encode(this.contentType.parsed.params.boundary),node:this}),this.contentDisposition.parsed=this.parseStructuredHeader(this.contentDisposition.value),this.contentTransferEncoding.encoding=this.contentTransferEncoding.value.toLowerCase().split(/[^\w-]/).shift(),this.setupContentDecoder(this.contentTransferEncoding.encoding)}feed(e){switch(this.state){case"header":if(!e.length)return this.state="body",this.processHeaders();if(this.headerSize+=e.length,this.headerSize>this.options.maxHeadersSize)throw new Error(`Maximum header size of ${this.options.maxHeadersSize} bytes exceeded`);this.headerLines.push(od.decode(e));break;case"body":this.contentDecoder.update(e)}}};var sd={"&AElig":"\xC6","&AElig;":"\xC6","&AMP":"&","&AMP;":"&","&Aacute":"\xC1","&Aacute;":"\xC1","&Abreve;":"\u0102","&Acirc":"\xC2","&Acirc;":"\xC2","&Acy;":"\u0410","&Afr;":"\u{1D504}","&Agrave":"\xC0","&Agrave;":"\xC0","&Alpha;":"\u0391","&Amacr;":"\u0100","&And;":"\u2A53","&Aogon;":"\u0104","&Aopf;":"\u{1D538}","&ApplyFunction;":"\u2061","&Aring":"\xC5","&Aring;":"\xC5","&Ascr;":"\u{1D49C}","&Assign;":"\u2254","&Atilde":"\xC3","&Atilde;":"\xC3","&Auml":"\xC4","&Auml;":"\xC4","&Backslash;":"\u2216","&Barv;":"\u2AE7","&Barwed;":"\u2306","&Bcy;":"\u0411","&Because;":"\u2235","&Bernoullis;":"\u212C","&Beta;":"\u0392","&Bfr;":"\u{1D505}","&Bopf;":"\u{1D539}","&Breve;":"\u02D8","&Bscr;":"\u212C","&Bumpeq;":"\u224E","&CHcy;":"\u0427","&COPY":"\xA9","&COPY;":"\xA9","&Cacute;":"\u0106","&Cap;":"\u22D2","&CapitalDifferentialD;":"\u2145","&Cayleys;":"\u212D","&Ccaron;":"\u010C","&Ccedil":"\xC7","&Ccedil;":"\xC7","&Ccirc;":"\u0108","&Cconint;":"\u2230","&Cdot;":"\u010A","&Cedilla;":"\xB8","&CenterDot;":"\xB7","&Cfr;":"\u212D","&Chi;":"\u03A7","&CircleDot;":"\u2299","&CircleMinus;":"\u2296","&CirclePlus;":"\u2295","&CircleTimes;":"\u2297","&ClockwiseContourIntegral;":"\u2232","&CloseCurlyDoubleQuote;":"\u201D","&CloseCurlyQuote;":"\u2019","&Colon;":"\u2237","&Colone;":"\u2A74","&Congruent;":"\u2261","&Conint;":"\u222F","&ContourIntegral;":"\u222E","&Copf;":"\u2102","&Coproduct;":"\u2210","&CounterClockwiseContourIntegral;":"\u2233","&Cross;":"\u2A2F","&Cscr;":"\u{1D49E}","&Cup;":"\u22D3","&CupCap;":"\u224D","&DD;":"\u2145","&DDotrahd;":"\u2911","&DJcy;":"\u0402","&DScy;":"\u0405","&DZcy;":"\u040F","&Dagger;":"\u2021","&Darr;":"\u21A1","&Dashv;":"\u2AE4","&Dcaron;":"\u010E","&Dcy;":"\u0414","&Del;":"\u2207","&Delta;":"\u0394","&Dfr;":"\u{1D507}","&DiacriticalAcute;":"\xB4","&DiacriticalDot;":"\u02D9","&DiacriticalDoubleAcute;":"\u02DD","&DiacriticalGrave;":"`","&DiacriticalTilde;":"\u02DC","&Diamond;":"\u22C4","&DifferentialD;":"\u2146","&Dopf;":"\u{1D53B}","&Dot;":"\xA8","&DotDot;":"\u20DC","&DotEqual;":"\u2250","&DoubleContourIntegral;":"\u222F","&DoubleDot;":"\xA8","&DoubleDownArrow;":"\u21D3","&DoubleLeftArrow;":"\u21D0","&DoubleLeftRightArrow;":"\u21D4","&DoubleLeftTee;":"\u2AE4","&DoubleLongLeftArrow;":"\u27F8","&DoubleLongLeftRightArrow;":"\u27FA","&DoubleLongRightArrow;":"\u27F9","&DoubleRightArrow;":"\u21D2","&DoubleRightTee;":"\u22A8","&DoubleUpArrow;":"\u21D1","&DoubleUpDownArrow;":"\u21D5","&DoubleVerticalBar;":"\u2225","&DownArrow;":"\u2193","&DownArrowBar;":"\u2913","&DownArrowUpArrow;":"\u21F5","&DownBreve;":"\u0311","&DownLeftRightVector;":"\u2950","&DownLeftTeeVector;":"\u295E","&DownLeftVector;":"\u21BD","&DownLeftVectorBar;":"\u2956","&DownRightTeeVector;":"\u295F","&DownRightVector;":"\u21C1","&DownRightVectorBar;":"\u2957","&DownTee;":"\u22A4","&DownTeeArrow;":"\u21A7","&Downarrow;":"\u21D3","&Dscr;":"\u{1D49F}","&Dstrok;":"\u0110","&ENG;":"\u014A","&ETH":"\xD0","&ETH;":"\xD0","&Eacute":"\xC9","&Eacute;":"\xC9","&Ecaron;":"\u011A","&Ecirc":"\xCA","&Ecirc;":"\xCA","&Ecy;":"\u042D","&Edot;":"\u0116","&Efr;":"\u{1D508}","&Egrave":"\xC8","&Egrave;":"\xC8","&Element;":"\u2208","&Emacr;":"\u0112","&EmptySmallSquare;":"\u25FB","&EmptyVerySmallSquare;":"\u25AB","&Eogon;":"\u0118","&Eopf;":"\u{1D53C}","&Epsilon;":"\u0395","&Equal;":"\u2A75","&EqualTilde;":"\u2242","&Equilibrium;":"\u21CC","&Escr;":"\u2130","&Esim;":"\u2A73","&Eta;":"\u0397","&Euml":"\xCB","&Euml;":"\xCB","&Exists;":"\u2203","&ExponentialE;":"\u2147","&Fcy;":"\u0424","&Ffr;":"\u{1D509}","&FilledSmallSquare;":"\u25FC","&FilledVerySmallSquare;":"\u25AA","&Fopf;":"\u{1D53D}","&ForAll;":"\u2200","&Fouriertrf;":"\u2131","&Fscr;":"\u2131","&GJcy;":"\u0403","&GT":">","&GT;":">","&Gamma;":"\u0393","&Gammad;":"\u03DC","&Gbreve;":"\u011E","&Gcedil;":"\u0122","&Gcirc;":"\u011C","&Gcy;":"\u0413","&Gdot;":"\u0120","&Gfr;":"\u{1D50A}","&Gg;":"\u22D9","&Gopf;":"\u{1D53E}","&GreaterEqual;":"\u2265","&GreaterEqualLess;":"\u22DB","&GreaterFullEqual;":"\u2267","&GreaterGreater;":"\u2AA2","&GreaterLess;":"\u2277","&GreaterSlantEqual;":"\u2A7E","&GreaterTilde;":"\u2273","&Gscr;":"\u{1D4A2}","&Gt;":"\u226B","&HARDcy;":"\u042A","&Hacek;":"\u02C7","&Hat;":"^","&Hcirc;":"\u0124","&Hfr;":"\u210C","&HilbertSpace;":"\u210B","&Hopf;":"\u210D","&HorizontalLine;":"\u2500","&Hscr;":"\u210B","&Hstrok;":"\u0126","&HumpDownHump;":"\u224E","&HumpEqual;":"\u224F","&IEcy;":"\u0415","&IJlig;":"\u0132","&IOcy;":"\u0401","&Iacute":"\xCD","&Iacute;":"\xCD","&Icirc":"\xCE","&Icirc;":"\xCE","&Icy;":"\u0418","&Idot;":"\u0130","&Ifr;":"\u2111","&Igrave":"\xCC","&Igrave;":"\xCC","&Im;":"\u2111","&Imacr;":"\u012A","&ImaginaryI;":"\u2148","&Implies;":"\u21D2","&Int;":"\u222C","&Integral;":"\u222B","&Intersection;":"\u22C2","&InvisibleComma;":"\u2063","&InvisibleTimes;":"\u2062","&Iogon;":"\u012E","&Iopf;":"\u{1D540}","&Iota;":"\u0399","&Iscr;":"\u2110","&Itilde;":"\u0128","&Iukcy;":"\u0406","&Iuml":"\xCF","&Iuml;":"\xCF","&Jcirc;":"\u0134","&Jcy;":"\u0419","&Jfr;":"\u{1D50D}","&Jopf;":"\u{1D541}","&Jscr;":"\u{1D4A5}","&Jsercy;":"\u0408","&Jukcy;":"\u0404","&KHcy;":"\u0425","&KJcy;":"\u040C","&Kappa;":"\u039A","&Kcedil;":"\u0136","&Kcy;":"\u041A","&Kfr;":"\u{1D50E}","&Kopf;":"\u{1D542}","&Kscr;":"\u{1D4A6}","&LJcy;":"\u0409","&LT":"<","&LT;":"<","&Lacute;":"\u0139","&Lambda;":"\u039B","&Lang;":"\u27EA","&Laplacetrf;":"\u2112","&Larr;":"\u219E","&Lcaron;":"\u013D","&Lcedil;":"\u013B","&Lcy;":"\u041B","&LeftAngleBracket;":"\u27E8","&LeftArrow;":"\u2190","&LeftArrowBar;":"\u21E4","&LeftArrowRightArrow;":"\u21C6","&LeftCeiling;":"\u2308","&LeftDoubleBracket;":"\u27E6","&LeftDownTeeVector;":"\u2961","&LeftDownVector;":"\u21C3","&LeftDownVectorBar;":"\u2959","&LeftFloor;":"\u230A","&LeftRightArrow;":"\u2194","&LeftRightVector;":"\u294E","&LeftTee;":"\u22A3","&LeftTeeArrow;":"\u21A4","&LeftTeeVector;":"\u295A","&LeftTriangle;":"\u22B2","&LeftTriangleBar;":"\u29CF","&LeftTriangleEqual;":"\u22B4","&LeftUpDownVector;":"\u2951","&LeftUpTeeVector;":"\u2960","&LeftUpVector;":"\u21BF","&LeftUpVectorBar;":"\u2958","&LeftVector;":"\u21BC","&LeftVectorBar;":"\u2952","&Leftarrow;":"\u21D0","&Leftrightarrow;":"\u21D4","&LessEqualGreater;":"\u22DA","&LessFullEqual;":"\u2266","&LessGreater;":"\u2276","&LessLess;":"\u2AA1","&LessSlantEqual;":"\u2A7D","&LessTilde;":"\u2272","&Lfr;":"\u{1D50F}","&Ll;":"\u22D8","&Lleftarrow;":"\u21DA","&Lmidot;":"\u013F","&LongLeftArrow;":"\u27F5","&LongLeftRightArrow;":"\u27F7","&LongRightArrow;":"\u27F6","&Longleftarrow;":"\u27F8","&Longleftrightarrow;":"\u27FA","&Longrightarrow;":"\u27F9","&Lopf;":"\u{1D543}","&LowerLeftArrow;":"\u2199","&LowerRightArrow;":"\u2198","&Lscr;":"\u2112","&Lsh;":"\u21B0","&Lstrok;":"\u0141","&Lt;":"\u226A","&Map;":"\u2905","&Mcy;":"\u041C","&MediumSpace;":"\u205F","&Mellintrf;":"\u2133","&Mfr;":"\u{1D510}","&MinusPlus;":"\u2213","&Mopf;":"\u{1D544}","&Mscr;":"\u2133","&Mu;":"\u039C","&NJcy;":"\u040A","&Nacute;":"\u0143","&Ncaron;":"\u0147","&Ncedil;":"\u0145","&Ncy;":"\u041D","&NegativeMediumSpace;":"\u200B","&NegativeThickSpace;":"\u200B","&NegativeThinSpace;":"\u200B","&NegativeVeryThinSpace;":"\u200B","&NestedGreaterGreater;":"\u226B","&NestedLessLess;":"\u226A","&NewLine;":`
162
+ `,"&Nfr;":"\u{1D511}","&NoBreak;":"\u2060","&NonBreakingSpace;":"\xA0","&Nopf;":"\u2115","&Not;":"\u2AEC","&NotCongruent;":"\u2262","&NotCupCap;":"\u226D","&NotDoubleVerticalBar;":"\u2226","&NotElement;":"\u2209","&NotEqual;":"\u2260","&NotEqualTilde;":"\u2242\u0338","&NotExists;":"\u2204","&NotGreater;":"\u226F","&NotGreaterEqual;":"\u2271","&NotGreaterFullEqual;":"\u2267\u0338","&NotGreaterGreater;":"\u226B\u0338","&NotGreaterLess;":"\u2279","&NotGreaterSlantEqual;":"\u2A7E\u0338","&NotGreaterTilde;":"\u2275","&NotHumpDownHump;":"\u224E\u0338","&NotHumpEqual;":"\u224F\u0338","&NotLeftTriangle;":"\u22EA","&NotLeftTriangleBar;":"\u29CF\u0338","&NotLeftTriangleEqual;":"\u22EC","&NotLess;":"\u226E","&NotLessEqual;":"\u2270","&NotLessGreater;":"\u2278","&NotLessLess;":"\u226A\u0338","&NotLessSlantEqual;":"\u2A7D\u0338","&NotLessTilde;":"\u2274","&NotNestedGreaterGreater;":"\u2AA2\u0338","&NotNestedLessLess;":"\u2AA1\u0338","&NotPrecedes;":"\u2280","&NotPrecedesEqual;":"\u2AAF\u0338","&NotPrecedesSlantEqual;":"\u22E0","&NotReverseElement;":"\u220C","&NotRightTriangle;":"\u22EB","&NotRightTriangleBar;":"\u29D0\u0338","&NotRightTriangleEqual;":"\u22ED","&NotSquareSubset;":"\u228F\u0338","&NotSquareSubsetEqual;":"\u22E2","&NotSquareSuperset;":"\u2290\u0338","&NotSquareSupersetEqual;":"\u22E3","&NotSubset;":"\u2282\u20D2","&NotSubsetEqual;":"\u2288","&NotSucceeds;":"\u2281","&NotSucceedsEqual;":"\u2AB0\u0338","&NotSucceedsSlantEqual;":"\u22E1","&NotSucceedsTilde;":"\u227F\u0338","&NotSuperset;":"\u2283\u20D2","&NotSupersetEqual;":"\u2289","&NotTilde;":"\u2241","&NotTildeEqual;":"\u2244","&NotTildeFullEqual;":"\u2247","&NotTildeTilde;":"\u2249","&NotVerticalBar;":"\u2224","&Nscr;":"\u{1D4A9}","&Ntilde":"\xD1","&Ntilde;":"\xD1","&Nu;":"\u039D","&OElig;":"\u0152","&Oacute":"\xD3","&Oacute;":"\xD3","&Ocirc":"\xD4","&Ocirc;":"\xD4","&Ocy;":"\u041E","&Odblac;":"\u0150","&Ofr;":"\u{1D512}","&Ograve":"\xD2","&Ograve;":"\xD2","&Omacr;":"\u014C","&Omega;":"\u03A9","&Omicron;":"\u039F","&Oopf;":"\u{1D546}","&OpenCurlyDoubleQuote;":"\u201C","&OpenCurlyQuote;":"\u2018","&Or;":"\u2A54","&Oscr;":"\u{1D4AA}","&Oslash":"\xD8","&Oslash;":"\xD8","&Otilde":"\xD5","&Otilde;":"\xD5","&Otimes;":"\u2A37","&Ouml":"\xD6","&Ouml;":"\xD6","&OverBar;":"\u203E","&OverBrace;":"\u23DE","&OverBracket;":"\u23B4","&OverParenthesis;":"\u23DC","&PartialD;":"\u2202","&Pcy;":"\u041F","&Pfr;":"\u{1D513}","&Phi;":"\u03A6","&Pi;":"\u03A0","&PlusMinus;":"\xB1","&Poincareplane;":"\u210C","&Popf;":"\u2119","&Pr;":"\u2ABB","&Precedes;":"\u227A","&PrecedesEqual;":"\u2AAF","&PrecedesSlantEqual;":"\u227C","&PrecedesTilde;":"\u227E","&Prime;":"\u2033","&Product;":"\u220F","&Proportion;":"\u2237","&Proportional;":"\u221D","&Pscr;":"\u{1D4AB}","&Psi;":"\u03A8","&QUOT":'"',"&QUOT;":'"',"&Qfr;":"\u{1D514}","&Qopf;":"\u211A","&Qscr;":"\u{1D4AC}","&RBarr;":"\u2910","&REG":"\xAE","&REG;":"\xAE","&Racute;":"\u0154","&Rang;":"\u27EB","&Rarr;":"\u21A0","&Rarrtl;":"\u2916","&Rcaron;":"\u0158","&Rcedil;":"\u0156","&Rcy;":"\u0420","&Re;":"\u211C","&ReverseElement;":"\u220B","&ReverseEquilibrium;":"\u21CB","&ReverseUpEquilibrium;":"\u296F","&Rfr;":"\u211C","&Rho;":"\u03A1","&RightAngleBracket;":"\u27E9","&RightArrow;":"\u2192","&RightArrowBar;":"\u21E5","&RightArrowLeftArrow;":"\u21C4","&RightCeiling;":"\u2309","&RightDoubleBracket;":"\u27E7","&RightDownTeeVector;":"\u295D","&RightDownVector;":"\u21C2","&RightDownVectorBar;":"\u2955","&RightFloor;":"\u230B","&RightTee;":"\u22A2","&RightTeeArrow;":"\u21A6","&RightTeeVector;":"\u295B","&RightTriangle;":"\u22B3","&RightTriangleBar;":"\u29D0","&RightTriangleEqual;":"\u22B5","&RightUpDownVector;":"\u294F","&RightUpTeeVector;":"\u295C","&RightUpVector;":"\u21BE","&RightUpVectorBar;":"\u2954","&RightVector;":"\u21C0","&RightVectorBar;":"\u2953","&Rightarrow;":"\u21D2","&Ropf;":"\u211D","&RoundImplies;":"\u2970","&Rrightarrow;":"\u21DB","&Rscr;":"\u211B","&Rsh;":"\u21B1","&RuleDelayed;":"\u29F4","&SHCHcy;":"\u0429","&SHcy;":"\u0428","&SOFTcy;":"\u042C","&Sacute;":"\u015A","&Sc;":"\u2ABC","&Scaron;":"\u0160","&Scedil;":"\u015E","&Scirc;":"\u015C","&Scy;":"\u0421","&Sfr;":"\u{1D516}","&ShortDownArrow;":"\u2193","&ShortLeftArrow;":"\u2190","&ShortRightArrow;":"\u2192","&ShortUpArrow;":"\u2191","&Sigma;":"\u03A3","&SmallCircle;":"\u2218","&Sopf;":"\u{1D54A}","&Sqrt;":"\u221A","&Square;":"\u25A1","&SquareIntersection;":"\u2293","&SquareSubset;":"\u228F","&SquareSubsetEqual;":"\u2291","&SquareSuperset;":"\u2290","&SquareSupersetEqual;":"\u2292","&SquareUnion;":"\u2294","&Sscr;":"\u{1D4AE}","&Star;":"\u22C6","&Sub;":"\u22D0","&Subset;":"\u22D0","&SubsetEqual;":"\u2286","&Succeeds;":"\u227B","&SucceedsEqual;":"\u2AB0","&SucceedsSlantEqual;":"\u227D","&SucceedsTilde;":"\u227F","&SuchThat;":"\u220B","&Sum;":"\u2211","&Sup;":"\u22D1","&Superset;":"\u2283","&SupersetEqual;":"\u2287","&Supset;":"\u22D1","&THORN":"\xDE","&THORN;":"\xDE","&TRADE;":"\u2122","&TSHcy;":"\u040B","&TScy;":"\u0426","&Tab;":" ","&Tau;":"\u03A4","&Tcaron;":"\u0164","&Tcedil;":"\u0162","&Tcy;":"\u0422","&Tfr;":"\u{1D517}","&Therefore;":"\u2234","&Theta;":"\u0398","&ThickSpace;":"\u205F\u200A","&ThinSpace;":"\u2009","&Tilde;":"\u223C","&TildeEqual;":"\u2243","&TildeFullEqual;":"\u2245","&TildeTilde;":"\u2248","&Topf;":"\u{1D54B}","&TripleDot;":"\u20DB","&Tscr;":"\u{1D4AF}","&Tstrok;":"\u0166","&Uacute":"\xDA","&Uacute;":"\xDA","&Uarr;":"\u219F","&Uarrocir;":"\u2949","&Ubrcy;":"\u040E","&Ubreve;":"\u016C","&Ucirc":"\xDB","&Ucirc;":"\xDB","&Ucy;":"\u0423","&Udblac;":"\u0170","&Ufr;":"\u{1D518}","&Ugrave":"\xD9","&Ugrave;":"\xD9","&Umacr;":"\u016A","&UnderBar;":"_","&UnderBrace;":"\u23DF","&UnderBracket;":"\u23B5","&UnderParenthesis;":"\u23DD","&Union;":"\u22C3","&UnionPlus;":"\u228E","&Uogon;":"\u0172","&Uopf;":"\u{1D54C}","&UpArrow;":"\u2191","&UpArrowBar;":"\u2912","&UpArrowDownArrow;":"\u21C5","&UpDownArrow;":"\u2195","&UpEquilibrium;":"\u296E","&UpTee;":"\u22A5","&UpTeeArrow;":"\u21A5","&Uparrow;":"\u21D1","&Updownarrow;":"\u21D5","&UpperLeftArrow;":"\u2196","&UpperRightArrow;":"\u2197","&Upsi;":"\u03D2","&Upsilon;":"\u03A5","&Uring;":"\u016E","&Uscr;":"\u{1D4B0}","&Utilde;":"\u0168","&Uuml":"\xDC","&Uuml;":"\xDC","&VDash;":"\u22AB","&Vbar;":"\u2AEB","&Vcy;":"\u0412","&Vdash;":"\u22A9","&Vdashl;":"\u2AE6","&Vee;":"\u22C1","&Verbar;":"\u2016","&Vert;":"\u2016","&VerticalBar;":"\u2223","&VerticalLine;":"|","&VerticalSeparator;":"\u2758","&VerticalTilde;":"\u2240","&VeryThinSpace;":"\u200A","&Vfr;":"\u{1D519}","&Vopf;":"\u{1D54D}","&Vscr;":"\u{1D4B1}","&Vvdash;":"\u22AA","&Wcirc;":"\u0174","&Wedge;":"\u22C0","&Wfr;":"\u{1D51A}","&Wopf;":"\u{1D54E}","&Wscr;":"\u{1D4B2}","&Xfr;":"\u{1D51B}","&Xi;":"\u039E","&Xopf;":"\u{1D54F}","&Xscr;":"\u{1D4B3}","&YAcy;":"\u042F","&YIcy;":"\u0407","&YUcy;":"\u042E","&Yacute":"\xDD","&Yacute;":"\xDD","&Ycirc;":"\u0176","&Ycy;":"\u042B","&Yfr;":"\u{1D51C}","&Yopf;":"\u{1D550}","&Yscr;":"\u{1D4B4}","&Yuml;":"\u0178","&ZHcy;":"\u0416","&Zacute;":"\u0179","&Zcaron;":"\u017D","&Zcy;":"\u0417","&Zdot;":"\u017B","&ZeroWidthSpace;":"\u200B","&Zeta;":"\u0396","&Zfr;":"\u2128","&Zopf;":"\u2124","&Zscr;":"\u{1D4B5}","&aacute":"\xE1","&aacute;":"\xE1","&abreve;":"\u0103","&ac;":"\u223E","&acE;":"\u223E\u0333","&acd;":"\u223F","&acirc":"\xE2","&acirc;":"\xE2","&acute":"\xB4","&acute;":"\xB4","&acy;":"\u0430","&aelig":"\xE6","&aelig;":"\xE6","&af;":"\u2061","&afr;":"\u{1D51E}","&agrave":"\xE0","&agrave;":"\xE0","&alefsym;":"\u2135","&aleph;":"\u2135","&alpha;":"\u03B1","&amacr;":"\u0101","&amalg;":"\u2A3F","&amp":"&","&amp;":"&","&and;":"\u2227","&andand;":"\u2A55","&andd;":"\u2A5C","&andslope;":"\u2A58","&andv;":"\u2A5A","&ang;":"\u2220","&ange;":"\u29A4","&angle;":"\u2220","&angmsd;":"\u2221","&angmsdaa;":"\u29A8","&angmsdab;":"\u29A9","&angmsdac;":"\u29AA","&angmsdad;":"\u29AB","&angmsdae;":"\u29AC","&angmsdaf;":"\u29AD","&angmsdag;":"\u29AE","&angmsdah;":"\u29AF","&angrt;":"\u221F","&angrtvb;":"\u22BE","&angrtvbd;":"\u299D","&angsph;":"\u2222","&angst;":"\xC5","&angzarr;":"\u237C","&aogon;":"\u0105","&aopf;":"\u{1D552}","&ap;":"\u2248","&apE;":"\u2A70","&apacir;":"\u2A6F","&ape;":"\u224A","&apid;":"\u224B","&apos;":"'","&approx;":"\u2248","&approxeq;":"\u224A","&aring":"\xE5","&aring;":"\xE5","&ascr;":"\u{1D4B6}","&ast;":"*","&asymp;":"\u2248","&asympeq;":"\u224D","&atilde":"\xE3","&atilde;":"\xE3","&auml":"\xE4","&auml;":"\xE4","&awconint;":"\u2233","&awint;":"\u2A11","&bNot;":"\u2AED","&backcong;":"\u224C","&backepsilon;":"\u03F6","&backprime;":"\u2035","&backsim;":"\u223D","&backsimeq;":"\u22CD","&barvee;":"\u22BD","&barwed;":"\u2305","&barwedge;":"\u2305","&bbrk;":"\u23B5","&bbrktbrk;":"\u23B6","&bcong;":"\u224C","&bcy;":"\u0431","&bdquo;":"\u201E","&becaus;":"\u2235","&because;":"\u2235","&bemptyv;":"\u29B0","&bepsi;":"\u03F6","&bernou;":"\u212C","&beta;":"\u03B2","&beth;":"\u2136","&between;":"\u226C","&bfr;":"\u{1D51F}","&bigcap;":"\u22C2","&bigcirc;":"\u25EF","&bigcup;":"\u22C3","&bigodot;":"\u2A00","&bigoplus;":"\u2A01","&bigotimes;":"\u2A02","&bigsqcup;":"\u2A06","&bigstar;":"\u2605","&bigtriangledown;":"\u25BD","&bigtriangleup;":"\u25B3","&biguplus;":"\u2A04","&bigvee;":"\u22C1","&bigwedge;":"\u22C0","&bkarow;":"\u290D","&blacklozenge;":"\u29EB","&blacksquare;":"\u25AA","&blacktriangle;":"\u25B4","&blacktriangledown;":"\u25BE","&blacktriangleleft;":"\u25C2","&blacktriangleright;":"\u25B8","&blank;":"\u2423","&blk12;":"\u2592","&blk14;":"\u2591","&blk34;":"\u2593","&block;":"\u2588","&bne;":"=\u20E5","&bnequiv;":"\u2261\u20E5","&bnot;":"\u2310","&bopf;":"\u{1D553}","&bot;":"\u22A5","&bottom;":"\u22A5","&bowtie;":"\u22C8","&boxDL;":"\u2557","&boxDR;":"\u2554","&boxDl;":"\u2556","&boxDr;":"\u2553","&boxH;":"\u2550","&boxHD;":"\u2566","&boxHU;":"\u2569","&boxHd;":"\u2564","&boxHu;":"\u2567","&boxUL;":"\u255D","&boxUR;":"\u255A","&boxUl;":"\u255C","&boxUr;":"\u2559","&boxV;":"\u2551","&boxVH;":"\u256C","&boxVL;":"\u2563","&boxVR;":"\u2560","&boxVh;":"\u256B","&boxVl;":"\u2562","&boxVr;":"\u255F","&boxbox;":"\u29C9","&boxdL;":"\u2555","&boxdR;":"\u2552","&boxdl;":"\u2510","&boxdr;":"\u250C","&boxh;":"\u2500","&boxhD;":"\u2565","&boxhU;":"\u2568","&boxhd;":"\u252C","&boxhu;":"\u2534","&boxminus;":"\u229F","&boxplus;":"\u229E","&boxtimes;":"\u22A0","&boxuL;":"\u255B","&boxuR;":"\u2558","&boxul;":"\u2518","&boxur;":"\u2514","&boxv;":"\u2502","&boxvH;":"\u256A","&boxvL;":"\u2561","&boxvR;":"\u255E","&boxvh;":"\u253C","&boxvl;":"\u2524","&boxvr;":"\u251C","&bprime;":"\u2035","&breve;":"\u02D8","&brvbar":"\xA6","&brvbar;":"\xA6","&bscr;":"\u{1D4B7}","&bsemi;":"\u204F","&bsim;":"\u223D","&bsime;":"\u22CD","&bsol;":"\\","&bsolb;":"\u29C5","&bsolhsub;":"\u27C8","&bull;":"\u2022","&bullet;":"\u2022","&bump;":"\u224E","&bumpE;":"\u2AAE","&bumpe;":"\u224F","&bumpeq;":"\u224F","&cacute;":"\u0107","&cap;":"\u2229","&capand;":"\u2A44","&capbrcup;":"\u2A49","&capcap;":"\u2A4B","&capcup;":"\u2A47","&capdot;":"\u2A40","&caps;":"\u2229\uFE00","&caret;":"\u2041","&caron;":"\u02C7","&ccaps;":"\u2A4D","&ccaron;":"\u010D","&ccedil":"\xE7","&ccedil;":"\xE7","&ccirc;":"\u0109","&ccups;":"\u2A4C","&ccupssm;":"\u2A50","&cdot;":"\u010B","&cedil":"\xB8","&cedil;":"\xB8","&cemptyv;":"\u29B2","&cent":"\xA2","&cent;":"\xA2","&centerdot;":"\xB7","&cfr;":"\u{1D520}","&chcy;":"\u0447","&check;":"\u2713","&checkmark;":"\u2713","&chi;":"\u03C7","&cir;":"\u25CB","&cirE;":"\u29C3","&circ;":"\u02C6","&circeq;":"\u2257","&circlearrowleft;":"\u21BA","&circlearrowright;":"\u21BB","&circledR;":"\xAE","&circledS;":"\u24C8","&circledast;":"\u229B","&circledcirc;":"\u229A","&circleddash;":"\u229D","&cire;":"\u2257","&cirfnint;":"\u2A10","&cirmid;":"\u2AEF","&cirscir;":"\u29C2","&clubs;":"\u2663","&clubsuit;":"\u2663","&colon;":":","&colone;":"\u2254","&coloneq;":"\u2254","&comma;":",","&commat;":"@","&comp;":"\u2201","&compfn;":"\u2218","&complement;":"\u2201","&complexes;":"\u2102","&cong;":"\u2245","&congdot;":"\u2A6D","&conint;":"\u222E","&copf;":"\u{1D554}","&coprod;":"\u2210","&copy":"\xA9","&copy;":"\xA9","&copysr;":"\u2117","&crarr;":"\u21B5","&cross;":"\u2717","&cscr;":"\u{1D4B8}","&csub;":"\u2ACF","&csube;":"\u2AD1","&csup;":"\u2AD0","&csupe;":"\u2AD2","&ctdot;":"\u22EF","&cudarrl;":"\u2938","&cudarrr;":"\u2935","&cuepr;":"\u22DE","&cuesc;":"\u22DF","&cularr;":"\u21B6","&cularrp;":"\u293D","&cup;":"\u222A","&cupbrcap;":"\u2A48","&cupcap;":"\u2A46","&cupcup;":"\u2A4A","&cupdot;":"\u228D","&cupor;":"\u2A45","&cups;":"\u222A\uFE00","&curarr;":"\u21B7","&curarrm;":"\u293C","&curlyeqprec;":"\u22DE","&curlyeqsucc;":"\u22DF","&curlyvee;":"\u22CE","&curlywedge;":"\u22CF","&curren":"\xA4","&curren;":"\xA4","&curvearrowleft;":"\u21B6","&curvearrowright;":"\u21B7","&cuvee;":"\u22CE","&cuwed;":"\u22CF","&cwconint;":"\u2232","&cwint;":"\u2231","&cylcty;":"\u232D","&dArr;":"\u21D3","&dHar;":"\u2965","&dagger;":"\u2020","&daleth;":"\u2138","&darr;":"\u2193","&dash;":"\u2010","&dashv;":"\u22A3","&dbkarow;":"\u290F","&dblac;":"\u02DD","&dcaron;":"\u010F","&dcy;":"\u0434","&dd;":"\u2146","&ddagger;":"\u2021","&ddarr;":"\u21CA","&ddotseq;":"\u2A77","&deg":"\xB0","&deg;":"\xB0","&delta;":"\u03B4","&demptyv;":"\u29B1","&dfisht;":"\u297F","&dfr;":"\u{1D521}","&dharl;":"\u21C3","&dharr;":"\u21C2","&diam;":"\u22C4","&diamond;":"\u22C4","&diamondsuit;":"\u2666","&diams;":"\u2666","&die;":"\xA8","&digamma;":"\u03DD","&disin;":"\u22F2","&div;":"\xF7","&divide":"\xF7","&divide;":"\xF7","&divideontimes;":"\u22C7","&divonx;":"\u22C7","&djcy;":"\u0452","&dlcorn;":"\u231E","&dlcrop;":"\u230D","&dollar;":"$","&dopf;":"\u{1D555}","&dot;":"\u02D9","&doteq;":"\u2250","&doteqdot;":"\u2251","&dotminus;":"\u2238","&dotplus;":"\u2214","&dotsquare;":"\u22A1","&doublebarwedge;":"\u2306","&downarrow;":"\u2193","&downdownarrows;":"\u21CA","&downharpoonleft;":"\u21C3","&downharpoonright;":"\u21C2","&drbkarow;":"\u2910","&drcorn;":"\u231F","&drcrop;":"\u230C","&dscr;":"\u{1D4B9}","&dscy;":"\u0455","&dsol;":"\u29F6","&dstrok;":"\u0111","&dtdot;":"\u22F1","&dtri;":"\u25BF","&dtrif;":"\u25BE","&duarr;":"\u21F5","&duhar;":"\u296F","&dwangle;":"\u29A6","&dzcy;":"\u045F","&dzigrarr;":"\u27FF","&eDDot;":"\u2A77","&eDot;":"\u2251","&eacute":"\xE9","&eacute;":"\xE9","&easter;":"\u2A6E","&ecaron;":"\u011B","&ecir;":"\u2256","&ecirc":"\xEA","&ecirc;":"\xEA","&ecolon;":"\u2255","&ecy;":"\u044D","&edot;":"\u0117","&ee;":"\u2147","&efDot;":"\u2252","&efr;":"\u{1D522}","&eg;":"\u2A9A","&egrave":"\xE8","&egrave;":"\xE8","&egs;":"\u2A96","&egsdot;":"\u2A98","&el;":"\u2A99","&elinters;":"\u23E7","&ell;":"\u2113","&els;":"\u2A95","&elsdot;":"\u2A97","&emacr;":"\u0113","&empty;":"\u2205","&emptyset;":"\u2205","&emptyv;":"\u2205","&emsp13;":"\u2004","&emsp14;":"\u2005","&emsp;":"\u2003","&eng;":"\u014B","&ensp;":"\u2002","&eogon;":"\u0119","&eopf;":"\u{1D556}","&epar;":"\u22D5","&eparsl;":"\u29E3","&eplus;":"\u2A71","&epsi;":"\u03B5","&epsilon;":"\u03B5","&epsiv;":"\u03F5","&eqcirc;":"\u2256","&eqcolon;":"\u2255","&eqsim;":"\u2242","&eqslantgtr;":"\u2A96","&eqslantless;":"\u2A95","&equals;":"=","&equest;":"\u225F","&equiv;":"\u2261","&equivDD;":"\u2A78","&eqvparsl;":"\u29E5","&erDot;":"\u2253","&erarr;":"\u2971","&escr;":"\u212F","&esdot;":"\u2250","&esim;":"\u2242","&eta;":"\u03B7","&eth":"\xF0","&eth;":"\xF0","&euml":"\xEB","&euml;":"\xEB","&euro;":"\u20AC","&excl;":"!","&exist;":"\u2203","&expectation;":"\u2130","&exponentiale;":"\u2147","&fallingdotseq;":"\u2252","&fcy;":"\u0444","&female;":"\u2640","&ffilig;":"\uFB03","&fflig;":"\uFB00","&ffllig;":"\uFB04","&ffr;":"\u{1D523}","&filig;":"\uFB01","&fjlig;":"fj","&flat;":"\u266D","&fllig;":"\uFB02","&fltns;":"\u25B1","&fnof;":"\u0192","&fopf;":"\u{1D557}","&forall;":"\u2200","&fork;":"\u22D4","&forkv;":"\u2AD9","&fpartint;":"\u2A0D","&frac12":"\xBD","&frac12;":"\xBD","&frac13;":"\u2153","&frac14":"\xBC","&frac14;":"\xBC","&frac15;":"\u2155","&frac16;":"\u2159","&frac18;":"\u215B","&frac23;":"\u2154","&frac25;":"\u2156","&frac34":"\xBE","&frac34;":"\xBE","&frac35;":"\u2157","&frac38;":"\u215C","&frac45;":"\u2158","&frac56;":"\u215A","&frac58;":"\u215D","&frac78;":"\u215E","&frasl;":"\u2044","&frown;":"\u2322","&fscr;":"\u{1D4BB}","&gE;":"\u2267","&gEl;":"\u2A8C","&gacute;":"\u01F5","&gamma;":"\u03B3","&gammad;":"\u03DD","&gap;":"\u2A86","&gbreve;":"\u011F","&gcirc;":"\u011D","&gcy;":"\u0433","&gdot;":"\u0121","&ge;":"\u2265","&gel;":"\u22DB","&geq;":"\u2265","&geqq;":"\u2267","&geqslant;":"\u2A7E","&ges;":"\u2A7E","&gescc;":"\u2AA9","&gesdot;":"\u2A80","&gesdoto;":"\u2A82","&gesdotol;":"\u2A84","&gesl;":"\u22DB\uFE00","&gesles;":"\u2A94","&gfr;":"\u{1D524}","&gg;":"\u226B","&ggg;":"\u22D9","&gimel;":"\u2137","&gjcy;":"\u0453","&gl;":"\u2277","&glE;":"\u2A92","&gla;":"\u2AA5","&glj;":"\u2AA4","&gnE;":"\u2269","&gnap;":"\u2A8A","&gnapprox;":"\u2A8A","&gne;":"\u2A88","&gneq;":"\u2A88","&gneqq;":"\u2269","&gnsim;":"\u22E7","&gopf;":"\u{1D558}","&grave;":"`","&gscr;":"\u210A","&gsim;":"\u2273","&gsime;":"\u2A8E","&gsiml;":"\u2A90","&gt":">","&gt;":">","&gtcc;":"\u2AA7","&gtcir;":"\u2A7A","&gtdot;":"\u22D7","&gtlPar;":"\u2995","&gtquest;":"\u2A7C","&gtrapprox;":"\u2A86","&gtrarr;":"\u2978","&gtrdot;":"\u22D7","&gtreqless;":"\u22DB","&gtreqqless;":"\u2A8C","&gtrless;":"\u2277","&gtrsim;":"\u2273","&gvertneqq;":"\u2269\uFE00","&gvnE;":"\u2269\uFE00","&hArr;":"\u21D4","&hairsp;":"\u200A","&half;":"\xBD","&hamilt;":"\u210B","&hardcy;":"\u044A","&harr;":"\u2194","&harrcir;":"\u2948","&harrw;":"\u21AD","&hbar;":"\u210F","&hcirc;":"\u0125","&hearts;":"\u2665","&heartsuit;":"\u2665","&hellip;":"\u2026","&hercon;":"\u22B9","&hfr;":"\u{1D525}","&hksearow;":"\u2925","&hkswarow;":"\u2926","&hoarr;":"\u21FF","&homtht;":"\u223B","&hookleftarrow;":"\u21A9","&hookrightarrow;":"\u21AA","&hopf;":"\u{1D559}","&horbar;":"\u2015","&hscr;":"\u{1D4BD}","&hslash;":"\u210F","&hstrok;":"\u0127","&hybull;":"\u2043","&hyphen;":"\u2010","&iacute":"\xED","&iacute;":"\xED","&ic;":"\u2063","&icirc":"\xEE","&icirc;":"\xEE","&icy;":"\u0438","&iecy;":"\u0435","&iexcl":"\xA1","&iexcl;":"\xA1","&iff;":"\u21D4","&ifr;":"\u{1D526}","&igrave":"\xEC","&igrave;":"\xEC","&ii;":"\u2148","&iiiint;":"\u2A0C","&iiint;":"\u222D","&iinfin;":"\u29DC","&iiota;":"\u2129","&ijlig;":"\u0133","&imacr;":"\u012B","&image;":"\u2111","&imagline;":"\u2110","&imagpart;":"\u2111","&imath;":"\u0131","&imof;":"\u22B7","&imped;":"\u01B5","&in;":"\u2208","&incare;":"\u2105","&infin;":"\u221E","&infintie;":"\u29DD","&inodot;":"\u0131","&int;":"\u222B","&intcal;":"\u22BA","&integers;":"\u2124","&intercal;":"\u22BA","&intlarhk;":"\u2A17","&intprod;":"\u2A3C","&iocy;":"\u0451","&iogon;":"\u012F","&iopf;":"\u{1D55A}","&iota;":"\u03B9","&iprod;":"\u2A3C","&iquest":"\xBF","&iquest;":"\xBF","&iscr;":"\u{1D4BE}","&isin;":"\u2208","&isinE;":"\u22F9","&isindot;":"\u22F5","&isins;":"\u22F4","&isinsv;":"\u22F3","&isinv;":"\u2208","&it;":"\u2062","&itilde;":"\u0129","&iukcy;":"\u0456","&iuml":"\xEF","&iuml;":"\xEF","&jcirc;":"\u0135","&jcy;":"\u0439","&jfr;":"\u{1D527}","&jmath;":"\u0237","&jopf;":"\u{1D55B}","&jscr;":"\u{1D4BF}","&jsercy;":"\u0458","&jukcy;":"\u0454","&kappa;":"\u03BA","&kappav;":"\u03F0","&kcedil;":"\u0137","&kcy;":"\u043A","&kfr;":"\u{1D528}","&kgreen;":"\u0138","&khcy;":"\u0445","&kjcy;":"\u045C","&kopf;":"\u{1D55C}","&kscr;":"\u{1D4C0}","&lAarr;":"\u21DA","&lArr;":"\u21D0","&lAtail;":"\u291B","&lBarr;":"\u290E","&lE;":"\u2266","&lEg;":"\u2A8B","&lHar;":"\u2962","&lacute;":"\u013A","&laemptyv;":"\u29B4","&lagran;":"\u2112","&lambda;":"\u03BB","&lang;":"\u27E8","&langd;":"\u2991","&langle;":"\u27E8","&lap;":"\u2A85","&laquo":"\xAB","&laquo;":"\xAB","&larr;":"\u2190","&larrb;":"\u21E4","&larrbfs;":"\u291F","&larrfs;":"\u291D","&larrhk;":"\u21A9","&larrlp;":"\u21AB","&larrpl;":"\u2939","&larrsim;":"\u2973","&larrtl;":"\u21A2","&lat;":"\u2AAB","&latail;":"\u2919","&late;":"\u2AAD","&lates;":"\u2AAD\uFE00","&lbarr;":"\u290C","&lbbrk;":"\u2772","&lbrace;":"{","&lbrack;":"[","&lbrke;":"\u298B","&lbrksld;":"\u298F","&lbrkslu;":"\u298D","&lcaron;":"\u013E","&lcedil;":"\u013C","&lceil;":"\u2308","&lcub;":"{","&lcy;":"\u043B","&ldca;":"\u2936","&ldquo;":"\u201C","&ldquor;":"\u201E","&ldrdhar;":"\u2967","&ldrushar;":"\u294B","&ldsh;":"\u21B2","&le;":"\u2264","&leftarrow;":"\u2190","&leftarrowtail;":"\u21A2","&leftharpoondown;":"\u21BD","&leftharpoonup;":"\u21BC","&leftleftarrows;":"\u21C7","&leftrightarrow;":"\u2194","&leftrightarrows;":"\u21C6","&leftrightharpoons;":"\u21CB","&leftrightsquigarrow;":"\u21AD","&leftthreetimes;":"\u22CB","&leg;":"\u22DA","&leq;":"\u2264","&leqq;":"\u2266","&leqslant;":"\u2A7D","&les;":"\u2A7D","&lescc;":"\u2AA8","&lesdot;":"\u2A7F","&lesdoto;":"\u2A81","&lesdotor;":"\u2A83","&lesg;":"\u22DA\uFE00","&lesges;":"\u2A93","&lessapprox;":"\u2A85","&lessdot;":"\u22D6","&lesseqgtr;":"\u22DA","&lesseqqgtr;":"\u2A8B","&lessgtr;":"\u2276","&lesssim;":"\u2272","&lfisht;":"\u297C","&lfloor;":"\u230A","&lfr;":"\u{1D529}","&lg;":"\u2276","&lgE;":"\u2A91","&lhard;":"\u21BD","&lharu;":"\u21BC","&lharul;":"\u296A","&lhblk;":"\u2584","&ljcy;":"\u0459","&ll;":"\u226A","&llarr;":"\u21C7","&llcorner;":"\u231E","&llhard;":"\u296B","&lltri;":"\u25FA","&lmidot;":"\u0140","&lmoust;":"\u23B0","&lmoustache;":"\u23B0","&lnE;":"\u2268","&lnap;":"\u2A89","&lnapprox;":"\u2A89","&lne;":"\u2A87","&lneq;":"\u2A87","&lneqq;":"\u2268","&lnsim;":"\u22E6","&loang;":"\u27EC","&loarr;":"\u21FD","&lobrk;":"\u27E6","&longleftarrow;":"\u27F5","&longleftrightarrow;":"\u27F7","&longmapsto;":"\u27FC","&longrightarrow;":"\u27F6","&looparrowleft;":"\u21AB","&looparrowright;":"\u21AC","&lopar;":"\u2985","&lopf;":"\u{1D55D}","&loplus;":"\u2A2D","&lotimes;":"\u2A34","&lowast;":"\u2217","&lowbar;":"_","&loz;":"\u25CA","&lozenge;":"\u25CA","&lozf;":"\u29EB","&lpar;":"(","&lparlt;":"\u2993","&lrarr;":"\u21C6","&lrcorner;":"\u231F","&lrhar;":"\u21CB","&lrhard;":"\u296D","&lrm;":"\u200E","&lrtri;":"\u22BF","&lsaquo;":"\u2039","&lscr;":"\u{1D4C1}","&lsh;":"\u21B0","&lsim;":"\u2272","&lsime;":"\u2A8D","&lsimg;":"\u2A8F","&lsqb;":"[","&lsquo;":"\u2018","&lsquor;":"\u201A","&lstrok;":"\u0142","&lt":"<","&lt;":"<","&ltcc;":"\u2AA6","&ltcir;":"\u2A79","&ltdot;":"\u22D6","&lthree;":"\u22CB","&ltimes;":"\u22C9","&ltlarr;":"\u2976","&ltquest;":"\u2A7B","&ltrPar;":"\u2996","&ltri;":"\u25C3","&ltrie;":"\u22B4","&ltrif;":"\u25C2","&lurdshar;":"\u294A","&luruhar;":"\u2966","&lvertneqq;":"\u2268\uFE00","&lvnE;":"\u2268\uFE00","&mDDot;":"\u223A","&macr":"\xAF","&macr;":"\xAF","&male;":"\u2642","&malt;":"\u2720","&maltese;":"\u2720","&map;":"\u21A6","&mapsto;":"\u21A6","&mapstodown;":"\u21A7","&mapstoleft;":"\u21A4","&mapstoup;":"\u21A5","&marker;":"\u25AE","&mcomma;":"\u2A29","&mcy;":"\u043C","&mdash;":"\u2014","&measuredangle;":"\u2221","&mfr;":"\u{1D52A}","&mho;":"\u2127","&micro":"\xB5","&micro;":"\xB5","&mid;":"\u2223","&midast;":"*","&midcir;":"\u2AF0","&middot":"\xB7","&middot;":"\xB7","&minus;":"\u2212","&minusb;":"\u229F","&minusd;":"\u2238","&minusdu;":"\u2A2A","&mlcp;":"\u2ADB","&mldr;":"\u2026","&mnplus;":"\u2213","&models;":"\u22A7","&mopf;":"\u{1D55E}","&mp;":"\u2213","&mscr;":"\u{1D4C2}","&mstpos;":"\u223E","&mu;":"\u03BC","&multimap;":"\u22B8","&mumap;":"\u22B8","&nGg;":"\u22D9\u0338","&nGt;":"\u226B\u20D2","&nGtv;":"\u226B\u0338","&nLeftarrow;":"\u21CD","&nLeftrightarrow;":"\u21CE","&nLl;":"\u22D8\u0338","&nLt;":"\u226A\u20D2","&nLtv;":"\u226A\u0338","&nRightarrow;":"\u21CF","&nVDash;":"\u22AF","&nVdash;":"\u22AE","&nabla;":"\u2207","&nacute;":"\u0144","&nang;":"\u2220\u20D2","&nap;":"\u2249","&napE;":"\u2A70\u0338","&napid;":"\u224B\u0338","&napos;":"\u0149","&napprox;":"\u2249","&natur;":"\u266E","&natural;":"\u266E","&naturals;":"\u2115","&nbsp":"\xA0","&nbsp;":"\xA0","&nbump;":"\u224E\u0338","&nbumpe;":"\u224F\u0338","&ncap;":"\u2A43","&ncaron;":"\u0148","&ncedil;":"\u0146","&ncong;":"\u2247","&ncongdot;":"\u2A6D\u0338","&ncup;":"\u2A42","&ncy;":"\u043D","&ndash;":"\u2013","&ne;":"\u2260","&neArr;":"\u21D7","&nearhk;":"\u2924","&nearr;":"\u2197","&nearrow;":"\u2197","&nedot;":"\u2250\u0338","&nequiv;":"\u2262","&nesear;":"\u2928","&nesim;":"\u2242\u0338","&nexist;":"\u2204","&nexists;":"\u2204","&nfr;":"\u{1D52B}","&ngE;":"\u2267\u0338","&nge;":"\u2271","&ngeq;":"\u2271","&ngeqq;":"\u2267\u0338","&ngeqslant;":"\u2A7E\u0338","&nges;":"\u2A7E\u0338","&ngsim;":"\u2275","&ngt;":"\u226F","&ngtr;":"\u226F","&nhArr;":"\u21CE","&nharr;":"\u21AE","&nhpar;":"\u2AF2","&ni;":"\u220B","&nis;":"\u22FC","&nisd;":"\u22FA","&niv;":"\u220B","&njcy;":"\u045A","&nlArr;":"\u21CD","&nlE;":"\u2266\u0338","&nlarr;":"\u219A","&nldr;":"\u2025","&nle;":"\u2270","&nleftarrow;":"\u219A","&nleftrightarrow;":"\u21AE","&nleq;":"\u2270","&nleqq;":"\u2266\u0338","&nleqslant;":"\u2A7D\u0338","&nles;":"\u2A7D\u0338","&nless;":"\u226E","&nlsim;":"\u2274","&nlt;":"\u226E","&nltri;":"\u22EA","&nltrie;":"\u22EC","&nmid;":"\u2224","&nopf;":"\u{1D55F}","&not":"\xAC","&not;":"\xAC","&notin;":"\u2209","&notinE;":"\u22F9\u0338","&notindot;":"\u22F5\u0338","&notinva;":"\u2209","&notinvb;":"\u22F7","&notinvc;":"\u22F6","&notni;":"\u220C","&notniva;":"\u220C","&notnivb;":"\u22FE","&notnivc;":"\u22FD","&npar;":"\u2226","&nparallel;":"\u2226","&nparsl;":"\u2AFD\u20E5","&npart;":"\u2202\u0338","&npolint;":"\u2A14","&npr;":"\u2280","&nprcue;":"\u22E0","&npre;":"\u2AAF\u0338","&nprec;":"\u2280","&npreceq;":"\u2AAF\u0338","&nrArr;":"\u21CF","&nrarr;":"\u219B","&nrarrc;":"\u2933\u0338","&nrarrw;":"\u219D\u0338","&nrightarrow;":"\u219B","&nrtri;":"\u22EB","&nrtrie;":"\u22ED","&nsc;":"\u2281","&nsccue;":"\u22E1","&nsce;":"\u2AB0\u0338","&nscr;":"\u{1D4C3}","&nshortmid;":"\u2224","&nshortparallel;":"\u2226","&nsim;":"\u2241","&nsime;":"\u2244","&nsimeq;":"\u2244","&nsmid;":"\u2224","&nspar;":"\u2226","&nsqsube;":"\u22E2","&nsqsupe;":"\u22E3","&nsub;":"\u2284","&nsubE;":"\u2AC5\u0338","&nsube;":"\u2288","&nsubset;":"\u2282\u20D2","&nsubseteq;":"\u2288","&nsubseteqq;":"\u2AC5\u0338","&nsucc;":"\u2281","&nsucceq;":"\u2AB0\u0338","&nsup;":"\u2285","&nsupE;":"\u2AC6\u0338","&nsupe;":"\u2289","&nsupset;":"\u2283\u20D2","&nsupseteq;":"\u2289","&nsupseteqq;":"\u2AC6\u0338","&ntgl;":"\u2279","&ntilde":"\xF1","&ntilde;":"\xF1","&ntlg;":"\u2278","&ntriangleleft;":"\u22EA","&ntrianglelefteq;":"\u22EC","&ntriangleright;":"\u22EB","&ntrianglerighteq;":"\u22ED","&nu;":"\u03BD","&num;":"#","&numero;":"\u2116","&numsp;":"\u2007","&nvDash;":"\u22AD","&nvHarr;":"\u2904","&nvap;":"\u224D\u20D2","&nvdash;":"\u22AC","&nvge;":"\u2265\u20D2","&nvgt;":">\u20D2","&nvinfin;":"\u29DE","&nvlArr;":"\u2902","&nvle;":"\u2264\u20D2","&nvlt;":"<\u20D2","&nvltrie;":"\u22B4\u20D2","&nvrArr;":"\u2903","&nvrtrie;":"\u22B5\u20D2","&nvsim;":"\u223C\u20D2","&nwArr;":"\u21D6","&nwarhk;":"\u2923","&nwarr;":"\u2196","&nwarrow;":"\u2196","&nwnear;":"\u2927","&oS;":"\u24C8","&oacute":"\xF3","&oacute;":"\xF3","&oast;":"\u229B","&ocir;":"\u229A","&ocirc":"\xF4","&ocirc;":"\xF4","&ocy;":"\u043E","&odash;":"\u229D","&odblac;":"\u0151","&odiv;":"\u2A38","&odot;":"\u2299","&odsold;":"\u29BC","&oelig;":"\u0153","&ofcir;":"\u29BF","&ofr;":"\u{1D52C}","&ogon;":"\u02DB","&ograve":"\xF2","&ograve;":"\xF2","&ogt;":"\u29C1","&ohbar;":"\u29B5","&ohm;":"\u03A9","&oint;":"\u222E","&olarr;":"\u21BA","&olcir;":"\u29BE","&olcross;":"\u29BB","&oline;":"\u203E","&olt;":"\u29C0","&omacr;":"\u014D","&omega;":"\u03C9","&omicron;":"\u03BF","&omid;":"\u29B6","&ominus;":"\u2296","&oopf;":"\u{1D560}","&opar;":"\u29B7","&operp;":"\u29B9","&oplus;":"\u2295","&or;":"\u2228","&orarr;":"\u21BB","&ord;":"\u2A5D","&order;":"\u2134","&orderof;":"\u2134","&ordf":"\xAA","&ordf;":"\xAA","&ordm":"\xBA","&ordm;":"\xBA","&origof;":"\u22B6","&oror;":"\u2A56","&orslope;":"\u2A57","&orv;":"\u2A5B","&oscr;":"\u2134","&oslash":"\xF8","&oslash;":"\xF8","&osol;":"\u2298","&otilde":"\xF5","&otilde;":"\xF5","&otimes;":"\u2297","&otimesas;":"\u2A36","&ouml":"\xF6","&ouml;":"\xF6","&ovbar;":"\u233D","&par;":"\u2225","&para":"\xB6","&para;":"\xB6","&parallel;":"\u2225","&parsim;":"\u2AF3","&parsl;":"\u2AFD","&part;":"\u2202","&pcy;":"\u043F","&percnt;":"%","&period;":".","&permil;":"\u2030","&perp;":"\u22A5","&pertenk;":"\u2031","&pfr;":"\u{1D52D}","&phi;":"\u03C6","&phiv;":"\u03D5","&phmmat;":"\u2133","&phone;":"\u260E","&pi;":"\u03C0","&pitchfork;":"\u22D4","&piv;":"\u03D6","&planck;":"\u210F","&planckh;":"\u210E","&plankv;":"\u210F","&plus;":"+","&plusacir;":"\u2A23","&plusb;":"\u229E","&pluscir;":"\u2A22","&plusdo;":"\u2214","&plusdu;":"\u2A25","&pluse;":"\u2A72","&plusmn":"\xB1","&plusmn;":"\xB1","&plussim;":"\u2A26","&plustwo;":"\u2A27","&pm;":"\xB1","&pointint;":"\u2A15","&popf;":"\u{1D561}","&pound":"\xA3","&pound;":"\xA3","&pr;":"\u227A","&prE;":"\u2AB3","&prap;":"\u2AB7","&prcue;":"\u227C","&pre;":"\u2AAF","&prec;":"\u227A","&precapprox;":"\u2AB7","&preccurlyeq;":"\u227C","&preceq;":"\u2AAF","&precnapprox;":"\u2AB9","&precneqq;":"\u2AB5","&precnsim;":"\u22E8","&precsim;":"\u227E","&prime;":"\u2032","&primes;":"\u2119","&prnE;":"\u2AB5","&prnap;":"\u2AB9","&prnsim;":"\u22E8","&prod;":"\u220F","&profalar;":"\u232E","&profline;":"\u2312","&profsurf;":"\u2313","&prop;":"\u221D","&propto;":"\u221D","&prsim;":"\u227E","&prurel;":"\u22B0","&pscr;":"\u{1D4C5}","&psi;":"\u03C8","&puncsp;":"\u2008","&qfr;":"\u{1D52E}","&qint;":"\u2A0C","&qopf;":"\u{1D562}","&qprime;":"\u2057","&qscr;":"\u{1D4C6}","&quaternions;":"\u210D","&quatint;":"\u2A16","&quest;":"?","&questeq;":"\u225F","&quot":'"',"&quot;":'"',"&rAarr;":"\u21DB","&rArr;":"\u21D2","&rAtail;":"\u291C","&rBarr;":"\u290F","&rHar;":"\u2964","&race;":"\u223D\u0331","&racute;":"\u0155","&radic;":"\u221A","&raemptyv;":"\u29B3","&rang;":"\u27E9","&rangd;":"\u2992","&range;":"\u29A5","&rangle;":"\u27E9","&raquo":"\xBB","&raquo;":"\xBB","&rarr;":"\u2192","&rarrap;":"\u2975","&rarrb;":"\u21E5","&rarrbfs;":"\u2920","&rarrc;":"\u2933","&rarrfs;":"\u291E","&rarrhk;":"\u21AA","&rarrlp;":"\u21AC","&rarrpl;":"\u2945","&rarrsim;":"\u2974","&rarrtl;":"\u21A3","&rarrw;":"\u219D","&ratail;":"\u291A","&ratio;":"\u2236","&rationals;":"\u211A","&rbarr;":"\u290D","&rbbrk;":"\u2773","&rbrace;":"}","&rbrack;":"]","&rbrke;":"\u298C","&rbrksld;":"\u298E","&rbrkslu;":"\u2990","&rcaron;":"\u0159","&rcedil;":"\u0157","&rceil;":"\u2309","&rcub;":"}","&rcy;":"\u0440","&rdca;":"\u2937","&rdldhar;":"\u2969","&rdquo;":"\u201D","&rdquor;":"\u201D","&rdsh;":"\u21B3","&real;":"\u211C","&realine;":"\u211B","&realpart;":"\u211C","&reals;":"\u211D","&rect;":"\u25AD","&reg":"\xAE","&reg;":"\xAE","&rfisht;":"\u297D","&rfloor;":"\u230B","&rfr;":"\u{1D52F}","&rhard;":"\u21C1","&rharu;":"\u21C0","&rharul;":"\u296C","&rho;":"\u03C1","&rhov;":"\u03F1","&rightarrow;":"\u2192","&rightarrowtail;":"\u21A3","&rightharpoondown;":"\u21C1","&rightharpoonup;":"\u21C0","&rightleftarrows;":"\u21C4","&rightleftharpoons;":"\u21CC","&rightrightarrows;":"\u21C9","&rightsquigarrow;":"\u219D","&rightthreetimes;":"\u22CC","&ring;":"\u02DA","&risingdotseq;":"\u2253","&rlarr;":"\u21C4","&rlhar;":"\u21CC","&rlm;":"\u200F","&rmoust;":"\u23B1","&rmoustache;":"\u23B1","&rnmid;":"\u2AEE","&roang;":"\u27ED","&roarr;":"\u21FE","&robrk;":"\u27E7","&ropar;":"\u2986","&ropf;":"\u{1D563}","&roplus;":"\u2A2E","&rotimes;":"\u2A35","&rpar;":")","&rpargt;":"\u2994","&rppolint;":"\u2A12","&rrarr;":"\u21C9","&rsaquo;":"\u203A","&rscr;":"\u{1D4C7}","&rsh;":"\u21B1","&rsqb;":"]","&rsquo;":"\u2019","&rsquor;":"\u2019","&rthree;":"\u22CC","&rtimes;":"\u22CA","&rtri;":"\u25B9","&rtrie;":"\u22B5","&rtrif;":"\u25B8","&rtriltri;":"\u29CE","&ruluhar;":"\u2968","&rx;":"\u211E","&sacute;":"\u015B","&sbquo;":"\u201A","&sc;":"\u227B","&scE;":"\u2AB4","&scap;":"\u2AB8","&scaron;":"\u0161","&sccue;":"\u227D","&sce;":"\u2AB0","&scedil;":"\u015F","&scirc;":"\u015D","&scnE;":"\u2AB6","&scnap;":"\u2ABA","&scnsim;":"\u22E9","&scpolint;":"\u2A13","&scsim;":"\u227F","&scy;":"\u0441","&sdot;":"\u22C5","&sdotb;":"\u22A1","&sdote;":"\u2A66","&seArr;":"\u21D8","&searhk;":"\u2925","&searr;":"\u2198","&searrow;":"\u2198","&sect":"\xA7","&sect;":"\xA7","&semi;":";","&seswar;":"\u2929","&setminus;":"\u2216","&setmn;":"\u2216","&sext;":"\u2736","&sfr;":"\u{1D530}","&sfrown;":"\u2322","&sharp;":"\u266F","&shchcy;":"\u0449","&shcy;":"\u0448","&shortmid;":"\u2223","&shortparallel;":"\u2225","&shy":"\xAD","&shy;":"\xAD","&sigma;":"\u03C3","&sigmaf;":"\u03C2","&sigmav;":"\u03C2","&sim;":"\u223C","&simdot;":"\u2A6A","&sime;":"\u2243","&simeq;":"\u2243","&simg;":"\u2A9E","&simgE;":"\u2AA0","&siml;":"\u2A9D","&simlE;":"\u2A9F","&simne;":"\u2246","&simplus;":"\u2A24","&simrarr;":"\u2972","&slarr;":"\u2190","&smallsetminus;":"\u2216","&smashp;":"\u2A33","&smeparsl;":"\u29E4","&smid;":"\u2223","&smile;":"\u2323","&smt;":"\u2AAA","&smte;":"\u2AAC","&smtes;":"\u2AAC\uFE00","&softcy;":"\u044C","&sol;":"/","&solb;":"\u29C4","&solbar;":"\u233F","&sopf;":"\u{1D564}","&spades;":"\u2660","&spadesuit;":"\u2660","&spar;":"\u2225","&sqcap;":"\u2293","&sqcaps;":"\u2293\uFE00","&sqcup;":"\u2294","&sqcups;":"\u2294\uFE00","&sqsub;":"\u228F","&sqsube;":"\u2291","&sqsubset;":"\u228F","&sqsubseteq;":"\u2291","&sqsup;":"\u2290","&sqsupe;":"\u2292","&sqsupset;":"\u2290","&sqsupseteq;":"\u2292","&squ;":"\u25A1","&square;":"\u25A1","&squarf;":"\u25AA","&squf;":"\u25AA","&srarr;":"\u2192","&sscr;":"\u{1D4C8}","&ssetmn;":"\u2216","&ssmile;":"\u2323","&sstarf;":"\u22C6","&star;":"\u2606","&starf;":"\u2605","&straightepsilon;":"\u03F5","&straightphi;":"\u03D5","&strns;":"\xAF","&sub;":"\u2282","&subE;":"\u2AC5","&subdot;":"\u2ABD","&sube;":"\u2286","&subedot;":"\u2AC3","&submult;":"\u2AC1","&subnE;":"\u2ACB","&subne;":"\u228A","&subplus;":"\u2ABF","&subrarr;":"\u2979","&subset;":"\u2282","&subseteq;":"\u2286","&subseteqq;":"\u2AC5","&subsetneq;":"\u228A","&subsetneqq;":"\u2ACB","&subsim;":"\u2AC7","&subsub;":"\u2AD5","&subsup;":"\u2AD3","&succ;":"\u227B","&succapprox;":"\u2AB8","&succcurlyeq;":"\u227D","&succeq;":"\u2AB0","&succnapprox;":"\u2ABA","&succneqq;":"\u2AB6","&succnsim;":"\u22E9","&succsim;":"\u227F","&sum;":"\u2211","&sung;":"\u266A","&sup1":"\xB9","&sup1;":"\xB9","&sup2":"\xB2","&sup2;":"\xB2","&sup3":"\xB3","&sup3;":"\xB3","&sup;":"\u2283","&supE;":"\u2AC6","&supdot;":"\u2ABE","&supdsub;":"\u2AD8","&supe;":"\u2287","&supedot;":"\u2AC4","&suphsol;":"\u27C9","&suphsub;":"\u2AD7","&suplarr;":"\u297B","&supmult;":"\u2AC2","&supnE;":"\u2ACC","&supne;":"\u228B","&supplus;":"\u2AC0","&supset;":"\u2283","&supseteq;":"\u2287","&supseteqq;":"\u2AC6","&supsetneq;":"\u228B","&supsetneqq;":"\u2ACC","&supsim;":"\u2AC8","&supsub;":"\u2AD4","&supsup;":"\u2AD6","&swArr;":"\u21D9","&swarhk;":"\u2926","&swarr;":"\u2199","&swarrow;":"\u2199","&swnwar;":"\u292A","&szlig":"\xDF","&szlig;":"\xDF","&target;":"\u2316","&tau;":"\u03C4","&tbrk;":"\u23B4","&tcaron;":"\u0165","&tcedil;":"\u0163","&tcy;":"\u0442","&tdot;":"\u20DB","&telrec;":"\u2315","&tfr;":"\u{1D531}","&there4;":"\u2234","&therefore;":"\u2234","&theta;":"\u03B8","&thetasym;":"\u03D1","&thetav;":"\u03D1","&thickapprox;":"\u2248","&thicksim;":"\u223C","&thinsp;":"\u2009","&thkap;":"\u2248","&thksim;":"\u223C","&thorn":"\xFE","&thorn;":"\xFE","&tilde;":"\u02DC","&times":"\xD7","&times;":"\xD7","&timesb;":"\u22A0","&timesbar;":"\u2A31","&timesd;":"\u2A30","&tint;":"\u222D","&toea;":"\u2928","&top;":"\u22A4","&topbot;":"\u2336","&topcir;":"\u2AF1","&topf;":"\u{1D565}","&topfork;":"\u2ADA","&tosa;":"\u2929","&tprime;":"\u2034","&trade;":"\u2122","&triangle;":"\u25B5","&triangledown;":"\u25BF","&triangleleft;":"\u25C3","&trianglelefteq;":"\u22B4","&triangleq;":"\u225C","&triangleright;":"\u25B9","&trianglerighteq;":"\u22B5","&tridot;":"\u25EC","&trie;":"\u225C","&triminus;":"\u2A3A","&triplus;":"\u2A39","&trisb;":"\u29CD","&tritime;":"\u2A3B","&trpezium;":"\u23E2","&tscr;":"\u{1D4C9}","&tscy;":"\u0446","&tshcy;":"\u045B","&tstrok;":"\u0167","&twixt;":"\u226C","&twoheadleftarrow;":"\u219E","&twoheadrightarrow;":"\u21A0","&uArr;":"\u21D1","&uHar;":"\u2963","&uacute":"\xFA","&uacute;":"\xFA","&uarr;":"\u2191","&ubrcy;":"\u045E","&ubreve;":"\u016D","&ucirc":"\xFB","&ucirc;":"\xFB","&ucy;":"\u0443","&udarr;":"\u21C5","&udblac;":"\u0171","&udhar;":"\u296E","&ufisht;":"\u297E","&ufr;":"\u{1D532}","&ugrave":"\xF9","&ugrave;":"\xF9","&uharl;":"\u21BF","&uharr;":"\u21BE","&uhblk;":"\u2580","&ulcorn;":"\u231C","&ulcorner;":"\u231C","&ulcrop;":"\u230F","&ultri;":"\u25F8","&umacr;":"\u016B","&uml":"\xA8","&uml;":"\xA8","&uogon;":"\u0173","&uopf;":"\u{1D566}","&uparrow;":"\u2191","&updownarrow;":"\u2195","&upharpoonleft;":"\u21BF","&upharpoonright;":"\u21BE","&uplus;":"\u228E","&upsi;":"\u03C5","&upsih;":"\u03D2","&upsilon;":"\u03C5","&upuparrows;":"\u21C8","&urcorn;":"\u231D","&urcorner;":"\u231D","&urcrop;":"\u230E","&uring;":"\u016F","&urtri;":"\u25F9","&uscr;":"\u{1D4CA}","&utdot;":"\u22F0","&utilde;":"\u0169","&utri;":"\u25B5","&utrif;":"\u25B4","&uuarr;":"\u21C8","&uuml":"\xFC","&uuml;":"\xFC","&uwangle;":"\u29A7","&vArr;":"\u21D5","&vBar;":"\u2AE8","&vBarv;":"\u2AE9","&vDash;":"\u22A8","&vangrt;":"\u299C","&varepsilon;":"\u03F5","&varkappa;":"\u03F0","&varnothing;":"\u2205","&varphi;":"\u03D5","&varpi;":"\u03D6","&varpropto;":"\u221D","&varr;":"\u2195","&varrho;":"\u03F1","&varsigma;":"\u03C2","&varsubsetneq;":"\u228A\uFE00","&varsubsetneqq;":"\u2ACB\uFE00","&varsupsetneq;":"\u228B\uFE00","&varsupsetneqq;":"\u2ACC\uFE00","&vartheta;":"\u03D1","&vartriangleleft;":"\u22B2","&vartriangleright;":"\u22B3","&vcy;":"\u0432","&vdash;":"\u22A2","&vee;":"\u2228","&veebar;":"\u22BB","&veeeq;":"\u225A","&vellip;":"\u22EE","&verbar;":"|","&vert;":"|","&vfr;":"\u{1D533}","&vltri;":"\u22B2","&vnsub;":"\u2282\u20D2","&vnsup;":"\u2283\u20D2","&vopf;":"\u{1D567}","&vprop;":"\u221D","&vrtri;":"\u22B3","&vscr;":"\u{1D4CB}","&vsubnE;":"\u2ACB\uFE00","&vsubne;":"\u228A\uFE00","&vsupnE;":"\u2ACC\uFE00","&vsupne;":"\u228B\uFE00","&vzigzag;":"\u299A","&wcirc;":"\u0175","&wedbar;":"\u2A5F","&wedge;":"\u2227","&wedgeq;":"\u2259","&weierp;":"\u2118","&wfr;":"\u{1D534}","&wopf;":"\u{1D568}","&wp;":"\u2118","&wr;":"\u2240","&wreath;":"\u2240","&wscr;":"\u{1D4CC}","&xcap;":"\u22C2","&xcirc;":"\u25EF","&xcup;":"\u22C3","&xdtri;":"\u25BD","&xfr;":"\u{1D535}","&xhArr;":"\u27FA","&xharr;":"\u27F7","&xi;":"\u03BE","&xlArr;":"\u27F8","&xlarr;":"\u27F5","&xmap;":"\u27FC","&xnis;":"\u22FB","&xodot;":"\u2A00","&xopf;":"\u{1D569}","&xoplus;":"\u2A01","&xotime;":"\u2A02","&xrArr;":"\u27F9","&xrarr;":"\u27F6","&xscr;":"\u{1D4CD}","&xsqcup;":"\u2A06","&xuplus;":"\u2A04","&xutri;":"\u25B3","&xvee;":"\u22C1","&xwedge;":"\u22C0","&yacute":"\xFD","&yacute;":"\xFD","&yacy;":"\u044F","&ycirc;":"\u0177","&ycy;":"\u044B","&yen":"\xA5","&yen;":"\xA5","&yfr;":"\u{1D536}","&yicy;":"\u0457","&yopf;":"\u{1D56A}","&yscr;":"\u{1D4CE}","&yucy;":"\u044E","&yuml":"\xFF","&yuml;":"\xFF","&zacute;":"\u017A","&zcaron;":"\u017E","&zcy;":"\u0437","&zdot;":"\u017C","&zeetrf;":"\u2128","&zeta;":"\u03B6","&zfr;":"\u{1D537}","&zhcy;":"\u0436","&zigrarr;":"\u21DD","&zopf;":"\u{1D56B}","&zscr;":"\u{1D4CF}","&zwj;":"\u200D","&zwnj;":"\u200C"},Bn=sd;function ad(t){return t.replace(/&(#\d+|#x[a-f0-9]+|[a-z]+\d*);?/gi,(e,r)=>{if(typeof Bn[e]=="string")return Bn[e];if(r.charAt(0)!=="#"||e.charAt(e.length-1)!==";")return e;let n;r.charAt(1)==="x"?n=parseInt(r.substr(2),16):n=parseInt(r.substr(1),10);let i="";return n>=55296&&n<=57343||n>1114111?"\uFFFD":(n>65535&&(n-=65536,i+=String.fromCharCode(n>>>10&1023|55296),n=56320|n&1023),i+=String.fromCharCode(n),i)})}function bt(t){return t.trim().replace(/[<>"'?&]/g,e=>{let r=e.charCodeAt(0).toString(16);return r.length<2&&(r="0"+r),"&#x"+r.toUpperCase()+";"})}function xo(t){return"<div>"+bt(t).replace(/\n/g,"<br />")+"</div>"}function Ao(t){return t=t.replace(/\r?\n/g,"").replace(/<\!\-\-.*?\-\->/gi," ").replace(/<br\b[^>]*>/gi,`
164
163
  `).replace(/<\/?(p|div|table|tr|td|th)\b[^>]*>/gi,`
165
164
 
166
165
  `).replace(/<script\b[^>]*>.*?<\/script\b[^>]*>/gi," ").replace(/^.*<body\b[^>]*>/i,"").replace(/^.*<\/head\b[^>]*>/i,"").replace(/^.*<\!doctype\b[^>]*>/i,"").replace(/<\/body\b[^>]*>.*$/i,"").replace(/<\/html\b[^>]*>.*$/i,"").replace(/<a\b[^>]*href\s*=\s*["']?([^\s"']+)[^>]*>/gi," ($1) ").replace(/<\/?(span|em|i|strong|b|u|a)\b[^>]*>/gi,"").replace(/<li\b[^>]*>[\n\u0001\s]*/gi,"* ").replace(/<hr\b[^>]*>/g,`
@@ -170,59 +169,59 @@ ${a}
170
169
 
171
170
  `).replace(/^\n+/,`
172
171
  `).replace(/\n+$/,`
173
- `),e=R2(e),e}function kd(e){return[].concat(e.name||[]).concat(e.name?`<${e.address}>`:e.address).join(" ")}function Eu(e){let t=[],r=(i,n)=>{if(n&&t.push(", "),i.group){let o=`${i.name}:`,s=";";t.push(o),i.group.forEach(r),t.push(s)}else t.push(kd(i))};return e.forEach(r),t.join("")}function Ad(e){return`<a href="mailto:${Jt(e.address)}" class="postal-email-address">${Jt(e.name||`<${e.address}>`)}</a>`}function Pu(e){let t=[],r=(i,n)=>{if(n&&t.push('<span class="postal-email-address-separator">, </span>'),i.group){let o=`<span class="postal-email-address-group">${Jt(i.name)}:</span>`,s='<span class="postal-email-address-group">;</span>';t.push(o),i.group.forEach(r),t.push(s)}else t.push(Ad(i))};return e.forEach(r),t.join(" ")}function M2(e,t,r){e=(e||"").toString(),t=t||76;let i=0,n=e.length,o="",s,a;for(;i<n;){if(s=e.substr(i,t),s.length<t){o+=s;break}if(a=s.match(/^[^\n\r]*(\r?\n|\r)/)){s=a[0],o+=s,i+=s.length;continue}else(a=s.match(/(\s+)[^\s]*$/))&&a[0].length-(r?(a[1]||"").length:0)<s.length?s=s.substr(0,s.length-(a[0].length-(r?(a[1]||"").length:0))):(a=e.substr(i+s.length).match(/^[^\s]+(\s*)/))&&(s=s+a[0].substr(0,a[0].length-(r?0:(a[1]||"").length)));o+=s,i+=s.length,i<n&&(o+=`\r
174
- `)}return o}function Tu(e){let t=[];if(e.from&&t.push({key:"From",val:kd(e.from)}),e.subject&&t.push({key:"Subject",val:e.subject}),e.date){let s={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1},a=typeof Intl>"u"?e.date:new Intl.DateTimeFormat("default",s).format(new Date(e.date));t.push({key:"Date",val:a})}e.to&&e.to.length&&t.push({key:"To",val:Eu(e.to)}),e.cc&&e.cc.length&&t.push({key:"Cc",val:Eu(e.cc)}),e.bcc&&e.bcc.length&&t.push({key:"Bcc",val:Eu(e.bcc)});let r=t.map(s=>s.key.length).reduce((s,a)=>a>s?a:s,0);t=t.flatMap(s=>{let a=r-s.key.length,u=`${s.key}: ${" ".repeat(a)}`,d=`${" ".repeat(s.key.length+1)} ${" ".repeat(a)}`;return M2(s.val,80,!0).split(/\r?\n/).map(c=>c.trim()).map((c,m)=>`${m?d:u}${c}`)});let i=t.map(s=>s.length).reduce((s,a)=>a>s?a:s,0),n="-".repeat(i);return`
175
- ${n}
176
- ${t.join(`
172
+ `),t=ad(t),t}function ko(t){return[].concat(t.name||[]).concat(t.name?`<${t.address}>`:t.address).join(" ")}function Nn(t){let e=[],r=(n,i)=>{if(i&&e.push(", "),n.group){let o=`${n.name}:`,s=";";e.push(o),n.group.forEach(r),e.push(s)}else e.push(ko(n))};return t.forEach(r),e.join("")}function $o(t){return`<a href="mailto:${bt(t.address)}" class="postal-email-address">${bt(t.name||`<${t.address}>`)}</a>`}function Hn(t){let e=[],r=(n,i)=>{if(i&&e.push('<span class="postal-email-address-separator">, </span>'),n.group){let o=`<span class="postal-email-address-group">${bt(n.name)}:</span>`,s='<span class="postal-email-address-group">;</span>';e.push(o),n.group.forEach(r),e.push(s)}else e.push($o(n))};return t.forEach(r),e.join(" ")}function ld(t,e,r){t=(t||"").toString(),e=e||76;let n=0,i=t.length,o="",s,a;for(;n<i;){if(s=t.substr(n,e),s.length<e){o+=s;break}if(a=s.match(/^[^\n\r]*(\r?\n|\r)/)){s=a[0],o+=s,n+=s.length;continue}else(a=s.match(/(\s+)[^\s]*$/))&&a[0].length-(r?(a[1]||"").length:0)<s.length?s=s.substr(0,s.length-(a[0].length-(r?(a[1]||"").length:0))):(a=t.substr(n+s.length).match(/^[^\s]+(\s*)/))&&(s=s+a[0].substr(0,a[0].length-(r?0:(a[1]||"").length)));o+=s,n+=s.length,n<i&&(o+=`\r
173
+ `)}return o}function Ln(t){let e=[];if(t.from&&e.push({key:"From",val:ko(t.from)}),t.subject&&e.push({key:"Subject",val:t.subject}),t.date){let s={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1},a=typeof Intl>"u"?t.date:new Intl.DateTimeFormat("default",s).format(new Date(t.date));e.push({key:"Date",val:a})}t.to&&t.to.length&&e.push({key:"To",val:Nn(t.to)}),t.cc&&t.cc.length&&e.push({key:"Cc",val:Nn(t.cc)}),t.bcc&&t.bcc.length&&e.push({key:"Bcc",val:Nn(t.bcc)});let r=e.map(s=>s.key.length).reduce((s,a)=>a>s?a:s,0);e=e.flatMap(s=>{let a=r-s.key.length,l=`${s.key}: ${" ".repeat(a)}`,d=`${" ".repeat(s.key.length+1)} ${" ".repeat(a)}`;return ld(s.val,80,!0).split(/\r?\n/).map(u=>u.trim()).map((u,m)=>`${m?d:l}${u}`)});let n=e.map(s=>s.length).reduce((s,a)=>a>s?a:s,0),i="-".repeat(n);return`
174
+ ${i}
175
+ ${e.join(`
177
176
  `)}
178
- ${n}
179
- `}function Iu(e){let t=[];if(e.from&&t.push(`<div class="postal-email-header-key">From</div><div class="postal-email-header-value">${Ad(e.from)}</div>`),e.subject&&t.push(`<div class="postal-email-header-key">Subject</div><div class="postal-email-header-value postal-email-header-subject">${Jt(e.subject)}</div>`),e.date){let i={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1},n=typeof Intl>"u"?e.date:new Intl.DateTimeFormat("default",i).format(new Date(e.date));t.push(`<div class="postal-email-header-key">Date</div><div class="postal-email-header-value postal-email-header-date" data-date="${Jt(e.date)}">${Jt(n)}</div>`)}return e.to&&e.to.length&&t.push(`<div class="postal-email-header-key">To</div><div class="postal-email-header-value">${Pu(e.to)}</div>`),e.cc&&e.cc.length&&t.push(`<div class="postal-email-header-key">Cc</div><div class="postal-email-header-value">${Pu(e.cc)}</div>`),e.bcc&&e.bcc.length&&t.push(`<div class="postal-email-header-key">Bcc</div><div class="postal-email-header-value">${Pu(e.bcc)}</div>`),`<div class="postal-email-header">${t.length?'<div class="postal-email-header-row">':""}${t.join(`</div>
180
- <div class="postal-email-header-row">`)}${t.length?"</div>":""}</div>`}function z2(e,t){let r=!1,i="text",n,o=[],s={address:[],comment:[],group:[],text:[],textWasQuoted:[]},a,u,d=!1;for(a=0,u=e.length;a<u;a++){let l=e[a],c=a?e[a-1]:null;if(l.type==="operator")switch(l.value){case"<":i="address",d=!1;break;case"(":i="comment",d=!1;break;case":":i="group",r=!0,d=!1;break;case'"':d=!d,i="text";break;default:i="text",d=!1;break}else l.value&&(i==="address"&&(l.value=l.value.replace(/^[^<]*<\s*/,"")),c&&c.noBreak&&s[i].length?(s[i][s[i].length-1]+=l.value,i==="text"&&d&&(s.textWasQuoted[s.textWasQuoted.length-1]=!0)):(s[i].push(l.value),i==="text"&&s.textWasQuoted.push(d)))}if(!s.text.length&&s.comment.length&&(s.text=s.comment,s.comment=[]),r){s.text=s.text.join(" ");let l=[];s.group.length&&ju(s.group.join(","),{_depth:t+1}).forEach(m=>{m.group?l=l.concat(m.group):l.push(m)}),o.push({name:zt(s.text||n&&n.name),group:l})}else{if(!s.address.length&&s.text.length){for(a=s.text.length-1;a>=0;a--)if(!s.textWasQuoted[a]&&s.text[a].match(/^[^@\s]+@[^@\s]+$/)){s.address=s.text.splice(a,1),s.textWasQuoted.splice(a,1);break}let l=function(c){return s.address.length?c:(s.address=[c.trim()]," ")};if(!s.address.length)for(a=s.text.length-1;a>=0&&!(!s.textWasQuoted[a]&&(s.text[a]=s.text[a].replace(/\s*\b[^@\s]+@[^\s]+\b\s*/,l).trim(),s.address.length));a--);}if(!s.text.length&&s.comment.length&&(s.text=s.comment,s.comment=[]),s.address.length>1&&(s.text=s.text.concat(s.address.splice(1))),s.text=s.text.join(" "),s.address=s.address.join(" "),!s.address&&/^=\?[^=]+?=$/.test(s.text.trim())){let l=zt(s.text);if(/<[^<>]+@[^<>]+>/.test(l)){let c=ju(l);if(c&&c.length)return c}return[{address:"",name:l}]}n={address:s.address||s.text||"",name:zt(s.text||s.address||"")},n.address===n.name&&((n.address||"").match(/@/)?n.name="":n.address=""),o.push(n)}return o}var $u=class{constructor(t){this.str=(t||"").toString(),this.operatorCurrent="",this.operatorExpecting="",this.node=null,this.escaped=!1,this.list=[],this.operators={'"':'"',"(":")","<":">",",":"",":":";",";":""}}tokenize(){let t=[];for(let r=0,i=this.str.length;r<i;r++){let n=this.str.charAt(r),o=r<i-1?this.str.charAt(r+1):null;this.checkChar(n,o)}return this.list.forEach(r=>{r.value=(r.value||"").toString().trim(),r.value&&t.push(r)}),t}checkChar(t,r){if(!this.escaped){if(t===this.operatorExpecting){this.node={type:"operator",value:t},r&&![" "," ","\r",`
181
- `,",",";"].includes(r)&&(this.node.noBreak=!0),this.list.push(this.node),this.node=null,this.operatorExpecting="",this.escaped=!1;return}else if(!this.operatorExpecting&&t in this.operators){this.node={type:"operator",value:t},this.list.push(this.node),this.node=null,this.operatorExpecting=this.operators[t],this.escaped=!1;return}else if(this.operatorExpecting==='"'&&t==="\\"){this.escaped=!0;return}}this.node||(this.node={type:"text",value:""},this.list.push(this.node)),t===`
182
- `&&(t=" "),(t.charCodeAt(0)>=33||[" "," "].includes(t))&&(this.node.value+=t),this.escaped=!1}},J2=50;function ju(e,t){t=t||{};let r=t._depth||0;if(r>J2)return[];let n=new $u(e).tokenize(),o=[],s=[],a=[];if(n.forEach(u=>{u.type==="operator"&&(u.value===","||u.value===";")?(s.length&&o.push(s),s=[]):s.push(u)}),s.length&&o.push(s),o.forEach(u=>{u=z2(u,r),u.length&&(a=a.concat(u))}),t.flatten){let u=[],d=l=>{l.forEach(c=>{if(c.group)return d(c.group);u.push(c)})};return d(a),u}return a}var Oi=ju;function Ed(e){for(var t="",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",i=new Uint8Array(e),n=i.byteLength,o=n%3,s=n-o,a,u,d,l,c,m=0;m<s;m=m+3)c=i[m]<<16|i[m+1]<<8|i[m+2],a=(c&16515072)>>18,u=(c&258048)>>12,d=(c&4032)>>6,l=c&63,t+=r[a]+r[u]+r[d]+r[l];return o==1?(c=i[s],a=(c&252)>>2,u=(c&3)<<4,t+=r[a]+r[u]+"=="):o==2&&(c=i[s]<<8|i[s+1],a=(c&64512)>>10,u=(c&1008)>>4,d=(c&15)<<2,t+=r[a]+r[u]+r[d]+"="),t}var F2=256,H2=2*1024*1024;function Du(e){return e.replace(/-(.)/g,(t,r)=>r.toUpperCase())}var Wr=class e{static parse(t,r){return new e(r).parse(t)}constructor(t){this.options=t||{},this.mimeOptions={maxNestingDepth:this.options.maxNestingDepth||F2,maxHeadersSize:this.options.maxHeadersSize||H2},this.root=this.currentNode=new ur({postalMime:this,...this.mimeOptions}),this.boundaries=[],this.textContent={},this.attachments=[],this.attachmentEncoding=(this.options.attachmentEncoding||"").toString().replace(/[-_\s]/g,"").trim().toLowerCase()||"arraybuffer",this.started=!1}async finalize(){await this.root.finalize()}async processLine(t,r){let i=this.boundaries;if(i.length&&t.length>2&&t[0]===45&&t[1]===45)for(let n=i.length-1;n>=0;n--){let o=i[n];if(t.length<o.value.length+2)continue;let s=!0;for(let l=0;l<o.value.length;l++)if(t[l+2]!==o.value[l]){s=!1;break}if(!s)continue;let a=o.value.length+2,u=!1;t.length>=o.value.length+4&&t[o.value.length+2]===45&&t[o.value.length+3]===45&&(u=!0,a=o.value.length+4);let d=!0;for(let l=a;l<t.length;l++)if(t[l]!==32&&t[l]!==9){d=!1;break}if(d)return u?(await o.node.finalize(),this.currentNode=o.node.parentNode||this.root):(await o.node.finalizeChildNodes(),this.currentNode=new ur({postalMime:this,parentNode:o.node,parentMultipartType:o.node.contentType.multipart,...this.mimeOptions})),r?this.finalize():void 0}if(this.currentNode.feed(t),r)return this.finalize()}readLine(){let t=this.readPos,r=this.readPos;for(;this.readPos<this.av.length;){let i=this.av[this.readPos++];if(i!==13&&i!==10&&(r=this.readPos),i===10)return{bytes:new Uint8Array(this.buf,t,r-t),done:this.readPos>=this.av.length}}return{bytes:new Uint8Array(this.buf,t,r-t),done:this.readPos>=this.av.length}}async processNodeTree(){let t={},r=new Set,i=this.textMap=new Map,n=this.forceRfc822Attachments(),o=async(s,a,u)=>{if(a=a||!1,u=u||!1,s.contentType.multipart)s.contentType.multipart==="alternative"?a=s:s.contentType.multipart==="related"&&(u=s);else if(this.isInlineMessageRfc822(s)&&!n){let d=new e;s.subMessage=await d.parse(s.content),i.has(s)||i.set(s,{});let l=i.get(s);(s.subMessage.text||!s.subMessage.html)&&(l.plain=l.plain||[],l.plain.push({type:"subMessage",value:s.subMessage}),r.add("plain")),s.subMessage.html&&(l.html=l.html||[],l.html.push({type:"subMessage",value:s.subMessage}),r.add("html")),d.textMap&&d.textMap.forEach((c,m)=>{i.set(m,c)});for(let c of s.subMessage.attachments||[])this.attachments.push(c)}else if(this.isInlineTextNode(s)){let d=s.contentType.parsed.value.substr(s.contentType.parsed.value.indexOf("/")+1),l=a||s;i.has(l)||i.set(l,{});let c=i.get(l);c[d]=c[d]||[],c[d].push({type:"text",value:s.getTextContent()}),r.add(d)}else if(s.content){let d=s.contentDisposition?.parsed?.params?.filename||s.contentType.parsed.params.name||null,l={filename:d?zt(d):null,mimeType:s.contentType.parsed.value,disposition:s.contentDisposition?.parsed?.value||null};switch(u&&s.contentId&&(l.related=!0),s.contentDescription&&(l.description=s.contentDescription),s.contentId&&(l.contentId=s.contentId),s.contentType.parsed.value){case"text/calendar":case"application/ics":{s.contentType.parsed.params.method&&(l.method=s.contentType.parsed.params.method.toString().toUpperCase().trim());let c=s.getTextContent().replace(/\r?\n/g,`
177
+ ${i}
178
+ `}function Gn(t){let e=[];if(t.from&&e.push(`<div class="postal-email-header-key">From</div><div class="postal-email-header-value">${$o(t.from)}</div>`),t.subject&&e.push(`<div class="postal-email-header-key">Subject</div><div class="postal-email-header-value postal-email-header-subject">${bt(t.subject)}</div>`),t.date){let n={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!1},i=typeof Intl>"u"?t.date:new Intl.DateTimeFormat("default",n).format(new Date(t.date));e.push(`<div class="postal-email-header-key">Date</div><div class="postal-email-header-value postal-email-header-date" data-date="${bt(t.date)}">${bt(i)}</div>`)}return t.to&&t.to.length&&e.push(`<div class="postal-email-header-key">To</div><div class="postal-email-header-value">${Hn(t.to)}</div>`),t.cc&&t.cc.length&&e.push(`<div class="postal-email-header-key">Cc</div><div class="postal-email-header-value">${Hn(t.cc)}</div>`),t.bcc&&t.bcc.length&&e.push(`<div class="postal-email-header-key">Bcc</div><div class="postal-email-header-value">${Hn(t.bcc)}</div>`),`<div class="postal-email-header">${e.length?'<div class="postal-email-header-row">':""}${e.join(`</div>
179
+ <div class="postal-email-header-row">`)}${e.length?"</div>":""}</div>`}function cd(t,e){let r=!1,n="text",i,o=[],s={address:[],comment:[],group:[],text:[],textWasQuoted:[]},a,l,d=!1;for(a=0,l=t.length;a<l;a++){let c=t[a],u=a?t[a-1]:null;if(c.type==="operator")switch(c.value){case"<":n="address",d=!1;break;case"(":n="comment",d=!1;break;case":":n="group",r=!0,d=!1;break;case'"':d=!d,n="text";break;default:n="text",d=!1;break}else c.value&&(n==="address"&&(c.value=c.value.replace(/^[^<]*<\s*/,"")),u&&u.noBreak&&s[n].length?(s[n][s[n].length-1]+=c.value,n==="text"&&d&&(s.textWasQuoted[s.textWasQuoted.length-1]=!0)):(s[n].push(c.value),n==="text"&&s.textWasQuoted.push(d)))}if(!s.text.length&&s.comment.length&&(s.text=s.comment,s.comment=[]),r){s.text=s.text.join(" ");let c=[];s.group.length&&qn(s.group.join(","),{_depth:e+1}).forEach(m=>{m.group?c=c.concat(m.group):c.push(m)}),o.push({name:gt(s.text||i&&i.name),group:c})}else{if(!s.address.length&&s.text.length){for(a=s.text.length-1;a>=0;a--)if(!s.textWasQuoted[a]&&s.text[a].match(/^[^@\s]+@[^@\s]+$/)){s.address=s.text.splice(a,1),s.textWasQuoted.splice(a,1);break}let c=function(u){return s.address.length?u:(s.address=[u.trim()]," ")};if(!s.address.length)for(a=s.text.length-1;a>=0&&!(!s.textWasQuoted[a]&&(s.text[a]=s.text[a].replace(/\s*\b[^@\s]+@[^\s]+\b\s*/,c).trim(),s.address.length));a--);}if(!s.text.length&&s.comment.length&&(s.text=s.comment,s.comment=[]),s.address.length>1&&(s.text=s.text.concat(s.address.splice(1))),s.text=s.text.join(" "),s.address=s.address.join(" "),!s.address&&/^=\?[^=]+?=$/.test(s.text.trim())){let c=gt(s.text);if(/<[^<>]+@[^<>]+>/.test(c)){let u=qn(c);if(u&&u.length)return u}return[{address:"",name:c}]}i={address:s.address||s.text||"",name:gt(s.text||s.address||"")},i.address===i.name&&((i.address||"").match(/@/)?i.name="":i.address=""),o.push(i)}return o}var Mn=class{constructor(e){this.str=(e||"").toString(),this.operatorCurrent="",this.operatorExpecting="",this.node=null,this.escaped=!1,this.list=[],this.operators={'"':'"',"(":")","<":">",",":"",":":";",";":""}}tokenize(){let e=[];for(let r=0,n=this.str.length;r<n;r++){let i=this.str.charAt(r),o=r<n-1?this.str.charAt(r+1):null;this.checkChar(i,o)}return this.list.forEach(r=>{r.value=(r.value||"").toString().trim(),r.value&&e.push(r)}),e}checkChar(e,r){if(!this.escaped){if(e===this.operatorExpecting){this.node={type:"operator",value:e},r&&![" "," ","\r",`
180
+ `,",",";"].includes(r)&&(this.node.noBreak=!0),this.list.push(this.node),this.node=null,this.operatorExpecting="",this.escaped=!1;return}else if(!this.operatorExpecting&&e in this.operators){this.node={type:"operator",value:e},this.list.push(this.node),this.node=null,this.operatorExpecting=this.operators[e],this.escaped=!1;return}else if(this.operatorExpecting==='"'&&e==="\\"){this.escaped=!0;return}}this.node||(this.node={type:"text",value:""},this.list.push(this.node)),e===`
181
+ `&&(e=" "),(e.charCodeAt(0)>=33||[" "," "].includes(e))&&(this.node.value+=e),this.escaped=!1}},ud=50;function qn(t,e){e=e||{};let r=e._depth||0;if(r>ud)return[];let i=new Mn(t).tokenize(),o=[],s=[],a=[];if(i.forEach(l=>{l.type==="operator"&&(l.value===","||l.value===";")?(s.length&&o.push(s),s=[]):s.push(l)}),s.length&&o.push(s),o.forEach(l=>{l=cd(l,r),l.length&&(a=a.concat(l))}),e.flatten){let l=[],d=c=>{c.forEach(u=>{if(u.group)return d(u.group);l.push(u)})};return d(a),l}return a}var Dr=qn;function Eo(t){for(var e="",r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=new Uint8Array(t),i=n.byteLength,o=i%3,s=i-o,a,l,d,c,u,m=0;m<s;m=m+3)u=n[m]<<16|n[m+1]<<8|n[m+2],a=(u&16515072)>>18,l=(u&258048)>>12,d=(u&4032)>>6,c=u&63,e+=r[a]+r[l]+r[d]+r[c];return o==1?(u=n[s],a=(u&252)>>2,l=(u&3)<<4,e+=r[a]+r[l]+"=="):o==2&&(u=n[s]<<8|n[s+1],a=(u&64512)>>10,l=(u&1008)>>4,d=(u&15)<<2,e+=r[a]+r[l]+r[d]+"="),e}var dd=256,md=2*1024*1024;function Un(t){return t.replace(/-(.)/g,(e,r)=>r.toUpperCase())}var rr=class t{static parse(e,r){return new t(r).parse(e)}constructor(e){this.options=e||{},this.mimeOptions={maxNestingDepth:this.options.maxNestingDepth||dd,maxHeadersSize:this.options.maxHeadersSize||md},this.root=this.currentNode=new $t({postalMime:this,...this.mimeOptions}),this.boundaries=[],this.textContent={},this.attachments=[],this.attachmentEncoding=(this.options.attachmentEncoding||"").toString().replace(/[-_\s]/g,"").trim().toLowerCase()||"arraybuffer",this.started=!1}async finalize(){await this.root.finalize()}async processLine(e,r){let n=this.boundaries;if(n.length&&e.length>2&&e[0]===45&&e[1]===45)for(let i=n.length-1;i>=0;i--){let o=n[i];if(e.length<o.value.length+2)continue;let s=!0;for(let c=0;c<o.value.length;c++)if(e[c+2]!==o.value[c]){s=!1;break}if(!s)continue;let a=o.value.length+2,l=!1;e.length>=o.value.length+4&&e[o.value.length+2]===45&&e[o.value.length+3]===45&&(l=!0,a=o.value.length+4);let d=!0;for(let c=a;c<e.length;c++)if(e[c]!==32&&e[c]!==9){d=!1;break}if(d)return l?(await o.node.finalize(),this.currentNode=o.node.parentNode||this.root):(await o.node.finalizeChildNodes(),this.currentNode=new $t({postalMime:this,parentNode:o.node,parentMultipartType:o.node.contentType.multipart,...this.mimeOptions})),r?this.finalize():void 0}if(this.currentNode.feed(e),r)return this.finalize()}readLine(){let e=this.readPos,r=this.readPos;for(;this.readPos<this.av.length;){let n=this.av[this.readPos++];if(n!==13&&n!==10&&(r=this.readPos),n===10)return{bytes:new Uint8Array(this.buf,e,r-e),done:this.readPos>=this.av.length}}return{bytes:new Uint8Array(this.buf,e,r-e),done:this.readPos>=this.av.length}}async processNodeTree(){let e={},r=new Set,n=this.textMap=new Map,i=this.forceRfc822Attachments(),o=async(s,a,l)=>{if(a=a||!1,l=l||!1,s.contentType.multipart)s.contentType.multipart==="alternative"?a=s:s.contentType.multipart==="related"&&(l=s);else if(this.isInlineMessageRfc822(s)&&!i){let d=new t;s.subMessage=await d.parse(s.content),n.has(s)||n.set(s,{});let c=n.get(s);(s.subMessage.text||!s.subMessage.html)&&(c.plain=c.plain||[],c.plain.push({type:"subMessage",value:s.subMessage}),r.add("plain")),s.subMessage.html&&(c.html=c.html||[],c.html.push({type:"subMessage",value:s.subMessage}),r.add("html")),d.textMap&&d.textMap.forEach((u,m)=>{n.set(m,u)});for(let u of s.subMessage.attachments||[])this.attachments.push(u)}else if(this.isInlineTextNode(s)){let d=s.contentType.parsed.value.substr(s.contentType.parsed.value.indexOf("/")+1),c=a||s;n.has(c)||n.set(c,{});let u=n.get(c);u[d]=u[d]||[],u[d].push({type:"text",value:s.getTextContent()}),r.add(d)}else if(s.content){let d=s.contentDisposition?.parsed?.params?.filename||s.contentType.parsed.params.name||null,c={filename:d?gt(d):null,mimeType:s.contentType.parsed.value,disposition:s.contentDisposition?.parsed?.value||null};switch(l&&s.contentId&&(c.related=!0),s.contentDescription&&(c.description=s.contentDescription),s.contentId&&(c.contentId=s.contentId),s.contentType.parsed.value){case"text/calendar":case"application/ics":{s.contentType.parsed.params.method&&(c.method=s.contentType.parsed.params.method.toString().toUpperCase().trim());let u=s.getTextContent().replace(/\r?\n/g,`
183
182
  `).replace(/\n*$/,`
184
- `);l.content=St.encode(c);break}default:l.content=s.content}this.attachments.push(l)}for(let d of s.childNodes)await o(d,a,u)};await o(this.root,!1,!1),i.forEach(s=>{r.forEach(a=>{if(t[a]||(t[a]=[]),s[a])s[a].forEach(u=>{switch(u.type){case"text":t[a].push(u.value);break;case"subMessage":switch(a){case"html":t[a].push(Iu(u.value));break;case"plain":t[a].push(Tu(u.value));break}break}});else{let u;switch(a){case"html":u="plain";break;case"plain":u="html";break}(s[u]||[]).forEach(d=>{switch(d.type){case"text":switch(a){case"html":t[a].push(wd(d.value));break;case"plain":t[a].push(xd(d.value));break}break;case"subMessage":switch(a){case"html":t[a].push(Iu(d.value));break;case"plain":t[a].push(Tu(d.value));break}break}})}})}),Object.keys(t).forEach(s=>{t[s]=t[s].join(`
185
- `)}),this.textContent=t}isInlineTextNode(t){if(t.contentDisposition?.parsed?.value==="attachment")return!1;switch(t.contentType.parsed?.value){case"text/html":case"text/plain":return!0;default:return!1}}isInlineMessageRfc822(t){return t.contentType.parsed?.value!=="message/rfc822"?!1:(t.contentDisposition?.parsed?.value||(this.options.rfc822Attachments?"attachment":"inline"))==="inline"}forceRfc822Attachments(){if(this.options.forceRfc822Attachments)return!0;let t=!1,r=i=>{i.contentType.multipart||i.contentType.parsed&&["message/delivery-status","message/feedback-report"].includes(i.contentType.parsed.value)&&(t=!0);for(let n of i.childNodes)r(n)};return r(this.root),t}async resolveStream(t){let r=0,i=[],n=t.getReader();for(;;){let{done:a,value:u}=await n.read();if(a)break;i.push(u),r+=u.length}let o=new Uint8Array(r),s=0;for(let a of i)o.set(a,s),s+=a.length;return o}async parse(t){if(this.started)throw new Error("Can not reuse parser, create a new PostalMime object");for(this.started=!0,t&&typeof t.getReader=="function"&&(t=await this.resolveStream(t)),t=t||new ArrayBuffer(0),typeof t=="string"&&(t=St.encode(t)),(t instanceof Blob||Object.prototype.toString.call(t)==="[object Blob]")&&(t=await wt(t)),t.buffer instanceof ArrayBuffer&&(t=new Uint8Array(t).buffer),this.buf=t,this.av=new Uint8Array(t),this.readPos=0;this.readPos<this.av.length;){let n=this.readLine();await this.processLine(n.bytes,n.done)}await this.processNodeTree();let r={headers:this.root.headers.map(n=>({key:n.key,originalKey:n.originalKey,value:n.value})).reverse()};for(let n of["from","sender"]){let o=this.root.headers.find(s=>s.key===n);if(o&&o.value){let s=Oi(o.value);s&&s.length&&(r[n]=s[0])}}for(let n of["delivered-to","return-path"]){let o=this.root.headers.find(s=>s.key===n);if(o&&o.value){let s=Oi(o.value);if(s&&s.length&&s[0].address){let a=Du(n);r[a]=s[0].address}}}for(let n of["to","cc","bcc","reply-to"]){let o=this.root.headers.filter(a=>a.key===n),s=[];if(o.filter(a=>a&&a.value).map(a=>Oi(a.value)).forEach(a=>s=s.concat(a||[])),s&&s.length){let a=Du(n);r[a]=s}}for(let n of["subject","message-id","in-reply-to","references"]){let o=this.root.headers.find(s=>s.key===n);if(o&&o.value){let s=Du(n);r[s]=zt(o.value)}}let i=this.root.headers.find(n=>n.key==="date");if(i){let n=new Date(i.value);n.toString()==="Invalid Date"?n=i.value:n=n.toISOString(),r.date=n}switch(this.textContent?.html&&(r.html=this.textContent.html),this.textContent?.plain&&(r.text=this.textContent.plain),r.attachments=this.attachments,r.headerLines=(this.root.rawHeaderLines||[]).slice().reverse(),this.attachmentEncoding){case"arraybuffer":break;case"base64":for(let o of r.attachments||[])o?.content&&(o.content=Ed(o.content),o.encoding="base64");break;case"utf8":let n=new TextDecoder("utf8");for(let o of r.attachments||[])o?.content&&(o.content=n.decode(o.content),o.encoding="utf8");break;default:throw new Error("Unknown attachment encoding")}return r}};var kb=we(vb(),1),FS="6.12.3";function ye(e){let t=new URLSearchParams;return e.limit!==void 0&&t.set("limit",e.limit.toString()),"after"in e&&e.after!==void 0&&t.set("after",e.after),"before"in e&&e.before!==void 0&&t.set("before",e.before),t.toString()}var HS=class{constructor(e){this.resend=e}async create(e,t={}){return await this.resend.post("/api-keys",e,t)}async list(e={}){let t=ye(e),r=t?`/api-keys?${t}`:"/api-keys";return await this.resend.get(r)}async remove(e){return await this.resend.delete(`/api-keys/${e}`)}},BS=class{constructor(e){this.resend=e}async get(e){return await this.resend.get(`/automations/${e.automationId}/runs/${e.runId}`)}async list(e){let t=ye(e),r=new URLSearchParams(t);if(e.status){let o=Array.isArray(e.status)?e.status.join(","):e.status;r.set("status",o)}let i=r.toString(),n=i?`/automations/${e.automationId}/runs?${i}`:`/automations/${e.automationId}/runs`;return await this.resend.get(n)}};function Ab(e){switch(e.type){case"trigger":return{key:e.key,type:e.type,config:{event_name:e.config.eventName}};case"delay":return{key:e.key,type:e.type,config:e.config};case"send_email":return{key:e.key,type:e.type,config:{template:e.config.template,subject:e.config.subject,from:e.config.from,reply_to:e.config.replyTo}};case"wait_for_event":return{key:e.key,type:e.type,config:{event_name:e.config.eventName,timeout:e.config.timeout,filter_rule:e.config.filterRule}};case"condition":return{key:e.key,type:e.type,config:e.config};case"contact_update":return{key:e.key,type:e.type,config:{first_name:e.config.firstName,last_name:e.config.lastName,unsubscribed:e.config.unsubscribed,properties:e.config.properties}};case"contact_delete":return{key:e.key,type:e.type,config:e.config};case"add_to_segment":return{key:e.key,type:e.type,config:{segment_id:e.config.segmentId}}}}function Eb(e){return{from:e.from,to:e.to,type:e.type}}function LS(e){return{name:e.name,status:e.status,steps:e.steps.map(Ab),connections:e.connections.map(Eb)}}function NS(e){return{event:e.event,contact_id:e.contactId,email:e.email,payload:e.payload}}var GS=class{constructor(e){this.resend=e,this.runs=new BS(this.resend)}async create(e){return await this.resend.post("/automations",LS(e))}async list(e={}){let t=[ye(e)];e.status&&t.push(`status=${encodeURIComponent(e.status)}`);let r=t.filter(Boolean).join("&"),i=r?`/automations?${r}`:"/automations";return await this.resend.get(i)}async get(e){return await this.resend.get(`/automations/${e}`)}async remove(e){return await this.resend.delete(`/automations/${e}`)}async update(e,t){let r={};return t.name!==void 0&&(r.name=t.name),t.status!==void 0&&(r.status=t.status),t.steps!==void 0&&(r.steps=t.steps.map(Ab)),t.connections!==void 0&&(r.connections=t.connections.map(Eb)),await this.resend.patch(`/automations/${e}`,r)}async stop(e){return await this.resend.post(`/automations/${e}/stop`)}};function US(e){return e?.map(t=>({content:t.content,filename:t.filename,path:t.path,content_type:t.contentType,content_id:t.contentId}))}function Pb(e){return{attachments:US(e.attachments),bcc:e.bcc,cc:e.cc,from:e.from,headers:e.headers,html:e.html,reply_to:e.replyTo,scheduled_at:e.scheduledAt,subject:e.subject,tags:e.tags,text:e.text,to:e.to,template:e.template?{id:e.template.id,variables:e.template.variables}:void 0,topic_id:e.topicId}}async function Oa(e){let t;try{({render:t}=await import("@react-email/render"))}catch{throw new Error("Failed to render React component. Make sure to install `@react-email/render` or `@react-email/components`.")}return t(e)}var WS=class{constructor(e){this.resend=e}async send(e,t){return this.create(e,t)}async create(e,t){let r=[];for(let i of e)i.react&&(i.html=await Oa(i.react),i.react=void 0),r.push(Pb(i));return await this.resend.post("/emails/batch",r,{...t,headers:{"x-batch-validation":t?.batchValidation??"strict",...t?.headers}})}},VS=class{constructor(e){this.resend=e}async create(e,t={}){return e.react&&(e.html=await Oa(e.react)),await this.resend.post("/broadcasts",{name:e.name,segment_id:e.segmentId,audience_id:e.audienceId,preview_text:e.previewText,from:e.from,html:e.html,reply_to:e.replyTo,subject:e.subject,text:e.text,topic_id:e.topicId,send:e.send,scheduled_at:e.scheduledAt},t)}async send(e,t){return await this.resend.post(`/broadcasts/${e}/send`,{scheduled_at:t?.scheduledAt})}async list(e={}){let t=ye(e),r=t?`/broadcasts?${t}`:"/broadcasts";return await this.resend.get(r)}async get(e){return await this.resend.get(`/broadcasts/${e}`)}async remove(e){return await this.resend.delete(`/broadcasts/${e}`)}async update(e,t){return t.react&&(t.html=await Oa(t.react)),await this.resend.patch(`/broadcasts/${e}`,{name:t.name,segment_id:t.segmentId,audience_id:t.audienceId,from:t.from,html:t.html,text:t.text,subject:t.subject,reply_to:t.replyTo,preview_text:t.previewText,topic_id:t.topicId})}};function yb(e){return{id:e.id,key:e.key,createdAt:e.created_at,type:e.type,fallbackValue:e.fallback_value}}function Cb(e){return"key"in e?{key:e.key,type:e.type,fallback_value:e.fallbackValue}:{fallback_value:e.fallbackValue}}var KS=class{constructor(e){this.resend=e}async create(e){let t=Cb(e);return await this.resend.post("/contact-properties",t)}async list(e={}){let t=ye(e),r=t?`/contact-properties?${t}`:"/contact-properties",i=await this.resend.get(r);return i.data?{data:{...i.data,data:i.data.data.map(n=>yb(n))},headers:i.headers,error:null}:i}async get(e){if(!e)return{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}};let t=await this.resend.get(`/contact-properties/${e}`);return t.data?{data:{object:"contact_property",...yb(t.data)},headers:t.headers,error:null}:t}async update(e){if(!e.id)return{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}};let t=Cb(e);return await this.resend.patch(`/contact-properties/${e.id}`,t)}async remove(e){return e?await this.resend.delete(`/contact-properties/${e}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}},YS=class{constructor(e){this.resend=e}async list(e){if(!e.contactId&&!e.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let t=e.email?e.email:e.contactId,r=ye(e),i=r?`/contacts/${t}/segments?${r}`:`/contacts/${t}/segments`;return await this.resend.get(i)}async add(e){if(!e.contactId&&!e.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let t=e.email?e.email:e.contactId;return this.resend.post(`/contacts/${t}/segments/${e.segmentId}`)}async remove(e){if(!e.contactId&&!e.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let t=e.email?e.email:e.contactId;return this.resend.delete(`/contacts/${t}/segments/${e.segmentId}`)}},QS=class{constructor(e){this.resend=e}async update(e){if(!e.id&&!e.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let t=e.email?e.email:e.id;return this.resend.patch(`/contacts/${t}/topics`,e.topics)}async list(e){if(!e.id&&!e.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let t=e.email?e.email:e.id,r=ye(e),i=r?`/contacts/${t}/topics?${r}`:`/contacts/${t}/topics`;return this.resend.get(i)}},ZS=class{constructor(e){this.resend=e,this.topics=new QS(this.resend),this.segments=new YS(this.resend)}async create(e,t={}){return"audienceId"in e?"segments"in e||"topics"in e?{data:null,headers:null,error:{message:"`audienceId` is deprecated, and cannot be used together with `segments` or `topics`. Use `segments` instead to add one or more segments to the new contact.",statusCode:null,name:"invalid_parameter"}}:await this.resend.post(`/audiences/${e.audienceId}/contacts`,{unsubscribed:e.unsubscribed,email:e.email,first_name:e.firstName,last_name:e.lastName,properties:e.properties},t):await this.resend.post("/contacts",{unsubscribed:e.unsubscribed,email:e.email,first_name:e.firstName,last_name:e.lastName,properties:e.properties,segments:e.segments,topics:e.topics},t)}async list(e={}){let t=e.segmentId??e.audienceId;if(!t){let n=ye(e),o=n?`/contacts?${n}`:"/contacts";return await this.resend.get(o)}let r=ye(e),i=r?`/segments/${t}/contacts?${r}`:`/segments/${t}/contacts`;return await this.resend.get(i)}async get(e){return typeof e=="string"?this.resend.get(`/contacts/${e}`):!e.id&&!e.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:e.audienceId?this.resend.get(`/audiences/${e.audienceId}/contacts/${e?.email?e?.email:e?.id}`):this.resend.get(`/contacts/${e?.email?e?.email:e?.id}`)}async update(e){return!e.id&&!e.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:e.audienceId?await this.resend.patch(`/audiences/${e.audienceId}/contacts/${e?.email?e?.email:e?.id}`,{unsubscribed:e.unsubscribed,first_name:e.firstName,last_name:e.lastName,properties:e.properties}):await this.resend.patch(`/contacts/${e?.email?e?.email:e?.id}`,{unsubscribed:e.unsubscribed,first_name:e.firstName,last_name:e.lastName,properties:e.properties})}async remove(e){return typeof e=="string"?this.resend.delete(`/contacts/${e}`):!e.id&&!e.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:e.audienceId?this.resend.delete(`/audiences/${e.audienceId}/contacts/${e?.email?e?.email:e?.id}`):this.resend.delete(`/contacts/${e?.email?e?.email:e?.id}`)}};function XS(e){return{name:e.name,region:e.region,custom_return_path:e.customReturnPath,capabilities:e.capabilities,open_tracking:e.openTracking,click_tracking:e.clickTracking,tls:e.tls,tracking_subdomain:e.trackingSubdomain}}var ew=class{constructor(e){this.resend=e}async create(e,t={}){return await this.resend.post("/domains",XS(e),t)}async list(e={}){let t=ye(e),r=t?`/domains?${t}`:"/domains";return await this.resend.get(r)}async get(e){return await this.resend.get(`/domains/${e}`)}async update(e){return await this.resend.patch(`/domains/${e.id}`,{click_tracking:e.clickTracking,open_tracking:e.openTracking,tls:e.tls,capabilities:e.capabilities,tracking_subdomain:e.trackingSubdomain})}async remove(e){return await this.resend.delete(`/domains/${e}`)}async verify(e){return await this.resend.post(`/domains/${e}/verify`)}},tw=class{constructor(e){this.resend=e}async get(e){let{emailId:t,id:r}=e;return await this.resend.get(`/emails/${t}/attachments/${r}`)}async list(e){let{emailId:t}=e,r=ye(e),i=r?`/emails/${t}/attachments?${r}`:`/emails/${t}/attachments`;return await this.resend.get(i)}},rw=class{constructor(e){this.resend=e}async get(e){let{emailId:t,id:r}=e;return await this.resend.get(`/emails/receiving/${t}/attachments/${r}`)}async list(e){let{emailId:t}=e,r=ye(e),i=r?`/emails/receiving/${t}/attachments?${r}`:`/emails/receiving/${t}/attachments`;return await this.resend.get(i)}},iw=class{constructor(e){this.resend=e,this.attachments=new rw(e)}async get(e){return await this.resend.get(`/emails/receiving/${e}`)}async list(e={}){let t=ye(e),r=t?`/emails/receiving?${t}`:"/emails/receiving";return await this.resend.get(r)}async forward(e){let{emailId:t,to:r,from:i}=e,n=e.passthrough!==!1,o=await this.get(t);if(o.error)return{data:null,error:o.error,headers:o.headers};let s=o.data,a=s.subject||"(no subject)";if(n)return this.forwardPassthrough(s,{to:r,from:i,subject:a});let u=a.startsWith("Fwd:")?a:`Fwd: ${a}`;return this.forwardWrapped(s,{to:r,from:i,subject:u,text:"text"in e?e.text:void 0,html:"html"in e?e.html:void 0})}async forwardPassthrough(e,t){let{to:r,from:i,subject:n}=t;if(!e.raw?.download_url)return{data:null,error:{name:"validation_error",message:"Raw email content is not available for this email",statusCode:400},headers:null};let o=await fetch(e.raw.download_url);if(!o.ok)return{data:null,error:{name:"application_error",message:"Failed to download raw email content",statusCode:o.status},headers:null};let s=await o.text(),a=await Wr.parse(s,{attachmentEncoding:"base64"}),u=a.attachments.map(d=>{let l=d.contentId?d.contentId.replace(/^<|>$/g,""):void 0;return{filename:d.filename,content:d.content.toString(),content_type:d.mimeType,content_id:l||void 0}});return await this.resend.post("/emails",{from:i,to:r,subject:n,text:a.text||void 0,html:a.html||void 0,attachments:u.length>0?u:void 0})}async forwardWrapped(e,t){let{to:r,from:i,subject:n,text:o,html:s}=t;if(!e.raw?.download_url)return{data:null,error:{name:"validation_error",message:"Raw email content is not available for this email",statusCode:400},headers:null};let a=await fetch(e.raw.download_url);if(!a.ok)return{data:null,error:{name:"application_error",message:"Failed to download raw email content",statusCode:a.status},headers:null};let u=await a.text();return await this.resend.post("/emails",{from:i,to:r,subject:n,text:o,html:s,attachments:[{filename:"forwarded_message.eml",content:Buffer.from(u).toString("base64"),content_type:"message/rfc822"}]})}},nw=class{constructor(e){this.resend=e,this.attachments=new tw(e),this.receiving=new iw(e)}async send(e,t={}){return this.create(e,t)}async create(e,t={}){return e.react&&(e.html=await Oa(e.react)),await this.resend.post("/emails",Pb(e),t)}async get(e){return await this.resend.get(`/emails/${e}`)}async list(e={}){let t=ye(e),r=t?`/emails?${t}`:"/emails";return await this.resend.get(r)}async update(e){return await this.resend.patch(`/emails/${e.id}`,{scheduled_at:e.scheduledAt})}async cancel(e){return await this.resend.post(`/emails/${e}/cancel`)}},ow=class{constructor(e){this.resend=e}async send(e){return await this.resend.post("/events/send",NS(e))}async create(e){return await this.resend.post("/events",e)}async get(e){return await this.resend.get(`/events/${encodeURIComponent(e)}`)}async list(e={}){let t=ye(e),r=t?`/events?${t}`:"/events";return await this.resend.get(r)}async update(e,t){return await this.resend.patch(`/events/${encodeURIComponent(e)}`,t)}async remove(e){return await this.resend.delete(`/events/${encodeURIComponent(e)}`)}},sw=class{constructor(e){this.resend=e}async list(e={}){let t=ye(e),r=t?`/logs?${t}`:"/logs";return await this.resend.get(r)}async get(e){return await this.resend.get(`/logs/${e}`)}},aw=class{constructor(e){this.resend=e}async create(e,t={}){return await this.resend.post("/segments",e,t)}async list(e={}){let t=ye(e),r=t?`/segments?${t}`:"/segments";return await this.resend.get(r)}async get(e){return await this.resend.get(`/segments/${e}`)}async remove(e){return await this.resend.delete(`/segments/${e}`)}};function uw(e={}){let t=new URLSearchParams;return e.before&&t.set("before",e.before),e.after&&t.set("after",e.after),e.limit&&t.set("limit",e.limit.toString()),t.size>0?`?${t.toString()}`:""}function lw(e){return e?.map(t=>({key:t.key,type:t.type,fallback_value:t.fallbackValue}))}function Ob(e){return{name:"name"in e?e.name:void 0,subject:e.subject,html:e.html,text:e.text,alias:e.alias,from:e.from,reply_to:e.replyTo,variables:lw(e.variables)}}var Sb=class{constructor(e,t){this.promise=e,this.publishFn=t}then(e,t){return this.promise.then(e,t)}async publish(){let{data:e,error:t}=await this.promise;return t?{data:null,headers:null,error:t}:this.publishFn(e.id)}},cw=class{constructor(e){this.resend=e}create(e){return new Sb(this.performCreate(e),this.publish.bind(this))}async performCreate(e){if(e.react){if(!this.renderAsync)try{let{renderAsync:t}=await import("@react-email/render");this.renderAsync=t}catch{throw new Error("Failed to render React component. Make sure to install `@react-email/render`")}e.html=await this.renderAsync(e.react)}return this.resend.post("/templates",Ob(e))}async remove(e){return await this.resend.delete(`/templates/${e}`)}async get(e){return await this.resend.get(`/templates/${e}`)}async list(e={}){return this.resend.get(`/templates${uw(e)}`)}duplicate(e){return new Sb(this.resend.post(`/templates/${e}/duplicate`),this.publish.bind(this))}async publish(e){return await this.resend.post(`/templates/${e}/publish`)}async update(e,t){return await this.resend.patch(`/templates/${e}`,Ob(t))}},dw=class{constructor(e){this.resend=e}async create(e){let{defaultSubscription:t,...r}=e;return await this.resend.post("/topics",{...r,default_subscription:t})}async list(){return await this.resend.get("/topics")}async get(e){return e?await this.resend.get(`/topics/${e}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}async update(e){return e.id?await this.resend.patch(`/topics/${e.id}`,e):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}async remove(e){return e?await this.resend.delete(`/topics/${e}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}},mw=class{constructor(e){this.resend=e}async create(e,t={}){return await this.resend.post("/webhooks",e,t)}async get(e){return await this.resend.get(`/webhooks/${e}`)}async list(e={}){let t=ye(e),r=t?`/webhooks?${t}`:"/webhooks";return await this.resend.get(r)}async update(e,t){return await this.resend.patch(`/webhooks/${e}`,t)}async remove(e){return await this.resend.delete(`/webhooks/${e}`)}verify(e){return new kb.Webhook(e.webhookSecret).verify(e.payload,{"svix-id":e.headers.id,"svix-timestamp":e.headers.timestamp,"svix-signature":e.headers.signature})}},wb="https://api.resend.com",xb=`resend-node:${FS}`,pw=typeof process<"u"&&process.env&&process.env.RESEND_BASE_URL||wb,fw=typeof process<"u"&&process.env&&process.env.RESEND_USER_AGENT||xb,vr=class{constructor(e){if(this.key=e,this.segments=new aw(this),this.apiKeys=new HS(this),this.audiences=this.segments,this.automations=new GS(this),this.batch=new WS(this),this.broadcasts=new VS(this),this.contactProperties=new KS(this),this.contacts=new ZS(this),this.domains=new ew(this),this.emails=new nw(this),this.events=new ow(this),this.logs=new sw(this),this.templates=new cw(this),this.topics=new dw(this),this.webhooks=new mw(this),!e&&(typeof process<"u"&&process.env&&(this.key=process.env.RESEND_API_KEY),!this.key))throw new Error('Missing API key. Pass it to the constructor `new Resend("re_123")`');this.headers=new Headers({Authorization:`Bearer ${this.key}`,"User-Agent":fw,"Content-Type":"application/json"})}async fetchRequest(e,t={}){try{let r=await fetch(`${pw}${e}`,t);if(!r.ok)try{let i=await r.text();return{data:null,error:JSON.parse(i),headers:Object.fromEntries(r.headers.entries())}}catch(i){if(i instanceof SyntaxError)return{data:null,error:{name:"application_error",statusCode:r.status,message:"Internal server error. We are unable to process your request right now, please try again later."},headers:Object.fromEntries(r.headers.entries())};let n={message:r.statusText,statusCode:r.status,name:"application_error"};return i instanceof Error?{data:null,error:{...n,message:i.message},headers:Object.fromEntries(r.headers.entries())}:{data:null,error:n,headers:Object.fromEntries(r.headers.entries())}}return{data:await r.json(),error:null,headers:Object.fromEntries(r.headers.entries())}}catch{return{data:null,error:{name:"application_error",statusCode:null,message:"Unable to fetch data. The request could not be resolved."},headers:null}}}async post(e,t,r={}){let i=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())i.set(o,s);r.idempotencyKey&&i.set("Idempotency-Key",r.idempotencyKey);let n={method:"POST",body:JSON.stringify(t),...r,headers:i};return this.fetchRequest(e,n)}async get(e,t={}){let r=new Headers(this.headers);if(t.headers)for(let[n,o]of new Headers(t.headers).entries())r.set(n,o);let i={method:"GET",...t,headers:r};return this.fetchRequest(e,i)}async put(e,t,r={}){let i=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())i.set(o,s);let n={method:"PUT",body:JSON.stringify(t),...r,headers:i};return this.fetchRequest(e,n)}async patch(e,t,r={}){let i=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())i.set(o,s);let n={method:"PATCH",body:JSON.stringify(t),...r,headers:i};return this.fetchRequest(e,n)}async delete(e,t){let r={method:"DELETE",body:JSON.stringify(t),headers:this.headers};return this.fetchRequest(e,r)}};Pe();var sc=we(yt(),1);function Y(e,t){return e instanceof Error?e.message:t}function Qb(e){return!!(e||!process.stdout.isTTY)}function z(e,t={}){Qb(t.json)?console.log(JSON.stringify(e,null,2)):console.log(typeof e=="string"?e:JSON.stringify(e,null,2)),t.exitCode!==void 0&&process.exit(t.exitCode)}var Sw=new Set(["content-type","retry-after"]);function ww(e){let t={};for(let[r,i]of Object.entries(e)){let n=r.toLowerCase();(Sw.has(n)||n.startsWith("x-"))&&(t[n]=i)}return t}function g(e,t={}){let r=t.exitCode??1,i=e.headers&&Object.keys(e.headers).length>0?ww(e.headers):void 0,n=i!==void 0&&Object.keys(i).length>0;if(Qb(t.json)){let o={message:e.message,code:e.code??"unknown"};typeof e.statusCode=="number"&&(o.statusCode=e.statusCode),n&&(o.headers=i),typeof e.body=="string"&&e.body.length>0&&(o.body=e.body),console.error(JSON.stringify({error:o},null,2))}else{console.error(`${sc.default.red("Error:")} ${e.message}`);let o=[];if(typeof e.statusCode=="number"&&o.push(`HTTP ${e.statusCode}`),n)for(let[s,a]of Object.entries(i))o.push(`${s}: ${a}`);o.length>0&&console.error(sc.default.dim(`[${o.join("; ")}]`))}process.exit(r)}var Zb={sending_access:0,full_access:1};function xw(e,t){return Zb[e]>=Zb[t]}async function ne(e,t){let r=e.profile;try{let i=await ir(e.apiKey,r);if(!i){if(r){let n=$e();if(!n.some(s=>s.name===r))throw new Error(`Profile "${r}" not found. Available profiles: ${n.map(s=>s.name).join(", ")||"(none)"}`)}throw new Error("No API key found. Set RESEND_API_KEY, use --api-key, or run: resend login")}if(i.permission){let n=t?.permission??"full_access";xw(i.permission,n)||g({message:`This command requires a full access API key. Your current key has sending access only.
186
- ${Cr}`,code:"insufficient_permissions"},{json:e.json})}return new vr(i.key)}catch(i){g({message:Y(i,"Failed to create client"),code:"auth_error"},{json:e.json})}}var Xb=130;function kw(){process.stderr.isTTY&&process.stderr.write("\r\x1B[2K"),console.error("Cancelled."),process.exit(Xb)}var Or;function e_(){Or=kw,process.on("SIGINT",Or),process.on("uncaughtException",e=>{g({message:Y(e,"An unexpected error occurred"),code:"unexpected_error"},{}),process.exit(1)})}function $a(e){Or&&process.removeListener("SIGINT",Or),Or=e,process.on("SIGINT",Or)}function Sr(){return Xb}Pe();var ja=we(yt(),1);X();var t_=[1,2,4],Aw=t_.length,Ew=new Set(["internal_server_error","service_unavailable","gateway_timeout"]),Pw=(e,t)=>!!(e==="rate_limit_exceeded"||t&&e!==void 0&&Ew.has(e)),Tw=e=>{let t=e?.["retry-after"];if(!t)return;let r=Number(t);if(Number.isFinite(r)&&r>=0)return r;let i=Date.parse(t);if(!Number.isNaN(i)){let n=(i-Date.now())/1e3;return n>0?n:0}},Iw=e=>new Promise(t=>setTimeout(t,e)),ei=async(e,t,r=0)=>{let i=await e(),n=t?.retryTransient??!1;if(i.error&&r<Aw&&Pw(i.error.name,n)){let o=Tw(i.headers)??t_[r];return t?.onRetry?.(r,o,i.error.name??""),await Iw(o*1e3),ei(e,t,r+1)}return i};var r_=(e,t)=>new Promise((r,i)=>{let n=setTimeout(()=>{i(new Error(`Request timed out after ${t/1e3}s`))},t);n.unref(),e.then(o=>{clearTimeout(n),r(o)},o=>{clearTimeout(n),i(o)})});var jw=bt?String.fromCodePoint(10004):"v",Dw=bt?String.fromCodePoint(9888):"!",qw=bt?String.fromCodePoint(10007):"x",Rw=["\u2839","\u2838","\u2834","\u2826","\u2807","\u280F","\u2819","\u2839"],Mw=80;async function He(e,t,r,i,n={}){let o=fe(e,i.quiet);try{let{data:s,error:a,headers:u}=await ei(()=>r_(t(),3e4),{retryTransient:n.retryTransient,onRetry:(d,l,c)=>{o.update(c==="rate_limit_exceeded"?`Rate limited, retrying in ${l}s...`:`Server error, retrying in ${l}s...`)}});return a&&(o.stop(),g({message:a.message,code:r,statusCode:a.statusCode,headers:u},{json:i.json})),s===null&&(o.stop(),g({message:"Unexpected empty response",code:r,headers:u},{json:i.json})),o.stop(),s}catch(s){return o.stop(),g({message:Y(s,"Unknown error"),code:r},{json:i.json})}}function fe(e,t){if(t||!O())return{update(a){},stop(a){},clear(){},warn(a){},fail(a){}};let r=bt?Rw:["-","\\","|","/"],i=Mw,n=0,o=e,s=setInterval(()=>{process.stderr.write(`\r\x1B[2K ${r[n++%r.length]} ${o}`)},i);return{update(a){o=a},stop(a){clearInterval(s),a?process.stderr.write(`\r\x1B[2K ${ja.default.green(jw)} ${a}
187
- `):process.stderr.write("\r\x1B[2K")},clear(){clearInterval(s),process.stderr.write("\r\x1B[2K")},warn(a){clearInterval(s),process.stderr.write(`\r\x1B[2K ${ja.default.yellow(Dw)} ${a}
188
- `)},fail(a){clearInterval(s),process.stderr.write(`\r\x1B[2K ${ja.default.red(qw)} ${a}
189
- `)}}}X();function T(e){fd(e),process.exit(Sr())}async function o_(e,t,r){(!O()||r.json)&&g({message:"Use --yes to confirm deletion in non-interactive mode.",code:"confirmation_required"},{json:r.json});let i=await Ot({message:t});(k(i)||!i)&&T("Deletion cancelled.")}async function Da(e,t){let r=pe(e);if(!r)return e;if(!O()||t.json)return g({message:`Profile "${e}" has an invalid name: ${r}`,code:"invalid_profile_name"},{json:t.json}),null;re.warn(`Profile "${e}" has an invalid name: ${r}`);let i=await ee({message:"Enter a new name for this profile:",placeholder:e.replace(/[^a-zA-Z0-9._-]/g,"-"),validate:n=>pe(n)});k(i)&&T("Rename cancelled.");try{await Ia(e,i)}catch(n){return g({message:Y(n,"Failed to rename profile"),code:"rename_failed"},{json:t.json}),null}return re.success(`Profile renamed to '${i}'.`),i}async function K(e,t,r,i){if(e!==void 0)return e;(!O()||i.json)&&g(r,{json:i.json});let n=await ee({message:t.message,placeholder:t.placeholder,defaultValue:t.defaultValue,validate:t.validate??(o=>!t.defaultValue&&(!o||o.length===0)?`${t.message} is required`:void 0)});return k(n)&&T("Cancelled."),n}async function wr(e,t,r,i){if(e!==void 0)return e;(!O()||i.json)&&g(r,{json:i.json});let n=await me({message:t.message,options:t.options});return k(n)&&T("Cancelled."),n}async function s_(e,t,r){let i=t.filter(s=>s.required!==!1&&e[s.flag]==="");if(i.length>0){let s=i.map(a=>`--${a.flag}`).join(", ");g({message:`Empty value for required flags: ${s}`,code:"invalid_options"},{json:r.json})}let n=t.filter(s=>s.required!==!1&&!e[s.flag]);if(n.length===0)return e;if(!O()||r.json){let s=n.map(a=>`--${a.flag}`).join(", ");g({message:`Missing required flags: ${s}`,code:"missing_flags"},{json:r.json})}let o=await pd(Object.fromEntries(n.map(s=>[s.flag,()=>ee({message:s.message,placeholder:s.placeholder,defaultValue:s.defaultValue,validate:s.validate??(a=>!s.defaultValue&&(!a||a.length===0)?`${s.message} is required`:void 0)})])),{onCancel:()=>T("Operation cancelled.")});return{...e,...o}}var zw=20,i_="__fetch_more__",n_="__none__";async function he(e,t,r,i){if(e)return{id:e,label:e};let n=i?.optional??!1;if(!O()||r.json){if(n)return;g({message:"Missing required argument: id",code:"missing_id"},{json:r.json})}let o=await ne(r),s=[];for(;;){let a=s.at(-1)?.id,u=fe(s.length===0?`Fetching ${t.resourcePlural}...`:`Fetching more ${t.resourcePlural}...`,r.quiet),d=await t.fetchItems(o,{limit:zw,...a&&{after:a}});if(d.error||!d.data){if(n){u.clear();return}u.fail(`Failed to fetch ${t.resourcePlural}`),g({message:d.error?.message??"Unexpected empty response",code:"list_error"},{json:r.json})}s.push(...d.data.data);let l=d.data.has_more??!1,c=t.filter?s.filter(t.filter):s;if(c.length===0&&!l&&n){u.clear();return}if(u.stop(s.length===c.length?`${t.resourcePlural} fetched`:`More ${t.resourcePlural} fetched`),c.length===0&&!l&&(re.warn(`No ${t.resourcePlural} found.`),g({message:`No ${t.resourcePlural} found.`,code:"no_items"},{json:r.json})),c.length===0&&l&&!n)continue;let m=c.map(_=>({item:_,...t.display(_)})),v=m.map(({item:_,label:S,hint:x})=>({value:_.id,label:S,hint:x}));n&&v.unshift({value:n_,label:"None"}),l&&v.push({value:i_,label:"Fetch more..."});let b=await me({message:`Select a ${t.resource}`,options:v});if(k(b)&&T("Cancelled."),b===n_)return;if(b!==i_){let _=m.find(({item:S})=>S.id===b);return{id:b,label:_?.label??b}}}}async function C(e,t,r,i){return(await he(e,t,r,i))?.id}var a_=require("node:util"),Jw=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]|\r(?!\n)/g,je=e=>(0,a_.stripVTControlCharacters)(String(e)).replace(Jw,"");function xr(e){return typeof e=="string"?je(e):Array.isArray(e)?e.map(xr):e!==null&&typeof e=="object"?Object.fromEntries(Object.entries(e).map(([t,r])=>[t,xr(r)])):e}X();async function W(e,t){let r=e.permission?{permission:e.permission}:void 0,i=await ne(t,r),n=await He(e.loading,()=>e.sdkCall(i),"fetch_error",t,{retryTransient:!0});!t.json&&O()?e.onInteractive(xr(n)):z(n,{json:t.json})}async function ue(e,t,r,i){let n=r.permission?{permission:r.permission}:void 0,o=await ne(i,n);t||await o_(e,r.confirmMessage,i),await He(r.loading,()=>r.sdkCall(o),"delete_error",i),!i.json&&O()?console.log(r.successMsg):z({object:r.object,id:e,deleted:!0},{json:i.json})}async function te(e,t){let r=e.permission?{permission:e.permission}:void 0,i=await ne(t,r),n=await He(e.loading,()=>e.sdkCall(i),"create_error",t);!t.json&&O()?e.onInteractive(xr(n)):z(n,{json:t.json})}async function J(e,t){let r=e.permission?{permission:e.permission}:void 0,i=await ne(t,r),n=await He(e.loading,()=>e.sdkCall(i),e.errorCode,t,{retryTransient:e.retryTransient});!t.json&&O()?console.log(e.successMsg):z(n,{json:t.json})}async function D(e,t){let r=e.permission?{permission:e.permission}:void 0,i=await ne(t,r),n=await He(e.loading,()=>e.sdkCall(i),"list_error",t,{retryTransient:!0});!t.json&&O()?e.onInteractive(xr(n)):z(n,{json:t.json})}X();X();var Ce=bt?{h:String.fromCodePoint(9472),v:String.fromCodePoint(9474),tl:String.fromCodePoint(9484),tr:String.fromCodePoint(9488),bl:String.fromCodePoint(9492),br:String.fromCodePoint(9496),lm:String.fromCodePoint(9500),rm:String.fromCodePoint(9508),tm:String.fromCodePoint(9516),bm:String.fromCodePoint(9524),mm:String.fromCodePoint(9532)}:{h:"-",v:"|",tl:"+",tr:"+",bl:"+",br:"+",lm:"+",rm:"+",tm:"+",bm:"+",mm:"+"};function Fw(){return process.stdout.columns}function Hw(e,t,r){let i=Math.max(...e.map(o=>o.length)),n=Math.max(20,Math.min(r,60));return t.map((o,s)=>{let a=String(s+1),u=`${Ce.h}${Ce.h} ${a} ${Ce.h.repeat(Math.max(0,n-a.length-4))}`,d=e.map((l,c)=>` ${l.padEnd(i)} ${o[c]}`);return[u,...d].join(`
183
+ `);c.content=nt.encode(u);break}default:c.content=s.content}this.attachments.push(c)}for(let d of s.childNodes)await o(d,a,l)};await o(this.root,!1,!1),n.forEach(s=>{r.forEach(a=>{if(e[a]||(e[a]=[]),s[a])s[a].forEach(l=>{switch(l.type){case"text":e[a].push(l.value);break;case"subMessage":switch(a){case"html":e[a].push(Gn(l.value));break;case"plain":e[a].push(Ln(l.value));break}break}});else{let l;switch(a){case"html":l="plain";break;case"plain":l="html";break}(s[l]||[]).forEach(d=>{switch(d.type){case"text":switch(a){case"html":e[a].push(xo(d.value));break;case"plain":e[a].push(Ao(d.value));break}break;case"subMessage":switch(a){case"html":e[a].push(Gn(d.value));break;case"plain":e[a].push(Ln(d.value));break}break}})}})}),Object.keys(e).forEach(s=>{e[s]=e[s].join(`
184
+ `)}),this.textContent=e}isInlineTextNode(e){if(e.contentDisposition?.parsed?.value==="attachment")return!1;switch(e.contentType.parsed?.value){case"text/html":case"text/plain":return!0;default:return!1}}isInlineMessageRfc822(e){return e.contentType.parsed?.value!=="message/rfc822"?!1:(e.contentDisposition?.parsed?.value||(this.options.rfc822Attachments?"attachment":"inline"))==="inline"}forceRfc822Attachments(){if(this.options.forceRfc822Attachments)return!0;let e=!1,r=n=>{n.contentType.multipart||n.contentType.parsed&&["message/delivery-status","message/feedback-report"].includes(n.contentType.parsed.value)&&(e=!0);for(let i of n.childNodes)r(i)};return r(this.root),e}async resolveStream(e){let r=0,n=[],i=e.getReader();for(;;){let{done:a,value:l}=await i.read();if(a)break;n.push(l),r+=l.length}let o=new Uint8Array(r),s=0;for(let a of n)o.set(a,s),s+=a.length;return o}async parse(e){if(this.started)throw new Error("Can not reuse parser, create a new PostalMime object");for(this.started=!0,e&&typeof e.getReader=="function"&&(e=await this.resolveStream(e)),e=e||new ArrayBuffer(0),typeof e=="string"&&(e=nt.encode(e)),(e instanceof Blob||Object.prototype.toString.call(e)==="[object Blob]")&&(e=await it(e)),e.buffer instanceof ArrayBuffer&&(e=new Uint8Array(e).buffer),this.buf=e,this.av=new Uint8Array(e),this.readPos=0;this.readPos<this.av.length;){let i=this.readLine();await this.processLine(i.bytes,i.done)}await this.processNodeTree();let r={headers:this.root.headers.map(i=>({key:i.key,originalKey:i.originalKey,value:i.value})).reverse()};for(let i of["from","sender"]){let o=this.root.headers.find(s=>s.key===i);if(o&&o.value){let s=Dr(o.value);s&&s.length&&(r[i]=s[0])}}for(let i of["delivered-to","return-path"]){let o=this.root.headers.find(s=>s.key===i);if(o&&o.value){let s=Dr(o.value);if(s&&s.length&&s[0].address){let a=Un(i);r[a]=s[0].address}}}for(let i of["to","cc","bcc","reply-to"]){let o=this.root.headers.filter(a=>a.key===i),s=[];if(o.filter(a=>a&&a.value).map(a=>Dr(a.value)).forEach(a=>s=s.concat(a||[])),s&&s.length){let a=Un(i);r[a]=s}}for(let i of["subject","message-id","in-reply-to","references"]){let o=this.root.headers.find(s=>s.key===i);if(o&&o.value){let s=Un(i);r[s]=gt(o.value)}}let n=this.root.headers.find(i=>i.key==="date");if(n){let i=new Date(n.value);i.toString()==="Invalid Date"?i=n.value:i=i.toISOString(),r.date=i}switch(this.textContent?.html&&(r.html=this.textContent.html),this.textContent?.plain&&(r.text=this.textContent.plain),r.attachments=this.attachments,r.headerLines=(this.root.rawHeaderLines||[]).slice().reverse(),this.attachmentEncoding){case"arraybuffer":break;case"base64":for(let o of r.attachments||[])o?.content&&(o.content=Eo(o.content),o.encoding="base64");break;case"utf8":let i=new TextDecoder("utf8");for(let o of r.attachments||[])o?.content&&(o.content=i.decode(o.content),o.encoding="utf8");break;default:throw new Error("Unknown attachment encoding")}return r}};var Uo=pe(Bo(),1),wd="6.14.0";function oe(t){let e=new URLSearchParams;return t.limit!==void 0&&e.set("limit",t.limit.toString()),"after"in t&&t.after!==void 0&&e.set("after",t.after),"before"in t&&t.before!==void 0&&e.set("before",t.before),e.toString()}var _d=class{constructor(t){this.resend=t}async create(t,e={}){return await this.resend.post("/api-keys",t,e)}async list(t={}){let e=oe(t),r=e?`/api-keys?${e}`:"/api-keys";return await this.resend.get(r)}async remove(t){return await this.resend.delete(`/api-keys/${t}`)}},xd=class{constructor(t){this.resend=t}async get(t){return await this.resend.get(`/automations/${t.automationId}/runs/${t.runId}`)}async list(t){let e=oe(t),r=new URLSearchParams(e);if(t.status){let o=Array.isArray(t.status)?t.status.join(","):t.status;r.set("status",o)}let n=r.toString(),i=n?`/automations/${t.automationId}/runs?${n}`:`/automations/${t.automationId}/runs`;return await this.resend.get(i)}};function Wo(t){switch(t.type){case"trigger":return{key:t.key,type:t.type,config:{event_name:t.config.eventName}};case"delay":return{key:t.key,type:t.type,config:t.config};case"send_email":return{key:t.key,type:t.type,config:{template:t.config.template,subject:t.config.subject,from:t.config.from,reply_to:t.config.replyTo}};case"wait_for_event":return{key:t.key,type:t.type,config:{event_name:t.config.eventName,timeout:t.config.timeout,filter_rule:t.config.filterRule}};case"condition":return{key:t.key,type:t.type,config:t.config};case"contact_update":return{key:t.key,type:t.type,config:{first_name:t.config.firstName,last_name:t.config.lastName,unsubscribed:t.config.unsubscribed,properties:t.config.properties}};case"contact_delete":return{key:t.key,type:t.type,config:t.config};case"add_to_segment":return{key:t.key,type:t.type,config:{segment_id:t.config.segmentId}}}}function Vo(t){return{from:t.from,to:t.to,type:t.type}}function Ad(t){return{name:t.name,status:t.status,steps:t.steps.map(Wo),connections:t.connections.map(Vo)}}function kd(t){return{event:t.event,contact_id:t.contactId,email:t.email,payload:t.payload}}var $d=class{constructor(t){this.resend=t,this.runs=new xd(this.resend)}async create(t){return await this.resend.post("/automations",Ad(t))}async list(t={}){let e=[oe(t)];t.status&&e.push(`status=${encodeURIComponent(t.status)}`);let r=e.filter(Boolean).join("&"),n=r?`/automations?${r}`:"/automations";return await this.resend.get(n)}async get(t){return await this.resend.get(`/automations/${t}`)}async remove(t){return await this.resend.delete(`/automations/${t}`)}async update(t,e){let r={};return e.name!==void 0&&(r.name=e.name),e.status!==void 0&&(r.status=e.status),e.steps!==void 0&&(r.steps=e.steps.map(Wo)),e.connections!==void 0&&(r.connections=e.connections.map(Vo)),await this.resend.patch(`/automations/${t}`,r)}async stop(t){return await this.resend.post(`/automations/${t}/stop`)}};function Ed(t){return t?.map(e=>({content:e.content,filename:e.filename,path:e.path,content_type:e.contentType,content_id:e.contentId}))}function Ko(t){return{attachments:Ed(t.attachments),bcc:t.bcc,cc:t.cc,from:t.from,headers:t.headers,html:t.html,reply_to:t.replyTo,scheduled_at:t.scheduledAt,subject:t.subject,tags:t.tags,text:t.text,to:t.to,template:t.template?{id:t.template.id,variables:t.template.variables}:void 0,topic_id:t.topicId}}async function ir(t){let e;try{({render:e}=await import("@react-email/render"))}catch{throw new Error("Failed to render React component. Make sure to install `@react-email/render` or `@react-email/components`.")}return e(t)}var Dd=class{constructor(t){this.resend=t}async send(t,e){return this.create(t,e)}async create(t,e){let r=[];for(let n of t)n.react&&(n.html=await ir(n.react),n.react=void 0),r.push(Ko(n));return await this.resend.post("/emails/batch",r,{...e,headers:{"x-batch-validation":e?.batchValidation??"strict",...e?.headers}})}},Sd=class{constructor(t){this.resend=t}async create(t,e={}){let r=t.react?await ir(t.react):t.html;return await this.resend.post("/broadcasts",{name:t.name,segment_id:t.segmentId,audience_id:t.audienceId,preview_text:t.previewText,from:t.from,html:r,reply_to:t.replyTo,subject:t.subject,text:t.text,topic_id:t.topicId,send:t.send,scheduled_at:t.scheduledAt},e)}async send(t,e){return await this.resend.post(`/broadcasts/${t}/send`,{scheduled_at:e?.scheduledAt})}async list(t={}){let e=oe(t),r=e?`/broadcasts?${e}`:"/broadcasts";return await this.resend.get(r)}async get(t){return await this.resend.get(`/broadcasts/${t}`)}async remove(t){return await this.resend.delete(`/broadcasts/${t}`)}async update(t,e){let r=e.react?await ir(e.react):e.html;return await this.resend.patch(`/broadcasts/${t}`,{name:e.name,segment_id:e.segmentId,audience_id:e.audienceId,from:e.from,html:r,text:e.text,subject:e.subject,reply_to:e.replyTo,preview_text:e.previewText,topic_id:e.topicId})}};function No(t){return{id:t.id,key:t.key,createdAt:t.created_at,type:t.type,fallbackValue:t.fallback_value}}function Ho(t){return"key"in t?{key:t.key,type:t.type,fallback_value:t.fallbackValue}:{fallback_value:t.fallbackValue}}var Td=class{constructor(t){this.resend=t}async create(t){let e=Ho(t);return await this.resend.post("/contact-properties",e)}async list(t={}){let e=oe(t),r=e?`/contact-properties?${e}`:"/contact-properties",n=await this.resend.get(r);return n.data?{data:{...n.data,data:n.data.data.map(i=>No(i))},headers:n.headers,error:null}:n}async get(t){if(!t)return{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}};let e=await this.resend.get(`/contact-properties/${t}`);return e.data?{data:{object:"contact_property",...No(e.data)},headers:e.headers,error:null}:e}async update(t){if(!t.id)return{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}};let e=Ho(t);return await this.resend.patch(`/contact-properties/${t.id}`,e)}async remove(t){return t?await this.resend.delete(`/contact-properties/${t}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}},Od=class{constructor(t){this.resend=t}async create(t,e={}){let r=this.buildCreateFormData(t);return this.resend.post("/contacts/imports",r,e)}async list(t={}){let e=new URLSearchParams(oe(t));t.status!==void 0&&e.set("status",t.status);let r=e.toString(),n=r?`/contacts/imports?${r}`:"/contacts/imports";return this.resend.get(n)}async get(t){return this.resend.get(`/contacts/imports/${t}`)}buildCreateFormData(t){let e=new FormData;return e.append("file",t.file),this.appendField(e,"column_map",this.buildColumnMap(t.columnMap??null)),this.appendField(e,"on_conflict",t.onConflict??null),this.appendField(e,"segments",t.segments??null),this.appendField(e,"topics",t.topics??null),e}buildColumnMap(t){return t===null?null:{email:t.email,first_name:t.firstName,last_name:t.lastName,unsubscribed:t.unsubscribed,properties:t.properties}}appendField(t,e,r){r!==null&&t.append(e,typeof r=="string"?r:JSON.stringify(r))}},Id=class{constructor(t){this.resend=t}async list(t){if(!t.contactId&&!t.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let e=t.email?t.email:t.contactId,r=oe(t),n=r?`/contacts/${e}/segments?${r}`:`/contacts/${e}/segments`;return await this.resend.get(n)}async add(t){if(!t.contactId&&!t.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let e=t.email?t.email:t.contactId;return this.resend.post(`/contacts/${e}/segments/${t.segmentId}`)}async remove(t){if(!t.contactId&&!t.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let e=t.email?t.email:t.contactId;return this.resend.delete(`/contacts/${e}/segments/${t.segmentId}`)}},Pd=class{constructor(t){this.resend=t}async update(t){if(!t.id&&!t.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let e=t.email?t.email:t.id;return this.resend.patch(`/contacts/${e}/topics`,t.topics)}async list(t){if(!t.id&&!t.email)return{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}};let e=t.email?t.email:t.id,r=oe(t),n=r?`/contacts/${e}/topics?${r}`:`/contacts/${e}/topics`;return this.resend.get(n)}},jd=class{constructor(t){this.resend=t,this.imports=new Od(this.resend),this.topics=new Pd(this.resend),this.segments=new Id(this.resend)}async create(t,e={}){return"audienceId"in t?"segments"in t||"topics"in t?{data:null,headers:null,error:{message:"`audienceId` is deprecated, and cannot be used together with `segments` or `topics`. Use `segments` instead to add one or more segments to the new contact.",statusCode:null,name:"invalid_parameter"}}:await this.resend.post(`/audiences/${t.audienceId}/contacts`,{unsubscribed:t.unsubscribed,email:t.email,first_name:t.firstName,last_name:t.lastName,properties:t.properties},e):await this.resend.post("/contacts",{unsubscribed:t.unsubscribed,email:t.email,first_name:t.firstName,last_name:t.lastName,properties:t.properties,segments:t.segments,topics:t.topics},e)}async list(t={}){let e=t.segmentId??t.audienceId;if(!e){let i=oe(t),o=i?`/contacts?${i}`:"/contacts";return await this.resend.get(o)}let r=oe(t),n=r?`/segments/${e}/contacts?${r}`:`/segments/${e}/contacts`;return await this.resend.get(n)}async get(t){return typeof t=="string"?this.resend.get(`/contacts/${t}`):!t.id&&!t.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:t.audienceId?this.resend.get(`/audiences/${t.audienceId}/contacts/${t?.email?t?.email:t?.id}`):this.resend.get(`/contacts/${t?.email?t?.email:t?.id}`)}async update(t){return!t.id&&!t.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:t.audienceId?await this.resend.patch(`/audiences/${t.audienceId}/contacts/${t?.email?t?.email:t?.id}`,{unsubscribed:t.unsubscribed,first_name:t.firstName,last_name:t.lastName,properties:t.properties}):await this.resend.patch(`/contacts/${t?.email?t?.email:t?.id}`,{unsubscribed:t.unsubscribed,first_name:t.firstName,last_name:t.lastName,properties:t.properties})}async remove(t){return typeof t=="string"?this.resend.delete(`/contacts/${t}`):!t.id&&!t.email?{data:null,headers:null,error:{message:"Missing `id` or `email` field.",statusCode:null,name:"missing_required_field"}}:t.audienceId?this.resend.delete(`/audiences/${t.audienceId}/contacts/${t?.email?t?.email:t?.id}`):this.resend.delete(`/contacts/${t?.email?t?.email:t?.id}`)}};function Rd(t){return{name:t.name,region:t.region,custom_return_path:t.customReturnPath,capabilities:t.capabilities,open_tracking:t.openTracking,click_tracking:t.clickTracking,tls:t.tls,tracking_subdomain:t.trackingSubdomain}}var Fd=class{constructor(t){this.resend=t}async create(t,e={}){return await this.resend.post("/domains/claim",{name:t.name,region:t.region,custom_return_path:t.customReturnPath,open_tracking:t.openTracking,click_tracking:t.clickTracking,tracking_subdomain:t.trackingSubdomain},e)}async get(t){return await this.resend.get(`/domains/${t}/claim`)}async verify(t){return await this.resend.post(`/domains/${t}/claim/verify`)}},Bd=class{constructor(t){this.resend=t,this.claims=new Fd(this.resend)}async create(t,e={}){return await this.resend.post("/domains",Rd(t),e)}async list(t={}){let e=oe(t),r=e?`/domains?${e}`:"/domains";return await this.resend.get(r)}async get(t){return await this.resend.get(`/domains/${t}`)}async update(t){return await this.resend.patch(`/domains/${t.id}`,{click_tracking:t.clickTracking,open_tracking:t.openTracking,tls:t.tls,capabilities:t.capabilities,tracking_subdomain:t.trackingSubdomain})}async remove(t){return await this.resend.delete(`/domains/${t}`)}async verify(t){return await this.resend.post(`/domains/${t}/verify`)}},Nd=class{constructor(t){this.resend=t}async get(t){let{emailId:e,id:r}=t;return await this.resend.get(`/emails/${e}/attachments/${r}`)}async list(t){let{emailId:e}=t,r=oe(t),n=r?`/emails/${e}/attachments?${r}`:`/emails/${e}/attachments`;return await this.resend.get(n)}},Hd=class{constructor(t){this.resend=t}async get(t){let{emailId:e,id:r}=t;return await this.resend.get(`/emails/receiving/${e}/attachments/${r}`)}async list(t){let{emailId:e}=t,r=oe(t),n=r?`/emails/receiving/${e}/attachments?${r}`:`/emails/receiving/${e}/attachments`;return await this.resend.get(n)}},Ld=class{constructor(t){this.resend=t,this.attachments=new Hd(t)}async get(t,e={}){let r=new URLSearchParams;e.html_format!==void 0&&r.set("html_format",e.html_format);let n=r.toString(),i=n?`/emails/receiving/${t}?${n}`:`/emails/receiving/${t}`;return await this.resend.get(i)}async list(t={}){let e=oe(t),r=e?`/emails/receiving?${e}`:"/emails/receiving";return await this.resend.get(r)}async forward(t){let{emailId:e,to:r,from:n}=t,i=t.passthrough!==!1,o=await this.get(e);if(o.error)return{data:null,error:o.error,headers:o.headers};let s=o.data,a=s.subject||"(no subject)";if(i)return this.forwardPassthrough(s,{to:r,from:n,subject:a});let l=a.startsWith("Fwd:")?a:`Fwd: ${a}`;return this.forwardWrapped(s,{to:r,from:n,subject:l,text:"text"in t?t.text:void 0,html:"html"in t?t.html:void 0})}async forwardPassthrough(t,e){let{to:r,from:n,subject:i}=e;if(!t.raw?.download_url)return{data:null,error:{name:"validation_error",message:"Raw email content is not available for this email",statusCode:400},headers:null};let o=await fetch(t.raw.download_url);if(!o.ok)return{data:null,error:{name:"application_error",message:"Failed to download raw email content",statusCode:o.status},headers:null};let s=await o.text(),a=await rr.parse(s,{attachmentEncoding:"base64"}),l=a.attachments.map(d=>{let c=d.contentId?d.contentId.replace(/^<|>$/g,""):void 0;return{filename:d.filename,content:d.content.toString(),content_type:d.mimeType,content_id:c||void 0}});return await this.resend.post("/emails",{from:n,to:r,subject:i,text:a.text||void 0,html:a.html||void 0,attachments:l.length>0?l:void 0})}async forwardWrapped(t,e){let{to:r,from:n,subject:i,text:o,html:s}=e;if(!t.raw?.download_url)return{data:null,error:{name:"validation_error",message:"Raw email content is not available for this email",statusCode:400},headers:null};let a=await fetch(t.raw.download_url);if(!a.ok)return{data:null,error:{name:"application_error",message:"Failed to download raw email content",statusCode:a.status},headers:null};let l=await a.text();return await this.resend.post("/emails",{from:n,to:r,subject:i,text:o,html:s,attachments:[{filename:"forwarded_message.eml",content:Buffer.from(l).toString("base64"),content_type:"message/rfc822"}]})}},Gd=class{constructor(t){this.resend=t,this.attachments=new Nd(t),this.receiving=new Ld(t)}async send(t,e={}){return this.create(t,e)}async create(t,e={}){let r={...t};return t.react&&(r.html=await ir(t.react)),await this.resend.post("/emails",Ko(r),e)}async get(t){return await this.resend.get(`/emails/${t}`)}async list(t={}){let e=oe(t),r=e?`/emails?${e}`:"/emails";return await this.resend.get(r)}async update(t){return await this.resend.patch(`/emails/${t.id}`,{scheduled_at:t.scheduledAt})}async cancel(t){return await this.resend.post(`/emails/${t}/cancel`)}},Md=class{constructor(t){this.resend=t}async send(t){return await this.resend.post("/events/send",kd(t))}async create(t){return await this.resend.post("/events",t)}async get(t){return await this.resend.get(`/events/${encodeURIComponent(t)}`)}async list(t={}){let e=oe(t),r=e?`/events?${e}`:"/events";return await this.resend.get(r)}async update(t,e){return await this.resend.patch(`/events/${encodeURIComponent(t)}`,e)}async remove(t){return await this.resend.delete(`/events/${encodeURIComponent(t)}`)}},qd=class{constructor(t){this.resend=t}async list(t={}){let e=oe(t),r=e?`/logs?${e}`:"/logs";return await this.resend.get(r)}async get(t){return await this.resend.get(`/logs/${t}`)}},Ud=class{constructor(t){this.resend=t}async create(t,e={}){return await this.resend.post("/segments",t,e)}async list(t={}){let e=oe(t),r=e?`/segments?${e}`:"/segments";return await this.resend.get(r)}async get(t){return await this.resend.get(`/segments/${t}`)}async remove(t){return await this.resend.delete(`/segments/${t}`)}};function Wd(t={}){let e=new URLSearchParams;return t.before&&e.set("before",t.before),t.after&&e.set("after",t.after),t.limit&&e.set("limit",t.limit.toString()),e.size>0?`?${e.toString()}`:""}function Vd(t){return t?.map(e=>({key:e.key,type:e.type,fallback_value:e.fallbackValue}))}function Lo(t){return{name:"name"in t?t.name:void 0,subject:t.subject,html:t.html,text:t.text,alias:t.alias,from:t.from,reply_to:t.replyTo,variables:Vd(t.variables)}}var Go=class{constructor(t,e){this.promise=t,this.publishFn=e}then(t,e){return this.promise.then(t,e)}async publish(){let{data:t,error:e}=await this.promise;return e?{data:null,headers:null,error:e}:this.publishFn(t.id)}},Kd=class{constructor(t){this.resend=t}create(t){return new Go(this.performCreate(t),this.publish.bind(this))}async performCreate(t){let e={...t};return t.react&&(e.html=await ir(t.react)),this.resend.post("/templates",Lo(e))}async remove(t){return await this.resend.delete(`/templates/${t}`)}async get(t){return await this.resend.get(`/templates/${t}`)}async list(t={}){return this.resend.get(`/templates${Wd(t)}`)}duplicate(t){return new Go(this.resend.post(`/templates/${t}/duplicate`),this.publish.bind(this))}async publish(t){return await this.resend.post(`/templates/${t}/publish`)}async update(t,e){return await this.resend.patch(`/templates/${t}`,Lo(e))}},zd=class{constructor(t){this.resend=t}async create(t){let{defaultSubscription:e,...r}=t;return await this.resend.post("/topics",{...r,default_subscription:e})}async list(){return await this.resend.get("/topics")}async get(t){return t?await this.resend.get(`/topics/${t}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}async update(t){return t.id?await this.resend.patch(`/topics/${t.id}`,t):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}async remove(t){return t?await this.resend.delete(`/topics/${t}`):{data:null,headers:null,error:{message:"Missing `id` field.",statusCode:null,name:"missing_required_field"}}}},Jd=class{constructor(t){this.resend=t}async create(t,e={}){return await this.resend.post("/webhooks",t,e)}async get(t){return await this.resend.get(`/webhooks/${t}`)}async list(t={}){let e=oe(t),r=e?`/webhooks?${e}`:"/webhooks";return await this.resend.get(r)}async update(t,e){return await this.resend.patch(`/webhooks/${t}`,e)}async remove(t){return await this.resend.delete(`/webhooks/${t}`)}verify(t){return new Uo.Webhook(t.webhookSecret).verify(t.payload,{"webhook-id":t.headers.id,"webhook-timestamp":t.headers.timestamp,"webhook-signature":t.headers.signature})}},Mo="https://api.resend.com",qo=`resend-node:${wd}`;function Yd(){return typeof process<"u"&&process.env&&process.env.RESEND_BASE_URL||Mo}function Qd(){return typeof process<"u"&&process.env&&process.env.RESEND_USER_AGENT||qo}var Dt=class{constructor(t,e){if(this.key=t,this.segments=new Ud(this),this.apiKeys=new _d(this),this.audiences=this.segments,this.automations=new $d(this),this.batch=new Dd(this),this.broadcasts=new Sd(this),this.contactProperties=new Td(this),this.contacts=new jd(this),this.domains=new Bd(this),this.emails=new Gd(this),this.events=new Md(this),this.logs=new qd(this),this.templates=new Kd(this),this.topics=new zd(this),this.webhooks=new Jd(this),!t&&(typeof process<"u"&&process.env&&(this.key=process.env.RESEND_API_KEY),!this.key))throw new Error('Missing API key. Pass it to the constructor `new Resend("re_123")`');this.baseUrl=e?.baseUrl??Yd(),this.userAgent=e?.userAgent??Qd(),this.headers=new Headers({Authorization:`Bearer ${this.key}`,"User-Agent":this.userAgent,"Content-Type":"application/json"})}async fetchRequest(t,e={}){try{let r=await fetch(`${this.baseUrl}${t}`,e);if(!r.ok)try{let n=await r.text();return{data:null,error:JSON.parse(n),headers:Object.fromEntries(r.headers.entries())}}catch(n){if(n instanceof SyntaxError)return{data:null,error:{name:"application_error",statusCode:r.status,message:"Internal server error. We are unable to process your request right now, please try again later."},headers:Object.fromEntries(r.headers.entries())};let i={message:r.statusText,statusCode:r.status,name:"application_error"};return n instanceof Error?{data:null,error:{...i,message:n.message},headers:Object.fromEntries(r.headers.entries())}:{data:null,error:i,headers:Object.fromEntries(r.headers.entries())}}return{data:await r.json(),error:null,headers:Object.fromEntries(r.headers.entries())}}catch{return{data:null,error:{name:"application_error",statusCode:null,message:"Unable to fetch data. The request could not be resolved."},headers:null}}}async post(t,e,r={}){let n=new Headers(this.headers),i=typeof FormData<"u"&&e instanceof FormData;if(i&&n.delete("Content-Type"),r.headers)for(let[s,a]of new Headers(r.headers).entries())n.set(s,a);r.idempotencyKey&&n.set("Idempotency-Key",r.idempotencyKey);let o={method:"POST",body:i?e:JSON.stringify(e),...r,headers:n};return this.fetchRequest(t,o)}async get(t,e={}){let r=new Headers(this.headers);if(e.headers)for(let[i,o]of new Headers(e.headers).entries())r.set(i,o);let n={method:"GET",...e,headers:r};return this.fetchRequest(t,n)}async put(t,e,r={}){let n=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())n.set(o,s);let i={method:"PUT",body:JSON.stringify(e),...r,headers:n};return this.fetchRequest(t,i)}async patch(t,e,r={}){let n=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())n.set(o,s);let i={method:"PATCH",body:JSON.stringify(e),...r,headers:n};return this.fetchRequest(t,i)}async delete(t,e,r={}){let n=new Headers(this.headers);if(r.headers)for(let[o,s]of new Headers(r.headers).entries())n.set(o,s);let i={method:"DELETE",body:e===void 0?void 0:JSON.stringify(e),...r,headers:n};return this.fetchRequest(t,i)}};ye();var ii=pe(et(),1);function V(t,e){return t instanceof Error?t.message:e}function hs(t){return!!(t||!process.stdout.isTTY)}function B(t,e={}){hs(e.json)?console.log(JSON.stringify(t,null,2)):console.log(typeof t=="string"?t:JSON.stringify(t,null,2)),e.exitCode!==void 0&&process.exit(e.exitCode)}var sm=new Set(["content-type","retry-after"]);function am(t){let e={};for(let[r,n]of Object.entries(t)){let i=r.toLowerCase();(sm.has(i)||i.startsWith("x-"))&&(e[i]=n)}return e}function h(t,e={}){let r=e.exitCode??1,n=t.headers&&Object.keys(t.headers).length>0?am(t.headers):void 0,i=n!==void 0&&Object.keys(n).length>0;if(hs(e.json)){let o={message:t.message,code:t.code??"unknown"};typeof t.statusCode=="number"&&(o.statusCode=t.statusCode),i&&(o.headers=n),typeof t.body=="string"&&t.body.length>0&&(o.body=t.body),console.error(JSON.stringify({error:o},null,2))}else{console.error(`${ii.default.red("Error:")} ${t.message}`);let o=[];if(typeof t.statusCode=="number"&&o.push(`HTTP ${t.statusCode}`),i)for(let[s,a]of Object.entries(n))o.push(`${s}: ${a}`);o.length>0&&console.error(ii.default.dim(`[${o.join("; ")}]`))}process.exit(r)}var gs={sending_access:0,full_access:1};function lm(t,e){return gs[t]>=gs[e]}async function X(t,e){let r=t.profile;try{let n=await _t(t.apiKey,r);if(!n){if(r){let i=we();if(!i.some(s=>s.name===r))throw new Error(`Profile "${r}" not found. Available profiles: ${i.map(s=>s.name).join(", ")||"(none)"}`)}throw new Error("No API key found. Set RESEND_API_KEY, use --api-key, or run: resend login")}if(n.permission){let i=e?.permission??"full_access";lm(n.permission,i)||h({message:`This command requires a full access API key. Your current key has sending access only.
185
+ ${Tt}`,code:"insufficient_permissions"},{json:t.json})}return new Dt(n.key)}catch(n){h({message:V(n,"Failed to create client"),code:"auth_error"},{json:t.json})}}var bs=130;function cm(){process.stderr.isTTY&&process.stderr.write("\r\x1B[2K"),console.error("Cancelled."),process.exit(bs)}var Ot;function ys(){Ot=cm,process.on("SIGINT",Ot),process.on("uncaughtException",t=>{h({message:V(t,"An unexpected error occurred"),code:"unexpected_error"},{}),process.exit(1)})}function Gr(t){Ot&&process.removeListener("SIGINT",Ot),Ot=t,process.on("SIGINT",Ot)}function It(){return bs}ye();var Mr=pe(et(),1);z();var vs=[1,2,4],um=vs.length,dm=new Set(["internal_server_error","service_unavailable","gateway_timeout"]),mm=(t,e)=>!!(t==="rate_limit_exceeded"||e&&t!==void 0&&dm.has(t)),pm=t=>{let e=t?.["retry-after"];if(!e)return;let r=Number(e);if(Number.isFinite(r)&&r>=0)return r;let n=Date.parse(e);if(!Number.isNaN(n)){let i=(n-Date.now())/1e3;return i>0?i:0}},fm=t=>new Promise(e=>setTimeout(e,t)),sr=async(t,e,r=0)=>{let n=await t(),i=e?.retryTransient??!1;if(n.error&&r<um&&mm(n.error.name,i)){let o=pm(n.headers)??vs[r];return e?.onRetry?.(r,o,n.error.name??""),await fm(o*1e3),sr(t,e,r+1)}return n};var Cs=(t,e)=>new Promise((r,n)=>{let i=setTimeout(()=>{n(new Error(`Request timed out after ${e/1e3}s`))},e);i.unref(),t.then(o=>{clearTimeout(i),r(o)},o=>{clearTimeout(i),n(o)})});var gm=Qe?String.fromCodePoint(10004):"v",bm=Qe?String.fromCodePoint(9888):"!",ym=Qe?String.fromCodePoint(10007):"x",vm=["\u2839","\u2838","\u2834","\u2826","\u2807","\u280F","\u2819","\u2839"],Cm=80;async function Ee(t,e,r,n,i={}){let o=ae(t,n.quiet);try{let{data:s,error:a,headers:l}=await sr(()=>Cs(e(),3e4),{retryTransient:i.retryTransient,onRetry:(d,c,u)=>{o.update(u==="rate_limit_exceeded"?`Rate limited, retrying in ${c}s...`:`Server error, retrying in ${c}s...`)}});return a&&(o.stop(),h({message:a.message,code:r,statusCode:a.statusCode,headers:l},{json:n.json})),s===null&&(o.stop(),h({message:"Unexpected empty response",code:r,headers:l},{json:n.json})),o.stop(),s}catch(s){return o.stop(),h({message:V(s,"Unknown error"),code:r},{json:n.json})}}function ae(t,e){if(e||!w())return{update(a){},stop(a){},clear(){},warn(a){},fail(a){}};let r=Qe?vm:["-","\\","|","/"],n=Cm,i=0,o=t,s=setInterval(()=>{process.stderr.write(`\r\x1B[2K ${r[i++%r.length]} ${o}`)},n);return{update(a){o=a},stop(a){clearInterval(s),a?process.stderr.write(`\r\x1B[2K ${Mr.default.green(gm)} ${a}
186
+ `):process.stderr.write("\r\x1B[2K")},clear(){clearInterval(s),process.stderr.write("\r\x1B[2K")},warn(a){clearInterval(s),process.stderr.write(`\r\x1B[2K ${Mr.default.yellow(bm)} ${a}
187
+ `)},fail(a){clearInterval(s),process.stderr.write(`\r\x1B[2K ${Mr.default.red(ym)} ${a}
188
+ `)}}}z();function S(t){po(t),process.exit(It())}async function xs(t,e,r){(!w()||r.json)&&h({message:"Use --yes to confirm deletion in non-interactive mode.",code:"confirmation_required"},{json:r.json});let n=await rt({message:e});(k(n)||!n)&&S("Deletion cancelled.")}async function qr(t,e){let r=se(t);if(!r)return t;if(!w()||e.json)return h({message:`Profile "${t}" has an invalid name: ${r}`,code:"invalid_profile_name"},{json:e.json}),null;Q.warn(`Profile "${t}" has an invalid name: ${r}`);let n=await Y({message:"Enter a new name for this profile:",placeholder:t.replace(/[^a-zA-Z0-9._-]/g,"-"),validate:i=>se(i)});k(n)&&S("Rename cancelled.");try{await Lr(t,n)}catch(i){return h({message:V(i,"Failed to rename profile"),code:"rename_failed"},{json:e.json}),null}return Q.success(`Profile renamed to '${n}'.`),n}async function q(t,e,r,n){if(t!==void 0)return t;(!w()||n.json)&&h(r,{json:n.json});let i=await Y({message:e.message,placeholder:e.placeholder,defaultValue:e.defaultValue,validate:e.validate??(o=>!e.defaultValue&&(!o||o.length===0)?`${e.message} is required`:void 0)});return k(i)&&S("Cancelled."),i}async function Pt(t,e,r,n){if(t!==void 0)return t;(!w()||n.json)&&h(r,{json:n.json});let i=await ie({message:e.message,options:e.options});return k(i)&&S("Cancelled."),i}async function As(t,e,r){let n=e.filter(s=>s.required!==!1&&t[s.flag]==="");if(n.length>0){let s=n.map(a=>`--${a.flag}`).join(", ");h({message:`Empty value for required flags: ${s}`,code:"invalid_options"},{json:r.json})}let i=e.filter(s=>s.required!==!1&&!t[s.flag]);if(i.length===0)return t;if(!w()||r.json){let s=i.map(a=>`--${a.flag}`).join(", ");h({message:`Missing required flags: ${s}`,code:"missing_flags"},{json:r.json})}let o=await mo(Object.fromEntries(i.map(s=>[s.flag,()=>Y({message:s.message,placeholder:s.placeholder,defaultValue:s.defaultValue,validate:s.validate??(a=>!s.defaultValue&&(!a||a.length===0)?`${s.message} is required`:void 0)})])),{onCancel:()=>S("Operation cancelled.")});return{...t,...o}}var wm=20,ws="__fetch_more__",_s="__none__";async function le(t,e,r,n){if(t)return{id:t,label:t};let i=n?.optional??!1;if(!w()||r.json){if(i)return;h({message:"Missing required argument: id",code:"missing_id"},{json:r.json})}let o=await X(r),s=[];for(;;){let a=s.at(-1)?.id,l=ae(s.length===0?`Fetching ${e.resourcePlural}...`:`Fetching more ${e.resourcePlural}...`,r.quiet),d=await e.fetchItems(o,{limit:wm,...a&&{after:a}});if(d.error||!d.data){if(i){l.clear();return}l.fail(`Failed to fetch ${e.resourcePlural}`),h({message:d.error?.message??"Unexpected empty response",code:"list_error"},{json:r.json})}s.push(...d.data.data);let c=d.data.has_more??!1,u=e.filter?s.filter(e.filter):s;if(u.length===0&&!c&&i){l.clear();return}if(l.stop(s.length===u.length?`${e.resourcePlural} fetched`:`More ${e.resourcePlural} fetched`),u.length===0&&!c&&(Q.warn(`No ${e.resourcePlural} found.`),h({message:`No ${e.resourcePlural} found.`,code:"no_items"},{json:r.json})),u.length===0&&c&&!i)continue;let m=u.map(b=>({item:b,...e.display(b)})),y=m.map(({item:b,label:_,hint:A})=>({value:b.id,label:_,hint:A}));i&&y.unshift({value:_s,label:"None"}),c&&y.push({value:ws,label:"Fetch more..."});let g=await ie({message:`Select a ${e.resource}`,options:y});if(k(g)&&S("Cancelled."),g===_s)return;if(g!==ws){let b=m.find(({item:_})=>_.id===g);return{id:g,label:b?.label??g}}}}async function C(t,e,r,n){return(await le(t,e,r,n))?.id}var ks=require("node:util"),_m=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]|\r(?!\n)/g,_e=t=>(0,ks.stripVTControlCharacters)(String(t)).replace(_m,"");function jt(t){return typeof t=="string"?_e(t):Array.isArray(t)?t.map(jt):t!==null&&typeof t=="object"?Object.fromEntries(Object.entries(t).map(([e,r])=>[e,jt(r)])):t}z();async function H(t,e){let r=t.permission?{permission:t.permission}:void 0,n=await X(e,r),i=await Ee(t.loading,()=>t.sdkCall(n),"fetch_error",e,{retryTransient:!0});!e.json&&w()?t.onInteractive(jt(i)):B(i,{json:e.json})}async function re(t,e,r,n){let i=r.permission?{permission:r.permission}:void 0,o=await X(n,i);e||await xs(t,r.confirmMessage,n),await Ee(r.loading,()=>r.sdkCall(o),"delete_error",n),!n.json&&w()?console.log(r.successMsg):B({object:r.object,id:t,deleted:!0},{json:n.json})}async function J(t,e){let r=t.permission?{permission:t.permission}:void 0,n=await X(e,r),i=await Ee(t.loading,()=>t.sdkCall(n),"create_error",e);!e.json&&w()?t.onInteractive(jt(i)):B(i,{json:e.json})}async function R(t,e){let r=t.permission?{permission:t.permission}:void 0,n=await X(e,r),i=await Ee(t.loading,()=>t.sdkCall(n),t.errorCode,e,{retryTransient:t.retryTransient});!e.json&&w()?console.log(t.successMsg):B(i,{json:e.json})}async function P(t,e){let r=t.permission?{permission:t.permission}:void 0,n=await X(e,r),i=await Ee(t.loading,()=>t.sdkCall(n),"list_error",e,{retryTransient:!0});!e.json&&w()?t.onInteractive(jt(i)):B(i,{json:e.json})}z();z();var ue=Qe?{h:String.fromCodePoint(9472),v:String.fromCodePoint(9474),tl:String.fromCodePoint(9484),tr:String.fromCodePoint(9488),bl:String.fromCodePoint(9492),br:String.fromCodePoint(9496),lm:String.fromCodePoint(9500),rm:String.fromCodePoint(9508),tm:String.fromCodePoint(9516),bm:String.fromCodePoint(9524),mm:String.fromCodePoint(9532)}:{h:"-",v:"|",tl:"+",tr:"+",bl:"+",br:"+",lm:"+",rm:"+",tm:"+",bm:"+",mm:"+"};function xm(){return process.stdout.columns}function Am(t,e,r){let n=Math.max(...t.map(o=>o.length)),i=Math.max(20,Math.min(r,60));return e.map((o,s)=>{let a=String(s+1),l=`${ue.h}${ue.h} ${a} ${ue.h.repeat(Math.max(0,i-a.length-4))}`,d=t.map((c,u)=>` ${c.padEnd(n)} ${o[u]}`);return[l,...d].join(`
190
189
  `)}).join(`
191
190
 
192
- `)}function F(e,t,r="(no results)"){if(t.length===0)return r;let i=t.map(l=>l.map(je)),n=e.map((l,c)=>Math.max(l.length,...i.map(m=>m[c].length))),o=Fw();if(o!==void 0&&n.reduce((c,m)=>c+m,0)+3*n.length+1>o)return Hw(e,i,o);let s=Ce.tl+n.map(l=>Ce.h.repeat(l+2)).join(Ce.tm)+Ce.tr,a=Ce.lm+n.map(l=>Ce.h.repeat(l+2)).join(Ce.mm)+Ce.rm,u=Ce.bl+n.map(l=>Ce.h.repeat(l+2)).join(Ce.bm)+Ce.br,d=l=>Ce.v+" "+l.map((c,m)=>c.padEnd(n[m])).join(` ${Ce.v} `)+" "+Ce.v;return[s,d(e),a,...i.map(d),u].join(`
193
- `)}X();var ac=bt?String.fromCodePoint(9472):"-";function qa(e,t){return e.length===0?"(no DNS records)":e.map(i=>{let n=i.name?i.name.includes(".")?i.name:`${i.name}.${t}`:t;return[`${ac}${ac} ${i.type} ${ac.repeat(40)}`,` Name ${n}`,` TTL ${i.ttl}`,` Value ${i.value}`].join(`
191
+ `)}function N(t,e,r="(no results)"){if(e.length===0)return r;let n=e.map(c=>c.map(_e)),i=t.map((c,u)=>Math.max(c.length,...n.map(m=>m[u].length))),o=xm();if(o!==void 0&&i.reduce((u,m)=>u+m,0)+3*i.length+1>o)return Am(t,n,o);let s=ue.tl+i.map(c=>ue.h.repeat(c+2)).join(ue.tm)+ue.tr,a=ue.lm+i.map(c=>ue.h.repeat(c+2)).join(ue.mm)+ue.rm,l=ue.bl+i.map(c=>ue.h.repeat(c+2)).join(ue.bm)+ue.br,d=c=>ue.v+" "+c.map((u,m)=>u.padEnd(i[m])).join(` ${ue.v} `)+" "+ue.v;return[s,d(t),a,...n.map(d),l].join(`
192
+ `)}z();var oi=Qe?String.fromCodePoint(9472):"-";function Ur(t,e){return t.length===0?"(no DNS records)":t.map(n=>{let i=n.name?n.name.includes(".")?n.name:`${n.name}.${e}`:e;return[`${oi}${oi} ${n.type} ${oi.repeat(40)}`,` Name ${i}`,` TTL ${n.ttl}`,` Value ${n.value}`].join(`
194
193
  `)}).join(`
195
194
 
196
- `)}function u_(e){let t=e.map(r=>[r.name,r.status,r.region,r.id]);return F(["Name","Status","Region","ID"],t,"(no domains)")}function l_(e){switch(e){case"verified":return"\u2713 Verified";case"pending":return"\u23F3 Pending";case"not_started":return"\u25CB Not started";case"partially_verified":return"\u25D0 Partially verified";case"partially_failed":return"\u25D0 Partially failed";case"failed":case"temporary_failure":return"\u2717 Failed";default:return e}}var dt={resource:"domain",resourcePlural:"domains",fetchItems:(e,{limit:t,after:r})=>e.domains.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};var c_=new p("create").description("Create a new API key and display the token (shown once \u2014 store it immediately)").option("--name <name>","API key name (max 50 characters)").addOption(new le("--permission <permission>","Permission level").choices(["full_access","sending_access"])).option("--domain-id <id>","Restrict a sending_access key to a single domain ID").addHelpText("after",h({context:`Non-interactive: --name is required (no prompts when stdin/stdout is not a TTY).
195
+ `)}function $s(t){let e=t.map(r=>[r.name,r.status,r.region,r.id]);return N(["Name","Status","Region","ID"],e,"(no domains)")}function Es(t){switch(t){case"verified":return"\u2713 Verified";case"pending":return"\u23F3 Pending";case"not_started":return"\u25CB Not started";case"partially_verified":return"\u25D0 Partially verified";case"partially_failed":return"\u25D0 Partially failed";case"failed":case"temporary_failure":return"\u2717 Failed";default:return t}}var De={resource:"domain",resourcePlural:"domains",fetchItems:(t,{limit:e,after:r})=>t.domains.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};var Ds=new p("create").description("Create a new API key and display the token (shown once \u2014 store it immediately)").option("--name <name>","API key name (max 50 characters)").addOption(new ee("--permission <permission>","Permission level").choices(["full_access","sending_access"])).option("--domain-id <id>","Restrict a sending_access key to a single domain ID").addHelpText("after",f({context:`Non-interactive: --name is required (no prompts when stdin/stdout is not a TTY).
197
196
 
198
197
  Permissions:
199
198
  full_access Full API access (default)
200
199
  sending_access Send-only access; optionally scope to a domain with --domain-id`,output:` {"id":"<id>","token":"<token>"}
201
- The token is only returned at creation time and cannot be retrieved again.`,errorCodes:["auth_error","missing_name","invalid_flags","create_error"],examples:['resend api-keys create --name "Production"','resend api-keys create --name "CI Token" --permission sending_access','resend api-keys create --name "Domain Token" --permission sending_access --domain-id <domain-id>','resend api-keys create --name "Production" --json']})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=e.name,n=e.permission;if(!i){(!O()||r.json)&&g({message:"Missing --name flag.",code:"missing_name"},{json:r.json});let s=await ee({message:"Key name",placeholder:"e.g. My API Key",validate:u=>{if(!u)return"Name is required";if(u.length>50)return"Name must be 50 characters or less"}});k(s)&&T("Cancelled."),i=s;let a=await me({message:"Permission level",options:[{value:"full_access",label:"Full access"},{value:"sending_access",label:"Sending access only"}]});k(a)&&T("Cancelled."),n=a}let o=e.domainId;o!==void 0&&n!=="sending_access"&&g({message:"--domain-id requires --permission sending_access",code:"invalid_flags"},{json:r.json}),!o&&n==="sending_access"&&(o=await C(void 0,dt,r,{optional:!0})),await te({loading:"Creating API key...",sdkCall:s=>s.apiKeys.create({name:i,...n&&{permission:n},...o&&{domain_id:o}}),onInteractive:s=>{console.log(` ${ti.default.gray("Name:")} ${i}`),console.log(` ${ti.default.gray("ID:")} ${s.id}`),console.log(` ${ti.default.gray("Token:")} ${s.token}`),console.log(`
202
- ${ti.default.yellow("\u26A0")} Store this token now \u2014 it cannot be retrieved again.`)}},r)});var d_={resource:"API key",resourcePlural:"API keys",fetchItems:(e,{limit:t,after:r})=>e.apiKeys.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};function m_(e){let t=e.map(r=>[r.name,r.id,r.created_at,r.last_used_at??""]);return F(["Name","ID","Created","Last used"],t,"(no API keys)")}var p_=new p("delete").alias("rm").description("Delete an API key \u2014 any services using it will immediately lose access").argument("[id]","API key ID").option("--yes","Skip confirmation prompt").addHelpText("after",h({context:`Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.
200
+ The token is only returned at creation time and cannot be retrieved again.`,errorCodes:["auth_error","missing_name","invalid_flags","create_error"],examples:['resend api-keys create --name "Production"','resend api-keys create --name "CI Token" --permission sending_access','resend api-keys create --name "Domain Token" --permission sending_access --domain-id <domain-id>','resend api-keys create --name "Production" --json']})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=t.name,i=t.permission;if(!n){(!w()||r.json)&&h({message:"Missing --name flag.",code:"missing_name"},{json:r.json});let s=await Y({message:"Key name",placeholder:"e.g. My API Key",validate:l=>{if(!l)return"Name is required";if(l.length>50)return"Name must be 50 characters or less"}});k(s)&&S("Cancelled."),n=s;let a=await ie({message:"Permission level",options:[{value:"full_access",label:"Full access"},{value:"sending_access",label:"Sending access only"}]});k(a)&&S("Cancelled."),i=a}let o=t.domainId;o!==void 0&&i!=="sending_access"&&h({message:"--domain-id requires --permission sending_access",code:"invalid_flags"},{json:r.json}),!o&&i==="sending_access"&&(o=await C(void 0,De,r,{optional:!0})),await J({loading:"Creating API key...",sdkCall:s=>s.apiKeys.create({name:n,...i&&{permission:i},...o&&{domain_id:o}}),onInteractive:s=>{console.log(` ${ar.default.gray("Name:")} ${n}`),console.log(` ${ar.default.gray("ID:")} ${s.id}`),console.log(` ${ar.default.gray("Token:")} ${s.token}`),console.log(`
201
+ ${ar.default.yellow("\u26A0")} Store this token now \u2014 it cannot be retrieved again.`)}},r)});var Ss={resource:"API key",resourcePlural:"API keys",fetchItems:(t,{limit:e,after:r})=>t.apiKeys.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};function Ts(t){let e=t.map(r=>[r.name,r.id,r.created_at,r.last_used_at??""]);return N(["Name","ID","Created","Last used"],e,"(no API keys)")}var Os=new p("delete").alias("rm").description("Delete an API key \u2014 any services using it will immediately lose access").argument("[id]","API key ID").option("--yes","Skip confirmation prompt").addHelpText("after",f({context:`Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.
203
202
 
204
203
  Warning: Deleting a key is immediate and irreversible. Any service using this key
205
204
  will stop authenticating instantly. The current key (used to call this command)
206
- can delete itself \u2014 the API does not prevent self-deletion.`,output:' {"object":"api-key","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend api-keys delete dacf4072-aa82-4ff3-97de-514ae3000ee0 --yes","resend api-keys delete dacf4072-aa82-4ff3-97de-514ae3000ee0 --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,d_,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete API key "${n.label}"?
207
- ID: ${n.id}
208
- Any services using this key will stop working.`,loading:"Deleting API key...",object:"api-key",successMsg:"API key deleted",sdkCall:o=>o.apiKeys.remove(n.id)},i)});Pe();function L(e,t){let r=parseInt(e,10);return(Number.isNaN(r)||r<1||r>100)&&g({message:"--limit must be an integer between 1 and 100",code:"invalid_limit"},{json:t.json}),r}function N(e,t,r,i){return t!==void 0&&r!==void 0&&g({message:"Cannot use --after and --before together. Pass only one cursor.",code:"invalid_pagination"},{json:i.json}),t!==void 0?{limit:e,after:t}:r!==void 0?{limit:e,before:r}:{limit:e}}function G(e,t,r){if(!e.has_more||e.data.length===0)return;let i=!!r.before,n=i?e.data[0].id:e.data[e.data.length-1].id,o=i?"--before":"--after",s=r.limit?` --limit ${r.limit}`:"",a=r.apiKey?` --api-key ${rr(r.apiKey)}`:"",u=r.profile?` --profile ${r.profile}`:"";console.log(`
205
+ can delete itself \u2014 the API does not prevent self-deletion.`,output:' {"object":"api-key","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend api-keys delete dacf4072-aa82-4ff3-97de-514ae3000ee0 --yes","resend api-keys delete dacf4072-aa82-4ff3-97de-514ae3000ee0 --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,Ss,n);await re(i.id,!!e.yes,{confirmMessage:`Delete API key "${i.label}"?
206
+ ID: ${i.id}
207
+ Any services using this key will stop working.`,loading:"Deleting API key...",object:"api-key",successMsg:"API key deleted",sdkCall:o=>o.apiKeys.remove(i.id)},n)});ye();function L(t,e){let r=parseInt(t,10);return(Number.isNaN(r)||r<1||r>100)&&h({message:"--limit must be an integer between 1 and 100",code:"invalid_limit"},{json:e.json}),r}function G(t,e,r,n){return e!==void 0&&r!==void 0&&h({message:"Cannot use --after and --before together. Pass only one cursor.",code:"invalid_pagination"},{json:n.json}),e!==void 0?{limit:t,after:e}:r!==void 0?{limit:t,before:r}:{limit:t}}function M(t,e,r){if(!t.has_more||t.data.length===0)return;let n=!!r.before,i=n?t.data[0].id:t.data[t.data.length-1].id,o=n?"--before":"--after",s=r.limit?` --limit ${r.limit}`:"",a=r.apiKey?` --api-key ${wt(r.apiKey)}`:"",l=r.profile?` --profile ${r.profile}`:"";console.log(`
209
208
  Fetch the next page:
210
- $ resend ${t} ${o} ${n}${s}${a}${u}`)}var f_=new p("list").alias("ls").description("List all API keys (IDs and names \u2014 tokens are never returned by this endpoint)").option("--limit <n>","Maximum number of API keys to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",h({output:` {"object":"list","has_more":false,"data":[{"id":"<id>","name":"<name>","created_at":"<date>","last_used_at":"<date>|null"}]}
211
- Tokens are never included in list responses.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend api-keys list","resend api-keys list --limit 25 --json","resend api-keys list --after <cursor> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching API keys...",sdkCall:o=>o.apiKeys.list(n),onInteractive:o=>{console.log(m_(o.data)),G(o,"api-keys list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var h_=new p("api-keys").description("Manage API keys for authentication").addHelpText("after",h({context:`Security notes:
209
+ $ resend ${e} ${o} ${i}${s}${a}${l}`)}var Is=new p("list").alias("ls").description("List all API keys (IDs and names \u2014 tokens are never returned by this endpoint)").option("--limit <n>","Maximum number of API keys to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",f({output:` {"object":"list","has_more":false,"data":[{"id":"<id>","name":"<name>","created_at":"<date>","last_used_at":"<date>|null"}]}
210
+ Tokens are never included in list responses.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend api-keys list","resend api-keys list --limit 25 --json","resend api-keys list --after <cursor> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching API keys...",sdkCall:o=>o.apiKeys.list(i),onInteractive:o=>{console.log(Ts(o.data)),M(o,"api-keys list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Ps=new p("api-keys").description("Manage API keys for authentication").addHelpText("after",f({context:`Security notes:
212
211
  - Tokens are only shown at creation time and cannot be retrieved again.
213
212
  - Use sending_access keys with --domain-id for per-domain CI tokens.
214
- - Deleting a key is immediate \u2014 any service using it loses access instantly.`,examples:["resend api-keys list",'resend api-keys create --name "Production"','resend api-keys create --name "CI Token" --permission sending_access --domain-id <domain-id>',"resend api-keys delete <id> --yes"]})).addCommand(c_).addCommand(f_,{isDefault:!0}).addCommand(p_);Pe();X();function Bw(e){let t=$e();if(e.json){z({profiles:t},{json:!0});return}if(t.length===0){console.log("No profiles configured. Run: resend login");return}O()&&console.log(`
213
+ - Deleting a key is immediate \u2014 any service using it loses access instantly.`,examples:["resend api-keys list",'resend api-keys create --name "Production"','resend api-keys create --name "CI Token" --permission sending_access --domain-id <domain-id>',"resend api-keys delete <id> --yes"]})).addCommand(Ds).addCommand(Is,{isDefault:!0}).addCommand(Os);ye();z();function km(t){let e=we();if(t.json){B({profiles:e},{json:!0});return}if(e.length===0){console.log("No profiles configured. Run: resend login");return}w()&&console.log(`
215
214
  Profiles
216
- `);let r=!1;for(let i of t){let n=i.active?" (active)":"",o=pe(i.name)!==void 0;o&&(r=!0),console.log(` ${i.active?"\u25B8":" "} ${i.name}${n}${o?" (invalid name)":""}`)}r&&O()&&console.log("\n Profiles with invalid names can be renamed via `resend auth rename`."),O()&&console.log("")}var g_=new p("list").description("List all profiles").action((e,t)=>{Bw(t.optsWithGlobals())});var b_=require("node:child_process"),ri=we(yt(),1),st="https://resend.com";function uc(e){return new Promise(t=>{let r=process.platform==="win32"?"cmd.exe":process.platform==="darwin"?"open":"xdg-open",i=e.replaceAll('"',""),n=process.platform==="win32"?["/c","start",'""',`"${i}"`]:[e];(0,b_.execFile)(r,n,{timeout:5e3,windowsVerbatimArguments:!0},o=>t(!o))})}async function Be(e,t){let r=await uc(e);t?.json||t?.quiet||(r?console.log(ri.default.dim("Opened"),ri.default.blue(e)):console.warn(ri.default.yellow("Could not open browser. Visit this link:"),ri.default.blue(e)))}var Oe={emails:`${st}/emails`,logs:`${st}/logs`,log:e=>`${st}/logs/${e}`,templates:`${st}/templates`,template:e=>`${st}/templates/${e}`,broadcasts:`${st}/broadcasts`,broadcast:e=>`${st}/broadcasts/${e}`,documentation:`${st}/docs`,automations:`${st}/automations`,automation:e=>`${st}/automations/${e}/editor`,events:`${st}/automations/events`};Pe();X();var lc="https://resend.com/api-keys?new=true",Ra=new p("login").description("Save a Resend API key").option("--key <key>","API key to store (required in non-interactive mode)").addHelpText("after",h({setup:!0,context:"Non-interactive: --key is required (no prompts will appear when stdin/stdout is not a TTY).",output:' {"success":true,"config_path":"<path>","profile":"<name>"}',errorCodes:["missing_key","invalid_key_format","validation_failed","invalid_profile_name","switch_failed","write_failed"],examples:["resend login --key re_123456789","resend login (interactive \u2014 prompts and opens browser)","RESEND_API_KEY=re_123 resend emails send ... (skip login; use env var directly)"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=typeof e.key=="string"?e.key.trim():e.key;if(!i){(!O()||r.json)&&g({message:"Missing --key flag. Provide your API key in non-interactive mode.",code:"missing_key"},{json:r.json}),hd("Resend Authentication"),re.info(`Use a full access API key for complete CLI access.
217
- ${Cr}`);let l=await me({message:"How would you like to get your API key?",options:[{value:"browser",label:"Open resend.com/api-keys in browser"},{value:"manual",label:"Enter API key manually"}]});k(l)&&T("Login cancelled."),l==="browser"&&(await uc(lc)?re.info(`Opened ${lc}`):re.warn(`Could not open browser. Visit ${lc} manually.`));let c=await bd({message:"Enter your Resend API key:",validate:m=>{if(!m)return"API key is required";if(!m.startsWith("re_"))return"API key must start with re_"}});k(c)&&T("Login cancelled."),i=c.trim()}(!i||!i.startsWith("re_"))&&g({message:"Invalid API key format. Key must start with re_",code:"invalid_key_format"},{json:r.json});let n=fe("Validating API key...",r.quiet),o="full_access";try{let l=new vr(i),{error:c}=await l.domains.list();if(c){let m=c;if(m.name==="restricted_api_key")o="sending_access",n.warn("API key is valid (sending access only)");else{n.fail("API key validation failed"),g({message:m.message||"Failed to validate API key",code:"validation_failed"},{json:r.json});return}}else n.stop("API key is valid (full access)")}catch(l){n.fail("API key validation failed"),g({message:Y(l,"Failed to validate API key"),code:"validation_failed"},{json:r.json})}let s=r.profile?.trim()||void 0;if(s){let l=pe(s);if(l){g({message:l,code:"invalid_profile_name"},{json:r.json});return}}if(!s&&O()&&!r.json){let l=$e();if(l.length>0){let c=[...l.map(v=>({value:v.name,label:`${v.name} (overwrite)`,hint:pe(v.name)?"invalid name":void 0})),{value:"__new__",label:"+ Create new profile"}],m=await me({message:"Save API key to which profile?",options:c});if(k(m)&&T("Login cancelled."),m==="__new__"){let v=await ee({message:"Enter a name for the new profile:",validate:_=>pe((_??"").trim())});if(k(v)&&T("Login cancelled."),s=(v??"").trim()||"default",l.some(_=>_.name===s)){let _=await Ot({message:`Profile '${s}' already exists. Overwrite?`});(k(_)||!_)&&T("Login cancelled.")}}else if(pe(m)){let v=await Da(m,r);if(!v)return;s=v}else s=m}else s="default"}let{configPath:a,backend:u}=await Kb(i,s,o),d=s||"default";if(s)try{Pa(d)}catch(l){g({message:Y(l,"Failed to switch profile"),code:"switch_failed"},{json:r.json})}if(r.json)z({success:!0,config_path:a,profile:d,storage:u.name,permission:o},{json:!0});else{let l=u.isSecure?`in ${u.name}`:`at ${a}`,c=`API key stored for profile '${d}' ${l}`;if(O()?yi(c):console.log(c),!u.isSecure&&process.platform==="linux"){let m="Tip: Install libsecret-tools and a Secret Service provider (e.g. gnome-keyring) to store keys in secure storage instead of a plaintext file.";O()?re.info(m):console.log(m)}}});var __=require("node:fs");Pe();X();var Ma=new p("logout").description("Remove your saved Resend API key").addHelpText("after",h({setup:!0,context:`Removes the saved API key from secure storage and the credentials file.
215
+ `);let r=!1;for(let n of e){let i=n.active?" (active)":"",o=se(n.name)!==void 0;o&&(r=!0),console.log(` ${n.active?"\u25B8":" "} ${n.name}${i}${o?" (invalid name)":""}`)}r&&w()&&console.log("\n Profiles with invalid names can be renamed via `resend auth rename`."),w()&&console.log("")}var js=new p("list").description("List all profiles").action((t,e)=>{km(e.optsWithGlobals())});var Rs=require("node:child_process"),lr=pe(et(),1),Ge="https://resend.com";function si(t){return new Promise(e=>{let r=process.platform==="win32"?"cmd.exe":process.platform==="darwin"?"open":"xdg-open",n=t.replaceAll('"',""),i=process.platform==="win32"?["/c","start",'""',`"${n}"`]:[t];(0,Rs.execFile)(r,i,{timeout:5e3,windowsVerbatimArguments:!0},o=>e(!o))})}async function Se(t,e){let r=await si(t);e?.json||e?.quiet||(r?console.log(lr.default.dim("Opened"),lr.default.blue(t)):console.warn(lr.default.yellow("Could not open browser. Visit this link:"),lr.default.blue(t)))}var de={emails:`${Ge}/emails`,logs:`${Ge}/logs`,log:t=>`${Ge}/logs/${t}`,templates:`${Ge}/templates`,template:t=>`${Ge}/templates/${t}`,broadcasts:`${Ge}/broadcasts`,broadcast:t=>`${Ge}/broadcasts/${t}`,documentation:`${Ge}/docs`,automations:`${Ge}/automations`,automation:t=>`${Ge}/automations/${t}/editor`,events:`${Ge}/automations/events`};ye();z();var ai="https://resend.com/api-keys?new=true",Wr=new p("login").description("Save a Resend API key").option("--key <key>","API key to store (required in non-interactive mode)").addHelpText("after",f({setup:!0,context:"Non-interactive: --key is required (no prompts will appear when stdin/stdout is not a TTY).",output:' {"success":true,"config_path":"<path>","profile":"<name>"}',errorCodes:["missing_key","invalid_key_format","validation_failed","invalid_profile_name","switch_failed","write_failed"],examples:["resend login --key re_123456789","resend login (interactive \u2014 prompts and opens browser)","RESEND_API_KEY=re_123 resend emails send ... (skip login; use env var directly)"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=typeof t.key=="string"?t.key.trim():t.key;if(!n){(!w()||r.json)&&h({message:"Missing --key flag. Provide your API key in non-interactive mode.",code:"missing_key"},{json:r.json}),fo("Resend Authentication"),Q.info(`Use a full access API key for complete CLI access.
216
+ ${Tt}`);let c=await ie({message:"How would you like to get your API key?",options:[{value:"browser",label:"Open resend.com/api-keys in browser"},{value:"manual",label:"Enter API key manually"}]});k(c)&&S("Login cancelled."),c==="browser"&&(await si(ai)?Q.info(`Opened ${ai}`):Q.warn(`Could not open browser. Visit ${ai} manually.`));let u=await go({message:"Enter your Resend API key:",validate:m=>{if(!m)return"API key is required";if(!m.startsWith("re_"))return"API key must start with re_"}});k(u)&&S("Login cancelled."),n=u.trim()}(!n||!n.startsWith("re_"))&&h({message:"Invalid API key format. Key must start with re_",code:"invalid_key_format"},{json:r.json});let i=ae("Validating API key...",r.quiet),o="full_access";try{let c=new Dt(n),{error:u}=await c.domains.list();if(u){let m=u;if(m.name==="restricted_api_key")o="sending_access",i.warn("API key is valid (sending access only)");else{i.fail("API key validation failed"),h({message:m.message||"Failed to validate API key",code:"validation_failed"},{json:r.json});return}}else i.stop("API key is valid (full access)")}catch(c){i.fail("API key validation failed"),h({message:V(c,"Failed to validate API key"),code:"validation_failed"},{json:r.json})}let s=r.profile?.trim()||void 0;if(s){let c=se(s);if(c){h({message:c,code:"invalid_profile_name"},{json:r.json});return}}if(!s&&w()&&!r.json){let c=we();if(c.length>0){let u=[...c.map(y=>({value:y.name,label:`${y.name} (overwrite)`,hint:se(y.name)?"invalid name":void 0})),{value:"__new__",label:"+ Create new profile"}],m=await ie({message:"Save API key to which profile?",options:u});if(k(m)&&S("Login cancelled."),m==="__new__"){let y=await Y({message:"Enter a name for the new profile:",validate:b=>se((b??"").trim())});if(k(y)&&S("Login cancelled."),s=(y??"").trim()||"default",c.some(b=>b.name===s)){let b=await rt({message:`Profile '${s}' already exists. Overwrite?`});(k(b)||!b)&&S("Login cancelled.")}}else if(se(m)){let y=await qr(m,r);if(!y)return;s=y}else s=m}else s="default"}let{configPath:a,backend:l}=await ps(n,s,o),d=s||"default";if(s)try{Nr(d)}catch(c){h({message:V(c,"Failed to switch profile"),code:"switch_failed"},{json:r.json})}if(r.json)B({success:!0,config_path:a,profile:d,storage:l.name,permission:o},{json:!0});else{let c=l.isSecure?`in ${l.name}`:`at ${a}`,u=`API key stored for profile '${d}' ${c}`;if(w()?$r(u):console.log(u),!l.isSecure&&process.platform==="linux"){let m="Tip: Install libsecret-tools and a Secret Service provider (e.g. gnome-keyring) to store keys in secure storage instead of a plaintext file.";w()?Q.info(m):console.log(m)}}});var Fs=require("node:fs");ye();z();var Vr=new p("logout").description("Remove your saved Resend API key").addHelpText("after",f({setup:!0,context:`Removes the saved API key from secure storage and the credentials file.
218
217
 
219
218
  When --profile is specified, only that profile's entry is removed.
220
219
  When no profile is specified, all profiles are removed.
221
220
 
222
- If no credentials file exists, exits cleanly with no error.`,output:' {"success":true,"config_path":"<path>"}',errorCodes:["remove_failed"],examples:["resend logout","resend logout --profile staging","resend logout --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=Xt(),n=oc();if(!n&&!(0,__.existsSync)(i)){!r.json&&O()?console.log("No saved credentials found. Nothing to remove."):z({success:!0,already_logged_out:!0},{json:r.json});return}let o=r.profile,s=!o,a=o??"all";if(!s&&n&&!n.profiles[a]&&g({message:`Profile "${a}" not found. Available profiles: ${Object.keys(n.profiles).join(", ")}`,code:"remove_failed"},{json:r.json}),!r.json&&O()){let u=s?"Remove all saved API keys?":`Remove saved API key for profile '${a}'?`,d=await Ot({message:u});(k(d)||!d)&&T("Logout cancelled.")}try{s?await Yb():await Ta(a)}catch(u){g({message:Y(u,"Failed to remove credentials"),code:"remove_failed"},{json:r.json})}if(!r.json&&O()){let u=s?"Logged out. All API keys removed.":`Logged out. API key removed for profile '${a}'.`;yi(u)}else z({success:!0,config_path:i,profile:s?"all":a},{json:r.json})});Pe();X();async function Lw(e,t){let r=e;if(!r){if(!O()||t.json){g({message:"Missing profile name. Provide a profile name in non-interactive mode.",code:"missing_name"},{json:t.json});return}let i=$e();if(i.length===0){g({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:t.json});return}let n=await me({message:"Remove which profile?",options:i.map(o=>({value:o.name,label:o.name,hint:o.active?"active":void 0}))});k(n)&&T("Remove cancelled."),r=n}if(!t.json&&O()){let i=await Ot({message:`Remove profile '${r}' and its API key?`});(k(i)||!i)&&T("Remove cancelled.")}try{await Ta(r)}catch(i){g({message:Y(i,"Failed to remove profile"),code:"remove_failed"},{json:t.json});return}t.json?z({success:!0,removed_profile:r},{json:!0}):console.log(`Profile '${r}' removed.`)}var v_=new p("remove").description("Remove a profile").argument("[name]","Profile name to remove").action(async(e,t,r)=>{await Lw(e,r.optsWithGlobals())});Pe();X();async function Nw(e,t,r){let i=e,n=t;if(!i){if(!O()||r.json){g({message:"Missing profile name. Provide old and new names in non-interactive mode.",code:"missing_name"},{json:r.json});return}let o=$e();if(o.length===0){g({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:r.json});return}let s=await me({message:"Rename which profile?",options:o.map(a=>({value:a.name,label:a.name,hint:a.active?"active":pe(a.name)?"invalid name":void 0}))});k(s)&&T("Rename cancelled."),i=s}if(!n){if(!O()||r.json){g({message:"Missing new name. Provide old and new names in non-interactive mode.",code:"missing_name"},{json:r.json});return}let o=await ee({message:`Enter new name for '${i}':`,placeholder:i.replace(/[^a-zA-Z0-9._-]/g,"-"),validate:s=>pe(s)});k(o)&&T("Rename cancelled."),n=o}try{await Ia(i,n)}catch(o){g({message:Y(o,"Failed to rename profile"),code:"rename_failed"},{json:r.json});return}r.json?z({success:!0,old_name:i,new_name:n},{json:!0}):console.log(`Profile '${i}' renamed to '${n}'.`)}var y_=new p("rename").description("Rename a profile").argument("[old-name]","Current profile name").argument("[new-name]","New profile name").action(async(e,t,r,i)=>{await Nw(e,t,i.optsWithGlobals())});Pe();X();async function Gw(e,t){let r=e;if(!r){if(!O()||t.json){g({message:"Missing profile name. Provide a profile name in non-interactive mode.",code:"missing_name"},{json:t.json});return}let o=$e();if(o.length===0){g({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:t.json});return}let s=await me({message:"Switch to which profile?",options:o.map(a=>({value:a.name,label:a.name,hint:a.active?"active":pe(a.name)?"invalid name":void 0}))});k(s)&&T("Switch cancelled."),r=s}if($e().some(o=>o.name===r)){let o=await Da(r,t);if(!o)return;r=o}try{Pa(r)}catch(o){g({message:Y(o,"Failed to switch profile"),code:"switch_failed"},{json:t.json});return}t.json?z({success:!0,active_profile:r},{json:!0}):console.log(`Switched to profile '${r}'.`)}var C_=new p("switch").description("Switch the active profile").argument("[name]","Profile name to switch to").action(async(e,t,r)=>{await Gw(e,r.optsWithGlobals())});var O_=new p("auth").description("Manage authentication and profiles").addHelpText("after",h({setup:!0,context:`Environment variables:
221
+ If no credentials file exists, exits cleanly with no error.`,output:' {"success":true,"config_path":"<path>"}',errorCodes:["remove_failed"],examples:["resend logout","resend logout --profile staging","resend logout --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=yt(),i=ni();if(!i&&!(0,Fs.existsSync)(n)){!r.json&&w()?console.log("No saved credentials found. Nothing to remove."):B({success:!0,already_logged_out:!0},{json:r.json});return}let o=r.profile,s=!o,a=o??"all";if(!s&&i&&!i.profiles[a]&&h({message:`Profile "${a}" not found. Available profiles: ${Object.keys(i.profiles).join(", ")}`,code:"remove_failed"},{json:r.json}),!r.json&&w()){let l=s?"Remove all saved API keys?":`Remove saved API key for profile '${a}'?`,d=await rt({message:l});(k(d)||!d)&&S("Logout cancelled.")}try{s?await fs():await Hr(a)}catch(l){h({message:V(l,"Failed to remove credentials"),code:"remove_failed"},{json:r.json})}if(!r.json&&w()){let l=s?"Logged out. All API keys removed.":`Logged out. API key removed for profile '${a}'.`;$r(l)}else B({success:!0,config_path:n,profile:s?"all":a},{json:r.json})});ye();z();async function $m(t,e){let r=t;if(!r){if(!w()||e.json){h({message:"Missing profile name. Provide a profile name in non-interactive mode.",code:"missing_name"},{json:e.json});return}let n=we();if(n.length===0){h({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:e.json});return}let i=await ie({message:"Remove which profile?",options:n.map(o=>({value:o.name,label:o.name,hint:o.active?"active":void 0}))});k(i)&&S("Remove cancelled."),r=i}if(!e.json&&w()){let n=await rt({message:`Remove profile '${r}' and its API key?`});(k(n)||!n)&&S("Remove cancelled.")}try{await Hr(r)}catch(n){h({message:V(n,"Failed to remove profile"),code:"remove_failed"},{json:e.json});return}e.json?B({success:!0,removed_profile:r},{json:!0}):console.log(`Profile '${r}' removed.`)}var Bs=new p("remove").description("Remove a profile").argument("[name]","Profile name to remove").action(async(t,e,r)=>{await $m(t,r.optsWithGlobals())});ye();z();async function Em(t,e,r){let n=t,i=e;if(!n){if(!w()||r.json){h({message:"Missing profile name. Provide old and new names in non-interactive mode.",code:"missing_name"},{json:r.json});return}let o=we();if(o.length===0){h({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:r.json});return}let s=await ie({message:"Rename which profile?",options:o.map(a=>({value:a.name,label:a.name,hint:a.active?"active":se(a.name)?"invalid name":void 0}))});k(s)&&S("Rename cancelled."),n=s}if(!i){if(!w()||r.json){h({message:"Missing new name. Provide old and new names in non-interactive mode.",code:"missing_name"},{json:r.json});return}let o=await Y({message:`Enter new name for '${n}':`,placeholder:n.replace(/[^a-zA-Z0-9._-]/g,"-"),validate:s=>se(s)});k(o)&&S("Rename cancelled."),i=o}try{await Lr(n,i)}catch(o){h({message:V(o,"Failed to rename profile"),code:"rename_failed"},{json:r.json});return}r.json?B({success:!0,old_name:n,new_name:i},{json:!0}):console.log(`Profile '${n}' renamed to '${i}'.`)}var Ns=new p("rename").description("Rename a profile").argument("[old-name]","Current profile name").argument("[new-name]","New profile name").action(async(t,e,r,n)=>{await Em(t,e,n.optsWithGlobals())});ye();z();async function Dm(t,e){let r=t;if(!r){if(!w()||e.json){h({message:"Missing profile name. Provide a profile name in non-interactive mode.",code:"missing_name"},{json:e.json});return}let o=we();if(o.length===0){h({message:"No profiles configured. Run `resend login` first.",code:"no_profiles"},{json:e.json});return}let s=await ie({message:"Switch to which profile?",options:o.map(a=>({value:a.name,label:a.name,hint:a.active?"active":se(a.name)?"invalid name":void 0}))});k(s)&&S("Switch cancelled."),r=s}if(we().some(o=>o.name===r)){let o=await qr(r,e);if(!o)return;r=o}try{Nr(r)}catch(o){h({message:V(o,"Failed to switch profile"),code:"switch_failed"},{json:e.json});return}e.json?B({success:!0,active_profile:r},{json:!0}):console.log(`Switched to profile '${r}'.`)}var Hs=new p("switch").description("Switch the active profile").argument("[name]","Profile name to switch to").action(async(t,e,r)=>{await Dm(t,r.optsWithGlobals())});var Ls=new p("auth").description("Manage authentication and profiles").addHelpText("after",f({setup:!0,context:`Environment variables:
223
222
  RESEND_API_KEY API key (overrides stored credentials)
224
223
  RESEND_PROFILE Profile name (overrides config default)
225
- RESEND_CREDENTIAL_STORE Storage method: "secure_storage" or "file"`,examples:["resend login","resend login --key re_123456789","resend logout","resend auth list","resend auth switch staging","resend auth rename staging production","resend auth remove staging"]})).addCommand(Ra).addCommand(Ma).addCommand(g_,{isDefault:!0}).addCommand(C_).addCommand(y_).addCommand(v_);var cc=require("node:fs");function ge(e,t){if(e==="-"){process.stdin.isTTY&&g({message:"No input piped to stdin",code:"stdin_read_error"},{json:t.json});try{return(0,cc.readFileSync)(0,"utf-8")}catch{g({message:"Failed to read from stdin",code:"stdin_read_error"},{json:t.json})}}try{return(0,cc.readFileSync)(e,"utf-8")}catch{g({message:`Failed to read file: ${e}`,code:"file_read_error"},{json:t.json})}}function nr(e,t,r){if(e!==void 0)try{return JSON.parse(e)}catch(i){g({message:`Invalid JSON for ${t}: ${i instanceof Error?i.message:"parse error"}`,code:"invalid_json"},{json:r.json})}}var S_=new p("create").description("Create a new automation").option("--name <name>","Automation name").addOption(new le("--status <status>","Initial status").choices(["enabled","disabled"])).option("--steps <json>","Steps array as JSON string").option("--connections <json>","Connections array as JSON string").option("--file <path>",'Path to a JSON file containing the full automation payload (use "-" for stdin)').addHelpText("after",h({context:`Non-interactive: --name and --steps/--connections (or --file) are required.
224
+ RESEND_CREDENTIAL_STORE Storage method: "secure_storage" or "file"`,examples:["resend login","resend login --key re_123456789","resend logout","resend auth list","resend auth switch staging","resend auth rename staging production","resend auth remove staging"]})).addCommand(Wr).addCommand(Vr).addCommand(js,{isDefault:!0}).addCommand(Hs).addCommand(Ns).addCommand(Bs);var li=require("node:fs");function ce(t,e){if(t==="-"){process.stdin.isTTY&&h({message:"No input piped to stdin",code:"stdin_read_error"},{json:e.json});try{return(0,li.readFileSync)(0,"utf-8")}catch{h({message:"Failed to read from stdin",code:"stdin_read_error"},{json:e.json})}}try{return(0,li.readFileSync)(t,"utf-8")}catch{h({message:`Failed to read file: ${t}`,code:"file_read_error"},{json:e.json})}}function xt(t,e,r){if(t!==void 0)try{return JSON.parse(t)}catch(n){h({message:`Invalid JSON for ${e}: ${n instanceof Error?n.message:"parse error"}`,code:"invalid_json"},{json:r.json})}}var Gs=new p("create").description("Create a new automation").option("--name <name>","Automation name").addOption(new ee("--status <status>","Initial status").choices(["enabled","disabled"])).option("--steps <json>","Steps array as JSON string").option("--connections <json>","Connections array as JSON string").option("--file <path>",'Path to a JSON file containing the full automation payload (use "-" for stdin)').addHelpText("after",f({context:`Non-interactive: --name and --steps/--connections (or --file) are required.
226
225
 
227
226
  Payload format:
228
227
  --file accepts a JSON object with { name, status?, steps, connections }.
@@ -230,17 +229,17 @@ Payload format:
230
229
  When using --file, --name/--status/--steps/--connections flags override file values.
231
230
 
232
231
  Step types: trigger, delay, send_email, wait_for_event, condition
233
- Connection types: default, condition_met, condition_not_met, timeout, event_received`,output:' {"object":"automation","id":"<id>"}',errorCodes:["auth_error","missing_name","missing_steps","missing_connections","invalid_json","file_read_error","create_error"],examples:["resend automations create --file automation.json","cat automation.json | resend automations create --file -","resend automations create --file automation.json --status disabled",`resend automations create --name "Welcome Flow" --steps '[...]' --connections '[...]'`]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i={};if(e.file){let u=ge(e.file,r);try{i=JSON.parse(u)}catch(d){g({message:`Invalid JSON in --file: ${d instanceof Error?d.message:"parse error"}`,code:"invalid_json"},{json:r.json})}(typeof i!="object"||i===null||Array.isArray(i))&&g({message:"--file must contain a JSON object with automation properties (name, steps, connections).",code:"invalid_json"},{json:r.json})}let n=await K(e.name??i.name,{message:"Automation name",placeholder:"e.g. Welcome Flow"},{message:"Missing --name flag.",code:"missing_name"},r),o=nr(e.steps,"--steps",r)??i.steps;(!o||!Array.isArray(o)||o.length===0)&&g({message:"Missing or empty steps. Provide --steps as a JSON array or use --file.",code:"missing_steps"},{json:r.json});let s=nr(e.connections,"--connections",r)??i.connections;s||g({message:"Missing connections. Provide --connections as a JSON array or use --file (empty array is valid for single-step automations).",code:"missing_connections"},{json:r.json}),Array.isArray(s)||g({message:"--connections must be a JSON array.",code:"invalid_json"},{json:r.json});let a=e.status??i.status;await te({loading:"Creating automation...",sdkCall:u=>u.automations.create({name:n,steps:o,connections:s,...a&&{status:a}}),onInteractive:u=>{console.log(`Automation created: ${u.id}`)}},r)});function w_(e){let t=e.map(r=>[r.name,dc(r.status),r.created_at,r.id]);return F(["Name","Status","Created","ID"],t,"(no automations)")}function dc(e){switch(e){case"enabled":return"\u2713 Enabled";case"disabled":return"\u25CB Disabled";default:return e}}var mt={resource:"automation",resourcePlural:"automations",fetchItems:(e,{limit:t,after:r})=>e.automations.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};var x_=new p("delete").alias("rm").description("Delete an automation").argument("[id]","Automation ID").option("--yes","Skip confirmation prompt").addHelpText("after",h({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"automation","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend automations delete <id> --yes","resend automations delete <id> --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,mt,i);await ue(n,!!t.yes,{confirmMessage:`Delete automation ${n}?
234
- This cannot be undone.`,loading:"Deleting automation...",object:"automation",successMsg:"Automation deleted",sdkCall:o=>o.automations.remove(n)},i)});var k_=new p("get").description("Retrieve an automation with its steps and connections").argument("[id]","Automation ID").addHelpText("after",h({output:` Full automation object including steps and connections arrays.
232
+ Connection types: default, condition_met, condition_not_met, timeout, event_received`,output:' {"object":"automation","id":"<id>"}',errorCodes:["auth_error","missing_name","missing_steps","missing_connections","invalid_json","file_read_error","create_error"],examples:["resend automations create --file automation.json","cat automation.json | resend automations create --file -","resend automations create --file automation.json --status disabled",`resend automations create --name "Welcome Flow" --steps '[...]' --connections '[...]'`]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n={};if(t.file){let l=ce(t.file,r);try{n=JSON.parse(l)}catch(d){h({message:`Invalid JSON in --file: ${d instanceof Error?d.message:"parse error"}`,code:"invalid_json"},{json:r.json})}(typeof n!="object"||n===null||Array.isArray(n))&&h({message:"--file must contain a JSON object with automation properties (name, steps, connections).",code:"invalid_json"},{json:r.json})}let i=await q(t.name??n.name,{message:"Automation name",placeholder:"e.g. Welcome Flow"},{message:"Missing --name flag.",code:"missing_name"},r),o=xt(t.steps,"--steps",r)??n.steps;(!o||!Array.isArray(o)||o.length===0)&&h({message:"Missing or empty steps. Provide --steps as a JSON array or use --file.",code:"missing_steps"},{json:r.json});let s=xt(t.connections,"--connections",r)??n.connections;s||h({message:"Missing connections. Provide --connections as a JSON array or use --file (empty array is valid for single-step automations).",code:"missing_connections"},{json:r.json}),Array.isArray(s)||h({message:"--connections must be a JSON array.",code:"invalid_json"},{json:r.json});let a=t.status??n.status;await J({loading:"Creating automation...",sdkCall:l=>l.automations.create({name:i,steps:o,connections:s,...a&&{status:a}}),onInteractive:l=>{console.log(`Automation created: ${l.id}`)}},r)});function Ms(t){let e=t.map(r=>[r.name,ci(r.status),r.created_at,r.id]);return N(["Name","Status","Created","ID"],e,"(no automations)")}function ci(t){switch(t){case"enabled":return"\u2713 Enabled";case"disabled":return"\u25CB Disabled";default:return t}}var Ve={resource:"automation",resourcePlural:"automations",fetchItems:(t,{limit:e,after:r})=>t.automations.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};var qs=new p("delete").alias("rm").description("Delete an automation").argument("[id]","Automation ID").option("--yes","Skip confirmation prompt").addHelpText("after",f({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"automation","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend automations delete <id> --yes","resend automations delete <id> --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ve,n);await re(i,!!e.yes,{confirmMessage:`Delete automation ${i}?
233
+ This cannot be undone.`,loading:"Deleting automation...",object:"automation",successMsg:"Automation deleted",sdkCall:o=>o.automations.remove(i)},n)});var Us=new p("get").description("Retrieve an automation with its steps and connections").argument("[id]","Automation ID").addHelpText("after",f({output:` Full automation object including steps and connections arrays.
235
234
 
236
- Automation status values: enabled | disabled`,errorCodes:["auth_error","fetch_error"],examples:["resend automations get <id>","resend automations get <id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,mt,i);await W({loading:"Fetching automation...",sdkCall:o=>o.automations.get(n),onInteractive:o=>{if(console.log(`${o.name} \u2014 ${dc(o.status)}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),o.updated_at&&console.log(`Updated: ${o.updated_at}`),o.steps.length>0){console.log(`
237
- Steps:`);let s=o.steps.map(a=>[a.key,a.type]);console.log(F(["Key","Type"],s,"(no steps)"))}if(o.connections.length>0){console.log(`
238
- Connections:`);let s=o.connections.map(a=>[a.from,a.to,a.type]);console.log(F(["From","To","Type"],s,"(no connections)"))}}},i)});var A_=new p("list").alias("ls").description("List all automations").option("--limit <n>","Maximum number of automations to return (1-100)","10").option("--after <cursor>","Return automations after this cursor (next page)").option("--before <cursor>","Return automations before this cursor (previous page)").addHelpText("after",h({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend automations list","resend automations list --limit 25 --json","resend automations list --after <cursor> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching automations...",sdkCall:o=>o.automations.list(n),onInteractive:o=>{console.log(w_(o.data)),G(o,"automations list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var E_=new p("open").description("Open an automation or the automations list in the Resend dashboard").argument("[id]","Automation ID \u2014 omit to open the automations list").addHelpText("after",h({context:`Opens the Resend dashboard in your default browser.
235
+ Automation status values: enabled | disabled`,errorCodes:["auth_error","fetch_error"],examples:["resend automations get <id>","resend automations get <id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ve,n);await H({loading:"Fetching automation...",sdkCall:o=>o.automations.get(i),onInteractive:o=>{if(console.log(`${o.name} \u2014 ${ci(o.status)}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),o.updated_at&&console.log(`Updated: ${o.updated_at}`),o.steps.length>0){console.log(`
236
+ Steps:`);let s=o.steps.map(a=>[a.key,a.type]);console.log(N(["Key","Type"],s,"(no steps)"))}if(o.connections.length>0){console.log(`
237
+ Connections:`);let s=o.connections.map(a=>[a.from,a.to,a.type]);console.log(N(["From","To","Type"],s,"(no connections)"))}}},n)});var Ws=new p("list").alias("ls").description("List all automations").option("--limit <n>","Maximum number of automations to return (1-100)","10").option("--after <cursor>","Return automations after this cursor (next page)").option("--before <cursor>","Return automations before this cursor (previous page)").addHelpText("after",f({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend automations list","resend automations list --limit 25 --json","resend automations list --after <cursor> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching automations...",sdkCall:o=>o.automations.list(i),onInteractive:o=>{console.log(Ms(o.data)),M(o,"automations list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Vs=new p("open").description("Open an automation or the automations list in the Resend dashboard").argument("[id]","Automation ID \u2014 omit to open the automations list").addHelpText("after",f({context:`Opens the Resend dashboard in your default browser.
239
238
  With an ID: opens that automation's editor.
240
- Without an ID: opens the automations list.`,examples:["resend automations open","resend automations open 019d4ef1-8266-71d4-a1aa-60ce5d0eaea7"]})).action(async(e,t,r)=>{let i=e?Oe.automation(e):Oe.automations,n=r.optsWithGlobals();await Be(i,n)});var P_=new p("get").description("Retrieve details of a specific automation run").option("--automation-id <id>","Automation ID").option("--run-id <id>","Run ID").addHelpText("after",h({output:" Full automation run object with status, trigger, and timestamps.",errorCodes:["auth_error","missing_automation_id","missing_run_id","fetch_error"],examples:["resend automations runs get --automation-id <id> --run-id <id>","resend automations runs get --automation-id <id> --run-id <id> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.automationId,{message:"Automation ID"},{message:"Missing --automation-id flag.",code:"missing_automation_id"},r),n=await K(e.runId,{message:"Run ID"},{message:"Missing --run-id flag.",code:"missing_run_id"},r);await W({loading:"Fetching automation run...",sdkCall:o=>o.automations.runs.get({automationId:i,runId:n}),onInteractive:o=>{console.log(`Run: ${o.id}`),console.log(`Status: ${o.status}`),o.started_at&&console.log(`Started: ${o.started_at}`),o.completed_at&&console.log(`Completed: ${o.completed_at}`),console.log(`Created: ${o.created_at}`)}},r)});var T_=new p("list").alias("ls").description("List runs for an automation").argument("[automation-id]","Automation ID").option("--status <status>","Filter by status (running, completed, failed, cancelled). Comma-separated.").option("--limit <n>","Maximum number of runs to return (1-100)","10").option("--after <cursor>","Return runs after this cursor (next page)").option("--before <cursor>","Return runs before this cursor (previous page)").addHelpText("after",h({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","missing_id","invalid_limit","list_error"],examples:["resend automations runs <automation-id>","resend automations runs list <automation-id>","resend automations runs list <automation-id> --status running","resend automations runs list <automation-id> --limit 25 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,mt,i),o=L(t.limit,i),s=N(o,t.after,t.before,i);await D({loading:"Fetching automation runs...",sdkCall:a=>a.automations.runs.list({automationId:n,...s,...t.status?{status:t.status}:{}}),onInteractive:a=>{let u=a.data.map(d=>[d.id,d.status,d.started_at??"-",d.completed_at??"-"]);console.log(F(["ID","Status","Started","Completed"],u,"(no runs)")),G(a,`automations runs list ${n}`,{limit:o,before:t.before,apiKey:i.apiKey,profile:i.profile})}},i)});var I_=new p("runs").description("Manage automation runs").addHelpText("after",h({context:`Runs represent individual executions of an automation.
239
+ Without an ID: opens the automations list.`,examples:["resend automations open","resend automations open 019d4ef1-8266-71d4-a1aa-60ce5d0eaea7"]})).action(async(t,e,r)=>{let n=t?de.automation(t):de.automations,i=r.optsWithGlobals();await Se(n,i)});var Ks=new p("get").description("Retrieve details of a specific automation run").option("--automation-id <id>","Automation ID").option("--run-id <id>","Run ID").addHelpText("after",f({output:" Full automation run object with status, trigger, and timestamps.",errorCodes:["auth_error","missing_automation_id","missing_run_id","fetch_error"],examples:["resend automations runs get --automation-id <id> --run-id <id>","resend automations runs get --automation-id <id> --run-id <id> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.automationId,{message:"Automation ID"},{message:"Missing --automation-id flag.",code:"missing_automation_id"},r),i=await q(t.runId,{message:"Run ID"},{message:"Missing --run-id flag.",code:"missing_run_id"},r);await H({loading:"Fetching automation run...",sdkCall:o=>o.automations.runs.get({automationId:n,runId:i}),onInteractive:o=>{console.log(`Run: ${o.id}`),console.log(`Status: ${o.status}`),o.started_at&&console.log(`Started: ${o.started_at}`),o.completed_at&&console.log(`Completed: ${o.completed_at}`),console.log(`Created: ${o.created_at}`)}},r)});var zs=new p("list").alias("ls").description("List runs for an automation").argument("[automation-id]","Automation ID").option("--status <status>","Filter by status (running, completed, failed, cancelled). Comma-separated.").option("--limit <n>","Maximum number of runs to return (1-100)","10").option("--after <cursor>","Return runs after this cursor (next page)").option("--before <cursor>","Return runs before this cursor (previous page)").addHelpText("after",f({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","missing_id","invalid_limit","list_error"],examples:["resend automations runs <automation-id>","resend automations runs list <automation-id>","resend automations runs list <automation-id> --status running","resend automations runs list <automation-id> --limit 25 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ve,n),o=L(e.limit,n),s=G(o,e.after,e.before,n);await P({loading:"Fetching automation runs...",sdkCall:a=>a.automations.runs.list({automationId:i,...s,...e.status?{status:e.status}:{}}),onInteractive:a=>{let l=a.data.map(d=>[d.id,d.status,d.started_at??"-",d.completed_at??"-"]);console.log(N(["ID","Status","Started","Completed"],l,"(no runs)")),M(a,`automations runs list ${i}`,{limit:o,before:e.before,apiKey:n.apiKey,profile:n.profile})}},n)});var Js=new p("runs").description("Manage automation runs").addHelpText("after",f({context:`Runs represent individual executions of an automation.
241
240
  Each run is triggered by an event and progresses through the automation's steps.
242
241
 
243
- Run status values: running | completed | failed | cancelled`,examples:["resend automations runs <automation-id>","resend automations runs list <automation-id> --limit 25","resend automations runs get --automation-id <id> --run-id <id>"]})).addCommand(T_,{isDefault:!0}).addCommand(P_);var $_=new p("stop").description("Stop a running automation").argument("[id]","Automation ID").addHelpText("after",h({context:"Stops a running automation by setting its status to disabled and cancelling active runs.",output:' {"object":"automation","id":"<id>","status":"disabled"}',errorCodes:["auth_error","stop_error"],examples:["resend automations stop <id>","resend automations stop <id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,mt,i);await J({loading:"Stopping automation...",sdkCall:o=>o.automations.stop(n),errorCode:"stop_error",successMsg:"Automation stopped"},i)});var j_=new p("update").description("Update an automation status (enable or disable)").argument("[id]","Automation ID").addOption(new le("--status <status>","New status").choices(["enabled","disabled"])).addHelpText("after",h({output:' {"object":"automation","id":"<id>","status":"<status>"}',errorCodes:["auth_error","missing_status","update_error"],examples:["resend automations update <id> --status enabled","resend automations update <id> --status disabled --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,mt,i),o=await wr(t.status,{message:"Status",options:[{value:"enabled",label:"Enabled"},{value:"disabled",label:"Disabled"}]},{message:"Missing --status flag.",code:"missing_status"},i);await J({loading:"Updating automation...",sdkCall:s=>s.automations.update(n,{status:o}),errorCode:"update_error",successMsg:`Automation updated: ${n} (${o})`},i)});var D_=new p("automations").description("Manage automations").addHelpText("after",h({context:`Automations are event-driven workflows composed of steps and connections.
242
+ Run status values: running | completed | failed | cancelled`,examples:["resend automations runs <automation-id>","resend automations runs list <automation-id> --limit 25","resend automations runs get --automation-id <id> --run-id <id>"]})).addCommand(zs,{isDefault:!0}).addCommand(Ks);var Ys=new p("stop").description("Stop a running automation").argument("[id]","Automation ID").addHelpText("after",f({context:"Stops a running automation by setting its status to disabled and cancelling active runs.",output:' {"object":"automation","id":"<id>","status":"disabled"}',errorCodes:["auth_error","stop_error"],examples:["resend automations stop <id>","resend automations stop <id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ve,n);await R({loading:"Stopping automation...",sdkCall:o=>o.automations.stop(i),errorCode:"stop_error",successMsg:"Automation stopped"},n)});var Qs=new p("update").description("Update an automation status (enable or disable)").argument("[id]","Automation ID").addOption(new ee("--status <status>","New status").choices(["enabled","disabled"])).addHelpText("after",f({output:' {"object":"automation","id":"<id>","status":"<status>"}',errorCodes:["auth_error","missing_status","update_error"],examples:["resend automations update <id> --status enabled","resend automations update <id> --status disabled --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ve,n),o=await Pt(e.status,{message:"Status",options:[{value:"enabled",label:"Enabled"},{value:"disabled",label:"Disabled"}]},{message:"Missing --status flag.",code:"missing_status"},n);await R({loading:"Updating automation...",sdkCall:s=>s.automations.update(i,{status:o}),errorCode:"update_error",successMsg:`Automation updated: ${i} (${o})`},n)});var Xs=new p("automations").description("Manage automations").addHelpText("after",f({context:`Automations are event-driven workflows composed of steps and connections.
244
243
 
245
244
  Steps define the actions (trigger, delay, send_email, wait_for_event, condition).
246
245
  Connections define the flow between steps (default, condition_met, condition_not_met, timeout, event_received).
@@ -250,10 +249,10 @@ Lifecycle:
250
249
  2. resend automations update <id> --status enabled
251
250
  3. resend automations stop <id> (stop automation)
252
251
  4. resend automations runs <id> (inspect runs)
253
- 5. resend automations open <id> (view in dashboard)`,examples:["resend automations list",'resend automations create --name "Welcome Flow" --file workflow.json',"resend automations get <id>","resend automations update <id> --status enabled","resend automations stop <id>","resend automations delete <id> --yes","resend automations runs <automation-id>","resend automations runs get --automation-id <id> --run-id <id>","resend automations open <id>"]})).addCommand(S_).addCommand(k_).addCommand(A_,{isDefault:!0}).addCommand(j_).addCommand(x_).addCommand($_).addCommand(E_).addCommand(I_);async function za(e){try{let{data:t,error:r}=await e.domains.list();return r||!t?[]:t.data.filter(i=>i.status==="verified"&&i.capabilities.sending==="enabled").map(i=>i.name)}catch{return[]}}var Uw=["noreply","hello"];async function Ja(e){let t;if(e.length===1)t=e[0];else{let n=await me({message:"Select a verified domain",options:e.map(o=>({value:o,label:o}))});k(n)&&T("Send cancelled."),t=n}let r=Uw.map(n=>({value:`${n}@${t}`,label:`${n}@${t}`}));r.push({value:null,label:"Custom address..."});let i=await me({message:`From address (@${t})`,options:r});if(k(i)&&T("Send cancelled."),i===null){let n=await ee({message:"From address",placeholder:`e.g. you@${t}`,validate:o=>!o||!o.includes("@")?"Enter a valid email address":void 0});return k(n)&&T("Send cancelled."),n}return i}var Ar=require("node:fs"),N_=require("node:path");var Fa=require("node:fs"),F_=require("node:os"),kr=we(require("node:path"),1);function q_(){return"pkg"in process?require("esbuild-wasm"):require("esbuild")}var M_=require("node:fs"),z_=we(require("node:path"),1);function R_(e){return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var J_=e=>({name:"rendering-utilities-exporter",setup:t=>{t.onLoad({filter:new RegExp(e.map(r=>R_(r)).join("|"))},async({path:r})=>({contents:`${await M_.promises.readFile(r,"utf8")};
252
+ 5. resend automations open <id> (view in dashboard)`,examples:["resend automations list",'resend automations create --name "Welcome Flow" --file workflow.json',"resend automations get <id>","resend automations update <id> --status enabled","resend automations stop <id>","resend automations delete <id> --yes","resend automations runs <automation-id>","resend automations runs get --automation-id <id> --run-id <id>","resend automations open <id>"]})).addCommand(Gs).addCommand(Us).addCommand(Ws,{isDefault:!0}).addCommand(Qs).addCommand(qs).addCommand(Ys).addCommand(Vs).addCommand(Js);async function Kr(t){try{let{data:e,error:r}=await t.domains.list();return r||!e?[]:e.data.filter(n=>n.status==="verified"&&n.capabilities.sending==="enabled").map(n=>n.name)}catch{return[]}}var Sm=["noreply","hello"];async function zr(t){let e;if(t.length===1)e=t[0];else{let i=await ie({message:"Select a verified domain",options:t.map(o=>({value:o,label:o}))});k(i)&&S("Send cancelled."),e=i}let r=Sm.map(i=>({value:`${i}@${e}`,label:`${i}@${e}`}));r.push({value:null,label:"Custom address..."});let n=await ie({message:`From address (@${e})`,options:r});if(k(n)&&S("Send cancelled."),n===null){let i=await Y({message:"From address",placeholder:`e.g. you@${e}`,validate:o=>!o||!o.includes("@")?"Enter a valid email address":void 0});return k(i)&&S("Send cancelled."),i}return n}var Ft=require("node:fs"),la=require("node:path");var Jr=require("node:fs"),ia=require("node:os"),Rt=pe(require("node:path"),1);function Zs(){return"pkg"in process?require("esbuild-wasm"):require("esbuild")}var ta=require("node:fs"),ra=pe(require("node:path"),1);function ea(t){return t.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}var na=t=>({name:"rendering-utilities-exporter",setup:e=>{e.onLoad({filter:new RegExp(t.map(r=>ea(r)).join("|"))},async({path:r})=>({contents:`${await ta.promises.readFile(r,"utf8")};
254
253
  export { render } from 'react-email-module-that-will-export-render'
255
254
  export { createElement as reactEmailCreateReactElement } from 'react';
256
- `,loader:z_.default.extname(r).slice(1)})),t.onResolve({filter:/^react-email-module-that-will-export-render$/},async r=>{let i={kind:"import-statement",importer:r.importer,resolveDir:r.resolveDir,namespace:r.namespace},n=await t.resolve("react-email",i);return n.errors.length===0||(n=await t.resolve("@react-email/components",i),n.errors.length===0)||(n=await t.resolve("@react-email/render",i),n.errors.length>0&&n.errors[0]&&(n.errors[0].text="Failed to import `render` from `react-email` (6.0+), `@react-email/components` (5.x), or `@react-email/render`. Install one of them in your project.")),n})}});async function H_(e){let t=kr.default.resolve(e),r=(0,Fa.mkdtempSync)(kr.default.join((0,F_.tmpdir)(),"resend-react-email-"));try{let{build:o}=q_();await o({bundle:!0,entryPoints:[t],format:"cjs",jsx:"automatic",logLevel:"silent",outExtension:{".js":".cjs"},outdir:r,platform:"node",plugins:[J_([t])],write:!0})}catch(o){throw(0,Fa.rmSync)(r,{recursive:!0,force:!0}),o}let i=kr.default.basename(t,kr.default.extname(t));return{cjsPath:kr.default.join(r,`${i}.cjs`),tmpDir:r}}var B_=require("node:module");async function L_(e){let t=(0,B_.createRequire)(e);delete t.cache[e];let r=t(e);return r.render(r.reactEmailCreateReactElement(r.default,{}),{})}var mc=e=>{e&&(0,Ar.rmSync)(e,{recursive:!0,force:!0})},it=async(e,t)=>{if(e.trim()==="")return g({message:"--react-email path cannot be empty",code:"react_email_build_error"},{json:t.json});let r=(0,N_.resolve)(e);if(!(0,Ar.existsSync)(r))return g({message:`File not found: ${e}`,code:"react_email_build_error"},{json:t.json});if(!(0,Ar.statSync)(r).isFile())return g({message:`--react-email path must be a file, got a directory: ${e}`,code:"react_email_build_error"},{json:t.json});let i=fe("Bundling React Email template...",t.quiet),n;try{let o=await H_(e);n=o.tmpDir,i.stop("Bundled React Email template");let s=fe("Rendering React Email template...",t.quiet);try{let a=await L_(o.cjsPath);return s.stop("Rendered React Email template"),mc(n),a}catch(a){return s.fail("Failed to render React Email template"),mc(n),g({message:Y(a,"Failed to render React Email template"),code:"react_email_render_error"},{json:t.json})}}catch(o){return i.fail("Failed to bundle React Email template"),mc(n),g({message:Y(o,"Failed to bundle React Email template"),code:"react_email_build_error"},{json:t.json})}};X();var nt={resource:"segment",resourcePlural:"segments",fetchItems:(e,{limit:t,after:r})=>e.segments.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};function Ha(e){let t=e.map(r=>[r.name,r.id,r.created_at]);return F(["Name","ID","Created"],t,"(no segments)")}var $t={resource:"topic",resourcePlural:"topics",fetchItems:e=>e.topics.list().then(t=>({...t,data:t.data?{data:t.data.data,has_more:!1}:null})),display:e=>({label:e.name,hint:e.id})};function G_(e){let t=e.map(r=>[r.name,r.description??"",r.id,r.created_at]);return F(["Name","Description","ID","Created"],t,"(no topics)")}var U_=new p("create").description("Create a broadcast draft (or send immediately with --send)").option("--from <address>","Sender address \u2014 required").option("--subject <subject>","Email subject \u2014 required").option("--segment-id <id>","Target segment ID \u2014 required").option("--html <html>","HTML body (supports {{{FIRST_NAME|fallback}}} triple-brace variable interpolation)").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin, supports {{{FIRST_NAME|fallback}}} variable interpolation)').option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--name <name>","Internal label for the broadcast (optional)").option("--reply-to <address>","Reply-to address (optional)").option("--preview-text <text>","Preview text shown in inbox below the subject line (optional)").option("--topic-id <id>","Associate with a topic for subscription filtering (optional)").option("--send","Send immediately on create instead of saving as draft").option("--scheduled-at <datetime>",'Schedule delivery \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET" (only valid with --send)').option("--dry-run","Validate input and print the create request JSON without calling the API (interactive: type segment/topic IDs; lists are not fetched)").addHelpText("after",h({context:`Non-interactive: --from, --subject, and --segment-id are required.
255
+ `,loader:ra.default.extname(r).slice(1)})),e.onResolve({filter:/^react-email-module-that-will-export-render$/},async r=>{let n={kind:"import-statement",importer:r.importer,resolveDir:r.resolveDir,namespace:r.namespace},i=await e.resolve("react-email",n);return i.errors.length===0||(i=await e.resolve("@react-email/components",n),i.errors.length===0)||(i=await e.resolve("@react-email/render",n),i.errors.length>0&&i.errors[0]&&(i.errors[0].text="Failed to import `render` from `react-email` (6.0+), `@react-email/components` (5.x), or `@react-email/render`. Install one of them in your project.")),i})}});async function oa(t){let e=Rt.default.resolve(t),r=(0,Jr.mkdtempSync)(Rt.default.join((0,ia.tmpdir)(),"resend-react-email-"));try{let{build:o}=Zs();await o({bundle:!0,entryPoints:[e],format:"cjs",jsx:"automatic",logLevel:"silent",outExtension:{".js":".cjs"},outdir:r,platform:"node",plugins:[na([e])],write:!0})}catch(o){throw(0,Jr.rmSync)(r,{recursive:!0,force:!0}),o}let n=Rt.default.basename(e,Rt.default.extname(e));return{cjsPath:Rt.default.join(r,`${n}.cjs`),tmpDir:r}}var sa=require("node:module");async function aa(t){let e=(0,sa.createRequire)(t);delete e.cache[t];let r=e(t);return r.render(r.reactEmailCreateReactElement(r.default,{}),{})}var ui=t=>{t&&(0,Ft.rmSync)(t,{recursive:!0,force:!0})},Ne=async(t,e)=>{if(t.trim()==="")return h({message:"--react-email path cannot be empty",code:"react_email_build_error"},{json:e.json});let r=(0,la.resolve)(t);if(!(0,Ft.existsSync)(r))return h({message:`File not found: ${t}`,code:"react_email_build_error"},{json:e.json});if(!(0,Ft.statSync)(r).isFile())return h({message:`--react-email path must be a file, got a directory: ${t}`,code:"react_email_build_error"},{json:e.json});let n=ae("Bundling React Email template...",e.quiet),i;try{let o=await oa(t);i=o.tmpDir,n.stop("Bundled React Email template");let s=ae("Rendering React Email template...",e.quiet);try{let a=await aa(o.cjsPath);return s.stop("Rendered React Email template"),ui(i),a}catch(a){return s.fail("Failed to render React Email template"),ui(i),h({message:V(a,"Failed to render React Email template"),code:"react_email_render_error"},{json:e.json})}}catch(o){return n.fail("Failed to bundle React Email template"),ui(i),h({message:V(o,"Failed to bundle React Email template"),code:"react_email_build_error"},{json:e.json})}};z();var He={resource:"segment",resourcePlural:"segments",fetchItems:(t,{limit:e,after:r})=>t.segments.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};function Yr(t){let e=t.map(r=>[r.name,r.id,r.created_at]);return N(["Name","ID","Created"],e,"(no segments)")}var ct={resource:"topic",resourcePlural:"topics",fetchItems:t=>t.topics.list().then(e=>({...e,data:e.data?{data:e.data.data,has_more:!1}:null})),display:t=>({label:t.name,hint:t.id})};function ca(t){let e=t.map(r=>[r.name,r.description??"",r.id,r.created_at]);return N(["Name","Description","ID","Created"],e,"(no topics)")}var ua=new p("create").description("Create a broadcast draft (or send immediately with --send)").option("--from <address>","Sender address \u2014 required").option("--subject <subject>","Email subject \u2014 required").option("--segment-id <id>","Target segment ID \u2014 required").option("--html <html>","HTML body (supports {{{FIRST_NAME|fallback}}} triple-brace variable interpolation)").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin, supports {{{FIRST_NAME|fallback}}} variable interpolation)').option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--name <name>","Internal label for the broadcast (optional)").option("--reply-to <address>","Reply-to address (optional)").option("--preview-text <text>","Preview text shown in inbox below the subject line (optional)").option("--topic-id <id>","Associate with a topic for subscription filtering (optional)").option("--send","Send immediately on create instead of saving as draft").option("--scheduled-at <datetime>",'Schedule delivery \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET" (only valid with --send)').option("--dry-run","Validate input and print the create request JSON without calling the API (interactive: type segment/topic IDs; lists are not fetched)").addHelpText("after",f({context:`Non-interactive: --from, --subject, and --segment-id are required.
257
256
  Body: provide at least one of --html, --html-file, --text, --text-file, or --react-email.
258
257
 
259
258
  Use --dry-run to print the request JSON without creating a broadcast.
@@ -265,26 +264,26 @@ Variable interpolation:
265
264
  Scheduling:
266
265
  Use --scheduled-at with --send to schedule delivery.
267
266
  Accepts ISO 8601 (e.g. 2026-08-05T11:52:01Z) or natural language (e.g. "in 1 hour").
268
- --scheduled-at without --send is ignored.`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","missing_from","missing_subject","missing_segment","missing_body","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","create_error"],examples:['resend broadcasts create --from onboarding@resend.com --subject "Weekly Update" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html "<p>Hello {{{FIRST_NAME|there}}}</p>"','resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html-file ./email.html --send','resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --text "Hello!" --send --scheduled-at "tomorrow at 9am ET"']})).action(async(e,t)=>{let r=t.optsWithGlobals();e.htmlFile==="-"&&e.textFile==="-"&&g({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),e.reactEmail&&(e.html||e.htmlFile)&&g({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:r.json}),e.html!==void 0&&e.htmlFile!==void 0&&g({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:r.json}),e.text!==void 0&&e.textFile!==void 0&&g({message:"--text and --text-file are mutually exclusive.",code:"invalid_options"},{json:r.json});let i=e.from,n=e.subject,o=e.segmentId;if(!i&&O()&&!r.json&&!e.dryRun){let l=await ne(r),c=await za(l);c.length>0&&(i=await Ja(c))}if(!i){(!O()||r.json)&&g({message:"Missing --from flag.",code:"missing_from"},{json:r.json});let l=await ee({message:"From address",placeholder:"e.g. onboarding@resend.com",validate:c=>c?void 0:"Required"});k(l)&&T("Cancelled."),i=l}if(!n){(!O()||r.json)&&g({message:"Missing --subject flag.",code:"missing_subject"},{json:r.json});let l=await ee({message:"Subject",placeholder:"e.g. Weekly Newsletter",validate:c=>c?void 0:"Required"});k(l)&&T("Cancelled."),n=l}if(!o)if((!O()||r.json)&&g({message:"Missing --segment-id flag.",code:"missing_segment"},{json:r.json}),e.dryRun){let l=await ee({message:"Segment ID",placeholder:"e.g. 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d",validate:c=>c?void 0:"Required"});k(l)&&T("Cancelled."),o=l}else o=await C(void 0,nt,r);let s=e.reactEmail?await it(e.reactEmail,r):e.htmlFile?ge(e.htmlFile,r):e.html,a=e.textFile?ge(e.textFile,r):e.text;if(!s&&!a){(!O()||r.json)&&g({message:"Missing body. Provide --html, --html-file, --text, --text-file, or --react-email.",code:"missing_body"},{json:r.json});let l=await ee({message:"Body (plain text)",placeholder:"e.g. Hello {{{FIRST_NAME|there}}}!",validate:c=>c?void 0:"Required"});k(l)&&T("Cancelled."),a=l}let u=e.topicId;if(!u&&O()&&!r.json)if(e.dryRun){let l=await ee({message:"Topic ID (optional)",placeholder:"Press Enter to skip"});k(l)&&T("Cancelled."),u=l.trim()||void 0}else u=await C(void 0,$t,r,{optional:!0});let d={from:i,subject:n,segmentId:o,...s&&{html:s},...a&&{text:a},...e.name&&{name:e.name},...e.replyTo&&{replyTo:e.replyTo},...e.previewText&&{previewText:e.previewText},...u&&{topicId:u},...e.send&&{send:!0},...e.send&&e.scheduledAt&&{scheduledAt:e.scheduledAt}};if(e.dryRun){z({dryRun:!0,request:d},{json:r.json});return}await te({loading:"Creating broadcast...",sdkCall:l=>l.broadcasts.create(d),onInteractive:l=>{e.send?e.scheduledAt?console.log(`Broadcast scheduled: ${l.id}`):console.log(`Broadcast sent: ${l.id}`):(console.log(`Broadcast created: ${l.id}`),console.log("Status: draft"),console.log(`Send it with: resend broadcasts send ${l.id}`))}},r)});function pc(e){switch(e){case"draft":return"\u25CB Draft";case"queued":return"\u23F3 Queued";case"sent":return"\u2713 Sent";default:return e}}var Er={resource:"broadcast",resourcePlural:"broadcasts",fetchItems:(e,{limit:t,after:r})=>e.broadcasts.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name??"(untitled)",hint:e.id})},W_={resource:"broadcast",resourcePlural:"broadcasts",fetchItems:(e,{limit:t,after:r})=>e.broadcasts.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name??"(untitled)",hint:`${pc(e.status)} ${e.id}`}),filter:e=>e.status==="draft"};function V_(e){let t=e.map(r=>[r.name??"(untitled)",r.status,r.created_at,r.id]);return F(["Name","Status","Created","ID"],t,"(no broadcasts)")}var K_=new p("delete").alias("rm").description("Delete a broadcast \u2014 draft broadcasts are removed; scheduled broadcasts are cancelled before delivery").argument("[id]","Broadcast ID").option("--yes","Skip confirmation prompt").addHelpText("after",h({context:`Warning: Deleting a scheduled broadcast cancels its delivery immediately.
267
+ --scheduled-at without --send is ignored.`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","missing_from","missing_subject","missing_segment","missing_body","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","create_error"],examples:['resend broadcasts create --from onboarding@resend.com --subject "Weekly Update" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html "<p>Hello {{{FIRST_NAME|there}}}</p>"','resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html-file ./email.html --send','resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --text "Hello!" --send --scheduled-at "tomorrow at 9am ET"']})).action(async(t,e)=>{let r=e.optsWithGlobals();t.htmlFile==="-"&&t.textFile==="-"&&h({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),t.reactEmail&&(t.html||t.htmlFile)&&h({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:r.json}),t.html!==void 0&&t.htmlFile!==void 0&&h({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:r.json}),t.text!==void 0&&t.textFile!==void 0&&h({message:"--text and --text-file are mutually exclusive.",code:"invalid_options"},{json:r.json});let n=t.from,i=t.subject,o=t.segmentId;if(!n&&w()&&!r.json&&!t.dryRun){let c=await X(r),u=await Kr(c);u.length>0&&(n=await zr(u))}if(!n){(!w()||r.json)&&h({message:"Missing --from flag.",code:"missing_from"},{json:r.json});let c=await Y({message:"From address",placeholder:"e.g. onboarding@resend.com",validate:u=>u?void 0:"Required"});k(c)&&S("Cancelled."),n=c}if(!i){(!w()||r.json)&&h({message:"Missing --subject flag.",code:"missing_subject"},{json:r.json});let c=await Y({message:"Subject",placeholder:"e.g. Weekly Newsletter",validate:u=>u?void 0:"Required"});k(c)&&S("Cancelled."),i=c}if(!o)if((!w()||r.json)&&h({message:"Missing --segment-id flag.",code:"missing_segment"},{json:r.json}),t.dryRun){let c=await Y({message:"Segment ID",placeholder:"e.g. 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d",validate:u=>u?void 0:"Required"});k(c)&&S("Cancelled."),o=c}else o=await C(void 0,He,r);let s=t.reactEmail?await Ne(t.reactEmail,r):t.htmlFile?ce(t.htmlFile,r):t.html,a=t.textFile?ce(t.textFile,r):t.text;if(!s&&!a){(!w()||r.json)&&h({message:"Missing body. Provide --html, --html-file, --text, --text-file, or --react-email.",code:"missing_body"},{json:r.json});let c=await Y({message:"Body (plain text)",placeholder:"e.g. Hello {{{FIRST_NAME|there}}}!",validate:u=>u?void 0:"Required"});k(c)&&S("Cancelled."),a=c}let l=t.topicId;if(!l&&w()&&!r.json)if(t.dryRun){let c=await Y({message:"Topic ID (optional)",placeholder:"Press Enter to skip"});k(c)&&S("Cancelled."),l=c.trim()||void 0}else l=await C(void 0,ct,r,{optional:!0});let d={from:n,subject:i,segmentId:o,...s&&{html:s},...a&&{text:a},...t.name&&{name:t.name},...t.replyTo&&{replyTo:t.replyTo},...t.previewText&&{previewText:t.previewText},...l&&{topicId:l},...t.send&&{send:!0},...t.send&&t.scheduledAt&&{scheduledAt:t.scheduledAt}};if(t.dryRun){B({dryRun:!0,request:d},{json:r.json});return}await J({loading:"Creating broadcast...",sdkCall:c=>c.broadcasts.create(d),onInteractive:c=>{t.send?t.scheduledAt?console.log(`Broadcast scheduled: ${c.id}`):console.log(`Broadcast sent: ${c.id}`):(console.log(`Broadcast created: ${c.id}`),console.log("Status: draft"),console.log(`Send it with: resend broadcasts send ${c.id}`))}},r)});function di(t){switch(t){case"draft":return"\u25CB Draft";case"queued":return"\u23F3 Queued";case"sent":return"\u2713 Sent";default:return t}}var Bt={resource:"broadcast",resourcePlural:"broadcasts",fetchItems:(t,{limit:e,after:r})=>t.broadcasts.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name??"(untitled)",hint:t.id})},da={resource:"broadcast",resourcePlural:"broadcasts",fetchItems:(t,{limit:e,after:r})=>t.broadcasts.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name??"(untitled)",hint:`${di(t.status)} ${t.id}`}),filter:t=>t.status==="draft"};function ma(t){let e=t.map(r=>[r.name??"(untitled)",r.status,r.created_at,r.id]);return N(["Name","Status","Created","ID"],e,"(no broadcasts)")}var pa=new p("delete").alias("rm").description("Delete a broadcast \u2014 draft broadcasts are removed; scheduled broadcasts are cancelled before delivery").argument("[id]","Broadcast ID").option("--yes","Skip confirmation prompt").addHelpText("after",f({context:`Warning: Deleting a scheduled broadcast cancels its delivery immediately.
269
268
  Only draft and scheduled broadcasts can be deleted; sent broadcasts cannot.
270
269
 
271
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"broadcast","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes","resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,Er,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete broadcast "${n.label}"?
272
- ID: ${n.id}
273
- If scheduled, delivery will be cancelled.`,loading:"Deleting broadcast...",object:"broadcast",successMsg:"Broadcast deleted",sdkCall:o=>o.broadcasts.remove(n.id)},i)});var Y_=new p("get").description("Retrieve full details for a broadcast including HTML body, status, and delivery times").argument("[id]","Broadcast ID").addHelpText("after",h({context:`Note: The list command returns summary objects without html/text/from/subject.
274
- Use this command to retrieve the full broadcast payload.`,output:' {"id":"...","object":"broadcast","name":"...","segment_id":"...","from":"...","subject":"...","status":"draft|queued|sent","created_at":"...","scheduled_at":null,"sent_at":null}',errorCodes:["auth_error","fetch_error"],examples:["resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6","resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Er,i);await W({loading:"Fetching broadcast...",sdkCall:o=>o.broadcasts.get(n),onInteractive:o=>{console.log(`Broadcast: ${o.id}`),console.log(` Status: ${pc(o.status)}`),console.log(` Name: ${o.name??"(untitled)"}`),console.log(` From: ${o.from??"\u2014"}`),console.log(` Subject: ${o.subject??"\u2014"}`),console.log(` Segment: ${o.segment_id??"\u2014"}`),o.preview_text&&console.log(` Preview: ${o.preview_text}`),o.topic_id&&console.log(` Topic: ${o.topic_id}`),console.log(` Created: ${o.created_at}`),o.scheduled_at&&console.log(` Scheduled: ${o.scheduled_at}`),o.sent_at&&console.log(` Sent: ${o.sent_at}`)}},i)});var Q_=new p("list").alias("ls").description('List broadcasts \u2014 returns summary objects (use "get <id>" for full details including html/text)').option("--limit <n>","Maximum number of results to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",h({context:`Note: List results include name, status, created_at, and id only.
275
- To retrieve full details (html, from, subject), use: resend broadcasts get <id>`,output:' {"object":"list","has_more":false,"data":[{"id":"...","name":"...","status":"draft|queued|sent","created_at":"..."}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend broadcasts list","resend broadcasts list --limit 5","resend broadcasts list --after d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --limit 10","resend broadcasts list --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching broadcasts...",sdkCall:o=>o.broadcasts.list(n),onInteractive:o=>{console.log(V_(o.data)),G(o,"broadcasts list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Z_=new p("open").description("Open a broadcast or the broadcasts list in the Resend dashboard").argument("[id]","Broadcast ID \u2014 omit to open the broadcasts list").addHelpText("after",h({context:`Opens the Resend dashboard in your default browser.
270
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"broadcast","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes","resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,Bt,n);await re(i.id,!!e.yes,{confirmMessage:`Delete broadcast "${i.label}"?
271
+ ID: ${i.id}
272
+ If scheduled, delivery will be cancelled.`,loading:"Deleting broadcast...",object:"broadcast",successMsg:"Broadcast deleted",sdkCall:o=>o.broadcasts.remove(i.id)},n)});var fa=new p("get").description("Retrieve full details for a broadcast including HTML body, status, and delivery times").argument("[id]","Broadcast ID").addHelpText("after",f({context:`Note: The list command returns summary objects without html/text/from/subject.
273
+ Use this command to retrieve the full broadcast payload.`,output:' {"id":"...","object":"broadcast","name":"...","segment_id":"...","from":"...","subject":"...","status":"draft|queued|sent","created_at":"...","scheduled_at":null,"sent_at":null}',errorCodes:["auth_error","fetch_error"],examples:["resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6","resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Bt,n);await H({loading:"Fetching broadcast...",sdkCall:o=>o.broadcasts.get(i),onInteractive:o=>{console.log(`Broadcast: ${o.id}`),console.log(` Status: ${di(o.status)}`),console.log(` Name: ${o.name??"(untitled)"}`),console.log(` From: ${o.from??"\u2014"}`),console.log(` Subject: ${o.subject??"\u2014"}`),console.log(` Segment: ${o.segment_id??"\u2014"}`),o.preview_text&&console.log(` Preview: ${o.preview_text}`),o.topic_id&&console.log(` Topic: ${o.topic_id}`),console.log(` Created: ${o.created_at}`),o.scheduled_at&&console.log(` Scheduled: ${o.scheduled_at}`),o.sent_at&&console.log(` Sent: ${o.sent_at}`)}},n)});var ha=new p("list").alias("ls").description('List broadcasts \u2014 returns summary objects (use "get <id>" for full details including html/text)').option("--limit <n>","Maximum number of results to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",f({context:`Note: List results include name, status, created_at, and id only.
274
+ To retrieve full details (html, from, subject), use: resend broadcasts get <id>`,output:' {"object":"list","has_more":false,"data":[{"id":"...","name":"...","status":"draft|queued|sent","created_at":"..."}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend broadcasts list","resend broadcasts list --limit 5","resend broadcasts list --after d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --limit 10","resend broadcasts list --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching broadcasts...",sdkCall:o=>o.broadcasts.list(i),onInteractive:o=>{console.log(ma(o.data)),M(o,"broadcasts list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var ga=new p("open").description("Open a broadcast or the broadcasts list in the Resend dashboard").argument("[id]","Broadcast ID \u2014 omit to open the broadcasts list").addHelpText("after",f({context:`Opens the Resend dashboard in your default browser.
276
275
  With an ID: opens that broadcast's page for viewing or editing.
277
- Without an ID: opens the broadcasts list.`,examples:["resend broadcasts open","resend broadcasts open d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6"]})).action(async(e,t,r)=>{let i=e?Oe.broadcast(e):Oe.broadcasts,n=r.optsWithGlobals();await Be(i,n)});var X_=new p("send").description("Send a draft broadcast (API-created drafts only \u2014 dashboard broadcasts cannot be sent via API)").argument("[id]","Broadcast ID").option("--scheduled-at <datetime>",'Schedule delivery \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET"').addHelpText("after",h({context:`Note: Only broadcasts created via the API can be sent via this command.
276
+ Without an ID: opens the broadcasts list.`,examples:["resend broadcasts open","resend broadcasts open d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6"]})).action(async(t,e,r)=>{let n=t?de.broadcast(t):de.broadcasts,i=r.optsWithGlobals();await Se(n,i)});var ba=new p("send").description("Send a draft broadcast (API-created drafts only \u2014 dashboard broadcasts cannot be sent via API)").argument("[id]","Broadcast ID").option("--scheduled-at <datetime>",'Schedule delivery \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET"').addHelpText("after",f({context:`Note: Only broadcasts created via the API can be sent via this command.
278
277
  Broadcasts created in the Resend dashboard cannot be sent programmatically.
279
278
 
280
279
  Scheduling:
281
280
  --scheduled-at accepts ISO 8601 (e.g. 2026-08-05T11:52:01Z) or
282
- natural language (e.g. "in 1 hour", "tomorrow at 9am ET").`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","send_error"],examples:["resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "in 1 hour"','resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "2026-08-05T11:52:01Z" --json']})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,W_,i);await J({loading:t.scheduledAt?"Scheduling broadcast...":"Sending broadcast...",sdkCall:o=>o.broadcasts.send(n,{...t.scheduledAt&&{scheduledAt:t.scheduledAt}}),errorCode:"send_error",successMsg:t.scheduledAt?"Broadcast scheduled":"Broadcast sent",permission:"sending_access"},i)});var ev=new p("update").description("Update a draft broadcast \u2014 only drafts can be updated; sent broadcasts are immutable").argument("[id]","Broadcast ID").option("--from <address>","Update sender address").option("--subject <subject>","Update subject").option("--html <html>","Update HTML body (supports {{{FIRST_NAME|fallback}}} variable interpolation)").option("--html-file <path>",'Path to an HTML file to replace the body (use "-" for stdin, supports {{{FIRST_NAME|fallback}}} variable interpolation)').option("--text <text>","Update plain-text body").option("--text-file <path>",'Path to a plain-text file to replace the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--name <name>","Update internal label").addHelpText("after",h({context:`Note: Only draft broadcasts can be updated.
281
+ natural language (e.g. "in 1 hour", "tomorrow at 9am ET").`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","send_error"],examples:["resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "in 1 hour"','resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "2026-08-05T11:52:01Z" --json']})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,da,n);await R({loading:e.scheduledAt?"Scheduling broadcast...":"Sending broadcast...",sdkCall:o=>o.broadcasts.send(i,{...e.scheduledAt&&{scheduledAt:e.scheduledAt}}),errorCode:"send_error",successMsg:e.scheduledAt?"Broadcast scheduled":"Broadcast sent",permission:"sending_access"},n)});var ya=new p("update").description("Update a draft broadcast \u2014 only drafts can be updated; sent broadcasts are immutable").argument("[id]","Broadcast ID").option("--from <address>","Update sender address").option("--subject <subject>","Update subject").option("--html <html>","Update HTML body (supports {{{FIRST_NAME|fallback}}} variable interpolation)").option("--html-file <path>",'Path to an HTML file to replace the body (use "-" for stdin, supports {{{FIRST_NAME|fallback}}} variable interpolation)').option("--text <text>","Update plain-text body").option("--text-file <path>",'Path to a plain-text file to replace the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--name <name>","Update internal label").addHelpText("after",f({context:`Note: Only draft broadcasts can be updated.
283
282
  If the broadcast is already sent or sending, the API will return an error.
284
283
 
285
284
  Variable interpolation:
286
285
  HTML bodies support triple-brace syntax for contact properties.
287
- Example: {{{FIRST_NAME|Friend}}} \u2014 uses FIRST_NAME or falls back to "Friend".`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","no_changes","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","update_error"],examples:['resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --subject "Updated Subject"',"resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --html-file ./new-email.html",'resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --name "Q1 Newsletter" --from "onboarding@resend.com" --json','echo "<p>New content</p>" | resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --html-file -']})).action(async(e,t,r)=>{let i=r.optsWithGlobals();t.from==null&&t.subject==null&&t.html==null&&t.htmlFile==null&&t.text==null&&t.textFile==null&&t.reactEmail==null&&t.name==null&&g({message:"Provide at least one option to update: --from, --subject, --html, --html-file, --text, --text-file, --react-email, or --name.",code:"no_changes"},{json:i.json}),t.htmlFile==="-"&&t.textFile==="-"&&g({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:i.json}),t.reactEmail!=null&&(t.html!=null||t.htmlFile!=null)&&g({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:i.json}),t.html!=null&&t.htmlFile!=null&&g({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:i.json}),t.text!=null&&t.textFile!=null&&g({message:"--text and --text-file are mutually exclusive.",code:"invalid_options"},{json:i.json});let n=await C(e,Er,i),o=t.reactEmail!=null?await it(t.reactEmail,i):t.htmlFile!=null?ge(t.htmlFile,i):t.html,s=t.textFile!=null?ge(t.textFile,i):t.text;await J({loading:"Updating broadcast...",sdkCall:a=>a.broadcasts.update(n,{...t.from!=null&&{from:t.from},...t.subject!=null&&{subject:t.subject},...o!=null&&{html:o},...s!=null&&{text:s},...t.name!=null&&{name:t.name}}),errorCode:"update_error",successMsg:`Broadcast updated: ${n}`},i)});var tv=new p("broadcasts").description("Manage broadcasts").addHelpText("after",h({context:`Lifecycle:
286
+ Example: {{{FIRST_NAME|Friend}}} \u2014 uses FIRST_NAME or falls back to "Friend".`,output:' {"id":"<broadcast-id>"}',errorCodes:["auth_error","no_changes","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","update_error"],examples:['resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --subject "Updated Subject"',"resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --html-file ./new-email.html",'resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --name "Q1 Newsletter" --from "onboarding@resend.com" --json','echo "<p>New content</p>" | resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --html-file -']})).action(async(t,e,r)=>{let n=r.optsWithGlobals();e.from==null&&e.subject==null&&e.html==null&&e.htmlFile==null&&e.text==null&&e.textFile==null&&e.reactEmail==null&&e.name==null&&h({message:"Provide at least one option to update: --from, --subject, --html, --html-file, --text, --text-file, --react-email, or --name.",code:"no_changes"},{json:n.json}),e.htmlFile==="-"&&e.textFile==="-"&&h({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:n.json}),e.reactEmail!=null&&(e.html!=null||e.htmlFile!=null)&&h({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:n.json}),e.html!=null&&e.htmlFile!=null&&h({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:n.json}),e.text!=null&&e.textFile!=null&&h({message:"--text and --text-file are mutually exclusive.",code:"invalid_options"},{json:n.json});let i=await C(t,Bt,n),o=e.reactEmail!=null?await Ne(e.reactEmail,n):e.htmlFile!=null?ce(e.htmlFile,n):e.html,s=e.textFile!=null?ce(e.textFile,n):e.text;await R({loading:"Updating broadcast...",sdkCall:a=>a.broadcasts.update(i,{...e.from!=null&&{from:e.from},...e.subject!=null&&{subject:e.subject},...o!=null&&{html:o},...s!=null&&{text:s},...e.name!=null&&{name:e.name}}),errorCode:"update_error",successMsg:`Broadcast updated: ${i}`},n)});var va=new p("broadcasts").description("Manage broadcasts").addHelpText("after",f({context:`Lifecycle:
288
287
  Broadcasts follow a draft \u2192 send flow:
289
288
  1. create \u2014 creates a draft (or sends immediately with --send)
290
289
  2. send \u2014 sends an API-created draft (dashboard broadcasts cannot be sent via API)
@@ -295,25 +294,25 @@ Template variables:
295
294
  Example: {{{FIRST_NAME|Friend}}} \u2014 uses FIRST_NAME or falls back to "Friend".
296
295
 
297
296
  Scheduling:
298
- --scheduled-at accepts ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET".`,examples:["resend broadcasts list",'resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html "<p>Hi {{{FIRST_NAME|there}}}</p>"',"resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "in 1 hour"',"resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --subject "Updated Subject"',"resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes","resend broadcasts open","resend broadcasts open d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6"]})).addCommand(U_).addCommand(Z_).addCommand(X_).addCommand(Y_).addCommand(Q_,{isDefault:!0}).addCommand(ev).addCommand(K_);function ii(e){let t=[];for(let i of e.commands)i._hidden||t.push(ii(i));let r=[];for(let i of e.options)i.hidden||r.push({long:i.long,short:i.short,description:i.description,takesValue:i.required||i.optional,choices:i.argChoices});return{name:e.name(),aliases:e.aliases(),description:e.description(),subcommands:t,options:r}}function ni(e,t,r){let i=t?`${t} ${e.name}`:e.name,n=[],o=[];for(let a of e.subcommands){o.push({name:a.name,description:a.description});for(let u of a.aliases)o.push({name:u,description:a.description})}let s=[...e.options,...r];n.push({path:i,subcommands:o,options:s});for(let a of e.subcommands)n.push(...ni(a,i,r));return n}function fc(e){let t=new Set;function r(i){for(let n of i.options)n.takesValue&&(n.long&&t.add(n.long),n.short&&t.add(n.short));for(let n of i.subcommands)r(n)}return r(e),[...t]}function iv(e){let t=ni(e,"",[]),r=[],i=e.name;r.push(`# bash completion for ${i}`),r.push(`# Generated by: ${i} completion bash`),r.push(""),r.push(`_${i}_completions() {`),r.push(" local cur prev words cword"),r.push(" if type _init_completion &>/dev/null; then _init_completion || return; else"),r.push(' cur="${COMP_WORDS[COMP_CWORD]}"'),r.push(' prev="${COMP_WORDS[COMP_CWORD-1]}"'),r.push(' words=("${COMP_WORDS[@]}")'),r.push(" cword=$COMP_CWORD"),r.push(" fi"),r.push("");let o=fc(e).join("|");r.push(' local cmd_path=""'),r.push(" local i=1"),r.push(" while [ $i -lt $cword ]; do"),r.push(' case "${words[$i]}" in'),o&&r.push(` ${o}) i=$((i + 1)) ;;`),r.push(" -*) ;;"),r.push(' *) cmd_path="${cmd_path:+$cmd_path }${words[$i]}" ;;'),r.push(" esac"),r.push(" i=$((i + 1))"),r.push(" done"),r.push(""),r.push(' case "$cmd_path" in');for(let s of t){let a=s.path===e.name?"":s.path.replace(`${e.name} `,""),u=s.options.filter(_=>_.choices&&_.long),d=s.options.map(_=>_.long).filter(Boolean).join(" "),l=s.subcommands.map(_=>_.name).join(" "),c=u.length>0,m=d.length>0,v=l.length>0;if(!c&&!m&&!v)continue;r.push(` "${a}")`);let b=s.options.filter(_=>_.takesValue&&!_.choices);if(c||b.length>0){r.push(' case "$prev" in');for(let _ of u)r.push(` ${_.long}) COMPREPLY=($(compgen -W "${_.choices?.join(" ")}" -- "$cur")); return ;;`);if(b.length>0){let _=b.flatMap(S=>[S.long,S.short].filter(Boolean)).join("|");r.push(` ${_}) return ;;`)}r.push(" esac")}m&&(r.push(' if [[ "$cur" == -* ]]; then'),r.push(` COMPREPLY=($(compgen -W "${d}" -- "$cur")); return`),r.push(" fi")),v&&r.push(` COMPREPLY=($(compgen -W "${l}" -- "$cur"))`),r.push(" ;;")}return r.push(" esac"),r.push("}"),r.push(""),r.push(`complete -o default -F _${i}_completions ${i}`),r.join(`
299
- `)}function nv(e){let t=ni(e,"",[]),r=[],i=e.name;r.push(`#compdef ${i}`),r.push(`# zsh completion for ${i}`),r.push(`# Generated by: ${i} completion zsh`),r.push(""),r.push(`_${i}() {`),r.push(" local cur prev cmd_path"),r.push(' cur="${words[$CURRENT]}"'),r.push(' prev="${words[$CURRENT-1]}"'),r.push("");let o=fc(e).join("|");r.push(' cmd_path=""'),r.push(" for ((i=2; i < CURRENT; i++)); do"),r.push(' case "${words[$i]}" in'),o&&r.push(` ${o}) ((i++)) ;;`),r.push(" -*) ;;"),r.push(' *) cmd_path="${cmd_path:+$cmd_path }${words[$i]}" ;;'),r.push(" esac"),r.push(" done"),r.push(""),r.push(' case "$cmd_path" in');for(let s of t){let a=s.path===e.name?"":s.path.replace(`${e.name} `,""),u=s.options.filter(m=>m.choices&&m.long),d=s.options.filter(m=>m.long),l=s.subcommands.length>0;r.push(` "${a}")`);let c=s.options.filter(m=>m.takesValue&&!m.choices);if(u.length>0||c.length>0){r.push(' case "$prev" in');for(let m of u)r.push(` ${m.long}) compadd -- ${m.choices?.join(" ")}; return ;;`);if(c.length>0){let m=c.flatMap(v=>[v.long,v.short].filter(Boolean)).join("|");r.push(` ${m}) _files; return ;;`)}r.push(" esac")}if(d.length>0){r.push(' if [[ "$cur" == -* ]]; then');let m=d.map(v=>`"${v.long}:${rv(v.description)}"`).join(" ");r.push(` local -a opts=(${m}); _describe 'option' opts; return`),r.push(" fi")}if(l){let m=s.subcommands.map(v=>`"${v.name}:${rv(v.description)}"`).join(" ");r.push(` local -a cmds=(${m}); _describe 'command' cmds`)}else r.push(" _files");r.push(" ;;")}return r.push(" esac"),r.push("}"),r.push(""),r.push(`compdef _${i} ${i}`),r.join(`
300
- `)}function ov(e){let t=e.name,r=ni(e,"",[]),i=[];i.push(`# fish completion for ${t}`),i.push(`# Generated by: ${t} completion fish`),i.push("");let n=r[0];for(let o of n.subcommands)i.push(`complete -c ${t} -n "__fish_use_subcommand" -a "${o.name}" -d "${Ba(o.description)}"`);for(let o of e.options)if(o.long){let s=o.long.replace("--",""),a=`complete -c ${t} -l "${s}"`;o.short&&(a+=` -s "${o.short.replace("-","")}"`),o.takesValue&&(a+=" -r"),o.choices&&(a+=` -a "${o.choices.join(" ")}"`),a+=` -d "${Ba(o.description)}"`,i.push(a)}for(let o of r.slice(1)){let s=o.path.split(" ").slice(1),u=`__fish_seen_subcommand_from ${s[s.length-1]}`;for(let d of o.subcommands)i.push(`complete -c ${t} -n "${u}" -a "${d.name}" -d "${Ba(d.description)}"`);for(let d of o.options)if(d.long){let l=d.long.replace("--",""),c=`complete -c ${t} -n "${u}" -l "${l}"`;d.short&&(c+=` -s "${d.short.replace("-","")}"`),d.takesValue&&(c+=" -r"),d.choices&&(c+=` -a "${d.choices.join(" ")}"`),c+=` -d "${Ba(d.description)}"`,i.push(c)}}return i.join(`
301
- `)}function rv(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/:/g,"\\:")}function Ba(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function sv(e){let t=e.name,r=ni(e,"",[]),i=[];i.push(`# PowerShell completion for ${t}`),i.push(`# Generated by: ${t} completion powershell`),i.push(""),i.push(`Register-ArgumentCompleter -Native -CommandName ${t} -ScriptBlock {`),i.push(" param($wordToComplete, $commandAst, $cursorPosition)"),i.push(""),i.push(' $words = $commandAst.ToString().Substring(0, $cursorPosition) -split "\\s+"');let o=fc(e).map(s=>`"${s}"`).join(", ");i.push(" $cmdPath = @()"),i.push(` $valueFlags = @(${o})`),i.push(" for ($i = 1; $i -lt $words.Count - 1; $i++) {"),i.push(" if ($valueFlags -contains $words[$i]) { $i++; continue }"),i.push(' if ($words[$i] -notlike "-*") { $cmdPath += $words[$i] }'),i.push(" }"),i.push(' $joined = $cmdPath -join " "'),i.push(" $cur = $words[-1]"),i.push(' if ($words.Count -eq 1) { $cur = "" }'),i.push(""),i.push(' $prev = if ($words.Count -ge 2) { $words[-2] } else { "" }'),i.push(""),i.push(" switch ($joined) {");for(let s of r){let a=s.path===e.name?"":s.path.replace(`${e.name} `,""),u=s.options.filter(_=>_.choices&&_.long),d=s.options.map(_=>_.long).filter(Boolean).map(_=>`"${_}"`).join(", "),l=s.subcommands.map(_=>`"${_.name}"`).join(", "),c=u.length>0,m=d.length>0,v=l.length>0;if(!c&&!m&&!v)continue;i.push(` "${a}" {`);let b=s.options.filter(_=>_.takesValue&&!_.choices);if(c||b.length>0){i.push(" switch ($prev) {");for(let _ of u){let S=_.choices?.map(x=>`"${x}"`).join(", ");i.push(` "${_.long}" { @(${S}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }; return }`)}if(b.length>0){let _=b.flatMap(S=>[S.long,S.short].filter(Boolean)).map(S=>`"${S}"`).join(", ");i.push(` { $_ -in @(${_}) } { return }`)}i.push(" }")}m&&(i.push(' if ($cur -like "-*") {'),i.push(` @(${d}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }; return`),i.push(" }")),v&&i.push(` @(${l}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }`),i.push(" }")}return i.push(" }"),i.push("}"),i.join(`
302
- `)}var av=new p("commands").description("Print the full command tree as JSON (for agents and tooling)").addHelpText("after",h({context:`Outputs every subcommand, option, and description from the CLI definition.
303
- In machine mode (piped, CI, or --json), the tree is JSON you can feed to agents or scripts.`,examples:["resend commands","resend commands --json",'resend commands | jq ".subcommands[].name"']})).action((e,t)=>{let r=t.parent;if(!r)throw new Error("commands must be registered on the root program");let i=t.optsWithGlobals(),n=ii(r);z(n,{json:i.json})});var Se=require("node:fs"),jt=require("node:os"),We=require("node:path");X();var cv=["bash","zsh","fish","powershell"],La="# resend shell completion";function Ww(){let e=process.env.SHELL;if(e){let t=(0,We.basename)(e);if(t==="bash")return"bash";if(t==="zsh")return"zsh";if(t==="fish")return"fish"}if(process.env.PSModulePath)return"powershell"}async function Vw(e){if(e)return e;let t=Ww();if(t)return t;O()||(process.stderr.write(`error: could not detect shell. Pass the shell name explicitly.
304
- `),process.exit(1));let r=await me({message:"Which shell do you use?",options:cv.map(i=>({value:i,label:i}))});return k(r)&&T("Cancelled."),r}function uv(e){switch(e){case"bash":return process.platform==="darwin"?(0,We.join)((0,jt.homedir)(),".bash_profile"):(0,We.join)((0,jt.homedir)(),".bashrc");case"zsh":return(0,We.join)((0,jt.homedir)(),".zshrc");case"powershell":return process.platform==="win32"?(0,We.join)((0,jt.homedir)(),"Documents","PowerShell","Microsoft.PowerShell_profile.ps1"):(0,We.join)((0,jt.homedir)(),".config","powershell","Microsoft.PowerShell_profile.ps1")}}function Kw(e,t){switch(e){case"bash":return iv(t);case"zsh":return nv(t);case"fish":return ov(t);case"powershell":return sv(t)}}function lv(e,t,r){(0,Se.existsSync)(e)||(0,Se.mkdirSync)(e,{recursive:!0});let i=(0,We.join)(e,t);return(0,Se.writeFileSync)(i,`${r}
305
- `),i}function Yw(e,t){switch(e){case"zsh":{let r=(0,We.join)((0,jt.homedir)(),".zsh","completions"),i=lv(r,"_resend",t);re.success(`Completions written to ${i}`);let n=uv(e),o=!0;if((0,Se.existsSync)(n)&&(0,Se.readFileSync)(n,"utf8").includes(r)&&(o=!1),o){let s=`${La}
297
+ --scheduled-at accepts ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET".`,examples:["resend broadcasts list",'resend broadcasts create --from onboarding@resend.com --subject "Launch" --segment-id 7b1e0a3d-4c5f-4e8a-9b2d-1a3c5e7f9b2d --html "<p>Hi {{{FIRST_NAME|there}}}</p>"',"resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts send d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --scheduled-at "in 1 hour"',"resend broadcasts get d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6",'resend broadcasts update d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --subject "Updated Subject"',"resend broadcasts delete d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6 --yes","resend broadcasts open","resend broadcasts open d1c2b3a4-5e6f-7a8b-9c0d-e1f2a3b4c5d6"]})).addCommand(ua).addCommand(ga).addCommand(ba).addCommand(fa).addCommand(ha,{isDefault:!0}).addCommand(ya).addCommand(pa);function cr(t){let e=[];for(let n of t.commands)n._hidden||e.push(cr(n));let r=[];for(let n of t.options)n.hidden||r.push({long:n.long,short:n.short,description:n.description,takesValue:n.required||n.optional,choices:n.argChoices});return{name:t.name(),aliases:t.aliases(),description:t.description(),subcommands:e,options:r}}function ur(t,e,r){let n=e?`${e} ${t.name}`:t.name,i=[],o=[];for(let a of t.subcommands){o.push({name:a.name,description:a.description});for(let l of a.aliases)o.push({name:l,description:a.description})}let s=[...t.options,...r];i.push({path:n,subcommands:o,options:s});for(let a of t.subcommands)i.push(...ur(a,n,r));return i}function mi(t){let e=new Set;function r(n){for(let i of n.options)i.takesValue&&(i.long&&e.add(i.long),i.short&&e.add(i.short));for(let i of n.subcommands)r(i)}return r(t),[...e]}function wa(t){let e=ur(t,"",[]),r=[],n=t.name;r.push(`# bash completion for ${n}`),r.push(`# Generated by: ${n} completion bash`),r.push(""),r.push(`_${n}_completions() {`),r.push(" local cur prev words cword"),r.push(" if type _init_completion &>/dev/null; then _init_completion || return; else"),r.push(' cur="${COMP_WORDS[COMP_CWORD]}"'),r.push(' prev="${COMP_WORDS[COMP_CWORD-1]}"'),r.push(' words=("${COMP_WORDS[@]}")'),r.push(" cword=$COMP_CWORD"),r.push(" fi"),r.push("");let o=mi(t).join("|");r.push(' local cmd_path=""'),r.push(" local i=1"),r.push(" while [ $i -lt $cword ]; do"),r.push(' case "${words[$i]}" in'),o&&r.push(` ${o}) i=$((i + 1)) ;;`),r.push(" -*) ;;"),r.push(' *) cmd_path="${cmd_path:+$cmd_path }${words[$i]}" ;;'),r.push(" esac"),r.push(" i=$((i + 1))"),r.push(" done"),r.push(""),r.push(' case "$cmd_path" in');for(let s of e){let a=s.path===t.name?"":s.path.replace(`${t.name} `,""),l=s.options.filter(b=>b.choices&&b.long),d=s.options.map(b=>b.long).filter(Boolean).join(" "),c=s.subcommands.map(b=>b.name).join(" "),u=l.length>0,m=d.length>0,y=c.length>0;if(!u&&!m&&!y)continue;r.push(` "${a}")`);let g=s.options.filter(b=>b.takesValue&&!b.choices);if(u||g.length>0){r.push(' case "$prev" in');for(let b of l)r.push(` ${b.long}) COMPREPLY=($(compgen -W "${b.choices?.join(" ")}" -- "$cur")); return ;;`);if(g.length>0){let b=g.flatMap(_=>[_.long,_.short].filter(Boolean)).join("|");r.push(` ${b}) return ;;`)}r.push(" esac")}m&&(r.push(' if [[ "$cur" == -* ]]; then'),r.push(` COMPREPLY=($(compgen -W "${d}" -- "$cur")); return`),r.push(" fi")),y&&r.push(` COMPREPLY=($(compgen -W "${c}" -- "$cur"))`),r.push(" ;;")}return r.push(" esac"),r.push("}"),r.push(""),r.push(`complete -o default -F _${n}_completions ${n}`),r.join(`
298
+ `)}function _a(t){let e=ur(t,"",[]),r=[],n=t.name;r.push(`#compdef ${n}`),r.push(`# zsh completion for ${n}`),r.push(`# Generated by: ${n} completion zsh`),r.push(""),r.push(`_${n}() {`),r.push(" local cur prev cmd_path"),r.push(' cur="${words[$CURRENT]}"'),r.push(' prev="${words[$CURRENT-1]}"'),r.push("");let o=mi(t).join("|");r.push(' cmd_path=""'),r.push(" for ((i=2; i < CURRENT; i++)); do"),r.push(' case "${words[$i]}" in'),o&&r.push(` ${o}) ((i++)) ;;`),r.push(" -*) ;;"),r.push(' *) cmd_path="${cmd_path:+$cmd_path }${words[$i]}" ;;'),r.push(" esac"),r.push(" done"),r.push(""),r.push(' case "$cmd_path" in');for(let s of e){let a=s.path===t.name?"":s.path.replace(`${t.name} `,""),l=s.options.filter(m=>m.choices&&m.long),d=s.options.filter(m=>m.long),c=s.subcommands.length>0;r.push(` "${a}")`);let u=s.options.filter(m=>m.takesValue&&!m.choices);if(l.length>0||u.length>0){r.push(' case "$prev" in');for(let m of l)r.push(` ${m.long}) compadd -- ${m.choices?.join(" ")}; return ;;`);if(u.length>0){let m=u.flatMap(y=>[y.long,y.short].filter(Boolean)).join("|");r.push(` ${m}) _files; return ;;`)}r.push(" esac")}if(d.length>0){r.push(' if [[ "$cur" == -* ]]; then');let m=d.map(y=>`"${y.long}:${Ca(y.description)}"`).join(" ");r.push(` local -a opts=(${m}); _describe 'option' opts; return`),r.push(" fi")}if(c){let m=s.subcommands.map(y=>`"${y.name}:${Ca(y.description)}"`).join(" ");r.push(` local -a cmds=(${m}); _describe 'command' cmds`)}else r.push(" _files");r.push(" ;;")}return r.push(" esac"),r.push("}"),r.push(""),r.push(`compdef _${n} ${n}`),r.join(`
299
+ `)}function xa(t){let e=t.name,r=ur(t,"",[]),n=[];n.push(`# fish completion for ${e}`),n.push(`# Generated by: ${e} completion fish`),n.push("");let i=r[0];for(let o of i.subcommands)n.push(`complete -c ${e} -n "__fish_use_subcommand" -a "${o.name}" -d "${Qr(o.description)}"`);for(let o of t.options)if(o.long){let s=o.long.replace("--",""),a=`complete -c ${e} -l "${s}"`;o.short&&(a+=` -s "${o.short.replace("-","")}"`),o.takesValue&&(a+=" -r"),o.choices&&(a+=` -a "${o.choices.join(" ")}"`),a+=` -d "${Qr(o.description)}"`,n.push(a)}for(let o of r.slice(1)){let s=o.path.split(" ").slice(1),l=`__fish_seen_subcommand_from ${s[s.length-1]}`;for(let d of o.subcommands)n.push(`complete -c ${e} -n "${l}" -a "${d.name}" -d "${Qr(d.description)}"`);for(let d of o.options)if(d.long){let c=d.long.replace("--",""),u=`complete -c ${e} -n "${l}" -l "${c}"`;d.short&&(u+=` -s "${d.short.replace("-","")}"`),d.takesValue&&(u+=" -r"),d.choices&&(u+=` -a "${d.choices.join(" ")}"`),u+=` -d "${Qr(d.description)}"`,n.push(u)}}return n.join(`
300
+ `)}function Ca(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/:/g,"\\:")}function Qr(t){return t.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function Aa(t){let e=t.name,r=ur(t,"",[]),n=[];n.push(`# PowerShell completion for ${e}`),n.push(`# Generated by: ${e} completion powershell`),n.push(""),n.push(`Register-ArgumentCompleter -Native -CommandName ${e} -ScriptBlock {`),n.push(" param($wordToComplete, $commandAst, $cursorPosition)"),n.push(""),n.push(' $words = $commandAst.ToString().Substring(0, $cursorPosition) -split "\\s+"');let o=mi(t).map(s=>`"${s}"`).join(", ");n.push(" $cmdPath = @()"),n.push(` $valueFlags = @(${o})`),n.push(" for ($i = 1; $i -lt $words.Count - 1; $i++) {"),n.push(" if ($valueFlags -contains $words[$i]) { $i++; continue }"),n.push(' if ($words[$i] -notlike "-*") { $cmdPath += $words[$i] }'),n.push(" }"),n.push(' $joined = $cmdPath -join " "'),n.push(" $cur = $words[-1]"),n.push(' if ($words.Count -eq 1) { $cur = "" }'),n.push(""),n.push(' $prev = if ($words.Count -ge 2) { $words[-2] } else { "" }'),n.push(""),n.push(" switch ($joined) {");for(let s of r){let a=s.path===t.name?"":s.path.replace(`${t.name} `,""),l=s.options.filter(b=>b.choices&&b.long),d=s.options.map(b=>b.long).filter(Boolean).map(b=>`"${b}"`).join(", "),c=s.subcommands.map(b=>`"${b.name}"`).join(", "),u=l.length>0,m=d.length>0,y=c.length>0;if(!u&&!m&&!y)continue;n.push(` "${a}" {`);let g=s.options.filter(b=>b.takesValue&&!b.choices);if(u||g.length>0){n.push(" switch ($prev) {");for(let b of l){let _=b.choices?.map(A=>`"${A}"`).join(", ");n.push(` "${b.long}" { @(${_}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }; return }`)}if(g.length>0){let b=g.flatMap(_=>[_.long,_.short].filter(Boolean)).map(_=>`"${_}"`).join(", ");n.push(` { $_ -in @(${b}) } { return }`)}n.push(" }")}m&&(n.push(' if ($cur -like "-*") {'),n.push(` @(${d}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }; return`),n.push(" }")),y&&n.push(` @(${c}) | Where-Object { $_ -like "$cur*" } | ForEach-Object { [System.Management.Automation.CompletionResult]::new($_) }`),n.push(" }")}return n.push(" }"),n.push("}"),n.join(`
301
+ `)}var ka=new p("commands").description("Print the full command tree as JSON (for agents and tooling)").addHelpText("after",f({context:`Outputs every subcommand, option, and description from the CLI definition.
302
+ In machine mode (piped, CI, or --json), the tree is JSON you can feed to agents or scripts.`,examples:["resend commands","resend commands --json",'resend commands | jq ".subcommands[].name"']})).action((t,e)=>{let r=e.parent;if(!r)throw new Error("commands must be registered on the root program");let n=e.optsWithGlobals(),i=cr(r);B(i,{json:n.json})});var me=require("node:fs"),ut=require("node:os"),je=require("node:path");z();var Da=["bash","zsh","fish","powershell"],Xr="# resend shell completion";function Tm(){let t=process.env.SHELL;if(t){let e=(0,je.basename)(t);if(e==="bash")return"bash";if(e==="zsh")return"zsh";if(e==="fish")return"fish"}if(process.env.PSModulePath)return"powershell"}async function Om(t){if(t)return t;let e=Tm();if(e)return e;w()||(process.stderr.write(`error: could not detect shell. Pass the shell name explicitly.
303
+ `),process.exit(1));let r=await ie({message:"Which shell do you use?",options:Da.map(n=>({value:n,label:n}))});return k(r)&&S("Cancelled."),r}function $a(t){switch(t){case"bash":return process.platform==="darwin"?(0,je.join)((0,ut.homedir)(),".bash_profile"):(0,je.join)((0,ut.homedir)(),".bashrc");case"zsh":return(0,je.join)((0,ut.homedir)(),".zshrc");case"powershell":return process.platform==="win32"?(0,je.join)((0,ut.homedir)(),"Documents","PowerShell","Microsoft.PowerShell_profile.ps1"):(0,je.join)((0,ut.homedir)(),".config","powershell","Microsoft.PowerShell_profile.ps1")}}function Im(t,e){switch(t){case"bash":return wa(e);case"zsh":return _a(e);case"fish":return xa(e);case"powershell":return Aa(e)}}function Ea(t,e,r){(0,me.existsSync)(t)||(0,me.mkdirSync)(t,{recursive:!0});let n=(0,je.join)(t,e);return(0,me.writeFileSync)(n,`${r}
304
+ `),n}function Pm(t,e){switch(t){case"zsh":{let r=(0,je.join)((0,ut.homedir)(),".zsh","completions"),n=Ea(r,"_resend",e);Q.success(`Completions written to ${n}`);let i=$a(t),o=!0;if((0,me.existsSync)(i)&&(0,me.readFileSync)(i,"utf8").includes(r)&&(o=!1),o){let s=`${Xr}
306
305
  fpath=(${r} $fpath)
307
- `,a=(0,Se.existsSync)(n)?(0,Se.readFileSync)(n,"utf8"):"",u=a.match(/^.*compinit.*$/m);if(u){let d=a.indexOf(u[0]),l=a.slice(0,d),c=a.slice(d);(0,Se.writeFileSync)(n,`${l}${s}
308
- ${c}`)}else{let d=`
306
+ `,a=(0,me.existsSync)(i)?(0,me.readFileSync)(i,"utf8"):"",l=a.match(/^.*compinit.*$/m);if(l){let d=a.indexOf(l[0]),c=a.slice(0,d),u=a.slice(d);(0,me.writeFileSync)(i,`${c}${s}
307
+ ${u}`)}else{let d=`
309
308
  ${s}autoload -Uz compinit && compinit
310
- `;(0,Se.writeFileSync)(n,d,{flag:"a"})}re.info(`Added completion path to ${n}`)}re.info("Restart your shell to activate completions.");return}case"fish":{let r=(0,We.join)((0,jt.homedir)(),".config","fish","completions"),i=lv(r,"resend.fish",t);re.success(`Completions written to ${i}`),re.info("Completions will be available in new fish sessions.");return}case"bash":case"powershell":{let r=uv(e),i=e==="powershell"?`
311
- ${La}
309
+ `;(0,me.writeFileSync)(i,d,{flag:"a"})}Q.info(`Added completion path to ${i}`)}Q.info("Restart your shell to activate completions.");return}case"fish":{let r=(0,je.join)((0,ut.homedir)(),".config","fish","completions"),n=Ea(r,"resend.fish",e);Q.success(`Completions written to ${n}`),Q.info("Completions will be available in new fish sessions.");return}case"bash":case"powershell":{let r=$a(t),n=t==="powershell"?`
310
+ ${Xr}
312
311
  resend completion powershell | Invoke-Expression
313
312
  `:`
314
- ${La}
315
- eval "$(resend completion ${e})"
316
- `;if((0,Se.existsSync)(r)&&(0,Se.readFileSync)(r,"utf8").includes(La)){re.info(`Completions already installed in ${r}`);return}let n=(0,We.dirname)(r);(0,Se.existsSync)(n)||(0,Se.mkdirSync)(n,{recursive:!0}),(0,Se.writeFileSync)(r,i,{flag:"a"}),re.success(`Completions added to ${r}`),re.info("Restart your shell to activate completions.");return}}}var dv=new p("completion").description("Generate shell completion script").addArgument(new Fc("[shell]","Shell type").choices(cv)).option("--install","Install completions into your shell profile").addHelpText("after",h({context:`Outputs a completion script for the given shell. The shell is auto-detected
313
+ ${Xr}
314
+ eval "$(resend completion ${t})"
315
+ `;if((0,me.existsSync)(r)&&(0,me.readFileSync)(r,"utf8").includes(Xr)){Q.info(`Completions already installed in ${r}`);return}let i=(0,je.dirname)(r);(0,me.existsSync)(i)||(0,me.mkdirSync)(i,{recursive:!0}),(0,me.writeFileSync)(r,n,{flag:"a"}),Q.success(`Completions added to ${r}`),Q.info("Restart your shell to activate completions.");return}}}var Sa=new p("completion").description("Generate shell completion script").addArgument(new Ni("[shell]","Shell type").choices(Da)).option("--install","Install completions into your shell profile").addHelpText("after",f({context:`Outputs a completion script for the given shell. The shell is auto-detected
317
316
  from $SHELL when not specified.
318
317
 
319
318
  Quick setup:
@@ -333,7 +332,7 @@ Manual setup:
333
332
  PowerShell (add to $PROFILE):
334
333
  resend completion powershell >> $PROFILE
335
334
 
336
- Homebrew users: completions may be configured automatically by your formula.`,examples:["resend completion --install","resend completion bash","resend completion zsh",'eval "$(resend completion bash)"']})).action(async(e,t,r)=>{let i=await Vw(e),n=r.parent;if(!n)throw new Error("completion command must be registered under a parent");let o=ii(n),s=Kw(i,o);if(t.install){Yw(i,s);return}if(!e&&O()){r.help();return}console.log(s)});var mv=new p("create").description("Create a new contact property definition").addOption(new le("--key <key>","Property key name, used in broadcast template interpolation (e.g. company_name, department)")).addOption(new le("--type <type>","Property data type: 'string' for text values, 'number' for numeric values").choices(["string","number"])).option("--fallback-value <value>","Default value used in broadcast templates when a contact has no value set for this property").addHelpText("after",h({context:`Property keys are used as identifiers in broadcast HTML template interpolation:
335
+ Homebrew users: completions may be configured automatically by your formula.`,examples:["resend completion --install","resend completion bash","resend completion zsh",'eval "$(resend completion bash)"']})).action(async(t,e,r)=>{let n=await Om(t),i=r.parent;if(!i)throw new Error("completion command must be registered under a parent");let o=cr(i),s=Im(n,o);if(e.install){Pm(n,s);return}if(!t&&w()){r.help();return}console.log(s)});var Ta=new p("create").description("Create a new contact property definition").addOption(new ee("--key <key>","Property key name, used in broadcast template interpolation (e.g. company_name, department)")).addOption(new ee("--type <type>","Property data type: 'string' for text values, 'number' for numeric values").choices(["string","number"])).option("--fallback-value <value>","Default value used in broadcast templates when a contact has no value set for this property").addHelpText("after",f({context:`Property keys are used as identifiers in broadcast HTML template interpolation:
337
336
  {{{PROPERTY_NAME|fallback}}} \u2014 triple-brace syntax substitutes the contact's value
338
337
  {{{company_name|Unknown}}} \u2014 falls back to "Unknown" if the property is not set
339
338
 
@@ -341,20 +340,20 @@ Reserved keys (cannot be used): FIRST_NAME, LAST_NAME, EMAIL, UNSUBSCRIBE_URL
341
340
 
342
341
  Non-interactive: --key and --type are required. --fallback-value is optional.
343
342
  Warning: do not create properties with reserved key names \u2014 they will conflict with
344
- built-in contact fields and may cause unexpected behavior in broadcasts.`,output:' {"object":"contact_property","id":"<id>"}',errorCodes:["auth_error","missing_key","missing_type","invalid_fallback_value","create_error"],examples:["resend contact-properties create --key company_name --type string",'resend contact-properties create --key company_name --type string --fallback-value "Unknown"',"resend contact-properties create --key employee_count --type number --fallback-value 0","resend contact-properties create --key department --type string --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.key,{message:"Property key",placeholder:"e.g. company_name"},{message:"Missing --key flag.",code:"missing_key"},r),n=await wr(e.type,{message:"Property data type",options:[{value:"string",label:"string \u2014 text values"},{value:"number",label:"number \u2014 numeric values"}]},{message:"Missing --type flag.",code:"missing_type"},r),o;if(e.fallbackValue!==void 0)if(n==="number"){let a=parseFloat(e.fallbackValue);Number.isNaN(a)&&g({message:"--fallback-value must be a valid number for number-type properties.",code:"invalid_fallback_value"},{json:r.json}),o=a}else o=e.fallbackValue;let s={key:i,type:n,...o!==void 0&&{fallbackValue:o}};await te({loading:"Creating contact property...",sdkCall:a=>a.contactProperties.create(s),onInteractive:a=>{console.log(`Contact property created: ${a.id}`)}},r)});var Pr={resource:"contact property",resourcePlural:"contact properties",fetchItems:(e,{limit:t,after:r})=>e.contactProperties.list({limit:t,...r&&{after:r}}),display:e=>({label:`${e.key} (${e.type})`,hint:e.id})};function pv(e){let t=e.map(r=>[r.key,r.type,r.fallbackValue!=null?String(r.fallbackValue):"",r.id,r.createdAt]);return F(["Key","Type","Fallback Value","ID","Created"],t,"(no contact properties)")}var fv=new p("delete").alias("rm").description("Delete a contact property definition").argument("[id]","Contact property UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`WARNING: Deleting a property definition removes that property value from ALL contacts
343
+ built-in contact fields and may cause unexpected behavior in broadcasts.`,output:' {"object":"contact_property","id":"<id>"}',errorCodes:["auth_error","missing_key","missing_type","invalid_fallback_value","create_error"],examples:["resend contact-properties create --key company_name --type string",'resend contact-properties create --key company_name --type string --fallback-value "Unknown"',"resend contact-properties create --key employee_count --type number --fallback-value 0","resend contact-properties create --key department --type string --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.key,{message:"Property key",placeholder:"e.g. company_name"},{message:"Missing --key flag.",code:"missing_key"},r),i=await Pt(t.type,{message:"Property data type",options:[{value:"string",label:"string \u2014 text values"},{value:"number",label:"number \u2014 numeric values"}]},{message:"Missing --type flag.",code:"missing_type"},r),o;if(t.fallbackValue!==void 0)if(i==="number"){let a=parseFloat(t.fallbackValue);Number.isNaN(a)&&h({message:"--fallback-value must be a valid number for number-type properties.",code:"invalid_fallback_value"},{json:r.json}),o=a}else o=t.fallbackValue;let s={key:n,type:i,...o!==void 0&&{fallbackValue:o}};await J({loading:"Creating contact property...",sdkCall:a=>a.contactProperties.create(s),onInteractive:a=>{console.log(`Contact property created: ${a.id}`)}},r)});var Nt={resource:"contact property",resourcePlural:"contact properties",fetchItems:(t,{limit:e,after:r})=>t.contactProperties.list({limit:e,...r&&{after:r}}),display:t=>({label:`${t.key} (${t.type})`,hint:t.id})};function Oa(t){let e=t.map(r=>[r.key,r.type,r.fallbackValue!=null?String(r.fallbackValue):"",r.id,r.createdAt]);return N(["Key","Type","Fallback Value","ID","Created"],e,"(no contact properties)")}var Ia=new p("delete").alias("rm").description("Delete a contact property definition").argument("[id]","Contact property UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`WARNING: Deleting a property definition removes that property value from ALL contacts
345
344
  permanently. This cannot be undone, and any broadcasts that reference this property key
346
345
  via {{{PROPERTY_NAME}}} will render an empty string or their inline fallback instead.
347
346
 
348
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"contact_property","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes","resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,Pr,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete contact property "${n.label}"?
349
- ID: ${n.id}
350
- This will remove this property from ALL contacts permanently.`,loading:"Deleting contact property...",object:"contact_property",successMsg:"Contact property deleted",sdkCall:o=>o.contactProperties.remove(n.id)},i)});var hv=new p("get").description("Retrieve a contact property definition by ID").argument("[id]","Contact property UUID").addHelpText("after",h({output:` {
347
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"contact_property","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes","resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,Nt,n);await re(i.id,!!e.yes,{confirmMessage:`Delete contact property "${i.label}"?
348
+ ID: ${i.id}
349
+ This will remove this property from ALL contacts permanently.`,loading:"Deleting contact property...",object:"contact_property",successMsg:"Contact property deleted",sdkCall:o=>o.contactProperties.remove(i.id)},n)});var Pa=new p("get").description("Retrieve a contact property definition by ID").argument("[id]","Contact property UUID").addHelpText("after",f({output:` {
351
350
  "object": "contact_property",
352
351
  "id": "<uuid>",
353
352
  "key": "company_name",
354
353
  "type": "string",
355
354
  "fallbackValue": null,
356
355
  "createdAt": "2026-01-01T00:00:00.000Z"
357
- }`,errorCodes:["auth_error","fetch_error"],examples:["resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d","resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Pr,i);await W({loading:"Fetching contact property...",sdkCall:o=>o.contactProperties.get(n),onInteractive:o=>{console.log(`${o.key} (${o.type})`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.createdAt}`),console.log(`Fallback value: ${o.fallbackValue??"(none)"}`)}},i)});var gv=new p("list").alias("ls").description("List all contact property definitions").option("--limit <n>","Maximum number of contact properties to return (1-100)","10").option("--after <cursor>","Return contact properties after this cursor (next page)").option("--before <cursor>","Return contact properties before this cursor (previous page)").addHelpText("after",h({context:`Pagination: use --after or --before with a contact property ID as the cursor.
356
+ }`,errorCodes:["auth_error","fetch_error"],examples:["resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d","resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Nt,n);await H({loading:"Fetching contact property...",sdkCall:o=>o.contactProperties.get(i),onInteractive:o=>{console.log(`${o.key} (${o.type})`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.createdAt}`),console.log(`Fallback value: ${o.fallbackValue??"(none)"}`)}},n)});var ja=new p("list").alias("ls").description("List all contact property definitions").option("--limit <n>","Maximum number of contact properties to return (1-100)","10").option("--after <cursor>","Return contact properties after this cursor (next page)").option("--before <cursor>","Return contact properties before this cursor (previous page)").addHelpText("after",f({context:`Pagination: use --after or --before with a contact property ID as the cursor.
358
357
  Only one of --after or --before may be used at a time.
359
358
  The response includes has_more: true when additional pages exist.`,output:` {
360
359
  "object": "list",
@@ -362,14 +361,14 @@ This will remove this property from ALL contacts permanently.`,loading:"Deleting
362
361
  "data": [
363
362
  { "id": "<uuid>", "key": "company_name", "type": "string", "fallbackValue": null, "createdAt": "..." }
364
363
  ]
365
- }`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend contact-properties list","resend contact-properties list --limit 25 --json","resend contact-properties list --after b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching contact properties...",sdkCall:o=>o.contactProperties.list(n),onInteractive:o=>{console.log(pv(o.data)),G(o,"contact-properties list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var bv=new p("update").description("Update a contact property definition").argument("[id]","Contact property UUID").option("--fallback-value <value>","New fallback value used in broadcast templates when a contact has no value set for this property").option("--clear-fallback-value","Remove the fallback value (sets it to null)").addHelpText("after",h({context:`Note: the property key and type cannot be changed after creation. Only the fallback value
364
+ }`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend contact-properties list","resend contact-properties list --limit 25 --json","resend contact-properties list --after b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching contact properties...",sdkCall:o=>o.contactProperties.list(i),onInteractive:o=>{console.log(Oa(o.data)),M(o,"contact-properties list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Ra=new p("update").description("Update a contact property definition").argument("[id]","Contact property UUID").option("--fallback-value <value>","New fallback value used in broadcast templates when a contact has no value set for this property").option("--clear-fallback-value","Remove the fallback value (sets it to null)").addHelpText("after",f({context:`Note: the property key and type cannot be changed after creation. Only the fallback value
366
365
  is updatable. Renaming a property would break existing broadcasts that reference the old key.
367
366
 
368
367
  --fallback-value and --clear-fallback-value are mutually exclusive.
369
368
 
370
369
  The fallback value is used in broadcast template interpolation when a contact has no value:
371
370
  {{{company_name|Unknown}}} \u2014 inline fallback (takes precedence over the property's fallback)
372
- {{{company_name}}} \u2014 uses the property's stored fallback value if set`,output:' {"object":"contact_property","id":"<id>"}',errorCodes:["auth_error","no_changes","conflicting_flags","fetch_error","invalid_fallback_value","update_error"],examples:['resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Acme Corp"',"resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value 42","resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --clear-fallback-value",'resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Unknown" --json']})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Pr,i);t.fallbackValue===void 0&&!t.clearFallbackValue&&g({message:"Provide at least one option to update: --fallback-value or --clear-fallback-value.",code:"no_changes"},{json:i.json}),t.fallbackValue!==void 0&&t.clearFallbackValue&&g({message:"--fallback-value and --clear-fallback-value are mutually exclusive.",code:"conflicting_flags"},{json:i.json});let o=t.clearFallbackValue?null:t.fallbackValue;if(typeof o=="string"){let s=await ne(i);if((await He("Fetching contact property...",()=>s.contactProperties.get(n),"fetch_error",i,{retryTransient:!0})).type==="number"){let u=parseFloat(o);Number.isNaN(u)&&g({message:"--fallback-value must be a valid number for number-type properties.",code:"invalid_fallback_value"},{json:i.json}),o=u}}await J({loading:"Updating contact property...",sdkCall:s=>s.contactProperties.update({id:n,...o!==void 0&&{fallbackValue:o}}),errorCode:"update_error",successMsg:`Contact property updated: ${n}`},i)});var _v=new p("contact-properties").description("Manage contact property definitions").addHelpText("after",h({context:`Contact properties define the schema for custom data stored on contacts.
371
+ {{{company_name}}} \u2014 uses the property's stored fallback value if set`,output:' {"object":"contact_property","id":"<id>"}',errorCodes:["auth_error","no_changes","conflicting_flags","fetch_error","invalid_fallback_value","update_error"],examples:['resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Acme Corp"',"resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value 42","resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --clear-fallback-value",'resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Unknown" --json']})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Nt,n);e.fallbackValue===void 0&&!e.clearFallbackValue&&h({message:"Provide at least one option to update: --fallback-value or --clear-fallback-value.",code:"no_changes"},{json:n.json}),e.fallbackValue!==void 0&&e.clearFallbackValue&&h({message:"--fallback-value and --clear-fallback-value are mutually exclusive.",code:"conflicting_flags"},{json:n.json});let o=e.clearFallbackValue?null:e.fallbackValue;if(typeof o=="string"){let s=await X(n);if((await Ee("Fetching contact property...",()=>s.contactProperties.get(i),"fetch_error",n,{retryTransient:!0})).type==="number"){let l=parseFloat(o);Number.isNaN(l)&&h({message:"--fallback-value must be a valid number for number-type properties.",code:"invalid_fallback_value"},{json:n.json}),o=l}}await R({loading:"Updating contact property...",sdkCall:s=>s.contactProperties.update({id:i,...o!==void 0&&{fallbackValue:o}}),errorCode:"update_error",successMsg:`Contact property updated: ${i}`},n)});var Fa=new p("contact-properties").description("Manage contact property definitions").addHelpText("after",f({context:`Contact properties define the schema for custom data stored on contacts.
373
372
  Think of them as column definitions \u2014 you create a property definition (e.g. company_name)
374
373
  and then set values for that property on individual contacts via "resend contacts update --properties".
375
374
 
@@ -384,9 +383,9 @@ Supported types:
384
383
  number \u2014 numeric values (useful for counts, scores, thresholds)
385
384
 
386
385
  Note: property keys and types are immutable after creation. Only the fallback value can
387
- be updated. Deleting a property removes it from all contacts.`,examples:["resend contact-properties list","resend contact-properties create --key company_name --type string",'resend contact-properties create --key plan --type string --fallback-value "free"',"resend contact-properties create --key score --type number --fallback-value 0","resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d",'resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Unknown"',"resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --clear-fallback-value","resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes"]})).addCommand(mv).addCommand(hv).addCommand(gv,{isDefault:!0}).addCommand(bv).addCommand(fv);function Na(e){let t=e.map(r=>[r.email,r.first_name??"",r.last_name??"",r.unsubscribed?"yes":"no",r.id]);return F(["Email","First Name","Last Name","Unsubscribed","ID"],t,"(no contacts)")}function vv(e){let t=e.map(r=>[r.name,r.subscription,r.id,r.description??""]);return F(["Name","Subscription","ID","Description"],t,"(no topic subscriptions)")}var xe={resource:"contact",resourcePlural:"contacts",fetchItems:(e,{limit:t,after:r})=>e.contacts.list({limit:t,...r&&{after:r}}),display:e=>({label:e.email,hint:e.id})};function Tr(e){return e.includes("@")?{email:e}:{id:e}}function Ir(e){return e.includes("@")?{email:e}:{contactId:e}}function yv(e,t){let r;try{r=JSON.parse(e)}catch{g({message:"Invalid --topics JSON. Expected an array of {id, subscription} objects.",code:"invalid_topics"},{json:t.json})}return Array.isArray(r)||g({message:"Invalid --topics JSON. Expected an array of {id, subscription} objects.",code:"invalid_topics"},{json:t.json}),r}function Ga(e,t){if(e)try{return JSON.parse(e)}catch{g({message:"Invalid --properties JSON.",code:"invalid_properties"},{json:t.json})}}var Cv=new p("add-segment").description("Add a contact to a segment").argument("[contactId]","Contact UUID or email address").option("--segment-id <id>","Segment ID to add the contact to (required)").addHelpText("after",h({context:`The <contactId> argument accepts either a UUID or an email address.
386
+ be updated. Deleting a property removes it from all contacts.`,examples:["resend contact-properties list","resend contact-properties create --key company_name --type string",'resend contact-properties create --key plan --type string --fallback-value "free"',"resend contact-properties create --key score --type number --fallback-value 0","resend contact-properties get b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d",'resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --fallback-value "Unknown"',"resend contact-properties update b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --clear-fallback-value","resend contact-properties delete b4a3c2d1-6e5f-8a7b-0c9d-2e1f4a3b6c5d --yes"]})).addCommand(Ta).addCommand(Pa).addCommand(ja,{isDefault:!0}).addCommand(Ra).addCommand(Ia);function Zr(t){let e=t.map(r=>[r.email,r.first_name??"",r.last_name??"",r.unsubscribed?"yes":"no",r.id]);return N(["Email","First Name","Last Name","Unsubscribed","ID"],e,"(no contacts)")}function Ba(t){let e=t.map(r=>[r.name,r.subscription,r.id,r.description??""]);return N(["Name","Subscription","ID","Description"],e,"(no topic subscriptions)")}var fe={resource:"contact",resourcePlural:"contacts",fetchItems:(t,{limit:e,after:r})=>t.contacts.list({limit:e,...r&&{after:r}}),display:t=>({label:t.email,hint:t.id})};function Ht(t){return t.includes("@")?{email:t}:{id:t}}function Lt(t){return t.includes("@")?{email:t}:{contactId:t}}function Na(t,e){let r;try{r=JSON.parse(t)}catch{h({message:"Invalid --topics JSON. Expected an array of {id, subscription} objects.",code:"invalid_topics"},{json:e.json})}return Array.isArray(r)||h({message:"Invalid --topics JSON. Expected an array of {id, subscription} objects.",code:"invalid_topics"},{json:e.json}),r}function en(t,e){if(t)try{return JSON.parse(t)}catch{h({message:"Invalid --properties JSON.",code:"invalid_properties"},{json:e.json})}}var Ha=new p("add-segment").description("Add a contact to a segment").argument("[contactId]","Contact UUID or email address").option("--segment-id <id>","Segment ID to add the contact to (required)").addHelpText("after",f({context:`The <contactId> argument accepts either a UUID or an email address.
388
387
 
389
- Non-interactive: --segment-id is required.`,output:' {"id":"<segment-membership-id>"}',errorCodes:["auth_error","missing_segment_id","add_segment_error"],examples:["resend contacts add-segment e169aa45-1ecf-4183-9955-b1499d5701d3 --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts add-segment steve.wozniak@gmail.com --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i),o=await C(t.segmentId,nt,i),s={...Ir(n),segmentId:o};await J({loading:"Adding contact to segment...",sdkCall:a=>a.contacts.segments.add(s),errorCode:"add_segment_error",successMsg:`Contact added to segment: ${o}`},i)});X();var Ov=new p("create").description("Create a new contact").option("--email <email>","Contact email address (required)").option("--first-name <name>","First name").option("--last-name <name>","Last name").option("--unsubscribed","Globally unsubscribe the contact from all broadcasts").option("--properties <json>",`Custom properties as a JSON string (e.g. '{"company":"Acme"}')`).option("--segment-id <id...>","Segment ID to add the contact to on creation (repeatable: --segment-id abc --segment-id def)").addHelpText("after",h({context:`Non-interactive: --email is required. All other flags are optional.
388
+ Non-interactive: --segment-id is required.`,output:' {"id":"<segment-membership-id>"}',errorCodes:["auth_error","missing_segment_id","add_segment_error"],examples:["resend contacts add-segment e169aa45-1ecf-4183-9955-b1499d5701d3 --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts add-segment steve.wozniak@gmail.com --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n),o=await C(e.segmentId,He,n),s={...Lt(i),segmentId:o};await R({loading:"Adding contact to segment...",sdkCall:a=>a.contacts.segments.add(s),errorCode:"add_segment_error",successMsg:`Contact added to segment: ${o}`},n)});z();var La=new p("create").description("Create a new contact").option("--email <email>","Contact email address (required)").option("--first-name <name>","First name").option("--last-name <name>","Last name").option("--unsubscribed","Globally unsubscribe the contact from all broadcasts").option("--properties <json>",`Custom properties as a JSON string (e.g. '{"company":"Acme"}')`).option("--segment-id <id...>","Segment ID to add the contact to on creation (repeatable: --segment-id abc --segment-id def)").addHelpText("after",f({context:`Non-interactive: --email is required. All other flags are optional.
390
389
 
391
390
  Properties: pass a JSON object string to --properties (e.g. '{"plan":"pro","company":"Acme"}').
392
391
  Properties are stored as custom contact attributes. To clear a property, set it to null.
@@ -394,11 +393,11 @@ Properties: pass a JSON object string to --properties (e.g. '{"plan":"pro","comp
394
393
 
395
394
  Segments: use --segment-id once per segment to add the contact to one or more segments on creation.
396
395
 
397
- Unsubscribed: setting --unsubscribed is a team-wide opt-out from all broadcasts, regardless of segments/topics.`,output:' {"object":"contact","id":"<id>"}',errorCodes:["auth_error","missing_email","invalid_properties","create_error"],examples:["resend contacts create --email steve.wozniak@gmail.com","resend contacts create --email steve.wozniak@gmail.com --first-name Steve --last-name Wozniak",`resend contacts create --email steve.wozniak@gmail.com --properties '{"company":"Acme","plan":"pro"}'`]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.email,{message:"Email address",placeholder:"steve.wozniak@gmail.com"},{message:"Missing --email flag.",code:"missing_email"},r),n=e.firstName,o=e.lastName;if(O()&&!r.json&&!e.firstName){let u=await ee({message:"First name (optional)"});k(u)&&T("Cancelled."),u&&(n=u)}if(O()&&!r.json&&!e.lastName){let u=await ee({message:"Last name (optional)"});k(u)&&T("Cancelled."),u&&(o=u)}let s=Ga(e.properties,r),a=e.segmentId??[];await te({loading:"Creating contact...",sdkCall:u=>u.contacts.create({email:i,...n&&{firstName:n},...o&&{lastName:o},...e.unsubscribed&&{unsubscribed:!0},...s&&{properties:s},...a.length>0&&{segments:a.map(d=>({id:d}))}}),onInteractive:u=>{console.log(`Contact created: ${u.id}`)}},r)});var Sv=new p("delete").alias("rm").description("Delete a contact").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`The <id> argument accepts either a UUID or an email address.
396
+ Unsubscribed: setting --unsubscribed is a team-wide opt-out from all broadcasts, regardless of segments/topics.`,output:' {"object":"contact","id":"<id>"}',errorCodes:["auth_error","missing_email","invalid_properties","create_error"],examples:["resend contacts create --email steve.wozniak@gmail.com","resend contacts create --email steve.wozniak@gmail.com --first-name Steve --last-name Wozniak",`resend contacts create --email steve.wozniak@gmail.com --properties '{"company":"Acme","plan":"pro"}'`]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.email,{message:"Email address",placeholder:"steve.wozniak@gmail.com"},{message:"Missing --email flag.",code:"missing_email"},r),i=t.firstName,o=t.lastName;if(w()&&!r.json&&!t.firstName){let l=await Y({message:"First name (optional)"});k(l)&&S("Cancelled."),l&&(i=l)}if(w()&&!r.json&&!t.lastName){let l=await Y({message:"Last name (optional)"});k(l)&&S("Cancelled."),l&&(o=l)}let s=en(t.properties,r),a=t.segmentId??[];await J({loading:"Creating contact...",sdkCall:l=>l.contacts.create({email:n,...i&&{firstName:i},...o&&{lastName:o},...t.unsubscribed&&{unsubscribed:!0},...s&&{properties:s},...a.length>0&&{segments:a.map(d=>({id:d}))}}),onInteractive:l=>{console.log(`Contact created: ${l.id}`)}},r)});var Ga=new p("delete").alias("rm").description("Delete a contact").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`The <id> argument accepts either a UUID or an email address.
398
397
 
399
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"contact","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend contacts delete 520784e2-887d-4c25-b53c-4ad46ad38100 --yes","resend contacts delete acme@example.com --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,xe,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete contact "${n.label}"?
400
- ID: ${n.id}
401
- This cannot be undone.`,loading:"Deleting contact...",object:"contact",successMsg:"Contact deleted",sdkCall:o=>o.contacts.remove(n.id)},i)});var wv=new p("get").description("Retrieve a contact by ID or email address").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").addHelpText("after",h({output:` {
398
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"contact","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend contacts delete 520784e2-887d-4c25-b53c-4ad46ad38100 --yes","resend contacts delete acme@example.com --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,fe,n);await re(i.id,!!e.yes,{confirmMessage:`Delete contact "${i.label}"?
399
+ ID: ${i.id}
400
+ This cannot be undone.`,loading:"Deleting contact...",object:"contact",successMsg:"Contact deleted",sdkCall:o=>o.contacts.remove(i.id)},n)});var Ma=new p("get").description("Retrieve a contact by ID or email address").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").addHelpText("after",f({output:` {
402
401
  "object": "contact",
403
402
  "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
404
403
  "email": "steve.wozniak@gmail.com",
@@ -407,17 +406,17 @@ This cannot be undone.`,loading:"Deleting contact...",object:"contact",successMs
407
406
  "created_at": "2026-01-01T00:00:00.000Z",
408
407
  "unsubscribed": false,
409
408
  "properties": {}
410
- }`,errorCodes:["auth_error","fetch_error"],examples:["resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts get steve.wozniak@gmail.com","resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i);await W({loading:"Fetching contact...",sdkCall:o=>o.contacts.get(n),onInteractive:o=>{let s=[o.first_name,o.last_name].filter(Boolean).join(" ");console.log(`${o.email}${s?` (${s})`:""}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),console.log(`Unsubscribed: ${o.unsubscribed?"yes":"no"}`);let a=Object.entries(o.properties??{});if(a.length>0){console.log("Properties:");for(let[u,d]of a)console.log(` ${u}: ${d.value}`)}}},i)});var xv=new p("list").alias("ls").description("List all contacts").option("--limit <n>","Maximum number of contacts to return (1-100)","10").option("--after <cursor>","Return contacts after this cursor (next page)").option("--before <cursor>","Return contacts before this cursor (previous page)").addHelpText("after",h({context:`Contacts are global \u2014 they are not scoped to audiences or segments since the 2025 migration.
409
+ }`,errorCodes:["auth_error","fetch_error"],examples:["resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts get steve.wozniak@gmail.com","resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n);await H({loading:"Fetching contact...",sdkCall:o=>o.contacts.get(i),onInteractive:o=>{let s=[o.first_name,o.last_name].filter(Boolean).join(" ");console.log(`${o.email}${s?` (${s})`:""}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),console.log(`Unsubscribed: ${o.unsubscribed?"yes":"no"}`);let a=Object.entries(o.properties??{});if(a.length>0){console.log("Properties:");for(let[l,d]of a)console.log(` ${l}: ${d.value}`)}}},n)});var qa=new p("list").alias("ls").description("List all contacts").option("--limit <n>","Maximum number of contacts to return (1-100)","10").option("--after <cursor>","Return contacts after this cursor (next page)").option("--before <cursor>","Return contacts before this cursor (previous page)").addHelpText("after",f({context:`Contacts are global \u2014 they are not scoped to audiences or segments since the 2025 migration.
411
410
 
412
411
  Pagination: use --after or --before with a contact ID as the cursor.
413
412
  Only one of --after or --before may be used at a time.
414
- The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"...","email":"...","first_name":"...","last_name":"...","unsubscribed":false}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend contacts list","resend contacts list --limit 25 --json","resend contacts list --after 479e3145-dd38-4932-8c0c-e58b548c9e76 --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching contacts...",sdkCall:o=>o.contacts.list(n),onInteractive:o=>{console.log(Na(o.data)),G(o,"contacts list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var kv=new p("remove-segment").description("Remove a contact from a segment").argument("[contactId]","Contact UUID or email address").argument("[segmentId]","Segment ID to remove the contact from").addHelpText("after",h({context:`The <contactId> argument accepts either a UUID or an email address.
415
- The <segmentId> argument must be a segment UUID (not an email).`,output:' {"id":"<segment-id>","deleted":true}',errorCodes:["auth_error","remove_segment_error"],examples:["resend contacts remove-segment e169aa45-1ecf-4183-9955-b1499d5701d3 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts remove-segment steve.wozniak@gmail.com 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r,i)=>{let n=i.optsWithGlobals(),o=await C(e,xe,n),s=await C(t,nt,n),a={...Ir(o),segmentId:s};await J({loading:"Removing contact from segment...",sdkCall:u=>u.contacts.segments.remove(a),errorCode:"remove_segment_error",successMsg:`Contact removed from segment: ${s}`},n)});var Av=new p("segments").description("List the segments a contact belongs to").argument("[id]","Contact UUID or email address").addHelpText("after",h({context:"The <id> argument accepts either a UUID or an email address.",output:' {"object":"list","data":[{"id":"<segment-uuid>","name":"Newsletter Subscribers","created_at":"..."}],"has_more":false}',errorCodes:["auth_error","list_error"],examples:["resend contacts segments e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts segments steve.wozniak@gmail.com","resend contacts segments e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i);await D({loading:"Fetching segments...",sdkCall:o=>o.contacts.segments.list(Ir(n)),onInteractive:o=>console.log(Ha(o.data))},i)});var Ev=new p("topics").description("List a contact's topic subscriptions").argument("[id]","Contact UUID or email address").addHelpText("after",h({context:`The <id> argument accepts either a UUID or an email address.
413
+ The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"...","email":"...","first_name":"...","last_name":"...","unsubscribed":false}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend contacts list","resend contacts list --limit 25 --json","resend contacts list --after 479e3145-dd38-4932-8c0c-e58b548c9e76 --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching contacts...",sdkCall:o=>o.contacts.list(i),onInteractive:o=>{console.log(Zr(o.data)),M(o,"contacts list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Ua=new p("remove-segment").description("Remove a contact from a segment").argument("[contactId]","Contact UUID or email address").argument("[segmentId]","Segment ID to remove the contact from").addHelpText("after",f({context:`The <contactId> argument accepts either a UUID or an email address.
414
+ The <segmentId> argument must be a segment UUID (not an email).`,output:' {"id":"<segment-id>","deleted":true}',errorCodes:["auth_error","remove_segment_error"],examples:["resend contacts remove-segment e169aa45-1ecf-4183-9955-b1499d5701d3 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts remove-segment steve.wozniak@gmail.com 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r,n)=>{let i=n.optsWithGlobals(),o=await C(t,fe,i),s=await C(e,He,i),a={...Lt(o),segmentId:s};await R({loading:"Removing contact from segment...",sdkCall:l=>l.contacts.segments.remove(a),errorCode:"remove_segment_error",successMsg:`Contact removed from segment: ${s}`},i)});var Wa=new p("segments").description("List the segments a contact belongs to").argument("[id]","Contact UUID or email address").addHelpText("after",f({context:"The <id> argument accepts either a UUID or an email address.",output:' {"object":"list","data":[{"id":"<segment-uuid>","name":"Newsletter Subscribers","created_at":"..."}],"has_more":false}',errorCodes:["auth_error","list_error"],examples:["resend contacts segments e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts segments steve.wozniak@gmail.com","resend contacts segments e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n);await P({loading:"Fetching segments...",sdkCall:o=>o.contacts.segments.list(Lt(i)),onInteractive:o=>console.log(Yr(o.data))},n)});var Va=new p("topics").description("List a contact's topic subscriptions").argument("[id]","Contact UUID or email address").addHelpText("after",f({context:`The <id> argument accepts either a UUID or an email address.
416
415
 
417
416
  Topics control which broadcast email types a contact receives.
418
417
  subscription values: "opt_in" (receiving) | "opt_out" (not receiving)
419
418
 
420
- Use "resend contacts update-topics <id>" to change subscription statuses.`,output:' {"object":"list","data":[{"id":"...","name":"Product Updates","description":"...","subscription":"opt_in"}],"has_more":false}',errorCodes:["auth_error","list_error"],examples:["resend contacts topics e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts topics steve.wozniak@gmail.com","resend contacts topics e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i);await D({loading:"Fetching topic subscriptions...",sdkCall:o=>o.contacts.topics.list(Tr(n)),onInteractive:o=>console.log(vv(o.data))},i)});var Pv=new p("update").description("Update a contact's subscription status or custom properties").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").option("--unsubscribed","Globally unsubscribe the contact from all broadcasts").option("--no-unsubscribed","Re-subscribe the contact (clears the global unsubscribe flag)").option("--properties <json>",`JSON object of properties to merge (e.g. '{"company":"Acme"}'); set a key to null to clear it`).addHelpText("after",h({context:`The <id> argument accepts either a UUID or an email address.
419
+ Use "resend contacts update-topics <id>" to change subscription statuses.`,output:' {"object":"list","data":[{"id":"...","name":"Product Updates","description":"...","subscription":"opt_in"}],"has_more":false}',errorCodes:["auth_error","list_error"],examples:["resend contacts topics e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts topics steve.wozniak@gmail.com","resend contacts topics e169aa45-1ecf-4183-9955-b1499d5701d3 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n);await P({loading:"Fetching topic subscriptions...",sdkCall:o=>o.contacts.topics.list(Ht(i)),onInteractive:o=>console.log(Ba(o.data))},n)});var Ka=new p("update").description("Update a contact's subscription status or custom properties").argument("[id]","Contact UUID or email address \u2014 both are accepted by the API").option("--unsubscribed","Globally unsubscribe the contact from all broadcasts").option("--no-unsubscribed","Re-subscribe the contact (clears the global unsubscribe flag)").option("--properties <json>",`JSON object of properties to merge (e.g. '{"company":"Acme"}'); set a key to null to clear it`).addHelpText("after",f({context:`The <id> argument accepts either a UUID or an email address.
421
420
 
422
421
  Subscription toggle:
423
422
  --unsubscribed Sets unsubscribed: true \u2014 contact will not receive any broadcasts.
@@ -425,7 +424,7 @@ Subscription toggle:
425
424
  Omitting both flags leaves the subscription status unchanged.
426
425
 
427
426
  Properties: --properties merges the given JSON object with existing properties.
428
- Set a key to null to clear it: '{"company":null}'.`,output:' {"object":"contact","id":"<id>"}',errorCodes:["auth_error","invalid_properties","update_error"],examples:["resend contacts update e169aa45-1ecf-4183-9955-b1499d5701d3 --unsubscribed","resend contacts update acme@example.com --no-unsubscribed",`resend contacts update e169aa45-1ecf-4183-9955-b1499d5701d3 --properties '{"plan":"pro"}'`,"resend contacts update acme@example.com --unsubscribed --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i),o=Ga(t.properties,i),s={...Tr(n),...t.unsubscribed!==void 0&&{unsubscribed:t.unsubscribed},...o&&{properties:o}};await J({loading:"Updating contact...",sdkCall:a=>a.contacts.update(s),errorCode:"update_error",successMsg:`Contact updated: ${n}`},i)});X();var Tv=new p("update-topics").description("Update a contact's topic subscription statuses").argument("[id]","Contact UUID or email address").option("--topics <json>",`JSON array of topic subscriptions (required) \u2014 e.g. '[{"id":"topic-uuid","subscription":"opt_in"}]'`).addHelpText("after",h({context:`The <id> argument accepts either a UUID or an email address.
427
+ Set a key to null to clear it: '{"company":null}'.`,output:' {"object":"contact","id":"<id>"}',errorCodes:["auth_error","invalid_properties","update_error"],examples:["resend contacts update e169aa45-1ecf-4183-9955-b1499d5701d3 --unsubscribed","resend contacts update acme@example.com --no-unsubscribed",`resend contacts update e169aa45-1ecf-4183-9955-b1499d5701d3 --properties '{"plan":"pro"}'`,"resend contacts update acme@example.com --unsubscribed --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n),o=en(e.properties,n),s={...Ht(i),...e.unsubscribed!==void 0&&{unsubscribed:e.unsubscribed},...o&&{properties:o}};await R({loading:"Updating contact...",sdkCall:a=>a.contacts.update(s),errorCode:"update_error",successMsg:`Contact updated: ${i}`},n)});z();var za=new p("update-topics").description("Update a contact's topic subscription statuses").argument("[id]","Contact UUID or email address").option("--topics <json>",`JSON array of topic subscriptions (required) \u2014 e.g. '[{"id":"topic-uuid","subscription":"opt_in"}]'`).addHelpText("after",f({context:`The <id> argument accepts either a UUID or an email address.
429
428
 
430
429
  Non-interactive: --topics is required.
431
430
 
@@ -434,7 +433,7 @@ Topics JSON format:
434
433
  subscription values: "opt_in" | "opt_out"
435
434
 
436
435
  This operation replaces all topic subscriptions for the specified topics.
437
- Topics not included in the array are left unchanged.`,output:' {"id":"<contact-id>"}',errorCodes:["auth_error","missing_topics","invalid_topics","update_topics_error"],examples:[`resend contacts update-topics e169aa45-1ecf-4183-9955-b1499d5701d3 --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_in"}]'`,`resend contacts update-topics steve.wozniak@gmail.com --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_out"},{"id":"07d84122-7224-4881-9c31-1c048e204602","subscription":"opt_in"}]' --json`]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,xe,i),o=await ne(i),s=t.topics;if(!s){(!O()||i.json)&&g({message:"Missing --topics flag.",code:"missing_topics"},{json:i.json});let d=await ee({message:`Topics JSON (e.g. '[{"id":"topic-uuid","subscription":"opt_in"}]')`,placeholder:'[{"id":"topic-uuid","subscription":"opt_in"}]',validate:l=>l?void 0:"Required"});k(d)&&T("Cancelled."),s=d}let a=yv(s,i),u=await He("Updating topic subscriptions...",()=>o.contacts.topics.update({...Tr(n),topics:a}),"update_topics_error",i);!i.json&&O()?console.log(`Topic subscriptions updated for contact: ${n}`):z(u,{json:i.json})});var Iv=new p("contacts").description("Manage contacts").addHelpText("after",h({context:`Contacts are global entities (not audience-scoped since the 2025 migration).
436
+ Topics not included in the array are left unchanged.`,output:' {"id":"<contact-id>"}',errorCodes:["auth_error","missing_topics","invalid_topics","update_topics_error"],examples:[`resend contacts update-topics e169aa45-1ecf-4183-9955-b1499d5701d3 --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_in"}]'`,`resend contacts update-topics steve.wozniak@gmail.com --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_out"},{"id":"07d84122-7224-4881-9c31-1c048e204602","subscription":"opt_in"}]' --json`]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,fe,n),o=await X(n),s=e.topics;if(!s){(!w()||n.json)&&h({message:"Missing --topics flag.",code:"missing_topics"},{json:n.json});let d=await Y({message:`Topics JSON (e.g. '[{"id":"topic-uuid","subscription":"opt_in"}]')`,placeholder:'[{"id":"topic-uuid","subscription":"opt_in"}]',validate:c=>c?void 0:"Required"});k(d)&&S("Cancelled."),s=d}let a=Na(s,n),l=await Ee("Updating topic subscriptions...",()=>o.contacts.topics.update({...Ht(i),topics:a}),"update_topics_error",n);!n.json&&w()?console.log(`Topic subscriptions updated for contact: ${i}`):B(l,{json:n.json})});var Ja=new p("contacts").description("Manage contacts").addHelpText("after",f({context:`Contacts are global entities (not audience-scoped since the 2025 migration).
438
437
  Each contact is identified by a UUID or email address \u2014 both are accepted in all subcommands.
439
438
 
440
439
  Properties:
@@ -448,7 +447,7 @@ Subscription:
448
447
 
449
448
  Segments:
450
449
  Contacts can belong to multiple segments. Segments determine which contacts receive a broadcast.
451
- Manage membership with "resend contacts add-segment" and "resend contacts remove-segment".`,examples:["resend contacts list","resend contacts create --email steve.wozniak@gmail.com --first-name Steve","resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts get steve.wozniak@gmail.com","resend contacts update acme@example.com --unsubscribed","resend contacts delete e169aa45-1ecf-4183-9955-b1499d5701d3 --yes","resend contacts segments steve.wozniak@gmail.com","resend contacts add-segment steve.wozniak@gmail.com --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts remove-segment steve.wozniak@gmail.com 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts topics steve.wozniak@gmail.com",`resend contacts update-topics steve.wozniak@gmail.com --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_in"}]'`]})).addCommand(Ov).addCommand(wv).addCommand(xv,{isDefault:!0}).addCommand(Pv).addCommand(Sv).addCommand(Av).addCommand(Cv).addCommand(kv).addCommand(Ev).addCommand(Tv);var $v=new p("docs").description("Open the Resend documentation in your browser").addHelpText("after",h({context:"Opens https://resend.com/docs in your default browser.",examples:["resend docs"]})).action(async(e,t)=>{let r=t.optsWithGlobals();await Be(Oe.documentation,r)});Pe();ic();X();oi();Mt();var bc="TimeoutError",zv=(e,t)=>{let r,i=new Promise((n,o)=>{r=setTimeout(()=>{let s=new Error(`Operation timed out after ${t}ms`);s.name=bc,o(s)},t)});return Promise.race([e,i]).finally(()=>{clearTimeout(r)})};var tx=5e3;async function rx(){try{let e=await fetch(hc,{headers:{Accept:"application/vnd.github.v3+json"},signal:AbortSignal.timeout(5e3)});if(!e.ok)return{name:"CLI Version",status:"warn",message:`v${se} (could not check for updates)`};let t=await e.json();if(t.prerelease||t.draft)return{name:"CLI Version",status:"warn",message:`v${se} (could not check for updates)`};let r=t.tag_name?.replace(/^v/,"")??"unknown";return r===se?{name:"CLI Version",status:"pass",message:`v${se} (latest)`}:{name:"CLI Version",status:"warn",message:`v${se} (latest: v${r})`,detail:"Update available"}}catch{return{name:"CLI Version",status:"warn",message:`v${se} (could not check for updates)`}}}async function ix(e){let t=await ir(e);if(!t)return{name:"API Key",status:"fail",message:"No API key found",detail:"Run: resend login"};let r=t.profile?`, profile: ${t.profile}`:"";return{name:"API Key",status:"pass",message:`${rr(t.key)} (source: ${t.source}${r})`}}async function nx(e){let t=await ir(e);if(!t)return{name:"API Validation",status:"fail",message:"Skipped \u2014 no API key"};try{let r=new vr(t.key),{data:i,error:n}=await zv(r.domains.list(),tx);if(n){let u=n;return u.name==="restricted_api_key"?{name:"API Validation",status:"warn",message:"Sending-only API key",detail:Cr}:u.name==="application_error"?{name:"API Validation",status:"warn",message:"Network error. Check your connection and try again"}:{name:"API Validation",status:"fail",message:`API key invalid: ${n.message}`}}let o=i?.data??[],s=o.filter(u=>u.status==="verified"),a=o.filter(u=>u.status!=="verified");return o.length===0?{name:"Domains",status:"warn",message:"No domains configured",detail:"Add a domain at https://resend.com/domains"}:s.length===0?{name:"Domains",status:"warn",message:`${a.length} domain(s) pending verification`,detail:o.map(u=>`${u.name} (${u.status})`).join(", ")}:{name:"Domains",status:"pass",message:`${s.length} verified, ${a.length} pending`,detail:o.map(u=>`${u.name} (${u.status})`).join(", ")}}catch(r){return r instanceof Error&&r.name===bc?{name:"API Validation",status:"warn",message:"Request timed out"}:{name:"API Validation",status:"fail",message:Y(r,"Failed to validate API key")}}}var Jv=new p("doctor").description("Check CLI version, API key, and domain status").addHelpText("after",h({setup:!0,context:`Checks performed:
450
+ Manage membership with "resend contacts add-segment" and "resend contacts remove-segment".`,examples:["resend contacts list","resend contacts create --email steve.wozniak@gmail.com --first-name Steve","resend contacts get e169aa45-1ecf-4183-9955-b1499d5701d3","resend contacts get steve.wozniak@gmail.com","resend contacts update acme@example.com --unsubscribed","resend contacts delete e169aa45-1ecf-4183-9955-b1499d5701d3 --yes","resend contacts segments steve.wozniak@gmail.com","resend contacts add-segment steve.wozniak@gmail.com --segment-id 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts remove-segment steve.wozniak@gmail.com 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend contacts topics steve.wozniak@gmail.com",`resend contacts update-topics steve.wozniak@gmail.com --topics '[{"id":"b6d24b8e-af0b-4c3c-be0c-359bbd97381e","subscription":"opt_in"}]'`]})).addCommand(La).addCommand(Ma).addCommand(qa,{isDefault:!0}).addCommand(Ka).addCommand(Ga).addCommand(Wa).addCommand(Ha).addCommand(Ua).addCommand(Va).addCommand(za);var Ya=new p("docs").description("Open the Resend documentation in your browser").addHelpText("after",f({context:"Opens https://resend.com/docs in your default browser.",examples:["resend docs"]})).action(async(t,e)=>{let r=e.optsWithGlobals();await Se(de.documentation,r)});ye();ti();z();dr();ht();var hi="TimeoutError",rl=(t,e)=>{let r,n=new Promise((i,o)=>{r=setTimeout(()=>{let s=new Error(`Operation timed out after ${e}ms`);s.name=hi,o(s)},e)});return Promise.race([t,n]).finally(()=>{clearTimeout(r)})};var Nm=5e3;async function Hm(){try{let t=await fetch(pi,{headers:{Accept:"application/vnd.github.v3+json"},signal:AbortSignal.timeout(5e3)});if(!t.ok)return{name:"CLI Version",status:"warn",message:`v${te} (could not check for updates)`};let e=await t.json();if(e.prerelease||e.draft)return{name:"CLI Version",status:"warn",message:`v${te} (could not check for updates)`};let r=e.tag_name?.replace(/^v/,"")??"unknown";return r===te?{name:"CLI Version",status:"pass",message:`v${te} (latest)`}:{name:"CLI Version",status:"warn",message:`v${te} (latest: v${r})`,detail:"Update available"}}catch{return{name:"CLI Version",status:"warn",message:`v${te} (could not check for updates)`}}}async function Lm(t){let e=await _t(t);if(!e)return{name:"API Key",status:"fail",message:"No API key found",detail:"Run: resend login"};let r=e.profile?`, profile: ${e.profile}`:"";return{name:"API Key",status:"pass",message:`${wt(e.key)} (source: ${e.source}${r})`}}async function Gm(t){let e=await _t(t);if(!e)return{name:"API Validation",status:"fail",message:"Skipped \u2014 no API key"};try{let r=new Dt(e.key),{data:n,error:i}=await rl(r.domains.list(),Nm);if(i){let l=i;return l.name==="restricted_api_key"?{name:"API Validation",status:"warn",message:"Sending-only API key",detail:Tt}:l.name==="application_error"?{name:"API Validation",status:"warn",message:"Network error. Check your connection and try again"}:{name:"API Validation",status:"fail",message:`API key invalid: ${i.message}`}}let o=n?.data??[],s=o.filter(l=>l.status==="verified"),a=o.filter(l=>l.status!=="verified");return o.length===0?{name:"Domains",status:"warn",message:"No domains configured",detail:"Add a domain at https://resend.com/domains"}:s.length===0?{name:"Domains",status:"warn",message:`${a.length} domain(s) pending verification`,detail:o.map(l=>`${l.name} (${l.status})`).join(", ")}:{name:"Domains",status:"pass",message:`${s.length} verified, ${a.length} pending`,detail:o.map(l=>`${l.name} (${l.status})`).join(", ")}}catch(r){return r instanceof Error&&r.name===hi?{name:"API Validation",status:"warn",message:"Request timed out"}:{name:"API Validation",status:"fail",message:V(r,"Failed to validate API key")}}}var nl=new p("doctor").description("Check CLI version, API key, and domain status").addHelpText("after",f({setup:!0,context:`Checks performed:
452
451
  CLI Version Is the installed version up to date?
453
452
  API Key Is a key present (--api-key, RESEND_API_KEY, or credentials file)?
454
453
  Credential Storage Which backend is storing credentials (secure storage vs plaintext file)?
@@ -461,28 +460,39 @@ Segments:
461
460
  ]
462
461
  }
463
462
  status values: "pass" | "warn" | "fail"
464
- Exit code 1 if any check has status "fail"`,examples:["resend doctor","resend doctor --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=[],n=O()&&!r.json;n&&console.log(`
463
+ Exit code 1 if any check has status "fail"`,examples:["resend doctor","resend doctor --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=[],i=w()&&!r.json;i&&console.log(`
465
464
  Resend Doctor
466
- `);let o=n?fe("Checking CLI version..."):null,s=await rx();i.push(s),s.status==="warn"?o?.warn(s.message):o?.stop(s.message),o=n?fe("Checking API key..."):null;let a=await ix(r.apiKey);i.push(a),a.status==="fail"?o?.fail(a.message):o?.stop(a.message),o=n?fe("Checking credential storage..."):null;let u=await Tt(),d=Fe(),l=u.isSecure,c={name:"Credential Storage",status:l?"pass":"warn",message:l?u.name:"plaintext file",...!l&&process.env.RESEND_CREDENTIAL_STORE!=="file"&&(d?.storage==="secure_storage"||process.env.RESEND_CREDENTIAL_STORE==="secure_storage")?{detail:"Secure backend unavailable despite secure storage preference \u2014 falling back to plaintext"}:{}};i.push(c),c.status==="warn"?o?.warn(c.message):o?.stop(c.message),o=n?fe("Validating API key & domains..."):null;let m=await nx(r.apiKey);i.push(m),m.status==="fail"?o?.fail(m.message):m.status==="warn"?o?.warn(m.message):o?.stop(m.message);let v=i.some(b=>b.status==="fail");!r.json&&O()?console.log(""):z({ok:!v,checks:i},{json:r.json}),v&&process.exit(1)});var Fv=new p("create").description("Create a new domain and receive DNS records to configure").option("--name <domain>","Domain name (e.g. example.com)").addOption(new le("--region <region>","Sending region").choices(["us-east-1","eu-west-1","sa-east-1","ap-northeast-1"])).addOption(new le("--tls <mode>","TLS mode (default: opportunistic)").choices(["opportunistic","enforced"])).option("--tracking-subdomain <subdomain>","Subdomain for click and open tracking (e.g. track)").option("--sending","Enable sending capability (default: enabled)").option("--receiving","Enable receiving capability (default: disabled)").addHelpText("after",h({context:"Non-interactive: --name is required (no prompts when stdin/stdout is not a TTY)",output:" Full domain object with DNS records array to configure in your DNS provider.",errorCodes:["auth_error","missing_name","create_error"],examples:["resend domains create --name example.com","resend domains create --name example.com --region eu-west-1 --tls enforced","resend domains create --name example.com --tracking-subdomain track","resend domains create --name example.com --receiving --json","resend domains create --name example.com --sending --receiving --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.name,{message:"Domain name",placeholder:"example.com"},{message:"Missing --name flag.",code:"missing_name"},r);await te({loading:"Creating domain...",sdkCall:n=>n.domains.create({name:i,...e.region&&{region:e.region},...e.tls&&{tls:e.tls},...e.trackingSubdomain&&{trackingSubdomain:e.trackingSubdomain},...(e.sending||e.receiving)&&{capabilities:{...e.sending&&{sending:"enabled"},...e.receiving&&{receiving:"enabled"}}}}),onInteractive:n=>{console.log(`Domain created: ${n.name} (id: ${n.id})`),console.log(`
467
- DNS Records to configure:`),console.log(qa(n.records,n.name)),console.log(`
468
- Run \`resend domains verify ${n.id}\` after configuring DNS.`)}},r)});var Hv=new p("delete").alias("rm").description("Delete a domain").argument("[id]","Domain ID").option("--yes","Skip confirmation prompt").addHelpText("after",h({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"domain","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend domains delete 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --yes","resend domains delete 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,dt,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete domain "${n.label}"?
469
- ID: ${n.id}
470
- This cannot be undone.`,loading:"Deleting domain...",object:"domain",successMsg:"Domain deleted",sdkCall:o=>o.domains.remove(n.id)},i)});var Bv=new p("get").description("Retrieve a domain with its DNS records and current verification status").argument("[id]","Domain ID").addHelpText("after",h({output:` Full domain object including records array and current status.
471
-
472
- Domain status values: not_started | pending | verified | failed | partially_verified | partially_failed`,errorCodes:["auth_error","fetch_error"],examples:["resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,dt,i);await W({loading:"Fetching domain...",sdkCall:o=>o.domains.get(n),onInteractive:o=>{console.log(`${o.name} \u2014 ${l_(o.status)}`),console.log(`ID: ${o.id}`),console.log(`Region: ${o.region}`),console.log(`Created: ${o.created_at}`),o.open_tracking!==void 0&&console.log(`Open tracking: ${o.open_tracking?"enabled":"disabled"}`),o.click_tracking!==void 0&&console.log(`Click tracking: ${o.click_tracking?"enabled":"disabled"}`),o.tracking_subdomain&&console.log(`Tracking subdomain: ${o.tracking_subdomain}`),o.records.length>0&&(console.log(`
473
- DNS Records:`),console.log(qa(o.records,o.name)))}},i)});var Lv=new p("list").alias("ls").description("List all domains").option("--limit <n>","Maximum number of domains to return (1-100)","10").option("--after <cursor>","Return domains after this cursor (next page)").option("--before <cursor>","Return domains before this cursor (previous page)").addHelpText("after",h({output:` {"object":"list","data":[...],"has_more":true}
474
- The list response does not include DNS records \u2014 use "resend domains get <id>" for that.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend domains list","resend domains list --limit 25 --json","resend domains list --after <cursor> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching domains...",sdkCall:o=>o.domains.list(n),onInteractive:o=>{console.log(u_(o.data)),G(o,"domains list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Nv=new p("update").description("Update domain settings: TLS mode, tracking, and tracking subdomain").argument("[id]","Domain ID").addOption(new le("--tls <mode>","TLS mode").choices(["opportunistic","enforced"])).option("--open-tracking","Enable open tracking").option("--no-open-tracking","Disable open tracking").option("--click-tracking","Enable click tracking").option("--no-click-tracking","Disable click tracking").option("--tracking-subdomain <subdomain>","Subdomain for click and open tracking (e.g. track)").addHelpText("after",h({output:' {"object":"domain","id":"<id>"}',errorCodes:["auth_error","no_changes","update_error"],examples:["resend domains update <id> --tls enforced","resend domains update <id> --open-tracking --click-tracking","resend domains update <id> --tracking-subdomain track","resend domains update <id> --no-open-tracking --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,dt,i),{tls:o,openTracking:s,clickTracking:a,trackingSubdomain:u}=t;!o&&s===void 0&&a===void 0&&!u&&g({message:"Provide at least one option to update: --tls, --open-tracking, --click-tracking, or --tracking-subdomain.",code:"no_changes"},{json:i.json});let d={id:n};o&&(d.tls=o),s!==void 0&&(d.openTracking=s),a!==void 0&&(d.clickTracking=a),u&&(d.trackingSubdomain=u),await J({loading:"Updating domain...",sdkCall:l=>l.domains.update(d),errorCode:"update_error",successMsg:`Domain updated: ${n}`},i)});var Gv=new p("verify").description("Trigger async DNS verification for a domain").argument("[id]","Domain ID").addHelpText("after",h({context:`Verification is async \u2014 the domain enters "pending" status while DNS records are checked.
475
- Poll the status with: resend domains get <id>`,output:' {"object":"domain","id":"<id>"}',errorCodes:["auth_error","verify_error"],examples:["resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,dt,i);await J({loading:"Verifying domain...",sdkCall:o=>o.domains.verify(n),errorCode:"verify_error",successMsg:`Domain verification started. Check status with resend domains get ${n}.`},i)});var Uv=new p("domains").description("Manage verified sending and receiving domains").addHelpText("after",h({context:`Domain lifecycle:
465
+ `);let o=i?ae("Checking CLI version..."):null,s=await Hm();n.push(s),s.status==="warn"?o?.warn(s.message):o?.stop(s.message),o=i?ae("Checking API key..."):null;let a=await Lm(r.apiKey);n.push(a),a.status==="fail"?o?.fail(a.message):o?.stop(a.message),o=i?ae("Checking credential storage..."):null;let l=await at(),d=$e(),c=l.isSecure,u={name:"Credential Storage",status:c?"pass":"warn",message:c?l.name:"plaintext file",...!c&&process.env.RESEND_CREDENTIAL_STORE!=="file"&&(d?.storage==="secure_storage"||process.env.RESEND_CREDENTIAL_STORE==="secure_storage")?{detail:"Secure backend unavailable despite secure storage preference \u2014 falling back to plaintext"}:{}};n.push(u),u.status==="warn"?o?.warn(u.message):o?.stop(u.message),o=i?ae("Validating API key & domains..."):null;let m=await Gm(r.apiKey);n.push(m),m.status==="fail"?o?.fail(m.message):m.status==="warn"?o?.warn(m.message):o?.stop(m.message);let y=n.some(g=>g.status==="fail");!r.json&&w()?console.log(""):B({ok:!y,checks:n},{json:r.json}),y&&process.exit(1)});var il=new p("create").description("Start a claim for a domain another Resend account has verified").option("--name <domain>","Domain name to claim (e.g. example.com)").addOption(new ee("--region <region>","Sending region").choices(["us-east-1","eu-west-1","sa-east-1","ap-northeast-1"])).option("--tracking-subdomain <subdomain>","Subdomain for click and open tracking (e.g. track)").addHelpText("after",f({context:"Non-interactive: --name is required (no prompts when stdin/stdout is not a TTY)",output:" domain_claim object with the placeholder domain_id and the TXT record to add to DNS.",errorCodes:["auth_error","missing_name","create_error"],examples:["resend domains claim create --name example.com","resend domains claim create --name example.com --region eu-west-1","resend domains claim create --name example.com --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.name,{message:"Domain name to claim",placeholder:"example.com"},{message:"Missing --name flag.",code:"missing_name"},r);await J({loading:"Starting domain claim...",sdkCall:i=>i.domains.claims.create({name:n,...t.region&&{region:t.region},...t.trackingSubdomain!==void 0&&{trackingSubdomain:t.trackingSubdomain}}),onInteractive:i=>{console.log(`Claim started for ${i.name} (claim id: ${i.id}, domain id: ${i.domain_id})`),console.log(`Status: ${i.status}`),console.log(`
466
+ Add this TXT record at your DNS provider:`),console.log(` ${i.record.name} TXT ${i.record.value}`),console.log(`
467
+ Then run \`resend domains claim verify ${i.domain_id}\`.`)}},r)});var ol=new p("get").description("Retrieve the latest claim for a domain").argument("[id]","Domain ID (the placeholder domain created by the claim)").addHelpText("after",f({output:` domain_claim object: status, domain_id, the TXT record, blocked_reason, expires_at.
468
+
469
+ Claim status values: pending | verified | completed | blocked | expired | superseded | canceled | failed`,errorCodes:["auth_error","fetch_error","not_found"],examples:["resend domains claim get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains claim get 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,De,n);await H({loading:"Fetching domain claim...",sdkCall:o=>o.domains.claims.get(i),onInteractive:o=>{console.log(`${o.name} \u2014 ${o.status}`),console.log(`Claim ID: ${o.id}`),console.log(`Domain ID: ${o.domain_id}`),o.blocked_reason&&console.log(`Blocked: ${o.blocked_reason}`),console.log(`Expires: ${o.expires_at}`),console.log(`
470
+ TXT record:`),console.log(` ${o.record.name} TXT ${o.record.value}`)}},n)});var sl=new p("verify").description("Trigger DNS verification and transfer for a domain claim").argument("[id]","Domain ID (the placeholder domain created by the claim)").addHelpText("after",f({output:" domain_claim object (status stays pending while verification runs async).",errorCodes:["auth_error","verify_error","not_found"],examples:["resend domains claim verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,De,n);await R({loading:"Verifying domain claim...",sdkCall:o=>o.domains.claims.verify(i),errorCode:"verify_error",successMsg:`Domain claim verification started. Check status with resend domains claim get ${i}.`},n)});var al=new p("claim").description("Claim a domain already verified by another Resend account").addHelpText("after",f({context:`Claim lifecycle:
471
+ 1. resend domains claim create --name example.com (returns the TXT record)
472
+ 2. Configure the TXT record at your DNS provider
473
+ 3. resend domains claim verify <domain-id> (trigger verification + transfer)
474
+ 4. resend domains claim get <domain-id> (poll until "completed")
475
+ 5. The transferred domain has NEW DKIM records \u2014 update DNS, then run:
476
+ resend domains verify <domain-id>`,examples:["resend domains claim create --name example.com","resend domains claim get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains claim verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0"]})).addCommand(il).addCommand(ol).addCommand(sl);var ll=new p("create").description("Create a new domain and receive DNS records to configure").option("--name <domain>","Domain name (e.g. example.com)").addOption(new ee("--region <region>","Sending region").choices(["us-east-1","eu-west-1","sa-east-1","ap-northeast-1"])).addOption(new ee("--tls <mode>","TLS mode (default: opportunistic)").choices(["opportunistic","enforced"])).option("--tracking-subdomain <subdomain>","Subdomain for click and open tracking (e.g. track)").option("--sending","Enable sending capability (default: enabled)").option("--receiving","Enable receiving capability (default: disabled)").addHelpText("after",f({context:"Non-interactive: --name is required (no prompts when stdin/stdout is not a TTY)",output:" Full domain object with DNS records array to configure in your DNS provider.",errorCodes:["auth_error","missing_name","create_error"],examples:["resend domains create --name example.com","resend domains create --name example.com --region eu-west-1 --tls enforced","resend domains create --name example.com --tracking-subdomain track","resend domains create --name example.com --receiving --json","resend domains create --name example.com --sending --receiving --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.name,{message:"Domain name",placeholder:"example.com"},{message:"Missing --name flag.",code:"missing_name"},r);await J({loading:"Creating domain...",sdkCall:i=>i.domains.create({name:n,...t.region&&{region:t.region},...t.tls&&{tls:t.tls},...t.trackingSubdomain&&{trackingSubdomain:t.trackingSubdomain},...(t.sending||t.receiving)&&{capabilities:{...t.sending&&{sending:"enabled"},...t.receiving&&{receiving:"enabled"}}}}),onInteractive:i=>{console.log(`Domain created: ${i.name} (id: ${i.id})`),console.log(`
477
+ DNS Records to configure:`),console.log(Ur(i.records,i.name)),console.log(`
478
+ Run \`resend domains verify ${i.id}\` after configuring DNS.`)}},r)});var cl=new p("delete").alias("rm").description("Delete a domain").argument("[id]","Domain ID").option("--yes","Skip confirmation prompt").addHelpText("after",f({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"domain","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend domains delete 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --yes","resend domains delete 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,De,n);await re(i.id,!!e.yes,{confirmMessage:`Delete domain "${i.label}"?
479
+ ID: ${i.id}
480
+ This cannot be undone.`,loading:"Deleting domain...",object:"domain",successMsg:"Domain deleted",sdkCall:o=>o.domains.remove(i.id)},n)});var ul=new p("get").description("Retrieve a domain with its DNS records and current verification status").argument("[id]","Domain ID").addHelpText("after",f({output:` Full domain object including records array and current status.
481
+
482
+ Domain status values: not_started | pending | verified | failed | partially_verified | partially_failed`,errorCodes:["auth_error","fetch_error"],examples:["resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,De,n);await H({loading:"Fetching domain...",sdkCall:o=>o.domains.get(i),onInteractive:o=>{console.log(`${o.name} \u2014 ${Es(o.status)}`),console.log(`ID: ${o.id}`),console.log(`Region: ${o.region}`),console.log(`Created: ${o.created_at}`),o.open_tracking!==void 0&&console.log(`Open tracking: ${o.open_tracking?"enabled":"disabled"}`),o.click_tracking!==void 0&&console.log(`Click tracking: ${o.click_tracking?"enabled":"disabled"}`),o.tracking_subdomain&&console.log(`Tracking subdomain: ${o.tracking_subdomain}`),o.records.length>0&&(console.log(`
483
+ DNS Records:`),console.log(Ur(o.records,o.name)))}},n)});var dl=new p("list").alias("ls").description("List all domains").option("--limit <n>","Maximum number of domains to return (1-100)","10").option("--after <cursor>","Return domains after this cursor (next page)").option("--before <cursor>","Return domains before this cursor (previous page)").addHelpText("after",f({output:` {"object":"list","data":[...],"has_more":true}
484
+ The list response does not include DNS records \u2014 use "resend domains get <id>" for that.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend domains list","resend domains list --limit 25 --json","resend domains list --after <cursor> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching domains...",sdkCall:o=>o.domains.list(i),onInteractive:o=>{console.log($s(o.data)),M(o,"domains list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var ml=new p("update").description("Update domain settings: TLS mode, tracking, and tracking subdomain").argument("[id]","Domain ID").addOption(new ee("--tls <mode>","TLS mode").choices(["opportunistic","enforced"])).option("--open-tracking","Enable open tracking").option("--no-open-tracking","Disable open tracking").option("--click-tracking","Enable click tracking").option("--no-click-tracking","Disable click tracking").option("--tracking-subdomain <subdomain>","Subdomain for click and open tracking (e.g. track)").addHelpText("after",f({output:' {"object":"domain","id":"<id>"}',errorCodes:["auth_error","no_changes","update_error"],examples:["resend domains update <id> --tls enforced","resend domains update <id> --open-tracking --click-tracking","resend domains update <id> --tracking-subdomain track","resend domains update <id> --no-open-tracking --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,De,n),{tls:o,openTracking:s,clickTracking:a,trackingSubdomain:l}=e;!o&&s===void 0&&a===void 0&&!l&&h({message:"Provide at least one option to update: --tls, --open-tracking, --click-tracking, or --tracking-subdomain.",code:"no_changes"},{json:n.json});let d={id:i};o&&(d.tls=o),s!==void 0&&(d.openTracking=s),a!==void 0&&(d.clickTracking=a),l&&(d.trackingSubdomain=l),await R({loading:"Updating domain...",sdkCall:c=>c.domains.update(d),errorCode:"update_error",successMsg:`Domain updated: ${i}`},n)});var pl=new p("verify").description("Trigger async DNS verification for a domain").argument("[id]","Domain ID").addHelpText("after",f({context:`Verification is async \u2014 the domain enters "pending" status while DNS records are checked.
485
+ Poll the status with: resend domains get <id>`,output:' {"object":"domain","id":"<id>"}',errorCodes:["auth_error","verify_error"],examples:["resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,De,n);await R({loading:"Verifying domain...",sdkCall:o=>o.domains.verify(i),errorCode:"verify_error",successMsg:`Domain verification started. Check status with resend domains get ${i}.`},n)});var fl=new p("domains").description("Manage verified sending and receiving domains").addHelpText("after",f({context:`Domain lifecycle:
476
486
  1. resend domains create --name example.com (get DNS records)
477
487
  2. Configure DNS records at your DNS provider
478
488
  3. resend domains verify <id> (trigger verification)
479
- 4. resend domains get <id> (poll until "verified")`,examples:["resend domains list","resend domains create --name example.com --region us-east-1","resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains update <id> --tls enforced --open-tracking","resend domains delete <id> --yes"]})).addCommand(Fv).addCommand(Gv).addCommand(Bv).addCommand(Lv,{isDefault:!0}).addCommand(Nv).addCommand(Hv);var pt={resource:"email",resourcePlural:"emails",fetchItems:(e,{limit:t,after:r})=>e.emails.list({limit:t,...r&&{after:r}}),display:e=>({label:e.subject||"(no subject)",hint:e.id})};function Wv(e){return{resource:"attachment",resourcePlural:"attachments",fetchItems:(t,{limit:r,after:i})=>t.emails.attachments.list({emailId:e,limit:r,...i&&{after:i}}),display:t=>({label:t.filename??"(unnamed)",hint:t.id})}}function Va(e){let t=e.map(r=>[r.filename??"(unnamed)",r.content_type,String(r.size),r.id]);return F(["Filename","Content-Type","Size (bytes)","ID"],t,"(no attachments)")}var Vv=new p("attachment").description("Retrieve a single attachment from a sent (outbound) email").argument("[emailId]","Email UUID").argument("[attachmentId]","Attachment UUID").addHelpText("after",h({context:`The download_url is a signed URL that expires in ~1 hour. Download the file directly:
480
- resend emails attachment <emailId> <attachmentId> --json | jq -r .download_url | xargs curl -O`,output:' {"object":"attachment","id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<signed-url>","expires_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend emails attachment <email-id> <attachment-id>","resend emails attachment <email-id> <attachment-id> --json"]})).action(async(e,t,r,i)=>{let n=i.optsWithGlobals(),o=await C(e,pt,n),s=await C(t,Wv(o),n);await W({loading:"Fetching attachment...",sdkCall:a=>a.emails.attachments.get({emailId:o,id:s}),onInteractive:a=>{console.log(`${a.filename??"(unnamed)"}`),console.log(`ID: ${a.id}`),console.log(`Content-Type: ${a.content_type}`),console.log(`Size: ${a.size} bytes`),console.log(`Disposition: ${a.content_disposition}`),console.log(`Download URL: ${a.download_url}`),console.log(`Expires: ${a.expires_at}`)}},n)});var Kv=new p("attachments").description("List attachments on a sent (outbound) email").argument("[emailId]","Email UUID").option("--limit <n>","Maximum number of attachments to return (1-100)","10").option("--after <cursor>","Return attachments after this cursor (next page)").option("--before <cursor>","Return attachments before this cursor (previous page)").addHelpText("after",h({context:`Each attachment has a download_url (signed, expires ~1 hour).
489
+ 4. resend domains get <id> (poll until "verified")`,examples:["resend domains list","resend domains create --name example.com --region us-east-1","resend domains verify 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains get 4dd369bc-aa82-4ff3-97de-514ae3000ee0","resend domains update <id> --tls enforced --open-tracking","resend domains delete <id> --yes","resend domains claim create --name example.com"]})).addCommand(ll).addCommand(pl).addCommand(ul).addCommand(dl,{isDefault:!0}).addCommand(ml).addCommand(cl).addCommand(al);var Ke={resource:"email",resourcePlural:"emails",fetchItems:(t,{limit:e,after:r})=>t.emails.list({limit:e,...r&&{after:r}}),display:t=>({label:t.subject||"(no subject)",hint:t.id})};function hl(t){return{resource:"attachment",resourcePlural:"attachments",fetchItems:(e,{limit:r,after:n})=>e.emails.attachments.list({emailId:t,limit:r,...n&&{after:n}}),display:e=>({label:e.filename??"(unnamed)",hint:e.id})}}function nn(t){let e=t.map(r=>[r.filename??"(unnamed)",r.content_type,String(r.size),r.id]);return N(["Filename","Content-Type","Size (bytes)","ID"],e,"(no attachments)")}var gl=new p("attachment").description("Retrieve a single attachment from a sent (outbound) email").argument("[emailId]","Email UUID").argument("[attachmentId]","Attachment UUID").addHelpText("after",f({context:`The download_url is a signed URL that expires in ~1 hour. Download the file directly:
490
+ resend emails attachment <emailId> <attachmentId> --json | jq -r .download_url | xargs curl -O`,output:' {"object":"attachment","id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<signed-url>","expires_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend emails attachment <email-id> <attachment-id>","resend emails attachment <email-id> <attachment-id> --json"]})).action(async(t,e,r,n)=>{let i=n.optsWithGlobals(),o=await C(t,Ke,i),s=await C(e,hl(o),i);await H({loading:"Fetching attachment...",sdkCall:a=>a.emails.attachments.get({emailId:o,id:s}),onInteractive:a=>{console.log(`${a.filename??"(unnamed)"}`),console.log(`ID: ${a.id}`),console.log(`Content-Type: ${a.content_type}`),console.log(`Size: ${a.size} bytes`),console.log(`Disposition: ${a.content_disposition}`),console.log(`Download URL: ${a.download_url}`),console.log(`Expires: ${a.expires_at}`)}},i)});var bl=new p("attachments").description("List attachments on a sent (outbound) email").argument("[emailId]","Email UUID").option("--limit <n>","Maximum number of attachments to return (1-100)","10").option("--after <cursor>","Return attachments after this cursor (next page)").option("--before <cursor>","Return attachments before this cursor (previous page)").addHelpText("after",f({context:`Each attachment has a download_url (signed, expires ~1 hour).
481
491
  Use the attachment sub-command to retrieve a single attachment with its download URL:
482
492
  resend emails attachment <emailId> <attachmentId>
483
493
 
484
494
  content_disposition: "inline" means the attachment is embedded in the HTML body (e.g. an image).
485
- content_disposition: "attachment" means it is a standalone file download.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<url>","expires_at":"<iso-date>"}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails attachments <email-id>","resend emails attachments <email-id> --json","resend emails attachments <email-id> --limit 25 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,pt,i),o=L(t.limit,i),s=N(o,t.after,t.before,i);await D({loading:"Fetching attachments...",sdkCall:a=>a.emails.attachments.list({emailId:n,...s}),onInteractive:a=>{console.log(Va(a.data)),G(a,`emails attachments ${n}`,{limit:o,before:t.before,apiKey:i.apiKey,profile:i.profile})}},i)});X();var Yv=new p("batch").description("Send up to 100 emails in a single API request from a JSON file").option("--file <path>",'Path to a JSON file containing an array of email objects (use "-" for stdin; required in non-interactive mode)').option("--react-email <path>","Path to a React Email template (.tsx) \u2014 rendered HTML is set on every email in the batch").option("--idempotency-key <key>","Deduplicate this batch request using this key").addOption(new le("--batch-validation <mode>","Validation mode: strict (default, fail all on error) or permissive (partial success)").choices(["strict","permissive"])).addHelpText("after",h({context:`Non-interactive: --file
495
+ content_disposition: "attachment" means it is a standalone file download.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<url>","expires_at":"<iso-date>"}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails attachments <email-id>","resend emails attachments <email-id> --json","resend emails attachments <email-id> --limit 25 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ke,n),o=L(e.limit,n),s=G(o,e.after,e.before,n);await P({loading:"Fetching attachments...",sdkCall:a=>a.emails.attachments.list({emailId:i,...s}),onInteractive:a=>{console.log(nn(a.data)),M(a,`emails attachments ${i}`,{limit:o,before:e.before,apiKey:n.apiKey,profile:n.profile})}},n)});z();var yl=new p("batch").description("Send up to 100 emails in a single API request from a JSON file").option("--file <path>",'Path to a JSON file containing an array of email objects (use "-" for stdin; required in non-interactive mode)').option("--react-email <path>","Path to a React Email template (.tsx) \u2014 rendered HTML is set on every email in the batch").option("--idempotency-key <key>","Deduplicate this batch request using this key").addOption(new ee("--batch-validation <mode>","Validation mode: strict (default, fail all on error) or permissive (partial success)").choices(["strict","permissive"])).addHelpText("after",f({context:`Non-interactive: --file
486
496
  Limit: 100 emails per request (API hard limit \u2014 warned if exceeded)
487
497
  Unsupported per-email fields: attachments, scheduled_at
488
498
 
@@ -490,53 +500,53 @@ File format (--file path):
490
500
  [
491
501
  {"from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hello","text":"Hi"},
492
502
  {"from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hello","html":"<b>Hi</b>"}
493
- ]`,output:' [{"id":"<email-id>"},{"id":"<email-id>"}]',errorCodes:["auth_error","missing_file","file_read_error","stdin_read_error","invalid_json","invalid_format","react_email_build_error","react_email_render_error","batch_error"],examples:["resend emails batch --file ./emails.json","resend emails batch --file ./emails.json --batch-validation permissive",`echo '[{"from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hi","text":"Hello"}]' | resend emails batch --file -`]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await ne(r,{permission:"sending_access"}),n=await K(e.file,{message:"Path to JSON file",placeholder:"./emails.json"},{message:"Missing --file flag. Provide a JSON file with an array of email objects.",code:"missing_file"},r),o=ge(n,r),s;try{s=JSON.parse(o)}catch{g({message:"File content is not valid JSON.",code:"invalid_json"},{json:r.json})}Array.isArray(s)||g({message:"File content must be a JSON array of email objects.",code:"invalid_format"},{json:r.json});let a=s;if(a.length>100&&console.warn(`Warning: ${a.length} emails exceeds the 100-email limit. The API may reject this request.`),e.reactEmail){let c=await it(e.reactEmail,r);for(let m of a)m.html=c}for(let c=0;c<a.length;c++){let m=a[c];(m===null||typeof m!="object"||Array.isArray(m))&&g({message:`Email at index ${c} must be a JSON object.`,code:"invalid_format"},{json:r.json}),"attachments"in m&&g({message:`Email at index ${c} contains "attachments", which is not supported in batch sends.`,code:"batch_error"},{json:r.json}),"scheduled_at"in m&&g({message:`Email at index ${c} contains "scheduled_at", which is not supported in batch sends.`,code:"batch_error"},{json:r.json})}let u=await He("Sending batch...",()=>{let c={...e.idempotencyKey&&{idempotencyKey:e.idempotencyKey},...e.batchValidation&&{batchValidation:e.batchValidation}};return i.batch.send(a,Object.keys(c).length>0?c:void 0)},"batch_error",r),d=u.data,l=u.errors;if(!r.json&&O()){console.log(`Sent ${d.length} email${d.length===1?"":"s"}`);for(let c of d)console.log(` ${c.id}`);if(l&&l.length>0){console.warn(`
494
- ${l.length} email${l.length===1?"":"s"} failed:`);for(let c of l)console.warn(` [${c.index}] ${c.message}`)}}else z(l&&l.length>0?{data:d,errors:l}:d,{json:r.json})});var Qv=new p("cancel").description("Cancel a scheduled email").argument("[id]","Email ID").addHelpText("after",h({output:' {"object":"email","id":"<email-id>"}',errorCodes:["auth_error","cancel_error"],examples:["resend emails cancel <email-id>","resend emails cancel <email-id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,pt,i);await J({loading:"Cancelling email...",sdkCall:o=>o.emails.cancel(n),errorCode:"cancel_error",successMsg:`Email cancelled: ${n}`},i)});var Zv=new p("get").description("Retrieve a sent email by ID").argument("[id]","Email ID").addHelpText("after",h({output:' {"object":"email","id":"<uuid>","from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hello","html":"<p>Hi</p>","text":"Hi","last_event":"delivered","created_at":"<iso-date>","scheduled_at":null,"bcc":null,"cc":null,"reply_to":null}',errorCodes:["auth_error","fetch_error"],examples:["resend emails get <email-id>","resend emails get <email-id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,pt,i);await W({loading:"Fetching email...",sdkCall:o=>o.emails.get(n),onInteractive:o=>{console.log(`From: ${o.from}`),console.log(`To: ${o.to.join(", ")}`),console.log(`Subject: ${o.subject}`),console.log(`Status: ${o.last_event}`),console.log(`Date: ${o.created_at}`),o.scheduled_at&&console.log(`Scheduled: ${o.scheduled_at}`)}},i)});function ox(e){let t=e.map(r=>{let i=r.to.join(", "),n=i.length>40?`${i.slice(0,37)}...`:i,o=r.subject.length>50?`${r.subject.slice(0,47)}...`:r.subject;return[r.from,n,o,r.last_event??"\u2014",r.created_at,r.id]});return F(["From","To","Subject","Status","Created","ID"],t,"(no sent emails)")}var Xv=new p("list").alias("ls").description('List sent emails \u2014 returns summary (use "get <id>" for full details)').option("--limit <n>","Maximum number of emails to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",h({context:"Lists emails sent by your team. For emails received by your domain, use: resend emails receiving list",output:' {"object":"list","has_more":false,"data":[{"id":"...","to":["..."],"from":"...","subject":"...","created_at":"...","last_event":"delivered|opened|...","scheduled_at":null}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails list","resend emails list --limit 5","resend emails list --after <email-id> --limit 10","resend emails list --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching sent emails...",sdkCall:o=>o.emails.list(n),onInteractive:o=>{console.log(ox(o.data)),G(o,"emails list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Dt={resource:"received email",resourcePlural:"received emails",fetchItems:(e,{limit:t,after:r})=>e.emails.receiving.list({limit:t,...r&&{after:r}}),display:e=>({label:e.subject||"(no subject)",hint:e.id})};function ey(e){return{resource:"attachment",resourcePlural:"attachments",fetchItems:(t,{limit:r,after:i})=>t.emails.receiving.attachments.list({emailId:e,limit:r,...i&&{after:i}}),display:t=>({label:t.filename??"(unnamed)",hint:t.id})}}function ty(e){let t=e.map(r=>{let i=r.to.join(", "),n=i.length>40?`${i.slice(0,37)}...`:i,o=r.subject.length>50?`${r.subject.slice(0,47)}...`:r.subject;return[r.from,n,o,r.created_at,r.id]});return F(["From","To","Subject","Created At","ID"],t,"(no received emails)")}var ry=new p("attachment").description("Retrieve a single attachment from a received (inbound) email").argument("[emailId]","Received email UUID").argument("[attachmentId]","Attachment UUID").addHelpText("after",h({context:`The download_url is a signed URL that expires in ~1 hour. Download the file directly:
495
- resend emails receiving attachment <emailId> <attachmentId> --json | jq -r .download_url | xargs curl -O`,output:' {"object":"attachment","id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<signed-url>","expires_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend emails receiving attachment <email-id> <attachment-id>","resend emails receiving attachment <email-id> <attachment-id> --json"]})).action(async(e,t,r,i)=>{let n=i.optsWithGlobals(),o=await C(e,Dt,n),s=await C(t,ey(o),n);await W({loading:"Fetching attachment...",sdkCall:a=>a.emails.receiving.attachments.get({emailId:o,id:s}),onInteractive:a=>{console.log(`${a.filename??"(unnamed)"}`),console.log(`ID: ${a.id}`),console.log(`Content-Type: ${a.content_type}`),console.log(`Size: ${a.size} bytes`),console.log(`Disposition: ${a.content_disposition}`),console.log(`Download URL: ${a.download_url}`),console.log(`Expires: ${a.expires_at}`)}},n)});var iy=new p("attachments").description("List attachments on a received (inbound) email").argument("[emailId]","Received email UUID").option("--limit <n>","Maximum number of attachments to return (1-100)","10").option("--after <cursor>","Return attachments after this cursor (next page)").option("--before <cursor>","Return attachments before this cursor (previous page)").addHelpText("after",h({context:`Each attachment has a download_url (signed, expires ~1 hour).
503
+ ]`,output:' [{"id":"<email-id>"},{"id":"<email-id>"}]',errorCodes:["auth_error","missing_file","file_read_error","stdin_read_error","invalid_json","invalid_format","react_email_build_error","react_email_render_error","batch_error"],examples:["resend emails batch --file ./emails.json","resend emails batch --file ./emails.json --batch-validation permissive",`echo '[{"from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hi","text":"Hello"}]' | resend emails batch --file -`]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await X(r,{permission:"sending_access"}),i=await q(t.file,{message:"Path to JSON file",placeholder:"./emails.json"},{message:"Missing --file flag. Provide a JSON file with an array of email objects.",code:"missing_file"},r),o=ce(i,r),s;try{s=JSON.parse(o)}catch{h({message:"File content is not valid JSON.",code:"invalid_json"},{json:r.json})}Array.isArray(s)||h({message:"File content must be a JSON array of email objects.",code:"invalid_format"},{json:r.json});let a=s;if(a.length>100&&console.warn(`Warning: ${a.length} emails exceeds the 100-email limit. The API may reject this request.`),t.reactEmail){let u=await Ne(t.reactEmail,r);for(let m of a)m.html=u}for(let u=0;u<a.length;u++){let m=a[u];(m===null||typeof m!="object"||Array.isArray(m))&&h({message:`Email at index ${u} must be a JSON object.`,code:"invalid_format"},{json:r.json}),"attachments"in m&&h({message:`Email at index ${u} contains "attachments", which is not supported in batch sends.`,code:"batch_error"},{json:r.json}),"scheduled_at"in m&&h({message:`Email at index ${u} contains "scheduled_at", which is not supported in batch sends.`,code:"batch_error"},{json:r.json})}let l=await Ee("Sending batch...",()=>{let u={...t.idempotencyKey&&{idempotencyKey:t.idempotencyKey},...t.batchValidation&&{batchValidation:t.batchValidation}};return n.batch.send(a,Object.keys(u).length>0?u:void 0)},"batch_error",r),d=l.data,c=l.errors;if(!r.json&&w()){console.log(`Sent ${d.length} email${d.length===1?"":"s"}`);for(let u of d)console.log(` ${u.id}`);if(c&&c.length>0){console.warn(`
504
+ ${c.length} email${c.length===1?"":"s"} failed:`);for(let u of c)console.warn(` [${u.index}] ${u.message}`)}}else B(c&&c.length>0?{data:d,errors:c}:d,{json:r.json})});var vl=new p("cancel").description("Cancel a scheduled email").argument("[id]","Email ID").addHelpText("after",f({output:' {"object":"email","id":"<email-id>"}',errorCodes:["auth_error","cancel_error"],examples:["resend emails cancel <email-id>","resend emails cancel <email-id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ke,n);await R({loading:"Cancelling email...",sdkCall:o=>o.emails.cancel(i),errorCode:"cancel_error",successMsg:`Email cancelled: ${i}`},n)});var Cl=new p("get").description("Retrieve a sent email by ID").argument("[id]","Email ID").addHelpText("after",f({output:' {"object":"email","id":"<uuid>","from":"onboarding@resend.com","to":["delivered@resend.com"],"subject":"Hello","html":"<p>Hi</p>","text":"Hi","last_event":"delivered","created_at":"<iso-date>","scheduled_at":null,"bcc":null,"cc":null,"reply_to":null}',errorCodes:["auth_error","fetch_error"],examples:["resend emails get <email-id>","resend emails get <email-id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ke,n);await H({loading:"Fetching email...",sdkCall:o=>o.emails.get(i),onInteractive:o=>{console.log(`From: ${o.from}`),console.log(`To: ${o.to.join(", ")}`),console.log(`Subject: ${o.subject}`),console.log(`Status: ${o.last_event}`),console.log(`Date: ${o.created_at}`),o.scheduled_at&&console.log(`Scheduled: ${o.scheduled_at}`)}},n)});function Mm(t){let e=t.map(r=>{let n=r.to.join(", "),i=n.length>40?`${n.slice(0,37)}...`:n,o=r.subject.length>50?`${r.subject.slice(0,47)}...`:r.subject;return[r.from,i,o,r.last_event??"\u2014",r.created_at,r.id]});return N(["From","To","Subject","Status","Created","ID"],e,"(no sent emails)")}var wl=new p("list").alias("ls").description('List sent emails \u2014 returns summary (use "get <id>" for full details)').option("--limit <n>","Maximum number of emails to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",f({context:"Lists emails sent by your team. For emails received by your domain, use: resend emails receiving list",output:' {"object":"list","has_more":false,"data":[{"id":"...","to":["..."],"from":"...","subject":"...","created_at":"...","last_event":"delivered|opened|...","scheduled_at":null}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails list","resend emails list --limit 5","resend emails list --after <email-id> --limit 10","resend emails list --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching sent emails...",sdkCall:o=>o.emails.list(i),onInteractive:o=>{console.log(Mm(o.data)),M(o,"emails list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var dt={resource:"received email",resourcePlural:"received emails",fetchItems:(t,{limit:e,after:r})=>t.emails.receiving.list({limit:e,...r&&{after:r}}),display:t=>({label:t.subject||"(no subject)",hint:t.id})};function _l(t){return{resource:"attachment",resourcePlural:"attachments",fetchItems:(e,{limit:r,after:n})=>e.emails.receiving.attachments.list({emailId:t,limit:r,...n&&{after:n}}),display:e=>({label:e.filename??"(unnamed)",hint:e.id})}}function xl(t){let e=t.map(r=>{let n=r.to.join(", "),i=n.length>40?`${n.slice(0,37)}...`:n,o=r.subject.length>50?`${r.subject.slice(0,47)}...`:r.subject;return[r.from,i,o,r.created_at,r.id]});return N(["From","To","Subject","Created At","ID"],e,"(no received emails)")}var Al=new p("attachment").description("Retrieve a single attachment from a received (inbound) email").argument("[emailId]","Received email UUID").argument("[attachmentId]","Attachment UUID").addHelpText("after",f({context:`The download_url is a signed URL that expires in ~1 hour. Download the file directly:
505
+ resend emails receiving attachment <emailId> <attachmentId> --json | jq -r .download_url | xargs curl -O`,output:' {"object":"attachment","id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<signed-url>","expires_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend emails receiving attachment <email-id> <attachment-id>","resend emails receiving attachment <email-id> <attachment-id> --json"]})).action(async(t,e,r,n)=>{let i=n.optsWithGlobals(),o=await C(t,dt,i),s=await C(e,_l(o),i);await H({loading:"Fetching attachment...",sdkCall:a=>a.emails.receiving.attachments.get({emailId:o,id:s}),onInteractive:a=>{console.log(`${a.filename??"(unnamed)"}`),console.log(`ID: ${a.id}`),console.log(`Content-Type: ${a.content_type}`),console.log(`Size: ${a.size} bytes`),console.log(`Disposition: ${a.content_disposition}`),console.log(`Download URL: ${a.download_url}`),console.log(`Expires: ${a.expires_at}`)}},i)});var kl=new p("attachments").description("List attachments on a received (inbound) email").argument("[emailId]","Received email UUID").option("--limit <n>","Maximum number of attachments to return (1-100)","10").option("--after <cursor>","Return attachments after this cursor (next page)").option("--before <cursor>","Return attachments before this cursor (previous page)").addHelpText("after",f({context:`Each attachment has a download_url (signed, expires ~1 hour).
496
506
  Use the attachment sub-command to retrieve a single attachment with its download URL:
497
507
  resend emails receiving attachment <emailId> <attachmentId>
498
508
 
499
509
  content_disposition: "inline" means the attachment is embedded in the HTML body (e.g. an image).
500
- content_disposition: "attachment" means it is a standalone file download.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<url>","expires_at":"<iso-date>"}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails receiving attachments <email-id>","resend emails receiving attachments <email-id> --json","resend emails receiving attachments <email-id> --limit 25 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Dt,i),o=L(t.limit,i),s=N(o,t.after,t.before,i);await D({loading:"Fetching attachments...",sdkCall:a=>a.emails.receiving.attachments.list({emailId:n,...s}),onInteractive:a=>{console.log(Va(a.data)),G(a,`emails receiving attachments ${n}`,{limit:o,before:t.before,apiKey:i.apiKey,profile:i.profile})}},i)});var ny=new p("forward").description("Forward a received email").argument("[id]","Received email ID").requiredOption("--to <addresses...>","Recipient address(es)").requiredOption("--from <address>","Sender address").addHelpText("after",h({context:`Required: --to, --from
501
- Forwards the original email content (passthrough mode).`,output:' {"id":"<email-id>"}',errorCodes:["auth_error","create_error"],examples:["resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Dt,i);await te({loading:"Forwarding email...",sdkCall:o=>o.emails.receiving.forward({emailId:n,to:t.to,from:t.from}),onInteractive:o=>{console.log(`Email forwarded: ${o.id}`)}},i)});var oy=new p("get").description("Retrieve a single received (inbound) email with full details including HTML, text, and headers").argument("[id]","Received email UUID").addHelpText("after",h({context:`The raw.download_url field is a signed URL (expires ~1 hour) containing the full RFC 2822
510
+ content_disposition: "attachment" means it is a standalone file download.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","filename":"invoice.pdf","size":51200,"content_type":"application/pdf","content_disposition":"attachment","content_id":null,"download_url":"<url>","expires_at":"<iso-date>"}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails receiving attachments <email-id>","resend emails receiving attachments <email-id> --json","resend emails receiving attachments <email-id> --limit 25 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,dt,n),o=L(e.limit,n),s=G(o,e.after,e.before,n);await P({loading:"Fetching attachments...",sdkCall:a=>a.emails.receiving.attachments.list({emailId:i,...s}),onInteractive:a=>{console.log(nn(a.data)),M(a,`emails receiving attachments ${i}`,{limit:o,before:e.before,apiKey:n.apiKey,profile:n.profile})}},n)});var $l=new p("forward").description("Forward a received email").argument("[id]","Received email ID").requiredOption("--to <addresses...>","Recipient address(es)").requiredOption("--from <address>","Sender address").addHelpText("after",f({context:`Required: --to, --from
511
+ Forwards the original email content (passthrough mode).`,output:' {"id":"<email-id>"}',errorCodes:["auth_error","create_error"],examples:["resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,dt,n);await J({loading:"Forwarding email...",sdkCall:o=>o.emails.receiving.forward({emailId:i,to:e.to,from:e.from}),onInteractive:o=>{console.log(`Email forwarded: ${o.id}`)}},n)});var El=new p("get").description("Retrieve a single received (inbound) email with full details including HTML, text, and headers").argument("[id]","Received email UUID").addHelpText("after",f({context:`The raw.download_url field is a signed URL (expires ~1 hour) containing the full RFC 2822
502
512
  MIME message. Pipe it to curl to save the original email:
503
513
  resend emails receiving get <id> --json | jq -r .raw.download_url | xargs curl > email.eml
504
514
 
505
515
  Attachments are listed in the attachments array. Use the attachments sub-command to get
506
516
  download URLs:
507
- resend emails receiving attachments <id>`,output:' {"object":"email","id":"<uuid>","to":["inbox@example.com"],"from":"sender@external.com","subject":"Hello","html":"<p>Hello!</p>","text":"Hello!","headers":{"x-mailer":"..."},"message_id":"<str>","bcc":[],"cc":[],"reply_to":[],"raw":{"download_url":"<url>","expires_at":"<iso-date>"},"attachments":[]}',errorCodes:["auth_error","fetch_error"],examples:["resend emails receiving get <email-id>","resend emails receiving get <email-id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,Dt,i);await W({loading:"Fetching received email...",sdkCall:o=>o.emails.receiving.get(n),onInteractive:o=>{if(console.log(`From: ${o.from}`),console.log(`To: ${o.to.join(", ")}`),console.log(`Subject: ${o.subject}`),console.log(`Date: ${o.created_at}`),o.attachments.length>0&&console.log(`Files: ${o.attachments.length} attachment(s)`),o.text){let s=o.text.length>200?`${o.text.slice(0,197)}...`:o.text;console.log(`${s}`)}else o.html&&console.log(`
508
- (HTML body only \u2014 use --json to view or pipe to a browser)`)}},i)});var sy=new p("list").alias("ls").description("List received (inbound) emails for domains with receiving enabled").option("--limit <n>","Maximum number of emails to return (1-100)","10").option("--after <cursor>","Return emails after this cursor (next page)").option("--before <cursor>","Return emails before this cursor (previous page)").addHelpText("after",h({context:`Receiving must be enabled on the domain first:
517
+ resend emails receiving attachments <id>`,output:' {"object":"email","id":"<uuid>","to":["inbox@example.com"],"from":"sender@external.com","subject":"Hello","html":"<p>Hello!</p>","text":"Hello!","headers":{"x-mailer":"..."},"message_id":"<str>","bcc":[],"cc":[],"reply_to":[],"raw":{"download_url":"<url>","expires_at":"<iso-date>"},"attachments":[]}',errorCodes:["auth_error","fetch_error"],examples:["resend emails receiving get <email-id>","resend emails receiving get <email-id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,dt,n);await H({loading:"Fetching received email...",sdkCall:o=>o.emails.receiving.get(i),onInteractive:o=>{if(console.log(`From: ${o.from}`),console.log(`To: ${o.to.join(", ")}`),console.log(`Subject: ${o.subject}`),console.log(`Date: ${o.created_at}`),o.attachments.length>0&&console.log(`Files: ${o.attachments.length} attachment(s)`),o.text){let s=o.text.length>200?`${o.text.slice(0,197)}...`:o.text;console.log(`${s}`)}else o.html&&console.log(`
518
+ (HTML body only \u2014 use --json to view or pipe to a browser)`)}},n)});var Dl=new p("list").alias("ls").description("List received (inbound) emails for domains with receiving enabled").option("--limit <n>","Maximum number of emails to return (1-100)","10").option("--after <cursor>","Return emails after this cursor (next page)").option("--before <cursor>","Return emails before this cursor (previous page)").addHelpText("after",f({context:`Receiving must be enabled on the domain first:
509
519
  resend domains update <id> --receiving enabled
510
520
 
511
521
  Pagination: use --after or --before with a received email ID as the cursor.
512
522
  Only one of --after or --before may be used at a time.
513
- The response includes has_more: true when additional pages exist.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","to":["inbox@example.com"],"from":"sender@external.com","subject":"Hello","created_at":"<iso-date>","message_id":"<str>","bcc":null,"cc":null,"reply_to":null,"attachments":[]}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails receiving list","resend emails receiving list --limit 25 --json","resend emails receiving list --after <email-id> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching received emails...",sdkCall:o=>o.emails.receiving.list(n),onInteractive:o=>{console.log(ty(o.data)),G(o,"emails receiving list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var _t=we(yt(),1);X();var ay=(e=1e4)=>{if(!Number.isInteger(e)||e<1)throw new RangeError(`maxSize must be a positive integer, got ${e}`);let t=new Map,r=()=>{let i=t.keys().next();i.done||t.delete(i.value)};return{has:i=>t.has(i)?(t.delete(i),t.set(i,!0),!0):!1,add:i=>{if(t.has(i)){t.delete(i),t.set(i,!0);return}t.size>=e&&r(),t.set(i,!0)},size:()=>t.size}};var _c=100,uy=5,vc=()=>new Date().toLocaleTimeString("en-GB",{hour12:!1}),sx=(e,t)=>{if(t)console.log(JSON.stringify(e));else{let r=e.to.map(je).join(", "),i=_t.default.dim(`[${vc()}]`),n=je(e.subject),o=n.length>50?`${n.slice(0,47)}...`:n,s=je(e.from),a=je(e.id);process.stderr.write(`${i} ${s} -> ${r} ${_t.default.bold(`"${o}"`)} ${_t.default.dim(a)}
514
- `)}},ax=(e,t)=>{let r=e.findIndex(i=>t.has(i.id));return r===-1?{newEmails:e,foundSeen:!1}:{newEmails:e.slice(0,r),foundSeen:!0}},ly=new p("listen").description("Poll for new inbound emails and display them as they arrive").option("--interval <seconds>","Polling interval in seconds (minimum 2)","5").addHelpText("after",h({context:`Long-running command that polls the receiving API at a fixed
523
+ The response includes has_more: true when additional pages exist.`,output:' {"object":"list","has_more":false,"data":[{"id":"<uuid>","to":["inbox@example.com"],"from":"sender@external.com","subject":"Hello","created_at":"<iso-date>","message_id":"<str>","bcc":null,"cc":null,"reply_to":null,"attachments":[]}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend emails receiving list","resend emails receiving list --limit 25 --json","resend emails receiving list --after <email-id> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching received emails...",sdkCall:o=>o.emails.receiving.list(i),onInteractive:o=>{console.log(xl(o.data)),M(o,"emails receiving list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Xe=pe(et(),1);z();var Sl=(t=1e4)=>{if(!Number.isInteger(t)||t<1)throw new RangeError(`maxSize must be a positive integer, got ${t}`);let e=new Map,r=()=>{let n=e.keys().next();n.done||e.delete(n.value)};return{has:n=>e.has(n)?(e.delete(n),e.set(n,!0),!0):!1,add:n=>{if(e.has(n)){e.delete(n),e.set(n,!0);return}e.size>=t&&r(),e.set(n,!0)},size:()=>e.size}};var gi=100,Tl=5,bi=()=>new Date().toLocaleTimeString("en-GB",{hour12:!1}),qm=(t,e)=>{if(e)console.log(JSON.stringify(t));else{let r=t.to.map(_e).join(", "),n=Xe.default.dim(`[${bi()}]`),i=_e(t.subject),o=i.length>50?`${i.slice(0,47)}...`:i,s=_e(t.from),a=_e(t.id);process.stderr.write(`${n} ${s} -> ${r} ${Xe.default.bold(`"${o}"`)} ${Xe.default.dim(a)}
524
+ `)}},Um=(t,e)=>{let r=t.findIndex(n=>e.has(n.id));return r===-1?{newEmails:t,foundSeen:!1}:{newEmails:t.slice(0,r),foundSeen:!0}},Ol=new p("listen").description("Poll for new inbound emails and display them as they arrive").option("--interval <seconds>","Polling interval in seconds (minimum 2)","5").addHelpText("after",f({context:`Long-running command that polls the receiving API at a fixed
515
525
  interval and prints each new email as it arrives.
516
526
 
517
527
  Interactive output shows one line per email. When piped (or with --json),
518
528
  output is NDJSON (one JSON object per line).
519
529
 
520
- Ctrl+C exits cleanly.`,examples:["resend emails receiving listen","resend emails receiving listen --interval 10","resend emails receiving listen --json | head -3"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=Number.parseInt(e.interval??"5",10);(Number.isNaN(i)||i<2)&&g({message:"Polling interval must be at least 2 seconds.",code:"invalid_interval"},{json:r.json});let n=await ne(r),o=r.json||!O(),s=fe("Connecting...",r.quiet||o),a=ay(),u=0;try{let{data:_,error:S}=await n.emails.receiving.list({limit:1});(S||!_)&&(s.fail("Failed to connect"),g({message:S?.message??"Unexpected empty response",code:"list_error"},{json:r.json}));for(let x of _.data)a.add(x.id);s.stop("Ready")}catch(_){s.fail("Failed to connect"),g({message:Y(_,"Unknown error"),code:"list_error"},{json:r.json})}o||(process.stderr.write(`
521
- `),process.stderr.write(` ${_t.default.bold("Polling:")} every ${i}s
530
+ Ctrl+C exits cleanly.`,examples:["resend emails receiving listen","resend emails receiving listen --interval 10","resend emails receiving listen --json | head -3"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=Number.parseInt(t.interval??"5",10);(Number.isNaN(n)||n<2)&&h({message:"Polling interval must be at least 2 seconds.",code:"invalid_interval"},{json:r.json});let i=await X(r),o=r.json||!w(),s=ae("Connecting...",r.quiet||o),a=Sl(),l=0;try{let{data:b,error:_}=await i.emails.receiving.list({limit:1});(_||!b)&&(s.fail("Failed to connect"),h({message:_?.message??"Unexpected empty response",code:"list_error"},{json:r.json}));for(let A of b.data)a.add(A.id);s.stop("Ready")}catch(b){s.fail("Failed to connect"),h({message:V(b,"Unknown error"),code:"list_error"},{json:r.json})}o||(process.stderr.write(`
531
+ `),process.stderr.write(` ${Xe.default.bold("Polling:")} every ${n}s
522
532
  `),process.stderr.write(`
523
533
  Listening for new inbound emails. Press Ctrl+C to stop.
524
534
 
525
- `));let d=_=>{u++,o||process.stderr.write(`${_t.default.dim(`[${vc()}]`)} ${_t.default.yellow("Warning:")} ${_}
526
- `),u>=5&&g({message:"Exiting after 5 consecutive API failures.",code:"poll_error"},{json:r.json})},l=async(_,S,x)=>{if(x<=0)return{emails:S,hasMore:!0};let w=_?{limit:_c,after:_}:{limit:_c},{data:A,error:M}=await ei(()=>n.emails.receiving.list(w));if(M||!A)return{emails:S,error:M?.message??"Empty response",hasMore:!1};let{newEmails:P,foundSeen:$}=ax(A.data,a),I=[...S,...P];if($||!A.has_more)return{emails:I,hasMore:!1};let E=A.data[A.data.length-1]?.id;return E?l(E,I,x-1):{emails:I,hasMore:!0}},c,m=()=>{let _=`Hit page cap of ${uy*_c} emails this poll; remaining will be picked up next tick.`;o?console.log(JSON.stringify({warning:"page_cap_reached",message:_})):process.stderr.write(`${_t.default.dim(`[${vc()}]`)} ${_t.default.yellow("Warning:")} ${_}
527
- `)},v=async()=>{try{let _=await l(void 0,[],uy);_.error&&d(_.error),_.hasMore&&m();let S=_.emails.toReversed();for(let x of S)a.add(x.id);if(_.emails.length>0){u=0;for(let x of S)sx(x,o)}else _.error||(u=0)}catch(_){d(Y(_,"Unknown error"))}finally{c=setTimeout(v,i*1e3)}};c=setTimeout(v,i*1e3);let b=()=>{clearTimeout(c),o||process.stderr.write(`
535
+ `));let d=b=>{l++,o||process.stderr.write(`${Xe.default.dim(`[${bi()}]`)} ${Xe.default.yellow("Warning:")} ${b}
536
+ `),l>=5&&h({message:"Exiting after 5 consecutive API failures.",code:"poll_error"},{json:r.json})},c=async(b,_,A)=>{if(A<=0)return{emails:_,hasMore:!0};let x=b?{limit:gi,after:b}:{limit:gi},{data:$,error:F}=await sr(()=>i.emails.receiving.list(x));if(F||!$)return{emails:_,error:F?.message??"Empty response",hasMore:!1};let{newEmails:D,foundSeen:O}=Um($.data,a),T=[..._,...D];if(O||!$.has_more)return{emails:T,hasMore:!1};let E=$.data[$.data.length-1]?.id;return E?c(E,T,A-1):{emails:T,hasMore:!0}},u,m=()=>{let b=`Hit page cap of ${Tl*gi} emails this poll; remaining will be picked up next tick.`;o?console.log(JSON.stringify({warning:"page_cap_reached",message:b})):process.stderr.write(`${Xe.default.dim(`[${bi()}]`)} ${Xe.default.yellow("Warning:")} ${b}
537
+ `)},y=async()=>{try{let b=await c(void 0,[],Tl);b.error&&d(b.error),b.hasMore&&m();let _=b.emails.toReversed();for(let A of _)a.add(A.id);if(b.emails.length>0){l=0;for(let A of _)qm(A,o)}else b.error||(l=0)}catch(b){d(V(b,"Unknown error"))}finally{u=setTimeout(y,n*1e3)}};u=setTimeout(y,n*1e3);let g=()=>{clearTimeout(u),o||process.stderr.write(`
528
538
  Stopped listening.
529
- `),process.exit(Sr())};$a(b),process.on("SIGTERM",b),await new Promise(()=>{})});var cy=new p("receiving").description("Manage received (inbound) emails \u2014 requires domain receiving to be enabled").addHelpText("after",h({context:`Receiving must be enabled on the domain first:
530
- resend domains update <id> --receiving enabled`,examples:["resend emails receiving list","resend emails receiving listen","resend emails receiving get <email-id>","resend emails receiving attachments <email-id>","resend emails receiving attachment <email-id> <attachment-id>","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com"]})).addCommand(sy,{isDefault:!0}).addCommand(oy).addCommand(ly).addCommand(iy).addCommand(ry).addCommand(ny);var dy=require("node:fs"),my=require("node:path");X();function ux(e){let{attachments:t,...r}=e;return t?.length?{...r,attachments:t.map(i=>({filename:i.filename,byteLength:Buffer.isBuffer(i.content)?i.content.byteLength:Buffer.byteLength(String(i.content),"utf8")}))}:r}var py=new p("send").description("Send an email").option("--from <address>","Sender address (required unless using --template)").option("--to <addresses...>","Recipient address(es) (required)").option("--subject <subject>","Email subject (required unless using --template)").option("--html <html>","HTML body").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin)').option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and send").option("--cc <addresses...>","CC recipients").option("--bcc <addresses...>","BCC recipients").option("--reply-to <address>","Reply-to address").option("--scheduled-at <datetime>",'Schedule email for later \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET"').option("--attachment <paths...>","File path(s) to attach").option("--headers <key=value...>","Custom headers as key=value pairs (e.g. X-Entity-Ref-ID=123)").option("--tags <name=value...>","Email tags as name=value pairs (e.g. category=marketing)").option("--idempotency-key <key>","Deduplicate this send request using this key").option("--dry-run","Validate input and print the request JSON without calling the API (interactive: verified-domain list is not fetched)").option("--template <id>","Template ID to use").option("--var <key=value...>","Template variables as key=value pairs (repeatable, e.g. --var name=John --var count=42)").addHelpText("after",h({context:`Required: --to and either --template, --react-email, or (--from, --subject, and one of --text | --text-file | --html | --html-file).
531
- Use --dry-run to print the request JSON without sending (attachments show filename and byteLength only).`,output:' {"id":"<email-id>"}',errorCodes:["auth_error","missing_body","file_read_error","invalid_options","stdin_read_error","invalid_header","invalid_tag","invalid_var","template_body_conflict","template_attachment_conflict","react_email_build_error","react_email_render_error","send_error"],examples:['resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi"','resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --html "<b>Hi</b>"','resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi" --attachment ./report.pdf',"resend emails send --template tmpl_123 --to delivered@resend.com"]})).action(async(e,t)=>{let r=t.optsWithGlobals();e.htmlFile==="-"&&e.textFile==="-"&&g({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),e.from===""&&g({message:"--from cannot be empty",code:"invalid_options"},{json:r.json});let i=!!e.template;e.var&&!i&&g({message:"--var can only be used with --template",code:"invalid_var"},{json:r.json}),e.reactEmail&&(e.html||e.htmlFile||i)&&g({message:"Cannot use --react-email with --html, --html-file, or --template",code:"invalid_options"},{json:r.json}),i&&(e.html||e.htmlFile||e.text||e.textFile)&&g({message:"Cannot use --template with --html, --html-file, --text, or --text-file",code:"template_body_conflict"},{json:r.json}),i&&e.attachment&&g({message:"Cannot use --attachment with --template",code:"template_attachment_conflict"},{json:r.json});let n=e.var?Object.fromEntries(e.var.map(w=>{let A=w.indexOf("=");A<1&&g({message:`Invalid var format: "${w}". Expected key=value.`,code:"invalid_var"},{json:r.json});let M=w.slice(0,A),P=w.slice(A+1);return[M,P]})):void 0,o=e.from;if(!e.dryRun&&!o&&!i&&O()&&!r.json){let w=await ne(r,{permission:"sending_access"}),A=await za(w);A.length>0&&(o=await Ja(A))}let s=[{flag:"from",message:"From address",placeholder:"onboarding@resend.dev",defaultValue:"onboarding@resend.dev",required:!i},{flag:"to",message:"To address",placeholder:"delivered@resend.dev",defaultValue:"delivered@resend.dev"},{flag:"subject",message:"Subject",placeholder:"Hello!",defaultValue:"Hello!",required:!i}],a=await s_({from:o,to:e.to?.[0],subject:e.subject},s,r),u=e.html,d=e.text;e.htmlFile&&(e.html&&process.stderr.write(`Warning: both --html and --html-file provided; using --html-file
532
- `),u=ge(e.htmlFile,r)),e.textFile&&(e.text&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
533
- `),d=ge(e.textFile,r)),e.reactEmail&&(u=await it(e.reactEmail,r));let l=d;!i&&!e.reactEmail&&!u&&!d&&(l=await K(void 0,{message:"Email body (plain text)",placeholder:"Hello, World!",defaultValue:"Hello, World!"},{message:"Missing email body. Provide --html, --html-file, --text, --text-file, or --react-email",code:"missing_body"},r));let c=e.to??[a.to],m=e.attachment?.map(w=>{try{let A=(0,dy.readFileSync)(w);return{filename:(0,my.basename)(w),content:A}}catch{return g({message:`Failed to read file: ${w}`,code:"file_read_error"},{json:r.json})}}),v=e.headers?Object.fromEntries(e.headers.map(w=>{let A=w.indexOf("=");return A<1&&g({message:`Invalid header format: "${w}". Expected key=value.`,code:"invalid_header"},{json:r.json}),[w.slice(0,A),w.slice(A+1)]})):void 0,b=e.tags?.map(w=>{let A=w.indexOf("=");return A<1&&g({message:`Invalid tag format: "${w}". Expected name=value.`,code:"invalid_tag"},{json:r.json}),{name:w.slice(0,A),value:w.slice(A+1)}}),_;if(i?_={template:{id:e.template,...n&&{variables:n}},to:c,...a.from&&{from:a.from},...a.subject&&{subject:a.subject},...e.cc&&{cc:e.cc},...e.bcc&&{bcc:e.bcc},...e.replyTo&&{replyTo:e.replyTo},...e.scheduledAt&&{scheduledAt:e.scheduledAt},...v&&{headers:v},...b&&{tags:b}}:_={from:a.from,to:c,subject:a.subject,...u&&{html:u},...l&&{text:l},...e.cc&&{cc:e.cc},...e.bcc&&{bcc:e.bcc},...e.replyTo&&{replyTo:e.replyTo},...e.scheduledAt&&{scheduledAt:e.scheduledAt},...m&&{attachments:m},...v&&{headers:v},...b&&{tags:b}},e.dryRun){z({dryRun:!0,request:ux(_)},{json:r.json});return}let S=await ne(r,{permission:"sending_access"}),x=await He(e.scheduledAt?"Scheduling email...":"Sending email...",()=>S.emails.send(_,e.idempotencyKey?{idempotencyKey:e.idempotencyKey}:void 0),"send_error",r);!r.json&&O()?e.scheduledAt?console.log(`Email scheduled: ${x.id}`):console.log(`Email sent: ${x.id}`):z(x,{json:r.json})});var fy=new p("update").description("Update a scheduled email").argument("[id]","Email ID").requiredOption("--scheduled-at <datetime>","New scheduled date in ISO 8601 format (e.g. 2024-08-05T11:52:01.858Z)").addHelpText("after",h({context:"Required: --scheduled-at",output:' {"object":"email","id":"<email-id>"}',errorCodes:["auth_error","update_error"],examples:["resend emails update <email-id> --scheduled-at 2024-08-05T11:52:01.858Z","resend emails update <email-id> --scheduled-at 2024-08-05T11:52:01.858Z --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,pt,i);await J({loading:"Updating email...",sdkCall:o=>o.emails.update({id:n,scheduledAt:t.scheduledAt}),errorCode:"update_error",successMsg:`Email updated: ${n}`},i)});var hy=new p("emails").description("Send and manage emails").addHelpText("after",h({examples:['resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi"',"resend emails get <email-id>","resend emails batch --file ./emails.json","resend emails cancel <email-id>","resend emails attachments <email-id>","resend emails attachment <email-id> <attachment-id>","resend emails receiving list","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com"]})).addCommand(Xv,{isDefault:!0}).addCommand(py).addCommand(Zv).addCommand(Yv).addCommand(Qv).addCommand(fy).addCommand(Kv).addCommand(Vv).addCommand(cy);var lx=new Set(["string","number","boolean","date"]);function yc(e){if(!e)return"(none)";let t=Object.entries(e);return t.length===0?"(empty)":t.map(([r,i])=>`${r}:${i}`).join(", ")}function gy(e){let t=e.map(r=>[r.name,yc(r.schema),r.created_at,r.id]);return F(["Name","Schema","Created","ID"],t,"(no events)")}function Ka(e,t){if(e==="null")return null;let r=nr(e,"--schema",t);(typeof r!="object"||r===null||Array.isArray(r))&&g({message:"--schema must be a JSON object mapping field names to types (string | number | boolean | date).",code:"invalid_schema"},{json:t.json});for(let[i,n]of Object.entries(r))(typeof n!="string"||!lx.has(n))&&g({message:`Invalid schema type for "${i}": "${n}". Must be one of: string, number, boolean, date.`,code:"invalid_schema"},{json:t.json});return r}var jr={resource:"event",resourcePlural:"events",fetchItems:(e,{limit:t,after:r})=>e.events.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};var by=new p("create").description("Create a new event definition").option("--name <name>","Event name (e.g. user.signed_up)").option("--schema <json>","Schema as JSON mapping field names to types (string | number | boolean | date)").addHelpText("after",h({context:`Non-interactive: --name is required. --schema is optional.
539
+ `),process.exit(It())};Gr(g),process.on("SIGTERM",g),await new Promise(()=>{})});var Il=new p("receiving").description("Manage received (inbound) emails \u2014 requires domain receiving to be enabled").addHelpText("after",f({context:`Receiving must be enabled on the domain first:
540
+ resend domains update <id> --receiving enabled`,examples:["resend emails receiving list","resend emails receiving listen","resend emails receiving get <email-id>","resend emails receiving attachments <email-id>","resend emails receiving attachment <email-id> <attachment-id>","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com"]})).addCommand(Dl,{isDefault:!0}).addCommand(El).addCommand(Ol).addCommand(kl).addCommand(Al).addCommand($l);var Pl=require("node:fs"),jl=require("node:path");z();function Wm(t){let{attachments:e,...r}=t;return e?.length?{...r,attachments:e.map(n=>({filename:n.filename,byteLength:Buffer.isBuffer(n.content)?n.content.byteLength:Buffer.byteLength(String(n.content),"utf8")}))}:r}var Rl=new p("send").description("Send an email").option("--from <address>","Sender address (required unless using --template)").option("--to <addresses...>","Recipient address(es) (required)").option("--subject <subject>","Email subject (required unless using --template)").option("--html <html>","HTML body").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin)').option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and send").option("--cc <addresses...>","CC recipients").option("--bcc <addresses...>","BCC recipients").option("--reply-to <address>","Reply-to address").option("--scheduled-at <datetime>",'Schedule email for later \u2014 ISO 8601 or natural language e.g. "in 1 hour", "tomorrow at 9am ET"').option("--attachment <paths...>","File path(s) to attach").option("--headers <key=value...>","Custom headers as key=value pairs (e.g. X-Entity-Ref-ID=123)").option("--tags <name=value...>","Email tags as name=value pairs (e.g. category=marketing)").option("--idempotency-key <key>","Deduplicate this send request using this key").option("--dry-run","Validate input and print the request JSON without calling the API (interactive: verified-domain list is not fetched)").option("--template <id>","Template ID to use").option("--var <key=value...>","Template variables as key=value pairs (repeatable, e.g. --var name=John --var count=42)").addHelpText("after",f({context:`Required: --to and either --template, --react-email, or (--from, --subject, and one of --text | --text-file | --html | --html-file).
541
+ Use --dry-run to print the request JSON without sending (attachments show filename and byteLength only).`,output:' {"id":"<email-id>"}',errorCodes:["auth_error","missing_body","file_read_error","invalid_options","stdin_read_error","invalid_header","invalid_tag","invalid_var","template_body_conflict","template_attachment_conflict","react_email_build_error","react_email_render_error","send_error"],examples:['resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi"','resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --html "<b>Hi</b>"','resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi" --attachment ./report.pdf',"resend emails send --template tmpl_123 --to delivered@resend.com"]})).action(async(t,e)=>{let r=e.optsWithGlobals();t.htmlFile==="-"&&t.textFile==="-"&&h({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),t.from===""&&h({message:"--from cannot be empty",code:"invalid_options"},{json:r.json});let n=!!t.template;t.var&&!n&&h({message:"--var can only be used with --template",code:"invalid_var"},{json:r.json}),t.reactEmail&&(t.html||t.htmlFile||n)&&h({message:"Cannot use --react-email with --html, --html-file, or --template",code:"invalid_options"},{json:r.json}),n&&(t.html||t.htmlFile||t.text||t.textFile)&&h({message:"Cannot use --template with --html, --html-file, --text, or --text-file",code:"template_body_conflict"},{json:r.json}),n&&t.attachment&&h({message:"Cannot use --attachment with --template",code:"template_attachment_conflict"},{json:r.json});let i=t.var?Object.fromEntries(t.var.map(x=>{let $=x.indexOf("=");$<1&&h({message:`Invalid var format: "${x}". Expected key=value.`,code:"invalid_var"},{json:r.json});let F=x.slice(0,$),D=x.slice($+1);return[F,D]})):void 0,o=t.from;if(!t.dryRun&&!o&&!n&&w()&&!r.json){let x=await X(r,{permission:"sending_access"}),$=await Kr(x);$.length>0&&(o=await zr($))}let s=[{flag:"from",message:"From address",placeholder:"onboarding@resend.dev",defaultValue:"onboarding@resend.dev",required:!n},{flag:"to",message:"To address",placeholder:"delivered@resend.dev",defaultValue:"delivered@resend.dev"},{flag:"subject",message:"Subject",placeholder:"Hello!",defaultValue:"Hello!",required:!n}],a=await As({from:o,to:t.to?.[0],subject:t.subject},s,r),l=t.html,d=t.text;t.htmlFile&&(t.html&&process.stderr.write(`Warning: both --html and --html-file provided; using --html-file
542
+ `),l=ce(t.htmlFile,r)),t.textFile&&(t.text&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
543
+ `),d=ce(t.textFile,r)),t.reactEmail&&(l=await Ne(t.reactEmail,r));let c=d;!n&&!t.reactEmail&&!l&&!d&&(c=await q(void 0,{message:"Email body (plain text)",placeholder:"Hello, World!",defaultValue:"Hello, World!"},{message:"Missing email body. Provide --html, --html-file, --text, --text-file, or --react-email",code:"missing_body"},r));let u=t.to??[a.to],m=t.attachment?.map(x=>{try{let $=(0,Pl.readFileSync)(x);return{filename:(0,jl.basename)(x),content:$}}catch{return h({message:`Failed to read file: ${x}`,code:"file_read_error"},{json:r.json})}}),y=t.headers?Object.fromEntries(t.headers.map(x=>{let $=x.indexOf("=");return $<1&&h({message:`Invalid header format: "${x}". Expected key=value.`,code:"invalid_header"},{json:r.json}),[x.slice(0,$),x.slice($+1)]})):void 0,g=t.tags?.map(x=>{let $=x.indexOf("=");return $<1&&h({message:`Invalid tag format: "${x}". Expected name=value.`,code:"invalid_tag"},{json:r.json}),{name:x.slice(0,$),value:x.slice($+1)}}),b;if(n?b={template:{id:t.template,...i&&{variables:i}},to:u,...a.from&&{from:a.from},...a.subject&&{subject:a.subject},...t.cc&&{cc:t.cc},...t.bcc&&{bcc:t.bcc},...t.replyTo&&{replyTo:t.replyTo},...t.scheduledAt&&{scheduledAt:t.scheduledAt},...y&&{headers:y},...g&&{tags:g}}:b={from:a.from,to:u,subject:a.subject,...l&&{html:l},...c&&{text:c},...t.cc&&{cc:t.cc},...t.bcc&&{bcc:t.bcc},...t.replyTo&&{replyTo:t.replyTo},...t.scheduledAt&&{scheduledAt:t.scheduledAt},...m&&{attachments:m},...y&&{headers:y},...g&&{tags:g}},t.dryRun){B({dryRun:!0,request:Wm(b)},{json:r.json});return}let _=await X(r,{permission:"sending_access"}),A=await Ee(t.scheduledAt?"Scheduling email...":"Sending email...",()=>_.emails.send(b,t.idempotencyKey?{idempotencyKey:t.idempotencyKey}:void 0),"send_error",r);!r.json&&w()?t.scheduledAt?console.log(`Email scheduled: ${A.id}`):console.log(`Email sent: ${A.id}`):B(A,{json:r.json})});var Fl=new p("update").description("Update a scheduled email").argument("[id]","Email ID").requiredOption("--scheduled-at <datetime>","New scheduled date in ISO 8601 format (e.g. 2024-08-05T11:52:01.858Z)").addHelpText("after",f({context:"Required: --scheduled-at",output:' {"object":"email","id":"<email-id>"}',errorCodes:["auth_error","update_error"],examples:["resend emails update <email-id> --scheduled-at 2024-08-05T11:52:01.858Z","resend emails update <email-id> --scheduled-at 2024-08-05T11:52:01.858Z --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ke,n);await R({loading:"Updating email...",sdkCall:o=>o.emails.update({id:i,scheduledAt:e.scheduledAt}),errorCode:"update_error",successMsg:`Email updated: ${i}`},n)});var Bl=new p("emails").description("Send and manage emails").addHelpText("after",f({examples:['resend emails send --from onboarding@resend.com --to delivered@resend.com --subject "Hello" --text "Hi"',"resend emails get <email-id>","resend emails batch --file ./emails.json","resend emails cancel <email-id>","resend emails attachments <email-id>","resend emails attachment <email-id> <attachment-id>","resend emails receiving list","resend emails receiving forward <email-id> --to delivered@resend.com --from onboarding@resend.com"]})).addCommand(wl,{isDefault:!0}).addCommand(Rl).addCommand(Cl).addCommand(yl).addCommand(vl).addCommand(Fl).addCommand(bl).addCommand(gl).addCommand(Il);var Vm=new Set(["string","number","boolean","date"]);function yi(t){if(!t)return"(none)";let e=Object.entries(t);return e.length===0?"(empty)":e.map(([r,n])=>`${r}:${n}`).join(", ")}function Nl(t){let e=t.map(r=>[r.name,yi(r.schema),r.created_at,r.id]);return N(["Name","Schema","Created","ID"],e,"(no events)")}function on(t,e){if(t==="null")return null;let r=xt(t,"--schema",e);(typeof r!="object"||r===null||Array.isArray(r))&&h({message:"--schema must be a JSON object mapping field names to types (string | number | boolean | date).",code:"invalid_schema"},{json:e.json});for(let[n,i]of Object.entries(r))(typeof i!="string"||!Vm.has(i))&&h({message:`Invalid schema type for "${n}": "${i}". Must be one of: string, number, boolean, date.`,code:"invalid_schema"},{json:e.json});return r}var Mt={resource:"event",resourcePlural:"events",fetchItems:(t,{limit:e,after:r})=>t.events.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};var Hl=new p("create").description("Create a new event definition").option("--name <name>","Event name (e.g. user.signed_up)").option("--schema <json>","Schema as JSON mapping field names to types (string | number | boolean | date)").addHelpText("after",f({context:`Non-interactive: --name is required. --schema is optional.
534
544
 
535
545
  Schema format:
536
546
  A JSON object mapping field names to type strings.
537
547
  Valid types: string, number, boolean, date.
538
- Example: '{"plan":"string","age":"number","active":"boolean"}'`,output:' {"object":"event","id":"<id>"}',errorCodes:["auth_error","missing_name","invalid_schema","create_error"],examples:['resend events create --name "user.signed_up"',`resend events create --name "order.completed" --schema '{"amount":"number","currency":"string"}'`,'resend events create --name "user.signed_up" --json']})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.name,{message:"Event name",placeholder:"e.g. user.signed_up"},{message:"Missing --name flag.",code:"missing_name"},r),n=e.schema?Ka(e.schema,r):void 0;await te({loading:"Creating event...",sdkCall:o=>o.events.create({name:i,...n!==void 0&&{schema:n}}),onInteractive:o=>{console.log(`Event created: ${o.id}`)}},r)});var _y=new p("delete").alias("rm").description("Delete an event definition").argument("[id]","Event ID").option("--yes","Skip confirmation prompt").addHelpText("after",h({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"event","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend events delete <id> --yes","resend events delete <id> --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,jr,i);await ue(n,!!t.yes,{confirmMessage:`Delete event ${n}?
539
- This cannot be undone.`,loading:"Deleting event...",object:"event",successMsg:"Event deleted",sdkCall:o=>o.events.remove(n)},i)});var vy=new p("get").description("Retrieve an event definition").argument("[id]","Event ID").addHelpText("after",h({output:" Full event object including schema.",errorCodes:["auth_error","fetch_error"],examples:["resend events get <id>","resend events get <id> --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,jr,i);await W({loading:"Fetching event...",sdkCall:o=>o.events.get(n),onInteractive:o=>{console.log(o.name),console.log(`ID: ${o.id}`),console.log(`Schema: ${yc(o.schema)}`),console.log(`Created: ${o.created_at}`),o.updated_at&&console.log(`Updated: ${o.updated_at}`)}},i)});var yy=new p("list").alias("ls").description("List all events").option("--limit <n>","Maximum number of events to return (1-100)","10").option("--after <cursor>","Return events after this cursor (next page)").option("--before <cursor>","Return events before this cursor (previous page)").addHelpText("after",h({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend events list","resend events list --limit 25 --json","resend events list --after <cursor> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching events...",sdkCall:o=>o.events.list(n),onInteractive:o=>{console.log(gy(o.data)),G(o,"events list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Cy=new p("open").description("Open the events page in the Resend dashboard").addHelpText("after",h({context:"Opens the events management page in the Resend dashboard in your default browser.",examples:["resend events open"]})).action(async(e,t)=>{let r=t.optsWithGlobals();await Be(Oe.events,r)});var Oy=new p("send").description("Send an event to trigger automations for a contact").option("--event <name>","Event name (e.g. user.signed_up)").option("--contact-id <id>","Contact ID (mutually exclusive with --email)").option("--email <email>","Contact email (mutually exclusive with --contact-id)").option("--payload <json>","Event payload as JSON string").addHelpText("after",h({context:`Sends an event for a specific contact, triggering any automations listening for it.
548
+ Example: '{"plan":"string","age":"number","active":"boolean"}'`,output:' {"object":"event","id":"<id>"}',errorCodes:["auth_error","missing_name","invalid_schema","create_error"],examples:['resend events create --name "user.signed_up"',`resend events create --name "order.completed" --schema '{"amount":"number","currency":"string"}'`,'resend events create --name "user.signed_up" --json']})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.name,{message:"Event name",placeholder:"e.g. user.signed_up"},{message:"Missing --name flag.",code:"missing_name"},r),i=t.schema?on(t.schema,r):void 0;await J({loading:"Creating event...",sdkCall:o=>o.events.create({name:n,...i!==void 0&&{schema:i}}),onInteractive:o=>{console.log(`Event created: ${o.id}`)}},r)});var Ll=new p("delete").alias("rm").description("Delete an event definition").argument("[id]","Event ID").option("--yes","Skip confirmation prompt").addHelpText("after",f({context:"Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.",output:' {"object":"event","id":"<id>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend events delete <id> --yes","resend events delete <id> --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Mt,n);await re(i,!!e.yes,{confirmMessage:`Delete event ${i}?
549
+ This cannot be undone.`,loading:"Deleting event...",object:"event",successMsg:"Event deleted",sdkCall:o=>o.events.remove(i)},n)});var Gl=new p("get").description("Retrieve an event definition").argument("[id]","Event ID").addHelpText("after",f({output:" Full event object including schema.",errorCodes:["auth_error","fetch_error"],examples:["resend events get <id>","resend events get <id> --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Mt,n);await H({loading:"Fetching event...",sdkCall:o=>o.events.get(i),onInteractive:o=>{console.log(o.name),console.log(`ID: ${o.id}`),console.log(`Schema: ${yi(o.schema)}`),console.log(`Created: ${o.created_at}`),o.updated_at&&console.log(`Updated: ${o.updated_at}`)}},n)});var Ml=new p("list").alias("ls").description("List all events").option("--limit <n>","Maximum number of events to return (1-100)","10").option("--after <cursor>","Return events after this cursor (next page)").option("--before <cursor>","Return events before this cursor (previous page)").addHelpText("after",f({output:' {"object":"list","data":[...],"has_more":true}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend events list","resend events list --limit 25 --json","resend events list --after <cursor> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching events...",sdkCall:o=>o.events.list(i),onInteractive:o=>{console.log(Nl(o.data)),M(o,"events list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var ql=new p("open").description("Open the events page in the Resend dashboard").addHelpText("after",f({context:"Opens the events management page in the Resend dashboard in your default browser.",examples:["resend events open"]})).action(async(t,e)=>{let r=e.optsWithGlobals();await Se(de.events,r)});var Ul=new p("send").description("Send an event to trigger automations for a contact").option("--event <name>","Event name (e.g. user.signed_up)").option("--contact-id <id>","Contact ID (mutually exclusive with --email)").option("--email <email>","Contact email (mutually exclusive with --contact-id)").option("--payload <json>","Event payload as JSON string").addHelpText("after",f({context:`Sends an event for a specific contact, triggering any automations listening for it.
540
550
 
541
551
  Contact targeting:
542
552
  Provide exactly one of --contact-id or --email to identify the contact.
@@ -544,12 +554,12 @@ Contact targeting:
544
554
 
545
555
  Payload:
546
556
  Optional JSON object with event-specific data.
547
- Must match the event's schema if one is defined.`,output:' {"object":"event","event":"<name>"}',errorCodes:["auth_error","missing_event","missing_contact","conflicting_contact","invalid_json","send_error"],examples:['resend events send --event "user.signed_up" --contact-id <id>','resend events send --event "user.signed_up" --email user@example.com',`resend events send --event "order.completed" --contact-id <id> --payload '{"amount":99,"currency":"usd"}'`]})).action(async(e,t)=>{let r=t.optsWithGlobals();e.contactId!==void 0&&e.email!==void 0&&g({message:"Cannot use both --contact-id and --email. Provide only one.",code:"conflicting_contact"},{json:r.json});let i=await K(e.event,{message:"Event name",placeholder:"e.g. user.signed_up"},{message:"Missing --event flag.",code:"missing_event"},r),n=e.contactId,o=e.email;!n&&!o&&(await wr(void 0,{message:"Identify contact by",options:[{value:"contact-id",label:"Contact ID"},{value:"email",label:"Email address"}]},{message:"Missing --contact-id or --email flag.",code:"missing_contact"},r)==="contact-id"?n=await K(void 0,{message:"Contact ID"},{message:"Missing contact ID.",code:"missing_contact"},r):o=await K(void 0,{message:"Email address",placeholder:"user@example.com"},{message:"Missing email.",code:"missing_contact"},r));let s=nr(e.payload,"--payload",r),a=n?{event:i,contactId:n,...s&&{payload:s}}:{event:i,email:o,...s&&{payload:s}};await J({loading:"Sending event...",sdkCall:u=>u.events.send(a),errorCode:"send_error",successMsg:`Event sent: ${i}`},r)});X();var Sy=new p("update").description("Update an event schema").argument("[id]","Event ID").option("--schema <json>",'New schema as JSON (or "null" to clear the schema)').addHelpText("after",h({context:`Non-interactive: --schema is required. Pass "null" to remove the schema.
557
+ Must match the event's schema if one is defined.`,output:' {"object":"event","event":"<name>"}',errorCodes:["auth_error","missing_event","missing_contact","conflicting_contact","invalid_json","send_error"],examples:['resend events send --event "user.signed_up" --contact-id <id>','resend events send --event "user.signed_up" --email user@example.com',`resend events send --event "order.completed" --contact-id <id> --payload '{"amount":99,"currency":"usd"}'`]})).action(async(t,e)=>{let r=e.optsWithGlobals();t.contactId!==void 0&&t.email!==void 0&&h({message:"Cannot use both --contact-id and --email. Provide only one.",code:"conflicting_contact"},{json:r.json});let n=await q(t.event,{message:"Event name",placeholder:"e.g. user.signed_up"},{message:"Missing --event flag.",code:"missing_event"},r),i=t.contactId,o=t.email;!i&&!o&&(await Pt(void 0,{message:"Identify contact by",options:[{value:"contact-id",label:"Contact ID"},{value:"email",label:"Email address"}]},{message:"Missing --contact-id or --email flag.",code:"missing_contact"},r)==="contact-id"?i=await q(void 0,{message:"Contact ID"},{message:"Missing contact ID.",code:"missing_contact"},r):o=await q(void 0,{message:"Email address",placeholder:"user@example.com"},{message:"Missing email.",code:"missing_contact"},r));let s=xt(t.payload,"--payload",r),a=i?{event:n,contactId:i,...s&&{payload:s}}:{event:n,email:o,...s&&{payload:s}};await R({loading:"Sending event...",sdkCall:l=>l.events.send(a),errorCode:"send_error",successMsg:`Event sent: ${n}`},r)});z();var Wl=new p("update").description("Update an event schema").argument("[id]","Event ID").option("--schema <json>",'New schema as JSON (or "null" to clear the schema)').addHelpText("after",f({context:`Non-interactive: --schema is required. Pass "null" to remove the schema.
548
558
 
549
559
  Schema format:
550
560
  A JSON object mapping field names to type strings.
551
561
  Valid types: string, number, boolean, date.
552
- Example: '{"plan":"string","age":"number"}'`,output:' {"object":"event","id":"<id>"}',errorCodes:["auth_error","missing_schema","invalid_schema","update_error"],examples:[`resend events update <id> --schema '{"plan":"string","age":"number"}'`,"resend events update <id> --schema null",`resend events update <id> --schema '{"plan":"string"}' --json`]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,jr,i),o=t.schema;o===void 0&&((!O()||i.json)&&g({message:"Missing --schema flag.",code:"missing_schema"},{json:i.json}),o=await K(void 0,{message:'Schema JSON (or "null" to clear)',placeholder:'{"field":"string"}'},{message:"Missing --schema flag.",code:"missing_schema"},i));let s=Ka(o,i);await J({loading:"Updating event...",sdkCall:a=>a.events.update(n,{schema:s}),errorCode:"update_error",successMsg:`Event updated: ${n}`},i)});var wy=new p("events").description("Manage events").addHelpText("after",h({context:`Events define the signals that trigger automations.
562
+ Example: '{"plan":"string","age":"number"}'`,output:' {"object":"event","id":"<id>"}',errorCodes:["auth_error","missing_schema","invalid_schema","update_error"],examples:[`resend events update <id> --schema '{"plan":"string","age":"number"}'`,"resend events update <id> --schema null",`resend events update <id> --schema '{"plan":"string"}' --json`]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Mt,n),o=e.schema;o===void 0&&((!w()||n.json)&&h({message:"Missing --schema flag.",code:"missing_schema"},{json:n.json}),o=await q(void 0,{message:'Schema JSON (or "null" to clear)',placeholder:'{"field":"string"}'},{message:"Missing --schema flag.",code:"missing_schema"},n));let s=on(o,n);await R({loading:"Updating event...",sdkCall:a=>a.events.update(i,{schema:s}),errorCode:"update_error",successMsg:`Event updated: ${i}`},n)});var Vl=new p("events").description("Manage events").addHelpText("after",f({context:`Events define the signals that trigger automations.
553
563
  Each event has a name and an optional typed schema (string | number | boolean | date fields).
554
564
 
555
565
  Lifecycle:
@@ -558,33 +568,33 @@ Lifecycle:
558
568
  3. resend events list
559
569
  4. resend events get <id>
560
570
  5. resend events update <id> --schema '{"plan":"string","trial":"boolean"}'
561
- 6. resend events delete <id> --yes`,examples:["resend events list",'resend events create --name "user.signed_up"',`resend events create --name "order.completed" --schema '{"amount":"number","currency":"string"}'`,"resend events get <id>",`resend events update <id> --schema '{"plan":"string"}'`,"resend events update <id> --schema null","resend events delete <id> --yes",'resend events send --event "user.signed_up" --contact-id <id>',`resend events send --event "user.signed_up" --email user@example.com --payload '{"plan":"pro"}'`]})).addCommand(by).addCommand(vy).addCommand(yy,{isDefault:!0}).addCommand(Sy).addCommand(_y).addCommand(Cy).addCommand(Oy);function xy(e){let t=e.map(r=>[r.method,r.endpoint,String(r.response_status),r.created_at,r.id]);return F(["Method","Endpoint","Status","Created","ID"],t,"(no logs)")}var ky={resource:"log",resourcePlural:"logs",fetchItems:(e,{limit:t,after:r})=>e.logs.list({limit:t,...r&&{after:r}}),display:e=>({label:`${e.method} ${e.endpoint}`,hint:e.id})};var Ay=new p("get").description("Retrieve a single API request log with full request/response bodies").argument("[id]","Log ID").addHelpText("after",h({output:" Full log object including request_body and response_body.",errorCodes:["auth_error","fetch_error"],examples:["resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55","resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,ky,i);await W({loading:"Fetching log...",sdkCall:o=>o.logs.get(n),onInteractive:o=>{console.log(`${o.method} ${o.endpoint} \u2014 ${o.response_status}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),console.log(`User-Agent: ${o.user_agent??"(none)"}`),o.request_body&&console.log(`
571
+ 6. resend events delete <id> --yes`,examples:["resend events list",'resend events create --name "user.signed_up"',`resend events create --name "order.completed" --schema '{"amount":"number","currency":"string"}'`,"resend events get <id>",`resend events update <id> --schema '{"plan":"string"}'`,"resend events update <id> --schema null","resend events delete <id> --yes",'resend events send --event "user.signed_up" --contact-id <id>',`resend events send --event "user.signed_up" --email user@example.com --payload '{"plan":"pro"}'`]})).addCommand(Hl).addCommand(Gl).addCommand(Ml,{isDefault:!0}).addCommand(Wl).addCommand(Ll).addCommand(ql).addCommand(Ul);function Kl(t){let e=t.map(r=>[r.method,r.endpoint,String(r.response_status),r.created_at,r.id]);return N(["Method","Endpoint","Status","Created","ID"],e,"(no logs)")}var zl={resource:"log",resourcePlural:"logs",fetchItems:(t,{limit:e,after:r})=>t.logs.list({limit:e,...r&&{after:r}}),display:t=>({label:`${t.method} ${t.endpoint}`,hint:t.id})};var Jl=new p("get").description("Retrieve a single API request log with full request/response bodies").argument("[id]","Log ID").addHelpText("after",f({output:" Full log object including request_body and response_body.",errorCodes:["auth_error","fetch_error"],examples:["resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55","resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,zl,n);await H({loading:"Fetching log...",sdkCall:o=>o.logs.get(i),onInteractive:o=>{console.log(`${o.method} ${o.endpoint} \u2014 ${o.response_status}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`),console.log(`User-Agent: ${o.user_agent??"(none)"}`),o.request_body&&console.log(`
562
572
  Request Body:
563
573
  ${JSON.stringify(o.request_body,null,2)}`),o.response_body&&console.log(`
564
574
  Response Body:
565
- ${JSON.stringify(o.response_body,null,2)}`)}},i)});var Ey=new p("list").alias("ls").description("List API request logs").option("--limit <n>","Maximum number of logs to return (1-100)","10").option("--after <cursor>","Return logs after this cursor (next page)").option("--before <cursor>","Return logs before this cursor (previous page)").addHelpText("after",h({output:` {"object":"list","data":[...],"has_more":true}
566
- The list response does not include request/response bodies \u2014 use "resend logs get <id>" for that.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend logs list","resend logs list --limit 25 --json","resend logs list --after <cursor> --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching logs...",sdkCall:o=>o.logs.list(n),onInteractive:o=>{console.log(xy(o.data)),G(o,"logs list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Py=new p("open").description("Open a log or the logs list in the Resend dashboard").argument("[id]","Log ID \u2014 omit to open the logs list").addHelpText("after",h({context:`Opens the Resend dashboard in your default browser.
575
+ ${JSON.stringify(o.response_body,null,2)}`)}},n)});var Yl=new p("list").alias("ls").description("List API request logs").option("--limit <n>","Maximum number of logs to return (1-100)","10").option("--after <cursor>","Return logs after this cursor (next page)").option("--before <cursor>","Return logs before this cursor (previous page)").addHelpText("after",f({output:` {"object":"list","data":[...],"has_more":true}
576
+ The list response does not include request/response bodies \u2014 use "resend logs get <id>" for that.`,errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend logs list","resend logs list --limit 25 --json","resend logs list --after <cursor> --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching logs...",sdkCall:o=>o.logs.list(i),onInteractive:o=>{console.log(Kl(o.data)),M(o,"logs list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Ql=new p("open").description("Open a log or the logs list in the Resend dashboard").argument("[id]","Log ID \u2014 omit to open the logs list").addHelpText("after",f({context:`Opens the Resend dashboard in your default browser.
567
577
  With an ID: opens that log's detail page.
568
- Without an ID: opens the logs list.`,examples:["resend logs open","resend logs open 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55"]})).action(async(e,t,r)=>{let i=e?Oe.log(e):Oe.logs,n=r.optsWithGlobals();await Be(i,n)});var Ty=new p("logs").description("View API request logs").addHelpText("after",h({examples:["resend logs list","resend logs list --limit 25 --json","resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55","resend logs open","resend logs open 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55"]})).addCommand(Ay).addCommand(Ey,{isDefault:!0}).addCommand(Py);var Iy=new p("open").description("Open the Resend dashboard in your browser").addHelpText("after",h({context:"Opens https://resend.com/emails in your default browser.",examples:["resend open"]})).action(async(e,t)=>{let r=t.optsWithGlobals();await Be(Oe.emails,r)});var $y=new p("contacts").description("List contacts belonging to a segment").argument("[segmentId]","ID of the segment").option("--limit <n>","Maximum number of contacts to return (1-100)","10").option("--after <cursor>","Return contacts after this cursor (next page)").option("--before <cursor>","Return contacts before this cursor (previous page)").addHelpText("after",h({context:`Lists all contacts that belong to the given segment.
578
+ Without an ID: opens the logs list.`,examples:["resend logs open","resend logs open 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55"]})).action(async(t,e,r)=>{let n=t?de.log(t):de.logs,i=r.optsWithGlobals();await Se(n,i)});var Xl=new p("logs").description("View API request logs").addHelpText("after",f({examples:["resend logs list","resend logs list --limit 25 --json","resend logs get 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55","resend logs open","resend logs open 3d4a472d-bc6d-4dd2-aa9d-d3d11b549e55"]})).addCommand(Jl).addCommand(Yl,{isDefault:!0}).addCommand(Ql);var Zl=new p("open").description("Open the Resend dashboard in your browser").addHelpText("after",f({context:"Opens https://resend.com/emails in your default browser.",examples:["resend open"]})).action(async(t,e)=>{let r=e.optsWithGlobals();await Se(de.emails,r)});var ec=new p("contacts").description("List contacts belonging to a segment").argument("[segmentId]","ID of the segment").option("--limit <n>","Maximum number of contacts to return (1-100)","10").option("--after <cursor>","Return contacts after this cursor (next page)").option("--before <cursor>","Return contacts before this cursor (previous page)").addHelpText("after",f({context:`Lists all contacts that belong to the given segment.
569
579
 
570
580
  If no segment ID is provided interactively, a picker will prompt you to choose one.
571
581
 
572
582
  Pagination: use --after or --before with a contact ID as the cursor.
573
583
  Only one of --after or --before may be used at a time.
574
- The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"...","email":"...","first_name":"...","last_name":"...","unsubscribed":false}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf --limit 25 --json","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf --after 479e3145-dd38-4932-8c0c-e58b548c9e76"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,nt,i),o=L(t.limit,i),s=N(o,t.after,t.before,i);await D({loading:"Fetching segment contacts...",sdkCall:a=>a.contacts.list({segmentId:n,...s}),onInteractive:a=>{console.log(Na(a.data)),G(a,`segments contacts ${n}`,{limit:o,before:t.before,apiKey:i.apiKey,profile:i.profile})}},i)});var jy=new p("create").description("Create a new segment").option("--name <name>","Segment name (required)").addHelpText("after",h({context:`Segments are named groups of contacts. Broadcasts target segments via segment_id.
584
+ The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"...","email":"...","first_name":"...","last_name":"...","unsubscribed":false}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf --limit 25 --json","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf --after 479e3145-dd38-4932-8c0c-e58b548c9e76"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,He,n),o=L(e.limit,n),s=G(o,e.after,e.before,n);await P({loading:"Fetching segment contacts...",sdkCall:a=>a.contacts.list({segmentId:i,...s}),onInteractive:a=>{console.log(Zr(a.data)),M(a,`segments contacts ${i}`,{limit:o,before:e.before,apiKey:n.apiKey,profile:n.profile})}},n)});var tc=new p("create").description("Create a new segment").option("--name <name>","Segment name (required)").addHelpText("after",f({context:`Segments are named groups of contacts. Broadcasts target segments via segment_id.
575
585
  Contacts can belong to multiple segments. Audiences are deprecated \u2014 use segments instead.
576
586
 
577
- Non-interactive: --name is required.`,output:' {"object":"segment","id":"<uuid>","name":"<name>"}',errorCodes:["auth_error","missing_name","create_error"],examples:['resend segments create --name "Newsletter Subscribers"','resend segments create --name "Beta Users" --json']})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.name,{message:"Segment name",placeholder:"e.g. Newsletter Subscribers"},{message:"Missing --name flag.",code:"missing_name"},r);await te({loading:"Creating segment...",sdkCall:n=>n.segments.create({name:i}),onInteractive:n=>{console.log(`Segment created: ${n.id}`),console.log(`Name: ${n.name}`)}},r)});var Dy=new p("delete").alias("rm").description("Delete a segment").argument("[id]","Segment UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`Warning: Deleting a segment removes it as a target for future broadcasts,
587
+ Non-interactive: --name is required.`,output:' {"object":"segment","id":"<uuid>","name":"<name>"}',errorCodes:["auth_error","missing_name","create_error"],examples:['resend segments create --name "Newsletter Subscribers"','resend segments create --name "Beta Users" --json']})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.name,{message:"Segment name",placeholder:"e.g. Newsletter Subscribers"},{message:"Missing --name flag.",code:"missing_name"},r);await J({loading:"Creating segment...",sdkCall:i=>i.segments.create({name:n}),onInteractive:i=>{console.log(`Segment created: ${i.id}`),console.log(`Name: ${i.name}`)}},r)});var rc=new p("delete").alias("rm").description("Delete a segment").argument("[id]","Segment UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`Warning: Deleting a segment removes it as a target for future broadcasts,
578
588
  but does NOT delete the contacts within it.
579
589
 
580
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"segment","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,nt,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete segment "${n.label}"?
581
- ID: ${n.id}
582
- Contacts will not be deleted, but broadcasts targeting this segment will no longer work.`,loading:"Deleting segment...",object:"segment",successMsg:"Segment deleted",sdkCall:o=>o.segments.remove(n.id)},i)});var qy=new p("get").description("Retrieve a segment by ID").argument("[id]","Segment UUID").addHelpText("after",h({output:' {"object":"segment","id":"<uuid>","name":"<name>","created_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,nt,i);await W({loading:"Fetching segment...",sdkCall:o=>o.segments.get(n),onInteractive:o=>{console.log(`${o.name}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`)}},i)});var Ry=new p("list").alias("ls").description("List all segments").option("--limit <n>","Maximum number of segments to return (1-100)","10").option("--after <cursor>","Return segments after this cursor (next page)").option("--before <cursor>","Return segments before this cursor (previous page)").addHelpText("after",h({context:`Pagination: use --after or --before with a segment ID as the cursor.
590
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"segment","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,He,n);await re(i.id,!!e.yes,{confirmMessage:`Delete segment "${i.label}"?
591
+ ID: ${i.id}
592
+ Contacts will not be deleted, but broadcasts targeting this segment will no longer work.`,loading:"Deleting segment...",object:"segment",successMsg:"Segment deleted",sdkCall:o=>o.segments.remove(i.id)},n)});var nc=new p("get").description("Retrieve a segment by ID").argument("[id]","Segment UUID").addHelpText("after",f({output:' {"object":"segment","id":"<uuid>","name":"<name>","created_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,He,n);await H({loading:"Fetching segment...",sdkCall:o=>o.segments.get(i),onInteractive:o=>{console.log(`${o.name}`),console.log(`ID: ${o.id}`),console.log(`Created: ${o.created_at}`)}},n)});var ic=new p("list").alias("ls").description("List all segments").option("--limit <n>","Maximum number of segments to return (1-100)","10").option("--after <cursor>","Return segments after this cursor (next page)").option("--before <cursor>","Return segments before this cursor (previous page)").addHelpText("after",f({context:`Pagination: use --after or --before with a segment ID as the cursor.
583
593
  Only one of --after or --before may be used at a time.
584
594
  The response includes has_more: true when additional pages exist.
585
595
 
586
596
  Use "resend segments list" to discover segment IDs for use with broadcasts
587
- or "resend contacts add-segment".`,output:' {"object":"list","data":[{"id":"<uuid>","name":"<name>","created_at":"<iso-date>"}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend segments list","resend segments list --limit 25 --json","resend segments list --after 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching segments...",sdkCall:o=>o.segments.list(n),onInteractive:o=>{console.log(Ha(o.data)),G(o,"segments list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var My=new p("segments").description("Manage segments").addHelpText("after",h({context:`Segments are the modern replacement for Audiences (deprecated).
597
+ or "resend contacts add-segment".`,output:' {"object":"list","data":[{"id":"<uuid>","name":"<name>","created_at":"<iso-date>"}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend segments list","resend segments list --limit 25 --json","resend segments list --after 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching segments...",sdkCall:o=>o.segments.list(i),onInteractive:o=>{console.log(Yr(o.data)),M(o,"segments list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var oc=new p("segments").description("Manage segments").addHelpText("after",f({context:`Segments are the modern replacement for Audiences (deprecated).
588
598
  A segment is a named group of contacts. Broadcasts target segments via segment_id.
589
599
  Contacts can belong to multiple segments.
590
600
 
@@ -593,7 +603,7 @@ Segment membership is managed through the contacts namespace:
593
603
  resend contacts remove-segment <contactId> <segmentId>
594
604
  resend contacts segments <contactId>
595
605
 
596
- There is no "update" endpoint \u2014 to rename a segment, delete it and recreate.`,examples:["resend segments list",'resend segments create --name "Newsletter Subscribers"',"resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes"]})).addCommand($y).addCommand(jy).addCommand(qy).addCommand(Ry,{isDefault:!0}).addCommand(Dy);X();function Ya(e){return e.map(t=>{let[r,i,...n]=t.split(":");if(!r)throw new Error(`Invalid --var "${t}": key is required.`);if(i!=="string"&&i!=="number")throw new Error(`Invalid --var "${t}": type must be "string" or "number".`);let o=n.length?n.join(":"):void 0;if(o!=null&&o==="")throw new Error(`Invalid --var "${t}": fallback value cannot be empty.`);let s=o;if(i==="number"){if(s!=null&&Number.isNaN(Number(s)))throw new Error(`Invalid --var "${t}": fallback "${s}" is not a valid number.`);return{key:r,type:"number",...s!=null?{fallbackValue:Number(s)}:{}}}return{key:r,type:"string",...s!=null?{fallbackValue:s}:{}}})}var ft={resource:"template",resourcePlural:"templates",fetchItems:(e,{limit:t,after:r})=>e.templates.list({limit:t,...r&&{after:r}}),display:e=>({label:e.name,hint:e.id})};function zy(e){let t=e.map(r=>[r.name,r.status,r.alias??"",r.id,r.created_at]);return F(["Name","Status","Alias","ID","Created"],t,"(no templates)")}var Jy=new p("create").description("Create a new template").option("--name <name>","Template name \u2014 required").option("--html <html>","HTML body").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin)').option("--subject <subject>","Email subject").option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--from <address>","Sender address").option("--reply-to <address>","Reply-to address").option("--alias <alias>","Template alias for lookup by name").option("--var <var...>","Template variable: KEY:type or KEY:type:fallback (repeatable)").addHelpText("after",h({context:`Creates a new draft template. Use "resend templates publish" to make it available for sending.
606
+ There is no "update" endpoint \u2014 to rename a segment, delete it and recreate.`,examples:["resend segments list",'resend segments create --name "Newsletter Subscribers"',"resend segments get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments contacts 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend segments delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes"]})).addCommand(ec).addCommand(tc).addCommand(nc).addCommand(ic,{isDefault:!0}).addCommand(rc);z();function sn(t){return t.map(e=>{let[r,n,...i]=e.split(":");if(!r)throw new Error(`Invalid --var "${e}": key is required.`);if(n!=="string"&&n!=="number")throw new Error(`Invalid --var "${e}": type must be "string" or "number".`);let o=i.length?i.join(":"):void 0;if(o!=null&&o==="")throw new Error(`Invalid --var "${e}": fallback value cannot be empty.`);let s=o;if(n==="number"){if(s!=null&&Number.isNaN(Number(s)))throw new Error(`Invalid --var "${e}": fallback "${s}" is not a valid number.`);return{key:r,type:"number",...s!=null?{fallbackValue:Number(s)}:{}}}return{key:r,type:"string",...s!=null?{fallbackValue:s}:{}}})}var ze={resource:"template",resourcePlural:"templates",fetchItems:(t,{limit:e,after:r})=>t.templates.list({limit:e,...r&&{after:r}}),display:t=>({label:t.name,hint:t.id})};function sc(t){let e=t.map(r=>[r.name,r.status,r.alias??"",r.id,r.created_at]);return N(["Name","Status","Alias","ID","Created"],e,"(no templates)")}var ac=new p("create").description("Create a new template").option("--name <name>","Template name \u2014 required").option("--html <html>","HTML body").option("--html-file <path>",'Path to an HTML file for the body (use "-" for stdin)').option("--subject <subject>","Email subject").option("--text <text>","Plain-text body").option("--text-file <path>",'Path to a plain-text file for the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--from <address>","Sender address").option("--reply-to <address>","Reply-to address").option("--alias <alias>","Template alias for lookup by name").option("--var <var...>","Template variable: KEY:type or KEY:type:fallback (repeatable)").addHelpText("after",f({context:`Creates a new draft template. Use "resend templates publish" to make it available for sending.
597
607
 
598
608
  --name is required. Body: provide --html, --html-file, or --react-email. Optionally add --text or --text-file for plain-text.
599
609
 
@@ -603,24 +613,24 @@ There is no "update" endpoint \u2014 to rename a segment, delete it and recreate
603
613
  --html "<p>Hi {{{NAME}}}, your total is {{{PRICE}}}</p>"
604
614
  --var NAME:string --var PRICE:number:0
605
615
 
606
- Non-interactive: --name and a body (--html, --html-file, or --react-email) are required. --text-file provides a plain-text fallback.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","missing_name","missing_body","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","create_error"],examples:['resend templates create --name "Welcome" --html "<h1>Hello</h1>" --subject "Welcome!"','resend templates create --name "Newsletter" --html-file ./template.html --from acme@example.com','resend templates create --name "Onboarding" --html "<p>Hi</p>" --alias onboarding --json','resend templates create --name "Order" --html "<p>{{{PRODUCT}}}: {{{PRICE}}}</p>" --var PRODUCT:string:item --var PRICE:number:25']})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=e.name;if(!i){(!O()||r.json)&&g({message:"Missing --name flag.",code:"missing_name"},{json:r.json});let s=await ee({message:"Template name",placeholder:"e.g. Welcome Email",validate:a=>a?void 0:"Required"});k(s)&&T("Cancelled."),i=s}e.htmlFile==="-"&&e.textFile==="-"&&g({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),e.reactEmail&&(e.html||e.htmlFile)&&g({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:r.json});let n=e.html,o=e.text;if(e.htmlFile&&(e.html&&process.stderr.write(`Warning: both --html and --html-file provided; using --html-file
607
- `),n=ge(e.htmlFile,r)),e.textFile&&(e.text&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
608
- `),o=ge(e.textFile,r)),e.reactEmail&&(n=await it(e.reactEmail,r)),!n){(!O()||r.json)&&g({message:"Missing body. Provide --html, --html-file, or --react-email.",code:"missing_body"},{json:r.json});let s=await ee({message:"HTML body",placeholder:"<h1>Hello {{name}}</h1>",validate:a=>a?void 0:"Required"});k(s)&&T("Cancelled."),n=s}await te({loading:"Creating template...",sdkCall:s=>Promise.resolve(s.templates.create({name:i,html:n,...e.subject&&{subject:e.subject},...o&&{text:o},...e.from&&{from:e.from},...e.replyTo&&{replyTo:e.replyTo},...e.alias&&{alias:e.alias},...e.var&&{variables:Ya(e.var)}})),onInteractive:s=>{console.log(`Template created: ${s.id}`)}},r)});var Fy=new p("delete").alias("rm").description("Delete a template").argument("[id]","Template ID or alias").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`Warning: Deleting a template is permanent and cannot be undone.
616
+ Non-interactive: --name and a body (--html, --html-file, or --react-email) are required. --text-file provides a plain-text fallback.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","missing_name","missing_body","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","create_error"],examples:['resend templates create --name "Welcome" --html "<h1>Hello</h1>" --subject "Welcome!"','resend templates create --name "Newsletter" --html-file ./template.html --from acme@example.com','resend templates create --name "Onboarding" --html "<p>Hi</p>" --alias onboarding --json','resend templates create --name "Order" --html "<p>{{{PRODUCT}}}: {{{PRICE}}}</p>" --var PRODUCT:string:item --var PRICE:number:25']})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=t.name;if(!n){(!w()||r.json)&&h({message:"Missing --name flag.",code:"missing_name"},{json:r.json});let s=await Y({message:"Template name",placeholder:"e.g. Welcome Email",validate:a=>a?void 0:"Required"});k(s)&&S("Cancelled."),n=s}t.htmlFile==="-"&&t.textFile==="-"&&h({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:r.json}),t.reactEmail&&(t.html||t.htmlFile)&&h({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:r.json});let i=t.html,o=t.text;if(t.htmlFile&&(t.html&&process.stderr.write(`Warning: both --html and --html-file provided; using --html-file
617
+ `),i=ce(t.htmlFile,r)),t.textFile&&(t.text&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
618
+ `),o=ce(t.textFile,r)),t.reactEmail&&(i=await Ne(t.reactEmail,r)),!i){(!w()||r.json)&&h({message:"Missing body. Provide --html, --html-file, or --react-email.",code:"missing_body"},{json:r.json});let s=await Y({message:"HTML body",placeholder:"<h1>Hello {{name}}</h1>",validate:a=>a?void 0:"Required"});k(s)&&S("Cancelled."),i=s}await J({loading:"Creating template...",sdkCall:s=>Promise.resolve(s.templates.create({name:n,html:i,...t.subject&&{subject:t.subject},...o&&{text:o},...t.from&&{from:t.from},...t.replyTo&&{replyTo:t.replyTo},...t.alias&&{alias:t.alias},...t.var&&{variables:sn(t.var)}})),onInteractive:s=>{console.log(`Template created: ${s.id}`)}},r)});var lc=new p("delete").alias("rm").description("Delete a template").argument("[id]","Template ID or alias").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`Warning: Deleting a template is permanent and cannot be undone.
609
619
 
610
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"template","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend templates rm my-template-alias --yes","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,ft,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete template "${n.label}"?
611
- ID: ${n.id}
612
- This action is permanent and cannot be undone.`,loading:"Deleting template...",object:"template",successMsg:"Template deleted",sdkCall:o=>o.templates.remove(n.id)},i)});var Hy=new p("duplicate").description("Duplicate a template").argument("[id]","Template ID or alias to duplicate").addHelpText("after",h({context:`Creates a copy of an existing template and returns the new template ID.
620
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"template","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend templates rm my-template-alias --yes","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,ze,n);await re(i.id,!!e.yes,{confirmMessage:`Delete template "${i.label}"?
621
+ ID: ${i.id}
622
+ This action is permanent and cannot be undone.`,loading:"Deleting template...",object:"template",successMsg:"Template deleted",sdkCall:o=>o.templates.remove(i.id)},n)});var cc=new p("duplicate").description("Duplicate a template").argument("[id]","Template ID or alias to duplicate").addHelpText("after",f({context:`Creates a copy of an existing template and returns the new template ID.
613
623
  The duplicate is created as a draft with " (Copy)" appended to the original name.
614
- All fields (HTML, subject, variables, etc.) are copied to the new template.`,output:' {"object":"template","id":"<new-template-id>"}',errorCodes:["auth_error","create_error"],examples:["resend templates duplicate 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates duplicate my-template-alias --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,ft,i);await te({loading:"Duplicating template...",sdkCall:o=>Promise.resolve(o.templates.duplicate(n)),onInteractive:o=>{console.log(`Template duplicated: ${o.id}`)}},i)});var By=new p("get").description("Retrieve a template by ID or alias").argument("[id]","Template ID or alias").addHelpText("after",h({context:"Returns the full template including HTML body, variables, and publication status.",output:' {"object":"template","id":"...","name":"...","subject":"...","status":"draft|published","html":"...","alias":"...","from":"...","reply_to":["..."],"variables":[...],"created_at":"...","updated_at":"..."}',errorCodes:["auth_error","fetch_error"],examples:["resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates get my-template-alias","resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,ft,i);await W({loading:"Fetching template...",sdkCall:o=>o.templates.get(n),onInteractive:o=>{if(console.log(`${o.name}`),console.log(`ID: ${o.id}`),console.log(`Status: ${o.status}`),o.alias&&console.log(`Alias: ${o.alias}`),o.subject&&console.log(`Subject: ${o.subject}`),o.from&&console.log(`From: ${o.from}`),o.reply_to?.length&&console.log(`Reply-To: ${o.reply_to.join(", ")}`),o.html){let s=o.html.length>200?`${o.html.slice(0,197)}...`:o.html;console.log(`HTML: ${s}`)}o.variables?.length&&console.log(`Variables: ${o.variables.map(s=>s.key).join(", ")}`),o.published_at&&console.log(`Published: ${o.published_at}`),console.log(`Created: ${o.created_at}`),console.log(`Updated: ${o.updated_at}`)}},i)});var Ly=new p("list").alias("ls").description("List all templates").option("--limit <n>","Maximum number of templates to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",h({output:' {"object":"list","has_more":false,"data":[{"id":"...","name":"...","status":"draft|published","alias":"...","created_at":"..."}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend templates list","resend templates list --limit 5","resend templates list --after <template-id> --limit 10","resend templates list --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching templates...",sdkCall:o=>o.templates.list(n),onInteractive:o=>{console.log(zy(o.data)),G(o,"templates list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Ny=new p("open").description("Open a template or the templates list in the Resend dashboard").argument("[id]","Template ID \u2014 omit to open the templates list").addHelpText("after",h({context:`Opens the Resend dashboard in your default browser.
624
+ All fields (HTML, subject, variables, etc.) are copied to the new template.`,output:' {"object":"template","id":"<new-template-id>"}',errorCodes:["auth_error","create_error"],examples:["resend templates duplicate 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates duplicate my-template-alias --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,ze,n);await J({loading:"Duplicating template...",sdkCall:o=>Promise.resolve(o.templates.duplicate(i)),onInteractive:o=>{console.log(`Template duplicated: ${o.id}`)}},n)});var uc=new p("get").description("Retrieve a template by ID or alias").argument("[id]","Template ID or alias").addHelpText("after",f({context:"Returns the full template including HTML body, variables, and publication status.",output:' {"object":"template","id":"...","name":"...","subject":"...","status":"draft|published","html":"...","alias":"...","from":"...","reply_to":["..."],"variables":[...],"created_at":"...","updated_at":"..."}',errorCodes:["auth_error","fetch_error"],examples:["resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates get my-template-alias","resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,ze,n);await H({loading:"Fetching template...",sdkCall:o=>o.templates.get(i),onInteractive:o=>{if(console.log(`${o.name}`),console.log(`ID: ${o.id}`),console.log(`Status: ${o.status}`),o.alias&&console.log(`Alias: ${o.alias}`),o.subject&&console.log(`Subject: ${o.subject}`),o.from&&console.log(`From: ${o.from}`),o.reply_to?.length&&console.log(`Reply-To: ${o.reply_to.join(", ")}`),o.html){let s=o.html.length>200?`${o.html.slice(0,197)}...`:o.html;console.log(`HTML: ${s}`)}o.variables?.length&&console.log(`Variables: ${o.variables.map(s=>s.key).join(", ")}`),o.published_at&&console.log(`Published: ${o.published_at}`),console.log(`Created: ${o.created_at}`),console.log(`Updated: ${o.updated_at}`)}},n)});var dc=new p("list").alias("ls").description("List all templates").option("--limit <n>","Maximum number of templates to return (1-100)","10").option("--after <cursor>","Cursor for forward pagination \u2014 list items after this ID").option("--before <cursor>","Cursor for backward pagination \u2014 list items before this ID").addHelpText("after",f({output:' {"object":"list","has_more":false,"data":[{"id":"...","name":"...","status":"draft|published","alias":"...","created_at":"..."}]}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend templates list","resend templates list --limit 5","resend templates list --after <template-id> --limit 10","resend templates list --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching templates...",sdkCall:o=>o.templates.list(i),onInteractive:o=>{console.log(sc(o.data)),M(o,"templates list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var mc=new p("open").description("Open a template or the templates list in the Resend dashboard").argument("[id]","Template ID \u2014 omit to open the templates list").addHelpText("after",f({context:`Opens the Resend dashboard in your default browser.
615
625
  With an ID: opens that template's page for editing or viewing.
616
- Without an ID: opens the templates list.`,examples:["resend templates open","resend templates open 78261eea-8f8b-4381-83c6-79fa7120f1cf"]})).action(async(e,t,r)=>{let i=e?Oe.template(e):Oe.templates,n=r.optsWithGlobals();await Be(i,n)});var Gy=new p("publish").description("Publish a draft template").argument("[id]","Template ID or alias").addHelpText("after",h({context:`Promotes a draft template to published status, making it available for use in emails.
626
+ Without an ID: opens the templates list.`,examples:["resend templates open","resend templates open 78261eea-8f8b-4381-83c6-79fa7120f1cf"]})).action(async(t,e,r)=>{let n=t?de.template(t):de.templates,i=r.optsWithGlobals();await Se(n,i)});var pc=new p("publish").description("Publish a draft template").argument("[id]","Template ID or alias").addHelpText("after",f({context:`Promotes a draft template to published status, making it available for use in emails.
617
627
  After updating a published template, re-publish to make the changes live.
618
- Publishing an already-published template re-publishes it with the latest draft changes.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","publish_error"],examples:["resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,ft,i);await J({loading:"Publishing template...",sdkCall:o=>o.templates.publish(n),errorCode:"publish_error",successMsg:`Template published: ${n}`,retryTransient:!0},i)});var Uy=new p("update").description("Update an existing template").argument("[id]","Template ID or alias").option("--name <name>","Update template name").option("--html <html>","Update HTML body").option("--html-file <path>",'Path to an HTML file to replace the body (use "-" for stdin)').option("--subject <subject>","Update subject").option("--text <text>","Update plain-text body").option("--text-file <path>",'Path to a plain-text file to replace the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--from <address>","Update sender address").option("--reply-to <address>","Update reply-to address").option("--alias <alias>","Update template alias").option("--var <var...>","Template variable: KEY:type or KEY:type:fallback (repeatable)").addHelpText("after",h({context:`At least one option is required. Only the provided fields are changed; others are left as-is.
628
+ Publishing an already-published template re-publishes it with the latest draft changes.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","publish_error"],examples:["resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,ze,n);await R({loading:"Publishing template...",sdkCall:o=>o.templates.publish(i),errorCode:"publish_error",successMsg:`Template published: ${i}`,retryTransient:!0},n)});var fc=new p("update").description("Update an existing template").argument("[id]","Template ID or alias").option("--name <name>","Update template name").option("--html <html>","Update HTML body").option("--html-file <path>",'Path to an HTML file to replace the body (use "-" for stdin)').option("--subject <subject>","Update subject").option("--text <text>","Update plain-text body").option("--text-file <path>",'Path to a plain-text file to replace the body (use "-" for stdin)').option("--react-email <path>","Path to a React Email template (.tsx) to bundle, render, and use as HTML body").option("--from <address>","Update sender address").option("--reply-to <address>","Update reply-to address").option("--alias <alias>","Update template alias").option("--var <var...>","Template variable: KEY:type or KEY:type:fallback (repeatable)").addHelpText("after",f({context:`At least one option is required. Only the provided fields are changed; others are left as-is.
619
629
 
620
630
  --var declares a template variable using the format KEY:type or KEY:type:fallback.
621
631
  Valid types: string, number.
622
- Variables must match {{{KEY}}} placeholders in the HTML body.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","no_changes","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","update_error"],examples:['resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Updated Name"',"resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --html-file ./new-template.html",'resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --subject "New Subject" --from "acme@example.com" --json',"resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --var PRODUCT:string:item --var PRICE:number:25"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals();t.name==null&&t.html==null&&t.htmlFile==null&&t.reactEmail==null&&t.subject==null&&t.text==null&&t.textFile==null&&t.from==null&&t.replyTo==null&&t.alias==null&&t.var==null&&g({message:"Provide at least one option to update: --name, --html, --html-file, --react-email, --subject, --text, --text-file, --from, --reply-to, --alias, or --var.",code:"no_changes"},{json:i.json}),t.reactEmail!=null&&(t.html!=null||t.htmlFile!=null)&&g({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:i.json}),t.html!=null&&t.htmlFile!=null&&g({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:i.json}),t.htmlFile==="-"&&t.textFile==="-"&&g({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:i.json});let n=await C(e,ft,i),o=t.html,s=t.text;t.htmlFile!=null&&(o=ge(t.htmlFile,i)),t.textFile!=null&&(t.text!=null&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
623
- `),s=ge(t.textFile,i)),t.reactEmail!=null&&(o=await it(t.reactEmail,i)),await J({loading:"Updating template...",sdkCall:a=>a.templates.update(n,{...t.name!=null&&{name:t.name},...o!=null&&{html:o},...t.subject!=null&&{subject:t.subject},...s!=null&&{text:s},...t.from!=null&&{from:t.from},...t.replyTo!=null&&{replyTo:t.replyTo},...t.alias!=null&&{alias:t.alias},...t.var!=null&&{variables:Ya(t.var)}}),errorCode:"update_error",successMsg:`Template updated: ${n}`,retryTransient:!0},i)});var Wy=new p("templates").description("Manage templates").addHelpText("after",h({context:`Lifecycle:
632
+ Variables must match {{{KEY}}} placeholders in the HTML body.`,output:' {"object":"template","id":"<template-id>"}',errorCodes:["auth_error","no_changes","file_read_error","invalid_options","stdin_read_error","react_email_build_error","react_email_render_error","update_error"],examples:['resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Updated Name"',"resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --html-file ./new-template.html",'resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --subject "New Subject" --from "acme@example.com" --json',"resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --var PRODUCT:string:item --var PRICE:number:25"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals();e.name==null&&e.html==null&&e.htmlFile==null&&e.reactEmail==null&&e.subject==null&&e.text==null&&e.textFile==null&&e.from==null&&e.replyTo==null&&e.alias==null&&e.var==null&&h({message:"Provide at least one option to update: --name, --html, --html-file, --react-email, --subject, --text, --text-file, --from, --reply-to, --alias, or --var.",code:"no_changes"},{json:n.json}),e.reactEmail!=null&&(e.html!=null||e.htmlFile!=null)&&h({message:"Cannot use --react-email with --html or --html-file",code:"invalid_options"},{json:n.json}),e.html!=null&&e.htmlFile!=null&&h({message:"--html and --html-file are mutually exclusive.",code:"invalid_options"},{json:n.json}),e.htmlFile==="-"&&e.textFile==="-"&&h({message:"Cannot read both --html-file and --text-file from stdin. Pipe to one and pass the other as a file path.",code:"invalid_options"},{json:n.json});let i=await C(t,ze,n),o=e.html,s=e.text;e.htmlFile!=null&&(o=ce(e.htmlFile,n)),e.textFile!=null&&(e.text!=null&&process.stderr.write(`Warning: both --text and --text-file provided; using --text-file
633
+ `),s=ce(e.textFile,n)),e.reactEmail!=null&&(o=await Ne(e.reactEmail,n)),await R({loading:"Updating template...",sdkCall:a=>a.templates.update(i,{...e.name!=null&&{name:e.name},...o!=null&&{html:o},...e.subject!=null&&{subject:e.subject},...s!=null&&{text:s},...e.from!=null&&{from:e.from},...e.replyTo!=null&&{replyTo:e.replyTo},...e.alias!=null&&{alias:e.alias},...e.var!=null&&{variables:sn(e.var)}}),errorCode:"update_error",successMsg:`Template updated: ${i}`,retryTransient:!0},n)});var hc=new p("templates").description("Manage templates").addHelpText("after",f({context:`Lifecycle:
624
634
  Templates follow a draft \u2192 published workflow:
625
635
  1. create \u2014 creates a draft template
626
636
  2. update \u2014 edits name, subject, HTML, variables, etc.
@@ -634,7 +644,7 @@ Template variables:
634
644
  Each variable must be declared with --var when creating or updating:
635
645
  --var KEY:type e.g. --var NAME:string
636
646
  --var KEY:type:fallback e.g. --var PRICE:number:25
637
- Valid types: string, number.`,examples:["resend templates list",'resend templates create --name "Welcome" --html "<h1>Hello {{{NAME}}}</h1>" --subject "Welcome!" --var NAME:string',"resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf",'resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --subject "Updated Subject"',"resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates duplicate 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend templates open","resend templates open 78261eea-8f8b-4381-83c6-79fa7120f1cf"]})).addCommand(Jy).addCommand(By).addCommand(Ny).addCommand(Ly,{isDefault:!0}).addCommand(Uy).addCommand(Fy).addCommand(Gy).addCommand(Hy);var Vy=new p("create").description("Create a new topic for subscription management").option("--name <name>","Topic name (required)").option("--description <description>","Description shown to contacts when managing subscriptions").addOption(new le("--default-subscription <mode>","Default subscription state for contacts").choices(["opt_in","opt_out"]).default("opt_in")).addHelpText("after",h({context:`Topics enable fine-grained subscription management. Contacts can opt in or out of
647
+ Valid types: string, number.`,examples:["resend templates list",'resend templates create --name "Welcome" --html "<h1>Hello {{{NAME}}}</h1>" --subject "Welcome!" --var NAME:string',"resend templates get 78261eea-8f8b-4381-83c6-79fa7120f1cf",'resend templates update 78261eea-8f8b-4381-83c6-79fa7120f1cf --subject "Updated Subject"',"resend templates publish 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates duplicate 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend templates delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend templates open","resend templates open 78261eea-8f8b-4381-83c6-79fa7120f1cf"]})).addCommand(ac).addCommand(uc).addCommand(mc).addCommand(dc,{isDefault:!0}).addCommand(fc).addCommand(lc).addCommand(pc).addCommand(cc);var gc=new p("create").description("Create a new topic for subscription management").option("--name <name>","Topic name (required)").option("--description <description>","Description shown to contacts when managing subscriptions").addOption(new ee("--default-subscription <mode>","Default subscription state for contacts").choices(["opt_in","opt_out"]).default("opt_in")).addHelpText("after",f({context:`Topics enable fine-grained subscription management. Contacts can opt in or out of
638
648
  individual topics. Broadcasts can target only contacts opted into a specific topic.
639
649
 
640
650
  Example topics: "Product Updates", "Security Alerts", "Weekly Digest".
@@ -643,16 +653,16 @@ Example topics: "Product Updates", "Security Alerts", "Weekly Digest".
643
653
  opt_in Contacts receive broadcasts unless they explicitly opt out (default)
644
654
  opt_out Contacts do NOT receive broadcasts unless they explicitly opt in
645
655
 
646
- Non-interactive: --name is required.`,output:' {"id":"<uuid>"}',errorCodes:["auth_error","missing_name","create_error"],examples:['resend topics create --name "Product Updates"','resend topics create --name "Weekly Digest" --default-subscription opt_out','resend topics create --name "Security Alerts" --description "Critical security notices" --json']})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.name,{message:"Topic name",placeholder:"e.g. Product Updates"},{message:"Missing --name flag.",code:"missing_name"},r);await te({loading:"Creating topic...",sdkCall:n=>n.topics.create({name:i,defaultSubscription:e.defaultSubscription,...e.description&&{description:e.description}}),onInteractive:n=>{console.log(`Topic created: ${n.id}`)}},r)});var Ky=new p("delete").alias("rm").description("Delete a topic").argument("[id]","Topic UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`Warning: Deleting a topic removes all contact subscriptions to that topic and may affect
656
+ Non-interactive: --name is required.`,output:' {"id":"<uuid>"}',errorCodes:["auth_error","missing_name","create_error"],examples:['resend topics create --name "Product Updates"','resend topics create --name "Weekly Digest" --default-subscription opt_out','resend topics create --name "Security Alerts" --description "Critical security notices" --json']})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.name,{message:"Topic name",placeholder:"e.g. Product Updates"},{message:"Missing --name flag.",code:"missing_name"},r);await J({loading:"Creating topic...",sdkCall:i=>i.topics.create({name:n,defaultSubscription:t.defaultSubscription,...t.description&&{description:t.description}}),onInteractive:i=>{console.log(`Topic created: ${i.id}`)}},r)});var bc=new p("delete").alias("rm").description("Delete a topic").argument("[id]","Topic UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`Warning: Deleting a topic removes all contact subscriptions to that topic and may affect
647
657
  broadcasts that reference this topic_id. Contacts themselves are not deleted.
648
658
 
649
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"topic","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,$t,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete topic "${n.label}"?
650
- ID: ${n.id}
651
- All contact subscriptions and broadcast associations will be removed.`,loading:"Deleting topic...",object:"topic",successMsg:"Topic deleted",sdkCall:o=>o.topics.remove(n.id)},i)});var Yy=new p("get").description("Retrieve a topic by ID").argument("[id]","Topic UUID").addHelpText("after",h({output:' {"id":"<uuid>","name":"<name>","description":"<desc>","default_subscription":"opt_in|opt_out","created_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,$t,i);await W({loading:"Fetching topic...",sdkCall:o=>o.topics.get(n),onInteractive:o=>{console.log(`${o.name}`),console.log(`ID: ${o.id}`),o.description&&console.log(`Description: ${o.description}`),console.log(`Default subscription: ${o.default_subscription}`),console.log(`Created: ${o.created_at}`)}},i)});var Qy=new p("list").alias("ls").description("List all topics").addHelpText("after",h({context:`Returns all topics in your account. Topic subscription management for individual
652
- contacts is handled via "resend contacts topics <contactId>".`,output:' {"data":[{"id":"<uuid>","name":"<name>","description":"<desc>","default_subscription":"opt_in|opt_out","created_at":"<iso-date>"}]}',errorCodes:["auth_error","list_error"],examples:["resend topics list","resend topics list --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals();await D({loading:"Fetching topics...",sdkCall:i=>i.topics.list(),onInteractive:i=>console.log(G_(i.data))},r)});var Zy=new p("update").description("Update a topic's name or description").argument("[id]","Topic UUID").option("--name <name>","New topic name").option("--description <description>","New description shown to contacts").addHelpText("after",h({context:`At least one of --name or --description must be provided to update the topic.
659
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"topic","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes","resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,ct,n);await re(i.id,!!e.yes,{confirmMessage:`Delete topic "${i.label}"?
660
+ ID: ${i.id}
661
+ All contact subscriptions and broadcast associations will be removed.`,loading:"Deleting topic...",object:"topic",successMsg:"Topic deleted",sdkCall:o=>o.topics.remove(i.id)},n)});var yc=new p("get").description("Retrieve a topic by ID").argument("[id]","Topic UUID").addHelpText("after",f({output:' {"id":"<uuid>","name":"<name>","description":"<desc>","default_subscription":"opt_in|opt_out","created_at":"<iso-date>"}',errorCodes:["auth_error","fetch_error"],examples:["resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf","resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,ct,n);await H({loading:"Fetching topic...",sdkCall:o=>o.topics.get(i),onInteractive:o=>{console.log(`${o.name}`),console.log(`ID: ${o.id}`),o.description&&console.log(`Description: ${o.description}`),console.log(`Default subscription: ${o.default_subscription}`),console.log(`Created: ${o.created_at}`)}},n)});var vc=new p("list").alias("ls").description("List all topics").addHelpText("after",f({context:`Returns all topics in your account. Topic subscription management for individual
662
+ contacts is handled via "resend contacts topics <contactId>".`,output:' {"data":[{"id":"<uuid>","name":"<name>","description":"<desc>","default_subscription":"opt_in|opt_out","created_at":"<iso-date>"}]}',errorCodes:["auth_error","list_error"],examples:["resend topics list","resend topics list --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals();await P({loading:"Fetching topics...",sdkCall:n=>n.topics.list(),onInteractive:n=>console.log(ca(n.data))},r)});var Cc=new p("update").description("Update a topic's name or description").argument("[id]","Topic UUID").option("--name <name>","New topic name").option("--description <description>","New description shown to contacts").addHelpText("after",f({context:`At least one of --name or --description must be provided to update the topic.
653
663
 
654
664
  Note: --default-subscription cannot be changed after creation.
655
- To change the default subscription, delete the topic and recreate it.`,output:' {"id":"<uuid>"}',errorCodes:["auth_error","no_changes","update_error"],examples:['resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Security Alerts"','resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --description "Critical notices" --json']})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,$t,i);!t.name&&!t.description&&g({message:"Provide at least one option to update: --name or --description.",code:"no_changes"},{json:i.json}),await J({loading:"Updating topic...",sdkCall:o=>o.topics.update({id:n,...t.name&&{name:t.name},...t.description&&{description:t.description}}),errorCode:"update_error",successMsg:`Topic updated: ${n}`},i)});var Xy=new p("topics").description("Manage topics for contact subscription preferences").addHelpText("after",h({context:`Topics enable fine-grained subscription management beyond the global unsubscribe flag.
665
+ To change the default subscription, delete the topic and recreate it.`,output:' {"id":"<uuid>"}',errorCodes:["auth_error","no_changes","update_error"],examples:['resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Security Alerts"','resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --description "Critical notices" --json']})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,ct,n);!e.name&&!e.description&&h({message:"Provide at least one option to update: --name or --description.",code:"no_changes"},{json:n.json}),await R({loading:"Updating topic...",sdkCall:o=>o.topics.update({id:i,...e.name&&{name:e.name},...e.description&&{description:e.description}}),errorCode:"update_error",successMsg:`Topic updated: ${i}`},n)});var wc=new p("topics").description("Manage topics for contact subscription preferences").addHelpText("after",f({context:`Topics enable fine-grained subscription management beyond the global unsubscribe flag.
656
666
  A contact can opt in or out of individual topics independently.
657
667
 
658
668
  Broadcasts can target a topic_id so only contacts who have opted into that topic
@@ -665,11 +675,11 @@ Subscription states:
665
675
 
666
676
  Contact topic subscriptions are managed via the contacts namespace:
667
677
  resend contacts topics <contactId>
668
- resend contacts update-topics <contactId> --topic-id <id> --subscription opt_in`,examples:["resend topics list",'resend topics create --name "Product Updates"','resend topics create --name "Weekly Digest" --default-subscription opt_out',"resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf",'resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Security Alerts"',"resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes"]})).addCommand(Vy).addCommand(Yy).addCommand(Qy,{isDefault:!0}).addCommand(Zy).addCommand(Ky);X();oi();Mt();var e0=new p("update").description("Check for available CLI updates").addHelpText("after",h({context:`Checks the latest release on GitHub (bypasses the cache).
678
+ resend contacts update-topics <contactId> --topic-id <id> --subscription opt_in`,examples:["resend topics list",'resend topics create --name "Product Updates"','resend topics create --name "Weekly Digest" --default-subscription opt_out',"resend topics get 78261eea-8f8b-4381-83c6-79fa7120f1cf",'resend topics update 78261eea-8f8b-4381-83c6-79fa7120f1cf --name "Security Alerts"',"resend topics delete 78261eea-8f8b-4381-83c6-79fa7120f1cf --yes"]})).addCommand(gc).addCommand(yc).addCommand(vc,{isDefault:!0}).addCommand(Cc).addCommand(bc);z();dr();ht();var _c=new p("update").description("Check for available CLI updates").addHelpText("after",f({context:`Checks the latest release on GitHub (bypasses the cache).
669
679
  Shows the current version, latest version, and how to upgrade.`,output:` {"current":"1.4.0","latest":"1.5.0","update_available":true,"upgrade_command":"npm install -g resend-cli"}
670
- {"current":"1.5.0","latest":"1.5.0","update_available":false}`,examples:["resend update","resend update --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),n=O()&&!r.json?fe("Checking for updates..."):null,o=await gc();if(!o){n?.fail("Could not check for updates"),g({message:"Could not reach GitHub releases",code:"fetch_failed"},{json:r.json});return}let s=Ua(se,o),a=Wa();if(r.json||!O()){z({current:se,latest:o,update_available:s,...s?{upgrade_command:a}:{}},{json:r.json});return}if(s){let u=a.startsWith("http");n?.warn(`Update available: v${se} \u2192 v${o}`),console.log(`
671
- ${u?"Visit":"Run"}: \x1B[36m${a}\x1B[0m
672
- `)}else n?.stop(`Already up to date (v${se})`)});X();var vt=["email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.suppressed","email.received","contact.created","contact.updated","contact.deleted","domain.created","domain.updated","domain.deleted"];function Dr(e){return e.flatMap(t=>t.split(",")).map(t=>t.trim()).filter(Boolean)}var qr={resource:"webhook",resourcePlural:"webhooks",fetchItems:(e,{limit:t,after:r})=>e.webhooks.list({limit:t,...r&&{after:r}}),display:e=>({label:e.endpoint,hint:e.id})};function t0(e){let t=e.map(r=>{let i=(r.events??[]).join(", "),n=i.length>60?`${i.slice(0,57)}...`:i;return[r.endpoint,n,r.status,r.id]});return F(["Endpoint","Events","Status","ID"],t,"(no webhooks)")}var r0=new p("create").description("Register a new webhook endpoint to receive real-time event notifications").option("--endpoint <endpoint>","HTTPS URL to receive webhook events (required)").option("--events <events...>",'Event types to subscribe to (comma or space-separated). Use "all" for all 17 events.').addHelpText("after",h({context:`Webhooks deliver real-time event notifications to your HTTPS endpoint.
680
+ {"current":"1.5.0","latest":"1.5.0","update_available":false}`,examples:["resend update","resend update --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),i=w()&&!r.json?ae("Checking for updates..."):null,o=await fi();if(!o){i?.fail("Could not check for updates"),h({message:"Could not reach GitHub releases",code:"fetch_failed"},{json:r.json});return}let s=tn(te,o),a=rn();if(r.json||!w()){B({current:te,latest:o,update_available:s,...s?{upgrade_command:a}:{}},{json:r.json});return}if(s){let l=a.startsWith("http");i?.warn(`Update available: v${te} \u2192 v${o}`),console.log(`
681
+ ${l?"Visit":"Run"}: \x1B[36m${a}\x1B[0m
682
+ `)}else i?.stop(`Already up to date (v${te})`)});z();var Ze=["email.sent","email.delivered","email.delivery_delayed","email.bounced","email.complained","email.opened","email.clicked","email.failed","email.scheduled","email.suppressed","email.received","contact.created","contact.updated","contact.deleted","domain.created","domain.updated","domain.deleted"];function qt(t){return t.flatMap(e=>e.split(",")).map(e=>e.trim()).filter(Boolean)}var Ut={resource:"webhook",resourcePlural:"webhooks",fetchItems:(t,{limit:e,after:r})=>t.webhooks.list({limit:e,...r&&{after:r}}),display:t=>({label:t.endpoint,hint:t.id})};function xc(t){let e=t.map(r=>{let n=(r.events??[]).join(", "),i=n.length>60?`${n.slice(0,57)}...`:n;return[r.endpoint,i,r.status,r.id]});return N(["Endpoint","Events","Status","ID"],e,"(no webhooks)")}var Ac=new p("create").description("Register a new webhook endpoint to receive real-time event notifications").option("--endpoint <endpoint>","HTTPS URL to receive webhook events (required)").option("--events <events...>",'Event types to subscribe to (comma or space-separated). Use "all" for all 17 events.').addHelpText("after",f({context:`Webhooks deliver real-time event notifications to your HTTPS endpoint.
673
683
  Events fire per-recipient: a batch email to 3 recipients generates 3 email.sent events.
674
684
 
675
685
  --endpoint must use HTTPS.
@@ -690,20 +700,20 @@ The signing_secret in the response is shown ONCE \u2014 save it immediately to v
690
700
  webhook payloads using Svix signature headers (svix-id, svix-timestamp, svix-signature).
691
701
  Use resend.webhooks.verify() in your application to validate incoming payloads.
692
702
 
693
- Non-interactive: --endpoint and --events are required.`,output:' {"object":"webhook","id":"<uuid>","signing_secret":"<whsec_...>"}',errorCodes:["auth_error","missing_endpoint","missing_events","create_error"],examples:["resend webhooks create --endpoint https://app.example.com/hooks/resend --events all","resend webhooks create --endpoint https://app.example.com/hooks/resend --events email.sent email.bounced","resend webhooks create --endpoint https://app.example.com/hooks/resend --events all --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.endpoint,{message:"Webhook endpoint URL",placeholder:"https://your-app.com/webhooks/resend",validate:s=>{if(!s)return"Endpoint URL is required";if(!s.startsWith("https://"))return"Endpoint must use HTTPS"}},{message:"Missing --endpoint flag.",code:"missing_endpoint"},r),n,o=e.events?.length?Dr(e.events):void 0;if(o?.includes("all"))n=vt;else if(o?.length)n=o;else{(!O()||r.json)&&g({message:"Missing --events flag.",code:"missing_events"},{json:r.json});let s=await gd({message:"Select event types to subscribe to",options:vt.map(a=>({value:a,label:a}))});k(s)&&T("Cancelled."),n=s}await te({loading:"Creating webhook...",sdkCall:s=>s.webhooks.create({endpoint:i,events:n}),onInteractive:s=>{console.log("Webhook created"),console.log(`ID: ${s.id}`),console.log(`Signing Secret: ${s.signing_secret}`),console.log("Save the signing secret \u2014 it is only shown once.")}},r)});var i0=new p("delete").alias("rm").description("Delete a webhook endpoint and stop all event deliveries to it").argument("[id]","Webhook UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",h({context:`Warning: Deleting a webhook immediately stops event delivery to the endpoint.
703
+ Non-interactive: --endpoint and --events are required.`,output:' {"object":"webhook","id":"<uuid>","signing_secret":"<whsec_...>"}',errorCodes:["auth_error","missing_endpoint","missing_events","create_error"],examples:["resend webhooks create --endpoint https://app.example.com/hooks/resend --events all","resend webhooks create --endpoint https://app.example.com/hooks/resend --events email.sent email.bounced","resend webhooks create --endpoint https://app.example.com/hooks/resend --events all --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.endpoint,{message:"Webhook endpoint URL",placeholder:"https://your-app.com/webhooks/resend",validate:s=>{if(!s)return"Endpoint URL is required";if(!s.startsWith("https://"))return"Endpoint must use HTTPS"}},{message:"Missing --endpoint flag.",code:"missing_endpoint"},r),i,o=t.events?.length?qt(t.events):void 0;if(o?.includes("all"))i=Ze;else if(o?.length)i=o;else{(!w()||r.json)&&h({message:"Missing --events flag.",code:"missing_events"},{json:r.json});let s=await ho({message:"Select event types to subscribe to",options:Ze.map(a=>({value:a,label:a}))});k(s)&&S("Cancelled."),i=s}await J({loading:"Creating webhook...",sdkCall:s=>s.webhooks.create({endpoint:n,events:i}),onInteractive:s=>{console.log("Webhook created"),console.log(`ID: ${s.id}`),console.log(`Signing Secret: ${s.signing_secret}`),console.log("Save the signing secret \u2014 it is only shown once.")}},r)});var kc=new p("delete").alias("rm").description("Delete a webhook endpoint and stop all event deliveries to it").argument("[id]","Webhook UUID").option("--yes","Skip the confirmation prompt (required in non-interactive mode)").addHelpText("after",f({context:`Warning: Deleting a webhook immediately stops event delivery to the endpoint.
694
704
  In-flight events may still be attempted once before the deletion takes effect.
695
705
  To temporarily pause delivery without losing configuration, use:
696
706
  resend webhooks update <id> --status disabled
697
707
 
698
- Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"webhook","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend webhooks delete wh_abc123 --yes","resend webhooks delete wh_abc123 --yes --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await he(e,qr,i);await ue(n.id,!!t.yes,{confirmMessage:`Delete webhook "${n.label}"?
699
- ID: ${n.id}
700
- Events will no longer be delivered to this endpoint.`,loading:"Deleting webhook...",object:"webhook",successMsg:"Webhook deleted",sdkCall:o=>o.webhooks.remove(n.id)},i)});var n0=new p("get").description("Retrieve a webhook endpoint configuration by ID").argument("[id]","Webhook UUID").addHelpText("after",h({context:`Note: The signing_secret is not returned by the get endpoint.
701
- To rotate secrets, delete the webhook and recreate it.`,output:' {"object":"webhook","id":"<uuid>","endpoint":"<url>","events":["<event>"],"status":"enabled|disabled","created_at":"<iso-date>","signing_secret":"<whsec_...>"}',errorCodes:["auth_error","fetch_error"],examples:["resend webhooks get wh_abc123","resend webhooks get wh_abc123 --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,qr,i);await W({loading:"Fetching webhook...",sdkCall:o=>o.webhooks.get(n),onInteractive:o=>{console.log(`${o.endpoint}`),console.log(`ID: ${o.id}`),console.log(`Status: ${o.status}`),console.log(`Events: ${(o.events??[]).join(", ")||"(none)"}`),console.log(`Created: ${o.created_at}`)}},i)});var o0=new p("list").alias("ls").description("List all registered webhook endpoints").option("--limit <n>","Maximum number of webhooks to return (1-100)","10").option("--after <cursor>","Return webhooks after this cursor (next page)").option("--before <cursor>","Return webhooks before this cursor (previous page)").addHelpText("after",h({context:`Pagination: use --after or --before with a webhook ID as the cursor.
708
+ Non-interactive: --yes is required to confirm deletion when stdin/stdout is not a TTY.`,output:' {"object":"webhook","id":"<uuid>","deleted":true}',errorCodes:["auth_error","confirmation_required","delete_error"],examples:["resend webhooks delete wh_abc123 --yes","resend webhooks delete wh_abc123 --yes --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await le(t,Ut,n);await re(i.id,!!e.yes,{confirmMessage:`Delete webhook "${i.label}"?
709
+ ID: ${i.id}
710
+ Events will no longer be delivered to this endpoint.`,loading:"Deleting webhook...",object:"webhook",successMsg:"Webhook deleted",sdkCall:o=>o.webhooks.remove(i.id)},n)});var $c=new p("get").description("Retrieve a webhook endpoint configuration by ID").argument("[id]","Webhook UUID").addHelpText("after",f({context:`Note: The signing_secret is not returned by the get endpoint.
711
+ To rotate secrets, delete the webhook and recreate it.`,output:' {"object":"webhook","id":"<uuid>","endpoint":"<url>","events":["<event>"],"status":"enabled|disabled","created_at":"<iso-date>","signing_secret":"<whsec_...>"}',errorCodes:["auth_error","fetch_error"],examples:["resend webhooks get wh_abc123","resend webhooks get wh_abc123 --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ut,n);await H({loading:"Fetching webhook...",sdkCall:o=>o.webhooks.get(i),onInteractive:o=>{console.log(`${o.endpoint}`),console.log(`ID: ${o.id}`),console.log(`Status: ${o.status}`),console.log(`Events: ${(o.events??[]).join(", ")||"(none)"}`),console.log(`Created: ${o.created_at}`)}},n)});var Ec=new p("list").alias("ls").description("List all registered webhook endpoints").option("--limit <n>","Maximum number of webhooks to return (1-100)","10").option("--after <cursor>","Return webhooks after this cursor (next page)").option("--before <cursor>","Return webhooks before this cursor (previous page)").addHelpText("after",f({context:`Pagination: use --after or --before with a webhook ID as the cursor.
702
712
  Only one of --after or --before may be used at a time.
703
- The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"<uuid>","endpoint":"<url>","events":["<event>"],"status":"enabled","created_at":"<iso-date>"}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend webhooks list","resend webhooks list --limit 25 --json","resend webhooks list --after wh_abc123 --json"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=L(e.limit,r),n=N(i,e.after,e.before,r);await D({loading:"Fetching webhooks...",sdkCall:o=>o.webhooks.list(n),onInteractive:o=>{console.log(t0(o.data)),G(o,"webhooks list",{limit:i,before:e.before,apiKey:r.apiKey,profile:r.profile})}},r)});var a0=require("node:http");var ke=we(yt(),1);X();function s0(e){return e?"error"in e?e.timeout?{status:504,body:"Forward target timed out"}:{status:502,body:"Forward target unreachable"}:e.status>=200&&e.status<300?{status:200,body:"OK"}:{status:e.status,body:"Forward target failed"}:{status:200,body:"OK"}}var u0=["svix-id","svix-timestamp","svix-signature"],cx=3e4;function dx(){return new Date().toLocaleTimeString("en-GB",{hour12:!1})}function mx(e){let t=je(e.type??"unknown"),r=e.data??{},i=je(r.id??""),n="";if(t.startsWith("email.")){let o=je(r.from??""),s=je(Array.isArray(r.to)?r.to[0]:"");(o||s)&&(n=`${o} -> ${s}`)}else t.startsWith("domain.")?n=je(r.name??""):t.startsWith("contact.")&&(n=je(r.email??""));return{type:t,resourceId:i,detail:n}}function px(e){let t=`${e} ${fx(e)}`;return e>=200&&e<300?ke.default.green(t):e>=400&&e<500?ke.default.yellow(t):ke.default.red(t)}function fx(e){return{200:"OK",201:"Created",204:"No Content",400:"Bad Request",401:"Unauthorized",403:"Forbidden",404:"Not Found",500:"Internal Server Error",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout"}[e]??""}async function hx(e,t,r){let i={"content-type":"application/json"};for(let s of u0){let a=r[s];a&&(i[s]=a)}let n=e.startsWith("http")?e:`http://${e}`;return{status:(await fetch(n,{method:"POST",headers:i,body:t,signal:AbortSignal.timeout(cx)})).status}}function gx(e){return new Promise((t,r)=>{let i=[];e.on("data",n=>i.push(n)),e.on("end",()=>t(Buffer.concat(i).toString())),e.on("error",r)})}async function bx(e,t,r){process.stderr.write(`
704
- Cleaning up...`);try{await e.webhooks.remove(t),process.stderr.write(` Webhook ${t} deleted.
705
- `)}catch{process.stderr.write(` Failed to delete webhook ${t}.
706
- `)}r.close()}var l0=new p("listen").description("Listen for webhook events locally during development").option("--url <url>","Public URL for receiving webhooks (your tunnel URL)").option("--forward-to <url>","Forward payloads to this local URL").option("--events <events...>","Event types to listen for (default: all)").option("--port <port>","Local server port","4318").addHelpText("after",h({context:`Start a local server that receives Resend webhook events in real time.
713
+ The response includes has_more: true when additional pages exist.`,output:' {"object":"list","data":[{"id":"<uuid>","endpoint":"<url>","events":["<event>"],"status":"enabled","created_at":"<iso-date>"}],"has_more":false}',errorCodes:["auth_error","invalid_limit","list_error"],examples:["resend webhooks list","resend webhooks list --limit 25 --json","resend webhooks list --after wh_abc123 --json"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=L(t.limit,r),i=G(n,t.after,t.before,r);await P({loading:"Fetching webhooks...",sdkCall:o=>o.webhooks.list(i),onInteractive:o=>{console.log(xc(o.data)),M(o,"webhooks list",{limit:n,before:t.before,apiKey:r.apiKey,profile:r.profile})}},r)});var Sc=require("node:http");var he=pe(et(),1);z();function Dc(t){return t?"error"in t?t.timeout?{status:504,body:"Forward target timed out"}:{status:502,body:"Forward target unreachable"}:t.status>=200&&t.status<300?{status:200,body:"OK"}:{status:t.status,body:"Forward target failed"}:{status:200,body:"OK"}}var Tc=["svix-id","svix-timestamp","svix-signature"],Km=3e4;function zm(){return new Date().toLocaleTimeString("en-GB",{hour12:!1})}function Jm(t){let e=_e(t.type??"unknown"),r=t.data??{},n=_e(r.id??""),i="";if(e.startsWith("email.")){let o=_e(r.from??""),s=_e(Array.isArray(r.to)?r.to[0]:"");(o||s)&&(i=`${o} -> ${s}`)}else e.startsWith("domain.")?i=_e(r.name??""):e.startsWith("contact.")&&(i=_e(r.email??""));return{type:e,resourceId:n,detail:i}}function Ym(t){let e=`${t} ${Qm(t)}`;return t>=200&&t<300?he.default.green(e):t>=400&&t<500?he.default.yellow(e):he.default.red(e)}function Qm(t){return{200:"OK",201:"Created",204:"No Content",400:"Bad Request",401:"Unauthorized",403:"Forbidden",404:"Not Found",500:"Internal Server Error",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout"}[t]??""}async function Xm(t,e,r){let n={"content-type":"application/json"};for(let s of Tc){let a=r[s];a&&(n[s]=a)}let i=t.startsWith("http")?t:`http://${t}`;return{status:(await fetch(i,{method:"POST",headers:n,body:e,signal:AbortSignal.timeout(Km)})).status}}function Zm(t){return new Promise((e,r)=>{let n=[];t.on("data",i=>n.push(i)),t.on("end",()=>e(Buffer.concat(n).toString())),t.on("error",r)})}async function ep(t,e,r){process.stderr.write(`
714
+ Cleaning up...`);try{await t.webhooks.remove(e),process.stderr.write(` Webhook ${e} deleted.
715
+ `)}catch{process.stderr.write(` Failed to delete webhook ${e}.
716
+ `)}r.close()}var Oc=new p("listen").description("Listen for webhook events locally during development").option("--url <url>","Public URL for receiving webhooks (your tunnel URL)").option("--forward-to <url>","Forward payloads to this local URL").option("--events <events...>","Event types to listen for (default: all)").option("--port <port>","Local server port","4318").addHelpText("after",f({context:`Start a local server that receives Resend webhook events in real time.
707
717
 
708
718
  You must provide a public URL (e.g. from ngrok or localtunnel) that
709
719
  points to the local server port. The CLI will:
@@ -714,26 +724,26 @@ points to the local server port. The CLI will:
714
724
  5. Delete the temporary webhook on exit (Ctrl+C)
715
725
 
716
726
  Important: your tunnel must forward traffic to the same port as --port (default 4318).
717
- For example, if using ngrok: ngrok http 4318`,examples:["resend webhooks listen --url https://example.ngrok-free.app","resend webhooks listen --url https://example.ngrok-free.app --forward-to localhost:3000/webhook","resend webhooks listen --url https://example.ngrok-free.app --events email.sent email.bounced","resend webhooks listen --url https://example.ngrok-free.app --port 8080"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=await K(e.url,{message:"Public tunnel URL",placeholder:"https://example.ngrok-free.app",validate:b=>{if(!b)return"URL is required";if(!b.startsWith("https://")&&!b.startsWith("http://"))return"URL must start with http:// or https://"}},{message:"Missing --url flag.",code:"missing_url"},r),n=Number.parseInt(e.port??"4318",10);(Number.isNaN(n)||n<1||n>65535)&&g({message:"Invalid port number.",code:"invalid_port"},{json:r.json});let o=e.events?.length?Dr(e.events):void 0,s;o?.includes("all")?s=vt:o?.length?s=o:s=vt;let a=await ne(r),u=r.json||!O(),d=(0,a0.createServer)(async(b,_)=>{try{if(b.method!=="POST"){_.writeHead(405).end("Method not allowed");return}let S=await gx(b),x;try{x=JSON.parse(S)}catch{_.writeHead(400).end("Invalid JSON");return}let w={};for(let E of u0){let j=b.headers[E];w[E]=Array.isArray(j)?j[0]:j}let{type:A,resourceId:M,detail:P}=mx(x),$;if(e.forwardTo)try{let{status:E}=await hx(e.forwardTo,S,w);$={status:E}}catch(E){let j=E instanceof DOMException&&E.name==="TimeoutError";$={error:E instanceof Error?E.message:"Unknown error",timeout:j}}if(u){let E={timestamp:new Date().toISOString(),type:A,resource_id:M,payload:x};e.forwardTo&&$&&(E.forwarded="error"in $?{url:e.forwardTo,error:$.error}:{url:e.forwardTo,status:$.status}),console.log(JSON.stringify(E))}else{let E=ke.default.dim(`[${dx()}]`),j=A.padEnd(20),Ae=M.padEnd(14);if(process.stderr.write(`${E} ${ke.default.bold(j)} ${ke.default.cyan(Ae)} ${P}
718
- `),e.forwardTo&&$){let oe=e.forwardTo.startsWith("http")?e.forwardTo:`http://${e.forwardTo}`;"error"in $?process.stderr.write(`${ke.default.dim(" -> POST")} ${oe} ${ke.default.red(`[Error: ${$.error}]`)}
719
- `):process.stderr.write(`${ke.default.dim(" -> POST")} ${oe} ${ke.default.dim(`[${px($.status)}]`)}
720
- `)}}let I=s0($);_.writeHead(I.status).end(I.body)}catch{_.headersSent||_.writeHead(500).end("Internal error")}});try{await new Promise((b,_)=>{d.on("error",_),d.listen(n,b)})}catch(b){g({message:b instanceof Error?`Failed to start local server on port ${n}: ${b.message}`:`Failed to start local server on port ${n}`,code:"server_listen_error"},{json:r.json})}let l=fe("Setting up webhook listener...",r.quiet),c;try{let{data:b,error:_}=await a.webhooks.create({endpoint:i,events:s});(_||!b)&&(l.fail("Failed to create webhook"),d.close(),g({message:_?.message??"Unexpected empty response",code:"create_error"},{json:r.json})),c=b.id}catch(b){l.fail("Failed to create webhook"),d.close(),g({message:b instanceof Error?b.message:"Unknown error",code:"create_error"},{json:r.json})}if(l.stop("Webhook listener ready"),!u){let b=s.length===vt.length?"all events":s.length<=3?s.join(", "):`${s.slice(0,3).join(", ")} (+${s.length-3} more)`;if(process.stderr.write(`
721
- `),process.stderr.write(` ${ke.default.bold("Webhook:")} ${c}
722
- `),process.stderr.write(` ${ke.default.bold("Endpoint:")} ${i}
723
- `),process.stderr.write(` ${ke.default.bold("Events:")} ${b}
724
- `),process.stderr.write(` ${ke.default.bold("Server:")} http://localhost:${n}
725
- `),e.forwardTo){let _=e.forwardTo.startsWith("http")?e.forwardTo:`http://${e.forwardTo}`;process.stderr.write(` ${ke.default.bold("Forward:")} ${_}
727
+ For example, if using ngrok: ngrok http 4318`,examples:["resend webhooks listen --url https://example.ngrok-free.app","resend webhooks listen --url https://example.ngrok-free.app --forward-to localhost:3000/webhook","resend webhooks listen --url https://example.ngrok-free.app --events email.sent email.bounced","resend webhooks listen --url https://example.ngrok-free.app --port 8080"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=await q(t.url,{message:"Public tunnel URL",placeholder:"https://example.ngrok-free.app",validate:g=>{if(!g)return"URL is required";if(!g.startsWith("https://")&&!g.startsWith("http://"))return"URL must start with http:// or https://"}},{message:"Missing --url flag.",code:"missing_url"},r),i=Number.parseInt(t.port??"4318",10);(Number.isNaN(i)||i<1||i>65535)&&h({message:"Invalid port number.",code:"invalid_port"},{json:r.json});let o=t.events?.length?qt(t.events):void 0,s;o?.includes("all")?s=Ze:o?.length?s=o:s=Ze;let a=await X(r),l=r.json||!w(),d=(0,Sc.createServer)(async(g,b)=>{try{if(g.method!=="POST"){b.writeHead(405).end("Method not allowed");return}let _=await Zm(g),A;try{A=JSON.parse(_)}catch{b.writeHead(400).end("Invalid JSON");return}let x={};for(let E of Tc){let I=g.headers[E];x[E]=Array.isArray(I)?I[0]:I}let{type:$,resourceId:F,detail:D}=Jm(A),O;if(t.forwardTo)try{let{status:E}=await Xm(t.forwardTo,_,x);O={status:E}}catch(E){let I=E instanceof DOMException&&E.name==="TimeoutError";O={error:E instanceof Error?E.message:"Unknown error",timeout:I}}if(l){let E={timestamp:new Date().toISOString(),type:$,resource_id:F,payload:A};t.forwardTo&&O&&(E.forwarded="error"in O?{url:t.forwardTo,error:O.error}:{url:t.forwardTo,status:O.status}),console.log(JSON.stringify(E))}else{let E=he.default.dim(`[${zm()}]`),I=$.padEnd(20),ge=F.padEnd(14);if(process.stderr.write(`${E} ${he.default.bold(I)} ${he.default.cyan(ge)} ${D}
728
+ `),t.forwardTo&&O){let Z=t.forwardTo.startsWith("http")?t.forwardTo:`http://${t.forwardTo}`;"error"in O?process.stderr.write(`${he.default.dim(" -> POST")} ${Z} ${he.default.red(`[Error: ${O.error}]`)}
729
+ `):process.stderr.write(`${he.default.dim(" -> POST")} ${Z} ${he.default.dim(`[${Ym(O.status)}]`)}
730
+ `)}}let T=Dc(O);b.writeHead(T.status).end(T.body)}catch{b.headersSent||b.writeHead(500).end("Internal error")}});try{await new Promise((g,b)=>{d.on("error",b),d.listen(i,g)})}catch(g){h({message:g instanceof Error?`Failed to start local server on port ${i}: ${g.message}`:`Failed to start local server on port ${i}`,code:"server_listen_error"},{json:r.json})}let c=ae("Setting up webhook listener...",r.quiet),u;try{let{data:g,error:b}=await a.webhooks.create({endpoint:n,events:s});(b||!g)&&(c.fail("Failed to create webhook"),d.close(),h({message:b?.message??"Unexpected empty response",code:"create_error"},{json:r.json})),u=g.id}catch(g){c.fail("Failed to create webhook"),d.close(),h({message:g instanceof Error?g.message:"Unknown error",code:"create_error"},{json:r.json})}if(c.stop("Webhook listener ready"),!l){let g=s.length===Ze.length?"all events":s.length<=3?s.join(", "):`${s.slice(0,3).join(", ")} (+${s.length-3} more)`;if(process.stderr.write(`
731
+ `),process.stderr.write(` ${he.default.bold("Webhook:")} ${u}
732
+ `),process.stderr.write(` ${he.default.bold("Endpoint:")} ${n}
733
+ `),process.stderr.write(` ${he.default.bold("Events:")} ${g}
734
+ `),process.stderr.write(` ${he.default.bold("Server:")} http://localhost:${i}
735
+ `),t.forwardTo){let b=t.forwardTo.startsWith("http")?t.forwardTo:`http://${t.forwardTo}`;process.stderr.write(` ${he.default.bold("Forward:")} ${b}
726
736
  `)}process.stderr.write(`
727
737
  Ready! Listening for webhook events. Press Ctrl+C to stop.
728
738
 
729
- `)}let m=!1,v=async()=>{m||(m=!0,await bx(a,c,d),process.exit(Sr()))};$a(v),process.on("SIGTERM",v),await new Promise(()=>{})});var c0=new p("update").description("Update a webhook's endpoint URL, event subscriptions, or enabled status").argument("[id]","Webhook UUID").option("--endpoint <endpoint>","New HTTPS URL for this webhook").option("--events <events...>",'Replace the full event subscription list (comma or space-separated). Use "all" for all 17 events.').addOption(new le("--status <status>","Enable or disable event delivery for this webhook").choices(["enabled","disabled"])).addHelpText("after",h({context:`At least one of --endpoint, --events, or --status must be provided.
739
+ `)}let m=!1,y=async()=>{m||(m=!0,await ep(a,u,d),process.exit(It()))};Gr(y),process.on("SIGTERM",y),await new Promise(()=>{})});var Ic=new p("update").description("Update a webhook's endpoint URL, event subscriptions, or enabled status").argument("[id]","Webhook UUID").option("--endpoint <endpoint>","New HTTPS URL for this webhook").option("--events <events...>",'Replace the full event subscription list (comma or space-separated). Use "all" for all 17 events.').addOption(new ee("--status <status>","Enable or disable event delivery for this webhook").choices(["enabled","disabled"])).addHelpText("after",f({context:`At least one of --endpoint, --events, or --status must be provided.
730
740
 
731
741
  --events replaces the entire event list (it is not additive).
732
742
  Use "all" as a shorthand for all 17 event types.
733
743
 
734
744
  --status controls whether events are delivered to this endpoint:
735
745
  enabled Events are delivered (default on creation)
736
- disabled Events are suppressed without deleting the webhook`,output:' {"object":"webhook","id":"<uuid>"}',errorCodes:["auth_error","no_changes","update_error"],examples:["resend webhooks update wh_abc123 --endpoint https://new-app.example.com/hooks/resend","resend webhooks update wh_abc123 --events email.sent email.bounced","resend webhooks update wh_abc123 --events all","resend webhooks update wh_abc123 --status disabled","resend webhooks update wh_abc123 --endpoint https://new-app.example.com/hooks/resend --events all --json"]})).action(async(e,t,r)=>{let i=r.optsWithGlobals(),n=await C(e,qr,i),o=t.events?.length?Dr(t.events):void 0,s=o!==void 0;!t.endpoint&&!s&&!t.status&&g({message:"Provide at least one option to update: --endpoint, --events, or --status.",code:"no_changes"},{json:i.json}),s&&!o.length&&g({message:"Missing --events values.",code:"no_changes"},{json:i.json});let a=o?.includes("all")?vt:o?.length?o:void 0;await J({loading:"Updating webhook...",sdkCall:u=>u.webhooks.update(n,{...t.endpoint&&{endpoint:t.endpoint},...a?.length&&{events:a},...t.status&&{status:t.status}}),errorCode:"update_error",successMsg:`Webhook updated: ${n}`},i)});var d0=new p("webhooks").description("Manage webhook endpoints for real-time event notifications").addHelpText("after",h({context:`Webhooks let you receive real-time event notifications from Resend at an HTTPS endpoint.
746
+ disabled Events are suppressed without deleting the webhook`,output:' {"object":"webhook","id":"<uuid>"}',errorCodes:["auth_error","no_changes","update_error"],examples:["resend webhooks update wh_abc123 --endpoint https://new-app.example.com/hooks/resend","resend webhooks update wh_abc123 --events email.sent email.bounced","resend webhooks update wh_abc123 --events all","resend webhooks update wh_abc123 --status disabled","resend webhooks update wh_abc123 --endpoint https://new-app.example.com/hooks/resend --events all --json"]})).action(async(t,e,r)=>{let n=r.optsWithGlobals(),i=await C(t,Ut,n),o=e.events?.length?qt(e.events):void 0,s=o!==void 0;!e.endpoint&&!s&&!e.status&&h({message:"Provide at least one option to update: --endpoint, --events, or --status.",code:"no_changes"},{json:n.json}),s&&!o.length&&h({message:"Missing --events values.",code:"no_changes"},{json:n.json});let a=o?.includes("all")?Ze:o?.length?o:void 0;await R({loading:"Updating webhook...",sdkCall:l=>l.webhooks.update(i,{...e.endpoint&&{endpoint:e.endpoint},...a?.length&&{events:a},...e.status&&{status:e.status}}),errorCode:"update_error",successMsg:`Webhook updated: ${i}`},n)});var Pc=new p("webhooks").description("Manage webhook endpoints for real-time event notifications").addHelpText("after",f({context:`Webhooks let you receive real-time event notifications from Resend at an HTTPS endpoint.
737
747
  Payloads are signed with Svix headers for verification.
738
748
 
739
749
  Event categories (17 total):
@@ -745,19 +755,25 @@ Event categories (17 total):
745
755
 
746
756
  Signature verification (Svix):
747
757
  Each delivery includes headers: svix-id, svix-timestamp, svix-signature
748
- Verify payloads in your application using: resend.webhooks.verify({ payload, headers, webhookSecret })`,examples:["resend webhooks list","resend webhooks create --endpoint https://app.example.com/hooks/resend --events all","resend webhooks get wh_abc123","resend webhooks update wh_abc123 --status disabled","resend webhooks delete wh_abc123 --yes"]})).addCommand(r0).addCommand(n0).addCommand(l0).addCommand(o0,{isDefault:!0}).addCommand(c0).addCommand(i0);var m0=require("node:path");Pe();X();var p0=new p("whoami").description("Show current authentication status").addHelpText("after",h({setup:!0,context:`Local only \u2014 no network calls.
749
- Shows which profile is active and where the API key comes from.`,output:' {"authenticated":true,"profile":"production","api_key":"re_...abcd","source":"config","config_path":"/Users/you/.config/resend/credentials.json"}\n {"error":{"message":"Not authenticated.\\nRun `resend login` to get started.","code":"not_authenticated"}}',examples:["resend whoami","resend whoami --json","resend whoami --profile production"]})).action(async(e,t)=>{let r=t.optsWithGlobals(),i=r.profile,n=await ir(r.apiKey,i);if(!n){let d=i||Ea(i),l=$e(),c=l.some(_=>_.name===d),m=i||process.env.RESEND_PROFILE,v=m&&!c?`Profile "${d}" not found.
750
- Available profiles: ${l.map(_=>_.name).join(", ")||"(none)"}`:"Not authenticated.\nRun `resend login` to get started.",b=m&&!c?"profile_not_found":"not_authenticated";r.json||!O()?g({message:v,code:b},{json:r.json}):g({message:v,code:b},{json:!1});return}let o=n.profile??Ea(i),s=(0,m0.join)(rt(),"credentials.json");if(r.json||!O()){z({authenticated:!0,profile:o,api_key:rr(n.key),source:n.source,...n.permission&&{permission:n.permission},config_path:s},{json:r.json});return}let a=n.source==="secure_storage"?"secure storage":n.source==="config"?"config file":n.source==="env"?"environment variable":"flag",u=n.permission==="sending_access"?"sending access":n.permission==="full_access"?"full access":void 0;console.log(""),console.log(` Profile: ${o}`),console.log(` API Key: ${rr(n.key)}`),console.log(` Source: ${a}`),u&&console.log(` Access: ${u}`),console.log(` Config: ${s}`),console.log("")});var _x=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 "," \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557"," \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551"," \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551"," \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D"," \u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D "];function f0(){process.stdout.write(`
751
- `);for(let e of _x)process.stdout.write(`${e}
758
+ Verify payloads in your application using: resend.webhooks.verify({ payload, headers, webhookSecret })`,examples:["resend webhooks list","resend webhooks create --endpoint https://app.example.com/hooks/resend --events all","resend webhooks get wh_abc123","resend webhooks update wh_abc123 --status disabled","resend webhooks delete wh_abc123 --yes"]})).addCommand(Ac).addCommand($c).addCommand(Oc).addCommand(Ec,{isDefault:!0}).addCommand(Ic).addCommand(kc);var jc=require("node:path");ye();z();var Rc=new p("whoami").description("Show current authentication status").addHelpText("after",f({setup:!0,context:`Local only \u2014 no network calls.
759
+ Shows which profile is active and where the API key comes from.`,output:' {"authenticated":true,"profile":"production","api_key":"re_...abcd","source":"config","config_path":"/Users/you/.config/resend/credentials.json"}\n {"error":{"message":"Not authenticated.\\nRun `resend login` to get started.","code":"not_authenticated"}}',examples:["resend whoami","resend whoami --json","resend whoami --profile production"]})).action(async(t,e)=>{let r=e.optsWithGlobals(),n=r.profile,i=await _t(r.apiKey,n);if(!i){let d=n||Br(n),c=we(),u=c.some(b=>b.name===d),m=n||process.env.RESEND_PROFILE,y=m&&!u?`Profile "${d}" not found.
760
+ Available profiles: ${c.map(b=>b.name).join(", ")||"(none)"}`:"Not authenticated.\nRun `resend login` to get started.",g=m&&!u?"profile_not_found":"not_authenticated";r.json||!w()?h({message:y,code:g},{json:r.json}):h({message:y,code:g},{json:!1});return}let o=i.profile??Br(n),s=(0,jc.join)(Be(),"credentials.json");if(r.json||!w()){B({authenticated:!0,profile:o,api_key:wt(i.key),source:i.source,...i.permission&&{permission:i.permission},config_path:s},{json:r.json});return}let a=i.source==="secure_storage"?"secure storage":i.source==="config"?"config file":i.source==="env"?"environment variable":"flag",l=i.permission==="sending_access"?"sending access":i.permission==="full_access"?"full access":void 0;console.log(""),console.log(` Profile: ${o}`),console.log(` API Key: ${wt(i.key)}`),console.log(` Source: ${a}`),l&&console.log(` Access: ${l}`),console.log(` Config: ${s}`),console.log("")});function Fc(t,e={}){let r=e.getArgv??(()=>process.argv.slice(2)),n=[],i=[t];for(;i.length>0;){let o=i.pop();if(!o)break;n.push(o);for(let s of o.commands)i.push(s)}for(let o of n){let a=o.configureOutput().outputError??((l,d)=>d(l));o.configureOutput({outputError:(l,d)=>{a(tp(l,t,r()),d)}})}}function tp(t,e,r){if(!np(t))return t;let n=rp(e,r);return n?ip(t,n):t}function rp(t,e){let r=t,n=[];for(let i=0;i<e.length;i+=1){let o=e[i];if(!o||o==="--")return;let s=i;if(o.startsWith("-")&&o!=="-"){let d=o.startsWith("--")?o.split("=",1)[0]:o.length>2?o.slice(0,2):o,c;for(let u of op(r)){for(let m of u.createHelp().visibleOptions(u))if(m.long===d||m.short===d){c=m;break}if(c)break}if(!c)s=void 0;else if(!c.required&&!c.optional)s=i+1;else if(c.variadic)s=e.length;else if(o.startsWith("--")&&o.includes("="))s=i+1;else if(!o.startsWith("--")&&o.length>2)s=i+1;else{let u=e[i+1];c.optional&&(u===void 0||u.startsWith("-"))?s=i+1:s=Math.min(i+2,e.length)}}if(s===void 0)return;if(s!==i){i=s-1;continue}if(o.startsWith("-"))return;let a=sp(r).find(d=>Nc(d).has(o));if(a){r=a,n.push(a.name());continue}let l=ap(o,Bc(r)).map(d=>[t.name(),...n,d.name()].join(" "));return l.length===0?void 0:{unknownCommand:o,suggestions:l}}}function np(t){return/^error: unknown command /.test(t)||/^error: too many arguments/.test(t)}function ip(t,e){let r=t.endsWith(`
761
+ `)?`
762
+ `:"",{suggestions:n}=e,i=n.length===1?"Did you mean this?":"Did you mean one of these?",o=n.map(s=>` ${s}`).join(`
763
+ `);return`error: unknown command '${e.unknownCommand}'
764
+
765
+ ${i}
766
+ ${o}${r}`}function op(t){let e=[];for(let r=t;r;r=r.parent)e.push(r);return e}function Bc(t){return t.createHelp().visibleCommands(t).filter(e=>!e._hidden)}function sp(t){let e=[...t.commands];for(let r of Bc(t))e.includes(r)||e.push(r);return e}function Nc(t){return new Set([t.name(),...t.aliases()])}function ap(t,e){let r=e.map(i=>{let o=Number.POSITIVE_INFINITY;for(let s of Nc(i)){if(s.length<=1)continue;let a=lp(t,s,3),l=Math.max(t.length,s.length),d=(l-a)/l;a<=3&&d>.4&&a<o&&(o=a)}return{command:i,distance:o}}).filter(i=>Number.isFinite(i.distance));if(r.length===0)return[];let n=Math.min(...r.map(i=>i.distance));return r.filter(i=>i.distance===n).sort((i,o)=>i.command.name().localeCompare(o.command.name())).map(i=>i.command)}function lp(t,e,r=Number.POSITIVE_INFINITY){if(Math.abs(t.length-e.length)>r)return Math.max(t.length,e.length);let n=[];for(let i=0;i<=t.length;i+=1)n[i]=[i];for(let i=0;i<=e.length;i+=1)n[0][i]=i;for(let i=1;i<=e.length;i+=1)for(let o=1;o<=t.length;o+=1){let s=t[o-1]===e[i-1]?0:1;n[o][i]=Math.min(n[o-1][i]+1,n[o][i-1]+1,n[o-1][i-1]+s),o>1&&i>1&&t[o-1]===e[i-2]&&t[o-2]===e[i-1]&&(n[o][i]=Math.min(n[o][i],n[o-2][i-2]+1))}return n[t.length][e.length]}var cp=[" \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2557 "," \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557"," \u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2554\u2588\u2588\u2557 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551"," \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u255D \u2588\u2588\u2551\u255A\u2588\u2588\u2557\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551"," \u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u255A\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D"," \u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u2550\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D "];function Hc(){process.stdout.write(`
767
+ `);for(let t of cp)process.stdout.write(`${t}
752
768
  `);process.stdout.write(`
753
- `)}Sc();oi();Mt();e_();var wc="",O0=[],S0=[],or=new p().name("resend").description("Resend CLI \u2014 email for developers").configureHelp({showGlobalOptions:!0,styleTitle:e=>Rr.default.gray(e)}).configureOutput({writeErr:e=>{process.stderr.write(e.replace(/^error:/,()=>Rr.default.red("error:")))}}).helpCommand(!0).version(`${vd} v${se}`,"-v, --version","Output the current version").option("--api-key <key>","Resend API key (overrides env/config)").option("-p, --profile <name>","Profile to use (overrides RESEND_PROFILE)").option("--json","Force JSON output").option("-q, --quiet","Suppress spinners and status output (implies --json)").option("--insecure-storage","Save API key as plaintext instead of secure storage").hook("preAction",(e,t)=>{let r=[];for(let n=t;n?.parent;n=n.parent)r.unshift(n.name());wc=r.join(" ");let i=n=>n.options.filter(o=>n.getOptionValueSource(o.attributeName())==="cli").map(o=>o.long?.replace(/^--/,"")??o.short?.replace(/^-/,"")??"").filter(Boolean);O0=i(t),S0=i(e),t.optsWithGlobals().quiet&&e.setOptionValue("json",!0),t.optsWithGlobals().insecureStorage&&(process.env.RESEND_CREDENTIAL_STORE="file")}).addHelpText("after",`
754
- ${Rr.default.gray("Examples:")}
769
+ `)}wi();dr();ht();ys();var _i="",Kc=[],zc=[],mt=new p().name("resend").description("Resend CLI \u2014 email for developers").configureHelp({showGlobalOptions:!0,styleTitle:t=>Wt.default.gray(t)}).configureOutput({writeErr:t=>{process.stderr.write(t.replace(/^error:/,()=>Wt.default.red("error:")))}}).helpCommand(!0).version(`${yo} v${te}`,"-v, --version","Output the current version").option("--api-key <key>","Resend API key (overrides env/config)").option("-p, --profile <name>","Profile to use (overrides RESEND_PROFILE)").option("--json","Force JSON output").option("-q, --quiet","Suppress spinners and status output (implies --json)").option("--insecure-storage","Save API key as plaintext instead of secure storage").hook("preAction",(t,e)=>{let r=[];for(let i=e;i?.parent;i=i.parent)r.unshift(i.name());_i=r.join(" ");let n=i=>i.options.filter(o=>i.getOptionValueSource(o.attributeName())==="cli").map(o=>o.long?.replace(/^--/,"")??o.short?.replace(/^-/,"")??"").filter(Boolean);Kc=n(e),zc=n(t),e.optsWithGlobals().quiet&&t.setOptionValue("json",!0),e.optsWithGlobals().insecureStorage&&(process.env.RESEND_CREDENTIAL_STORE="file")}).addHelpText("after",`
770
+ ${Wt.default.gray("Examples:")}
755
771
 
756
772
  - Login to Resend
757
773
 
758
- ${Rr.default.blue("$ resend login")}
774
+ ${Wt.default.blue("$ resend login")}
759
775
 
760
776
  - Send an email
761
777
 
762
- ${Rr.default.blue("$ resend emails send")}
763
- `).action(()=>{process.stdout.isTTY&&f0();let e=or.opts();e.apiKey&&g({message:"--api-key is a per-command override and was not saved. To store your API key, run `resend login`.",code:"missing_command"},{json:e.json}),or.help()}).addCommand(Ra).addCommand(hy).addCommand(tv).addCommand(D_).addCommand(wy).addCommand(Wy).addCommand(Iv).addCommand(_v).addCommand(My).addCommand(Xy).addCommand(Uv).addCommand(Ty).addCommand(h_).addCommand(d0).addCommand(O_).addCommand(Ma).addCommand(p0).addCommand(Jv).addCommand(Iy).addCommand($v).addCommand(e0).addCommand(av).addCommand(dv),w0=new p("telemetry").description("Telemetry management").helpCommand(!1);w0.command("flush").argument("<file>").action(async e=>{let{flushFromFile:t}=await Promise.resolve().then(()=>(Sc(),C0));await t(e)});or.addCommand(w0,{hidden:!0});or.parseAsync().then(()=>{let e=or.args[0];if(e==="update"||e==="telemetry")return;wc&&Oc(wc,{...or.opts(),flags:O0,globalFlags:S0});let t=or.opts();Mv({json:!!(t.json||t.quiet)}).catch(()=>{})}).catch(e=>{g({message:Y(e,"An unexpected error occurred"),code:"unexpected_error"})});
778
+ ${Wt.default.blue("$ resend emails send")}
779
+ `).action(()=>{process.stdout.isTTY&&Hc();let t=mt.opts();t.apiKey&&h({message:"--api-key is a per-command override and was not saved. To store your API key, run `resend login`.",code:"missing_command"},{json:t.json}),mt.help()}).addCommand(Wr).addCommand(Bl).addCommand(va).addCommand(Xs).addCommand(Vl).addCommand(hc).addCommand(Ja).addCommand(Fa).addCommand(oc).addCommand(wc).addCommand(fl).addCommand(Xl).addCommand(Ps).addCommand(Pc).addCommand(Ls).addCommand(Vr).addCommand(Rc).addCommand(nl).addCommand(Zl).addCommand(Ya).addCommand(_c).addCommand(ka).addCommand(Sa),Jc=new p("telemetry").description("Telemetry management").helpCommand(!1);Jc.command("flush").argument("<file>").action(async t=>{let{flushFromFile:e}=await Promise.resolve().then(()=>(wi(),Vc));await e(t)});mt.addCommand(Jc,{hidden:!0});Fc(mt);mt.parseAsync().then(()=>{let t=mt.args[0];if(t==="update"||t==="telemetry")return;_i&&Ci(_i,{...mt.opts(),flags:Kc,globalFlags:zc});let e=mt.opts();tl({json:!!(e.json||e.quiet)}).catch(()=>{})}).catch(t=>{h({message:V(t,"An unexpected error occurred"),code:"unexpected_error"})});