@stackone/connect-sdk 1.47.0 → 1.49.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -3,7 +3,7 @@ import http from "node:http";
3
3
  import https from "node:https";
4
4
 
5
5
  //#region ../core/src/categories/types.d.ts
6
- type Category = 'hris' | 'crm' | 'ats' | 'lms' | 'marketing' | 'filestorage' | 'internal';
6
+ type Category = 'hris' | 'crm' | 'ats' | 'lms' | 'marketing' | 'filestorage' | 'internal' | 'action';
7
7
  //#endregion
8
8
  //#region ../core/src/compositeIds/types.d.ts
9
9
 
@@ -654,6 +654,7 @@ type ConfigMeta = {
654
654
  authentication: AuthenticationConfig[];
655
655
  actions: {
656
656
  id: string;
657
+ name: string;
657
658
  description: string;
658
659
  schema_type: string;
659
660
  authentication: AuthenticationConfig[];
package/dist/index.d.ts CHANGED
@@ -3,7 +3,7 @@ import http from "node:http";
3
3
  import https from "node:https";
4
4
 
5
5
  //#region ../core/src/categories/types.d.ts
6
- type Category = 'hris' | 'crm' | 'ats' | 'lms' | 'marketing' | 'filestorage' | 'internal';
6
+ type Category = 'hris' | 'crm' | 'ats' | 'lms' | 'marketing' | 'filestorage' | 'internal' | 'action';
7
7
  //#endregion
8
8
  //#region ../core/src/compositeIds/types.d.ts
9
9
 
@@ -654,6 +654,7 @@ type ConfigMeta = {
654
654
  authentication: AuthenticationConfig[];
655
655
  actions: {
656
656
  id: string;
657
+ name: string;
657
658
  description: string;
658
659
  schema_type: string;
659
660
  authentication: AuthenticationConfig[];
package/dist/index.js CHANGED
@@ -27,4 +27,4 @@ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=
27
27
  ...iss,
28
28
  path: iss.path ? [${x(e)}, ...iss.path] : [${x(e)}]
29
29
  })));`),t.write(`newResult[${x(e)}] = ${n}.value`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},i,a=S,o=!v.jitless,s=ve,c=o&&s.value,l=t.catchall,u;e._zod.parse=(s,d)=>{u??=n.value;let f=s.value;if(!a(f))return s.issues.push({expected:`object`,code:`invalid_type`,input:f,inst:e}),s;let p=[];if(o&&c&&d?.async===!1&&d.jitless!==!0)i||=r(t.shape),s=i(s,d);else{s.value={};let e=u.shape;for(let t of u.keys){let n=e[t],r=n._zod.run({value:f[t],issues:[]},d),i=n._zod.optin===`optional`&&n._zod.optout===`optional`;r instanceof Promise?p.push(r.then(e=>i?yn(e,s,t,f):F(e,s,t))):i?yn(r,s,t,f):F(r,s,t)}}if(!l)return p.length?Promise.all(p).then(()=>s):s;let m=[],h=u.keySet,ee=l._zod,te=ee.def.type;for(let e of Object.keys(f)){if(h.has(e))continue;if(te===`never`){m.push(e);continue}let t=ee.run({value:f[e],issues:[]},d);t instanceof Promise?p.push(t.then(t=>F(t,s,e))):F(t,s,e)}return m.length&&s.issues.push({code:`unrecognized_keys`,keys:m,input:f,inst:e}),p.length?Promise.all(p).then(()=>s):s}});function xn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;return t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>O(e,r,y())))}),t}const Sn=g(`$ZodUnion`,(e,t)=>{N.init(e,t),b(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),b(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),b(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),b(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>me(e.source)).join(`|`)})$`)}}),e._zod.parse=(n,r)=>{let i=!1,a=[];for(let e of t.options){let t=e._zod.run({value:n.value,issues:[]},r);if(t instanceof Promise)a.push(t),i=!0;else{if(t.issues.length===0)return t;a.push(t)}}return i?Promise.all(a).then(t=>xn(t,n,e,r)):xn(a,n,e,r)}}),Cn=g(`$ZodDiscriminatedUnion`,(e,t)=>{Sn.init(e,t);let n=e._zod.parse;b(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=fe(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!S(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,input:o,path:[t.discriminator],inst:e}),i)}}),wn=g(`$ZodIntersection`,(e,t)=>{N.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n),o=i instanceof Promise||a instanceof Promise;return o?Promise.all([i,a]).then(([t,n])=>En(e,t,n)):En(e,i,a)}});function Tn(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(ye(e)&&ye(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Tn(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Tn(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function En(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),E(e))return e;let r=Tn(t.value,n.value);if(!r.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const Dn=g(`$ZodRecord`,(e,t)=>{N.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!ye(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[];if(t.keyType._zod.values){let o=t.keyType._zod.values;n.value={};for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...D(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...D(e,o.issues)),n.value[e]=o.value)}let s;for(let e in i)o.has(e)||(s??=[],s.push(e));s&&s.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:s})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){n.issues.push({origin:`record`,code:`invalid_key`,issues:s.issues.map(e=>O(e,r,y())),input:o,path:[o],inst:e}),n.value[s.value]=s.value;continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...D(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...D(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),On=g(`$ZodEnum`,(e,t)=>{N.init(e,t);let n=ue(t.entries);e._zod.values=new Set(n),e._zod.pattern=RegExp(`^(${n.filter(e=>be.has(typeof e)).map(e=>typeof e==`string`?C(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,r)=>{let i=t.value;return e._zod.values.has(i)||t.issues.push({code:`invalid_value`,values:n,input:i,inst:e}),t}}),kn=g(`$ZodLiteral`,(e,t)=>{N.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?C(e):e?e.toString():String(e)).join(`|`)})$`),e._zod.parse=(n,r)=>{let i=n.value;return e._zod.values.has(i)||n.issues.push({code:`invalid_value`,values:t.values,input:i,inst:e}),n}}),An=g(`$ZodTransform`,(e,t)=>{N.init(e,t),e._zod.parse=(e,n)=>{let r=t.transform(e.value,e);if(n.async){let t=r instanceof Promise?r:Promise.resolve(r);return t.then(t=>(e.value=t,e))}if(r instanceof Promise)throw new _;return e.value=r,e}}),jn=g(`$ZodOptional`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),b(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${me(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>t.innerType._zod.optin===`optional`?t.innerType._zod.run(e,n):e.value===void 0?e:t.innerType._zod.run(e,n)}),Mn=g(`$ZodNullable`,(e,t)=>{N.init(e,t),b(e._zod,`optin`,()=>t.innerType._zod.optin),b(e._zod,`optout`,()=>t.innerType._zod.optout),b(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${me(e.source)}|null)$`):void 0}),b(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Nn=g(`$ZodDefault`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Pn(e,t)):Pn(r,t)}});function Pn(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Fn=g(`$ZodPrefault`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),In=g(`$ZodNonOptional`,(e,t)=>{N.init(e,t),b(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Ln(t,e)):Ln(i,e)}});function Ln(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}const Rn=g(`$ZodCatch`,(e,t)=>{N.init(e,t),e._zod.optin=`optional`,b(e._zod,`optout`,()=>t.innerType._zod.optout),b(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>O(e,n,y()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>O(e,n,y()))},input:e.value}),e.issues=[]),e)}}),zn=g(`$ZodPipe`,(e,t)=>{N.init(e,t),b(e._zod,`values`,()=>t.in._zod.values),b(e._zod,`optin`,()=>t.in._zod.optin),b(e._zod,`optout`,()=>t.out._zod.optout),e._zod.parse=(e,n)=>{let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Bn(e,t,n)):Bn(r,t,n)}});function Bn(e,t,n){return E(e)?e:t.out._zod.run({value:e.value,issues:e.issues},n)}const Vn=g(`$ZodReadonly`,(e,t)=>{N.init(e,t),b(e._zod,`propValues`,()=>t.innerType._zod.propValues),b(e._zod,`values`,()=>t.innerType._zod.values),b(e._zod,`optin`,()=>t.innerType._zod.optin),b(e._zod,`optout`,()=>t.innerType._zod.optout),e._zod.parse=(e,n)=>{let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Hn):Hn(r)}});function Hn(e){return e.value=Object.freeze(e.value),e}const Un=g(`$ZodLazy`,(e,t)=>{N.init(e,t),b(e._zod,`innerType`,()=>t.getter()),b(e._zod,`pattern`,()=>e._zod.innerType._zod.pattern),b(e._zod,`propValues`,()=>e._zod.innerType._zod.propValues),b(e._zod,`optin`,()=>e._zod.innerType._zod.optin),b(e._zod,`optout`,()=>e._zod.innerType._zod.optout),e._zod.parse=(t,n)=>{let r=e._zod.innerType;return r._zod.run(t,n)}}),Wn=g(`$ZodCustom`,(e,t)=>{j.init(e,t),N.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Gn(t,n,r,e));Gn(i,n,r,e)}});function Gn(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(k(e))}}const Kn=Symbol(`ZodOutput`),qn=Symbol(`ZodInput`);var Jn=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Yn(){return new Jn}const I=Yn();function Xn(e,t){return new e({type:`string`,...T(t)})}function Zn(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...T(t)})}function Qn(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...T(t)})}function $n(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...T(t)})}function er(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...T(t)})}function tr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...T(t)})}function nr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...T(t)})}function rr(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...T(t)})}function ir(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...T(t)})}function ar(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...T(t)})}function or(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...T(t)})}function sr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...T(t)})}function cr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...T(t)})}function lr(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...T(t)})}function ur(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...T(t)})}function dr(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...T(t)})}function fr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...T(t)})}function pr(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...T(t)})}function mr(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...T(t)})}function hr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...T(t)})}function gr(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...T(t)})}function _r(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...T(t)})}function vr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...T(t)})}function yr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...T(t)})}function br(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...T(t)})}function xr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...T(t)})}function Sr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...T(t)})}function Cr(e,t){return new e({type:`number`,checks:[],...T(t)})}function wr(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...T(t)})}function Tr(e,t){return new e({type:`boolean`,...T(t)})}function Er(e){return new e({type:`any`})}function Dr(e){return new e({type:`unknown`})}function Or(e,t){return new e({type:`never`,...T(t)})}function kr(e,t){return new xt({check:`less_than`,...T(t),value:e,inclusive:!1})}function Ar(e,t){return new xt({check:`less_than`,...T(t),value:e,inclusive:!0})}function jr(e,t){return new St({check:`greater_than`,...T(t),value:e,inclusive:!1})}function Mr(e,t){return new St({check:`greater_than`,...T(t),value:e,inclusive:!0})}function Nr(e,t){return new Ct({check:`multiple_of`,...T(t),value:e})}function Pr(e,t){let n=new Tt({check:`max_length`,...T(t),maximum:e});return n}function L(e,t){return new Et({check:`min_length`,...T(t),minimum:e})}function Fr(e,t){return new Dt({check:`length_equals`,...T(t),length:e})}function Ir(e,t){return new Ot({check:`string_format`,format:`regex`,...T(t),pattern:e})}function Lr(e){return new kt({check:`string_format`,format:`lowercase`,...T(e)})}function Rr(e){return new At({check:`string_format`,format:`uppercase`,...T(e)})}function zr(e,t){return new jt({check:`string_format`,format:`includes`,...T(t),includes:e})}function Br(e,t){return new Mt({check:`string_format`,format:`starts_with`,...T(t),prefix:e})}function Vr(e,t){return new Nt({check:`string_format`,format:`ends_with`,...T(t),suffix:e})}function R(e){return new Pt({check:`overwrite`,tx:e})}function Hr(e){return R(t=>t.normalize(e))}function Ur(){return R(e=>e.trim())}function Wr(){return R(e=>e.toLowerCase())}function Gr(){return R(e=>e.toUpperCase())}function Kr(e,t,n){return new e({type:`array`,element:t,...T(n)})}function qr(e,t,n){let r=new e({type:`custom`,check:`custom`,fn:t,...T(n)});return r}const Jr=g(`ZodISODateTime`,(e,t)=>{Yt.init(e,t),H.init(e,t)});function Yr(e){return yr(Jr,e)}const Xr=g(`ZodISODate`,(e,t)=>{Xt.init(e,t),H.init(e,t)});function Zr(e){return br(Xr,e)}const Qr=g(`ZodISOTime`,(e,t)=>{Zt.init(e,t),H.init(e,t)});function $r(e){return xr(Qr,e)}const ei=g(`ZodISODuration`,(e,t)=>{Qt.init(e,t),H.init(e,t)});function ti(e){return Sr(ei,e)}const ni=(e,t)=>{Me.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Pe(e,t)},flatten:{value:t=>Ne(e,t)},addIssue:{value:t=>e.issues.push(t)},addIssues:{value:t=>e.issues.push(...t)},isEmpty:{get(){return e.issues.length===0}}})},ri=g(`ZodError`,ni),z=g(`ZodError`,ni,{Parent:Error}),ii=Fe(z),ai=Le(z),oi=ze(z),si=Ve(z),B=g(`ZodType`,(e,t)=>(N.init(e,t),e.def=t,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),e.clone=(t,n)=>w(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>ii(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>oi(e,t,n),e.parseAsync=async(t,n)=>ai(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>si(e,t,n),e.spa=e.safeParseAsync,e.refine=(t,n)=>e.check(_a(t,n)),e.superRefine=t=>e.check(va(t)),e.overwrite=t=>e.check(R(t)),e.optional=()=>Qi(e),e.nullable=()=>ea(e),e.nullish=()=>Qi(ea(e)),e.nonoptional=t=>oa(e,t),e.array=()=>q(e),e.or=t=>Bi([e,t]),e.and=t=>Wi(e,t),e.transform=t=>ua(e,Xi(t)),e.default=t=>na(e,t),e.prefault=t=>ia(e,t),e.catch=t=>ca(e,t),e.pipe=t=>ua(e,t),e.readonly=()=>fa(e),e.describe=t=>{let n=e.clone();return I.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return I.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return I.get(e);let n=e.clone();return I.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),ci=g(`_ZodString`,(e,t)=>{Lt.init(e,t),B.init(e,t);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(Ir(...t)),e.includes=(...t)=>e.check(zr(...t)),e.startsWith=(...t)=>e.check(Br(...t)),e.endsWith=(...t)=>e.check(Vr(...t)),e.min=(...t)=>e.check(L(...t)),e.max=(...t)=>e.check(Pr(...t)),e.length=(...t)=>e.check(Fr(...t)),e.nonempty=(...t)=>e.check(L(1,...t)),e.lowercase=t=>e.check(Lr(t)),e.uppercase=t=>e.check(Rr(t)),e.trim=()=>e.check(Ur()),e.normalize=(...t)=>e.check(Hr(...t)),e.toLowerCase=()=>e.check(Wr()),e.toUpperCase=()=>e.check(Gr())}),li=g(`ZodString`,(e,t)=>{Lt.init(e,t),ci.init(e,t),e.email=t=>e.check(Zn(ui,t)),e.url=t=>e.check(rr(fi,t)),e.jwt=t=>e.check(vr(Di,t)),e.emoji=t=>e.check(ir(pi,t)),e.guid=t=>e.check(Qn(di,t)),e.uuid=t=>e.check($n(U,t)),e.uuidv4=t=>e.check(er(U,t)),e.uuidv6=t=>e.check(tr(U,t)),e.uuidv7=t=>e.check(nr(U,t)),e.nanoid=t=>e.check(ar(mi,t)),e.guid=t=>e.check(Qn(di,t)),e.cuid=t=>e.check(or(hi,t)),e.cuid2=t=>e.check(sr(gi,t)),e.ulid=t=>e.check(cr(_i,t)),e.base64=t=>e.check(hr(wi,t)),e.base64url=t=>e.check(gr(Ti,t)),e.xid=t=>e.check(lr(vi,t)),e.ksuid=t=>e.check(ur(yi,t)),e.ipv4=t=>e.check(dr(bi,t)),e.ipv6=t=>e.check(fr(xi,t)),e.cidrv4=t=>e.check(pr(Si,t)),e.cidrv6=t=>e.check(mr(Ci,t)),e.e164=t=>e.check(_r(Ei,t)),e.datetime=t=>e.check(Yr(t)),e.date=t=>e.check(Zr(t)),e.time=t=>e.check($r(t)),e.duration=t=>e.check(ti(t))});function V(e){return Xn(li,e)}const H=g(`ZodStringFormat`,(e,t)=>{P.init(e,t),ci.init(e,t)}),ui=g(`ZodEmail`,(e,t)=>{Bt.init(e,t),H.init(e,t)}),di=g(`ZodGUID`,(e,t)=>{Rt.init(e,t),H.init(e,t)}),U=g(`ZodUUID`,(e,t)=>{zt.init(e,t),H.init(e,t)}),fi=g(`ZodURL`,(e,t)=>{Vt.init(e,t),H.init(e,t)}),pi=g(`ZodEmoji`,(e,t)=>{Ht.init(e,t),H.init(e,t)}),mi=g(`ZodNanoID`,(e,t)=>{Ut.init(e,t),H.init(e,t)}),hi=g(`ZodCUID`,(e,t)=>{Wt.init(e,t),H.init(e,t)}),gi=g(`ZodCUID2`,(e,t)=>{Gt.init(e,t),H.init(e,t)}),_i=g(`ZodULID`,(e,t)=>{Kt.init(e,t),H.init(e,t)}),vi=g(`ZodXID`,(e,t)=>{qt.init(e,t),H.init(e,t)}),yi=g(`ZodKSUID`,(e,t)=>{Jt.init(e,t),H.init(e,t)}),bi=g(`ZodIPv4`,(e,t)=>{$t.init(e,t),H.init(e,t)}),xi=g(`ZodIPv6`,(e,t)=>{en.init(e,t),H.init(e,t)}),Si=g(`ZodCIDRv4`,(e,t)=>{tn.init(e,t),H.init(e,t)}),Ci=g(`ZodCIDRv6`,(e,t)=>{nn.init(e,t),H.init(e,t)}),wi=g(`ZodBase64`,(e,t)=>{an.init(e,t),H.init(e,t)}),Ti=g(`ZodBase64URL`,(e,t)=>{sn.init(e,t),H.init(e,t)}),Ei=g(`ZodE164`,(e,t)=>{cn.init(e,t),H.init(e,t)}),Di=g(`ZodJWT`,(e,t)=>{un.init(e,t),H.init(e,t)}),Oi=g(`ZodNumber`,(e,t)=>{dn.init(e,t),B.init(e,t),e.gt=(t,n)=>e.check(jr(t,n)),e.gte=(t,n)=>e.check(Mr(t,n)),e.min=(t,n)=>e.check(Mr(t,n)),e.lt=(t,n)=>e.check(kr(t,n)),e.lte=(t,n)=>e.check(Ar(t,n)),e.max=(t,n)=>e.check(Ar(t,n)),e.int=t=>e.check(Ai(t)),e.safe=t=>e.check(Ai(t)),e.positive=t=>e.check(jr(0,t)),e.nonnegative=t=>e.check(Mr(0,t)),e.negative=t=>e.check(kr(0,t)),e.nonpositive=t=>e.check(Ar(0,t)),e.multipleOf=(t,n)=>e.check(Nr(t,n)),e.step=(t,n)=>e.check(Nr(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function W(e){return Cr(Oi,e)}const ki=g(`ZodNumberFormat`,(e,t)=>{fn.init(e,t),Oi.init(e,t)});function Ai(e){return wr(ki,e)}const ji=g(`ZodBoolean`,(e,t)=>{pn.init(e,t),B.init(e,t)});function G(e){return Tr(ji,e)}const Mi=g(`ZodAny`,(e,t)=>{mn.init(e,t),B.init(e,t)});function Ni(){return Er(Mi)}const Pi=g(`ZodUnknown`,(e,t)=>{hn.init(e,t),B.init(e,t)});function K(){return Dr(Pi)}const Fi=g(`ZodNever`,(e,t)=>{gn.init(e,t),B.init(e,t)});function Ii(e){return Or(Fi,e)}const Li=g(`ZodArray`,(e,t)=>{vn.init(e,t),B.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(L(t,n)),e.nonempty=t=>e.check(L(1,t)),e.max=(t,n)=>e.check(Pr(t,n)),e.length=(t,n)=>e.check(Fr(t,n)),e.unwrap=()=>e.element});function q(e,t){return Kr(Li,e,t)}const Ri=g(`ZodObject`,(e,t)=>{bn.init(e,t),B.init(e,t),b(e,`shape`,()=>t.shape),e.keyof=()=>Y(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:K()}),e.loose=()=>e.clone({...e._zod.def,catchall:K()}),e.strict=()=>e.clone({...e._zod.def,catchall:Ii()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Te(e,t),e.merge=t=>Ee(e,t),e.pick=t=>Ce(e,t),e.omit=t=>we(e,t),e.partial=(...t)=>De(Zi,e,t[0]),e.required=(...t)=>Oe(aa,e,t[0])});function J(e,t){let n={type:`object`,get shape(){return ge(this,`shape`,{...e}),this.shape},...T(t)};return new Ri(n)}const zi=g(`ZodUnion`,(e,t)=>{Sn.init(e,t),B.init(e,t),e.options=t.options});function Bi(e,t){return new zi({type:`union`,options:e,...T(t)})}const Vi=g(`ZodDiscriminatedUnion`,(e,t)=>{zi.init(e,t),Cn.init(e,t)});function Hi(e,t,n){return new Vi({type:`union`,options:t,discriminator:e,...T(n)})}const Ui=g(`ZodIntersection`,(e,t)=>{wn.init(e,t),B.init(e,t)});function Wi(e,t){return new Ui({type:`intersection`,left:e,right:t})}const Gi=g(`ZodRecord`,(e,t)=>{Dn.init(e,t),B.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Ki(e,t,n){return new Gi({type:`record`,keyType:e,valueType:t,...T(n)})}const qi=g(`ZodEnum`,(e,t)=>{On.init(e,t),B.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new qi({...t,checks:[],...T(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new qi({...t,checks:[],...T(r),entries:i})}});function Y(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new qi({type:`enum`,entries:n,...T(t)})}const Ji=g(`ZodLiteral`,(e,t)=>{kn.init(e,t),B.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function X(e,t){return new Ji({type:`literal`,values:Array.isArray(e)?e:[e],...T(t)})}const Yi=g(`ZodTransform`,(e,t)=>{An.init(e,t),B.init(e,t),e._zod.parse=(n,r)=>{n.addIssue=r=>{if(typeof r==`string`)n.issues.push(k(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,t.continue??=!0,n.issues.push(k(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Xi(e){return new Yi({type:`transform`,transform:e})}const Zi=g(`ZodOptional`,(e,t)=>{jn.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType});function Qi(e){return new Zi({type:`optional`,innerType:e})}const $i=g(`ZodNullable`,(e,t)=>{Mn.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ea(e){return new $i({type:`nullable`,innerType:e})}const ta=g(`ZodDefault`,(e,t)=>{Nn.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function na(e,t){return new ta({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():t}})}const ra=g(`ZodPrefault`,(e,t)=>{Fn.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ia(e,t){return new ra({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():t}})}const aa=g(`ZodNonOptional`,(e,t)=>{In.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType});function oa(e,t){return new aa({type:`nonoptional`,innerType:e,...T(t)})}const sa=g(`ZodCatch`,(e,t)=>{Rn.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ca(e,t){return new sa({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const la=g(`ZodPipe`,(e,t)=>{zn.init(e,t),B.init(e,t),e.in=t.in,e.out=t.out});function ua(e,t){return new la({type:`pipe`,in:e,out:t})}const da=g(`ZodReadonly`,(e,t)=>{Vn.init(e,t),B.init(e,t)});function fa(e){return new da({type:`readonly`,innerType:e})}const pa=g(`ZodLazy`,(e,t)=>{Un.init(e,t),B.init(e,t),e.unwrap=()=>e._zod.def.getter()});function ma(e){return new pa({type:`lazy`,getter:e})}const ha=g(`ZodCustom`,(e,t)=>{Wn.init(e,t),B.init(e,t)});function ga(e){let t=new j({check:`custom`});return t._zod.check=e,t}function _a(e,t={}){return qr(ha,e,t)}function va(e){let t=ga(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(k(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(k(r))}},e(n.value,n)));return t}const ya=25,ba=e=>{switch(e){case`list`:return{statusCode:200,description:`The list of records was retrieved.`};case`get`:return{statusCode:200,description:`The record with the given identifier was retrieved.`};case`create`:return{statusCode:201,description:`The record was created successfully.`};case`update`:return{statusCode:200,description:`The record was updated successfully.`};case`delete`:return{statusCode:204,description:`The record was deleted successfully.`};case`custom`:return{statusCode:200,description:`The operation was executed successfully.`};case`refresh_token`:return{statusCode:200,description:`The refresh token operation was executed successfully.`};case`unknown`:return{statusCode:200};default:throw Error(`Unknown operation type: ${e}`)}},xa=()=>{let e={400:{statusCode:400,description:`Invalid request.`},401:{statusCode:401,description:`Unauthorized access.`},403:{statusCode:403,description:`Forbidden.`},404:{statusCode:404,description:`Resource not found.`},500:{statusCode:500,description:`Server error while executing the request.`}};return e},Sa={key:V(),label:V(),required:G().optional().default(!1),secret:G().optional().default(!1),readOnly:G().optional().default(!1),placeholder:V().optional(),description:V().optional(),tooltip:V().optional()},Ca=Hi(`type`,[J({...Sa,type:Y([`text`,`password`])}),J({...Sa,type:X(`select`),options:J({value:V(),label:V()}).array()})]),wa=J({targetFieldKey:V(),alias:V().optional(),expression:V().optional(),values:K().optional(),type:Y([`string`,`number`,`boolean`,`datetime_string`,`enum`,`object`]),array:G().default(!1),custom:G().default(!1),hidden:G().default(!1),enumMapper:J({matcher:Y([`country_alpha2code_by_alpha2code`,`country_alpha3code_by_alpha3code`,`country_code_by_country_code`,`country_name_by_country_name`,`country_name_by_alpha3code`,`country_name_by_alpha2code`,`country_name_by_country_code`,`country_alpha3code_by_alpha2code`,`country_alpha3code_by_country_name`,`country_alpha3code_by_country_code`,`country_alpha2code_by_alpha3code`,`country_alpha2code_by_country_name`,`country_alpha2code_by_country_code`,`country_code_by_alpha2code`,`country_code_by_alpha3code`,`country_code_by_country_name`,`country_subdivisions_by_alpha2code`,`country_subdivision_code_by_subdivision_name`,`country_alpha2code_by_citizenship`,`country_subdivision_name_by_subdivision_code`]).or(J({matchExpression:V(),value:V()}).array())}).optional(),properties:ma(()=>wa).array().optional()}),Ta=J({operationId:V(),categories:V().array(),operationType:Y([`list`,`get`,`create`,`update`,`delete`,`custom`,`refresh_token`,`unknown`]),schema:V().optional(),entrypointUrl:V().optional(),entrypointHttpMethod:V().optional(),description:V(),responses:J({statusCode:W(),description:V()}).array().optional(),inputs:J({name:V(),type:V(),required:G(),description:V(),in:V()}).array().optional(),cursor:J({enabled:G(),pageSize:W()}).optional(),compositeIdentifiers:J({enabled:G(),version:W().optional(),fields:J({targetFieldKey:V(),remote:V().optional(),components:V().array()}).array().optional()}).optional(),scheduledJobs:J({enabled:G(),type:Y([`data_sync`]),schedule:V(),description:V(),requestParams:J({fields:V().array().optional(),expand:V().array().optional(),filter:Ki(V(),V()).optional()}).optional(),syncFilter:J({name:Y([`updated_after`,`created_after`]),initialLoopbackPeriod:V(),incrementalLoopbackPeriod:V()}).optional()}).array().optional(),fieldConfigs:wa.array().optional(),steps:J({stepId:V(),description:V(),stepFunction:J({functionName:V(),version:V().optional(),parameters:Ki(V(),K())}),condition:V().optional(),ignoreError:G().optional()}).array(),result:V().or(Ki(V(),K())).optional()}),Ea=J({schedule:V().optional(),operation:Ta.extend({operationType:X(`refresh_token`)})}),Da=J({mainRatelimit:W(),subPools:q(J({subPoolKey:V(),urlPattern:V(),rateLimit:W()})).optional(),mappedRateLimitErrors:q(J({errorStatus:W(),errorMessage:V(),errorMessagePath:V().optional(),retryAfterPath:V().optional(),retryAfterUnit:Bi([X(`seconds`),X(`milliseconds`),X(`date`)]).optional(),retryAfterValue:W().optional()})).optional()}),Oa=J({mainMaxConcurrency:W(),subPools:q(J({subPoolKey:V(),urlPattern:V(),maxConcurrency:W()})).optional()}),ka=J({StackOne:V(),info:J({title:V(),version:V(),key:V(),assets:J({icon:V()}),description:V().optional()}),baseUrl:V(),authentication:Ki(V(),J({type:V(),label:V(),authorization:f.AUTHENTICATION_SCHEMA,environments:J({key:V(),name:V()}).array(),support:J({link:V(),description:V().optional()}),configFields:Ca.array().optional(),setupFields:Ca.array().optional(),refreshAuthentication:Ea.optional(),testOperations:J({operation:V().or(Ta),condition:V().optional(),required:G().default(!0)}).array().optional()})).array().optional(),operations:Ta.array().optional(),rateLimit:Da.optional(),concurrency:Oa.optional()});function Aa(e){try{let t=(0,m.parse)(e),n=ka.parse(t),r={title:n.info.title,version:n.info.version,key:n.info.key,assets:n.info.assets,description:n.info.description,rateLimit:n.rateLimit,concurrency:n.concurrency},i=Pa(n),a={baseUrl:n.baseUrl,authentication:ja(i)},o=Ba(n,a);return r.operations=o,Ma(i,o,a),r.authentication=i,(0,c.notMissing)(o)&&(r.categories=Na(Object.values(o))),r}catch(e){throw Error(`Error parsing YAML file: ${e.message}`)}}const ja=e=>{let t={};for(let[n,r]of Object.entries(e))if(r&&typeof r==`object`){let{setupFields:e,configFields:i,support:a,refreshAuthentication:o,testOperations:s,...c}=r;t[n]=ja(c)}else t[n]=r;return t},Ma=(e,t,n)=>{if(!(!e||!t))for(let r of Object.values(e))for(let e of Object.values(r)){let r=e.testOperations;e.testOperations=r?.map(e=>{if((0,c.notMissing)(e.operation))if(typeof e.operation==`string`){let n=e.operation,r=Object.values(t).find(e=>e.id===n);if(r)return{...e,operation:r}}else{let t=Va(e.operation,n);return{...e,operation:t}}return e})}},Na=e=>{let t=e.reduce((e,t)=>{for(let n of t.categories)e.add(n);return e},new Set);return Array.from(t)},Pa=e=>{let t={};for(let n of e.authentication??[]){let[e]=Object.keys(n),r=n[e].environments.reduce((t,r)=>{let{key:i,name:a}=r,{environments:o,refreshAuthentication:s,testOperations:l,...u}=n[e],d=(0,c.notMissing)(s)?{schedule:s.schedule,operation:Va(s.operation)}:void 0;return t[i]={...u,refreshAuthentication:d,envKey:i,envName:a,testOperations:l},t},{});t[e]=r}return t},Fa=e=>e.entrypointUrl&&e.entrypointHttpMethod?`${e.entrypointHttpMethod.toUpperCase()} ${e.entrypointUrl}`:void 0,Ia=e=>e.operationType===`list`?`GET /${e.schema}`:`GET /${e.schema}/:id`,La=e=>{if(e.operationType!==`refresh_token`)return e.entrypointHttpMethod??`get`},Ra=e=>{if(!(e.operationType===`refresh_token`||(0,c.isMissing)(e.schema)))return e.operationType===`list`?`/${e.schema}`:`/${e.schema}/:id`},za=e=>{let t={success:ba(e.operationType),errors:xa()},n=e.responses?.reduce((e,t)=>{let n=(0,p.isSuccessStatusCode)(t.statusCode);return n?e.success={statusCode:t.statusCode,description:t.description}:e.errors[t.statusCode]={statusCode:t.statusCode,description:t.description},e},t);return n??t},Ba=(e,t)=>{let n=e.operations?.reduce((e,n)=>{let r=Fa(n),i=Ia(n);return e[r??i]=Va(n,t),e},{});return n},Va=(e,t)=>{let n=Ra(e),r=za(e),i=Wa(e),a=e.inputs||[];i.enabled&&a?.push({type:`string`,name:`page_size`,in:`query`,required:!1,description:`Number of items to return per page`});let o=La(e);return{id:e.operationId,categories:e.categories,description:e.description,operationType:e.operationType,entrypointUrl:e.entrypointUrl??n,entrypointHttpMethod:o,responses:r,cursor:i,compositeIdentifiers:Ga(e),scheduledJobs:Ka(e),inputs:a,steps:e.steps.reduce((n,r)=>(n[r.stepId]={id:r.stepId,description:r.description,condition:r.condition,ignoreError:r.ignoreError,stepFunction:{functionName:r.stepFunction.functionName,version:r.stepFunction.version,params:{...r.stepFunction.parameters,...qa(r.stepFunction.functionName,t,r.stepFunction.parameters),...r.stepFunction.functionName===`map_fields`||r.stepFunction.functionName===`typecast`?{fields:r.stepFunction.parameters.fields??e.fieldConfigs}:{}}}},n),{}),result:e.result}},Ha=(e,t)=>{if(!e.inputs)return{};let n=Ua(e.inputs),r=n.parse(t);return{...r.headers??{},...r.query??{},...r.path??{},...r.body??{}}},Z=e=>{let t={};return e.forEach(e=>{let n;switch(e.type.toLowerCase()){case`string`:n=V();break;case`number`:n=W();break;case`boolean`:n=G();break;default:n=Ni()}t[e.name]=e.required?n:n.optional()}),J(t)},Ua=e=>{let t=e.filter(e=>e.in===`path`),n=e.filter(e=>e.in===`query`),r=e.filter(e=>e.in===`body`),i=e.filter(e=>e.in===`headers`);return J({path:Z(t).optional(),query:Z(n).optional(),body:Z(r).optional(),headers:Z(i).optional()})},Wa=e=>{let t=e.operationType===`list`,n=e.cursor??{enabled:t,pageSize:ya};return{enabled:n.enabled&&t,pageSize:n.pageSize}},Ga=e=>{if(e.operationType===`refresh_token`)return{enabled:!1};if((0,c.isMissing)(e.compositeIdentifiers)){let t=e.fieldConfigs?.find(e=>e.targetFieldKey===`id`),n=(0,c.notMissing)(t)?[{targetFieldKey:t.targetFieldKey,remote:`id`,components:[{name:t.targetFieldKey,alias:t.alias}]}]:void 0;return{enabled:!0,version:f.COMPOSITE_ID_LATEST_VERSION,fields:n}}let t=[];for(let n of e.compositeIdentifiers?.fields??[]){let r=n.components.map(t=>{let n=e.fieldConfigs?.find(e=>e.targetFieldKey===t);return{name:t,alias:n?.alias}});t.push({targetFieldKey:n.targetFieldKey,remote:n.remote,components:r})}return{enabled:e.compositeIdentifiers.enabled,version:e.compositeIdentifiers.version,fields:t.length>0?t:void 0}},Ka=e=>{if(!(0,c.isMissing)(e.scheduledJobs))return e.scheduledJobs},qa=(e,t,n={})=>{if(e===`request`||e===`paginated_request`){let e=[{receivedStatus:500,targetStatus:502}],r=n.customErrors&&Array.isArray(n.customErrors)?n.customErrors:[],i=[...r,...e];return{...t,customErrors:i}}else return{}},Ja=(e,t,n)=>{if(e.authentication?.[t]?.[n]?.authorization.type!==`oauth2`)return;let r=e.authentication?.[t]?.[n]?.refreshAuthentication?.operation;if((0,c.notMissing)(r))return{operation:r,params:{}}},Ya=(e,t,n)=>{if(e.authentication?.[t]?.[n]?.authorization.type!==`oauth2`)return!1;let r=Ja(e,t,n);return(0,c.notMissing)(r)},Xa=(e,t,n)=>{let r=e.authentication?.[t]?.[n]?.authorization;if(r?.type===`oauth2`)return r?.tokenExpiresIn},Za=(e,t,n)=>{let r=e.authentication?.[t]?.[n]?.authorization;if(r?.type===`oauth2`)return r?.tokenRefreshExpiresIn},Qa=e=>{try{let t=[],n=(0,m.parse)(e),r=ka.safeParse(n);return r.success||r.error.issues.forEach(n=>{let r=$a(n.path,e);t.push({line:r,message:n.message,field:n.path.join(`.`)})}),t.length>0?{success:!1,errors:t}:{success:!0}}catch(e){let t=e.message,n=t.match(/at line (\d+)/),r=n?parseInt(n[1],10):1;return{success:!1,errors:[{line:r,message:`The YAML connector file is not valid. Please check the syntax and structure.`,field:void 0}]}}},$a=(e,t)=>{let n=t.split(`
30
- `),r=0,i=-1,a=0;for(let t=0;t<n.length;t++){let o=n[t],s=o.match(/^(\s*)/)?.[1]?.length||0,l=o.replace(`- `,``).trim();if(l.startsWith(`#`)||l===``||s<=i)continue;let u=(0,c.notMissing)(e[r])?`${String(e[r])}`:``;if((0,c.isMissing)(u))return a+1;if(isNaN(Number(u))){if(l.startsWith(`${u}:`)){if(r===e.length-1)return t+1;i=s,a=t,r++}}else{let e=parseInt(u,10),i=-1;for(let o=t;o<n.length;o++){let s=n[o],c=s.trim();if(c.startsWith(`-`)&&i++,i===e){r++,a=t,t--;break}else t++}}}return a+1};var Q=class e extends Error{errorType;context;constructor(t,n,r){super(r),this.name=`ConnectSDKError`,this.errorType=t,this.context=n,Error.captureStackTrace&&Error.captureStackTrace(this,e)}toString(){return`${this.name} [${this.errorType}]: ${this.message}`}},eo=class extends Q{constructor(e,t){super(`CONNECTOR_PARSE_ERROR`,e,t),this.name=`ConnectorParseError`}},to=class extends Q{constructor(e,t){super(`MISSING_OPERATION_ERROR`,e,t),this.name=`MissingOperationError`}},no=class extends Q{constructor(e,t){super(`INVALID_OPERATION_INPUTS_ERROR`,e,t),this.name=`InvalidOperationInputsError`}},ro=class extends Q{constructor(e,t){super(`INVALID_CURSOR_ERROR`,e,t),this.name=`InvalidCursorError`}};const io=e=>{let t=Object.keys(e.authentication??{}).map(t=>({type:`custom`,label:e.authentication?.[t].production?.label||`Custom`,key:t})),n=Object.values(e?.operations??{}).map(e=>({id:e.id,description:e.description.replace(/\b\w/g,e=>e.toUpperCase()),schema_type:`native`,authentication:t}));return{version:e.version,name:e.description,key:e.key,icon:e.assets?.icon,description:e.description,authentication:t,actions:n}},ao=e=>e.map(io),oo=`stackone://internal//`,so=`${oo}refresh_token`,co=async({block:e,stepFunctionName:t,params:n,buildStepFunction:r=f.StepFunctionsFactory.build})=>{let i=r({functionName:t}).fn,a=await i({block:e,params:n}),o=t===f.StepFunctionName.MAP_FIELDS?{[f.StepFunctionName.MAP_FIELDS.toString()]:{output:{data:a.block.result},errors:a.errors,successful:a.successful}}:{};return{...a.block,steps:{...a?.block?.steps??{},...o}}},lo=({category:e,connectorKey:t,connectorVersion:n,authConfigKey:r,environment:i=`production`,operation:a,accountSecureId:o,projectSecureId:s})=>({projectSecureId:s,accountSecureId:o,connectorKey:t,connectorVersion:n,category:e,service:``,resource:``,schema:a?.schema?.key,operationType:a?.operationType??`unknown`,authenticationType:r,environment:i}),uo=e=>{let t=e.operation?.compositeIdentifiers,n={...e.inputs??{}};if(!t?.enabled||(0,c.isMissing)(n))return e;let r=t.fields?.reduce((e,t)=>(t.components.forEach(t=>{t.alias&&(e[t.name]=t.alias)}),e),{}),i={version:t.version??f.COMPOSITE_ID_LATEST_VERSION,aliases:r};return fo(n,i,e.logger),{...e,inputs:n}},fo=(e,t,n)=>{for(let r in e){let i=e[r];if(typeof i==`string`||Array.isArray(i)&&i.every(e=>typeof e==`string`))vo(i,r,e,t,n);else if(Array.isArray(i))for(let e of i)fo(e,t,n);else typeof i==`object`&&i&&fo(i,t,n)}},po=(e,t,n,r)=>{let i=[],a=[];for(let o of e)try{let e=(0,f.decodeCompositeId)(o,n);i.push(e)}catch(e){r?.debug({message:`Received ${t} with invalid composite ID, assuming it is not a composite ID`,category:`processCompositeId`,context:{key:t,inputElement:o,compositeIdentifierConfig:n,error:e}}),a.push(o)}return{compositeIdComponents:i,nonCompositeIds:a}},mo=(e,t,n,r)=>{let i=n.filter(e=>Object.keys(e).length>1);i.length>0&&(e.decoded_ids={...e.decoded_ids??{},[t]:r?i:i[0]})},ho=e=>{let t=Object.values(e);return t.length===1&&(typeof t[0]==`string`||typeof t[0]==`number`)},go=(e,t,n,r,i)=>{n.every(ho)&&(i?e[t]=[...n.map(e=>Object.values(e)[0]),...r]:n.length>0&&(e[t]=Object.values(n[0])[0]))},_o=(e,t,n)=>{e instanceof f.CoreError&&e.type===`COMPOSITE_ID_MISSING_HEADER_ERROR`?n?.debug({message:`Received ${t} with no composite ID header, assuming it is not a composite ID`}):n?.warning({message:`Error processing composite ID for ${t}, ignoring it`,error:e})},vo=(e,t,n,r,i)=>{try{let a=Array.isArray(e),o=a?e:[e];if(o.length===0)return;let{compositeIdComponents:s,nonCompositeIds:c}=po(o,t,r,i);mo(n,t,s,a),go(n,t,s,c,a)}catch(e){_o(e,t,i)}},yo=`remote_`,bo=e=>{let t=e.operation?.compositeIdentifiers;if(!t?.enabled)return e;let n=`data`,r=e.outputs?.[n];if((0,c.isMissing)(r))return e;let i=Array.isArray(r)?r.map(e=>xo(e,t)):xo(r,t);return{...e,outputs:{...e.outputs??{},[n]:i}}},xo=(e,t)=>{let n=So(e,t),r=Ao(n);return{...e,...(0,c.isObject)(r)?r:{}}},So=(e,t)=>{let n=t.version??f.COMPOSITE_ID_LATEST_VERSION,r={};return t.fields?.forEach(t=>{let i={},a=[];t.components.forEach(t=>{t.alias&&(i[t.name]=t.alias),a.push({key:t.name,value:e[t.name]})});let o=a.length===1?a[0]:{identifiers:a},s={version:n,aliases:Object.keys(i).length>0?i:void 0},c=(0,f.encodeCompositeId)(o,s);r[t.targetFieldKey]=c,t.remote&&(r[`${yo}${t.remote}`]=e[t.remote])}),{...e,...r}},Co=e=>e===`id`||/.+_id(s)?$/.test(e),wo=e=>Array.isArray(e)&&e.every(e=>(0,c.isString)(e)&&e.length>0),To=(e,t)=>(0,f.isCompositeId)(e)||t.startsWith(yo),Eo=(e,t)=>{try{return(0,f.encodeCompositeId)({key:e,value:t},{version:f.COMPOSITE_ID_LATEST_VERSION})}catch{return t}},Do=(e,t,n)=>{let r=t.map(t=>(0,c.isString)(t)&&t.length>0&&!(0,f.isCompositeId)(t)?Eo(e,t):t);n[e]=r,n[`${yo}${e}`]=t},Oo=(e,t,n)=>{if(To(t,e))return;let r=(0,f.encodeCompositeId)({key:e,value:t},{version:f.COMPOSITE_ID_LATEST_VERSION});n[e]=r,n[`remote_${e}`]=t},ko=(e,t,n)=>{wo(t)?Do(e,t,n):(0,c.isString)(t)&&t.length>0&&Oo(e,t,n)},Ao=e=>{if(Array.isArray(e))return e.map(e=>Ao(e));if(!(0,c.isObject)(e))return e;let t={...e};for(let[n,r]of Object.entries(e))((0,c.isObject)(r)||Array.isArray(r)&&r.length>0&&(0,c.isObject)(r[0]))&&(t[n]=Ao(r)),Co(n)&&ko(n,r,t);return t},jo=(e,t)=>{let n=Number(e.inputs?.page_size),r=(0,c.notMissing)(e.inputs?.page_size)&&(0,c.isNumber)(n)&&!Number.isNaN(n)?n:e.operation?.cursor?.pageSize??t;return r},Mo=(e,t,n,r)=>{let i=(0,c.isMissing)(e)?void 0:e.data,a=Object.keys(n).length+1,o=(0,f.isCursorEmpty)({cursor:r,ignoreStepIndex:a});if(!(0,c.isObject)(e)||(0,c.isMissing)(i)||(i?.length??0)<=t)return{result:e,next:(0,c.notMissing)(r)&&!o?(0,f.minifyCursor)(r):null};let s=r?.remote?.[a]?.pageNumber??1,l=(s-1)*t,u=l+t,d=i.slice(l,u),p=i.length>u||!o,m=(0,f.updateCursor)({cursor:r,stepIndex:a,pageNumber:s+1});return{result:{...e,data:d},next:p?(0,f.minifyCursor)(m):null}},No=async({block:e,buildStepFunction:t=f.StepFunctionsFactory.build,virtualPaginateResultFn:n=Mo,encodeResultCompositeIds:r=bo,decodeInputCompositeIds:i=uo})=>{let a=i(e),o=await zo({block:a,buildStepFunction:t,virtualPaginateResultFn:n});return r(o)},Po=(e,t)=>e.condition?!(0,h.safeEvaluate)(e.condition,t):!1,Fo=(e,t,n)=>{let r=e.stepFunction;return t.operation?.cursor.enabled?{...r.params??{},cursor:{token:t.nextCursor?.remote?.[n]?.providerPageCursor,position:t.nextCursor?.remote?.[n]?.position}}:r.params??{}},Io=(e,t,n,r,i)=>{let a=$({block:e,stepId:t,successful:!1,functionOutput:n}),o=r.ignoreError??!1;return o||(i.hasFatalError=!0,i.errorStatusCode??=n.output?.statusCode??500),a},Lo=async(e,t,n,r,i,a)=>{let o=n[e],s=o.stepFunction,c=a.buildStepFunction({functionName:s.functionName,version:s.version,validateSchemas:!0}).fn;if(Po(o,r))return $({block:r,stepId:e,successful:!0,skipped:!0,message:`Step skipped due to condition not met.`});if(i.hasFatalError)return $({block:r,stepId:e,successful:!1,skipped:!0,message:`Step skipped due to previous error.`});let l=Fo(o,r,t),u=await c({block:r,params:l});if(u.successful===!1)return Io(r,e,u,o,i);let d=r.operation?.cursor.enabled?(0,f.updateCursor)({cursor:r.nextCursor,stepIndex:t,providerPageCursor:u.output?.next,position:u.output?.position}):void 0;return $({block:{...u.block,nextCursor:d},stepId:e,functionOutput:u})},Ro=(e,t,n,r,i)=>{let a=!n.hasFatalError,o=a?e.operation?.responses.success.statusCode??200:n.errorStatusCode??500,s=(0,c.notMissing)(i)&&(0,c.isObject)(i.result)?{next:i.next,...i.result}:r;return{...t,outputs:s,response:{successful:a,statusCode:o,message:a?void 0:e.operation?.responses?.errors?.[o]?.description??p.HttpErrorMessages?.[o]??`Error while processing the request`}}},zo=async({block:e,buildStepFunction:t=f.StepFunctionsFactory.build,virtualPaginateResultFn:n=Mo})=>{let r=e.operation?.steps||{},i={...e},a=Object.keys(r),o=jo(e,ya),s={hasFatalError:!1,errorStatusCode:null},c={block:e,buildStepFunction:t,virtualPaginateResultFn:n};for(let[e,t]of a.entries())i=await Lo(t,e,r,i,s,c);let l=e.operation?.result?Bo(e.operation.result,i):void 0,u=e.operation?.cursor.enabled?n(l,o,r,i.nextCursor):void 0;return Ro(e,i,s,l,u)},Bo=(e,t)=>(0,c.isObject)(e)?(0,h.safeEvaluateRecord)(e,t):(0,h.safeEvaluate)(e,t),$=({block:e,stepId:t,successful:n,functionOutput:r,skipped:i,message:a})=>({...e,steps:{...e.steps,[t]:{successful:n??r?.successful??!1,errors:r?.errors,output:r?.output,skipped:i,message:a}}}),Vo=async({account:e,connector:t,category:n,path:r,method:i=`get`,queryParams:a={},body:o,headers:s,logger:l,getHttpClient:u,parseConnector:d=Aa,getOperationFromUrlFn:f=ae,getOperationForRefreshAuthenticationFn:p=Ja,parseOperationInputsFn:m=Ha,createBlockContextFn:h=lo,createBlockFn:te=ee,runStepOperationFn:ne=No})=>{let re=e.authConfigKey,ie=e.environment??`production`,oe=e.secureId,se=e.projectSecureId,ce=e.credentials,g=h({category:n,connectorKey:e.providerKey,connectorVersion:e.providerVersion,authConfigKey:re,environment:ie,accountSecureId:oe,projectSecureId:se}),le;try{le=(0,c.isString)(t)?d(t):t}catch{throw new eo(g,`Error while parsing connector`)}let _=Uo(r)?p(le,re,ie):f(le,r,i);if((0,c.isMissing)(_))throw new to(g,`No matching operation found`);g.operationType=_.operation.operationType,g.schema=_.operation.schema?.key;let v=Ho(a,g),y;try{y=m(_.operation,{query:a,body:o,headers:s,path:_.params})}catch{throw new no(g,`Error while parsing operation inputs`)}let ue=await te({connector:le,inputs:y,context:g,operation:_.operation,credentials:ce,nextCursor:v,logger:l,getHttpClient:u});return await ne({block:ue})},Ho=(e,t)=>{let n=e?.next,r=(0,c.notMissing)(n)&&t.operationType===`list`?(0,f.expandCursor)(n):void 0;if(r===null)throw new ro(t,`Invalid cursor.`);return r},Uo=e=>e===so;exports.ConnectSDKError=Q,exports.REFRESH_TOKEN_OPERATION_PATH=so,exports.buildActionsMetaFromConfig=io,exports.createBlock=ee,exports.executeStepFunction=co,exports.getActionsMetaFromConfigs=ao,exports.getOperationFromUrl=ae,exports.getRefreshTokenExpiresIn=Za,exports.getTokenExpiresIn=Xa,exports.loadConnector=te,exports.parseOperationInputs=Ha,exports.parseYamlConnector=Aa,exports.runConnectorOperation=Vo,exports.runStepOperation=No,exports.supportsRefreshAuthentication=Ya,exports.validateYamlConnector=Qa;
30
+ `),r=0,i=-1,a=0;for(let t=0;t<n.length;t++){let o=n[t],s=o.match(/^(\s*)/)?.[1]?.length||0,l=o.replace(`- `,``).trim();if(l.startsWith(`#`)||l===``||s<=i)continue;let u=(0,c.notMissing)(e[r])?`${String(e[r])}`:``;if((0,c.isMissing)(u))return a+1;if(isNaN(Number(u))){if(l.startsWith(`${u}:`)){if(r===e.length-1)return t+1;i=s,a=t,r++}}else{let e=parseInt(u,10),i=-1;for(let o=t;o<n.length;o++){let s=n[o],c=s.trim();if(c.startsWith(`-`)&&i++,i===e){r++,a=t,t--;break}else t++}}}return a+1};var Q=class e extends Error{errorType;context;constructor(t,n,r){super(r),this.name=`ConnectSDKError`,this.errorType=t,this.context=n,Error.captureStackTrace&&Error.captureStackTrace(this,e)}toString(){return`${this.name} [${this.errorType}]: ${this.message}`}},eo=class extends Q{constructor(e,t){super(`CONNECTOR_PARSE_ERROR`,e,t),this.name=`ConnectorParseError`}},to=class extends Q{constructor(e,t){super(`MISSING_OPERATION_ERROR`,e,t),this.name=`MissingOperationError`}},no=class extends Q{constructor(e,t){super(`INVALID_OPERATION_INPUTS_ERROR`,e,t),this.name=`InvalidOperationInputsError`}},ro=class extends Q{constructor(e,t){super(`INVALID_CURSOR_ERROR`,e,t),this.name=`InvalidCursorError`}};const io=e=>{let t=Object.keys(e.authentication??{}).map(t=>({type:`custom`,label:e.authentication?.[t].production?.label||`Custom`,key:t})),n=Object.values(e?.operations??{}).map(e=>({id:e.id,description:e.description.replace(/\b\w/g,e=>e.toUpperCase()),name:e.description.replace(/\b\w/g,e=>e.toUpperCase()),schema_type:`native`,authentication:t}));return{version:e.version,name:e.description,key:e.key,icon:e.assets?.icon,description:e.description,authentication:t,actions:n}},ao=e=>e.map(io),oo=`stackone://internal//`,so=`${oo}refresh_token`,co=async({block:e,stepFunctionName:t,params:n,buildStepFunction:r=f.StepFunctionsFactory.build})=>{let i=r({functionName:t}).fn,a=await i({block:e,params:n}),o=t===f.StepFunctionName.MAP_FIELDS?{[f.StepFunctionName.MAP_FIELDS.toString()]:{output:{data:a.block.result},errors:a.errors,successful:a.successful}}:{};return{...a.block,steps:{...a?.block?.steps??{},...o}}},lo=({category:e,connectorKey:t,connectorVersion:n,authConfigKey:r,environment:i=`production`,operation:a,accountSecureId:o,projectSecureId:s})=>({projectSecureId:s,accountSecureId:o,connectorKey:t,connectorVersion:n,category:e,service:``,resource:``,schema:a?.schema?.key,operationType:a?.operationType??`unknown`,authenticationType:r,environment:i}),uo=e=>{let t=e.operation?.compositeIdentifiers,n={...e.inputs??{}};if(!t?.enabled||(0,c.isMissing)(n))return e;let r=t.fields?.reduce((e,t)=>(t.components.forEach(t=>{t.alias&&(e[t.name]=t.alias)}),e),{}),i={version:t.version??f.COMPOSITE_ID_LATEST_VERSION,aliases:r};return fo(n,i,e.logger),{...e,inputs:n}},fo=(e,t,n)=>{for(let r in e){let i=e[r];if(typeof i==`string`||Array.isArray(i)&&i.every(e=>typeof e==`string`))vo(i,r,e,t,n);else if(Array.isArray(i))for(let e of i)fo(e,t,n);else typeof i==`object`&&i&&fo(i,t,n)}},po=(e,t,n,r)=>{let i=[],a=[];for(let o of e)try{let e=(0,f.decodeCompositeId)(o,n);i.push(e)}catch(e){r?.debug({message:`Received ${t} with invalid composite ID, assuming it is not a composite ID`,category:`processCompositeId`,context:{key:t,inputElement:o,compositeIdentifierConfig:n,error:e}}),a.push(o)}return{compositeIdComponents:i,nonCompositeIds:a}},mo=(e,t,n,r)=>{let i=n.filter(e=>Object.keys(e).length>1);i.length>0&&(e.decoded_ids={...e.decoded_ids??{},[t]:r?i:i[0]})},ho=e=>{let t=Object.values(e);return t.length===1&&(typeof t[0]==`string`||typeof t[0]==`number`)},go=(e,t,n,r,i)=>{n.every(ho)&&(i?e[t]=[...n.map(e=>Object.values(e)[0]),...r]:n.length>0&&(e[t]=Object.values(n[0])[0]))},_o=(e,t,n)=>{e instanceof f.CoreError&&e.type===`COMPOSITE_ID_MISSING_HEADER_ERROR`?n?.debug({message:`Received ${t} with no composite ID header, assuming it is not a composite ID`}):n?.warning({message:`Error processing composite ID for ${t}, ignoring it`,error:e})},vo=(e,t,n,r,i)=>{try{let a=Array.isArray(e),o=a?e:[e];if(o.length===0)return;let{compositeIdComponents:s,nonCompositeIds:c}=po(o,t,r,i);mo(n,t,s,a),go(n,t,s,c,a)}catch(e){_o(e,t,i)}},yo=`remote_`,bo=e=>{let t=e.operation?.compositeIdentifiers;if(!t?.enabled)return e;let n=`data`,r=e.outputs?.[n];if((0,c.isMissing)(r))return e;let i=Array.isArray(r)?r.map(e=>xo(e,t)):xo(r,t);return{...e,outputs:{...e.outputs??{},[n]:i}}},xo=(e,t)=>{let n=So(e,t),r=Ao(n);return{...e,...(0,c.isObject)(r)?r:{}}},So=(e,t)=>{let n=t.version??f.COMPOSITE_ID_LATEST_VERSION,r={};return t.fields?.forEach(t=>{let i={},a=[];t.components.forEach(t=>{t.alias&&(i[t.name]=t.alias),a.push({key:t.name,value:e[t.name]})});let o=a.length===1?a[0]:{identifiers:a},s={version:n,aliases:Object.keys(i).length>0?i:void 0},c=(0,f.encodeCompositeId)(o,s);r[t.targetFieldKey]=c,t.remote&&(r[`${yo}${t.remote}`]=e[t.remote])}),{...e,...r}},Co=e=>e===`id`||/.+_id(s)?$/.test(e),wo=e=>Array.isArray(e)&&e.every(e=>(0,c.isString)(e)&&e.length>0),To=(e,t)=>(0,f.isCompositeId)(e)||t.startsWith(yo),Eo=(e,t)=>{try{return(0,f.encodeCompositeId)({key:e,value:t},{version:f.COMPOSITE_ID_LATEST_VERSION})}catch{return t}},Do=(e,t,n)=>{let r=t.map(t=>(0,c.isString)(t)&&t.length>0&&!(0,f.isCompositeId)(t)?Eo(e,t):t);n[e]=r,n[`${yo}${e}`]=t},Oo=(e,t,n)=>{if(To(t,e))return;let r=(0,f.encodeCompositeId)({key:e,value:t},{version:f.COMPOSITE_ID_LATEST_VERSION});n[e]=r,n[`remote_${e}`]=t},ko=(e,t,n)=>{wo(t)?Do(e,t,n):(0,c.isString)(t)&&t.length>0&&Oo(e,t,n)},Ao=e=>{if(Array.isArray(e))return e.map(e=>Ao(e));if(!(0,c.isObject)(e))return e;let t={...e};for(let[n,r]of Object.entries(e))((0,c.isObject)(r)||Array.isArray(r)&&r.length>0&&(0,c.isObject)(r[0]))&&(t[n]=Ao(r)),Co(n)&&ko(n,r,t);return t},jo=(e,t)=>{let n=Number(e.inputs?.page_size),r=(0,c.notMissing)(e.inputs?.page_size)&&(0,c.isNumber)(n)&&!Number.isNaN(n)?n:e.operation?.cursor?.pageSize??t;return r},Mo=(e,t,n,r)=>{let i=(0,c.isMissing)(e)?void 0:e.data,a=Object.keys(n).length+1,o=(0,f.isCursorEmpty)({cursor:r,ignoreStepIndex:a});if(!(0,c.isObject)(e)||(0,c.isMissing)(i)||(i?.length??0)<=t)return{result:e,next:(0,c.notMissing)(r)&&!o?(0,f.minifyCursor)(r):null};let s=r?.remote?.[a]?.pageNumber??1,l=(s-1)*t,u=l+t,d=i.slice(l,u),p=i.length>u||!o,m=(0,f.updateCursor)({cursor:r,stepIndex:a,pageNumber:s+1});return{result:{...e,data:d},next:p?(0,f.minifyCursor)(m):null}},No=async({block:e,buildStepFunction:t=f.StepFunctionsFactory.build,virtualPaginateResultFn:n=Mo,encodeResultCompositeIds:r=bo,decodeInputCompositeIds:i=uo})=>{let a=i(e),o=await zo({block:a,buildStepFunction:t,virtualPaginateResultFn:n});return r(o)},Po=(e,t)=>e.condition?!(0,h.safeEvaluate)(e.condition,t):!1,Fo=(e,t,n)=>{let r=e.stepFunction;return t.operation?.cursor.enabled?{...r.params??{},cursor:{token:t.nextCursor?.remote?.[n]?.providerPageCursor,position:t.nextCursor?.remote?.[n]?.position}}:r.params??{}},Io=(e,t,n,r,i)=>{let a=$({block:e,stepId:t,successful:!1,functionOutput:n}),o=r.ignoreError??!1;return o||(i.hasFatalError=!0,i.errorStatusCode??=n.output?.statusCode??500),a},Lo=async(e,t,n,r,i,a)=>{let o=n[e],s=o.stepFunction,c=a.buildStepFunction({functionName:s.functionName,version:s.version,validateSchemas:!0}).fn;if(Po(o,r))return $({block:r,stepId:e,successful:!0,skipped:!0,message:`Step skipped due to condition not met.`});if(i.hasFatalError)return $({block:r,stepId:e,successful:!1,skipped:!0,message:`Step skipped due to previous error.`});let l=Fo(o,r,t),u=await c({block:r,params:l});if(u.successful===!1)return Io(r,e,u,o,i);let d=r.operation?.cursor.enabled?(0,f.updateCursor)({cursor:r.nextCursor,stepIndex:t,providerPageCursor:u.output?.next,position:u.output?.position}):void 0;return $({block:{...u.block,nextCursor:d},stepId:e,functionOutput:u})},Ro=(e,t,n,r,i)=>{let a=!n.hasFatalError,o=a?e.operation?.responses.success.statusCode??200:n.errorStatusCode??500,s=(0,c.notMissing)(i)&&(0,c.isObject)(i.result)?{next:i.next,...i.result}:r;return{...t,outputs:s,response:{successful:a,statusCode:o,message:a?void 0:e.operation?.responses?.errors?.[o]?.description??p.HttpErrorMessages?.[o]??`Error while processing the request`}}},zo=async({block:e,buildStepFunction:t=f.StepFunctionsFactory.build,virtualPaginateResultFn:n=Mo})=>{let r=e.operation?.steps||{},i={...e},a=Object.keys(r),o=jo(e,ya),s={hasFatalError:!1,errorStatusCode:null},c={block:e,buildStepFunction:t,virtualPaginateResultFn:n};for(let[e,t]of a.entries())i=await Lo(t,e,r,i,s,c);let l=e.operation?.result?Bo(e.operation.result,i):void 0,u=e.operation?.cursor.enabled?n(l,o,r,i.nextCursor):void 0;return Ro(e,i,s,l,u)},Bo=(e,t)=>(0,c.isObject)(e)?(0,h.safeEvaluateRecord)(e,t):(0,h.safeEvaluate)(e,t),$=({block:e,stepId:t,successful:n,functionOutput:r,skipped:i,message:a})=>({...e,steps:{...e.steps,[t]:{successful:n??r?.successful??!1,errors:r?.errors,output:r?.output,skipped:i,message:a}}}),Vo=async({account:e,connector:t,category:n,path:r,method:i=`get`,queryParams:a={},body:o,headers:s,logger:l,getHttpClient:u,parseConnector:d=Aa,getOperationFromUrlFn:f=ae,getOperationForRefreshAuthenticationFn:p=Ja,parseOperationInputsFn:m=Ha,createBlockContextFn:h=lo,createBlockFn:te=ee,runStepOperationFn:ne=No})=>{let re=e.authConfigKey,ie=e.environment??`production`,oe=e.secureId,se=e.projectSecureId,ce=e.credentials,g=h({category:n,connectorKey:e.providerKey,connectorVersion:e.providerVersion,authConfigKey:re,environment:ie,accountSecureId:oe,projectSecureId:se}),le;try{le=(0,c.isString)(t)?d(t):t}catch{throw new eo(g,`Error while parsing connector`)}let _=Uo(r)?p(le,re,ie):f(le,r,i);if((0,c.isMissing)(_))throw new to(g,`No matching operation found`);g.operationType=_.operation.operationType,g.schema=_.operation.schema?.key;let v=Ho(a,g),y;try{y=m(_.operation,{query:a,body:o,headers:s,path:_.params})}catch{throw new no(g,`Error while parsing operation inputs`)}let ue=await te({connector:le,inputs:y,context:g,operation:_.operation,credentials:ce,nextCursor:v,logger:l,getHttpClient:u});return await ne({block:ue})},Ho=(e,t)=>{let n=e?.next,r=(0,c.notMissing)(n)&&t.operationType===`list`?(0,f.expandCursor)(n):void 0;if(r===null)throw new ro(t,`Invalid cursor.`);return r},Uo=e=>e===so;exports.ConnectSDKError=Q,exports.REFRESH_TOKEN_OPERATION_PATH=so,exports.buildActionsMetaFromConfig=io,exports.createBlock=ee,exports.executeStepFunction=co,exports.getActionsMetaFromConfigs=ao,exports.getOperationFromUrl=ae,exports.getRefreshTokenExpiresIn=Za,exports.getTokenExpiresIn=Xa,exports.loadConnector=te,exports.parseOperationInputs=Ha,exports.parseYamlConnector=Aa,exports.runConnectorOperation=Vo,exports.runStepOperation=No,exports.supportsRefreshAuthentication=Ya,exports.validateYamlConnector=Qa;
package/dist/index.mjs CHANGED
@@ -27,4 +27,4 @@ import{isMissing as e,isNumber as t,isObject as n,isString as r,notMissing as i}
27
27
  ...iss,
28
28
  path: iss.path ? [${T(e)}, ...iss.path] : [${T(e)}]
29
29
  })));`),t.write(`newResult[${T(e)}] = ${n}.value`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},i,a=E,o=!me.jitless,s=Ce,c=o&&s.value,l=t.catchall,u;e._zod.parse=(s,d)=>{u??=n.value;let f=s.value;if(!a(f))return s.issues.push({expected:`object`,code:`invalid_type`,input:f,inst:e}),s;let p=[];if(o&&c&&d?.async===!1&&d.jitless!==!0)i||=r(t.shape),s=i(s,d);else{s.value={};let e=u.shape;for(let t of u.keys){let n=e[t],r=n._zod.run({value:f[t],issues:[]},d),i=n._zod.optin===`optional`&&n._zod.optout===`optional`;r instanceof Promise?p.push(r.then(e=>i?Sn(e,s,t,f):z(e,s,t))):i?Sn(r,s,t,f):z(r,s,t)}}if(!l)return p.length?Promise.all(p).then(()=>s):s;let m=[],h=u.keySet,g=l._zod,ee=g.def.type;for(let e of Object.keys(f)){if(h.has(e))continue;if(ee===`never`){m.push(e);continue}let t=g.run({value:f[e],issues:[]},d);t instanceof Promise?p.push(t.then(t=>z(t,s,e))):z(t,s,e)}return m.length&&s.issues.push({code:`unrecognized_keys`,keys:m,input:f,inst:e}),p.length?Promise.all(p).then(()=>s):s}});function wn(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;return t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>N(e,r,C())))}),t}const Tn=x(`$ZodUnion`,(e,t)=>{L.init(e,t),w(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),w(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),w(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),w(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>ye(e.source)).join(`|`)})$`)}}),e._zod.parse=(n,r)=>{let i=!1,a=[];for(let e of t.options){let t=e._zod.run({value:n.value,issues:[]},r);if(t instanceof Promise)a.push(t),i=!0;else{if(t.issues.length===0)return t;a.push(t)}}return i?Promise.all(a).then(t=>wn(t,n,e,r)):wn(a,n,e,r)}}),En=x(`$ZodDiscriminatedUnion`,(e,t)=>{Tn.init(e,t);let n=e._zod.parse;w(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=_e(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!E(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,input:o,path:[t.discriminator],inst:e}),i)}}),Dn=x(`$ZodIntersection`,(e,t)=>{L.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n),o=i instanceof Promise||a instanceof Promise;return o?Promise.all([i,a]).then(([t,n])=>kn(e,t,n)):kn(e,i,a)}});function On(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(we(e)&&we(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=On(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=On(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function kn(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),A(e))return e;let r=On(t.value,n.value);if(!r.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(r.mergeErrorPath)}`);return e.value=r.data,e}const An=x(`$ZodRecord`,(e,t)=>{L.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!we(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[];if(t.keyType._zod.values){let o=t.keyType._zod.values;n.value={};for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...j(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...j(e,o.issues)),n.value[e]=o.value)}let s;for(let e in i)o.has(e)||(s??=[],s.push(e));s&&s.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:s})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(s.issues.length){n.issues.push({origin:`record`,code:`invalid_key`,issues:s.issues.map(e=>N(e,r,C())),input:o,path:[o],inst:e}),n.value[s.value]=s.value;continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...j(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...j(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),jn=x(`$ZodEnum`,(e,t)=>{L.init(e,t);let n=he(t.entries);e._zod.values=new Set(n),e._zod.pattern=RegExp(`^(${n.filter(e=>Te.has(typeof e)).map(e=>typeof e==`string`?D(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,r)=>{let i=t.value;return e._zod.values.has(i)||t.issues.push({code:`invalid_value`,values:n,input:i,inst:e}),t}}),Mn=x(`$ZodLiteral`,(e,t)=>{L.init(e,t),e._zod.values=new Set(t.values),e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?D(e):e?e.toString():String(e)).join(`|`)})$`),e._zod.parse=(n,r)=>{let i=n.value;return e._zod.values.has(i)||n.issues.push({code:`invalid_value`,values:t.values,input:i,inst:e}),n}}),Nn=x(`$ZodTransform`,(e,t)=>{L.init(e,t),e._zod.parse=(e,n)=>{let r=t.transform(e.value,e);if(n.async){let t=r instanceof Promise?r:Promise.resolve(r);return t.then(t=>(e.value=t,e))}if(r instanceof Promise)throw new S;return e.value=r,e}}),Pn=x(`$ZodOptional`,(e,t)=>{L.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,w(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),w(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ye(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>t.innerType._zod.optin===`optional`?t.innerType._zod.run(e,n):e.value===void 0?e:t.innerType._zod.run(e,n)}),Fn=x(`$ZodNullable`,(e,t)=>{L.init(e,t),w(e._zod,`optin`,()=>t.innerType._zod.optin),w(e._zod,`optout`,()=>t.innerType._zod.optout),w(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${ye(e.source)}|null)$`):void 0}),w(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),In=x(`$ZodDefault`,(e,t)=>{L.init(e,t),e._zod.optin=`optional`,w(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Ln(e,t)):Ln(r,t)}});function Ln(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Rn=x(`$ZodPrefault`,(e,t)=>{L.init(e,t),e._zod.optin=`optional`,w(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),zn=x(`$ZodNonOptional`,(e,t)=>{L.init(e,t),w(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Bn(t,e)):Bn(i,e)}});function Bn(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}const Vn=x(`$ZodCatch`,(e,t)=>{L.init(e,t),e._zod.optin=`optional`,w(e._zod,`optout`,()=>t.innerType._zod.optout),w(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>N(e,n,C()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>N(e,n,C()))},input:e.value}),e.issues=[]),e)}}),Hn=x(`$ZodPipe`,(e,t)=>{L.init(e,t),w(e._zod,`values`,()=>t.in._zod.values),w(e._zod,`optin`,()=>t.in._zod.optin),w(e._zod,`optout`,()=>t.out._zod.optout),e._zod.parse=(e,n)=>{let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Un(e,t,n)):Un(r,t,n)}});function Un(e,t,n){return A(e)?e:t.out._zod.run({value:e.value,issues:e.issues},n)}const Wn=x(`$ZodReadonly`,(e,t)=>{L.init(e,t),w(e._zod,`propValues`,()=>t.innerType._zod.propValues),w(e._zod,`values`,()=>t.innerType._zod.values),w(e._zod,`optin`,()=>t.innerType._zod.optin),w(e._zod,`optout`,()=>t.innerType._zod.optout),e._zod.parse=(e,n)=>{let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(Gn):Gn(r)}});function Gn(e){return e.value=Object.freeze(e.value),e}const Kn=x(`$ZodLazy`,(e,t)=>{L.init(e,t),w(e._zod,`innerType`,()=>t.getter()),w(e._zod,`pattern`,()=>e._zod.innerType._zod.pattern),w(e._zod,`propValues`,()=>e._zod.innerType._zod.propValues),w(e._zod,`optin`,()=>e._zod.innerType._zod.optin),w(e._zod,`optout`,()=>e._zod.innerType._zod.optout),e._zod.parse=(t,n)=>{let r=e._zod.innerType;return r._zod.run(t,n)}}),qn=x(`$ZodCustom`,(e,t)=>{F.init(e,t),L.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Jn(t,n,r,e));Jn(i,n,r,e)}});function Jn(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(P(e))}}Symbol(`ZodOutput`),Symbol(`ZodInput`);var Yn=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==`object`&&`id`in n){if(this._idmap.has(n.id))throw Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Xn(){return new Yn}const B=Xn();function Zn(e,t){return new e({type:`string`,...k(t)})}function Qn(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...k(t)})}function $n(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...k(t)})}function er(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...k(t)})}function tr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...k(t)})}function nr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...k(t)})}function rr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...k(t)})}function ir(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...k(t)})}function ar(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...k(t)})}function or(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...k(t)})}function sr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...k(t)})}function cr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...k(t)})}function lr(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...k(t)})}function ur(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...k(t)})}function dr(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...k(t)})}function fr(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...k(t)})}function pr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...k(t)})}function mr(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...k(t)})}function hr(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...k(t)})}function gr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...k(t)})}function _r(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...k(t)})}function vr(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...k(t)})}function yr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...k(t)})}function br(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...k(t)})}function xr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...k(t)})}function Sr(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...k(t)})}function Cr(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...k(t)})}function wr(e,t){return new e({type:`number`,checks:[],...k(t)})}function Tr(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...k(t)})}function Er(e,t){return new e({type:`boolean`,...k(t)})}function Dr(e){return new e({type:`any`})}function Or(e){return new e({type:`unknown`})}function kr(e,t){return new e({type:`never`,...k(t)})}function Ar(e,t){return new wt({check:`less_than`,...k(t),value:e,inclusive:!1})}function jr(e,t){return new wt({check:`less_than`,...k(t),value:e,inclusive:!0})}function Mr(e,t){return new Tt({check:`greater_than`,...k(t),value:e,inclusive:!1})}function Nr(e,t){return new Tt({check:`greater_than`,...k(t),value:e,inclusive:!0})}function Pr(e,t){return new Et({check:`multiple_of`,...k(t),value:e})}function Fr(e,t){let n=new Ot({check:`max_length`,...k(t),maximum:e});return n}function V(e,t){return new kt({check:`min_length`,...k(t),minimum:e})}function Ir(e,t){return new At({check:`length_equals`,...k(t),length:e})}function Lr(e,t){return new jt({check:`string_format`,format:`regex`,...k(t),pattern:e})}function Rr(e){return new Mt({check:`string_format`,format:`lowercase`,...k(e)})}function zr(e){return new Nt({check:`string_format`,format:`uppercase`,...k(e)})}function Br(e,t){return new Pt({check:`string_format`,format:`includes`,...k(t),includes:e})}function Vr(e,t){return new Ft({check:`string_format`,format:`starts_with`,...k(t),prefix:e})}function Hr(e,t){return new It({check:`string_format`,format:`ends_with`,...k(t),suffix:e})}function H(e){return new Lt({check:`overwrite`,tx:e})}function Ur(e){return H(t=>t.normalize(e))}function Wr(){return H(e=>e.trim())}function Gr(){return H(e=>e.toLowerCase())}function Kr(){return H(e=>e.toUpperCase())}function qr(e,t,n){return new e({type:`array`,element:t,...k(n)})}function Jr(e,t,n){let r=new e({type:`custom`,check:`custom`,fn:t,...k(n)});return r}const Yr=x(`ZodISODateTime`,(e,t)=>{Qt.init(e,t),K.init(e,t)});function Xr(e){return br(Yr,e)}const Zr=x(`ZodISODate`,(e,t)=>{$t.init(e,t),K.init(e,t)});function Qr(e){return xr(Zr,e)}const $r=x(`ZodISOTime`,(e,t)=>{en.init(e,t),K.init(e,t)});function ei(e){return Sr($r,e)}const ti=x(`ZodISODuration`,(e,t)=>{tn.init(e,t),K.init(e,t)});function ni(e){return Cr(ti,e)}const ri=(e,t)=>{Ie.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>ze(e,t)},flatten:{value:t=>Re(e,t)},addIssue:{value:t=>e.issues.push(t)},addIssues:{value:t=>e.issues.push(...t)},isEmpty:{get(){return e.issues.length===0}}})};x(`ZodError`,ri);const U=x(`ZodError`,ri,{Parent:Error}),ii=Be(U),ai=Ve(U),oi=He(U),si=We(U),W=x(`ZodType`,(e,t)=>(L.init(e,t),e.def=t,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone({...t,checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),e.clone=(t,n)=>O(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>ii(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>oi(e,t,n),e.parseAsync=async(t,n)=>ai(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>si(e,t,n),e.spa=e.safeParseAsync,e.refine=(t,n)=>e.check(ya(t,n)),e.superRefine=t=>e.check(ba(t)),e.overwrite=t=>e.check(H(t)),e.optional=()=>ea(e),e.nullable=()=>na(e),e.nullish=()=>ea(na(e)),e.nonoptional=t=>ca(e,t),e.array=()=>zi(e),e.or=t=>Hi([e,t]),e.and=t=>Ki(e,t),e.transform=t=>fa(e,Qi(t)),e.default=t=>ia(e,t),e.prefault=t=>oa(e,t),e.catch=t=>ua(e,t),e.pipe=t=>fa(e,t),e.readonly=()=>ma(e),e.describe=t=>{let n=e.clone();return B.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return B.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return B.get(e);let n=e.clone();return B.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),ci=x(`_ZodString`,(e,t)=>{Bt.init(e,t),W.init(e,t);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(Lr(...t)),e.includes=(...t)=>e.check(Br(...t)),e.startsWith=(...t)=>e.check(Vr(...t)),e.endsWith=(...t)=>e.check(Hr(...t)),e.min=(...t)=>e.check(V(...t)),e.max=(...t)=>e.check(Fr(...t)),e.length=(...t)=>e.check(Ir(...t)),e.nonempty=(...t)=>e.check(V(1,...t)),e.lowercase=t=>e.check(Rr(t)),e.uppercase=t=>e.check(zr(t)),e.trim=()=>e.check(Wr()),e.normalize=(...t)=>e.check(Ur(...t)),e.toLowerCase=()=>e.check(Gr()),e.toUpperCase=()=>e.check(Kr())}),li=x(`ZodString`,(e,t)=>{Bt.init(e,t),ci.init(e,t),e.email=t=>e.check(Qn(ui,t)),e.url=t=>e.check(ir(pi,t)),e.jwt=t=>e.check(yr(Oi,t)),e.emoji=t=>e.check(ar(mi,t)),e.guid=t=>e.check($n(di,t)),e.uuid=t=>e.check(er(fi,t)),e.uuidv4=t=>e.check(tr(fi,t)),e.uuidv6=t=>e.check(nr(fi,t)),e.uuidv7=t=>e.check(rr(fi,t)),e.nanoid=t=>e.check(or(hi,t)),e.guid=t=>e.check($n(di,t)),e.cuid=t=>e.check(sr(gi,t)),e.cuid2=t=>e.check(cr(_i,t)),e.ulid=t=>e.check(lr(vi,t)),e.base64=t=>e.check(gr(Ti,t)),e.base64url=t=>e.check(_r(Ei,t)),e.xid=t=>e.check(ur(yi,t)),e.ksuid=t=>e.check(dr(bi,t)),e.ipv4=t=>e.check(fr(xi,t)),e.ipv6=t=>e.check(pr(Si,t)),e.cidrv4=t=>e.check(mr(Ci,t)),e.cidrv6=t=>e.check(hr(wi,t)),e.e164=t=>e.check(vr(Di,t)),e.datetime=t=>e.check(Xr(t)),e.date=t=>e.check(Qr(t)),e.time=t=>e.check(ei(t)),e.duration=t=>e.check(ni(t))});function G(e){return Zn(li,e)}const K=x(`ZodStringFormat`,(e,t)=>{R.init(e,t),ci.init(e,t)}),ui=x(`ZodEmail`,(e,t)=>{Ut.init(e,t),K.init(e,t)}),di=x(`ZodGUID`,(e,t)=>{Vt.init(e,t),K.init(e,t)}),fi=x(`ZodUUID`,(e,t)=>{Ht.init(e,t),K.init(e,t)}),pi=x(`ZodURL`,(e,t)=>{Wt.init(e,t),K.init(e,t)}),mi=x(`ZodEmoji`,(e,t)=>{Gt.init(e,t),K.init(e,t)}),hi=x(`ZodNanoID`,(e,t)=>{Kt.init(e,t),K.init(e,t)}),gi=x(`ZodCUID`,(e,t)=>{qt.init(e,t),K.init(e,t)}),_i=x(`ZodCUID2`,(e,t)=>{Jt.init(e,t),K.init(e,t)}),vi=x(`ZodULID`,(e,t)=>{Yt.init(e,t),K.init(e,t)}),yi=x(`ZodXID`,(e,t)=>{Xt.init(e,t),K.init(e,t)}),bi=x(`ZodKSUID`,(e,t)=>{Zt.init(e,t),K.init(e,t)}),xi=x(`ZodIPv4`,(e,t)=>{nn.init(e,t),K.init(e,t)}),Si=x(`ZodIPv6`,(e,t)=>{rn.init(e,t),K.init(e,t)}),Ci=x(`ZodCIDRv4`,(e,t)=>{an.init(e,t),K.init(e,t)}),wi=x(`ZodCIDRv6`,(e,t)=>{on.init(e,t),K.init(e,t)}),Ti=x(`ZodBase64`,(e,t)=>{cn.init(e,t),K.init(e,t)}),Ei=x(`ZodBase64URL`,(e,t)=>{un.init(e,t),K.init(e,t)}),Di=x(`ZodE164`,(e,t)=>{dn.init(e,t),K.init(e,t)}),Oi=x(`ZodJWT`,(e,t)=>{pn.init(e,t),K.init(e,t)}),ki=x(`ZodNumber`,(e,t)=>{mn.init(e,t),W.init(e,t),e.gt=(t,n)=>e.check(Mr(t,n)),e.gte=(t,n)=>e.check(Nr(t,n)),e.min=(t,n)=>e.check(Nr(t,n)),e.lt=(t,n)=>e.check(Ar(t,n)),e.lte=(t,n)=>e.check(jr(t,n)),e.max=(t,n)=>e.check(jr(t,n)),e.int=t=>e.check(ji(t)),e.safe=t=>e.check(ji(t)),e.positive=t=>e.check(Mr(0,t)),e.nonnegative=t=>e.check(Nr(0,t)),e.negative=t=>e.check(Ar(0,t)),e.nonpositive=t=>e.check(jr(0,t)),e.multipleOf=(t,n)=>e.check(Pr(t,n)),e.step=(t,n)=>e.check(Pr(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function q(e){return wr(ki,e)}const Ai=x(`ZodNumberFormat`,(e,t)=>{hn.init(e,t),ki.init(e,t)});function ji(e){return Tr(Ai,e)}const Mi=x(`ZodBoolean`,(e,t)=>{gn.init(e,t),W.init(e,t)});function J(e){return Er(Mi,e)}const Ni=x(`ZodAny`,(e,t)=>{_n.init(e,t),W.init(e,t)});function Pi(){return Dr(Ni)}const Fi=x(`ZodUnknown`,(e,t)=>{vn.init(e,t),W.init(e,t)});function Y(){return Or(Fi)}const Ii=x(`ZodNever`,(e,t)=>{yn.init(e,t),W.init(e,t)});function Li(e){return kr(Ii,e)}const Ri=x(`ZodArray`,(e,t)=>{xn.init(e,t),W.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(V(t,n)),e.nonempty=t=>e.check(V(1,t)),e.max=(t,n)=>e.check(Fr(t,n)),e.length=(t,n)=>e.check(Ir(t,n)),e.unwrap=()=>e.element});function zi(e,t){return qr(Ri,e,t)}const Bi=x(`ZodObject`,(e,t)=>{Cn.init(e,t),W.init(e,t),w(e,`shape`,()=>t.shape),e.keyof=()=>Z(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:Y()}),e.loose=()=>e.clone({...e._zod.def,catchall:Y()}),e.strict=()=>e.clone({...e._zod.def,catchall:Li()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>Ae(e,t),e.merge=t=>je(e,t),e.pick=t=>Oe(e,t),e.omit=t=>ke(e,t),e.partial=(...t)=>Me($i,e,t[0]),e.required=(...t)=>Ne(sa,e,t[0])});function X(e,t){let n={type:`object`,get shape(){return xe(this,`shape`,{...e}),this.shape},...k(t)};return new Bi(n)}const Vi=x(`ZodUnion`,(e,t)=>{Tn.init(e,t),W.init(e,t),e.options=t.options});function Hi(e,t){return new Vi({type:`union`,options:e,...k(t)})}const Ui=x(`ZodDiscriminatedUnion`,(e,t)=>{Vi.init(e,t),En.init(e,t)});function Wi(e,t,n){return new Ui({type:`union`,options:t,discriminator:e,...k(n)})}const Gi=x(`ZodIntersection`,(e,t)=>{Dn.init(e,t),W.init(e,t)});function Ki(e,t){return new Gi({type:`intersection`,left:e,right:t})}const qi=x(`ZodRecord`,(e,t)=>{An.init(e,t),W.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function Ji(e,t,n){return new qi({type:`record`,keyType:e,valueType:t,...k(n)})}const Yi=x(`ZodEnum`,(e,t)=>{jn.init(e,t),W.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Yi({...t,checks:[],...k(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Yi({...t,checks:[],...k(r),entries:i})}});function Z(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new Yi({type:`enum`,entries:n,...k(t)})}const Xi=x(`ZodLiteral`,(e,t)=>{Mn.init(e,t),W.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Q(e,t){return new Xi({type:`literal`,values:Array.isArray(e)?e:[e],...k(t)})}const Zi=x(`ZodTransform`,(e,t)=>{Nn.init(e,t),W.init(e,t),e._zod.parse=(n,r)=>{n.addIssue=r=>{if(typeof r==`string`)n.issues.push(P(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,t.continue??=!0,n.issues.push(P(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Qi(e){return new Zi({type:`transform`,transform:e})}const $i=x(`ZodOptional`,(e,t)=>{Pn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ea(e){return new $i({type:`optional`,innerType:e})}const ta=x(`ZodNullable`,(e,t)=>{Fn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType});function na(e){return new ta({type:`nullable`,innerType:e})}const ra=x(`ZodDefault`,(e,t)=>{In.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function ia(e,t){return new ra({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():t}})}const aa=x(`ZodPrefault`,(e,t)=>{Rn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType});function oa(e,t){return new aa({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():t}})}const sa=x(`ZodNonOptional`,(e,t)=>{zn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ca(e,t){return new sa({type:`nonoptional`,innerType:e,...k(t)})}const la=x(`ZodCatch`,(e,t)=>{Vn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ua(e,t){return new la({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const da=x(`ZodPipe`,(e,t)=>{Hn.init(e,t),W.init(e,t),e.in=t.in,e.out=t.out});function fa(e,t){return new da({type:`pipe`,in:e,out:t})}const pa=x(`ZodReadonly`,(e,t)=>{Wn.init(e,t),W.init(e,t)});function ma(e){return new pa({type:`readonly`,innerType:e})}const ha=x(`ZodLazy`,(e,t)=>{Kn.init(e,t),W.init(e,t),e.unwrap=()=>e._zod.def.getter()});function ga(e){return new ha({type:`lazy`,getter:e})}const _a=x(`ZodCustom`,(e,t)=>{qn.init(e,t),W.init(e,t)});function va(e){let t=new F({check:`custom`});return t._zod.check=e,t}function ya(e,t={}){return Jr(_a,e,t)}function ba(e){let t=va(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(P(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(P(r))}},e(n.value,n)));return t}const xa=25,Sa=e=>{switch(e){case`list`:return{statusCode:200,description:`The list of records was retrieved.`};case`get`:return{statusCode:200,description:`The record with the given identifier was retrieved.`};case`create`:return{statusCode:201,description:`The record was created successfully.`};case`update`:return{statusCode:200,description:`The record was updated successfully.`};case`delete`:return{statusCode:204,description:`The record was deleted successfully.`};case`custom`:return{statusCode:200,description:`The operation was executed successfully.`};case`refresh_token`:return{statusCode:200,description:`The refresh token operation was executed successfully.`};case`unknown`:return{statusCode:200};default:throw Error(`Unknown operation type: ${e}`)}},Ca=()=>{let e={400:{statusCode:400,description:`Invalid request.`},401:{statusCode:401,description:`Unauthorized access.`},403:{statusCode:403,description:`Forbidden.`},404:{statusCode:404,description:`Resource not found.`},500:{statusCode:500,description:`Server error while executing the request.`}};return e},wa={key:G(),label:G(),required:J().optional().default(!1),secret:J().optional().default(!1),readOnly:J().optional().default(!1),placeholder:G().optional(),description:G().optional(),tooltip:G().optional()},Ta=Wi(`type`,[X({...wa,type:Z([`text`,`password`])}),X({...wa,type:Q(`select`),options:X({value:G(),label:G()}).array()})]),Ea=X({targetFieldKey:G(),alias:G().optional(),expression:G().optional(),values:Y().optional(),type:Z([`string`,`number`,`boolean`,`datetime_string`,`enum`,`object`]),array:J().default(!1),custom:J().default(!1),hidden:J().default(!1),enumMapper:X({matcher:Z([`country_alpha2code_by_alpha2code`,`country_alpha3code_by_alpha3code`,`country_code_by_country_code`,`country_name_by_country_name`,`country_name_by_alpha3code`,`country_name_by_alpha2code`,`country_name_by_country_code`,`country_alpha3code_by_alpha2code`,`country_alpha3code_by_country_name`,`country_alpha3code_by_country_code`,`country_alpha2code_by_alpha3code`,`country_alpha2code_by_country_name`,`country_alpha2code_by_country_code`,`country_code_by_alpha2code`,`country_code_by_alpha3code`,`country_code_by_country_name`,`country_subdivisions_by_alpha2code`,`country_subdivision_code_by_subdivision_name`,`country_alpha2code_by_citizenship`,`country_subdivision_name_by_subdivision_code`]).or(X({matchExpression:G(),value:G()}).array())}).optional(),properties:ga(()=>Ea).array().optional()}),Da=X({operationId:G(),categories:G().array(),operationType:Z([`list`,`get`,`create`,`update`,`delete`,`custom`,`refresh_token`,`unknown`]),schema:G().optional(),entrypointUrl:G().optional(),entrypointHttpMethod:G().optional(),description:G(),responses:X({statusCode:q(),description:G()}).array().optional(),inputs:X({name:G(),type:G(),required:J(),description:G(),in:G()}).array().optional(),cursor:X({enabled:J(),pageSize:q()}).optional(),compositeIdentifiers:X({enabled:J(),version:q().optional(),fields:X({targetFieldKey:G(),remote:G().optional(),components:G().array()}).array().optional()}).optional(),scheduledJobs:X({enabled:J(),type:Z([`data_sync`]),schedule:G(),description:G(),requestParams:X({fields:G().array().optional(),expand:G().array().optional(),filter:Ji(G(),G()).optional()}).optional(),syncFilter:X({name:Z([`updated_after`,`created_after`]),initialLoopbackPeriod:G(),incrementalLoopbackPeriod:G()}).optional()}).array().optional(),fieldConfigs:Ea.array().optional(),steps:X({stepId:G(),description:G(),stepFunction:X({functionName:G(),version:G().optional(),parameters:Ji(G(),Y())}),condition:G().optional(),ignoreError:J().optional()}).array(),result:G().or(Ji(G(),Y())).optional()}),Oa=X({schedule:G().optional(),operation:Da.extend({operationType:Q(`refresh_token`)})}),ka=X({mainRatelimit:q(),subPools:zi(X({subPoolKey:G(),urlPattern:G(),rateLimit:q()})).optional(),mappedRateLimitErrors:zi(X({errorStatus:q(),errorMessage:G(),errorMessagePath:G().optional(),retryAfterPath:G().optional(),retryAfterUnit:Hi([Q(`seconds`),Q(`milliseconds`),Q(`date`)]).optional(),retryAfterValue:q().optional()})).optional()}),Aa=X({mainMaxConcurrency:q(),subPools:zi(X({subPoolKey:G(),urlPattern:G(),maxConcurrency:q()})).optional()}),ja=X({StackOne:G(),info:X({title:G(),version:G(),key:G(),assets:X({icon:G()}),description:G().optional()}),baseUrl:G(),authentication:Ji(G(),X({type:G(),label:G(),authorization:u,environments:X({key:G(),name:G()}).array(),support:X({link:G(),description:G().optional()}),configFields:Ta.array().optional(),setupFields:Ta.array().optional(),refreshAuthentication:Oa.optional(),testOperations:X({operation:G().or(Da),condition:G().optional(),required:J().default(!0)}).array().optional()})).array().optional(),operations:Da.array().optional(),rateLimit:ka.optional(),concurrency:Aa.optional()});function Ma(e){try{let t=v(e),n=ja.parse(t),r={title:n.info.title,version:n.info.version,key:n.info.key,assets:n.info.assets,description:n.info.description,rateLimit:n.rateLimit,concurrency:n.concurrency},a=Ia(n),o={baseUrl:n.baseUrl,authentication:Na(a)},s=Ha(n,o);return r.operations=s,Pa(a,s,o),r.authentication=a,i(s)&&(r.categories=Fa(Object.values(s))),r}catch(e){throw Error(`Error parsing YAML file: ${e.message}`)}}const Na=e=>{let t={};for(let[n,r]of Object.entries(e))if(r&&typeof r==`object`){let{setupFields:e,configFields:i,support:a,refreshAuthentication:o,testOperations:s,...c}=r;t[n]=Na(c)}else t[n]=r;return t},Pa=(e,t,n)=>{if(!(!e||!t))for(let r of Object.values(e))for(let e of Object.values(r)){let r=e.testOperations;e.testOperations=r?.map(e=>{if(i(e.operation))if(typeof e.operation==`string`){let n=e.operation,r=Object.values(t).find(e=>e.id===n);if(r)return{...e,operation:r}}else{let t=Ua(e.operation,n);return{...e,operation:t}}return e})}},Fa=e=>{let t=e.reduce((e,t)=>{for(let n of t.categories)e.add(n);return e},new Set);return Array.from(t)},Ia=e=>{let t={};for(let n of e.authentication??[]){let[e]=Object.keys(n),r=n[e].environments.reduce((t,r)=>{let{key:a,name:o}=r,{environments:s,refreshAuthentication:c,testOperations:l,...u}=n[e],d=i(c)?{schedule:c.schedule,operation:Ua(c.operation)}:void 0;return t[a]={...u,refreshAuthentication:d,envKey:a,envName:o,testOperations:l},t},{});t[e]=r}return t},La=e=>e.entrypointUrl&&e.entrypointHttpMethod?`${e.entrypointHttpMethod.toUpperCase()} ${e.entrypointUrl}`:void 0,Ra=e=>e.operationType===`list`?`GET /${e.schema}`:`GET /${e.schema}/:id`,za=e=>{if(e.operationType!==`refresh_token`)return e.entrypointHttpMethod??`get`},Ba=t=>{if(!(t.operationType===`refresh_token`||e(t.schema)))return t.operationType===`list`?`/${t.schema}`:`/${t.schema}/:id`},Va=e=>{let t={success:Sa(e.operationType),errors:Ca()},n=e.responses?.reduce((e,t)=>{let n=ae(t.statusCode);return n?e.success={statusCode:t.statusCode,description:t.description}:e.errors[t.statusCode]={statusCode:t.statusCode,description:t.description},e},t);return n??t},Ha=(e,t)=>{let n=e.operations?.reduce((e,n)=>{let r=La(n),i=Ra(n);return e[r??i]=Ua(n,t),e},{});return n},Ua=(e,t)=>{let n=Ba(e),r=Va(e),i=qa(e),a=e.inputs||[];i.enabled&&a?.push({type:`string`,name:`page_size`,in:`query`,required:!1,description:`Number of items to return per page`});let o=za(e);return{id:e.operationId,categories:e.categories,description:e.description,operationType:e.operationType,entrypointUrl:e.entrypointUrl??n,entrypointHttpMethod:o,responses:r,cursor:i,compositeIdentifiers:Ja(e),scheduledJobs:Ya(e),inputs:a,steps:e.steps.reduce((n,r)=>(n[r.stepId]={id:r.stepId,description:r.description,condition:r.condition,ignoreError:r.ignoreError,stepFunction:{functionName:r.stepFunction.functionName,version:r.stepFunction.version,params:{...r.stepFunction.parameters,...Xa(r.stepFunction.functionName,t,r.stepFunction.parameters),...r.stepFunction.functionName===`map_fields`||r.stepFunction.functionName===`typecast`?{fields:r.stepFunction.parameters.fields??e.fieldConfigs}:{}}}},n),{}),result:e.result}},Wa=(e,t)=>{if(!e.inputs)return{};let n=Ka(e.inputs),r=n.parse(t);return{...r.headers??{},...r.query??{},...r.path??{},...r.body??{}}},Ga=e=>{let t={};return e.forEach(e=>{let n;switch(e.type.toLowerCase()){case`string`:n=G();break;case`number`:n=q();break;case`boolean`:n=J();break;default:n=Pi()}t[e.name]=e.required?n:n.optional()}),X(t)},Ka=e=>{let t=e.filter(e=>e.in===`path`),n=e.filter(e=>e.in===`query`),r=e.filter(e=>e.in===`body`),i=e.filter(e=>e.in===`headers`);return X({path:Ga(t).optional(),query:Ga(n).optional(),body:Ga(r).optional(),headers:Ga(i).optional()})},qa=e=>{let t=e.operationType===`list`,n=e.cursor??{enabled:t,pageSize:xa};return{enabled:n.enabled&&t,pageSize:n.pageSize}},Ja=t=>{if(t.operationType===`refresh_token`)return{enabled:!1};if(e(t.compositeIdentifiers)){let e=t.fieldConfigs?.find(e=>e.targetFieldKey===`id`),n=i(e)?[{targetFieldKey:e.targetFieldKey,remote:`id`,components:[{name:e.targetFieldKey,alias:e.alias}]}]:void 0;return{enabled:!0,version:d,fields:n}}let n=[];for(let e of t.compositeIdentifiers?.fields??[]){let r=e.components.map(e=>{let n=t.fieldConfigs?.find(t=>t.targetFieldKey===e);return{name:e,alias:n?.alias}});n.push({targetFieldKey:e.targetFieldKey,remote:e.remote,components:r})}return{enabled:t.compositeIdentifiers.enabled,version:t.compositeIdentifiers.version,fields:n.length>0?n:void 0}},Ya=t=>{if(!e(t.scheduledJobs))return t.scheduledJobs},Xa=(e,t,n={})=>{if(e===`request`||e===`paginated_request`){let e=[{receivedStatus:500,targetStatus:502}],r=n.customErrors&&Array.isArray(n.customErrors)?n.customErrors:[],i=[...r,...e];return{...t,customErrors:i}}else return{}},Za=(e,t,n)=>{if(e.authentication?.[t]?.[n]?.authorization.type!==`oauth2`)return;let r=e.authentication?.[t]?.[n]?.refreshAuthentication?.operation;if(i(r))return{operation:r,params:{}}},Qa=(e,t,n)=>{if(e.authentication?.[t]?.[n]?.authorization.type!==`oauth2`)return!1;let r=Za(e,t,n);return i(r)},$a=(e,t,n)=>{let r=e.authentication?.[t]?.[n]?.authorization;if(r?.type===`oauth2`)return r?.tokenExpiresIn},eo=(e,t,n)=>{let r=e.authentication?.[t]?.[n]?.authorization;if(r?.type===`oauth2`)return r?.tokenRefreshExpiresIn},to=e=>{try{let t=[],n=v(e),r=ja.safeParse(n);return r.success||r.error.issues.forEach(n=>{let r=no(n.path,e);t.push({line:r,message:n.message,field:n.path.join(`.`)})}),t.length>0?{success:!1,errors:t}:{success:!0}}catch(e){let t=e.message,n=t.match(/at line (\d+)/),r=n?parseInt(n[1],10):1;return{success:!1,errors:[{line:r,message:`The YAML connector file is not valid. Please check the syntax and structure.`,field:void 0}]}}},no=(t,n)=>{let r=n.split(`
30
- `),a=0,o=-1,s=0;for(let n=0;n<r.length;n++){let c=r[n],l=c.match(/^(\s*)/)?.[1]?.length||0,u=c.replace(`- `,``).trim();if(u.startsWith(`#`)||u===``||l<=o)continue;let d=i(t[a])?`${String(t[a])}`:``;if(e(d))return s+1;if(isNaN(Number(d))){if(u.startsWith(`${d}:`)){if(a===t.length-1)return n+1;o=l,s=n,a++}}else{let e=parseInt(d,10),t=-1;for(let i=n;i<r.length;i++){let o=r[i],c=o.trim();if(c.startsWith(`-`)&&t++,t===e){a++,s=n,n--;break}else n++}}}return s+1};var $=class e extends Error{errorType;context;constructor(t,n,r){super(r),this.name=`ConnectSDKError`,this.errorType=t,this.context=n,Error.captureStackTrace&&Error.captureStackTrace(this,e)}toString(){return`${this.name} [${this.errorType}]: ${this.message}`}},ro=class extends ${constructor(e,t){super(`CONNECTOR_PARSE_ERROR`,e,t),this.name=`ConnectorParseError`}},io=class extends ${constructor(e,t){super(`MISSING_OPERATION_ERROR`,e,t),this.name=`MissingOperationError`}},ao=class extends ${constructor(e,t){super(`INVALID_OPERATION_INPUTS_ERROR`,e,t),this.name=`InvalidOperationInputsError`}},oo=class extends ${constructor(e,t){super(`INVALID_CURSOR_ERROR`,e,t),this.name=`InvalidCursorError`}};const so=e=>{let t=Object.keys(e.authentication??{}).map(t=>({type:`custom`,label:e.authentication?.[t].production?.label||`Custom`,key:t})),n=Object.values(e?.operations??{}).map(e=>({id:e.id,description:e.description.replace(/\b\w/g,e=>e.toUpperCase()),schema_type:`native`,authentication:t}));return{version:e.version,name:e.description,key:e.key,icon:e.assets?.icon,description:e.description,authentication:t,actions:n}},co=e=>e.map(so),lo=`stackone://internal//`,uo=`${lo}refresh_token`,fo=async({block:e,stepFunctionName:t,params:n,buildStepFunction:r=m.build})=>{let i=r({functionName:t}).fn,a=await i({block:e,params:n}),o=t===p.MAP_FIELDS?{[p.MAP_FIELDS.toString()]:{output:{data:a.block.result},errors:a.errors,successful:a.successful}}:{};return{...a.block,steps:{...a?.block?.steps??{},...o}}},po=({category:e,connectorKey:t,connectorVersion:n,authConfigKey:r,environment:i=`production`,operation:a,accountSecureId:o,projectSecureId:s})=>({projectSecureId:s,accountSecureId:o,connectorKey:t,connectorVersion:n,category:e,service:``,resource:``,schema:a?.schema?.key,operationType:a?.operationType??`unknown`,authenticationType:r,environment:i}),mo=t=>{let n=t.operation?.compositeIdentifiers,r={...t.inputs??{}};if(!n?.enabled||e(r))return t;let i=n.fields?.reduce((e,t)=>(t.components.forEach(t=>{t.alias&&(e[t.name]=t.alias)}),e),{}),a={version:n.version??d,aliases:i};return ho(r,a,t.logger),{...t,inputs:r}},ho=(e,t,n)=>{for(let r in e){let i=e[r];if(typeof i==`string`||Array.isArray(i)&&i.every(e=>typeof e==`string`))xo(i,r,e,t,n);else if(Array.isArray(i))for(let e of i)ho(e,t,n);else typeof i==`object`&&i&&ho(i,t,n)}},go=(e,t,n,r)=>{let i=[],a=[];for(let o of e)try{let e=h(o,n);i.push(e)}catch(e){r?.debug({message:`Received ${t} with invalid composite ID, assuming it is not a composite ID`,category:`processCompositeId`,context:{key:t,inputElement:o,compositeIdentifierConfig:n,error:e}}),a.push(o)}return{compositeIdComponents:i,nonCompositeIds:a}},_o=(e,t,n,r)=>{let i=n.filter(e=>Object.keys(e).length>1);i.length>0&&(e.decoded_ids={...e.decoded_ids??{},[t]:r?i:i[0]})},vo=e=>{let t=Object.values(e);return t.length===1&&(typeof t[0]==`string`||typeof t[0]==`number`)},yo=(e,t,n,r,i)=>{n.every(vo)&&(i?e[t]=[...n.map(e=>Object.values(e)[0]),...r]:n.length>0&&(e[t]=Object.values(n[0])[0]))},bo=(e,t,n)=>{e instanceof f&&e.type===`COMPOSITE_ID_MISSING_HEADER_ERROR`?n?.debug({message:`Received ${t} with no composite ID header, assuming it is not a composite ID`}):n?.warning({message:`Error processing composite ID for ${t}, ignoring it`,error:e})},xo=(e,t,n,r,i)=>{try{let a=Array.isArray(e),o=a?e:[e];if(o.length===0)return;let{compositeIdComponents:s,nonCompositeIds:c}=go(o,t,r,i);_o(n,t,s,a),yo(n,t,s,c,a)}catch(e){bo(e,t,i)}},So=`remote_`,Co=t=>{let n=t.operation?.compositeIdentifiers;if(!n?.enabled)return t;let r=`data`,i=t.outputs?.[r];if(e(i))return t;let a=Array.isArray(i)?i.map(e=>wo(e,n)):wo(i,n);return{...t,outputs:{...t.outputs??{},[r]:a}}},wo=(e,t)=>{let r=To(e,t),i=No(r);return{...e,...n(i)?i:{}}},To=(e,t)=>{let n=t.version??d,r={};return t.fields?.forEach(t=>{let i={},a=[];t.components.forEach(t=>{t.alias&&(i[t.name]=t.alias),a.push({key:t.name,value:e[t.name]})});let o=a.length===1?a[0]:{identifiers:a},s={version:n,aliases:Object.keys(i).length>0?i:void 0},c=g(o,s);r[t.targetFieldKey]=c,t.remote&&(r[`${So}${t.remote}`]=e[t.remote])}),{...e,...r}},Eo=e=>e===`id`||/.+_id(s)?$/.test(e),Do=e=>Array.isArray(e)&&e.every(e=>r(e)&&e.length>0),Oo=(e,t)=>te(e)||t.startsWith(So),ko=(e,t)=>{try{return g({key:e,value:t},{version:d})}catch{return t}},Ao=(e,t,n)=>{let i=t.map(t=>r(t)&&t.length>0&&!te(t)?ko(e,t):t);n[e]=i,n[`${So}${e}`]=t},jo=(e,t,n)=>{if(Oo(t,e))return;let r=g({key:e,value:t},{version:d});n[e]=r,n[`remote_${e}`]=t},Mo=(e,t,n)=>{Do(t)?Ao(e,t,n):r(t)&&t.length>0&&jo(e,t,n)},No=e=>{if(Array.isArray(e))return e.map(e=>No(e));if(!n(e))return e;let t={...e};for(let[r,i]of Object.entries(e))(n(i)||Array.isArray(i)&&i.length>0&&n(i[0]))&&(t[r]=No(i)),Eo(r)&&Mo(r,i,t);return t},Po=(e,n)=>{let r=Number(e.inputs?.page_size),a=i(e.inputs?.page_size)&&t(r)&&!Number.isNaN(r)?r:e.operation?.cursor?.pageSize??n;return a},Fo=(t,r,a,o)=>{let s=e(t)?void 0:t.data,c=Object.keys(a).length+1,l=ne({cursor:o,ignoreStepIndex:c});if(!n(t)||e(s)||(s?.length??0)<=r)return{result:t,next:i(o)&&!l?_(o):null};let u=o?.remote?.[c]?.pageNumber??1,d=(u-1)*r,f=d+r,p=s.slice(d,f),m=s.length>f||!l,h=re({cursor:o,stepIndex:c,pageNumber:u+1});return{result:{...t,data:p},next:m?_(h):null}},Io=async({block:e,buildStepFunction:t=m.build,virtualPaginateResultFn:n=Fo,encodeResultCompositeIds:r=Co,decodeInputCompositeIds:i=mo})=>{let a=i(e),o=await Ho({block:a,buildStepFunction:t,virtualPaginateResultFn:n});return r(o)},Lo=(e,t)=>e.condition?!y(e.condition,t):!1,Ro=(e,t,n)=>{let r=e.stepFunction;return t.operation?.cursor.enabled?{...r.params??{},cursor:{token:t.nextCursor?.remote?.[n]?.providerPageCursor,position:t.nextCursor?.remote?.[n]?.position}}:r.params??{}},zo=(e,t,n,r,i)=>{let a=Wo({block:e,stepId:t,successful:!1,functionOutput:n}),o=r.ignoreError??!1;return o||(i.hasFatalError=!0,i.errorStatusCode??=n.output?.statusCode??500),a},Bo=async(e,t,n,r,i,a)=>{let o=n[e],s=o.stepFunction,c=a.buildStepFunction({functionName:s.functionName,version:s.version,validateSchemas:!0}).fn;if(Lo(o,r))return Wo({block:r,stepId:e,successful:!0,skipped:!0,message:`Step skipped due to condition not met.`});if(i.hasFatalError)return Wo({block:r,stepId:e,successful:!1,skipped:!0,message:`Step skipped due to previous error.`});let l=Ro(o,r,t),u=await c({block:r,params:l});if(u.successful===!1)return zo(r,e,u,o,i);let d=r.operation?.cursor.enabled?re({cursor:r.nextCursor,stepIndex:t,providerPageCursor:u.output?.next,position:u.output?.position}):void 0;return Wo({block:{...u.block,nextCursor:d},stepId:e,functionOutput:u})},Vo=(e,t,r,a,o)=>{let s=!r.hasFatalError,c=s?e.operation?.responses.success.statusCode??200:r.errorStatusCode??500,l=i(o)&&n(o.result)?{next:o.next,...o.result}:a;return{...t,outputs:l,response:{successful:s,statusCode:c,message:s?void 0:e.operation?.responses?.errors?.[c]?.description??ie?.[c]??`Error while processing the request`}}},Ho=async({block:e,buildStepFunction:t=m.build,virtualPaginateResultFn:n=Fo})=>{let r=e.operation?.steps||{},i={...e},a=Object.keys(r),o=Po(e,xa),s={hasFatalError:!1,errorStatusCode:null},c={block:e,buildStepFunction:t,virtualPaginateResultFn:n};for(let[e,t]of a.entries())i=await Bo(t,e,r,i,s,c);let l=e.operation?.result?Uo(e.operation.result,i):void 0,u=e.operation?.cursor.enabled?n(l,o,r,i.nextCursor):void 0;return Vo(e,i,s,l,u)},Uo=(e,t)=>n(e)?b(e,t):y(e,t),Wo=({block:e,stepId:t,successful:n,functionOutput:r,skipped:i,message:a})=>({...e,steps:{...e.steps,[t]:{successful:n??r?.successful??!1,errors:r?.errors,output:r?.output,skipped:i,message:a}}}),Go=async({account:t,connector:n,category:i,path:a,method:o=`get`,queryParams:s={},body:c,headers:l,logger:u,getHttpClient:d,parseConnector:f=Ma,getOperationFromUrlFn:p=de,getOperationForRefreshAuthenticationFn:m=Za,parseOperationInputsFn:h=Wa,createBlockContextFn:g=po,createBlockFn:ee=oe,runStepOperationFn:te=Io})=>{let ne=t.authConfigKey,_=t.environment??`production`,re=t.secureId,ie=t.projectSecureId,ae=t.credentials,v=g({category:i,connectorKey:t.providerKey,connectorVersion:t.providerVersion,authConfigKey:ne,environment:_,accountSecureId:re,projectSecureId:ie}),y;try{y=r(n)?f(n):n}catch{throw new ro(v,`Error while parsing connector`)}let b=qo(a)?m(y,ne,_):p(y,a,o);if(e(b))throw new io(v,`No matching operation found`);v.operationType=b.operation.operationType,v.schema=b.operation.schema?.key;let se=Ko(s,v),ce;try{ce=h(b.operation,{query:s,body:c,headers:l,path:b.params})}catch{throw new ao(v,`Error while parsing operation inputs`)}let le=await ee({connector:y,inputs:ce,context:v,operation:b.operation,credentials:ae,nextCursor:se,logger:u,getHttpClient:d});return await te({block:le})},Ko=(e,t)=>{let n=e?.next,r=i(n)&&t.operationType===`list`?ee(n):void 0;if(r===null)throw new oo(t,`Invalid cursor.`);return r},qo=e=>e===uo;export{$ as ConnectSDKError,uo as REFRESH_TOKEN_OPERATION_PATH,so as buildActionsMetaFromConfig,oe as createBlock,fo as executeStepFunction,co as getActionsMetaFromConfigs,de as getOperationFromUrl,eo as getRefreshTokenExpiresIn,$a as getTokenExpiresIn,se as loadConnector,Wa as parseOperationInputs,Ma as parseYamlConnector,Go as runConnectorOperation,Io as runStepOperation,Qa as supportsRefreshAuthentication,to as validateYamlConnector};
30
+ `),a=0,o=-1,s=0;for(let n=0;n<r.length;n++){let c=r[n],l=c.match(/^(\s*)/)?.[1]?.length||0,u=c.replace(`- `,``).trim();if(u.startsWith(`#`)||u===``||l<=o)continue;let d=i(t[a])?`${String(t[a])}`:``;if(e(d))return s+1;if(isNaN(Number(d))){if(u.startsWith(`${d}:`)){if(a===t.length-1)return n+1;o=l,s=n,a++}}else{let e=parseInt(d,10),t=-1;for(let i=n;i<r.length;i++){let o=r[i],c=o.trim();if(c.startsWith(`-`)&&t++,t===e){a++,s=n,n--;break}else n++}}}return s+1};var $=class e extends Error{errorType;context;constructor(t,n,r){super(r),this.name=`ConnectSDKError`,this.errorType=t,this.context=n,Error.captureStackTrace&&Error.captureStackTrace(this,e)}toString(){return`${this.name} [${this.errorType}]: ${this.message}`}},ro=class extends ${constructor(e,t){super(`CONNECTOR_PARSE_ERROR`,e,t),this.name=`ConnectorParseError`}},io=class extends ${constructor(e,t){super(`MISSING_OPERATION_ERROR`,e,t),this.name=`MissingOperationError`}},ao=class extends ${constructor(e,t){super(`INVALID_OPERATION_INPUTS_ERROR`,e,t),this.name=`InvalidOperationInputsError`}},oo=class extends ${constructor(e,t){super(`INVALID_CURSOR_ERROR`,e,t),this.name=`InvalidCursorError`}};const so=e=>{let t=Object.keys(e.authentication??{}).map(t=>({type:`custom`,label:e.authentication?.[t].production?.label||`Custom`,key:t})),n=Object.values(e?.operations??{}).map(e=>({id:e.id,description:e.description.replace(/\b\w/g,e=>e.toUpperCase()),name:e.description.replace(/\b\w/g,e=>e.toUpperCase()),schema_type:`native`,authentication:t}));return{version:e.version,name:e.description,key:e.key,icon:e.assets?.icon,description:e.description,authentication:t,actions:n}},co=e=>e.map(so),lo=`stackone://internal//`,uo=`${lo}refresh_token`,fo=async({block:e,stepFunctionName:t,params:n,buildStepFunction:r=m.build})=>{let i=r({functionName:t}).fn,a=await i({block:e,params:n}),o=t===p.MAP_FIELDS?{[p.MAP_FIELDS.toString()]:{output:{data:a.block.result},errors:a.errors,successful:a.successful}}:{};return{...a.block,steps:{...a?.block?.steps??{},...o}}},po=({category:e,connectorKey:t,connectorVersion:n,authConfigKey:r,environment:i=`production`,operation:a,accountSecureId:o,projectSecureId:s})=>({projectSecureId:s,accountSecureId:o,connectorKey:t,connectorVersion:n,category:e,service:``,resource:``,schema:a?.schema?.key,operationType:a?.operationType??`unknown`,authenticationType:r,environment:i}),mo=t=>{let n=t.operation?.compositeIdentifiers,r={...t.inputs??{}};if(!n?.enabled||e(r))return t;let i=n.fields?.reduce((e,t)=>(t.components.forEach(t=>{t.alias&&(e[t.name]=t.alias)}),e),{}),a={version:n.version??d,aliases:i};return ho(r,a,t.logger),{...t,inputs:r}},ho=(e,t,n)=>{for(let r in e){let i=e[r];if(typeof i==`string`||Array.isArray(i)&&i.every(e=>typeof e==`string`))xo(i,r,e,t,n);else if(Array.isArray(i))for(let e of i)ho(e,t,n);else typeof i==`object`&&i&&ho(i,t,n)}},go=(e,t,n,r)=>{let i=[],a=[];for(let o of e)try{let e=h(o,n);i.push(e)}catch(e){r?.debug({message:`Received ${t} with invalid composite ID, assuming it is not a composite ID`,category:`processCompositeId`,context:{key:t,inputElement:o,compositeIdentifierConfig:n,error:e}}),a.push(o)}return{compositeIdComponents:i,nonCompositeIds:a}},_o=(e,t,n,r)=>{let i=n.filter(e=>Object.keys(e).length>1);i.length>0&&(e.decoded_ids={...e.decoded_ids??{},[t]:r?i:i[0]})},vo=e=>{let t=Object.values(e);return t.length===1&&(typeof t[0]==`string`||typeof t[0]==`number`)},yo=(e,t,n,r,i)=>{n.every(vo)&&(i?e[t]=[...n.map(e=>Object.values(e)[0]),...r]:n.length>0&&(e[t]=Object.values(n[0])[0]))},bo=(e,t,n)=>{e instanceof f&&e.type===`COMPOSITE_ID_MISSING_HEADER_ERROR`?n?.debug({message:`Received ${t} with no composite ID header, assuming it is not a composite ID`}):n?.warning({message:`Error processing composite ID for ${t}, ignoring it`,error:e})},xo=(e,t,n,r,i)=>{try{let a=Array.isArray(e),o=a?e:[e];if(o.length===0)return;let{compositeIdComponents:s,nonCompositeIds:c}=go(o,t,r,i);_o(n,t,s,a),yo(n,t,s,c,a)}catch(e){bo(e,t,i)}},So=`remote_`,Co=t=>{let n=t.operation?.compositeIdentifiers;if(!n?.enabled)return t;let r=`data`,i=t.outputs?.[r];if(e(i))return t;let a=Array.isArray(i)?i.map(e=>wo(e,n)):wo(i,n);return{...t,outputs:{...t.outputs??{},[r]:a}}},wo=(e,t)=>{let r=To(e,t),i=No(r);return{...e,...n(i)?i:{}}},To=(e,t)=>{let n=t.version??d,r={};return t.fields?.forEach(t=>{let i={},a=[];t.components.forEach(t=>{t.alias&&(i[t.name]=t.alias),a.push({key:t.name,value:e[t.name]})});let o=a.length===1?a[0]:{identifiers:a},s={version:n,aliases:Object.keys(i).length>0?i:void 0},c=g(o,s);r[t.targetFieldKey]=c,t.remote&&(r[`${So}${t.remote}`]=e[t.remote])}),{...e,...r}},Eo=e=>e===`id`||/.+_id(s)?$/.test(e),Do=e=>Array.isArray(e)&&e.every(e=>r(e)&&e.length>0),Oo=(e,t)=>te(e)||t.startsWith(So),ko=(e,t)=>{try{return g({key:e,value:t},{version:d})}catch{return t}},Ao=(e,t,n)=>{let i=t.map(t=>r(t)&&t.length>0&&!te(t)?ko(e,t):t);n[e]=i,n[`${So}${e}`]=t},jo=(e,t,n)=>{if(Oo(t,e))return;let r=g({key:e,value:t},{version:d});n[e]=r,n[`remote_${e}`]=t},Mo=(e,t,n)=>{Do(t)?Ao(e,t,n):r(t)&&t.length>0&&jo(e,t,n)},No=e=>{if(Array.isArray(e))return e.map(e=>No(e));if(!n(e))return e;let t={...e};for(let[r,i]of Object.entries(e))(n(i)||Array.isArray(i)&&i.length>0&&n(i[0]))&&(t[r]=No(i)),Eo(r)&&Mo(r,i,t);return t},Po=(e,n)=>{let r=Number(e.inputs?.page_size),a=i(e.inputs?.page_size)&&t(r)&&!Number.isNaN(r)?r:e.operation?.cursor?.pageSize??n;return a},Fo=(t,r,a,o)=>{let s=e(t)?void 0:t.data,c=Object.keys(a).length+1,l=ne({cursor:o,ignoreStepIndex:c});if(!n(t)||e(s)||(s?.length??0)<=r)return{result:t,next:i(o)&&!l?_(o):null};let u=o?.remote?.[c]?.pageNumber??1,d=(u-1)*r,f=d+r,p=s.slice(d,f),m=s.length>f||!l,h=re({cursor:o,stepIndex:c,pageNumber:u+1});return{result:{...t,data:p},next:m?_(h):null}},Io=async({block:e,buildStepFunction:t=m.build,virtualPaginateResultFn:n=Fo,encodeResultCompositeIds:r=Co,decodeInputCompositeIds:i=mo})=>{let a=i(e),o=await Ho({block:a,buildStepFunction:t,virtualPaginateResultFn:n});return r(o)},Lo=(e,t)=>e.condition?!y(e.condition,t):!1,Ro=(e,t,n)=>{let r=e.stepFunction;return t.operation?.cursor.enabled?{...r.params??{},cursor:{token:t.nextCursor?.remote?.[n]?.providerPageCursor,position:t.nextCursor?.remote?.[n]?.position}}:r.params??{}},zo=(e,t,n,r,i)=>{let a=Wo({block:e,stepId:t,successful:!1,functionOutput:n}),o=r.ignoreError??!1;return o||(i.hasFatalError=!0,i.errorStatusCode??=n.output?.statusCode??500),a},Bo=async(e,t,n,r,i,a)=>{let o=n[e],s=o.stepFunction,c=a.buildStepFunction({functionName:s.functionName,version:s.version,validateSchemas:!0}).fn;if(Lo(o,r))return Wo({block:r,stepId:e,successful:!0,skipped:!0,message:`Step skipped due to condition not met.`});if(i.hasFatalError)return Wo({block:r,stepId:e,successful:!1,skipped:!0,message:`Step skipped due to previous error.`});let l=Ro(o,r,t),u=await c({block:r,params:l});if(u.successful===!1)return zo(r,e,u,o,i);let d=r.operation?.cursor.enabled?re({cursor:r.nextCursor,stepIndex:t,providerPageCursor:u.output?.next,position:u.output?.position}):void 0;return Wo({block:{...u.block,nextCursor:d},stepId:e,functionOutput:u})},Vo=(e,t,r,a,o)=>{let s=!r.hasFatalError,c=s?e.operation?.responses.success.statusCode??200:r.errorStatusCode??500,l=i(o)&&n(o.result)?{next:o.next,...o.result}:a;return{...t,outputs:l,response:{successful:s,statusCode:c,message:s?void 0:e.operation?.responses?.errors?.[c]?.description??ie?.[c]??`Error while processing the request`}}},Ho=async({block:e,buildStepFunction:t=m.build,virtualPaginateResultFn:n=Fo})=>{let r=e.operation?.steps||{},i={...e},a=Object.keys(r),o=Po(e,xa),s={hasFatalError:!1,errorStatusCode:null},c={block:e,buildStepFunction:t,virtualPaginateResultFn:n};for(let[e,t]of a.entries())i=await Bo(t,e,r,i,s,c);let l=e.operation?.result?Uo(e.operation.result,i):void 0,u=e.operation?.cursor.enabled?n(l,o,r,i.nextCursor):void 0;return Vo(e,i,s,l,u)},Uo=(e,t)=>n(e)?b(e,t):y(e,t),Wo=({block:e,stepId:t,successful:n,functionOutput:r,skipped:i,message:a})=>({...e,steps:{...e.steps,[t]:{successful:n??r?.successful??!1,errors:r?.errors,output:r?.output,skipped:i,message:a}}}),Go=async({account:t,connector:n,category:i,path:a,method:o=`get`,queryParams:s={},body:c,headers:l,logger:u,getHttpClient:d,parseConnector:f=Ma,getOperationFromUrlFn:p=de,getOperationForRefreshAuthenticationFn:m=Za,parseOperationInputsFn:h=Wa,createBlockContextFn:g=po,createBlockFn:ee=oe,runStepOperationFn:te=Io})=>{let ne=t.authConfigKey,_=t.environment??`production`,re=t.secureId,ie=t.projectSecureId,ae=t.credentials,v=g({category:i,connectorKey:t.providerKey,connectorVersion:t.providerVersion,authConfigKey:ne,environment:_,accountSecureId:re,projectSecureId:ie}),y;try{y=r(n)?f(n):n}catch{throw new ro(v,`Error while parsing connector`)}let b=qo(a)?m(y,ne,_):p(y,a,o);if(e(b))throw new io(v,`No matching operation found`);v.operationType=b.operation.operationType,v.schema=b.operation.schema?.key;let se=Ko(s,v),ce;try{ce=h(b.operation,{query:s,body:c,headers:l,path:b.params})}catch{throw new ao(v,`Error while parsing operation inputs`)}let le=await ee({connector:y,inputs:ce,context:v,operation:b.operation,credentials:ae,nextCursor:se,logger:u,getHttpClient:d});return await te({block:le})},Ko=(e,t)=>{let n=e?.next,r=i(n)&&t.operationType===`list`?ee(n):void 0;if(r===null)throw new oo(t,`Invalid cursor.`);return r},qo=e=>e===uo;export{$ as ConnectSDKError,uo as REFRESH_TOKEN_OPERATION_PATH,so as buildActionsMetaFromConfig,oe as createBlock,fo as executeStepFunction,co as getActionsMetaFromConfigs,de as getOperationFromUrl,eo as getRefreshTokenExpiresIn,$a as getTokenExpiresIn,se as loadConnector,Wa as parseOperationInputs,Ma as parseYamlConnector,Go as runConnectorOperation,Io as runStepOperation,Qa as supportsRefreshAuthentication,to as validateYamlConnector};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stackone/connect-sdk",
3
- "version": "1.47.0",
3
+ "version": "1.49.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",