@novu/framework 2.11.2 → 2.12.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +1 -0
  2. package/dist/cjs/index.cjs +3 -3
  3. package/dist/cjs/internal/index.cjs +1 -1
  4. package/dist/cjs/internal/index.d.cts +10 -10
  5. package/dist/cjs/{server.types-BRWsA1CA.d.cts → server.types-Cc6o5eYH.d.cts} +1 -1
  6. package/dist/cjs/servers/express.cjs +3 -3
  7. package/dist/cjs/servers/express.d.cts +1 -1
  8. package/dist/cjs/servers/h3.cjs +3 -3
  9. package/dist/cjs/servers/h3.d.cts +1 -1
  10. package/dist/cjs/servers/hono.cjs +564 -0
  11. package/dist/cjs/servers/hono.d.cts +41 -0
  12. package/dist/cjs/servers/lambda.cjs +3 -3
  13. package/dist/cjs/servers/lambda.d.cts +1 -1
  14. package/dist/cjs/servers/nest.cjs +3 -3
  15. package/dist/cjs/servers/nest.d.cts +1 -1
  16. package/dist/cjs/servers/next.cjs +3 -3
  17. package/dist/cjs/servers/next.d.cts +1 -1
  18. package/dist/cjs/servers/nuxt.cjs +3 -3
  19. package/dist/cjs/servers/nuxt.d.cts +1 -1
  20. package/dist/cjs/servers/remix.cjs +3 -3
  21. package/dist/cjs/servers/remix.d.cts +1 -1
  22. package/dist/cjs/servers/sveltekit.cjs +3 -3
  23. package/dist/cjs/servers/sveltekit.d.cts +1 -1
  24. package/dist/esm/chunk-T4QVGWWK.js +1 -0
  25. package/dist/esm/{chunk-EZ22F362.js → chunk-XC7ATSSO.js} +3 -3
  26. package/dist/esm/index.js +1 -1
  27. package/dist/esm/internal/index.d.ts +1 -1
  28. package/dist/esm/internal/index.js +1 -1
  29. package/dist/esm/{server.types-BRWsA1CA.d.ts → server.types-Cc6o5eYH.d.ts} +1 -1
  30. package/dist/esm/servers/express.d.ts +1 -1
  31. package/dist/esm/servers/express.js +1 -1
  32. package/dist/esm/servers/h3.d.ts +1 -1
  33. package/dist/esm/servers/h3.js +1 -1
  34. package/dist/esm/servers/hono.d.ts +41 -0
  35. package/dist/esm/servers/hono.js +1 -0
  36. package/dist/esm/servers/lambda.d.ts +1 -1
  37. package/dist/esm/servers/lambda.js +1 -1
  38. package/dist/esm/servers/nest.d.ts +1 -1
  39. package/dist/esm/servers/nest.js +1 -1
  40. package/dist/esm/servers/next.d.ts +1 -1
  41. package/dist/esm/servers/next.js +1 -1
  42. package/dist/esm/servers/nuxt.d.ts +1 -1
  43. package/dist/esm/servers/nuxt.js +1 -1
  44. package/dist/esm/servers/remix.d.ts +1 -1
  45. package/dist/esm/servers/remix.js +1 -1
  46. package/dist/esm/servers/sveltekit.d.ts +1 -1
  47. package/dist/esm/servers/sveltekit.js +1 -1
  48. package/hono/package.json +3 -0
  49. package/package.json +18 -1
  50. package/dist/esm/chunk-E2MET7IR.js +0 -1
@@ -1,4 +1,4 @@
1
- import{a as Pt,b as Ce}from"./chunk-22DBAEUX.js";import{B as Jn,C as Gn,D as pr,E as dr,G as Qn,L as zn,O as It,P as Xn,Q as Zn,R as ei,S as ni,T as xe,a as Nt,b as Mn,c as fr,d as Cn,e as Nn,f as Pn,g as In,h as xn,i as Ln,j as $n,k as pt,l as Dn,m as Wn,n as dt,o as Fn,p as Bn,t as jn,u as Un,v as Hn,w as Yn,x as qn,y as Vn,z as Kn}from"./chunk-E2MET7IR.js";import{a as hr,b as gr,c as mr,d as yr,f as Be}from"./chunk-CANJPWLT.js";import{a as Ct,b as cr,e as ur}from"./chunk-FRWG7YTE.js";import{c as ti,e as ri}from"./chunk-W6DIBD4Z.js";import{jsonrepair as qs}from"jsonrepair";var xt=(()=>{var w=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,m=Object.prototype.hasOwnProperty,b=(e,t)=>function(){return e&&(t=(0,e[a(e)[0]])(e=0)),t},W=(e,t)=>function(){return t||(0,e[a(e)[0]])((t={exports:{}}).exports,t),t.exports},I=(e,t)=>{for(var r in t)w(e,r,{get:t[r],enumerable:!0})},V=(e,t,r,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of a(t))!m.call(e,c)&&c!==r&&w(e,c,{get:()=>t[c],enumerable:!(l=i(t,c))||l.enumerable});return e},z=e=>V(w({},"__esModule",{value:!0}),e),se={};I(se,{JSONSchemaFaker:()=>kn,default:()=>_n,setDependencies:()=>jr});function Te(e,t){return typeof e=="string"?typeof t!="undefined"?at.register(e,t):at.get(e):at.registerMany(e)}function ye(e,t){return e=typeof e=="undefined"?He.MIN_INTEGER:e,t=typeof t=="undefined"?He.MAX_INTEGER:t,Math.floor(ee("random")()*(t-e+1))+e}function we(e){return vt.default.prototype.max=ee("defaultRandExpMax"),vt.default.prototype.randInt=(r,l)=>r+Math.floor(ee("random")()*(1+(l-r))),new vt.default(e).gen()}function ke(e){return e[Math.floor(ee("random")()*e.length)]}function Le(e){let t,r,l=e.length,c=e.slice();for(;l>0;)r=Math.floor(ee("random")()*l),l-=1,t=c[l],c[l]=c[r],c[r]=t;return c}function Ge(e,t){return ee("random")()*(t-e)+e}function je(e,t,r,l,c=!1){return r=typeof r=="undefined"?He.MIN_NUMBER:r,l=typeof l=="undefined"?He.MAX_NUMBER:l,e=typeof e=="undefined"?r:e,t=typeof t=="undefined"?l:t,t<e&&(t+=e),c?Ge(e,t):ye(e,t)}function St(e){switch(e){case"seconds":return je(0,60)*60;case"minutes":return je(15,50)*612;case"hours":return je(12,72)*36123;case"days":return je(7,30)*86412345;case"weeks":return je(4,52)*604812345;case"months":return je(2,13)*2592012345;case"years":return je(1,20)*31104012345;default:break}}function Bt(e){if(e)return St(e);let t=ee("minDateTime"),r=ee("maxDateTime");typeof t=="string"&&(t=new Date(t)),typeof r=="string"&&(r=new Date(r));let l=new Date().getTime();return typeof t=="number"&&(t=new Date(l+t)),typeof r=="number"&&(r=new Date(l+r)),new Date(Ge(t.getTime(),r.getTime()))}function Er(e,t,r){if(t=decodeURIComponent(t),r&&r[t])return Et(r[t]);let l=t.replace("#/","/").split("/"),c=e.$ref&&r&&r[e.$ref]||e;for(!c&&!l[0]&&(l[0]=e.$ref.split("#/")[0]),r&&t.includes("#/")&&r[l[0]]&&(c=r[l.shift()]),l[0]||l.shift();c&&l.length>0;){let p=l.shift();if(!c[p])throw new Error(`Prop not found: ${p} (${t})`);c=c[p]}return c}function At(e){return typeof e=="string"&&zr.test(e)}function Ue(e){return["number","boolean"].includes(typeof e)}function Fe(e,...t){return t.filter(r=>typeof e[r]!="undefined").length>0}function Or(e){if(e.includes(" "))return new Date(e).toISOString().substr(0,10);let[t,r,l]=e.split("T")[0].split("-");return r=`0${Math.max(1,Math.min(12,r))}`.slice(-2),l=`0${Math.max(1,Math.min(31,l))}`.slice(-2),`${t}-${r}-${l}`}function _i(e){if(e.includes(" "))return new Date(e).toISOString().substr(0,10);let[t,r]=e.split("T"),[l,c,p]=t.split("-"),[f,E,$]=r.substr(0,8).split(":");return c=`0${Math.max(1,Math.min(12,c))}`.slice(-2),p=`0${Math.max(1,Math.min(31,p))}`.slice(-2),f=`0${Math.max(1,Math.min(23,f))}`.slice(-2),E=`0${Math.max(1,Math.min(59,E))}`.slice(-2),$=`0${Math.max(1,Math.min(59,$))}`.slice(-2),`${l}-${c}-${p}T${f}:${E}:${$}.000Z`}function Mi(e,t,r){let l={};switch(e||t.type){case"integer":case"number":if(typeof t.minimum!="undefined"&&(l.minimum=t.minimum),typeof t.maximum!="undefined"&&(l.maximum=t.maximum),t.enum){let p=Math.max(l.minimum||0,0),f=Math.min(l.maximum||1/0,1/0);t.exclusiveMinimum&&p===t.minimum&&(p+=t.multipleOf||1),t.exclusiveMaximum&&f===t.maximum&&(f-=t.multipleOf||1),(p||f!==1/0)&&(t.enum=t.enum.filter(E=>E>=p&&E<=f))}break;case"string":{l.minLength=ee("minLength")||0,l.maxLength=ee("maxLength")||Number.MAX_SAFE_INTEGER,typeof t.minLength!="undefined"&&(l.minLength=Math.max(l.minLength,t.minLength)),typeof t.maxLength!="undefined"&&(l.maxLength=Math.min(l.maxLength,t.maxLength));break}default:break}let c=r(l);if(c==null)return null;switch(e||t.type){case"number":c=At(c)?parseFloat(c):c;break;case"integer":c=At(c)?parseInt(c,10):c;break;case"boolean":c=!!c;break;case"string":{if(Ue(c))return c;c=String(c);let p=Math.max(l.minLength||0,0),f=Math.min(l.maxLength||1/0,1/0),E,$=0;for(;c.length<p;)if(E=c,t.pattern?c+=X.randexp(t.pattern):c+=`${X.pick([" ","/","_","-","+","=","@","^"])}${c}`,c===E){if($+=1,$===3)break}else $=0;switch(c.length>f&&(c=c.substr(0,f)),t.format){case"date-time":case"datetime":c=new Date(_i(c)).toISOString().replace(/([0-9])0+Z$/,"$1Z");break;case"full-date":case"date":c=new Date(Or(c)).toISOString().substr(0,10);break;case"time":c=new Date(`1969-01-01 ${c}`).toISOString().substr(11);break;default:break}break}default:break}return c}function Xe(e,t){return Object.keys(t).forEach(r=>{typeof t[r]!="object"||t[r]===null?e[r]=t[r]:Array.isArray(t[r])?(e[r]=e[r]||[],t[r].forEach((l,c)=>{e.type==="array"&&t.type==="array"?e[r][c]=Xe(e[r][c]||{},l,!0):Array.isArray(e[r])&&e[r].indexOf(l)===-1&&e[r].push(l)})):typeof e[r]!="object"||e[r]===null||Array.isArray(e[r])?e[r]=Xe({},t[r]):e[r]=Xe(e[r],t[r])}),e}function Et(e,t=new Map){if(!e||typeof e!="object")return e;if(t.has(e))return t.get(e);if(Array.isArray(e)){let l=[];return t.set(e,l),l.push(...e.map(c=>Et(c,t))),l}let r={};return t.set(e,r),Object.keys(e).reduce((l,c)=>(l[c]=Et(e[c],t),l),r)}function Ci(e){let t=JSON.stringify(e),r=JSON.stringify(e,null,2);return t.length>400?`${r.substr(0,400)}...`:r}function vr(){return X.pick([!1,!0,null,-1,NaN,Math.PI,1/0,void 0,[],{},Math.random(),Math.random().toString(36).substr(2)])}function Ni(e,t){if(e.enum)return e.enum.includes(t);if(e.const)return e.const===t}function Pi(e,t){let r=Xe({},t);if(typeof e.minimum!="undefined"&&(r.maximum=e.minimum,r.exclusiveMaximum=!0),typeof e.maximum!="undefined"&&(r.minimum=e.maximum>r.maximum?0:e.maximum,r.exclusiveMinimum=!0),typeof e.minLength!="undefined"&&(r.maxLength=e.minLength),typeof e.maxLength!="undefined"&&(r.minLength=e.maxLength>r.maxLength?0:e.maxLength),e.type)r.type=X.pick(He.SCALAR_TYPES.filter(l=>(Array.isArray(e.type)?e.type:[e.type]).every(p=>l==="number"||l==="integer"?p!=="number"&&p!=="integer":l!==p)));else if(e.enum){let l;do l=vr();while(e.enum.indexOf(l)!==-1);r.enum=[l]}return e.required&&r.properties&&e.required.forEach(l=>{delete r.properties[l]}),r}function jt(e,t){let r=t.minimum!==void 0,l=t.maximum!==void 0;return(r||l)&&(!r||e>=t.minimum)&&(!l||e<=t.maximum)}function Ii(e,t){return!t.every(r=>jt(e,r))}function xi(e,t){return t.reduce((l,c)=>l+(jt(e,c)?1:0),0)===1}function Li(e){return["enum","const","default","examples","required","definitions","items","properties"].includes(e)}function $i(e,t){return Object.keys(e).filter(r=>!t.includes(r)).reduce((r,l)=>(Array.isArray(e[l])?r[l]=e[l].slice():r[l]=e[l]instanceof Object?Xe({},e[l]):e[l],r),{})}function br(e,t){return Array.isArray(e)?e.map(r=>br(r,t)):(typeof e=="string"&&(e=e.replace(/#\{([\w.-]+)\}/g,(r,l)=>t[l])),e)}function Ut(e){return Object.prototype.toString.call(e)==="[object Object]"&&!Object.keys(e).length}function Tr(e,t){t=t.items||t;let r=ee("alwaysFakeOptionals"),l=Array.isArray(t.required)&&t.required.includes(e)||r,c=typeof t.thunk=="function"||t.additionalProperties&&typeof t.additionalProperties.thunk=="function";return!l&&!c}function Ht(e,t,r=!1){if(!e||typeof e!="object")return e;if(Array.isArray(e))return e.map(l=>Ht(l,t,!0)).filter(l=>typeof l!="undefined");if(Object.keys(e).forEach(l=>{if(Ut(e[l]))Tr(l,t)&&delete e[l];else{let c=t;t&&t.properties&&t.properties[l]&&(c=t.properties[l]);let p=Ht(e[l],c);Ut(p)||(e[l]=p)}typeof e[l]=="undefined"&&delete e[l]}),!(!Object.keys(e).length&&r))return e}function Di(e){return(t,r,l,c)=>{let p=t,f=[];typeof t=="object"&&(p=Object.keys(t)[0],Array.isArray(t[p])?f=t[p]:f.push(t[p]));let E=p.split("."),$=e();for(;E.length>1;)$=$[E.shift()];return t=typeof $=="object"?$[E[0]]:$,typeof t=="function"&&(t=t.apply($,f.map(A=>ue.template(A,c)))),Object.prototype.toString.call(t)==="[object Object]"&&Object.keys(t).forEach(A=>{if(typeof t[A]=="function")throw new Error(`Cannot resolve value for '${l}: ${p}', given: ${t}`)}),t}}function Wi(e,t){if(typeof e=="undefined")return et.list();if(typeof e=="string")if(typeof t=="function")et.register(e,t);else if(t===null||t===!1)et.unregister(e);else return et.get(e);else et.registerMany(e)}function Fi(e,t,r){return Object.keys(e).filter(l=>{let c=tn.indexOf(t)>-1;return r.indexOf(l)>-1&&!c}).length>0}function Bi(e,t){let r=Object.keys(lt);for(let l=0;l<r.length;l+=1){let c=r[l],p=t[t.length-1];if(Fi(e,p,lt[c]))return c}}function ji(){return ee("random")()>.5}function Ui(){return null}function Hi(e,t,r,l,c,p){let f=[],E=[];function $(D){let T=JSON.stringify(D.value);return E.indexOf(T)===-1?(E.push(T),f.push(D),!0):!1}t.forEach($);let A=100;for(;f.length!==t.length&&($(p(r.items||l,e,c))||(A-=1),!!A););return f}function Yi(e,t,r,l){let c=[];if(!(e.items||e.additionalItems)){if(ue.hasProperties(e,"minItems","maxItems","uniqueItems")&&(e.minItems!==0||e.maxItems!==0))throw new bt(`missing items for ${ue.short(e)}`,t);return c}if(Array.isArray(e.items))return e.items.map((j,oe)=>{let Q=t.concat(["items",oe]);return l(j,Q,r)});let p=e.minItems,f=e.maxItems,E=ee("minItems"),$=ee("maxItems");E&&(p=typeof p=="undefined"?E:Math.min(E,p)),$&&(f=typeof f=="undefined"?$:Math.min($,f),f&&f>$&&(f=$),p&&p>$&&(p=f));let A=ee("alwaysFakeOptionals")===!0?1:ee("optionalsProbability"),D=ee("alwaysFakeOptionals")||ee("fixedProbabilities")||!1,T=X.number(p,f,1,5);A!==null&&(T=Math.max(D?Math.round((f||T)*A):Math.abs(X.number(p,f)*A),p||0));let Y=typeof e.additionalItems=="object"?e.additionalItems:{};for(let j=c.length;j<T;j+=1){let oe=t.concat(["items",j]),Q=l(e.items||Y,oe,r);c.push(Q)}if(e.contains&&T>0){let j=X.number(0,T-1);c[j]=l(e.contains,t.concat(["items",j]),r)}return e.uniqueItems?Hi(t.concat(["items"]),c,e,Y,r,l):c}function qi(e){let t=typeof e.minimum=="undefined"||e.minimum===-Number.MAX_VALUE?He.MIN_INTEGER:e.minimum,r=typeof e.maximum=="undefined"||e.maximum===Number.MAX_VALUE?He.MAX_INTEGER:e.maximum,l=e.multipleOf,c=l&&String(l).match(/e-(\d)|\.(\d+)$/);if(c){let p=(Math.random()*X.number(0,10)+1)*l,f=c[1]||c[2].length,E=parseFloat(p.toFixed(f)),$=X.number(t,r-1);return String(E).includes(".")?$+E:($+E).toExponential()}if(l&&(r=Math.floor(r/l)*l,t=Math.ceil(t/l)*l),e.exclusiveMinimum&&t===e.minimum&&(t+=l||1),e.exclusiveMaximum&&r===e.maximum&&(r-=l||1),t>r)return NaN;if(l){let p=X.number(Math.floor(t/l),Math.floor(r/l))*l;for(;p<t;)p+=l;return p}return X.number(t,r,void 0,void 0,e.type!=="integer")}function Vi(e){return Math.floor(ir({...e}))}function Ki(e){return X.shuffle(pn).slice(0,e)}function Ji(e,t,r,l){let c={},p=e.properties||{},f=e.patternProperties||{},E=typeof e.required=="boolean"?[]:(e.required||[]).slice(),$=e.additionalProperties!==!1,A=Object.keys(p),D=Object.keys(f),T=A.concat(D).reduce((B,d)=>(E.indexOf(d)===-1&&B.push(d),B),[]),Y=E.concat(T),j=$&&e.additionalProperties===!0?Rt:e.additionalProperties;if(!$&&A.length===0&&D.length===0&&ue.hasProperties(e,"minProperties","maxProperties","dependencies","required"))return null;if(ee("requiredOnly")===!0)return E.forEach(B=>{p[B]&&(c[B]=p[B])}),l(c,t.concat(["properties"]),r,e);let oe=ee("alwaysFakeOptionals")===!0?1:ee("optionalsProbability"),Q=ee("alwaysFakeOptionals")||ee("fixedProbabilities")||!1,te=ee("ignoreProperties")||[],pe=ee("reuseProperties"),he=ee("fillProperties"),F=e.maxProperties||Y.length+($?X.number(1,5):0),y=Math.max(e.minProperties||0,E.length),S=Math.max(0,Y.length-y);Y.length===1&&!E.length&&(y=Math.max(X.number(he?1:0,F),y)),oe!==null&&(Q===!0?S=Math.round(y-E.length+oe*(Y.length-y)):S=X.number(y-E.length,oe*(Y.length-y)));let k=X.shuffle(T).slice(0,S),M=T.filter(B=>k.indexOf(B)!==-1),x=oe!==null||E.length===F?F:X.number(0,F),R=E.concat(X.shuffle(M).slice(0,x)).slice(0,F),C=[],P=[];if(e.dependencies&&(Object.keys(e.dependencies).forEach(B=>{let d=e.dependencies[B];if(R.indexOf(B)!==-1)if(Array.isArray(d))d.forEach(N=>{R.indexOf(N)===-1&&R.push(N)});else if(Array.isArray(d.oneOf||d.anyOf)){let N=d.oneOf||d.anyOf;P.push({prop:B,values:N})}else C.push(d)}),C.length))return delete e.dependencies,l({allOf:C.concat(e)},t.concat(["properties"]),r,e);let U=[],q=[];R.forEach(B=>{if(p[B]&&["{}","true"].includes(JSON.stringify(p[B].not)))return;for(let N=0;N<te.length;N+=1)if(te[N]instanceof RegExp&&te[N].test(B)||typeof te[N]=="string"&&te[N]===B||typeof te[N]=="function"&&te[N](p[B],B)){U.push(B);return}j===!1&&E.indexOf(B)!==-1&&(c[B]=p[B]),p[B]&&(c[B]=p[B]);let d;if(D.forEach(N=>{B.match(new RegExp(N))&&(d=!0,c[B]?ue.merge(c[B],f[N]):c[X.randexp(B)]=f[N])}),!d){let N=f[B]||j;N&&j!==!1?c[f[B]?X.randexp(B):B]=p[B]||N:q.push(B)}});let Z=Object.keys(c).length+(he?0:U.length),Ee=B=>X.randexp(`_?[_a-f\\d]{1,3}${B?"\\$?":""}`);function Oe(B){let d;do{if(!B.length)break;d=B.shift()}while(c[d]);return d}let be=y;if($&&!E.length&&(be=Math.max(oe===null||j?X.number(he?1:0,F):0,y)),!M.length&&!S&&$&&Q===!0&&he){let B=X.number(0,F);for(let d=0;d<B;d+=1)c[Tt(1)+Ee(B[d])]=j||Rt}for(;he&&!(!(D.length||$)||Z>=be);){if($)if(pe&&A.length-Z>be){let B=0,d;do{if(B+=1,B>1e3)break;d=Oe(E)||X.pick(A)}while(typeof c[d]!="undefined");typeof c[d]=="undefined"&&(c[d]=p[d],Z+=1)}else if(D.length&&!j){let B=X.pick(D),d=X.randexp(B);c[d]||(c[d]=f[B],Z+=1)}else{let B=Oe(E)||Tt(1)+Ee();c[B]||(c[B]=j||Rt,Z+=1)}for(let B=0;Z<y&&B<D.length;B+=1){let d=D[B],N=X.randexp(d);c[N]||(c[N]=f[d],Z+=1)}}if(E.length===0&&(!$||oe===!1)){let B=X.number(y,F);for(;Z<B;){let d=Oe(A);d&&(c[d]=p[d]),Z+=1}}let _e=c;if(ee("sortProperties")!==null){let B=Object.keys(p);_e=Object.keys(c).sort((N,K)=>ee("sortProperties")?N.localeCompare(K):B.indexOf(N)-B.indexOf(K)).reduce((N,K)=>(N[K]=c[K],N),{})}let Ne=l(_e,t.concat(["properties"]),r,e);return P.forEach(B=>{for(let d of B.values)if(ue.hasValue(d.properties[B.prop],Ne.value[B.prop])){Object.keys(d.properties).forEach(N=>{N!==B.prop&&ue.merge(Ne.value,l(d.properties,t.concat(["properties"]),r,e).value)});break}}),Ne}function Rr(){let e=X.number(1,5);return Tt(e).join(" ")}function Gi(e=0,t=140){let r=Math.max(0,e),l=X.number(r,t),c=Rr();for(;c.length<r;)c+=Rr();return c.length>l&&(c=c.substr(0,l)),c}function Qi(){return[0,0,0,0].map(()=>X.number(0,255)).join(".")}function zi(){return X.date().toISOString()}function Xi(){return kt().slice(0,10)}function Zi(){return kt().slice(11)}function es(e){return X.randexp(De[e]).replace(wn,(t,r)=>X.randexp(De[r]))}function ts(e,t){let r=nr(e.format);if(typeof r=="function")return r(e);switch(e.format){case"date-time":case"datetime":return kt();case"date":return gn();case"time":return mn();case"ipv4":return hn();case"regex":return".+?";case"email":case"hostname":case"ipv6":case"uri":case"uri-reference":case"iri":case"iri-reference":case"idn-email":case"idn-hostname":case"json-pointer":case"slug":case"uri-template":case"uuid":case"duration":return Sn(e.format);default:if(typeof r=="undefined"){if(ee("failOnInvalidFormat"))throw new Error(`unknown registry key ${ue.short(e.format)}`);return t()}throw new Error(`unsupported format '${e.format}'`)}}function rs(e){return ue.typecast("string",e,r=>e.format?ts(e,()=>sr(r.minLength,r.maxLength)):e.pattern?X.randexp(e.pattern):sr(r.minLength,r.maxLength))}function ns({$comment:e,title:t,description:r}){return Object.entries({comment:e,title:t,description:r}).filter(([,l])=>l).reduce((l,[c,p])=>(l[c]=p,l),{})}function Ze(e,t,r,l){if(e=r(e,null,t),e&&(e.oneOf||e.anyOf||e.allOf)&&(e=r(e,null,t)),!e)throw new Error(`Cannot traverse at '${t.join(".")}', given '${JSON.stringify(l)}'`);let c={...ns(e),schemaPath:t};if(t[t.length-1]!=="properties"){if(ee("useExamplesValue")&&Array.isArray(e.examples)){let A=e.examples.concat("default"in e?[e.default]:[]);return{value:ue.typecast(null,e,()=>X.pick(A)),context:c}}if(ee("useExamplesValue")&&typeof e.example!="undefined")return{value:ue.typecast(null,e,()=>e.example),context:c};if(ee("useDefaultValue")&&"default"in e&&(e.default!==""||!ee("replaceEmptyByRandomValue")))return{value:e.default,context:c};if("template"in e)return{value:ue.template(e.template,l),context:c};if("const"in e)return{value:e.const,context:c}}if(e.not&&typeof e.not=="object"&&(e=ue.notValue(e.not,ue.omitProps(e,["not"])),e.type&&e.type==="object")){let{value:A,context:D}=Ze(e,t.concat(["not"]),r,l);return{value:ue.clean(A,e,!1),context:{...c,items:D}}}if(typeof e.thunk=="function"){let{value:A,context:D}=Ze(e.thunk(l),t,r);return{value:A,context:{...c,items:D}}}if(e.jsonPath)return{value:e,context:c};let p=e.type;if(Array.isArray(p)?p=X.pick(p):typeof p=="undefined"&&(p=rn(e,t)||p,p&&(e.type=p)),typeof e.generate=="function"){let A=ue.typecast(null,e,()=>e.generate(l,t)),D=A===null?"null":typeof A;if(D===p||D==="number"&&p==="integer"||Array.isArray(A)&&p==="array")return{value:A,context:c}}if(typeof e.pattern=="string")return{value:ue.typecast("string",e,()=>X.randexp(e.pattern)),context:c};if(Array.isArray(e.enum))return{value:ue.typecast(null,e,()=>X.pick(e.enum)),context:c};if(typeof p=="string")if(ct[p])try{let A=ct[p](e,t,r,Ze);return p==="array"?{value:A.map(({value:D})=>D),context:{...c,items:A.map(Array.isArray(e.items)?({context:D})=>D:({context:D})=>({...D,schemaPath:D.schemaPath.slice(0,-1)}))}}:p==="object"?A!==null?{value:A.value,context:{...c,items:A.context}}:{value:{},context:c}:{value:A,context:c}}catch(A){throw typeof A.path=="undefined"?new bt(A.stack,t):A}else{if(ee("failOnInvalidTypes"))throw new bt(`unknown primitive ${ue.short(p)}`,t.concat(["type"]));{let A=ee("defaultInvalidTypeProduct");return typeof A=="string"&&ct[A]?{value:ct[A](e,t,r,Ze),context:c}:{value:A,context:c}}}let f={},E={...c};Array.isArray(e)&&(f=[]);let $=ee("pruneProperties")||[];return Object.keys(e).forEach(A=>{if(!$.includes(A)&&e[A]!==null)if(typeof e[A]=="object"&&A!=="definitions"){let{value:D,context:T}=Ze(e[A],t.concat([A]),r,f);f[A]=ue.clean(D,e[A],!1),E[A]=T,f[A]===null&&ee("omitNulls")&&(delete f[A],delete E[A])}else f[A]=e[A]}),{value:f,context:E}}function is(e){return Array.isArray(e)?X.pick(e):e}function ss(e,t){if(!Array.isArray(e))return e;let r=t?e.pop():e.shift();return t?e.unshift(r):e.push(r),r}function Yt(e,t,r,l){if(!e||typeof e!="object")return e;if(r||(r={}),t||(t=e),Array.isArray(e))return e.map(c=>Yt(c,t,r,l));if(e.jsonPath){let{JSONPath:c}=Xt(),p=typeof e.jsonPath!="object"?{path:e.jsonPath}:e.jsonPath;p.group=e.group||p.group||l,p.cycle=e.cycle||p.cycle||!1,p.reverse=e.reverse||p.reverse||!1,p.count=e.count||p.count||1;let f=`${p.group}__${p.path}`;return r[f]||(p.count>1?r[f]=c(p.path,t).slice(0,p.count):r[f]=c(p.path,t)),p.cycle||p.reverse?ss(r[f],p.reverse):is(r[f])}return Object.keys(e).forEach(c=>{e[c]=Yt(e[c],t,r,c)}),e}function os(e,t,r,l){if(Object.prototype.toString.call(t)!=="[object Object]")throw new Error(`Invalid input, expecting object but given ${typeof t}`);let c=ee("refDepthMin")||0,p=ee("refDepthMax")||3;try{let{resolveSchema:f}=bn({refs:e,schema:t,container:r,synchronous:l,refDepthMin:c,refDepthMax:p}),E=On(ue.clone(t),[],f);return ee("resolveJsonPath")?{value:Yt(E.value),context:E.context}:E}catch(f){throw f.path?new Error(`${f.message} in /${f.path.join("/")}`):f}}function as(e){return e.value}function ls(e,t){return t.reduce((r,l)=>l in r?r[l]:{},e)}function qt(e,t,r,l=r){let{title:c,description:p,comment:f}=ls(e,t),E=[];ee("renderTitle")&&c&&E.push(` ${c}`,""),ee("renderDescription")&&p&&E.push(` ${p}`),ee("renderComment")&&f&&E.push(` ${f}`),r.commentBefore=E.join(`
1
+ import{a as Pt,b as Ce}from"./chunk-22DBAEUX.js";import{B as Jn,C as Gn,D as pr,E as dr,G as Qn,L as zn,O as It,P as Xn,Q as Zn,R as ei,S as ni,T as xe,a as Nt,b as Mn,c as fr,d as Cn,e as Nn,f as Pn,g as In,h as xn,i as Ln,j as $n,k as pt,l as Dn,m as Wn,n as dt,o as Fn,p as Bn,t as jn,u as Un,v as Hn,w as Yn,x as qn,y as Vn,z as Kn}from"./chunk-T4QVGWWK.js";import{a as hr,b as gr,c as mr,d as yr,f as Be}from"./chunk-CANJPWLT.js";import{a as Ct,b as cr,e as ur}from"./chunk-FRWG7YTE.js";import{c as ti,e as ri}from"./chunk-W6DIBD4Z.js";import{jsonrepair as qs}from"jsonrepair";var xt=(()=>{var w=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,m=Object.prototype.hasOwnProperty,b=(e,t)=>function(){return e&&(t=(0,e[a(e)[0]])(e=0)),t},W=(e,t)=>function(){return t||(0,e[a(e)[0]])((t={exports:{}}).exports,t),t.exports},I=(e,t)=>{for(var r in t)w(e,r,{get:t[r],enumerable:!0})},V=(e,t,r,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of a(t))!m.call(e,c)&&c!==r&&w(e,c,{get:()=>t[c],enumerable:!(l=i(t,c))||l.enumerable});return e},z=e=>V(w({},"__esModule",{value:!0}),e),se={};I(se,{JSONSchemaFaker:()=>kn,default:()=>_n,setDependencies:()=>jr});function Te(e,t){return typeof e=="string"?typeof t!="undefined"?at.register(e,t):at.get(e):at.registerMany(e)}function ye(e,t){return e=typeof e=="undefined"?He.MIN_INTEGER:e,t=typeof t=="undefined"?He.MAX_INTEGER:t,Math.floor(ee("random")()*(t-e+1))+e}function we(e){return vt.default.prototype.max=ee("defaultRandExpMax"),vt.default.prototype.randInt=(r,l)=>r+Math.floor(ee("random")()*(1+(l-r))),new vt.default(e).gen()}function ke(e){return e[Math.floor(ee("random")()*e.length)]}function Le(e){let t,r,l=e.length,c=e.slice();for(;l>0;)r=Math.floor(ee("random")()*l),l-=1,t=c[l],c[l]=c[r],c[r]=t;return c}function Ge(e,t){return ee("random")()*(t-e)+e}function je(e,t,r,l,c=!1){return r=typeof r=="undefined"?He.MIN_NUMBER:r,l=typeof l=="undefined"?He.MAX_NUMBER:l,e=typeof e=="undefined"?r:e,t=typeof t=="undefined"?l:t,t<e&&(t+=e),c?Ge(e,t):ye(e,t)}function St(e){switch(e){case"seconds":return je(0,60)*60;case"minutes":return je(15,50)*612;case"hours":return je(12,72)*36123;case"days":return je(7,30)*86412345;case"weeks":return je(4,52)*604812345;case"months":return je(2,13)*2592012345;case"years":return je(1,20)*31104012345;default:break}}function Bt(e){if(e)return St(e);let t=ee("minDateTime"),r=ee("maxDateTime");typeof t=="string"&&(t=new Date(t)),typeof r=="string"&&(r=new Date(r));let l=new Date().getTime();return typeof t=="number"&&(t=new Date(l+t)),typeof r=="number"&&(r=new Date(l+r)),new Date(Ge(t.getTime(),r.getTime()))}function Er(e,t,r){if(t=decodeURIComponent(t),r&&r[t])return Et(r[t]);let l=t.replace("#/","/").split("/"),c=e.$ref&&r&&r[e.$ref]||e;for(!c&&!l[0]&&(l[0]=e.$ref.split("#/")[0]),r&&t.includes("#/")&&r[l[0]]&&(c=r[l.shift()]),l[0]||l.shift();c&&l.length>0;){let p=l.shift();if(!c[p])throw new Error(`Prop not found: ${p} (${t})`);c=c[p]}return c}function At(e){return typeof e=="string"&&zr.test(e)}function Ue(e){return["number","boolean"].includes(typeof e)}function Fe(e,...t){return t.filter(r=>typeof e[r]!="undefined").length>0}function Or(e){if(e.includes(" "))return new Date(e).toISOString().substr(0,10);let[t,r,l]=e.split("T")[0].split("-");return r=`0${Math.max(1,Math.min(12,r))}`.slice(-2),l=`0${Math.max(1,Math.min(31,l))}`.slice(-2),`${t}-${r}-${l}`}function _i(e){if(e.includes(" "))return new Date(e).toISOString().substr(0,10);let[t,r]=e.split("T"),[l,c,p]=t.split("-"),[f,E,$]=r.substr(0,8).split(":");return c=`0${Math.max(1,Math.min(12,c))}`.slice(-2),p=`0${Math.max(1,Math.min(31,p))}`.slice(-2),f=`0${Math.max(1,Math.min(23,f))}`.slice(-2),E=`0${Math.max(1,Math.min(59,E))}`.slice(-2),$=`0${Math.max(1,Math.min(59,$))}`.slice(-2),`${l}-${c}-${p}T${f}:${E}:${$}.000Z`}function Mi(e,t,r){let l={};switch(e||t.type){case"integer":case"number":if(typeof t.minimum!="undefined"&&(l.minimum=t.minimum),typeof t.maximum!="undefined"&&(l.maximum=t.maximum),t.enum){let p=Math.max(l.minimum||0,0),f=Math.min(l.maximum||1/0,1/0);t.exclusiveMinimum&&p===t.minimum&&(p+=t.multipleOf||1),t.exclusiveMaximum&&f===t.maximum&&(f-=t.multipleOf||1),(p||f!==1/0)&&(t.enum=t.enum.filter(E=>E>=p&&E<=f))}break;case"string":{l.minLength=ee("minLength")||0,l.maxLength=ee("maxLength")||Number.MAX_SAFE_INTEGER,typeof t.minLength!="undefined"&&(l.minLength=Math.max(l.minLength,t.minLength)),typeof t.maxLength!="undefined"&&(l.maxLength=Math.min(l.maxLength,t.maxLength));break}default:break}let c=r(l);if(c==null)return null;switch(e||t.type){case"number":c=At(c)?parseFloat(c):c;break;case"integer":c=At(c)?parseInt(c,10):c;break;case"boolean":c=!!c;break;case"string":{if(Ue(c))return c;c=String(c);let p=Math.max(l.minLength||0,0),f=Math.min(l.maxLength||1/0,1/0),E,$=0;for(;c.length<p;)if(E=c,t.pattern?c+=X.randexp(t.pattern):c+=`${X.pick([" ","/","_","-","+","=","@","^"])}${c}`,c===E){if($+=1,$===3)break}else $=0;switch(c.length>f&&(c=c.substr(0,f)),t.format){case"date-time":case"datetime":c=new Date(_i(c)).toISOString().replace(/([0-9])0+Z$/,"$1Z");break;case"full-date":case"date":c=new Date(Or(c)).toISOString().substr(0,10);break;case"time":c=new Date(`1969-01-01 ${c}`).toISOString().substr(11);break;default:break}break}default:break}return c}function Xe(e,t){return Object.keys(t).forEach(r=>{typeof t[r]!="object"||t[r]===null?e[r]=t[r]:Array.isArray(t[r])?(e[r]=e[r]||[],t[r].forEach((l,c)=>{e.type==="array"&&t.type==="array"?e[r][c]=Xe(e[r][c]||{},l,!0):Array.isArray(e[r])&&e[r].indexOf(l)===-1&&e[r].push(l)})):typeof e[r]!="object"||e[r]===null||Array.isArray(e[r])?e[r]=Xe({},t[r]):e[r]=Xe(e[r],t[r])}),e}function Et(e,t=new Map){if(!e||typeof e!="object")return e;if(t.has(e))return t.get(e);if(Array.isArray(e)){let l=[];return t.set(e,l),l.push(...e.map(c=>Et(c,t))),l}let r={};return t.set(e,r),Object.keys(e).reduce((l,c)=>(l[c]=Et(e[c],t),l),r)}function Ci(e){let t=JSON.stringify(e),r=JSON.stringify(e,null,2);return t.length>400?`${r.substr(0,400)}...`:r}function vr(){return X.pick([!1,!0,null,-1,NaN,Math.PI,1/0,void 0,[],{},Math.random(),Math.random().toString(36).substr(2)])}function Ni(e,t){if(e.enum)return e.enum.includes(t);if(e.const)return e.const===t}function Pi(e,t){let r=Xe({},t);if(typeof e.minimum!="undefined"&&(r.maximum=e.minimum,r.exclusiveMaximum=!0),typeof e.maximum!="undefined"&&(r.minimum=e.maximum>r.maximum?0:e.maximum,r.exclusiveMinimum=!0),typeof e.minLength!="undefined"&&(r.maxLength=e.minLength),typeof e.maxLength!="undefined"&&(r.minLength=e.maxLength>r.maxLength?0:e.maxLength),e.type)r.type=X.pick(He.SCALAR_TYPES.filter(l=>(Array.isArray(e.type)?e.type:[e.type]).every(p=>l==="number"||l==="integer"?p!=="number"&&p!=="integer":l!==p)));else if(e.enum){let l;do l=vr();while(e.enum.indexOf(l)!==-1);r.enum=[l]}return e.required&&r.properties&&e.required.forEach(l=>{delete r.properties[l]}),r}function jt(e,t){let r=t.minimum!==void 0,l=t.maximum!==void 0;return(r||l)&&(!r||e>=t.minimum)&&(!l||e<=t.maximum)}function Ii(e,t){return!t.every(r=>jt(e,r))}function xi(e,t){return t.reduce((l,c)=>l+(jt(e,c)?1:0),0)===1}function Li(e){return["enum","const","default","examples","required","definitions","items","properties"].includes(e)}function $i(e,t){return Object.keys(e).filter(r=>!t.includes(r)).reduce((r,l)=>(Array.isArray(e[l])?r[l]=e[l].slice():r[l]=e[l]instanceof Object?Xe({},e[l]):e[l],r),{})}function br(e,t){return Array.isArray(e)?e.map(r=>br(r,t)):(typeof e=="string"&&(e=e.replace(/#\{([\w.-]+)\}/g,(r,l)=>t[l])),e)}function Ut(e){return Object.prototype.toString.call(e)==="[object Object]"&&!Object.keys(e).length}function Tr(e,t){t=t.items||t;let r=ee("alwaysFakeOptionals"),l=Array.isArray(t.required)&&t.required.includes(e)||r,c=typeof t.thunk=="function"||t.additionalProperties&&typeof t.additionalProperties.thunk=="function";return!l&&!c}function Ht(e,t,r=!1){if(!e||typeof e!="object")return e;if(Array.isArray(e))return e.map(l=>Ht(l,t,!0)).filter(l=>typeof l!="undefined");if(Object.keys(e).forEach(l=>{if(Ut(e[l]))Tr(l,t)&&delete e[l];else{let c=t;t&&t.properties&&t.properties[l]&&(c=t.properties[l]);let p=Ht(e[l],c);Ut(p)||(e[l]=p)}typeof e[l]=="undefined"&&delete e[l]}),!(!Object.keys(e).length&&r))return e}function Di(e){return(t,r,l,c)=>{let p=t,f=[];typeof t=="object"&&(p=Object.keys(t)[0],Array.isArray(t[p])?f=t[p]:f.push(t[p]));let E=p.split("."),$=e();for(;E.length>1;)$=$[E.shift()];return t=typeof $=="object"?$[E[0]]:$,typeof t=="function"&&(t=t.apply($,f.map(A=>ue.template(A,c)))),Object.prototype.toString.call(t)==="[object Object]"&&Object.keys(t).forEach(A=>{if(typeof t[A]=="function")throw new Error(`Cannot resolve value for '${l}: ${p}', given: ${t}`)}),t}}function Wi(e,t){if(typeof e=="undefined")return et.list();if(typeof e=="string")if(typeof t=="function")et.register(e,t);else if(t===null||t===!1)et.unregister(e);else return et.get(e);else et.registerMany(e)}function Fi(e,t,r){return Object.keys(e).filter(l=>{let c=tn.indexOf(t)>-1;return r.indexOf(l)>-1&&!c}).length>0}function Bi(e,t){let r=Object.keys(lt);for(let l=0;l<r.length;l+=1){let c=r[l],p=t[t.length-1];if(Fi(e,p,lt[c]))return c}}function ji(){return ee("random")()>.5}function Ui(){return null}function Hi(e,t,r,l,c,p){let f=[],E=[];function $(D){let T=JSON.stringify(D.value);return E.indexOf(T)===-1?(E.push(T),f.push(D),!0):!1}t.forEach($);let A=100;for(;f.length!==t.length&&($(p(r.items||l,e,c))||(A-=1),!!A););return f}function Yi(e,t,r,l){let c=[];if(!(e.items||e.additionalItems)){if(ue.hasProperties(e,"minItems","maxItems","uniqueItems")&&(e.minItems!==0||e.maxItems!==0))throw new bt(`missing items for ${ue.short(e)}`,t);return c}if(Array.isArray(e.items))return e.items.map((j,oe)=>{let Q=t.concat(["items",oe]);return l(j,Q,r)});let p=e.minItems,f=e.maxItems,E=ee("minItems"),$=ee("maxItems");E&&(p=typeof p=="undefined"?E:Math.min(E,p)),$&&(f=typeof f=="undefined"?$:Math.min($,f),f&&f>$&&(f=$),p&&p>$&&(p=f));let A=ee("alwaysFakeOptionals")===!0?1:ee("optionalsProbability"),D=ee("alwaysFakeOptionals")||ee("fixedProbabilities")||!1,T=X.number(p,f,1,5);A!==null&&(T=Math.max(D?Math.round((f||T)*A):Math.abs(X.number(p,f)*A),p||0));let Y=typeof e.additionalItems=="object"?e.additionalItems:{};for(let j=c.length;j<T;j+=1){let oe=t.concat(["items",j]),Q=l(e.items||Y,oe,r);c.push(Q)}if(e.contains&&T>0){let j=X.number(0,T-1);c[j]=l(e.contains,t.concat(["items",j]),r)}return e.uniqueItems?Hi(t.concat(["items"]),c,e,Y,r,l):c}function qi(e){let t=typeof e.minimum=="undefined"||e.minimum===-Number.MAX_VALUE?He.MIN_INTEGER:e.minimum,r=typeof e.maximum=="undefined"||e.maximum===Number.MAX_VALUE?He.MAX_INTEGER:e.maximum,l=e.multipleOf,c=l&&String(l).match(/e-(\d)|\.(\d+)$/);if(c){let p=(Math.random()*X.number(0,10)+1)*l,f=c[1]||c[2].length,E=parseFloat(p.toFixed(f)),$=X.number(t,r-1);return String(E).includes(".")?$+E:($+E).toExponential()}if(l&&(r=Math.floor(r/l)*l,t=Math.ceil(t/l)*l),e.exclusiveMinimum&&t===e.minimum&&(t+=l||1),e.exclusiveMaximum&&r===e.maximum&&(r-=l||1),t>r)return NaN;if(l){let p=X.number(Math.floor(t/l),Math.floor(r/l))*l;for(;p<t;)p+=l;return p}return X.number(t,r,void 0,void 0,e.type!=="integer")}function Vi(e){return Math.floor(ir({...e}))}function Ki(e){return X.shuffle(pn).slice(0,e)}function Ji(e,t,r,l){let c={},p=e.properties||{},f=e.patternProperties||{},E=typeof e.required=="boolean"?[]:(e.required||[]).slice(),$=e.additionalProperties!==!1,A=Object.keys(p),D=Object.keys(f),T=A.concat(D).reduce((B,d)=>(E.indexOf(d)===-1&&B.push(d),B),[]),Y=E.concat(T),j=$&&e.additionalProperties===!0?Rt:e.additionalProperties;if(!$&&A.length===0&&D.length===0&&ue.hasProperties(e,"minProperties","maxProperties","dependencies","required"))return null;if(ee("requiredOnly")===!0)return E.forEach(B=>{p[B]&&(c[B]=p[B])}),l(c,t.concat(["properties"]),r,e);let oe=ee("alwaysFakeOptionals")===!0?1:ee("optionalsProbability"),Q=ee("alwaysFakeOptionals")||ee("fixedProbabilities")||!1,te=ee("ignoreProperties")||[],pe=ee("reuseProperties"),he=ee("fillProperties"),F=e.maxProperties||Y.length+($?X.number(1,5):0),y=Math.max(e.minProperties||0,E.length),S=Math.max(0,Y.length-y);Y.length===1&&!E.length&&(y=Math.max(X.number(he?1:0,F),y)),oe!==null&&(Q===!0?S=Math.round(y-E.length+oe*(Y.length-y)):S=X.number(y-E.length,oe*(Y.length-y)));let k=X.shuffle(T).slice(0,S),M=T.filter(B=>k.indexOf(B)!==-1),x=oe!==null||E.length===F?F:X.number(0,F),R=E.concat(X.shuffle(M).slice(0,x)).slice(0,F),C=[],P=[];if(e.dependencies&&(Object.keys(e.dependencies).forEach(B=>{let d=e.dependencies[B];if(R.indexOf(B)!==-1)if(Array.isArray(d))d.forEach(N=>{R.indexOf(N)===-1&&R.push(N)});else if(Array.isArray(d.oneOf||d.anyOf)){let N=d.oneOf||d.anyOf;P.push({prop:B,values:N})}else C.push(d)}),C.length))return delete e.dependencies,l({allOf:C.concat(e)},t.concat(["properties"]),r,e);let U=[],q=[];R.forEach(B=>{if(p[B]&&["{}","true"].includes(JSON.stringify(p[B].not)))return;for(let N=0;N<te.length;N+=1)if(te[N]instanceof RegExp&&te[N].test(B)||typeof te[N]=="string"&&te[N]===B||typeof te[N]=="function"&&te[N](p[B],B)){U.push(B);return}j===!1&&E.indexOf(B)!==-1&&(c[B]=p[B]),p[B]&&(c[B]=p[B]);let d;if(D.forEach(N=>{B.match(new RegExp(N))&&(d=!0,c[B]?ue.merge(c[B],f[N]):c[X.randexp(B)]=f[N])}),!d){let N=f[B]||j;N&&j!==!1?c[f[B]?X.randexp(B):B]=p[B]||N:q.push(B)}});let Z=Object.keys(c).length+(he?0:U.length),Ee=B=>X.randexp(`_?[_a-f\\d]{1,3}${B?"\\$?":""}`);function Oe(B){let d;do{if(!B.length)break;d=B.shift()}while(c[d]);return d}let be=y;if($&&!E.length&&(be=Math.max(oe===null||j?X.number(he?1:0,F):0,y)),!M.length&&!S&&$&&Q===!0&&he){let B=X.number(0,F);for(let d=0;d<B;d+=1)c[Tt(1)+Ee(B[d])]=j||Rt}for(;he&&!(!(D.length||$)||Z>=be);){if($)if(pe&&A.length-Z>be){let B=0,d;do{if(B+=1,B>1e3)break;d=Oe(E)||X.pick(A)}while(typeof c[d]!="undefined");typeof c[d]=="undefined"&&(c[d]=p[d],Z+=1)}else if(D.length&&!j){let B=X.pick(D),d=X.randexp(B);c[d]||(c[d]=f[B],Z+=1)}else{let B=Oe(E)||Tt(1)+Ee();c[B]||(c[B]=j||Rt,Z+=1)}for(let B=0;Z<y&&B<D.length;B+=1){let d=D[B],N=X.randexp(d);c[N]||(c[N]=f[d],Z+=1)}}if(E.length===0&&(!$||oe===!1)){let B=X.number(y,F);for(;Z<B;){let d=Oe(A);d&&(c[d]=p[d]),Z+=1}}let _e=c;if(ee("sortProperties")!==null){let B=Object.keys(p);_e=Object.keys(c).sort((N,K)=>ee("sortProperties")?N.localeCompare(K):B.indexOf(N)-B.indexOf(K)).reduce((N,K)=>(N[K]=c[K],N),{})}let Ne=l(_e,t.concat(["properties"]),r,e);return P.forEach(B=>{for(let d of B.values)if(ue.hasValue(d.properties[B.prop],Ne.value[B.prop])){Object.keys(d.properties).forEach(N=>{N!==B.prop&&ue.merge(Ne.value,l(d.properties,t.concat(["properties"]),r,e).value)});break}}),Ne}function Rr(){let e=X.number(1,5);return Tt(e).join(" ")}function Gi(e=0,t=140){let r=Math.max(0,e),l=X.number(r,t),c=Rr();for(;c.length<r;)c+=Rr();return c.length>l&&(c=c.substr(0,l)),c}function Qi(){return[0,0,0,0].map(()=>X.number(0,255)).join(".")}function zi(){return X.date().toISOString()}function Xi(){return kt().slice(0,10)}function Zi(){return kt().slice(11)}function es(e){return X.randexp(De[e]).replace(wn,(t,r)=>X.randexp(De[r]))}function ts(e,t){let r=nr(e.format);if(typeof r=="function")return r(e);switch(e.format){case"date-time":case"datetime":return kt();case"date":return gn();case"time":return mn();case"ipv4":return hn();case"regex":return".+?";case"email":case"hostname":case"ipv6":case"uri":case"uri-reference":case"iri":case"iri-reference":case"idn-email":case"idn-hostname":case"json-pointer":case"slug":case"uri-template":case"uuid":case"duration":return Sn(e.format);default:if(typeof r=="undefined"){if(ee("failOnInvalidFormat"))throw new Error(`unknown registry key ${ue.short(e.format)}`);return t()}throw new Error(`unsupported format '${e.format}'`)}}function rs(e){return ue.typecast("string",e,r=>e.format?ts(e,()=>sr(r.minLength,r.maxLength)):e.pattern?X.randexp(e.pattern):sr(r.minLength,r.maxLength))}function ns({$comment:e,title:t,description:r}){return Object.entries({comment:e,title:t,description:r}).filter(([,l])=>l).reduce((l,[c,p])=>(l[c]=p,l),{})}function Ze(e,t,r,l){if(e=r(e,null,t),e&&(e.oneOf||e.anyOf||e.allOf)&&(e=r(e,null,t)),!e)throw new Error(`Cannot traverse at '${t.join(".")}', given '${JSON.stringify(l)}'`);let c={...ns(e),schemaPath:t};if(t[t.length-1]!=="properties"){if(ee("useExamplesValue")&&Array.isArray(e.examples)){let A=e.examples.concat("default"in e?[e.default]:[]);return{value:ue.typecast(null,e,()=>X.pick(A)),context:c}}if(ee("useExamplesValue")&&typeof e.example!="undefined")return{value:ue.typecast(null,e,()=>e.example),context:c};if(ee("useDefaultValue")&&"default"in e&&(e.default!==""||!ee("replaceEmptyByRandomValue")))return{value:e.default,context:c};if("template"in e)return{value:ue.template(e.template,l),context:c};if("const"in e)return{value:e.const,context:c}}if(e.not&&typeof e.not=="object"&&(e=ue.notValue(e.not,ue.omitProps(e,["not"])),e.type&&e.type==="object")){let{value:A,context:D}=Ze(e,t.concat(["not"]),r,l);return{value:ue.clean(A,e,!1),context:{...c,items:D}}}if(typeof e.thunk=="function"){let{value:A,context:D}=Ze(e.thunk(l),t,r);return{value:A,context:{...c,items:D}}}if(e.jsonPath)return{value:e,context:c};let p=e.type;if(Array.isArray(p)?p=X.pick(p):typeof p=="undefined"&&(p=rn(e,t)||p,p&&(e.type=p)),typeof e.generate=="function"){let A=ue.typecast(null,e,()=>e.generate(l,t)),D=A===null?"null":typeof A;if(D===p||D==="number"&&p==="integer"||Array.isArray(A)&&p==="array")return{value:A,context:c}}if(typeof e.pattern=="string")return{value:ue.typecast("string",e,()=>X.randexp(e.pattern)),context:c};if(Array.isArray(e.enum))return{value:ue.typecast(null,e,()=>X.pick(e.enum)),context:c};if(typeof p=="string")if(ct[p])try{let A=ct[p](e,t,r,Ze);return p==="array"?{value:A.map(({value:D})=>D),context:{...c,items:A.map(Array.isArray(e.items)?({context:D})=>D:({context:D})=>({...D,schemaPath:D.schemaPath.slice(0,-1)}))}}:p==="object"?A!==null?{value:A.value,context:{...c,items:A.context}}:{value:{},context:c}:{value:A,context:c}}catch(A){throw typeof A.path=="undefined"?new bt(A.stack,t):A}else{if(ee("failOnInvalidTypes"))throw new bt(`unknown primitive ${ue.short(p)}`,t.concat(["type"]));{let A=ee("defaultInvalidTypeProduct");return typeof A=="string"&&ct[A]?{value:ct[A](e,t,r,Ze),context:c}:{value:A,context:c}}}let f={},E={...c};Array.isArray(e)&&(f=[]);let $=ee("pruneProperties")||[];return Object.keys(e).forEach(A=>{if(!$.includes(A)&&e[A]!==null)if(typeof e[A]=="object"&&A!=="definitions"){let{value:D,context:T}=Ze(e[A],t.concat([A]),r,f);f[A]=ue.clean(D,e[A],!1),E[A]=T,f[A]===null&&ee("omitNulls")&&(delete f[A],delete E[A])}else f[A]=e[A]}),{value:f,context:E}}function is(e){return Array.isArray(e)?X.pick(e):e}function ss(e,t){if(!Array.isArray(e))return e;let r=t?e.pop():e.shift();return t?e.unshift(r):e.push(r),r}function Yt(e,t,r,l){if(!e||typeof e!="object")return e;if(r||(r={}),t||(t=e),Array.isArray(e))return e.map(c=>Yt(c,t,r,l));if(e.jsonPath){let{JSONPath:c}=Xt(),p=typeof e.jsonPath!="object"?{path:e.jsonPath}:e.jsonPath;p.group=e.group||p.group||l,p.cycle=e.cycle||p.cycle||!1,p.reverse=e.reverse||p.reverse||!1,p.count=e.count||p.count||1;let f=`${p.group}__${p.path}`;return r[f]||(p.count>1?r[f]=c(p.path,t).slice(0,p.count):r[f]=c(p.path,t)),p.cycle||p.reverse?ss(r[f],p.reverse):is(r[f])}return Object.keys(e).forEach(c=>{e[c]=Yt(e[c],t,r,c)}),e}function os(e,t,r,l){if(Object.prototype.toString.call(t)!=="[object Object]")throw new Error(`Invalid input, expecting object but given ${typeof t}`);let c=ee("refDepthMin")||0,p=ee("refDepthMax")||3;try{let{resolveSchema:f}=bn({refs:e,schema:t,container:r,synchronous:l,refDepthMin:c,refDepthMax:p}),E=On(ue.clone(t),[],f);return ee("resolveJsonPath")?{value:Yt(E.value),context:E.context}:E}catch(f){throw f.path?new Error(`${f.message} in /${f.path.join("/")}`):f}}function as(e){return e.value}function ls(e,t){return t.reduce((r,l)=>l in r?r[l]:{},e)}function qt(e,t,r,l=r){let{title:c,description:p,comment:f}=ls(e,t),E=[];ee("renderTitle")&&c&&E.push(` ${c}`,""),ee("renderDescription")&&p&&E.push(` ${p}`),ee("renderComment")&&f&&E.push(` ${f}`),r.commentBefore=E.join(`
2
2
  `),l instanceof Tn?l.items.forEach($=>{qt(e,[...t,"items",$.key.value],$.key,$.value)}):l instanceof Rn&&l.items.forEach(($,A)=>{qt(e,[...t,"items",A],$)})}function cs({value:e,context:t}){let r=ut.createNode(e);qt(t,[],r);let l=new ut.Document;return l.contents=r,l.toString()}function kr(){qe.define("autoIncrement",function(t,r){if(!this.offset){let l=r.minimum||1,c=l+He.MAX_NUMBER,p=t.initialOffset||r.initialOffset;this.offset=p||X.number(l,c)}return t?this.offset++:r}),qe.define("sequentialDate",function(t,r){if(this.now||(this.now=X.date()),t){if(r=this.now.toISOString(),t=t===!0?"days":t,["seconds","minutes","hours","days","weeks","months","years"].indexOf(t)===-1)throw new Error(`Unsupported increment by ${ue.short(t)}`);this.now.setTime(this.now.getTime()+X.date(t))}return r})}function _r(e,t){let r={};Array.isArray(e)?e.forEach(c=>{r[c.$id||c.id]=c}):r=e||{};function l(c){if(!c||typeof c!="object")return;if(Array.isArray(c))return c.forEach(l);let p=c.$id||c.id;typeof p=="string"&&!r[p]&&(r[p]=c),Object.keys(c).forEach(f=>{l(c[f])})}return l(e),l(t),r}var Mr,Vt,Cr,Kt,Nr,Pr,$e,Ir,Jt,st,Gt,xr,Lr,$r,Dr,Wr,ot,Ot,Qt,Fr,Br,zt,Xt,jr,Ur,Zt,ce,er,Hr,Yr,at,ee,tr,rr,qr,Vr,Kr,Jr,Gr,Qr,He,vt,X,zr,ue,Xr,Zr,et,nr,en,bt,lt,tn,rn,nn,sn,on,an,ln,cn,un,ir,fn,pn,Tt,Rt,dn,sr,hn,kt,gn,mn,or,_t,yn,De,wn,Sn,An,En,ct,On,vn,bn,ar,lr,Pe,us,fs,ps,ds,hs,gs,ms,ys,ws,Ss,As,Es,Tn,Rn,ut,qe,Ae,kn,_n,Os=b({"src/shared.js"(){Mr=Object.create,Vt=Object.defineProperty,Cr=Object.getOwnPropertyDescriptor,Kt=Object.getOwnPropertyNames,Nr=Object.getPrototypeOf,Pr=Object.prototype.hasOwnProperty,$e=(e,t)=>function(){return t||(0,e[Kt(e)[0]])((t={exports:{}}).exports,t),t.exports},Ir=(e,t,r,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of Kt(t))!Pr.call(e,c)&&c!==r&&Vt(e,c,{get:()=>t[c],enumerable:!(l=Cr(t,c))||l.enumerable});return e},Jt=(e,t,r)=>(r=e!=null?Mr(Nr(e)):{},Ir(t||!e||!e.__esModule?Vt(r,"default",{value:e,enumerable:!0}):r,e)),st=$e({"node_modules/ret/lib/types.js"(e,t){t.exports={ROOT:0,GROUP:1,POSITION:2,SET:3,RANGE:4,REPETITION:5,REFERENCE:6,CHAR:7}}}),Gt=$e({"node_modules/ret/lib/sets.js"(e){var t=st(),r=()=>[{type:t.RANGE,from:48,to:57}],l=()=>[{type:t.CHAR,value:95},{type:t.RANGE,from:97,to:122},{type:t.RANGE,from:65,to:90}].concat(r()),c=()=>[{type:t.CHAR,value:9},{type:t.CHAR,value:10},{type:t.CHAR,value:11},{type:t.CHAR,value:12},{type:t.CHAR,value:13},{type:t.CHAR,value:32},{type:t.CHAR,value:160},{type:t.CHAR,value:5760},{type:t.RANGE,from:8192,to:8202},{type:t.CHAR,value:8232},{type:t.CHAR,value:8233},{type:t.CHAR,value:8239},{type:t.CHAR,value:8287},{type:t.CHAR,value:12288},{type:t.CHAR,value:65279}],p=()=>[{type:t.CHAR,value:10},{type:t.CHAR,value:13},{type:t.CHAR,value:8232},{type:t.CHAR,value:8233}];e.words=()=>({type:t.SET,set:l(),not:!1}),e.notWords=()=>({type:t.SET,set:l(),not:!0}),e.ints=()=>({type:t.SET,set:r(),not:!1}),e.notInts=()=>({type:t.SET,set:r(),not:!0}),e.whitespace=()=>({type:t.SET,set:c(),not:!1}),e.notWhitespace=()=>({type:t.SET,set:c(),not:!0}),e.anyChar=()=>({type:t.SET,set:p(),not:!0})}}),xr=$e({"node_modules/ret/lib/util.js"(e){var t=st(),r=Gt(),l="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?",c={0:0,t:9,n:10,v:11,f:12,r:13};e.strToChars=p=>{var f=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z[\\\]^?])|([0tnvfr]))/g;return p=p.replace(f,(E,$,A,D,T,Y,j,oe)=>{if(A)return E;var Q=$?8:D?parseInt(D,16):T?parseInt(T,16):Y?parseInt(Y,8):j?l.indexOf(j):c[oe],te=String.fromCharCode(Q);return/[[\]{}^$.|?*+()]/.test(te)&&(te="\\"+te),te}),p},e.tokenizeClass=(p,f)=>{for(var E=[],$=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(?:\\)?([^\]]))|(\])|(?:\\)?([^])/g,A,D;(A=$.exec(p))!=null;)if(A[1])E.push(r.words());else if(A[2])E.push(r.ints());else if(A[3])E.push(r.whitespace());else if(A[4])E.push(r.notWords());else if(A[5])E.push(r.notInts());else if(A[6])E.push(r.notWhitespace());else if(A[7])E.push({type:t.RANGE,from:(A[8]||A[9]).charCodeAt(0),to:A[10].charCodeAt(0)});else if(D=A[12])E.push({type:t.CHAR,value:D.charCodeAt(0)});else return[E,$.lastIndex];e.error(f,"Unterminated character class")},e.error=(p,f)=>{throw new SyntaxError("Invalid regular expression: /"+p+"/: "+f)}}}),Lr=$e({"node_modules/ret/lib/positions.js"(e){var t=st();e.wordBoundary=()=>({type:t.POSITION,value:"b"}),e.nonWordBoundary=()=>({type:t.POSITION,value:"B"}),e.begin=()=>({type:t.POSITION,value:"^"}),e.end=()=>({type:t.POSITION,value:"$"})}}),$r=$e({"node_modules/ret/lib/index.js"(e,t){var r=xr(),l=st(),c=Gt(),p=Lr();t.exports=f=>{var E=0,$,A,D={type:l.ROOT,stack:[]},T=D,Y=D.stack,j=[],oe=M=>{r.error(f,`Nothing to repeat at column ${M-1}`)},Q=r.strToChars(f);for($=Q.length;E<$;)switch(A=Q[E++],A){case"\\":switch(A=Q[E++],A){case"b":Y.push(p.wordBoundary());break;case"B":Y.push(p.nonWordBoundary());break;case"w":Y.push(c.words());break;case"W":Y.push(c.notWords());break;case"d":Y.push(c.ints());break;case"D":Y.push(c.notInts());break;case"s":Y.push(c.whitespace());break;case"S":Y.push(c.notWhitespace());break;default:/\d/.test(A)?Y.push({type:l.REFERENCE,value:parseInt(A,10)}):Y.push({type:l.CHAR,value:A.charCodeAt(0)})}break;case"^":Y.push(p.begin());break;case"$":Y.push(p.end());break;case"[":{var te;Q[E]==="^"?(te=!0,E++):te=!1;var pe=r.tokenizeClass(Q.slice(E),f);E+=pe[1],Y.push({type:l.SET,set:pe[0],not:te});break}case".":Y.push(c.anyChar());break;case"(":{var he={type:l.GROUP,stack:[],remember:!0};A=Q[E],A==="?"&&(A=Q[E+1],E+=2,A==="="?he.followedBy=!0:A==="!"?he.notFollowedBy=!0:A!==":"&&r.error(f,`Invalid group, character '${A}' after '?' at column ${E-1}`),he.remember=!1),Y.push(he),j.push(T),T=he,Y=he.stack;break}case")":j.length===0&&r.error(f,`Unmatched ) at column ${E-1}`),T=j.pop(),Y=T.options?T.options[T.options.length-1]:T.stack;break;case"|":{T.options||(T.options=[T.stack],delete T.stack);var F=[];T.options.push(F),Y=F;break}case"{":{var y=/^(\d+)(,(\d+)?)?\}/.exec(Q.slice(E)),S,k;y!==null?(Y.length===0&&oe(E),S=parseInt(y[1],10),k=y[2]?y[3]?parseInt(y[3],10):1/0:S,E+=y[0].length,Y.push({type:l.REPETITION,min:S,max:k,value:Y.pop()})):Y.push({type:l.CHAR,value:123});break}case"?":Y.length===0&&oe(E),Y.push({type:l.REPETITION,min:0,max:1,value:Y.pop()});break;case"+":Y.length===0&&oe(E),Y.push({type:l.REPETITION,min:1,max:1/0,value:Y.pop()});break;case"*":Y.length===0&&oe(E),Y.push({type:l.REPETITION,min:0,max:1/0,value:Y.pop()});break;default:Y.push({type:l.CHAR,value:A.charCodeAt(0)})}return j.length!==0&&r.error(f,"Unterminated group"),D},t.exports.types=l}}),Dr=$e({"node_modules/drange/lib/index.js"(e,t){var r=class tt{constructor(p,f){this.low=p,this.high=f,this.length=1+f-p}overlaps(p){return!(this.high<p.low||this.low>p.high)}touches(p){return!(this.high+1<p.low||this.low-1>p.high)}add(p){return new tt(Math.min(this.low,p.low),Math.max(this.high,p.high))}subtract(p){return p.low<=this.low&&p.high>=this.high?[]:p.low>this.low&&p.high<this.high?[new tt(this.low,p.low-1),new tt(p.high+1,this.high)]:p.low<=this.low?[new tt(p.high+1,this.high)]:[new tt(this.low,p.low-1)]}toString(){return this.low==this.high?this.low.toString():this.low+"-"+this.high}},l=class ht{constructor(p,f){this.ranges=[],this.length=0,p!=null&&this.add(p,f)}_update_length(){this.length=this.ranges.reduce((p,f)=>p+f.length,0)}add(p,f){var E=$=>{for(var A=0;A<this.ranges.length&&!$.touches(this.ranges[A]);)A++;for(var D=this.ranges.slice(0,A);A<this.ranges.length&&$.touches(this.ranges[A]);)$=$.add(this.ranges[A]),A++;D.push($),this.ranges=D.concat(this.ranges.slice(A)),this._update_length()};return p instanceof ht?p.ranges.forEach(E):(f==null&&(f=p),E(new r(p,f))),this}subtract(p,f){var E=$=>{for(var A=0;A<this.ranges.length&&!$.overlaps(this.ranges[A]);)A++;for(var D=this.ranges.slice(0,A);A<this.ranges.length&&$.overlaps(this.ranges[A]);)D=D.concat(this.ranges[A].subtract($)),A++;this.ranges=D.concat(this.ranges.slice(A)),this._update_length()};return p instanceof ht?p.ranges.forEach(E):(f==null&&(f=p),E(new r(p,f))),this}intersect(p,f){var E=[],$=A=>{for(var D=0;D<this.ranges.length&&!A.overlaps(this.ranges[D]);)D++;for(;D<this.ranges.length&&A.overlaps(this.ranges[D]);){var T=Math.max(this.ranges[D].low,A.low),Y=Math.min(this.ranges[D].high,A.high);E.push(new r(T,Y)),D++}};return p instanceof ht?p.ranges.forEach($):(f==null&&(f=p),$(new r(p,f))),this.ranges=E,this._update_length(),this}index(p){for(var f=0;f<this.ranges.length&&this.ranges[f].length<=p;)p-=this.ranges[f].length,f++;return this.ranges[f].low+p}toString(){return"[ "+this.ranges.join(", ")+" ]"}clone(){return new ht(this)}numbers(){return this.ranges.reduce((p,f)=>{for(var E=f.low;E<=f.high;)p.push(E),E++;return p},[])}subranges(){return this.ranges.map(p=>({low:p.low,high:p.high,length:1+p.high-p.low}))}};t.exports=l}}),Wr=$e({"node_modules/randexp/lib/randexp.js"(e,t){var r=$r(),l=Dr(),c=r.types;t.exports=class gt{constructor(f,E){if(this._setDefaults(f),f instanceof RegExp)this.ignoreCase=f.ignoreCase,this.multiline=f.multiline,f=f.source;else if(typeof f=="string")this.ignoreCase=E&&E.indexOf("i")!==-1,this.multiline=E&&E.indexOf("m")!==-1;else throw new Error("Expected a regexp or string");this.tokens=r(f)}_setDefaults(f){this.max=f.max!=null?f.max:gt.prototype.max!=null?gt.prototype.max:100,this.defaultRange=f.defaultRange?f.defaultRange:this.defaultRange.clone(),f.randInt&&(this.randInt=f.randInt)}gen(){return this._gen(this.tokens,[])}_gen(f,E){var $,A,D,T,Y;switch(f.type){case c.ROOT:case c.GROUP:if(f.followedBy||f.notFollowedBy)return"";for(f.remember&&f.groupNumber===void 0&&(f.groupNumber=E.push(null)-1),$=f.options?this._randSelect(f.options):f.stack,A="",T=0,Y=$.length;T<Y;T++)A+=this._gen($[T],E);return f.remember&&(E[f.groupNumber]=A),A;case c.POSITION:return"";case c.SET:{var j=this._expand(f);return j.length?String.fromCharCode(this._randSelect(j)):""}case c.REPETITION:for(D=this.randInt(f.min,f.max===1/0?f.min+this.max:f.max),A="",T=0;T<D;T++)A+=this._gen(f.value,E);return A;case c.REFERENCE:return E[f.value-1]||"";case c.CHAR:{var oe=this.ignoreCase&&this._randBool()?this._toOtherCase(f.value):f.value;return String.fromCharCode(oe)}}}_toOtherCase(f){return f+(97<=f&&f<=122?-32:65<=f&&f<=90?32:0)}_randBool(){return!this.randInt(0,1)}_randSelect(f){return f instanceof l?f.index(this.randInt(0,f.length-1)):f[this.randInt(0,f.length-1)]}_expand(f){if(f.type===r.types.CHAR)return new l(f.value);if(f.type===r.types.RANGE)return new l(f.from,f.to);{let E=new l;for(let $=0;$<f.set.length;$++){let A=this._expand(f.set[$]);if(E.add(A),this.ignoreCase)for(let D=0;D<A.length;D++){let T=A.index(D),Y=this._toOtherCase(T);T!==Y&&E.add(Y)}}return f.not?this.defaultRange.clone().subtract(E):this.defaultRange.clone().intersect(E)}}randInt(f,E){return f+Math.floor(Math.random()*(1+E-f))}get defaultRange(){return this._range=this._range||new l(32,126)}set defaultRange(f){this._range=f}static randexp(f,E){var $;return typeof f=="string"&&(f=new RegExp(f,E)),f._randexp===void 0?($=new gt(f,E),f._randexp=$):($=f._randexp,$._setDefaults(f)),$.gen()}static sugar(){RegExp.prototype.gen=function(){return gt.randexp(this)}}}}}),ot=$e({"node_modules/yaml/dist/PlainValue-ec8e588e.js"(e){var t={ANCHOR:"&",COMMENT:"#",TAG:"!",DIRECTIVES_END:"-",DOCUMENT_END:"."},r={ALIAS:"ALIAS",BLANK_LINE:"BLANK_LINE",BLOCK_FOLDED:"BLOCK_FOLDED",BLOCK_LITERAL:"BLOCK_LITERAL",COMMENT:"COMMENT",DIRECTIVE:"DIRECTIVE",DOCUMENT:"DOCUMENT",FLOW_MAP:"FLOW_MAP",FLOW_SEQ:"FLOW_SEQ",MAP:"MAP",MAP_KEY:"MAP_KEY",MAP_VALUE:"MAP_VALUE",PLAIN:"PLAIN",QUOTE_DOUBLE:"QUOTE_DOUBLE",QUOTE_SINGLE:"QUOTE_SINGLE",SEQ:"SEQ",SEQ_ITEM:"SEQ_ITEM"},l="tag:yaml.org,2002:",c={MAP:"tag:yaml.org,2002:map",SEQ:"tag:yaml.org,2002:seq",STR:"tag:yaml.org,2002:str"};function p(F){let y=[0],S=F.indexOf(`
3
3
  `);for(;S!==-1;)S+=1,y.push(S),S=F.indexOf(`
4
4
  `,S);return y}function f(F){let y,S;return typeof F=="string"?(y=p(F),S=F):(Array.isArray(F)&&(F=F[0]),F&&F.context&&(F.lineStarts||(F.lineStarts=p(F.context.src)),y=F.lineStarts,S=F.context.src)),{lineStarts:y,src:S}}function E(F,y){if(typeof F!="number"||F<0)return null;let{lineStarts:S,src:k}=f(y);if(!S||!k||F>k.length)return null;for(let x=0;x<S.length;++x){let R=S[x];if(F<R)return{line:x,col:F-S[x-1]+1};if(F===R)return{line:x+1,col:1}}let M=S.length;return{line:M,col:F-S[M-1]+1}}function $(F,y){let{lineStarts:S,src:k}=f(y);if(!S||!(F>=1)||F>S.length)return null;let M=S[F-1],x=S[F];for(;x&&x>M&&k[x-1]===`
@@ -89,10 +89,10 @@ et dolore magna aliqua Ut enim ad minim veniam quis nostrud exercitation ullamco
89
89
  commodo consequat Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla
90
90
  pariatur Excepteur sint occaecat cupidatat non proident sunt in culpa qui officia deserunt mollit anim id est
91
91
  laborum`.split(/\W/),Tt=Ki,Rt={type:He.ALLOWED_TYPES},dn=Ji,sr=Gi,hn=Qi,kt=zi,gn=Xi,mn=Zi,or="[a-zA-Z][a-zA-Z0-9+-.]*",_t=`https?://{hostname}(?:${or})+`,yn="(?:\\?([a-z]{1,7}(=\\w{1,5})?&){0,3})?",De={email:"[a-zA-Z\\d][a-zA-Z\\d-]{1,13}[a-zA-Z\\d]@{hostname}",hostname:"[a-zA-Z]{1,33}\\.[a-z]{2,4}",ipv6:"[a-f\\d]{4}(:[a-f\\d]{4}){7}",uri:_t,slug:"[a-zA-Z\\d_-]+","uri-reference":`${_t}${yn}`,"uri-template":_t.replace("(?:","(?:/\\{[a-z][:a-zA-Z0-9-]*\\}|"),"json-pointer":`(/(?:${or.replace("]*","/]*")}|~[01]))+`,uuid:"^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$",duration:"^P(?!$)((\\d+Y)?(\\d+M)?(\\d+D)?(T(?=\\d)(\\d+H)?(\\d+M)?(\\d+S)?)?|(\\d+W)?)$"},De.iri=De["uri-reference"],De["iri-reference"]=De["uri-reference"],De["idn-email"]=De.email,De["idn-hostname"]=De.hostname,wn=new RegExp(`\\{(${Object.keys(De).join("|")})\\}`),Sn=es,An=rs,En={boolean:on,null:cn,array:un,integer:fn,number:ir,object:dn,string:An},ct=En,On=Ze,vn=({refs:e,schema:t,container:r,synchronous:l,refDepthMax:c,refDepthMin:p})=>{let f={},E={},$=0,A,D;return f.resolveSchema=(T,Y,j)=>{if(T==null)return null;if(typeof T.generate=="function")return T;if(typeof(T.$id||T.id)=="string"&&(delete T.id,delete T.$id,delete T.$schema),typeof T.$ref=="string"){let Q=Math.max(p,c)-1;if(T.$ref==="#"||E[T.$ref]<0||A===T.$ref&&++$>Q)return T.$ref!=="#"&&D&&D.length===j.length?ue.getLocalRef(t,T.$ref,l&&e):(delete T.$ref,T);typeof E[T.$ref]=="undefined"&&(E[T.$ref]=X.number(p,c)-1),D=j,A=T.$ref;let te;T.$ref.indexOf("#/")===-1?te=e[T.$ref]||null:te=ue.getLocalRef(t,T.$ref,l&&e)||null;let pe;if(typeof te!="undefined"){if(!te&&ee("ignoreMissingRefs")!==!0)throw new Error(`Reference not found: ${T.$ref}`);E[T.$ref]-=1,ue.merge(T,te||{}),pe=l&&te&&te.$ref}return pe||delete T.$ref,T}if(Array.isArray(T.allOf)){let Q=T.allOf;delete T.allOf,Q.forEach(te=>{let pe=f.resolveSchema(te,null,j);ue.merge(T,typeof pe.thunk=="function"?pe.thunk(T):pe),Array.isArray(T.allOf)&&f.resolveSchema(T,Y,j)})}if(Array.isArray(T.oneOf||T.anyOf)&&j[j.length-2]!=="dependencies"){let Q=T.oneOf||T.anyOf;return T.enum&&T.oneOf&&(T.enum=T.enum.filter(te=>ue.validate(te,Q))),{thunk(te){let pe=ue.omitProps(T,["anyOf","oneOf"]),he=X.pick(Q);return ue.merge(pe,he),Q.forEach(F=>{F.required&&F!==he&&F.required.forEach(y=>{if(he.required&&he.required.includes(y))return;let S=pe.required&&pe.required.includes(y);pe.properties&&!S&&delete pe.properties[y],te&&te.properties&&delete te.properties[y]})}),pe}}}if(Object.keys(T).forEach(Q=>{(Array.isArray(T[Q])||typeof T[Q]=="object")&&!ue.isKey(Q)&&(T[Q]=f.resolveSchema(T[Q],Q,j.concat(Q)))}),j){let Q=j[j.length-1];if(Q==="properties"||Q==="items")return T}return r.wrap(T)},f},bn=vn,ar=os,lr=as,Pe=Jt(Br(),1),us=Pe.default.binaryOptions,fs=Pe.default.boolOptions,ps=Pe.default.intOptions,ds=Pe.default.nullOptions,hs=Pe.default.strOptions,gs=Pe.default.Schema,ms=Pe.default.Alias,ys=Pe.default.Collection,ws=Pe.default.Merge,Ss=Pe.default.Node,As=Pe.default.Pair,Es=Pe.default.Scalar,Tn=Pe.default.YAMLMap,Rn=Pe.default.YAMLSeq,ut=cs,qe=new Zr,Ae=(e,t,r)=>(console.debug("[json-schema-faker] calling JSONSchemaFaker() is deprecated, call either .generate() or .resolve()"),r&&console.debug("[json-schema-faker] local references are only supported by calling .resolve()"),Ae.generate(e,t)),Ae.generateWithContext=(e,t)=>{let r=_r(t,e);return ar(r,e,qe,!0)},Ae.generate=(e,t)=>lr(Ae.generateWithContext(e,t)),Ae.generateYAML=(e,t)=>ut(Ae.generateWithContext(e,t)),Ae.resolveWithContext=(e,t,r)=>{typeof t=="string"&&(r=t,t={}),r=r||(typeof process!="undefined"&&typeof process.cwd=="function"?process.cwd():""),r=`${r.replace(/\/+$/,"")}/`;let l=_r(t,e),c={order:1,canRead(f){let E=f.url.replace("/:",":");return l[E]||l[E.split("/").pop()]},read(f,E){try{E(null,this.canRead(f))}catch($){E($)}}},{$RefParser:p}=Xt();return p.bundle(r,e,{resolve:{file:{order:100},http:{order:200},fixedRefs:c},dereference:{circular:"ignore"}}).then(f=>ar(l,f,qe)).catch(f=>{throw new Error(`Error while resolving schema (${f.message})`)})},Ae.resolve=(e,t,r)=>Ae.resolveWithContext(e,t,r).then(lr),Ae.resolveYAML=(e,t,r)=>Ae.resolveWithContext(e,t,r).then(ut),kr(),Ae.format=nr,Ae.option=ee,Ae.random=X,Ae.extend=(e,t)=>(qe.extend(e,t),Ae),Ae.define=(e,t)=>(qe.define(e,t),Ae),Ae.reset=e=>(qe.reset(e),kr(),Ae),Ae.locate=e=>qe.get(e),Ae.VERSION="0.5.5",kn={...Ae},_n=Ae}}),vs=W({"src/src/main.iife.js"(e,t){var r=(Os(),z(se));typeof $RefParser!="undefined"&&typeof JSONPath!="undefined"&&r.setDependencies({...JSONPath,$RefParser}),typeof window!="undefined"&&(window.JSONSchemaFaker=r.default),t.exports=r.default,t.exports.JSONSchemaFaker=r.JSONSchemaFaker}});return vs()})();((w,i)=>{w.JSONSchemaFaker=i()})(typeof self!="undefined"?self:typeof window!="undefined"?window:globalThis,()=>xt);xt.random.shuffle=function(){return["[placeholder]"]};xt.option({useDefaultValue:!0,alwaysFakeOptionals:!0});function ui(w){return xt.generate(w)}var fi=async(w,i)=>{let a=new TextEncoder,m=a.encode(w),b=a.encode(i),W=await crypto.subtle.importKey("raw",m,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]),I=await crypto.subtle.sign("HMAC",W,b);return Array.from(new Uint8Array(I)).map(V=>V.toString(16).padStart(2,"0")).join("")},pi=(w,i)=>{if(typeof w!="string"||typeof i!="string"||w.length!==i.length)return!1;let a=0;for(let m=0;m<w.length;m+=1)a|=w.charCodeAt(m)^i.charCodeAt(m);return a===0};import{Response as Ds}from"cross-fetch";var Mo=()=>typeof Response!="undefined"?Response:Ds,di=async()=>{if(process.env.NOVU_BRIDGE_ORIGIN)return`${process.env.NOVU_BRIDGE_ORIGIN}/api/novu`;if(process.env.NEXT_PUBLIC_VERCEL_ENV==="preview"&&process.env.NEXT_PUBLIC_VERCEL_URL)return`https://${process.env.NEXT_PUBLIC_VERCEL_URL}/api/novu`;try{if(process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev"){let i=await(await fetch("http://localhost:2022/.well-known/novu")).json();return`${i.tunnelOrigin}${i.route}`}}catch(w){console.error(w)}return""};function hi(w){return!!w&&typeof w=="object"&&"error"in w&&"message"in w&&"statusCode"in w}var Lt=(w,i)=>{if(!w)throw new Fn;return{post:async(a,m)=>{let b=await fetch(`${i}/v1${a}`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`ApiKey ${w}`},body:JSON.stringify(m)}),W=await b.json();if(b.ok)return W;throw hi(W)?new Bn(W.statusCode,W.error,W.message):new Nt(W)},delete:async a=>(await fetch(`${i}/v1${a}`,{method:"DELETE",headers:{"Content-Type":"application/json",Authorization:`ApiKey ${w}`}})).json()}};import rt from"chalk";var me={info:w=>rt.blue(w),warning:w=>rt.yellow(w),error:w=>rt.red(w),success:w=>rt.green(w),underline:w=>rt.underline(w),bold:w=>rt.bold(w)},Re={SUCCESS:me.success("\u2714"),ERROR:me.error("\u2717"),WARNING:me.warning("\u26A0"),INFO:me.info("\u2139"),ARROW:me.bold("\u2192"),MOCK:me.info("\u25CB"),HYDRATED:me.bold(me.info("\u2192")),STEP:me.info("\u03C3"),ACTION:me.info("\u03B1"),DURATION:me.info("\u0394"),PROVIDER:me.info("\u2699"),OUTPUT:me.info("\u21E2"),INPUT:me.info("\u21E0"),WORKFLOW:me.info("\u03C9"),STATE:me.info("\u03C3"),EXECUTE:me.info("\u03B5"),PREVIEW:me.info("\u03C1")};function $t(w){return w||process.env.NOVU_API_URL||"https://api.novu.co"}function Dt(w){return w||process.env.NOVU_SECRET_KEY||process.env.NOVU_API_KEY||""}import mi from"sanitize-html";var Ws=["src","alt","width","height","loading","srcset","sizes","crossorigin","usemap","ismap","class","id","style","title","dir","lang"];function Fs(w){return w.toLowerCase().startsWith("on")}function Bs(w){return w.replace(/<\/([a-zA-Z][a-zA-Z0-9]*)\s*\/[^>]*>/g,"</$1>")}var js={allowedTags:mi.defaults.allowedTags.concat(["style","img","html","head","body","link","meta","title"]),allowedAttributes:!1,transformTags:{"*":(w,i)=>{let a={};for(let[m,b]of Object.entries(i))Fs(m)||(a[m]=b);return{tagName:w,attribs:a}},img:(w,i)=>{let a={};for(let[m,b]of Object.entries(i))Ws.includes(m.toLowerCase())&&(a[m]=b);return{tagName:w,attribs:a}}},allowVulnerableTags:!0,parseStyleAttributes:!1,parser:{lowerCaseAttributeNames:!0}},gi=w=>{if(!w)return w;let i=Bs(w),a=/^<!DOCTYPE .*?>/,m=i.match(a),b=mi(i,js);return m?m[0]+b:b},Wt=w=>Object.keys(w).reduce((i,a)=>{let m=w[a];return typeof m=="string"?i[a]=gi(m):Array.isArray(m)?i[a]=m.map(b=>typeof b=="string"?gi(b):typeof b=="object"?Wt(b):b):typeof m=="object"&&m!==null?i[a]=Wt(m):i[a]=m,i},{});function yi(w,i=!0,a=console){i&&(a.info(`
92
- ${me.bold(me.underline("Discovered workflowId:"))} '${w.workflowId}'`),w.steps.forEach((m,b)=>{let W=b===w.steps.length-1,I=W?"\u2514":"\u251C";a.info(`${I} ${Re.STEP} Discovered stepId: '${m.stepId}' Type: '${m.type}'`),m.providers.forEach((V,z)=>{let se=z===m.providers.length-1,Te=W?" ":"\u2502",ye=se?"\u2514":"\u251C";a.info(`${Te} ${ye} ${Re.PROVIDER} Discovered provider: '${V.type}'`)})}))}import{jsonrepair as Us}from"jsonrepair";function wi(w){let i=w.trim();return(i.startsWith("{")&&i.endsWith("}")||i.startsWith("[")&&i.endsWith("]"))&&i.length>2}var Si="__novuJsonString";function Hs(w){return typeof w=="object"&&w!==null&&!Array.isArray(w)&&w[Si]===!0}function mt(w){if(typeof w=="string"){if(!wi(w))return w;try{let i=JSON.parse(w);return{[Si]:!0,value:mt(i)}}catch{return w}}if(Array.isArray(w))return w.map(i=>mt(i));if(w&&typeof w=="object"){let i={};for(let[a,m]of Object.entries(w))i[a]=mt(m);return i}return w}function yt(w){if(Hs(w))return JSON.stringify(yt(w.value));if(Array.isArray(w))return w.map(i=>yt(i));if(w&&typeof w=="object"){let i={};for(let[a,m]of Object.entries(w))i[a]=yt(m);return i}return w}function Ys(w){try{return JSON.parse(w),w}catch{try{return Us(w)}catch{return w}}}function Ai(w){return Object.fromEntries(Object.entries(w).map(([i,a])=>typeof a=="string"?[i,wi(a)?Ys(a):a]:typeof a=="object"&&a!==null&&!Array.isArray(a)?[i,Ai(a)]:[i,a]))}function Ei(w){return!(w!=null&&w.data)||typeof w.data!="object"||Array.isArray(w.data)?w:{...w,data:Ai(w.data)}}function Oi(){return["development",void 0,"dev"].includes(process.env.NODE_ENV)}var wt=class{constructor(i){this.discoveredWorkflows=new Map;this.discoverWorkflowPromises=new Map;this.registeredAgents=new Map;this.version="2.11.2-alpha.0";let a=this.buildOptions(i);this.apiUrl=a.apiUrl,this.secretKey=a.secretKey,this.strictAuthentication=a.strictAuthentication,this.verbose=a.verbose,this.logger=a.logger,this.templateEngine=zn()}buildOptions(i){let a={apiUrl:$t(i==null?void 0:i.apiUrl),secretKey:Dt(i==null?void 0:i.secretKey),strictAuthentication:!Oi(),verbose:Oi(),logger:console};return(i==null?void 0:i.strictAuthentication)!==void 0?a.strictAuthentication=i.strictAuthentication:process.env.NOVU_STRICT_AUTHENTICATION_ENABLED!==void 0&&(a.strictAuthentication=process.env.NOVU_STRICT_AUTHENTICATION_ENABLED==="true"),(i==null?void 0:i.verbose)!==void 0&&(a.verbose=i.verbose),(i==null?void 0:i.logger)!==void 0&&(a.logger=i.logger),a}log(...i){this.verbose&&this.logger.info(...i)}async addWorkflows(i){for(let a of i){if(this.discoveredWorkflows.has(a.id))continue;let m=this.discoverWorkflowPromises.get(a.id);if(m){await m;continue}let b=this.addWorkflow(a);this.discoverWorkflowPromises.set(a.id,b),await b}}addAgents(i){for(let a of i)this.registeredAgents.set(a.id,a)}getAgent(i){return this.registeredAgents.get(i)}async addWorkflow(i){try{let a=await i.discover();yi(a,this.verbose,this.logger),this.discoveredWorkflows.set(i.id,a)}finally{this.discoverWorkflowPromises.delete(i.id)}}healthCheck(){let i=this.getRegisteredWorkflows(),a=i.length,m=i.reduce((b,W)=>b+W.steps.length,0);return{status:"ok",sdkVersion:"2.11.2-alpha.0",frameworkVersion:"2024-06-26",discovered:{workflows:a,steps:m}}}getWorkflow(i){let a=this.discoveredWorkflows.get(i);if(a)return a;throw new dr(i)}getStep(i,a){let b=this.getWorkflow(i).steps.find(W=>W.stepId===a);if(b)return b;throw new Jn(a)}getRegisteredWorkflows(){return Array.from(this.discoveredWorkflows.values())}discover(){return{workflows:this.getRegisteredWorkflows(),agents:Array.from(this.registeredAgents.keys()).map(i=>({agentId:i}))}}mock(i){try{return ui(i)}catch(a){return this.logger.warn("Failed to mock schema, returning empty object:",a),{}}}async validate(i,a,m,b,W,I,V){let z=await Pt(a,i);if(z.success)return z.data;switch(m){case"event":this.throwInvalidEvent(b,W,z.errors);case"step":this.throwInvalidStep(I,b,W,z.errors);case"provider":this.throwInvalidProvider(I,V,b,W,z.errors);default:throw new Error(`Invalid component: '${m}'`)}}throwInvalidProvider(i,a,m,b,W){throw i?a?m==="output"?new Ln(b,i,a,W):new Error(`Invalid payload type: '${m}'`):new Error("providerId is required"):new Error("stepId is required")}throwInvalidStep(i,a,m,b){if(!i)throw new Error("stepId is required");switch(a){case"output":throw new Pn(m,i,b);case"result":throw new In(m,i,b);case"controls":throw new Nn(m,i,b);default:throw new Error(`Invalid payload type: '${a}'`)}}throwInvalidEvent(i,a,m){switch(i){case"controls":throw new Cn(a,m);case"payload":throw new fr(a,m);default:throw new Error(`Invalid payload type: '${i}'`)}}executeStepFactory(i,a,m){return async(b,W,I)=>{if(m())return;let V=this.getStep(i.workflowId,b),z=i.action==="preview";if(!z&&b===i.stepId){let ke=await this.createStepControls(V,i),Le=await this.compileControls(ke,i);if(await this.shouldSkip(I==null?void 0:I.skip,Le))return a({options:{skip:!0},outputs:{},providers:{}}),{}}let se=this.previewStep.bind(this),Te=this.executeStep.bind(this),we=await(z?se:Te)(i,{...V,providers:V.providers.map(ke=>{var Ge;let Le=(Ge=I==null?void 0:I.providers)==null?void 0:Ge[ke.type];if(!Le)throw new jn(ke.type);return{...ke,resolve:Le}}),resolve:W});return this.shouldSanitize({stepType:V.type,options:I})&&(we={...we,outputs:Wt(we.outputs)}),b===i.stepId&&a({...we,options:{skip:!1}}),we.outputs}}shouldSanitize({stepType:i,options:a}){return(a==null?void 0:a.disableOutputSanitization)===!0?!1:["email","in_app"].includes(i)}async shouldSkip(i,a){return i?i(a):!1}async executeWorkflow(i){let b=`${{execute:"Executing",preview:"Previewing"}[i.action]||i.action} workflowId:`;this.log(`
92
+ ${me.bold(me.underline("Discovered workflowId:"))} '${w.workflowId}'`),w.steps.forEach((m,b)=>{let W=b===w.steps.length-1,I=W?"\u2514":"\u251C";a.info(`${I} ${Re.STEP} Discovered stepId: '${m.stepId}' Type: '${m.type}'`),m.providers.forEach((V,z)=>{let se=z===m.providers.length-1,Te=W?" ":"\u2502",ye=se?"\u2514":"\u251C";a.info(`${Te} ${ye} ${Re.PROVIDER} Discovered provider: '${V.type}'`)})}))}import{jsonrepair as Us}from"jsonrepair";function wi(w){let i=w.trim();return(i.startsWith("{")&&i.endsWith("}")||i.startsWith("[")&&i.endsWith("]"))&&i.length>2}var Si="__novuJsonString";function Hs(w){return typeof w=="object"&&w!==null&&!Array.isArray(w)&&w[Si]===!0}function mt(w){if(typeof w=="string"){if(!wi(w))return w;try{let i=JSON.parse(w);return{[Si]:!0,value:mt(i)}}catch{return w}}if(Array.isArray(w))return w.map(i=>mt(i));if(w&&typeof w=="object"){let i={};for(let[a,m]of Object.entries(w))i[a]=mt(m);return i}return w}function yt(w){if(Hs(w))return JSON.stringify(yt(w.value));if(Array.isArray(w))return w.map(i=>yt(i));if(w&&typeof w=="object"){let i={};for(let[a,m]of Object.entries(w))i[a]=yt(m);return i}return w}function Ys(w){try{return JSON.parse(w),w}catch{try{return Us(w)}catch{return w}}}function Ai(w){return Object.fromEntries(Object.entries(w).map(([i,a])=>typeof a=="string"?[i,wi(a)?Ys(a):a]:typeof a=="object"&&a!==null&&!Array.isArray(a)?[i,Ai(a)]:[i,a]))}function Ei(w){return!(w!=null&&w.data)||typeof w.data!="object"||Array.isArray(w.data)?w:{...w,data:Ai(w.data)}}function Oi(){return["development",void 0,"dev"].includes(process.env.NODE_ENV)}var wt=class{constructor(i){this.discoveredWorkflows=new Map;this.discoverWorkflowPromises=new Map;this.registeredAgents=new Map;this.version="2.12.1";let a=this.buildOptions(i);this.apiUrl=a.apiUrl,this.secretKey=a.secretKey,this.strictAuthentication=a.strictAuthentication,this.verbose=a.verbose,this.logger=a.logger,this.templateEngine=zn()}buildOptions(i){let a={apiUrl:$t(i==null?void 0:i.apiUrl),secretKey:Dt(i==null?void 0:i.secretKey),strictAuthentication:!Oi(),verbose:Oi(),logger:console};return(i==null?void 0:i.strictAuthentication)!==void 0?a.strictAuthentication=i.strictAuthentication:process.env.NOVU_STRICT_AUTHENTICATION_ENABLED!==void 0&&(a.strictAuthentication=process.env.NOVU_STRICT_AUTHENTICATION_ENABLED==="true"),(i==null?void 0:i.verbose)!==void 0&&(a.verbose=i.verbose),(i==null?void 0:i.logger)!==void 0&&(a.logger=i.logger),a}log(...i){this.verbose&&this.logger.info(...i)}async addWorkflows(i){for(let a of i){if(this.discoveredWorkflows.has(a.id))continue;let m=this.discoverWorkflowPromises.get(a.id);if(m){await m;continue}let b=this.addWorkflow(a);this.discoverWorkflowPromises.set(a.id,b),await b}}addAgents(i){for(let a of i)this.registeredAgents.set(a.id,a)}getAgent(i){return this.registeredAgents.get(i)}async addWorkflow(i){try{let a=await i.discover();yi(a,this.verbose,this.logger),this.discoveredWorkflows.set(i.id,a)}finally{this.discoverWorkflowPromises.delete(i.id)}}healthCheck(){let i=this.getRegisteredWorkflows(),a=i.length,m=i.reduce((b,W)=>b+W.steps.length,0);return{status:"ok",sdkVersion:"2.12.1",frameworkVersion:"2024-06-26",discovered:{workflows:a,steps:m}}}getWorkflow(i){let a=this.discoveredWorkflows.get(i);if(a)return a;throw new dr(i)}getStep(i,a){let b=this.getWorkflow(i).steps.find(W=>W.stepId===a);if(b)return b;throw new Jn(a)}getRegisteredWorkflows(){return Array.from(this.discoveredWorkflows.values())}discover(){return{workflows:this.getRegisteredWorkflows(),agents:Array.from(this.registeredAgents.keys()).map(i=>({agentId:i}))}}mock(i){try{return ui(i)}catch(a){return this.logger.warn("Failed to mock schema, returning empty object:",a),{}}}async validate(i,a,m,b,W,I,V){let z=await Pt(a,i);if(z.success)return z.data;switch(m){case"event":this.throwInvalidEvent(b,W,z.errors);case"step":this.throwInvalidStep(I,b,W,z.errors);case"provider":this.throwInvalidProvider(I,V,b,W,z.errors);default:throw new Error(`Invalid component: '${m}'`)}}throwInvalidProvider(i,a,m,b,W){throw i?a?m==="output"?new Ln(b,i,a,W):new Error(`Invalid payload type: '${m}'`):new Error("providerId is required"):new Error("stepId is required")}throwInvalidStep(i,a,m,b){if(!i)throw new Error("stepId is required");switch(a){case"output":throw new Pn(m,i,b);case"result":throw new In(m,i,b);case"controls":throw new Nn(m,i,b);default:throw new Error(`Invalid payload type: '${a}'`)}}throwInvalidEvent(i,a,m){switch(i){case"controls":throw new Cn(a,m);case"payload":throw new fr(a,m);default:throw new Error(`Invalid payload type: '${i}'`)}}executeStepFactory(i,a,m){return async(b,W,I)=>{if(m())return;let V=this.getStep(i.workflowId,b),z=i.action==="preview";if(!z&&b===i.stepId){let ke=await this.createStepControls(V,i),Le=await this.compileControls(ke,i);if(await this.shouldSkip(I==null?void 0:I.skip,Le))return a({options:{skip:!0},outputs:{},providers:{}}),{}}let se=this.previewStep.bind(this),Te=this.executeStep.bind(this),we=await(z?se:Te)(i,{...V,providers:V.providers.map(ke=>{var Ge;let Le=(Ge=I==null?void 0:I.providers)==null?void 0:Ge[ke.type];if(!Le)throw new jn(ke.type);return{...ke,resolve:Le}}),resolve:W});return this.shouldSanitize({stepType:V.type,options:I})&&(we={...we,outputs:Wt(we.outputs)}),b===i.stepId&&a({...we,options:{skip:!1}}),we.outputs}}shouldSanitize({stepType:i,options:a}){return(a==null?void 0:a.disableOutputSanitization)===!0?!1:["email","in_app"].includes(i)}async shouldSkip(i,a){return i?i(a):!1}async executeWorkflow(i){let b=`${{execute:"Executing",preview:"Previewing"}[i.action]||i.action} workflowId:`;this.log(`
93
93
  ${me.bold(me.underline(b))} '${i.workflowId}'`);let W=this.getWorkflow(i.workflowId),I=process.hrtime(),V={outputs:{},providers:{},options:{skip:!1}},z,se=!1,Te=new Promise(Ue=>{z=Ue}),ye=Ue=>{if(se)throw new Error("setResult can only be called once per workflow execution");z(),se=!0,V=Ue},we=()=>se,ke;try{if(i.action==="execute"&&!i.payload)throw new fr(i.workflowId,{message:"Event `payload` is required"});let Ue=await this.createExecutionPayload(i,W),Fe={...i,payload:Ue};await Promise.race([Te,W.execute({payload:Ue,env:i.env,controls:{},subscriber:i.subscriber,context:i.context,step:{email:this.executeStepFactory(Fe,ye,we),sms:this.executeStepFactory(Fe,ye,we),inApp:this.executeStepFactory(Fe,ye,we),digest:this.executeStepFactory(Fe,ye,we),delay:this.executeStepFactory(Fe,ye,we),push:this.executeStepFactory(Fe,ye,we),chat:this.executeStepFactory(Fe,ye,we),custom:this.executeStepFactory(Fe,ye,we),throttle:this.executeStepFactory(Fe,ye,we)}})])}catch(Ue){ke=Ue}let Le=process.hrtime(I),Ge=Le[0],je=Le[1],St=Ge*1e3+je/1e6,Bt=ke?Re.ERROR:Re.SUCCESS,At={execute:"Executed",preview:"Previewed"}[i.action]||i.action;if(this.log(`${Bt} ${At} workflowId: \`${i.workflowId}\``),this.prettyPrintExecute(i,St,ke),ke)throw ke;return{outputs:V.outputs,providers:V.providers,options:V.options,metadata:{status:"success",error:!1,duration:St}}}async createExecutionPayload(i,a){let{payload:m}=i;if(i.action==="preview"){let W=this.mock(a.payload.schema);m=Object.assign(W,m)}return await this.validate(m,a.payload.unknownSchema,"event","payload",i.workflowId)}prettyPrintExecute(i,a,m){if(!this.verbose)return;let b=m?Re.ERROR:Re.SUCCESS,I={execute:"Executed",preview:"Previewed"}[i.action]||i.action,V=m?"Failed to execute":I,z=m?me.error:me.success,se=`${b} ${V} workflowId: '${i.workflowId}`;this.logger.info(`
94
94
  ${me.bold(z(se))}'
95
95
  \u251C ${Re.STEP} stepId: '${i.stepId}'
96
96
  \u251C ${Re.ACTION} action: '${i.action}'
97
97
  \u2514 ${Re.DURATION} duration: '${a.toFixed(2)}ms'
98
- `)}async executeProviders(i,a,m){return a.providers.reduce(async(b,W)=>{let I=await b,V=this.previewProvider.bind(this),z=this.executeProvider.bind(this),Te=await(i.action==="preview"?V:z)(i,a,W,m);return{...I,[W.type]:Te}},Promise.resolve({}))}previewProvider(i,a,m,b){return this.log(` ${Re.MOCK} Mocked provider: \`${m.type}\``),this.mock(m.outputs.schema)}async executeProvider(i,a,m,b){try{if(i.stepId===a.stepId){let W=await this.createStepControls(a,i),I=await m.resolve({controls:W,outputs:b}),V=await this.validate(I,m.outputs.unknownSchema,"step","output",i.workflowId,a.stepId,m.type);return this.log(` ${Re.SUCCESS} Executed provider: \`${m.type}\``),{...V,_passthrough:I._passthrough}}else return this.log(` ${Re.HYDRATED} Hydrated provider: \`${m.type}\``),{}}catch(W){throw this.log(` ${Re.ERROR} Failed to execute provider: \`${m.type}\``),new Un(m.type,i.action,W)}}async executeStep(i,a){if(i.stepId===a.stepId)try{let m=await this.createStepControls(a,i),b=await this.compileControls(m,i),W=await a.resolve(b),I=await this.validate(W,a.outputs.unknownSchema,"step","output",i.workflowId,a.stepId),V=await this.executeProviders(i,a,I);return this.log(` ${Re.SUCCESS} Executed stepId: \`${a.stepId}\``),{outputs:I,providers:V}}catch(m){throw this.log(` ${Re.ERROR} Failed to execute stepId: \`${a.stepId}\``),pt(m)?m:new pr(a.stepId,i.action,m)}else try{let m=this.getStepState(i,a.stepId);if(m){let b=await this.validate(m.outputs,a.results.unknownSchema,"step","result",i.workflowId,a.stepId);return this.log(` ${Re.HYDRATED} Hydrated stepId: \`${a.stepId}\``),{outputs:b,providers:await this.executeProviders(i,a,b)}}else throw new Mn(i.workflowId,a.stepId)}catch(m){throw this.log(` ${Re.ERROR} Failed to hydrate stepId: \`${a.stepId}\``),m}}async compileControls(i,a){var m;try{let b=mt(i),W=this.preprocessTranslationPatterns(JSON.stringify(b));W=this.preprocessFilterTranslationArgs(W);let I=this.templateEngine.parse(W),V=this.getWorkflow(a.workflowId),z={workflow:{workflowId:V.workflowId,name:V.name,description:V.description,tags:V.tags,severity:V.severity},payload:a.payload,subscriber:a.subscriber,...a.actor&&{actor:a.actor},context:a.context,steps:Vs(a.state),env:(m=a.env)!=null?m:{}},se=await this.templateEngine.render(I,z),Te=this.postprocessTranslationMarkers(se),ye=qs(Te),we=JSON.parse(ye),ke=yt(we);return Ei(ke)}catch(b){throw new xn(a.workflowId,a.stepId,b)}}preprocessTranslationPatterns(i){return i.replace(/\{\{\s*t\.([\p{L}\p{N}_.-]+)\s*\}\}/gu,"[T:$1]")}preprocessFilterTranslationArgs(i){return i.replace(/'t\.([\p{L}\p{N}_.-]+)'/gu,"'[T:$1]'")}postprocessTranslationMarkers(i){return i.replace(/\[T:([\p{L}\p{N}_.-]+)\]/gu,"{{t.$1}}")}async createStepControls(i,a){return await this.validate(a.controls,i.controls.unknownSchema,"step","controls",a.workflowId,i.stepId)}async previewStep(i,a){try{return await this.constructStepForPreview(i,a)}catch(m){throw this.log(` ${Re.ERROR} Failed to preview stepId: \`${a.stepId}\``),pt(m)?m:new pr(a.stepId,i.action,m)}}async constructStepForPreview(i,a){return i.stepId===a.stepId?await this.previewRequiredStep(a,i):await this.extractMockDataForPreviousSteps(i,a)}async extractMockDataForPreviousSteps(i,a){let m={},b=this.getStepState(i,a.stepId),W=this.mock(a.results.schema);return{outputs:Qn(W,(b==null?void 0:b.outputs)||{}),providers:await this.executeProviders(i,a,m)}}async previewRequiredStep(i,a){let m=await this.createStepControls(i,a),b=await this.compileControls(m,a),W=await i.resolve(b),I=await this.validate(W,i.outputs.unknownSchema,"step","output",a.workflowId,i.stepId);return this.log(` ${Re.MOCK} Mocked stepId: \`${i.stepId}\``),{outputs:I,providers:await this.executeProviders(a,i,I)}}getStepState(i,a){return i.state.find(m=>m.stepId===a)}getStepCode(i,a){return{code:this.getStep(i,a).resolve.toString()}}getWorkflowCode(i){return{code:this.getWorkflow(i).execute.toString()}}getCode(i,a){let m;if(i)a?m=this.getStepCode(i,a):m=this.getWorkflowCode(i);else throw new dr(i);return m}};function Vs(w){let i={};for(let a of w)i[a.stepId]=a.outputs;return i}function Ks(w){return!!(typeof w=="string"||typeof w=="object"&&w!==null&&ti(w)||typeof w=="object"&&w!==null&&("markdown"in w||"card"in w||"files"in w))}function Js(w,i){return w}function Gs(w,i){var a;for(let m of w){let b=m.toolData;if(m.type==="tool_approval_request"&&(b==null?void 0:b.approvalId)===i&&b.toolCallId)return{approvalId:b.approvalId,toolCallId:b.toolCallId,name:(a=b.toolName)!=null?a:"tool",input:b.input}}}async function vi(w){var W;let i=new ni(w.bridge,w.secretKey,w.agent.handlers.toolApproval),{agent:a,event:m,logger:b}=w;try{await Qs(a,m,i),await i.flush()}catch(I){let V=It(I);b==null||b.error(`[agent:${a.id}] Turn failed (${m}): ${V.message}`,(W=V.cause)!=null?W:V);let z=!1;if(a.handlers.onError)try{let se=await a.handlers.onError(V,Js(i,m));ei(se)?z=!0:Ks(se)&&(await i.reply(se),z=!0)}catch(se){b==null||b.error(`[agent:${a.id}] onError failed:`,se)}z||await i.reportTurnError()}finally{try{await i.typing.stop()}catch{}}}async function Qs(w,i,a){var b,W;let m=async I=>{I instanceof Zn||I===void 0||await a.reply(I)};switch(i){case"onMessage":{await m(await w.handlers.onMessage(a.message,a));break}case"onAction":{let I=ri((b=a.action)==null?void 0:b.id);if(I&&w.handlers.onToolApproval){let{approved:V,approvalId:z}=I,se=Gs(a.history,z),Te=se?{id:se.toolCallId,name:se.name,input:se.input}:{id:z,name:""},ye=a.createReplyHandle((W=a.action.sourceMessageId)!=null?W:""),we={toolCall:Te,approved:V,approvalMessage:ye};w.userOnToolApproval===!1&&(await a.typing(),a.action.sourceMessageId&&await ye.delete());let ke=await w.handlers.onToolApproval(we,a);await m(ke);break}w.handlers.onAction&&await m(await w.handlers.onAction(a.action,a));break}case"onReaction":w.handlers.onReaction&&await m(await w.handlers.onReaction(a.reaction,a));break;case"onResolve":w.handlers.onResolve&&await m(await w.handlers.onResolve(a));break;default:throw new dt(i,Xn)}}function bi(w){let i={};for(let b of w.split(",")){let W=b.trim();if(!W)continue;let I=W.indexOf("=");if(I<=0)continue;let V=W.slice(0,I),z=W.slice(I+1);V&&z&&!(V in i)&&(i[V]=z)}let a=i.t,m=a!==void 0?Number(a):Number.NaN;return{t:Number.isFinite(m)?m:void 0,v1:i.v1}}var Sr=class{constructor(i){this.handler=i.handler,this.client=i.client?i.client:new wt,this.workflows=i.workflows||[],this.agents=i.agents||[],this.http=Lt(this.client.secretKey,this.client.apiUrl),this.frameworkName=i.frameworkName,this.hmacEnabled=this.client.strictAuthentication,this.client.addAgents(this.agents)}createHandler(){return async(...i)=>{await this.client.addWorkflows(this.workflows);let a=await this.handler(...i),m=await this.handleAction({actions:a});return a.transformResponse(m)}}getStaticHeaders(){let i=`novu-framework:v${this.client.version}`;return{"content-type":"application/json","access-control-allow-origin":"*","access-control-allow-private-network":"true","access-control-allow-methods":"GET, POST","access-control-allow-headers":"*","access-control-max-age":"604800","novu-framework-version":"2024-06-26","novu-framework-sdk":"2.11.2-alpha.0","novu-framework-server":this.frameworkName,"user-agent":i}}createResponse(i,a){return{status:i,body:JSON.stringify(a),headers:{...this.getStaticHeaders()}}}createError(i){return{status:i.statusCode,body:JSON.stringify({message:i.message,data:i.data,code:i.code}),headers:this.getStaticHeaders()}}async handleAction({actions:i}){let a=await i.url(),m=await i.method(),b=a.searchParams.get("action")||"health-check",W=a.searchParams.get("workflowId")||"",I=a.searchParams.get("stepId")||"",V=a.searchParams.get("agentId")||"",z=a.searchParams.get("event")||"",se=await i.headers("novu-signature")||"",Te={};try{m==="POST"&&(Te=await i.body())}catch{}try{b!=="health-check"&&await this.validateHmac(Te,se);let ye=this.getPostActionMap(Te,W,I,b,V,z,i.waitUntil),we=this.getGetActionMap(W,I);if(m==="POST")return await this.handlePostAction(b,ye);if(m==="GET")return await this.handleGetAction(b,we);if(m==="OPTIONS")return this.createResponse(200,{})}catch(ye){return this.handleError(ye)}return this.createError(new Wn(m))}getPostActionMap(i,a,m,b,W,I,V){return{trigger:this.triggerAction({workflowId:a,...i}),execute:async()=>{let z=await this.client.executeWorkflow({...i,workflowId:a,stepId:m,action:b});return this.createResponse(200,z)},preview:async()=>{let z=await this.client.executeWorkflow({...i,workflowId:a,stepId:m,action:b});return this.createResponse(200,z)},"agent-event":async()=>{let z=this.client.getAgent(W);if(!z)return this.createResponse(404,{error:`Agent '${W}' not registered`});let se=vi({agent:z,event:I,bridge:i,secretKey:this.client.secretKey,logger:this.client.logger});return V&&V(se),this.createResponse(200,{status:"ack"})}}}triggerAction(i){return async()=>{let a={name:i.workflowId,to:i.to,payload:(i==null?void 0:i.payload)||{},transactionId:i.transactionId,overrides:i.overrides||{},...i.actor&&{actor:i.actor},...i.bridgeUrl&&{bridgeUrl:i.bridgeUrl},...i.controls&&{controls:i.controls},...i.context&&{context:i.context}},m=await this.http.post("/events/trigger",a);return this.createResponse(200,m)}}getGetActionMap(i,a){return{discover:async()=>{let m=await this.client.discover();return this.createResponse(200,m)},"health-check":async()=>{let m=await this.client.healthCheck();return this.createResponse(200,m)},code:async()=>{let m=await this.client.getCode(i,a);return this.createResponse(200,m)}}}async handlePostAction(i,a){if(Object.values(Ct).includes(i)){let m=a[i];return m()}else throw new dt(i,Ct)}async handleGetAction(i,a){if(Object.values(cr).includes(i)){let m=a[i];return m()}else throw new dt(i,cr)}handleError(i){if(pt(i))return i.statusCode>=500&&this.client.logger.error(i),this.createError(i);if(Dn(i))return this.createError(i);{let a=new Nt(i);return this.client.logger.error(a),this.createError(a)}}async validateHmac(i,a){if(!this.hmacEnabled)return;if(!a)throw new Yn;if(!this.client.secretKey)throw new Kn;let m=bi(a);if(!m.v1||m.t===void 0)throw new qn;let b=Date.now();if(m.t<b-3e5||m.t>b+3e5)throw new Vn;let W=await fi(this.client.secretKey,`${m.t}.${JSON.stringify(i)}`);if(!pi(W,m.v1))throw new Hn}};function Ti(w,i){if(!w)throw new Error("agent() requires a non-empty agentId");if(!(i!=null&&i.onMessage))throw new Error(`agent('${w}') requires an onMessage handler`);return{id:w,handlers:i,userOnToolApproval:typeof i.onToolApproval=="function"}}async function nt(w,i,a){if(w.steps.some(m=>m.stepId===i))throw new Gn(i);w.steps.push(a)}async function Ft(w,i,a,m){return async(b,W,I={})=>{let V=(I==null?void 0:I.controlSchema)||xe;return await nt(w,b,{stepId:b,type:i,controls:{schema:await Ce(V),unknownSchema:V},outputs:{schema:await Ce(a),unknownSchema:a},results:{schema:await Ce(m),unknownSchema:m},resolve:W,code:W.toString(),options:I,providers:[]}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}async function Ri(w,i,a){let m=hr[i],b=Object.entries(a).map(async([W,I])=>{let V=m[W];return{type:W,code:I.toString(),resolve:I,outputs:{schema:await Ce(V.output),unknownSchema:V.output}}});w.providers.push(...await Promise.all(b))}async function it(w,i,a,m){return async(b,W,I={})=>{let V=(I==null?void 0:I.controlSchema)||xe,z={stepId:b,type:i,controls:{schema:await Ce(V),unknownSchema:V},outputs:{schema:await Ce(a),unknownSchema:a},results:{schema:await Ce(m),unknownSchema:m},resolve:W,code:W.toString(),options:I,providers:[]};return await nt(w,b,z),Object.keys(I.providers||{}).length>0&&await Ri(z,i,I.providers||{}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}async function Ar(w,i){return async(a,m,b={})=>{let W=(b==null?void 0:b.controlSchema)||xe,I=(b==null?void 0:b.outputSchema)||xe,[V,z]=await Promise.all([Ce(W),Ce(I)]);return await nt(w,a,{stepId:a,type:i,controls:{schema:V,unknownSchema:W},outputs:{schema:z,unknownSchema:I},results:{schema:z,unknownSchema:I},resolve:m,code:m.toString(),options:b,providers:[]}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}var lo={email:"email",sms:"sms",push:"push",inApp:"in_app",chat:"chat"};function ki(w){if(!w)return{};let i={};return w.all&&(i.all=w.all),Object.entries(w.channels||{}).forEach(([a,m])=>{let b=lo[a];b&&(i.channels||(i.channels={}),i.channels[b]=m)}),i}function uo(w,i,a){let m=a||{};return{id:w,trigger:async I=>{let V=Lt(Dt(I.secretKey),$t(I.apiUrl)),z=I.payload||{},se;if(m.payloadSchema){let Le=await Pt(m.payloadSchema,z);if(Le.success===!1)throw new $n(w,Le.errors);se=Le.data}else se=I.payload;let Te=await di(),ye={name:w,to:I.to,payload:{...se},...I.transactionId&&{transactionId:I.transactionId},...I.overrides&&{overrides:I.overrides},...I.actor&&{actor:I.actor},...I.context&&{context:I.context},...Te&&{bridgeUrl:Te}},we=await V.post("/events/trigger",ye);return{cancel:async()=>V.delete(`/events/trigger/${we.transactionId}`),data:we}},discover:async()=>{var V;let I={workflowId:w,severity:(V=m.severity)!=null?V:"none",steps:[],code:i.toString(),payload:{schema:await Ce(m.payloadSchema||xe),unknownSchema:m.payloadSchema||xe},controls:{schema:await Ce(m.controlSchema||xe),unknownSchema:m.controlSchema||xe},env:{schema:await Ce(m.envSchema||xe),unknownSchema:m.envSchema||xe},tags:m.tags||[],preferences:ki(m.preferences),name:m.name,description:m.description,execute:i};return await i({payload:{},subscriber:{},env:{},controls:{},context:{},step:{push:await it(I,"push",Be.push.output,Be.push.result),chat:await it(I,"chat",Be.chat.output,Be.chat.result),email:await it(I,"email",Be.email.output,Be.email.result),sms:await it(I,"sms",Be.sms.output,Be.sms.result),inApp:await it(I,"in_app",Be.in_app.output,Be.in_app.result),digest:await Ft(I,"digest",mr.output,mr.result),delay:await Ft(I,"delay",gr.output,gr.result),throttle:await Ft(I,"throttle",yr.output,yr.result),custom:await Ar(I,"custom"),httpRequest:await Ar(I,"http_request")}}),I}}}export{Mo as a,wt as b,Sr as c,Ti as d,uo as e};
98
+ `)}async executeProviders(i,a,m){return a.providers.reduce(async(b,W)=>{let I=await b,V=this.previewProvider.bind(this),z=this.executeProvider.bind(this),Te=await(i.action==="preview"?V:z)(i,a,W,m);return{...I,[W.type]:Te}},Promise.resolve({}))}previewProvider(i,a,m,b){return this.log(` ${Re.MOCK} Mocked provider: \`${m.type}\``),this.mock(m.outputs.schema)}async executeProvider(i,a,m,b){try{if(i.stepId===a.stepId){let W=await this.createStepControls(a,i),I=await m.resolve({controls:W,outputs:b}),V=await this.validate(I,m.outputs.unknownSchema,"step","output",i.workflowId,a.stepId,m.type);return this.log(` ${Re.SUCCESS} Executed provider: \`${m.type}\``),{...V,_passthrough:I._passthrough}}else return this.log(` ${Re.HYDRATED} Hydrated provider: \`${m.type}\``),{}}catch(W){throw this.log(` ${Re.ERROR} Failed to execute provider: \`${m.type}\``),new Un(m.type,i.action,W)}}async executeStep(i,a){if(i.stepId===a.stepId)try{let m=await this.createStepControls(a,i),b=await this.compileControls(m,i),W=await a.resolve(b),I=await this.validate(W,a.outputs.unknownSchema,"step","output",i.workflowId,a.stepId),V=await this.executeProviders(i,a,I);return this.log(` ${Re.SUCCESS} Executed stepId: \`${a.stepId}\``),{outputs:I,providers:V}}catch(m){throw this.log(` ${Re.ERROR} Failed to execute stepId: \`${a.stepId}\``),pt(m)?m:new pr(a.stepId,i.action,m)}else try{let m=this.getStepState(i,a.stepId);if(m){let b=await this.validate(m.outputs,a.results.unknownSchema,"step","result",i.workflowId,a.stepId);return this.log(` ${Re.HYDRATED} Hydrated stepId: \`${a.stepId}\``),{outputs:b,providers:await this.executeProviders(i,a,b)}}else throw new Mn(i.workflowId,a.stepId)}catch(m){throw this.log(` ${Re.ERROR} Failed to hydrate stepId: \`${a.stepId}\``),m}}async compileControls(i,a){var m;try{let b=mt(i),W=this.preprocessTranslationPatterns(JSON.stringify(b));W=this.preprocessFilterTranslationArgs(W);let I=this.templateEngine.parse(W),V=this.getWorkflow(a.workflowId),z={workflow:{workflowId:V.workflowId,name:V.name,description:V.description,tags:V.tags,severity:V.severity},payload:a.payload,subscriber:a.subscriber,...a.actor&&{actor:a.actor},context:a.context,steps:Vs(a.state),env:(m=a.env)!=null?m:{}},se=await this.templateEngine.render(I,z),Te=this.postprocessTranslationMarkers(se),ye=qs(Te),we=JSON.parse(ye),ke=yt(we);return Ei(ke)}catch(b){throw new xn(a.workflowId,a.stepId,b)}}preprocessTranslationPatterns(i){return i.replace(/\{\{\s*t\.([\p{L}\p{N}_.-]+)\s*\}\}/gu,"[T:$1]")}preprocessFilterTranslationArgs(i){return i.replace(/'t\.([\p{L}\p{N}_.-]+)'/gu,"'[T:$1]'")}postprocessTranslationMarkers(i){return i.replace(/\[T:([\p{L}\p{N}_.-]+)\]/gu,"{{t.$1}}")}async createStepControls(i,a){return await this.validate(a.controls,i.controls.unknownSchema,"step","controls",a.workflowId,i.stepId)}async previewStep(i,a){try{return await this.constructStepForPreview(i,a)}catch(m){throw this.log(` ${Re.ERROR} Failed to preview stepId: \`${a.stepId}\``),pt(m)?m:new pr(a.stepId,i.action,m)}}async constructStepForPreview(i,a){return i.stepId===a.stepId?await this.previewRequiredStep(a,i):await this.extractMockDataForPreviousSteps(i,a)}async extractMockDataForPreviousSteps(i,a){let m={},b=this.getStepState(i,a.stepId),W=this.mock(a.results.schema);return{outputs:Qn(W,(b==null?void 0:b.outputs)||{}),providers:await this.executeProviders(i,a,m)}}async previewRequiredStep(i,a){let m=await this.createStepControls(i,a),b=await this.compileControls(m,a),W=await i.resolve(b),I=await this.validate(W,i.outputs.unknownSchema,"step","output",a.workflowId,i.stepId);return this.log(` ${Re.MOCK} Mocked stepId: \`${i.stepId}\``),{outputs:I,providers:await this.executeProviders(a,i,I)}}getStepState(i,a){return i.state.find(m=>m.stepId===a)}getStepCode(i,a){return{code:this.getStep(i,a).resolve.toString()}}getWorkflowCode(i){return{code:this.getWorkflow(i).execute.toString()}}getCode(i,a){let m;if(i)a?m=this.getStepCode(i,a):m=this.getWorkflowCode(i);else throw new dr(i);return m}};function Vs(w){let i={};for(let a of w)i[a.stepId]=a.outputs;return i}function Ks(w){return!!(typeof w=="string"||typeof w=="object"&&w!==null&&ti(w)||typeof w=="object"&&w!==null&&("markdown"in w||"card"in w||"files"in w))}function Js(w,i){return w}function Gs(w,i){var a;for(let m of w){let b=m.toolData;if(m.type==="tool_approval_request"&&(b==null?void 0:b.approvalId)===i&&b.toolCallId)return{approvalId:b.approvalId,toolCallId:b.toolCallId,name:(a=b.toolName)!=null?a:"tool",input:b.input}}}async function vi(w){var W;let i=new ni(w.bridge,w.secretKey,w.agent.handlers.toolApproval),{agent:a,event:m,logger:b}=w;try{await Qs(a,m,i),await i.flush()}catch(I){let V=It(I);b==null||b.error(`[agent:${a.id}] Turn failed (${m}): ${V.message}`,(W=V.cause)!=null?W:V);let z=!1;if(a.handlers.onError)try{let se=await a.handlers.onError(V,Js(i,m));ei(se)?z=!0:Ks(se)&&(await i.reply(se),z=!0)}catch(se){b==null||b.error(`[agent:${a.id}] onError failed:`,se)}z||await i.reportTurnError()}finally{try{await i.typing.stop()}catch{}}}async function Qs(w,i,a){var b,W;let m=async I=>{I instanceof Zn||I===void 0||await a.reply(I)};switch(i){case"onMessage":{await m(await w.handlers.onMessage(a.message,a));break}case"onAction":{let I=ri((b=a.action)==null?void 0:b.id);if(I&&w.handlers.onToolApproval){let{approved:V,approvalId:z}=I,se=Gs(a.history,z),Te=se?{id:se.toolCallId,name:se.name,input:se.input}:{id:z,name:""},ye=a.createReplyHandle((W=a.action.sourceMessageId)!=null?W:""),we={toolCall:Te,approved:V,approvalMessage:ye};w.userOnToolApproval===!1&&(await a.typing(),a.action.sourceMessageId&&await ye.delete());let ke=await w.handlers.onToolApproval(we,a);await m(ke);break}w.handlers.onAction&&await m(await w.handlers.onAction(a.action,a));break}case"onReaction":w.handlers.onReaction&&await m(await w.handlers.onReaction(a.reaction,a));break;case"onResolve":w.handlers.onResolve&&await m(await w.handlers.onResolve(a));break;default:throw new dt(i,Xn)}}function bi(w){let i={};for(let b of w.split(",")){let W=b.trim();if(!W)continue;let I=W.indexOf("=");if(I<=0)continue;let V=W.slice(0,I),z=W.slice(I+1);V&&z&&!(V in i)&&(i[V]=z)}let a=i.t,m=a!==void 0?Number(a):Number.NaN;return{t:Number.isFinite(m)?m:void 0,v1:i.v1}}var Sr=class{constructor(i){this.handler=i.handler,this.client=i.client?i.client:new wt,this.workflows=i.workflows||[],this.agents=i.agents||[],this.http=Lt(this.client.secretKey,this.client.apiUrl),this.frameworkName=i.frameworkName,this.hmacEnabled=this.client.strictAuthentication,this.client.addAgents(this.agents)}createHandler(){return async(...i)=>{await this.client.addWorkflows(this.workflows);let a=await this.handler(...i),m=await this.handleAction({actions:a});return a.transformResponse(m)}}getStaticHeaders(){let i=`novu-framework:v${this.client.version}`;return{"content-type":"application/json","access-control-allow-origin":"*","access-control-allow-private-network":"true","access-control-allow-methods":"GET, POST","access-control-allow-headers":"*","access-control-max-age":"604800","novu-framework-version":"2024-06-26","novu-framework-sdk":"2.12.1","novu-framework-server":this.frameworkName,"user-agent":i}}createResponse(i,a){return{status:i,body:JSON.stringify(a),headers:{...this.getStaticHeaders()}}}createError(i){return{status:i.statusCode,body:JSON.stringify({message:i.message,data:i.data,code:i.code}),headers:this.getStaticHeaders()}}async handleAction({actions:i}){let a=await i.url(),m=await i.method(),b=a.searchParams.get("action")||"health-check",W=a.searchParams.get("workflowId")||"",I=a.searchParams.get("stepId")||"",V=a.searchParams.get("agentId")||"",z=a.searchParams.get("event")||"",se=await i.headers("novu-signature")||"",Te={};try{m==="POST"&&(Te=await i.body())}catch{}try{b!=="health-check"&&await this.validateHmac(Te,se);let ye=this.getPostActionMap(Te,W,I,b,V,z,i.waitUntil),we=this.getGetActionMap(W,I);if(m==="POST")return await this.handlePostAction(b,ye);if(m==="GET")return await this.handleGetAction(b,we);if(m==="OPTIONS")return this.createResponse(200,{})}catch(ye){return this.handleError(ye)}return this.createError(new Wn(m))}getPostActionMap(i,a,m,b,W,I,V){return{trigger:this.triggerAction({workflowId:a,...i}),execute:async()=>{let z=await this.client.executeWorkflow({...i,workflowId:a,stepId:m,action:b});return this.createResponse(200,z)},preview:async()=>{let z=await this.client.executeWorkflow({...i,workflowId:a,stepId:m,action:b});return this.createResponse(200,z)},"agent-event":async()=>{let z=this.client.getAgent(W);if(!z)return this.createResponse(404,{error:`Agent '${W}' not registered`});let se=vi({agent:z,event:I,bridge:i,secretKey:this.client.secretKey,logger:this.client.logger});return V&&V(se),this.createResponse(200,{status:"ack"})}}}triggerAction(i){return async()=>{let a={name:i.workflowId,to:i.to,payload:(i==null?void 0:i.payload)||{},transactionId:i.transactionId,overrides:i.overrides||{},...i.actor&&{actor:i.actor},...i.bridgeUrl&&{bridgeUrl:i.bridgeUrl},...i.controls&&{controls:i.controls},...i.context&&{context:i.context}},m=await this.http.post("/events/trigger",a);return this.createResponse(200,m)}}getGetActionMap(i,a){return{discover:async()=>{let m=await this.client.discover();return this.createResponse(200,m)},"health-check":async()=>{let m=await this.client.healthCheck();return this.createResponse(200,m)},code:async()=>{let m=await this.client.getCode(i,a);return this.createResponse(200,m)}}}async handlePostAction(i,a){if(Object.values(Ct).includes(i)){let m=a[i];return m()}else throw new dt(i,Ct)}async handleGetAction(i,a){if(Object.values(cr).includes(i)){let m=a[i];return m()}else throw new dt(i,cr)}handleError(i){if(pt(i))return i.statusCode>=500&&this.client.logger.error(i),this.createError(i);if(Dn(i))return this.createError(i);{let a=new Nt(i);return this.client.logger.error(a),this.createError(a)}}async validateHmac(i,a){if(!this.hmacEnabled)return;if(!a)throw new Yn;if(!this.client.secretKey)throw new Kn;let m=bi(a);if(!m.v1||m.t===void 0)throw new qn;let b=Date.now();if(m.t<b-3e5||m.t>b+3e5)throw new Vn;let W=await fi(this.client.secretKey,`${m.t}.${JSON.stringify(i)}`);if(!pi(W,m.v1))throw new Hn}};function Ti(w,i){if(!w)throw new Error("agent() requires a non-empty agentId");if(!(i!=null&&i.onMessage))throw new Error(`agent('${w}') requires an onMessage handler`);return{id:w,handlers:i,userOnToolApproval:typeof i.onToolApproval=="function"}}async function nt(w,i,a){if(w.steps.some(m=>m.stepId===i))throw new Gn(i);w.steps.push(a)}async function Ft(w,i,a,m){return async(b,W,I={})=>{let V=(I==null?void 0:I.controlSchema)||xe;return await nt(w,b,{stepId:b,type:i,controls:{schema:await Ce(V),unknownSchema:V},outputs:{schema:await Ce(a),unknownSchema:a},results:{schema:await Ce(m),unknownSchema:m},resolve:W,code:W.toString(),options:I,providers:[]}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}async function Ri(w,i,a){let m=hr[i],b=Object.entries(a).map(async([W,I])=>{let V=m[W];return{type:W,code:I.toString(),resolve:I,outputs:{schema:await Ce(V.output),unknownSchema:V.output}}});w.providers.push(...await Promise.all(b))}async function it(w,i,a,m){return async(b,W,I={})=>{let V=(I==null?void 0:I.controlSchema)||xe,z={stepId:b,type:i,controls:{schema:await Ce(V),unknownSchema:V},outputs:{schema:await Ce(a),unknownSchema:a},results:{schema:await Ce(m),unknownSchema:m},resolve:W,code:W.toString(),options:I,providers:[]};return await nt(w,b,z),Object.keys(I.providers||{}).length>0&&await Ri(z,i,I.providers||{}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}async function Ar(w,i){return async(a,m,b={})=>{let W=(b==null?void 0:b.controlSchema)||xe,I=(b==null?void 0:b.outputSchema)||xe,[V,z]=await Promise.all([Ce(W),Ce(I)]);return await nt(w,a,{stepId:a,type:i,controls:{schema:V,unknownSchema:W},outputs:{schema:z,unknownSchema:I},results:{schema:z,unknownSchema:I},resolve:m,code:m.toString(),options:b,providers:[]}),{_ctx:{timestamp:Date.now(),state:{status:"pending",error:!1}}}}}var lo={email:"email",sms:"sms",push:"push",inApp:"in_app",chat:"chat"};function ki(w){if(!w)return{};let i={};return w.all&&(i.all=w.all),Object.entries(w.channels||{}).forEach(([a,m])=>{let b=lo[a];b&&(i.channels||(i.channels={}),i.channels[b]=m)}),i}function uo(w,i,a){let m=a||{};return{id:w,trigger:async I=>{let V=Lt(Dt(I.secretKey),$t(I.apiUrl)),z=I.payload||{},se;if(m.payloadSchema){let Le=await Pt(m.payloadSchema,z);if(Le.success===!1)throw new $n(w,Le.errors);se=Le.data}else se=I.payload;let Te=await di(),ye={name:w,to:I.to,payload:{...se},...I.transactionId&&{transactionId:I.transactionId},...I.overrides&&{overrides:I.overrides},...I.actor&&{actor:I.actor},...I.context&&{context:I.context},...Te&&{bridgeUrl:Te}},we=await V.post("/events/trigger",ye);return{cancel:async()=>V.delete(`/events/trigger/${we.transactionId}`),data:we}},discover:async()=>{var V;let I={workflowId:w,severity:(V=m.severity)!=null?V:"none",steps:[],code:i.toString(),payload:{schema:await Ce(m.payloadSchema||xe),unknownSchema:m.payloadSchema||xe},controls:{schema:await Ce(m.controlSchema||xe),unknownSchema:m.controlSchema||xe},env:{schema:await Ce(m.envSchema||xe),unknownSchema:m.envSchema||xe},tags:m.tags||[],preferences:ki(m.preferences),name:m.name,description:m.description,execute:i};return await i({payload:{},subscriber:{},env:{},controls:{},context:{},step:{push:await it(I,"push",Be.push.output,Be.push.result),chat:await it(I,"chat",Be.chat.output,Be.chat.result),email:await it(I,"email",Be.email.output,Be.email.result),sms:await it(I,"sms",Be.sms.output,Be.sms.result),inApp:await it(I,"in_app",Be.in_app.output,Be.in_app.result),digest:await Ft(I,"digest",mr.output,mr.result),delay:await Ft(I,"delay",gr.output,gr.result),throttle:await Ft(I,"throttle",yr.output,yr.result),custom:await Ar(I,"custom"),httpRequest:await Ar(I,"http_request")}}),I}}}export{Mo as a,wt as b,Sr as c,Ti as d,uo as e};
package/dist/esm/index.js CHANGED
@@ -1 +1 @@
1
- import{b as k,c as o,d as p,e as s}from"./chunk-EZ22F362.js";import{a,b,c,d,e,f,g,h,i}from"./chunk-C3P3ZH2I.js";import"./chunk-3XT6S7TZ.js";import{a as t}from"./chunk-2M25EATE.js";import"./chunk-22DBAEUX.js";import{M as l,N as m,O as n,V as r}from"./chunk-E2MET7IR.js";import{a as q}from"./chunk-CANJPWLT.js";import{f as j}from"./chunk-FRWG7YTE.js";import"./chunk-W6DIBD4Z.js";import"./chunk-FHYMHX3T.js";export{a as Actions,m as AgentDeliveryError,l as AgentError,b as Button,c as Card,d as CardLink,e as CardText,k as Client,j as CronExpression,f as Divider,o as NovuRequestHandler,g as Select,h as SelectOption,r as SeverityLevelEnum,i as TextInput,p as agent,q as providerSchemas,t as step,n as toAgentError,s as workflow};
1
+ import{b as k,c as o,d as p,e as s}from"./chunk-XC7ATSSO.js";import{a,b,c,d,e,f,g,h,i}from"./chunk-C3P3ZH2I.js";import"./chunk-3XT6S7TZ.js";import{a as t}from"./chunk-2M25EATE.js";import"./chunk-22DBAEUX.js";import{M as l,N as m,O as n,V as r}from"./chunk-T4QVGWWK.js";import{a as q}from"./chunk-CANJPWLT.js";import{f as j}from"./chunk-FRWG7YTE.js";import"./chunk-W6DIBD4Z.js";import"./chunk-FHYMHX3T.js";export{a as Actions,m as AgentDeliveryError,l as AgentError,b as Button,c as Card,d as CardLink,e as CardText,k as Client,j as CronExpression,f as Divider,o as NovuRequestHandler,g as Select,h as SelectOption,r as SeverityLevelEnum,i as TextInput,p as agent,q as providerSchemas,t as step,n as toAgentError,s as workflow};
@@ -6,7 +6,7 @@ import { Emoji } from 'chat';
6
6
  import { h as AgentHandlerContext, z as ToolResult, B as ToolApprovalRequestPayload, T as ToolApprovalCard, R as ReplyHandle, m as AgentMessageContext, C as AgentEventEnum, a as AgentAction, k as AgentMessage, o as AgentReaction, e as AgentConversation, r as AgentSubscriber, j as AgentHistoryEntry, n as AgentPlatformContext, D as TypingControl, E as ToolApprovalControl, G as AgentBridgeRequest, t as ToolApprovalConfig, M as MessageContent, F as FileRef, H as AgentReplyPayload, S as SentMessageInfo, w as TriggerRecipientsPayload } from '../agent.types-E3sxq6xr.js';
7
7
  export { J as DeleteMessagePayload, K as EditPayload, L as MetadataSignal, P as ParsedApprovalAction, N as ReplyContent, O as Signal, Q as TriggerSignal, U as buildApprovalActionId, V as parseApprovalActionId } from '../agent.types-E3sxq6xr.js';
8
8
  export { a as FromSchema, F as FromSchemaUnvalidated, J as JsonSchema, S as Schema, Z as ZodSchema, b as ZodSchemaMinimal } from '../base.schema.types-BApIn9jr.js';
9
- export { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
9
+ export { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
10
10
  export { A as Awaitable, C as ConditionalPartial, D as DeepPartial, b as DeepRequired, E as Either, I as Indexable, c as PickOptional, d as PickOptionalKeys, e as PickRequired, P as PickRequiredKeys, a as Prettify } from '../util.types-DaFfsxgy.js';
11
11
  export { a as ValidateFunction, V as ValidateResult, b as ValidationError, c as Validator } from '../validator.types-BIQli_m1.js';
12
12
  import 'json-schema-to-ts';
@@ -1 +1 @@
1
- import{A as oe,B as re,C as ae,D as pe,E as ne,F as ie,H as le,I as se,J as me,K as e,L as t,P as o,S as p,U as ge,V as fe,a as C,b as M,c as D,d as b,e as k,f as B,g as O,h as _,i as j,j as w,k as z,m as G,n as H,o as J,p as K,q as N,r as Q,s as U,t as W,u as X,v as Y,w as Z,x as $,y as ee,z as te}from"../chunk-E2MET7IR.js";import{e as n,f as i}from"../chunk-CANJPWLT.js";import{a as l,b as s,c as m,d as g,e as f,f as x,g as d,h as c,i as u,j as A,k as y,l as S,m as I,n as R,o as v,p as q,q as E,r as F,s as L,t as P,u as T,v as V,w as h}from"../chunk-FRWG7YTE.js";import{d as r,e as a}from"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var de={toSentence:e};export{R as ActionStepEnum,p as AgentContextImpl,o as AgentEventEnum,L as BadRequestError,C as BridgeError,I as ChannelStepEnum,V as ConflictError,x as CronExpression,d as ErrorCodeEnum,b as ExecutionEventControlsInvalidError,D as ExecutionEventPayloadInvalidError,j as ExecutionProviderOutputInvalidError,k as ExecutionStateControlsInvalidError,M as ExecutionStateCorruptError,B as ExecutionStateOutputInvalidError,O as ExecutionStateResultInvalidError,de as FILTER_VALIDATORS,h as ForbiddenError,E as FrameworkError,s as GetActionEnum,c as HttpHeaderKeysEnum,u as HttpMethodEnum,A as HttpQueryKeysEnum,y as HttpStatusEnum,H as InvalidActionError,ge as JobStatusEnum,G as MethodNotAllowedError,J as MissingSecretKeyError,F as NotFoundError,m as NovuApiEndpointsEnum,K as PlatformError,l as PostActionEnum,X as ProviderExecutionFailedError,W as ProviderNotFoundError,N as ResourceConflictError,S as ResourceEnum,U as ResourceExecutionFailed,Q as ResourceNotFoundError,f as SIGNATURE_TIMESTAMP_TOLERANCE,g as SIGNATURE_TIMESTAMP_TOLERANCE_MINUTES,T as ServerError,fe as SeverityLevelEnum,ee as SignatureExpiredError,$ as SignatureInvalidError,Y as SignatureMismatchError,Z as SignatureNotFoundError,oe as SignatureVersionInvalidError,te as SigningKeyNotFoundError,ae as StepAlreadyExistsError,_ as StepControlCompilationFailedError,pe as StepExecutionFailedError,re as StepNotFoundError,P as UnauthorizedError,ie as WorkflowAlreadyExistsError,v as WorkflowChannelEnum,ne as WorkflowNotFoundError,w as WorkflowPayloadInvalidError,n as actionStepSchemas,r as buildApprovalActionId,i as channelStepSchemas,t as createLiquidEngine,le as digest,z as isFrameworkError,q as isNativeError,a as parseApprovalActionId,se as pluralize,me as toSentence,e as toSentenceArgsValidator};
1
+ import{A as oe,B as re,C as ae,D as pe,E as ne,F as ie,H as le,I as se,J as me,K as e,L as t,P as o,S as p,U as ge,V as fe,a as C,b as M,c as D,d as b,e as k,f as B,g as O,h as _,i as j,j as w,k as z,m as G,n as H,o as J,p as K,q as N,r as Q,s as U,t as W,u as X,v as Y,w as Z,x as $,y as ee,z as te}from"../chunk-T4QVGWWK.js";import{e as n,f as i}from"../chunk-CANJPWLT.js";import{a as l,b as s,c as m,d as g,e as f,f as x,g as d,h as c,i as u,j as A,k as y,l as S,m as I,n as R,o as v,p as q,q as E,r as F,s as L,t as P,u as T,v as V,w as h}from"../chunk-FRWG7YTE.js";import{d as r,e as a}from"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var de={toSentence:e};export{R as ActionStepEnum,p as AgentContextImpl,o as AgentEventEnum,L as BadRequestError,C as BridgeError,I as ChannelStepEnum,V as ConflictError,x as CronExpression,d as ErrorCodeEnum,b as ExecutionEventControlsInvalidError,D as ExecutionEventPayloadInvalidError,j as ExecutionProviderOutputInvalidError,k as ExecutionStateControlsInvalidError,M as ExecutionStateCorruptError,B as ExecutionStateOutputInvalidError,O as ExecutionStateResultInvalidError,de as FILTER_VALIDATORS,h as ForbiddenError,E as FrameworkError,s as GetActionEnum,c as HttpHeaderKeysEnum,u as HttpMethodEnum,A as HttpQueryKeysEnum,y as HttpStatusEnum,H as InvalidActionError,ge as JobStatusEnum,G as MethodNotAllowedError,J as MissingSecretKeyError,F as NotFoundError,m as NovuApiEndpointsEnum,K as PlatformError,l as PostActionEnum,X as ProviderExecutionFailedError,W as ProviderNotFoundError,N as ResourceConflictError,S as ResourceEnum,U as ResourceExecutionFailed,Q as ResourceNotFoundError,f as SIGNATURE_TIMESTAMP_TOLERANCE,g as SIGNATURE_TIMESTAMP_TOLERANCE_MINUTES,T as ServerError,fe as SeverityLevelEnum,ee as SignatureExpiredError,$ as SignatureInvalidError,Y as SignatureMismatchError,Z as SignatureNotFoundError,oe as SignatureVersionInvalidError,te as SigningKeyNotFoundError,ae as StepAlreadyExistsError,_ as StepControlCompilationFailedError,pe as StepExecutionFailedError,re as StepNotFoundError,P as UnauthorizedError,ie as WorkflowAlreadyExistsError,v as WorkflowChannelEnum,ne as WorkflowNotFoundError,w as WorkflowPayloadInvalidError,n as actionStepSchemas,r as buildApprovalActionId,i as channelStepSchemas,t as createLiquidEngine,le as digest,z as isFrameworkError,q as isNativeError,a as parseApprovalActionId,se as pluralize,me as toSentence,e as toSentenceArgsValidator};
@@ -1,3 +1,3 @@
1
- type SupportedFrameworkName = 'next' | 'express' | 'nuxt' | 'h3' | 'sveltekit' | 'remix' | 'lambda' | 'nest';
1
+ type SupportedFrameworkName = 'next' | 'express' | 'nuxt' | 'h3' | 'hono' | 'sveltekit' | 'remix' | 'lambda' | 'nest';
2
2
 
3
3
  export type { SupportedFrameworkName as S };
@@ -2,7 +2,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
2
2
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
3
3
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
4
4
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
5
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
5
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
6
6
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
7
7
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
8
8
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{b as x,c as a,d as V,e as O}from"../chunk-EZ22F362.js";import{a as y,b as h,c,d as m,e as f,f as H,g as v,h as w,i as E}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as $}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as A,N,O as R,V as k}from"../chunk-E2MET7IR.js";import{a as b}from"../chunk-CANJPWLT.js";import{f as S}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var l="express",U=p=>new a({frameworkName:l,...p,handler:(t,o)=>({body:()=>t.body,headers:e=>{let r=t.headers[e];return Array.isArray(r)?r[0]:r},method:()=>t.method||"GET",url:()=>{let e=t.headers.host||"",r=e!=null&&e.includes("://")?"":`${t.protocol||"https"}://`;return new URL(t.originalUrl||t.url||"",`${r}${e||""}`)},queryString:e=>{let r=t.query[e];return Array.isArray(r)?r[0]:r},transformResponse:({body:e,headers:r,status:s})=>(Object.entries(r).forEach(([n,d])=>{o.setHeader(n,d)}),o.status(s).send(e))})}).createHandler();export{y as Actions,N as AgentDeliveryError,A as AgentError,h as Button,c as Card,m as CardLink,f as CardText,x as Client,S as CronExpression,H as Divider,a as NovuRequestHandler,v as Select,w as SelectOption,k as SeverityLevelEnum,E as TextInput,V as agent,l as frameworkName,b as providerSchemas,U as serve,$ as step,R as toAgentError,O as workflow};
1
+ import{b as x,c as a,d as V,e as O}from"../chunk-XC7ATSSO.js";import{a as y,b as h,c,d as m,e as f,f as H,g as v,h as w,i as E}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as $}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as A,N,O as R,V as k}from"../chunk-T4QVGWWK.js";import{a as b}from"../chunk-CANJPWLT.js";import{f as S}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var l="express",U=p=>new a({frameworkName:l,...p,handler:(t,o)=>({body:()=>t.body,headers:e=>{let r=t.headers[e];return Array.isArray(r)?r[0]:r},method:()=>t.method||"GET",url:()=>{let e=t.headers.host||"",r=e!=null&&e.includes("://")?"":`${t.protocol||"https"}://`;return new URL(t.originalUrl||t.url||"",`${r}${e||""}`)},queryString:e=>{let r=t.query[e];return Array.isArray(r)?r[0]:r},transformResponse:({body:e,headers:r,status:s})=>(Object.entries(r).forEach(([n,d])=>{o.setHeader(n,d)}),o.status(s).send(e))})}).createHandler();export{y as Actions,N as AgentDeliveryError,A as AgentError,h as Button,c as Card,m as CardLink,f as CardText,x as Client,S as CronExpression,H as Divider,a as NovuRequestHandler,v as Select,w as SelectOption,k as SeverityLevelEnum,E as TextInput,V as agent,l as frameworkName,b as providerSchemas,U as serve,$ as step,R as toAgentError,O as workflow};
@@ -4,7 +4,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
4
4
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
5
5
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
6
6
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
7
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
7
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
8
8
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
9
9
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
10
10
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{b as E,c as t,d as b,e as $}from"../chunk-EZ22F362.js";import{a as l,b as y,c as H,d as S,e as i,f,g,h as N,i as w}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as B}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as k,N as x,O,V as F}from"../chunk-E2MET7IR.js";import{a as q}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";import{getHeader as o,getQuery as a,readBody as p,send as n,setHeaders as m}from"h3";var h="h3",L=d=>new t({frameworkName:h,...d,handler:r=>({body:()=>p(r),headers:e=>o(r,e),method:()=>r.method,url:()=>new URL(String(r.path),`${process.env.NODE_ENV==="development"?"http":"https"}://${String(o(r,"host"))}`),queryString:e=>String(a(r)[e]),transformResponse:e=>{let{res:s}=r.node;return s.statusCode=e.status,m(r,e.headers),n(r,e.body)}})}).createHandler();export{l as Actions,x as AgentDeliveryError,k as AgentError,y as Button,H as Card,S as CardLink,i as CardText,E as Client,c as CronExpression,f as Divider,t as NovuRequestHandler,g as Select,N as SelectOption,F as SeverityLevelEnum,w as TextInput,b as agent,h as frameworkName,q as providerSchemas,L as serve,B as step,O as toAgentError,$ as workflow};
1
+ import{b as E,c as t,d as b,e as $}from"../chunk-XC7ATSSO.js";import{a as l,b as y,c as H,d as S,e as i,f,g,h as N,i as w}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as B}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as k,N as x,O,V as F}from"../chunk-T4QVGWWK.js";import{a as q}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";import{getHeader as o,getQuery as a,readBody as p,send as n,setHeaders as m}from"h3";var h="h3",L=d=>new t({frameworkName:h,...d,handler:r=>({body:()=>p(r),headers:e=>o(r,e),method:()=>r.method,url:()=>new URL(String(r.path),`${process.env.NODE_ENV==="development"?"http":"https"}://${String(o(r,"host"))}`),queryString:e=>String(a(r)[e]),transformResponse:e=>{let{res:s}=r.node;return s.statusCode=e.status,m(r,e.headers),n(r,e.body)}})}).createHandler();export{l as Actions,x as AgentDeliveryError,k as AgentError,y as Button,H as Card,S as CardLink,i as CardText,E as Client,c as CronExpression,f as Divider,t as NovuRequestHandler,g as Select,N as SelectOption,F as SeverityLevelEnum,w as TextInput,b as agent,h as frameworkName,q as providerSchemas,L as serve,B as step,O as toAgentError,$ as workflow};
@@ -0,0 +1,41 @@
1
+ import { Context } from 'hono';
2
+ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
3
+ export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
4
+ export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
5
+ export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
6
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
7
+ export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
8
+ export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
9
+ export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
10
+ import '../util.types-DaFfsxgy.js';
11
+ import '../base.schema.types-BApIn9jr.js';
12
+ import 'json-schema-to-ts';
13
+ import 'zod';
14
+
15
+ declare const frameworkName: SupportedFrameworkName;
16
+ /**
17
+ * Using Hono, serve and register any declared workflows with Novu,
18
+ * making them available to be triggered by events.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * import { Hono } from "hono";
23
+ * import { serve } from "@novu/framework/hono";
24
+ * import { myWorkflow } from "./src/novu/workflows";
25
+ *
26
+ * const app = new Hono();
27
+ *
28
+ * app.on(
29
+ * ["GET", "POST", "OPTIONS"],
30
+ * "/api/novu",
31
+ * serve({ workflows: [myWorkflow] })
32
+ * );
33
+ *
34
+ * export default app;
35
+ * ```
36
+ *
37
+ * @public
38
+ */
39
+ declare const serve: (options: ServeHandlerOptions) => ((c: Context) => Promise<Response>);
40
+
41
+ export { ServeHandlerOptions, frameworkName, serve };
@@ -0,0 +1 @@
1
+ import{a as o,b as R,c as n,d as E,e as k}from"../chunk-XC7ATSSO.js";import{a as d,b as l,c as u,d as q,e as c,f as i,g as y,h as f,i as v}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as C}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as w,N as x,O as S,V as O}from"../chunk-T4QVGWWK.js";import{a as H}from"../chunk-CANJPWLT.js";import{f as N}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="hono",F=s=>new n({frameworkName:m,...s,handler:e=>({body:()=>e.req.json(),headers:r=>e.req.header(r),method:()=>e.req.method,queryString:r=>e.req.query(r),url:()=>{try{return new URL(e.req.url)}catch{}let r=e.req.header("host")||"localhost",t="https";try{(process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev")&&(t="http")}catch{}return new URL(e.req.url,`${t}://${r}`)},transformResponse:({body:r,status:t,headers:p})=>{let a=o();return new a(r,{status:t,headers:p})}})}).createHandler();export{d as Actions,x as AgentDeliveryError,w as AgentError,l as Button,u as Card,q as CardLink,c as CardText,R as Client,N as CronExpression,i as Divider,n as NovuRequestHandler,y as Select,f as SelectOption,O as SeverityLevelEnum,v as TextInput,E as agent,m as frameworkName,H as providerSchemas,F as serve,C as step,S as toAgentError,k as workflow};
@@ -5,7 +5,7 @@ export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from
5
5
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
6
6
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
7
7
  import { E as Either } from '../util.types-DaFfsxgy.js';
8
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
8
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
9
9
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
10
10
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
11
11
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{b as E,c as n,d as S,e as g}from"../chunk-EZ22F362.js";import{a as m,b as u,c as P,d as h,e as i,f as w,g as l,h as f,i as x}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as V}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as I,N as A,O as G,V as q}from"../chunk-E2MET7IR.js";import{a as b}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var p="lambda",N=y=>new n({frameworkName:p,...y,handler:r=>{let s=(e=>e.version==="2.0")(r);return{url:()=>{let e=s?r.requestContext.http.path:r.path,t=r.headers["x-forwarded-proto"]||"https",a=new URL(e,`${t}://${r.headers.host||r.headers.Host||""}`);for(let o in r.queryStringParameters)o&&a.searchParams.set(o,r.queryStringParameters[o]);return a},body:()=>{let e="{}";return r.body&&(e=r.isBase64Encoded?Buffer.from(r.body,"base64").toString():r.body),JSON.parse(e)},headers:e=>r.headers[e],queryString:e=>{var t;return(t=r.queryStringParameters)==null?void 0:t[e]},transformResponse:({body:e,status:t,headers:a})=>Promise.resolve({body:e,statusCode:t,headers:a}),method:()=>s?r.requestContext.http.method:r.httpMethod}}}).createHandler();export{m as Actions,A as AgentDeliveryError,I as AgentError,u as Button,P as Card,h as CardLink,i as CardText,E as Client,c as CronExpression,w as Divider,n as NovuRequestHandler,l as Select,f as SelectOption,q as SeverityLevelEnum,x as TextInput,S as agent,p as frameworkName,b as providerSchemas,N as serve,V as step,G as toAgentError,g as workflow};
1
+ import{b as E,c as n,d as S,e as g}from"../chunk-XC7ATSSO.js";import{a as m,b as u,c as P,d as h,e as i,f as w,g as l,h as f,i as x}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as V}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as I,N as A,O as G,V as q}from"../chunk-T4QVGWWK.js";import{a as b}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var p="lambda",N=y=>new n({frameworkName:p,...y,handler:r=>{let s=(e=>e.version==="2.0")(r);return{url:()=>{let e=s?r.requestContext.http.path:r.path,t=r.headers["x-forwarded-proto"]||"https",a=new URL(e,`${t}://${r.headers.host||r.headers.Host||""}`);for(let o in r.queryStringParameters)o&&a.searchParams.set(o,r.queryStringParameters[o]);return a},body:()=>{let e="{}";return r.body&&(e=r.isBase64Encoded?Buffer.from(r.body,"base64").toString():r.body),JSON.parse(e)},headers:e=>r.headers[e],queryString:e=>{var t;return(t=r.queryStringParameters)==null?void 0:t[e]},transformResponse:({body:e,status:t,headers:a})=>Promise.resolve({body:e,statusCode:t,headers:a}),method:()=>s?r.requestContext.http.method:r.httpMethod}}}).createHandler();export{m as Actions,A as AgentDeliveryError,I as AgentError,u as Button,P as Card,h as CardLink,i as CardText,E as Client,c as CronExpression,w as Divider,n as NovuRequestHandler,l as Select,f as SelectOption,q as SeverityLevelEnum,x as TextInput,S as agent,p as frameworkName,b as providerSchemas,N as serve,V as step,G as toAgentError,g as workflow};
@@ -8,7 +8,7 @@ export { a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as A
8
8
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
9
9
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
10
10
  import { Request, Response } from 'express';
11
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
11
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
12
12
  import { VercelRequest, VercelResponse } from '@vercel/node';
13
13
  import { E as Either } from '../util.types-DaFfsxgy.js';
14
14
  import * as _nestjs_common from '@nestjs/common';
@@ -1 +1 @@
1
- import{b as J,c as P,d as Z,e as te}from"../chunk-EZ22F362.js";import{a as j,b as F,c as L,d as V,e as U,f as k,g as B,h as $,i as K}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as oe}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as Q,N as W,O as X,V as re}from"../chunk-E2MET7IR.js";import{a as ee}from"../chunk-CANJPWLT.js";import{f as z}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import{d as n,e as i}from"../chunk-FHYMHX3T.js";import{Inject as N,Injectable as H}from"@nestjs/common";import{ConfigurableModuleBuilder as x}from"@nestjs/common";var{ConfigurableModuleClass:u,MODULE_OPTIONS_TOKEN:m,OPTIONS_TYPE:pe,ASYNC_OPTIONS_TYPE:ae}=new x().setClassMethodName("register").setFactoryMethodName("createNovuModuleOptions").setExtras(o=>({...o,isGlobal:!0})).build();var h="REGISTER_API_PATH",E="REGISTER_CONTROLLER_DECORATORS";import{Injectable as A}from"@nestjs/common";var c=class{handler(e,r){return{body:()=>e.body,headers:t=>{let a=e.headers[t.toLowerCase()];return Array.isArray(a)?a[0]:a},method:()=>e.method||"GET",queryString:t=>{let a=e.query[t];return Array.isArray(a)?a[0]:a},url:()=>{let t=e.headers.host||"",a=t!=null&&t.includes("://")?"":`${e.protocol||"https"}://`;return new URL(e.originalUrl||e.url||"",`${a}${t||""}`)},transformResponse:({body:t,headers:a,status:y})=>(Object.entries(a).forEach(([I,_])=>{r.setHeader(I,_)}),r.status(y).send(t))}}};c=n([A()],c);var q="nest",l=class{constructor(e,r){this.options=e;this.novuHandler=r;this.novuRequestHandler=new P({frameworkName:q,...this.options,handler:this.novuHandler.handler})}async handleRequest(e,r){await this.novuRequestHandler.createHandler()(e,r)}};l=n([H(),i(0,N(m)),i(1,N(c))],l);import{Controller as M,Get as D,Inject as C,Options as b,Post as w,Req as f,Res as O}from"@nestjs/common";var p=class{constructor(e){this.novuService=e}async handleGet(e,r){await this.novuService.handleRequest(e,r)}async handlePost(e,r){await this.novuService.handleRequest(e,r)}async handleOptions(e,r){await this.novuService.handleRequest(e,r)}};n([D(),i(0,f()),i(1,O())],p.prototype,"handleGet",1),n([w(),i(0,f()),i(1,O())],p.prototype,"handlePost",1),n([b(),i(0,f()),i(1,O())],p.prototype,"handleOptions",1),p=n([M(),i(0,C(l))],p);import{Module as G}from"@nestjs/common";import{PATH_METADATA as Y}from"@nestjs/common/constants";var R={provide:h,useFactory:o=>{if(!o.apiPath)throw new Error("`apiPath` must be provided to set the controller path");Reflect.defineMetadata(Y,o.apiPath,p)},inject:[m]};function T(o,e=[]){return e.reduce((r,s)=>{let t=s(r);return t!=null?t:r},o)}function g(o,e){var r;for(let s of(r=Reflect.getMetadataKeys(o))!=null?r:[])Reflect.defineMetadata(s,Reflect.getMetadata(s,o),e)}function S(o,e=[]){let r=T(o,e);r!==o&&g(r,o)}var v={provide:E,useFactory:o=>{var e;S(p,(e=o.controllerDecorators)!=null?e:[])},inject:[m]};var d=class extends u{static register(e,r){var t;let s=u.register(e);return s.controllers=[T(p,e.controllerDecorators||[])],(t=s.providers)==null||t.push(R,l,c,...r||[]),s.exports=[l,c],s}static registerAsync(e,r){var t;let s=u.registerAsync(e);return s.controllers=[p],(t=s.providers)==null||t.push(R,v,l,c,...r||[]),s.exports=[l,c],s}};d=n([G({})],d);export{j as Actions,W as AgentDeliveryError,Q as AgentError,F as Button,L as Card,V as CardLink,U as CardText,J as Client,z as CronExpression,k as Divider,m as NOVU_OPTIONS,l as NovuClient,p as NovuController,c as NovuHandler,d as NovuModule,P as NovuRequestHandler,h as REGISTER_API_PATH,E as REGISTER_CONTROLLER_DECORATORS,B as Select,$ as SelectOption,re as SeverityLevelEnum,K as TextInput,Z as agent,q as frameworkName,ee as providerSchemas,R as registerApiPath,v as registerControllerDecorators,oe as step,X as toAgentError,te as workflow};
1
+ import{b as J,c as P,d as Z,e as te}from"../chunk-XC7ATSSO.js";import{a as j,b as F,c as L,d as V,e as U,f as k,g as B,h as $,i as K}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as oe}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as Q,N as W,O as X,V as re}from"../chunk-T4QVGWWK.js";import{a as ee}from"../chunk-CANJPWLT.js";import{f as z}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import{d as n,e as i}from"../chunk-FHYMHX3T.js";import{Inject as N,Injectable as H}from"@nestjs/common";import{ConfigurableModuleBuilder as x}from"@nestjs/common";var{ConfigurableModuleClass:u,MODULE_OPTIONS_TOKEN:m,OPTIONS_TYPE:pe,ASYNC_OPTIONS_TYPE:ae}=new x().setClassMethodName("register").setFactoryMethodName("createNovuModuleOptions").setExtras(o=>({...o,isGlobal:!0})).build();var h="REGISTER_API_PATH",E="REGISTER_CONTROLLER_DECORATORS";import{Injectable as A}from"@nestjs/common";var c=class{handler(e,r){return{body:()=>e.body,headers:t=>{let a=e.headers[t.toLowerCase()];return Array.isArray(a)?a[0]:a},method:()=>e.method||"GET",queryString:t=>{let a=e.query[t];return Array.isArray(a)?a[0]:a},url:()=>{let t=e.headers.host||"",a=t!=null&&t.includes("://")?"":`${e.protocol||"https"}://`;return new URL(e.originalUrl||e.url||"",`${a}${t||""}`)},transformResponse:({body:t,headers:a,status:y})=>(Object.entries(a).forEach(([I,_])=>{r.setHeader(I,_)}),r.status(y).send(t))}}};c=n([A()],c);var q="nest",l=class{constructor(e,r){this.options=e;this.novuHandler=r;this.novuRequestHandler=new P({frameworkName:q,...this.options,handler:this.novuHandler.handler})}async handleRequest(e,r){await this.novuRequestHandler.createHandler()(e,r)}};l=n([H(),i(0,N(m)),i(1,N(c))],l);import{Controller as M,Get as D,Inject as C,Options as b,Post as w,Req as f,Res as O}from"@nestjs/common";var p=class{constructor(e){this.novuService=e}async handleGet(e,r){await this.novuService.handleRequest(e,r)}async handlePost(e,r){await this.novuService.handleRequest(e,r)}async handleOptions(e,r){await this.novuService.handleRequest(e,r)}};n([D(),i(0,f()),i(1,O())],p.prototype,"handleGet",1),n([w(),i(0,f()),i(1,O())],p.prototype,"handlePost",1),n([b(),i(0,f()),i(1,O())],p.prototype,"handleOptions",1),p=n([M(),i(0,C(l))],p);import{Module as G}from"@nestjs/common";import{PATH_METADATA as Y}from"@nestjs/common/constants";var R={provide:h,useFactory:o=>{if(!o.apiPath)throw new Error("`apiPath` must be provided to set the controller path");Reflect.defineMetadata(Y,o.apiPath,p)},inject:[m]};function T(o,e=[]){return e.reduce((r,s)=>{let t=s(r);return t!=null?t:r},o)}function g(o,e){var r;for(let s of(r=Reflect.getMetadataKeys(o))!=null?r:[])Reflect.defineMetadata(s,Reflect.getMetadata(s,o),e)}function S(o,e=[]){let r=T(o,e);r!==o&&g(r,o)}var v={provide:E,useFactory:o=>{var e;S(p,(e=o.controllerDecorators)!=null?e:[])},inject:[m]};var d=class extends u{static register(e,r){var t;let s=u.register(e);return s.controllers=[T(p,e.controllerDecorators||[])],(t=s.providers)==null||t.push(R,l,c,...r||[]),s.exports=[l,c],s}static registerAsync(e,r){var t;let s=u.registerAsync(e);return s.controllers=[p],(t=s.providers)==null||t.push(R,v,l,c,...r||[]),s.exports=[l,c],s}};d=n([G({})],d);export{j as Actions,W as AgentDeliveryError,Q as AgentError,F as Button,L as Card,V as CardLink,U as CardText,J as Client,z as CronExpression,k as Divider,m as NOVU_OPTIONS,l as NovuClient,p as NovuController,c as NovuHandler,d as NovuModule,P as NovuRequestHandler,h as REGISTER_API_PATH,E as REGISTER_CONTROLLER_DECORATORS,B as Select,$ as SelectOption,re as SeverityLevelEnum,K as TextInput,Z as agent,q as frameworkName,ee as providerSchemas,R as registerApiPath,v as registerControllerDecorators,oe as step,X as toAgentError,te as workflow};
@@ -3,7 +3,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
3
3
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
4
4
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
5
5
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
6
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
6
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
7
7
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
8
8
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
9
9
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{a as l,b as v,c,d as k,e as U}from"../chunk-EZ22F362.js";import{a as O,b as x,c as q,d as S,e as T,f as w,g as P,h as A,i as E}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as L}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as g,N as F,O as j,V as I}from"../chunk-E2MET7IR.js";import{a as G}from"../chunk-CANJPWLT.js";import{f as b}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="next",N=o=>typeof o=="object"&&o!==null&&typeof o.setHeader=="function"&&typeof o.status=="function"&&typeof o.send=="function",V=o=>{let p=new c({frameworkName:m,...o,handler:(h,R,d)=>{let n=R,i=e=>{let t=typeof n.headers.get=="function"?n.headers.get(e):n.headers[e];return Array.isArray(t)?t[0]:t};return{body:()=>typeof n.json=="function"?n.json():n.body,headers:i,method:()=>h||n.method||"",queryString:(e,t)=>{var a;let r=((a=n.query)==null?void 0:a[e])||t.searchParams.get(e);return Array.isArray(r)?r[0]:r},url:()=>{let e;try{e=new URL(n.url)}catch{}if(e){let s=i("host");if(s){let u=new URL(s.includes("://")?s:`${e.protocol}//${s}`);e.protocol=u.protocol,e.host=u.host,e.port=u.port,e.username=u.username,e.password=u.password}return e}let t="https",r=i("host")||"";try{(process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev")&&(t="http")}catch{}return new URL(n.url,`${t}://${r}`)},transformResponse:({body:e,headers:t,status:r})=>{if(N(d)){Object.entries(t).forEach(([s,u])=>{d.setHeader(s,u)}),d.status(r).send(e);return}let a=l();return new a(e,{status:r,headers:t})}}}}).createHandler(),f=p.bind(null,void 0);return Object.defineProperties(f,{GET:{value:p.bind(null,"GET")},POST:{value:p.bind(null,"POST")},OPTIONS:{value:p.bind(null,"OPTIONS")}})};export{O as Actions,F as AgentDeliveryError,g as AgentError,x as Button,q as Card,S as CardLink,T as CardText,v as Client,b as CronExpression,w as Divider,c as NovuRequestHandler,P as Select,A as SelectOption,I as SeverityLevelEnum,E as TextInput,k as agent,m as frameworkName,G as providerSchemas,V as serve,L as step,j as toAgentError,U as workflow};
1
+ import{a as l,b as v,c,d as k,e as U}from"../chunk-XC7ATSSO.js";import{a as O,b as x,c as q,d as S,e as T,f as w,g as P,h as A,i as E}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as L}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as g,N as F,O as j,V as I}from"../chunk-T4QVGWWK.js";import{a as G}from"../chunk-CANJPWLT.js";import{f as b}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="next",N=o=>typeof o=="object"&&o!==null&&typeof o.setHeader=="function"&&typeof o.status=="function"&&typeof o.send=="function",V=o=>{let p=new c({frameworkName:m,...o,handler:(h,R,d)=>{let n=R,i=e=>{let t=typeof n.headers.get=="function"?n.headers.get(e):n.headers[e];return Array.isArray(t)?t[0]:t};return{body:()=>typeof n.json=="function"?n.json():n.body,headers:i,method:()=>h||n.method||"",queryString:(e,t)=>{var a;let r=((a=n.query)==null?void 0:a[e])||t.searchParams.get(e);return Array.isArray(r)?r[0]:r},url:()=>{let e;try{e=new URL(n.url)}catch{}if(e){let s=i("host");if(s){let u=new URL(s.includes("://")?s:`${e.protocol}//${s}`);e.protocol=u.protocol,e.host=u.host,e.port=u.port,e.username=u.username,e.password=u.password}return e}let t="https",r=i("host")||"";try{(process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev")&&(t="http")}catch{}return new URL(n.url,`${t}://${r}`)},transformResponse:({body:e,headers:t,status:r})=>{if(N(d)){Object.entries(t).forEach(([s,u])=>{d.setHeader(s,u)}),d.status(r).send(e);return}let a=l();return new a(e,{status:r,headers:t})}}}}).createHandler(),f=p.bind(null,void 0);return Object.defineProperties(f,{GET:{value:p.bind(null,"GET")},POST:{value:p.bind(null,"POST")},OPTIONS:{value:p.bind(null,"OPTIONS")}})};export{O as Actions,F as AgentDeliveryError,g as AgentError,x as Button,q as Card,S as CardLink,T as CardText,v as Client,b as CronExpression,w as Divider,c as NovuRequestHandler,P as Select,A as SelectOption,I as SeverityLevelEnum,E as TextInput,k as agent,m as frameworkName,G as providerSchemas,V as serve,L as step,j as toAgentError,U as workflow};
@@ -4,7 +4,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
4
4
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
5
5
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
6
6
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
7
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
7
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
8
8
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
9
9
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
10
10
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{b as x,c as t,d as b,e as $}from"../chunk-EZ22F362.js";import{a as l,b as H,c as S,d as i,e as y,f,g,h as N,i as w}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as B}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as E,N as k,O,V as F}from"../chunk-E2MET7IR.js";import{a as q}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";import{getHeader as o,getQuery as a,readBody as n,send as p,setHeaders as m}from"h3";var u="nuxt",Q=d=>new t({frameworkName:u,...d,handler:r=>({queryString:e=>String(a(r)[e]),body:()=>n(r),headers:e=>o(r,e),url:()=>new URL(String(r.path),`${process.env.NODE_ENV==="development"?"http":"https"}://${String(o(r,"host"))}`),method:()=>r.method,transformResponse:e=>{let{res:s}=r.node;return s.statusCode=e.status,m(r,e.headers),p(r,e.body)}})}).createHandler();export{l as Actions,k as AgentDeliveryError,E as AgentError,H as Button,S as Card,i as CardLink,y as CardText,x as Client,c as CronExpression,f as Divider,t as NovuRequestHandler,g as Select,N as SelectOption,F as SeverityLevelEnum,w as TextInput,b as agent,u as frameworkName,q as providerSchemas,Q as serve,B as step,O as toAgentError,$ as workflow};
1
+ import{b as x,c as t,d as b,e as $}from"../chunk-XC7ATSSO.js";import{a as l,b as H,c as S,d as i,e as y,f,g,h as N,i as w}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as B}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as E,N as k,O,V as F}from"../chunk-T4QVGWWK.js";import{a as q}from"../chunk-CANJPWLT.js";import{f as c}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";import{getHeader as o,getQuery as a,readBody as n,send as p,setHeaders as m}from"h3";var u="nuxt",Q=d=>new t({frameworkName:u,...d,handler:r=>({queryString:e=>String(a(r)[e]),body:()=>n(r),headers:e=>o(r,e),url:()=>new URL(String(r.path),`${process.env.NODE_ENV==="development"?"http":"https"}://${String(o(r,"host"))}`),method:()=>r.method,transformResponse:e=>{let{res:s}=r.node;return s.statusCode=e.status,m(r,e.headers),p(r,e.body)}})}).createHandler();export{l as Actions,k as AgentDeliveryError,E as AgentError,H as Button,S as Card,i as CardLink,y as CardText,x as Client,c as CronExpression,f as Divider,t as NovuRequestHandler,g as Select,N as SelectOption,F as SeverityLevelEnum,w as TextInput,b as agent,u as frameworkName,q as providerSchemas,Q as serve,B as step,O as toAgentError,$ as workflow};
@@ -2,7 +2,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
2
2
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
3
3
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
4
4
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
5
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
5
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
6
6
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
7
7
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
8
8
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{a as t,b as v,c as o,d as g,e as F}from"../chunk-EZ22F362.js";import{a as u,b as h,c as l,d as R,e as c,f as i,g as w,h as f,i as x}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as O}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as H,N,O as S,V as q}from"../chunk-E2MET7IR.js";import{a as y}from"../chunk-CANJPWLT.js";import{f as k}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="remix",L=s=>new o({frameworkName:m,...s,handler:({request:e})=>({body:()=>e.json(),headers:r=>e.headers.get(r),method:()=>e.method,url:()=>new URL(e.url,`https://${e.headers.get("host")||""}`),transformResponse:({body:r,status:n,headers:p})=>{let a=t();return new a(r,{status:n,headers:p})}})}).createHandler();export{u as Actions,N as AgentDeliveryError,H as AgentError,h as Button,l as Card,R as CardLink,c as CardText,v as Client,k as CronExpression,i as Divider,o as NovuRequestHandler,w as Select,f as SelectOption,q as SeverityLevelEnum,x as TextInput,g as agent,m as frameworkName,y as providerSchemas,L as serve,O as step,S as toAgentError,F as workflow};
1
+ import{a as t,b as v,c as o,d as g,e as F}from"../chunk-XC7ATSSO.js";import{a as u,b as h,c as l,d as R,e as c,f as i,g as w,h as f,i as x}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as O}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as H,N,O as S,V as q}from"../chunk-T4QVGWWK.js";import{a as y}from"../chunk-CANJPWLT.js";import{f as k}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="remix",L=s=>new o({frameworkName:m,...s,handler:({request:e})=>({body:()=>e.json(),headers:r=>e.headers.get(r),method:()=>e.method,url:()=>new URL(e.url,`https://${e.headers.get("host")||""}`),transformResponse:({body:r,status:n,headers:p})=>{let a=t();return new a(r,{status:n,headers:p})}})}).createHandler();export{u as Actions,N as AgentDeliveryError,H as AgentError,h as Button,l as Card,R as CardLink,c as CardText,v as Client,k as CronExpression,i as Divider,o as NovuRequestHandler,w as Select,f as SelectOption,q as SeverityLevelEnum,x as TextInput,g as agent,m as frameworkName,y as providerSchemas,L as serve,O as step,S as toAgentError,F as workflow};
@@ -3,7 +3,7 @@ import { S as ServeHandlerOptions } from '../index-aVljLqR4.js';
3
3
  export { C as Client, N as NovuRequestHandler, a as agent, w as workflow } from '../index-aVljLqR4.js';
4
4
  export { C as ClientOptions, a as CronExpression, E as ExecuteInput, S as SeverityLevelEnum, W as Workflow } from '../health-check.types-BNocZ4Wk.js';
5
5
  export { C as ContextResolved, E as EnvironmentSystemVariables, S as Subscriber, p as providerSchemas } from '../subscriber.types-CmybpXhA.js';
6
- import { S as SupportedFrameworkName } from '../server.types-BRWsA1CA.js';
6
+ import { S as SupportedFrameworkName } from '../server.types-Cc6o5eYH.js';
7
7
  export { Actions, Button, Card, CardChild, CardElement, CardLink, CardText, Divider, Select, SelectOption, TextInput } from 'chat';
8
8
  export { A as Agent, a as AgentAction, b as AgentActionContext, c as AgentAttachment, d as AgentContext, e as AgentConversation, f as AgentDeliveryError, g as AgentError, h as AgentHandlerContext, i as AgentHandlers, j as AgentHistoryEntry, k as AgentMessage, l as AgentMessageAuthor, m as AgentMessageContext, n as AgentPlatformContext, o as AgentReaction, p as AgentReactionContext, q as AgentResolveContext, r as AgentSubscriber, s as AgentToolCall, F as FileRef, M as MessageContent, R as ReplyHandle, T as ToolApprovalCard, t as ToolApprovalConfig, u as ToolApprovalDecision, v as toAgentError } from '../agent.types-E3sxq6xr.js';
9
9
  export { AnyStepResolver, ChatStepResolver, EmailStepResolver, InAppStepResolver, PushStepResolver, SmsStepResolver, StepResolverContext, step } from '../step-resolver.js';
@@ -1 +1 @@
1
- import{a as r,b as q,c as s,d as y,e as k}from"../chunk-EZ22F362.js";import{a as v,b as E,c as P,d as R,e as T,f as S,g as c,h as f,i as h}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as H}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as F,N as b,O as w,V as I}from"../chunk-E2MET7IR.js";import{a as G}from"../chunk-CANJPWLT.js";import{f as N}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="sveltekit",j=o=>{let t=new s({frameworkName:m,...o,handler:(u,e)=>({method:()=>u||e.request.method||"",body:()=>e.request.json(),headers:n=>e.request.headers.get(n),url:()=>{let n=process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev"?"http":"https";return new URL(e.request.url,`${n}://${e.request.headers.get("host")||""}`)},transformResponse:({body:n,headers:d,status:a})=>{let l=r();return new l(n,{status:a,headers:d})}})}).createHandler(),p=t.bind(null,void 0);return Object.defineProperties(p,{GET:{value:t.bind(null,"GET")},POST:{value:t.bind(null,"POST")},OPTIONS:{value:t.bind(null,"OPTIONS")}})};export{v as Actions,b as AgentDeliveryError,F as AgentError,E as Button,P as Card,R as CardLink,T as CardText,q as Client,N as CronExpression,S as Divider,s as NovuRequestHandler,c as Select,f as SelectOption,I as SeverityLevelEnum,h as TextInput,y as agent,m as frameworkName,G as providerSchemas,j as serve,H as step,w as toAgentError,k as workflow};
1
+ import{a as r,b as q,c as s,d as y,e as k}from"../chunk-XC7ATSSO.js";import{a as v,b as E,c as P,d as R,e as T,f as S,g as c,h as f,i as h}from"../chunk-C3P3ZH2I.js";import"../chunk-3XT6S7TZ.js";import{a as H}from"../chunk-2M25EATE.js";import"../chunk-22DBAEUX.js";import{M as F,N as b,O as w,V as I}from"../chunk-T4QVGWWK.js";import{a as G}from"../chunk-CANJPWLT.js";import{f as N}from"../chunk-FRWG7YTE.js";import"../chunk-W6DIBD4Z.js";import"../chunk-FHYMHX3T.js";var m="sveltekit",j=o=>{let t=new s({frameworkName:m,...o,handler:(u,e)=>({method:()=>u||e.request.method||"",body:()=>e.request.json(),headers:n=>e.request.headers.get(n),url:()=>{let n=process.env.NODE_ENV==="development"||process.env.NODE_ENV==="dev"?"http":"https";return new URL(e.request.url,`${n}://${e.request.headers.get("host")||""}`)},transformResponse:({body:n,headers:d,status:a})=>{let l=r();return new l(n,{status:a,headers:d})}})}).createHandler(),p=t.bind(null,void 0);return Object.defineProperties(p,{GET:{value:t.bind(null,"GET")},POST:{value:t.bind(null,"POST")},OPTIONS:{value:t.bind(null,"OPTIONS")}})};export{v as Actions,b as AgentDeliveryError,F as AgentError,E as Button,P as Card,R as CardLink,T as CardText,q as Client,N as CronExpression,S as Divider,s as NovuRequestHandler,c as Select,f as SelectOption,I as SeverityLevelEnum,h as TextInput,y as agent,m as frameworkName,G as providerSchemas,j as serve,H as step,w as toAgentError,k as workflow};
@@ -0,0 +1,3 @@
1
+ {
2
+ "main": "../dist/cjs/servers/hono.cjs"
3
+ }