@wf-financing/ui-assets 0.3.2 → 0.3.4

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.cjs.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("zod"),d=t.z.object({version:t.z.string().min(1),language:t.z.string().min(2),cohort:t.z.string().min(1)}),S=d.extend({partnerName:t.z.string().trim(),termsOfServiceTitle:t.z.string().trim().max(120),termsAndServiceUrl:t.z.string().url()}),y=d.extend({mainText:t.z.string().min(1).max(150),bulletPoints:t.z.array(t.z.string().min(1)).max(3),buttonText:t.z.string().min(1).max(25)}),u=r=>e=>r.every(n=>e.includes(`{${n}}`)),P=r=>t.z.record(t.z.string(),r),l=r=>t.z.record(t.z.string(),P(r)),M=(r,e)=>{const n=(e==null?void 0:e.language)??"en",i=(e==null?void 0:e.cohort)??"default",a=Object.keys(r);let c={};return a.forEach(s=>{const o=r[s];if(o){let g;const T=o[n]??o.en,w=T[i]??T.default;if(w?g=w:g=o.en.default,!g)throw new Error("Cohorted document doesn't exist");c={...c,[s]:g}}}),c};var E=Object.defineProperty,U=(r,e,n)=>e in r?E(r,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):r[e]=n,I=(r,e,n)=>U(r,typeof e!="symbol"?e+"":e,n);const j="https://api.wayflyer.com",D="https://sandbox-api.wayflyer.com",N=r=>{try{return JSON.parse(atob(r.split(".")[1]))}catch{return null}},C={"Content-Type":"application/json"},O={event:"/financing/v1/company/event/",error:"/financing/v1/error/"},A="wf_session_v1",L=1800*1e3,R=1440*60*1e3;class G{getSessionId(){const e=Date.now();let n=this.loadSession();return(!n||this.isSessionExpired(n,e))&&(n=this.mintNewSession(e)),n.lastActivity=e,this.saveSession(n),n.sessionId}isSessionExpired(e,n){const i=n-e.lastActivity>L,a=n-e.createdAt>R;return i||a}mintNewSession(e){return{sessionId:crypto.randomUUID(),createdAt:e,lastActivity:e}}loadSession(){try{const e=sessionStorage.getItem(A);return e?JSON.parse(e):null}catch{return null}}saveSession(e){try{sessionStorage.setItem(A,JSON.stringify(e))}catch{console.warn("Failed to save session context")}}}class m{constructor(e,n){I(this,"baseUrl",null),I(this,"sessionManager"),this.companyToken=e,this.baseUrl=n?D:j,this.sessionManager=new G}static getGlobalInstance(){return window.WayflyerLogger||null}static setGlobalInstance(e){window.WayflyerLogger=e}static initialize(e,n){m.getGlobalInstance()&&console.warn("Logger re-initialized");const i=new m(e,n==null?void 0:n.isSandbox);m.setGlobalInstance(i)}static getMandatoryProperties(e){const n=N(e),[i,a]=(n==null?void 0:n.sub.split("|"))||[],c=n==null?void 0:n.user_id;return{partnerId:i,companyId:a,userId:c}}static getInstance(){const e=m.getGlobalInstance();if(!e)throw new Error("Logger not initialized. Call initialize() first.");return e}static async logEvent(e,n){const i=m.getInstance(),a=i.sessionManager.getSessionId(),c={...C,Authorization:`Bearer ${i.companyToken}`,"X-Session-ID":a};try{const s={...m.getMandatoryProperties(i.companyToken),...n},o=await fetch(i.baseUrl+O.event,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),event_name:e,properties:s})});if(o.status===200)return await o.json()}catch(s){console.error("Failed to log event",s)}}static async logError(e,n){const i=m.getInstance(),a=i.sessionManager.getSessionId(),c={...C,"X-Session-ID":a};try{const s={...m.getMandatoryProperties(i.companyToken),...n},o=await fetch(i.baseUrl+O.error,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),message:e,properties:s})});if(o.status===200)return await o.json()}catch(s){console.warn("Failed to log error",s)}}}const B="https://partner-assets.wayflyer.com",$="https://partner-assets-sandbox.wayflyer.com",J=async r=>{const e=r.partnerId,n=r==null?void 0:r.version,i=r==null?void 0:r.options,s=`${(i==null?void 0:i.isSandbox)?$:B}/${e}/copy/${n}/copy.json`;try{const g=await(await fetch(s)).json();return M(g,i)}catch(o){throw m.logError(`Error in partner copy loading: ${e}`),o}},f=d.extend({mainText:t.z.string().trim().min(1).max(160).refine(u(["amount"]),{message:"mainText must include {amount}"}),bulletPoints:t.z.array(t.z.string().min(1)).max(3),buttonText:t.z.string().min(1).max(25)}),p=d.extend({imageUrl:t.z.string().trim().url(),title:t.z.string().trim().min(1),descriptions:t.z.array(t.z.object({title:t.z.string().trim().min(1),description:t.z.string().trim().min(1)})).length(3),buttons:t.z.object({accept:t.z.string().trim().min(1),close:t.z.string().trim().min(1)}),termsAndConditions:t.z.string().trim().min(1).refine(u(["termsUrl"]),{message:"termsUrl is required"})}),h=d.extend({mainText:t.z.string().min(1).max(150),buttonText:t.z.string().min(1).max(25)}),x=d.extend({mainText:t.z.string().trim().min(1).max(160).refine(u(["amount"]),{message:"mainText must include {amount}"}),bulletPoints:t.z.array(t.z.string().min(1)).max(3),buttonText:t.z.string().min(1).max(25)}),z=d.extend({mainText:t.z.string().min(1).max(150),buttonText:t.z.string().min(1).max(25)}),b=d.extend({mainText:t.z.string().min(1).max(150),buttonText:t.z.string().min(1).max(25)}),v=d.extend({mainText:t.z.string().min(1).max(150),buttonText:t.z.string().min(1).max(25)}),K=t.z.object({genericOffer:l(y),indicativeOffer:l(f),consentModal:l(p),completeApplication:l(h),completeKyc:l(z),signContract:l(b),selectOffer:l(x),provideAdditionalInfo:l(v),partnerTemplate:l(S).optional()}),k=t.z.object({genericOffer:y,indicativeOffer:f,consentModal:p,completeApplication:h,completeKyc:z,signContract:b,selectOffer:x,provideAdditionalInfo:v,partnerTemplate:S.optional()});exports.CohortMap=P;exports.CompleteApplicationSchema=h;exports.CompleteKycSchema=z;exports.ConsentModalSchema=p;exports.CopyBundleSchema=K;exports.CopySchema=k;exports.GenericOfferSchema=y;exports.IndicativeOfferSchema=f;exports.LanguageMap=l;exports.PartnerTemplateSchema=S;exports.ProvideAdditionalInfoSchema=v;exports.SelectOfferSchema=x;exports.SignContractSchema=b;exports.WayflyerDocumentSchema=d;exports.filterCopy=M;exports.loadAndConfigureCopy=J;exports.mustContainPlaceholders=u;
1
+ "use strict";var U=Object.defineProperty;var j=(r,t,e)=>t in r?U(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var g=(r,t,e)=>j(r,typeof t!="symbol"?t+"":t,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("zod"),m=n.z.object({version:n.z.string().min(1),language:n.z.string().min(2),cohort:n.z.string().min(1)}),S=m.extend({partnerName:n.z.string().trim(),termsOfServiceTitle:n.z.string().trim().max(120),termsAndServiceUrl:n.z.string().url()}),y=m.extend({mainText:n.z.string().min(1).max(150),bulletPoints:n.z.array(n.z.string().min(1)).max(3),buttonText:n.z.string().min(1).max(25)}),f=r=>t=>r.every(e=>t.includes(`{${e}}`)),P=r=>n.z.record(n.z.string(),r),l=r=>n.z.record(n.z.string(),P(r)),M=(r,t)=>{const e=(t==null?void 0:t.language)??"en",s=(t==null?void 0:t.cohort)??"default",a=Object.keys(r);let c={};return a.forEach(o=>{const i=r[o];if(i){let u;const I=i[e]??i.en,C=I[s]??I.default;if(C?u=C:u=i.en.default,!u)throw new Error("Cohorted document doesn't exist");c={...c,[o]:u}}}),c};var N=Object.defineProperty,$=(r,t,e)=>t in r?N(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,h=(r,t,e)=>$(r,typeof t!="symbol"?t+"":t,e);const L="https://api.wayflyer.com",R="https://sandbox-api.wayflyer.com",G=r=>{try{return JSON.parse(atob(r.split(".")[1]))}catch{return null}},O={"Content-Type":"application/json"},A={event:"/financing/v1/company/event/",error:"/financing/v1/error/"},E="wf_session_v1",B=1800*1e3,k=1440*60*1e3;class J{getSessionId(){const t=Date.now();let e=this.loadSession();return(!e||this.isSessionExpired(e,t))&&(e=this.mintNewSession(t)),e.lastActivity=t,this.saveSession(e),e.sessionId}isSessionExpired(t,e){const s=e-t.lastActivity>B,a=e-t.createdAt>k;return s||a}mintNewSession(t){return{sessionId:crypto.randomUUID(),createdAt:t,lastActivity:t}}loadSession(){try{const t=sessionStorage.getItem(E);return t?JSON.parse(t):null}catch{return null}}saveSession(t){try{sessionStorage.setItem(E,JSON.stringify(t))}catch{console.warn("Failed to save session context")}}}const D=class d{constructor(t,e){h(this,"baseUrl",null),h(this,"sessionManager"),this.companyToken=t,this.baseUrl=e?R:L,this.sessionManager=new J}static getGlobalInstance(){return window.WayflyerLogger||null}static setGlobalInstance(t){window.WayflyerLogger=t}static initialize(t,e){d.getGlobalInstance()&&console.warn("Logger re-initialized");const s=new d(t,e==null?void 0:e.isSandbox);d.setGlobalInstance(s)}static getMandatoryProperties(t){const e=G(t),[s,a]=(e==null?void 0:e.sub.split("|"))||[],c=e==null?void 0:e.user_id;return{partnerId:s,companyId:a,userId:c}}static getInstance(){const t=d.getGlobalInstance();if(!t)throw new Error("Logger not initialized. Call initialize() first.");return t}static async logEvent(t,e){if(this.isDevEnvironment)return;const s=d.getInstance(),a=s.sessionManager.getSessionId(),c={...O,Authorization:`Bearer ${s.companyToken}`,"X-Session-ID":a};try{const o={...d.getMandatoryProperties(s.companyToken),...e},i=await fetch(s.baseUrl+A.event,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),event_name:t,properties:o})});if(i.status===200)return await i.json()}catch(o){console.error("Failed to log event",o)}}static async logError(t,e){if(this.isDevEnvironment){console.error(t);return}const s=d.getInstance(),a=s.sessionManager.getSessionId(),c={...O,"X-Session-ID":a};try{const o={...d.getMandatoryProperties(s.companyToken),...e},i=await fetch(s.baseUrl+A.error,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),message:t,properties:o})});if(i.status===200)return await i.json()}catch(o){console.warn("Failed to log error",o)}}};h(D,"isDevEnvironment",!1);let K=D;const q="https://partner-assets.wayflyer.com",W="https://partner-assets-sandbox.wayflyer.com";class F extends Error{constructor(e,s){super(`Request to ${s} failed with status ${e.status} ${e.statusText}`);g(this,"status");g(this,"statusText");g(this,"url");this.name="HttpError",this.status=e.status,this.statusText=e.statusText,this.url=s}}const X=async r=>{const t=r.partnerId,e=r==null?void 0:r.version,s=r==null?void 0:r.options,o=`${(s==null?void 0:s.isSandbox)?W:q}/${t}/copy/${e}/copy.json`;try{const i=await fetch(o);if(!i.ok)throw new F(i,o);const u=await i.json();return M(u,s)}catch(i){throw K.logError(`Error in partner copy loading: ${i}`),i}},p=m.extend({mainText:n.z.string().trim().min(1).max(160).refine(f(["amount"]),{message:"mainText must include {amount}"}),bulletPoints:n.z.array(n.z.string().min(1)).max(3),buttonText:n.z.string().min(1).max(25)}),x=m.extend({imageUrl:n.z.string().trim().url(),title:n.z.string().trim().min(1),descriptions:n.z.array(n.z.object({title:n.z.string().trim().min(1),description:n.z.string().trim().min(1)})).length(3),buttons:n.z.object({accept:n.z.string().trim().min(1),close:n.z.string().trim().min(1)}),termsAndConditions:n.z.string().trim().min(1).refine(f(["termsUrl"]),{message:"termsUrl is required"})}),z=m.extend({mainText:n.z.string().min(1).max(150),buttonText:n.z.string().min(1).max(25)}),b=m.extend({mainText:n.z.string().trim().min(1).max(160).refine(f(["amount"]),{message:"mainText must include {amount}"}),bulletPoints:n.z.array(n.z.string().min(1)).max(3),buttonText:n.z.string().min(1).max(25)}),v=m.extend({mainText:n.z.string().min(1).max(150),buttonText:n.z.string().min(1).max(25)}),T=m.extend({mainText:n.z.string().min(1).max(150),buttonText:n.z.string().min(1).max(25)}),w=m.extend({mainText:n.z.string().min(1).max(150),buttonText:n.z.string().min(1).max(25)}),_=n.z.object({genericOffer:l(y),indicativeOffer:l(p),consentModal:l(x),completeApplication:l(z),completeKyc:l(v),signContract:l(T),selectOffer:l(b),provideAdditionalInfo:l(w),partnerTemplate:l(S).optional()}),H=n.z.object({genericOffer:y,indicativeOffer:p,consentModal:x,completeApplication:z,completeKyc:v,signContract:T,selectOffer:b,provideAdditionalInfo:w,partnerTemplate:S.optional()});exports.CohortMap=P;exports.CompleteApplicationSchema=z;exports.CompleteKycSchema=v;exports.ConsentModalSchema=x;exports.CopyBundleSchema=_;exports.CopySchema=H;exports.GenericOfferSchema=y;exports.IndicativeOfferSchema=p;exports.LanguageMap=l;exports.PartnerTemplateSchema=S;exports.ProvideAdditionalInfoSchema=w;exports.SelectOfferSchema=b;exports.SignContractSchema=T;exports.WayflyerDocumentSchema=m;exports.filterCopy=M;exports.loadAndConfigureCopy=X;exports.mustContainPlaceholders=f;
2
2
  //# sourceMappingURL=index.cjs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs.js","sources":["../src/schemas/wayflyerDocument.ts","../src/schemas/partnerTemplate.ts","../src/schemas/genericOffer.ts","../src/utils/validators.ts","../src/utils/normalizers.ts","../src/utils/filterCopy.ts","../../logger/dist/index.es.js","../src/config/urls.ts","../src/utils/loadCopy.ts","../src/schemas/indicativeOffer.ts","../src/schemas/consentModal.ts","../src/schemas/completeApplication.ts","../src/schemas/selectOffer.ts","../src/schemas/completeKyc.ts","../src/schemas/signContract.ts","../src/schemas/provideAdditionalInfo.ts","../src/schemas/copyBundle.ts"],"sourcesContent":["import { z } from 'zod';\n\nexport const WayflyerDocumentSchema = z.object({\n version: z.string().min(1),\n language: z.string().min(2),\n cohort: z.string().min(1),\n});\nexport type WayflyerDocument = z.infer<typeof WayflyerDocumentSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const PartnerTemplateSchema = WayflyerDocumentSchema.extend({\n partnerName: z.string().trim(),\n termsOfServiceTitle: z.string().trim().max(120),\n termsAndServiceUrl: z.string().url(),\n});\nexport type PartnerTemplate = z.infer<typeof PartnerTemplateSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const GenericOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type GenericOffer = z.infer<typeof GenericOfferSchema>;\n","export const mustContainPlaceholders = (placeholders: string[]) => {\n return (value: string) => placeholders.every((placeholder) => value.includes(`{${placeholder}}`));\n};\n","import { z } from 'zod';\n\nexport const CohortMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), schema);\nexport const LanguageMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), CohortMap(schema));\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype FilterCopy = (copy: CopyBundle, options?: Options) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n const cohort = options?.cohort ?? 'default';\n const documentKeys = Object.keys(copy) as Array<keyof typeof copy>;\n let normalizedCopy = {};\n\n documentKeys.forEach((key) => {\n const document = copy[key];\n\n if (document) {\n let filteredDocument;\n const localizedDocument = document[language] ?? document.en;\n const cohortedDocument = localizedDocument[cohort] ?? localizedDocument.default;\n\n if (!cohortedDocument) {\n filteredDocument = document.en.default;\n } else {\n filteredDocument = cohortedDocument;\n }\n\n if (!filteredDocument) {\n throw new Error(\"Cohorted document doesn't exist\");\n }\n\n normalizedCopy = {\n ...normalizedCopy,\n [key]: filteredDocument,\n };\n }\n });\n\n return normalizedCopy as Copy;\n};\n","var y = Object.defineProperty;\nvar p = (o, t, s) => t in o ? y(o, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : o[t] = s;\nvar l = (o, t, s) => p(o, typeof t != \"symbol\" ? t + \"\" : t, s);\nconst g = \"https://api.wayflyer.com\", u = \"https://sandbox-api.wayflyer.com\", w = (o) => {\n try {\n return JSON.parse(atob(o.split(\".\")[1]));\n } catch {\n return null;\n }\n}, d = {\n \"Content-Type\": \"application/json\"\n}, I = {\n event: \"/financing/v1/company/event/\",\n error: \"/financing/v1/error/\"\n}, S = \"wf_session_v1\", h = 1800 * 1e3, f = 1440 * 60 * 1e3;\nclass m {\n getSessionId() {\n const t = Date.now();\n let s = this.loadSession();\n return (!s || this.isSessionExpired(s, t)) && (s = this.mintNewSession(t)), s.lastActivity = t, this.saveSession(s), s.sessionId;\n }\n isSessionExpired(t, s) {\n const e = s - t.lastActivity > h, a = s - t.createdAt > f;\n return e || a;\n }\n mintNewSession(t) {\n return {\n sessionId: crypto.randomUUID(),\n createdAt: t,\n lastActivity: t\n };\n }\n loadSession() {\n try {\n const t = sessionStorage.getItem(S);\n return t ? JSON.parse(t) : null;\n } catch {\n return null;\n }\n }\n saveSession(t) {\n try {\n sessionStorage.setItem(S, JSON.stringify(t));\n } catch {\n console.warn(\"Failed to save session context\");\n }\n }\n}\nclass n {\n constructor(t, s) {\n l(this, \"baseUrl\", null);\n l(this, \"sessionManager\");\n this.companyToken = t, this.baseUrl = s ? u : g, this.sessionManager = new m();\n }\n static getGlobalInstance() {\n return window.WayflyerLogger || null;\n }\n static setGlobalInstance(t) {\n window.WayflyerLogger = t;\n }\n static initialize(t, s) {\n n.getGlobalInstance() && console.warn(\"Logger re-initialized\");\n const e = new n(t, s == null ? void 0 : s.isSandbox);\n n.setGlobalInstance(e);\n }\n static getMandatoryProperties(t) {\n const s = w(t), [e, a] = (s == null ? void 0 : s.sub.split(\"|\")) || [], r = s == null ? void 0 : s.user_id;\n return { partnerId: e, companyId: a, userId: r };\n }\n static getInstance() {\n const t = n.getGlobalInstance();\n if (!t)\n throw new Error(\"Logger not initialized. Call initialize() first.\");\n return t;\n }\n static async logEvent(t, s) {\n const e = n.getInstance(), a = e.sessionManager.getSessionId(), r = {\n ...d,\n Authorization: `Bearer ${e.companyToken}`,\n \"X-Session-ID\": a\n };\n try {\n const i = {\n ...n.getMandatoryProperties(e.companyToken),\n ...s\n }, c = await fetch(e.baseUrl + I.event, {\n method: \"POST\",\n headers: r,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n event_name: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.error(\"Failed to log event\", i);\n }\n }\n static async logError(t, s) {\n const e = n.getInstance(), a = e.sessionManager.getSessionId(), r = {\n ...d,\n \"X-Session-ID\": a\n };\n try {\n const i = {\n ...n.getMandatoryProperties(e.companyToken),\n ...s\n }, c = await fetch(e.baseUrl + I.error, {\n method: \"POST\",\n headers: r,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n message: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.warn(\"Failed to log error\", i);\n }\n }\n}\nexport {\n n as Logger\n};\n","export const PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_PARTNER_ASSETS_BASE_URL;\nexport const SANDBOX_PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL;\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\nimport { Logger } from '@wf-financing/logger';\n\nimport { PARTNER_ASSETS_BASE_URL, SANDBOX_PARTNER_ASSETS_BASE_URL } from '../config';\nimport type { Copy, CopyBundle } from '../schemas';\nimport { filterCopy } from './filterCopy';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: Options;\n};\ntype LoadCopy = (params: LoadCopyParams) => Promise<Copy>;\n\nexport const loadAndConfigureCopy: LoadCopy = async (params) => {\n const partnerId = params.partnerId;\n const version = params?.version;\n const options = params?.options;\n const isSandbox = options?.isSandbox;\n const baseUrl = isSandbox ? SANDBOX_PARTNER_ASSETS_BASE_URL : PARTNER_ASSETS_BASE_URL;\n\n const requestUrl = `${baseUrl}/${partnerId}/copy/${version}/copy.json`;\n\n try {\n const documentResponse = await fetch(requestUrl);\n const document = (await documentResponse.json()) as CopyBundle;\n\n return filterCopy(document, options);\n } catch (err) {\n Logger.logError(`Error in partner copy loading: ${partnerId}`);\n throw err;\n }\n};\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const IndicativeOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type IndicativeOffer = z.infer<typeof IndicativeOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const ConsentModalSchema = WayflyerDocumentSchema.extend({\n imageUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n descriptions: z\n .array(\n z.object({\n title: z.string().trim().min(1),\n description: z.string().trim().min(1),\n }),\n )\n .length(3),\n buttons: z.object({\n accept: z.string().trim().min(1),\n close: z.string().trim().min(1),\n }),\n termsAndConditions: z\n .string()\n .trim()\n .min(1)\n .refine(mustContainPlaceholders(['termsUrl']), {\n message: 'termsUrl is required',\n }),\n});\nexport type ConsentModal = z.infer<typeof ConsentModalSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteApplicationSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteApplication = z.infer<typeof CompleteApplicationSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const SelectOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type SelectOffer = z.infer<typeof SelectOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteKycSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteKyc = z.infer<typeof CompleteKycSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const SignContractSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type SignContract = z.infer<typeof SignContractSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const ProvideAdditionalInfoSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type ProvideAdditionalInfo = z.infer<typeof ProvideAdditionalInfoSchema>;\n","import { z } from 'zod';\n\nimport { LanguageMap } from '../utils';\nimport { GenericOfferSchema } from './genericOffer';\nimport { IndicativeOfferSchema } from './indicativeOffer';\nimport { CompleteApplicationSchema } from './completeApplication.ts';\nimport { CompleteKycSchema } from './completeKyc.ts';\nimport { SelectOfferSchema } from './selectOffer.ts';\nimport { SignContractSchema } from './signContract';\nimport { ConsentModalSchema } from './consentModal';\nimport { PartnerTemplateSchema } from './partnerTemplate';\nimport { ProvideAdditionalInfoSchema } from './provideAdditionalInfo';\n\nexport const CopyBundleSchema = z.object({\n genericOffer: LanguageMap(GenericOfferSchema),\n indicativeOffer: LanguageMap(IndicativeOfferSchema),\n consentModal: LanguageMap(ConsentModalSchema),\n completeApplication: LanguageMap(CompleteApplicationSchema),\n completeKyc: LanguageMap(CompleteKycSchema),\n signContract: LanguageMap(SignContractSchema),\n selectOffer: LanguageMap(SelectOfferSchema),\n provideAdditionalInfo: LanguageMap(ProvideAdditionalInfoSchema),\n partnerTemplate: LanguageMap(PartnerTemplateSchema).optional(),\n});\nexport const CopySchema = z.object({\n genericOffer: GenericOfferSchema,\n indicativeOffer: IndicativeOfferSchema,\n consentModal: ConsentModalSchema,\n completeApplication: CompleteApplicationSchema,\n completeKyc: CompleteKycSchema,\n signContract: SignContractSchema,\n selectOffer: SelectOfferSchema,\n provideAdditionalInfo: ProvideAdditionalInfoSchema,\n partnerTemplate: PartnerTemplateSchema.optional(),\n});\nexport type Copy = z.infer<typeof CopySchema>;\nexport type CopyBundle = z.infer<typeof CopyBundleSchema>;\n"],"names":["WayflyerDocumentSchema","z","PartnerTemplateSchema","GenericOfferSchema","mustContainPlaceholders","placeholders","value","placeholder","CohortMap","schema","LanguageMap","filterCopy","copy","options","language","cohort","documentKeys","normalizedCopy","key","document","filteredDocument","localizedDocument","cohortedDocument","y","p","o","t","s","l","g","u","w","d","I","S","h","f","m","e","n","r","i","c","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","loadAndConfigureCopy","params","partnerId","version","requestUrl","err","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs.js","sources":["../src/schemas/wayflyerDocument.ts","../src/schemas/partnerTemplate.ts","../src/schemas/genericOffer.ts","../src/utils/validators.ts","../src/utils/normalizers.ts","../src/utils/filterCopy.ts","../../logger/dist/index.es.js","../src/config/urls.ts","../src/utils/loadCopy.ts","../src/schemas/indicativeOffer.ts","../src/schemas/consentModal.ts","../src/schemas/completeApplication.ts","../src/schemas/selectOffer.ts","../src/schemas/completeKyc.ts","../src/schemas/signContract.ts","../src/schemas/provideAdditionalInfo.ts","../src/schemas/copyBundle.ts"],"sourcesContent":["import { z } from 'zod';\n\nexport const WayflyerDocumentSchema = z.object({\n version: z.string().min(1),\n language: z.string().min(2),\n cohort: z.string().min(1),\n});\nexport type WayflyerDocument = z.infer<typeof WayflyerDocumentSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const PartnerTemplateSchema = WayflyerDocumentSchema.extend({\n partnerName: z.string().trim(),\n termsOfServiceTitle: z.string().trim().max(120),\n termsAndServiceUrl: z.string().url(),\n});\nexport type PartnerTemplate = z.infer<typeof PartnerTemplateSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const GenericOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type GenericOffer = z.infer<typeof GenericOfferSchema>;\n","export const mustContainPlaceholders = (placeholders: string[]) => {\n return (value: string) => placeholders.every((placeholder) => value.includes(`{${placeholder}}`));\n};\n","import { z } from 'zod';\n\nexport const CohortMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), schema);\nexport const LanguageMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), CohortMap(schema));\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype FilterCopy = (copy: CopyBundle, options?: Options) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n const cohort = options?.cohort ?? 'default';\n const documentKeys = Object.keys(copy) as Array<keyof typeof copy>;\n let normalizedCopy = {};\n\n documentKeys.forEach((key) => {\n const document = copy[key];\n\n if (document) {\n let filteredDocument;\n const localizedDocument = document[language] ?? document.en;\n const cohortedDocument = localizedDocument[cohort] ?? localizedDocument.default;\n\n if (!cohortedDocument) {\n filteredDocument = document.en.default;\n } else {\n filteredDocument = cohortedDocument;\n }\n\n if (!filteredDocument) {\n throw new Error(\"Cohorted document doesn't exist\");\n }\n\n normalizedCopy = {\n ...normalizedCopy,\n [key]: filteredDocument,\n };\n }\n });\n\n return normalizedCopy as Copy;\n};\n","var y = Object.defineProperty;\nvar p = (o, t, e) => t in o ? y(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;\nvar l = (o, t, e) => p(o, typeof t != \"symbol\" ? t + \"\" : t, e);\nconst u = \"https://api.wayflyer.com\", h = \"https://sandbox-api.wayflyer.com\", w = (o) => {\n try {\n return JSON.parse(atob(o.split(\".\")[1]));\n } catch {\n return null;\n }\n}, d = {\n \"Content-Type\": \"application/json\"\n}, g = {\n event: \"/financing/v1/company/event/\",\n error: \"/financing/v1/error/\"\n}, I = \"wf_session_v1\", f = 1800 * 1e3, m = 1440 * 60 * 1e3;\nclass v {\n getSessionId() {\n const t = Date.now();\n let e = this.loadSession();\n return (!e || this.isSessionExpired(e, t)) && (e = this.mintNewSession(t)), e.lastActivity = t, this.saveSession(e), e.sessionId;\n }\n isSessionExpired(t, e) {\n const s = e - t.lastActivity > f, r = e - t.createdAt > m;\n return s || r;\n }\n mintNewSession(t) {\n return {\n sessionId: crypto.randomUUID(),\n createdAt: t,\n lastActivity: t\n };\n }\n loadSession() {\n try {\n const t = sessionStorage.getItem(I);\n return t ? JSON.parse(t) : null;\n } catch {\n return null;\n }\n }\n saveSession(t) {\n try {\n sessionStorage.setItem(I, JSON.stringify(t));\n } catch {\n console.warn(\"Failed to save session context\");\n }\n }\n}\nconst n = class n {\n constructor(t, e) {\n l(this, \"baseUrl\", null);\n l(this, \"sessionManager\");\n this.companyToken = t, this.baseUrl = e ? h : u, this.sessionManager = new v();\n }\n static getGlobalInstance() {\n return window.WayflyerLogger || null;\n }\n static setGlobalInstance(t) {\n window.WayflyerLogger = t;\n }\n static initialize(t, e) {\n n.getGlobalInstance() && console.warn(\"Logger re-initialized\");\n const s = new n(t, e == null ? void 0 : e.isSandbox);\n n.setGlobalInstance(s);\n }\n static getMandatoryProperties(t) {\n const e = w(t), [s, r] = (e == null ? void 0 : e.sub.split(\"|\")) || [], a = e == null ? void 0 : e.user_id;\n return { partnerId: s, companyId: r, userId: a };\n }\n static getInstance() {\n const t = n.getGlobalInstance();\n if (!t)\n throw new Error(\"Logger not initialized. Call initialize() first.\");\n return t;\n }\n static async logEvent(t, e) {\n if (this.isDevEnvironment) return;\n const s = n.getInstance(), r = s.sessionManager.getSessionId(), a = {\n ...d,\n Authorization: `Bearer ${s.companyToken}`,\n \"X-Session-ID\": r\n };\n try {\n const i = {\n ...n.getMandatoryProperties(s.companyToken),\n ...e\n }, c = await fetch(s.baseUrl + g.event, {\n method: \"POST\",\n headers: a,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n event_name: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.error(\"Failed to log event\", i);\n }\n }\n static async logError(t, e) {\n if (this.isDevEnvironment) {\n console.error(t);\n return;\n }\n const s = n.getInstance(), r = s.sessionManager.getSessionId(), a = {\n ...d,\n \"X-Session-ID\": r\n };\n try {\n const i = {\n ...n.getMandatoryProperties(s.companyToken),\n ...e\n }, c = await fetch(s.baseUrl + g.error, {\n method: \"POST\",\n headers: a,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n message: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.warn(\"Failed to log error\", i);\n }\n }\n};\nl(n, \"isDevEnvironment\", !1);\nlet S = n;\nexport {\n S as Logger\n};\n","export const PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_PARTNER_ASSETS_BASE_URL;\nexport const SANDBOX_PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL;\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\nimport { Logger } from '@wf-financing/logger';\n\nimport { PARTNER_ASSETS_BASE_URL, SANDBOX_PARTNER_ASSETS_BASE_URL } from '../config';\nimport type { Copy } from '../schemas';\nimport { filterCopy } from './filterCopy';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: Options;\n};\ntype LoadCopy = (params: LoadCopyParams) => Promise<Copy>;\n\nclass HttpError extends Error {\n status: number;\n statusText: string;\n url: string;\n\n constructor(response: Response, url: string) {\n super(`Request to ${url} failed with status ${response.status} ${response.statusText}`);\n\n this.name = 'HttpError';\n this.status = response.status;\n this.statusText = response.statusText;\n this.url = url;\n }\n}\n\nexport const loadAndConfigureCopy: LoadCopy = async (params) => {\n const partnerId = params.partnerId;\n const version = params?.version;\n const options = params?.options;\n const isSandbox = options?.isSandbox;\n const baseUrl = isSandbox ? SANDBOX_PARTNER_ASSETS_BASE_URL : PARTNER_ASSETS_BASE_URL;\n\n const requestUrl = `${baseUrl}/${partnerId}/copy/${version}/copy.json`;\n\n try {\n const documentResponse = await fetch(requestUrl);\n\n if (!documentResponse.ok) {\n throw new HttpError(documentResponse, requestUrl);\n }\n\n const document = await documentResponse.json();\n\n return filterCopy(document, options);\n } catch (error) {\n Logger.logError(`Error in partner copy loading: ${error}`);\n throw error;\n }\n};\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const IndicativeOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type IndicativeOffer = z.infer<typeof IndicativeOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const ConsentModalSchema = WayflyerDocumentSchema.extend({\n imageUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n descriptions: z\n .array(\n z.object({\n title: z.string().trim().min(1),\n description: z.string().trim().min(1),\n }),\n )\n .length(3),\n buttons: z.object({\n accept: z.string().trim().min(1),\n close: z.string().trim().min(1),\n }),\n termsAndConditions: z\n .string()\n .trim()\n .min(1)\n .refine(mustContainPlaceholders(['termsUrl']), {\n message: 'termsUrl is required',\n }),\n});\nexport type ConsentModal = z.infer<typeof ConsentModalSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteApplicationSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteApplication = z.infer<typeof CompleteApplicationSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const SelectOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type SelectOffer = z.infer<typeof SelectOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteKycSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteKyc = z.infer<typeof CompleteKycSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const SignContractSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type SignContract = z.infer<typeof SignContractSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const ProvideAdditionalInfoSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type ProvideAdditionalInfo = z.infer<typeof ProvideAdditionalInfoSchema>;\n","import { z } from 'zod';\n\nimport { LanguageMap } from '../utils';\nimport { GenericOfferSchema } from './genericOffer';\nimport { IndicativeOfferSchema } from './indicativeOffer';\nimport { CompleteApplicationSchema } from './completeApplication.ts';\nimport { CompleteKycSchema } from './completeKyc.ts';\nimport { SelectOfferSchema } from './selectOffer.ts';\nimport { SignContractSchema } from './signContract';\nimport { ConsentModalSchema } from './consentModal';\nimport { PartnerTemplateSchema } from './partnerTemplate';\nimport { ProvideAdditionalInfoSchema } from './provideAdditionalInfo';\n\nexport const CopyBundleSchema = z.object({\n genericOffer: LanguageMap(GenericOfferSchema),\n indicativeOffer: LanguageMap(IndicativeOfferSchema),\n consentModal: LanguageMap(ConsentModalSchema),\n completeApplication: LanguageMap(CompleteApplicationSchema),\n completeKyc: LanguageMap(CompleteKycSchema),\n signContract: LanguageMap(SignContractSchema),\n selectOffer: LanguageMap(SelectOfferSchema),\n provideAdditionalInfo: LanguageMap(ProvideAdditionalInfoSchema),\n partnerTemplate: LanguageMap(PartnerTemplateSchema).optional(),\n});\nexport const CopySchema = z.object({\n genericOffer: GenericOfferSchema,\n indicativeOffer: IndicativeOfferSchema,\n consentModal: ConsentModalSchema,\n completeApplication: CompleteApplicationSchema,\n completeKyc: CompleteKycSchema,\n signContract: SignContractSchema,\n selectOffer: SelectOfferSchema,\n provideAdditionalInfo: ProvideAdditionalInfoSchema,\n partnerTemplate: PartnerTemplateSchema.optional(),\n});\nexport type Copy = z.infer<typeof CopySchema>;\nexport type CopyBundle = z.infer<typeof CopyBundleSchema>;\n"],"names":["WayflyerDocumentSchema","z","PartnerTemplateSchema","GenericOfferSchema","mustContainPlaceholders","placeholders","value","placeholder","CohortMap","schema","LanguageMap","filterCopy","copy","options","language","cohort","documentKeys","normalizedCopy","key","document","filteredDocument","localizedDocument","cohortedDocument","y","p","o","l","u","h","w","d","g","I","f","m","v","r","n","a","i","c","S","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","HttpError","response","url","__publicField","loadAndConfigureCopy","params","partnerId","version","requestUrl","documentResponse","error","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
package/dist/index.es.js CHANGED
@@ -1,55 +1,58 @@
1
- import { z as e } from "zod";
2
- const d = e.object({
3
- version: e.string().min(1),
4
- language: e.string().min(2),
5
- cohort: e.string().min(1)
6
- }), b = d.extend({
7
- partnerName: e.string().trim(),
8
- termsOfServiceTitle: e.string().trim().max(120),
9
- termsAndServiceUrl: e.string().url()
1
+ var P = Object.defineProperty;
2
+ var j = (r, t, e) => t in r ? P(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e;
3
+ var g = (r, t, e) => j(r, typeof t != "symbol" ? t + "" : t, e);
4
+ import { z as n } from "zod";
5
+ const d = n.object({
6
+ version: n.string().min(1),
7
+ language: n.string().min(2),
8
+ cohort: n.string().min(1)
10
9
  }), v = d.extend({
11
- mainText: e.string().min(1).max(150),
12
- bulletPoints: e.array(e.string().min(1)).max(3),
13
- buttonText: e.string().min(1).max(25)
14
- }), u = (r) => (t) => r.every((n) => t.includes(`{${n}}`)), U = (r) => e.record(e.string(), r), m = (r) => e.record(e.string(), U(r)), P = (r, t) => {
15
- const n = (t == null ? void 0 : t.language) ?? "en", i = (t == null ? void 0 : t.cohort) ?? "default", a = Object.keys(r);
10
+ partnerName: n.string().trim(),
11
+ termsOfServiceTitle: n.string().trim().max(120),
12
+ termsAndServiceUrl: n.string().url()
13
+ }), w = d.extend({
14
+ mainText: n.string().min(1).max(150),
15
+ bulletPoints: n.array(n.string().min(1)).max(3),
16
+ buttonText: n.string().min(1).max(25)
17
+ }), y = (r) => (t) => r.every((e) => t.includes(`{${e}}`)), M = (r) => n.record(n.string(), r), l = (r) => n.record(n.string(), M(r)), N = (r, t) => {
18
+ const e = (t == null ? void 0 : t.language) ?? "en", s = (t == null ? void 0 : t.cohort) ?? "default", a = Object.keys(r);
16
19
  let c = {};
17
20
  return a.forEach((o) => {
18
- const s = r[o];
19
- if (s) {
20
- let g;
21
- const y = s[n] ?? s.en, f = y[i] ?? y.default;
22
- if (f ? g = f : g = s.en.default, !g)
21
+ const i = r[o];
22
+ if (i) {
23
+ let u;
24
+ const h = i[e] ?? i.en, x = h[s] ?? h.default;
25
+ if (x ? u = x : u = i.en.default, !u)
23
26
  throw new Error("Cohorted document doesn't exist");
24
27
  c = {
25
28
  ...c,
26
- [o]: g
29
+ [o]: u
27
30
  };
28
31
  }
29
32
  }), c;
30
33
  };
31
- var j = Object.defineProperty, M = (r, t, n) => t in r ? j(r, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : r[t] = n, p = (r, t, n) => M(r, typeof t != "symbol" ? t + "" : t, n);
32
- const D = "https://api.wayflyer.com", N = "https://sandbox-api.wayflyer.com", z = (r) => {
34
+ var $ = Object.defineProperty, z = (r, t, e) => t in r ? $(r, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[t] = e, f = (r, t, e) => z(r, typeof t != "symbol" ? t + "" : t, e);
35
+ const R = "https://api.wayflyer.com", L = "https://sandbox-api.wayflyer.com", G = (r) => {
33
36
  try {
34
37
  return JSON.parse(atob(r.split(".")[1]));
35
38
  } catch {
36
39
  return null;
37
40
  }
38
- }, S = {
41
+ }, p = {
39
42
  "Content-Type": "application/json"
40
- }, x = {
43
+ }, S = {
41
44
  event: "/financing/v1/company/event/",
42
45
  error: "/financing/v1/error/"
43
- }, h = "wf_session_v1", R = 1800 * 1e3, L = 1440 * 60 * 1e3;
44
- class G {
46
+ }, b = "wf_session_v1", k = 1800 * 1e3, B = 1440 * 60 * 1e3;
47
+ class J {
45
48
  getSessionId() {
46
49
  const t = Date.now();
47
- let n = this.loadSession();
48
- return (!n || this.isSessionExpired(n, t)) && (n = this.mintNewSession(t)), n.lastActivity = t, this.saveSession(n), n.sessionId;
50
+ let e = this.loadSession();
51
+ return (!e || this.isSessionExpired(e, t)) && (e = this.mintNewSession(t)), e.lastActivity = t, this.saveSession(e), e.sessionId;
49
52
  }
50
- isSessionExpired(t, n) {
51
- const i = n - t.lastActivity > R, a = n - t.createdAt > L;
52
- return i || a;
53
+ isSessionExpired(t, e) {
54
+ const s = e - t.lastActivity > k, a = e - t.createdAt > B;
55
+ return s || a;
53
56
  }
54
57
  mintNewSession(t) {
55
58
  return {
@@ -60,7 +63,7 @@ class G {
60
63
  }
61
64
  loadSession() {
62
65
  try {
63
- const t = sessionStorage.getItem(h);
66
+ const t = sessionStorage.getItem(b);
64
67
  return t ? JSON.parse(t) : null;
65
68
  } catch {
66
69
  return null;
@@ -68,15 +71,15 @@ class G {
68
71
  }
69
72
  saveSession(t) {
70
73
  try {
71
- sessionStorage.setItem(h, JSON.stringify(t));
74
+ sessionStorage.setItem(b, JSON.stringify(t));
72
75
  } catch {
73
76
  console.warn("Failed to save session context");
74
77
  }
75
78
  }
76
79
  }
77
- class l {
78
- constructor(t, n) {
79
- p(this, "baseUrl", null), p(this, "sessionManager"), this.companyToken = t, this.baseUrl = n ? N : D, this.sessionManager = new G();
80
+ const T = class m {
81
+ constructor(t, e) {
82
+ f(this, "baseUrl", null), f(this, "sessionManager"), this.companyToken = t, this.baseUrl = e ? L : R, this.sessionManager = new J();
80
83
  }
81
84
  static getGlobalInstance() {
82
85
  return window.WayflyerLogger || null;
@@ -84,32 +87,33 @@ class l {
84
87
  static setGlobalInstance(t) {
85
88
  window.WayflyerLogger = t;
86
89
  }
87
- static initialize(t, n) {
88
- l.getGlobalInstance() && console.warn("Logger re-initialized");
89
- const i = new l(t, n == null ? void 0 : n.isSandbox);
90
- l.setGlobalInstance(i);
90
+ static initialize(t, e) {
91
+ m.getGlobalInstance() && console.warn("Logger re-initialized");
92
+ const s = new m(t, e == null ? void 0 : e.isSandbox);
93
+ m.setGlobalInstance(s);
91
94
  }
92
95
  static getMandatoryProperties(t) {
93
- const n = z(t), [i, a] = (n == null ? void 0 : n.sub.split("|")) || [], c = n == null ? void 0 : n.user_id;
94
- return { partnerId: i, companyId: a, userId: c };
96
+ const e = G(t), [s, a] = (e == null ? void 0 : e.sub.split("|")) || [], c = e == null ? void 0 : e.user_id;
97
+ return { partnerId: s, companyId: a, userId: c };
95
98
  }
96
99
  static getInstance() {
97
- const t = l.getGlobalInstance();
100
+ const t = m.getGlobalInstance();
98
101
  if (!t)
99
102
  throw new Error("Logger not initialized. Call initialize() first.");
100
103
  return t;
101
104
  }
102
- static async logEvent(t, n) {
103
- const i = l.getInstance(), a = i.sessionManager.getSessionId(), c = {
104
- ...S,
105
- Authorization: `Bearer ${i.companyToken}`,
105
+ static async logEvent(t, e) {
106
+ if (this.isDevEnvironment) return;
107
+ const s = m.getInstance(), a = s.sessionManager.getSessionId(), c = {
108
+ ...p,
109
+ Authorization: `Bearer ${s.companyToken}`,
106
110
  "X-Session-ID": a
107
111
  };
108
112
  try {
109
113
  const o = {
110
- ...l.getMandatoryProperties(i.companyToken),
111
- ...n
112
- }, s = await fetch(i.baseUrl + x.event, {
114
+ ...m.getMandatoryProperties(s.companyToken),
115
+ ...e
116
+ }, i = await fetch(s.baseUrl + S.event, {
113
117
  method: "POST",
114
118
  headers: c,
115
119
  body: JSON.stringify({
@@ -118,22 +122,26 @@ class l {
118
122
  properties: o
119
123
  })
120
124
  });
121
- if (s.status === 200)
122
- return await s.json();
125
+ if (i.status === 200)
126
+ return await i.json();
123
127
  } catch (o) {
124
128
  console.error("Failed to log event", o);
125
129
  }
126
130
  }
127
- static async logError(t, n) {
128
- const i = l.getInstance(), a = i.sessionManager.getSessionId(), c = {
129
- ...S,
131
+ static async logError(t, e) {
132
+ if (this.isDevEnvironment) {
133
+ console.error(t);
134
+ return;
135
+ }
136
+ const s = m.getInstance(), a = s.sessionManager.getSessionId(), c = {
137
+ ...p,
130
138
  "X-Session-ID": a
131
139
  };
132
140
  try {
133
141
  const o = {
134
- ...l.getMandatoryProperties(i.companyToken),
135
- ...n
136
- }, s = await fetch(i.baseUrl + x.error, {
142
+ ...m.getMandatoryProperties(s.companyToken),
143
+ ...e
144
+ }, i = await fetch(s.baseUrl + S.error, {
137
145
  method: "POST",
138
146
  headers: c,
139
147
  body: JSON.stringify({
@@ -142,99 +150,114 @@ class l {
142
150
  properties: o
143
151
  })
144
152
  });
145
- if (s.status === 200)
146
- return await s.json();
153
+ if (i.status === 200)
154
+ return await i.json();
147
155
  } catch (o) {
148
156
  console.warn("Failed to log error", o);
149
157
  }
150
158
  }
159
+ };
160
+ f(T, "isDevEnvironment", !1);
161
+ let K = T;
162
+ const q = "https://partner-assets.wayflyer.com", F = "https://partner-assets-sandbox.wayflyer.com";
163
+ class W extends Error {
164
+ constructor(e, s) {
165
+ super(`Request to ${s} failed with status ${e.status} ${e.statusText}`);
166
+ g(this, "status");
167
+ g(this, "statusText");
168
+ g(this, "url");
169
+ this.name = "HttpError", this.status = e.status, this.statusText = e.statusText, this.url = s;
170
+ }
151
171
  }
152
- const $ = "https://partner-assets.wayflyer.com", B = "https://partner-assets-sandbox.wayflyer.com", k = async (r) => {
153
- const t = r.partnerId, n = r == null ? void 0 : r.version, i = r == null ? void 0 : r.options, o = `${(i == null ? void 0 : i.isSandbox) ? B : $}/${t}/copy/${n}/copy.json`;
172
+ const H = async (r) => {
173
+ const t = r.partnerId, e = r == null ? void 0 : r.version, s = r == null ? void 0 : r.options, o = `${(s == null ? void 0 : s.isSandbox) ? F : q}/${t}/copy/${e}/copy.json`;
154
174
  try {
155
- const g = await (await fetch(o)).json();
156
- return P(g, i);
157
- } catch (s) {
158
- throw l.logError(`Error in partner copy loading: ${t}`), s;
175
+ const i = await fetch(o);
176
+ if (!i.ok)
177
+ throw new W(i, o);
178
+ const u = await i.json();
179
+ return N(u, s);
180
+ } catch (i) {
181
+ throw K.logError(`Error in partner copy loading: ${i}`), i;
159
182
  }
160
- }, w = d.extend({
161
- mainText: e.string().trim().min(1).max(160).refine(u(["amount"]), {
183
+ }, I = d.extend({
184
+ mainText: n.string().trim().min(1).max(160).refine(y(["amount"]), {
162
185
  message: "mainText must include {amount}"
163
186
  }),
164
- bulletPoints: e.array(e.string().min(1)).max(3),
165
- buttonText: e.string().min(1).max(25)
166
- }), T = d.extend({
167
- imageUrl: e.string().trim().url(),
168
- title: e.string().trim().min(1),
169
- descriptions: e.array(
170
- e.object({
171
- title: e.string().trim().min(1),
172
- description: e.string().trim().min(1)
187
+ bulletPoints: n.array(n.string().min(1)).max(3),
188
+ buttonText: n.string().min(1).max(25)
189
+ }), A = d.extend({
190
+ imageUrl: n.string().trim().url(),
191
+ title: n.string().trim().min(1),
192
+ descriptions: n.array(
193
+ n.object({
194
+ title: n.string().trim().min(1),
195
+ description: n.string().trim().min(1)
173
196
  })
174
197
  ).length(3),
175
- buttons: e.object({
176
- accept: e.string().trim().min(1),
177
- close: e.string().trim().min(1)
198
+ buttons: n.object({
199
+ accept: n.string().trim().min(1),
200
+ close: n.string().trim().min(1)
178
201
  }),
179
- termsAndConditions: e.string().trim().min(1).refine(u(["termsUrl"]), {
202
+ termsAndConditions: n.string().trim().min(1).refine(y(["termsUrl"]), {
180
203
  message: "termsUrl is required"
181
204
  })
182
- }), I = d.extend({
183
- mainText: e.string().min(1).max(150),
184
- buttonText: e.string().min(1).max(25)
185
- }), A = d.extend({
186
- mainText: e.string().trim().min(1).max(160).refine(u(["amount"]), {
205
+ }), O = d.extend({
206
+ mainText: n.string().min(1).max(150),
207
+ buttonText: n.string().min(1).max(25)
208
+ }), E = d.extend({
209
+ mainText: n.string().trim().min(1).max(160).refine(y(["amount"]), {
187
210
  message: "mainText must include {amount}"
188
211
  }),
189
- bulletPoints: e.array(e.string().min(1)).max(3),
190
- buttonText: e.string().min(1).max(25)
191
- }), O = d.extend({
192
- mainText: e.string().min(1).max(150),
193
- buttonText: e.string().min(1).max(25)
212
+ bulletPoints: n.array(n.string().min(1)).max(3),
213
+ buttonText: n.string().min(1).max(25)
194
214
  }), C = d.extend({
195
- mainText: e.string().min(1).max(150),
196
- buttonText: e.string().min(1).max(25)
197
- }), E = d.extend({
198
- mainText: e.string().min(1).max(150),
199
- buttonText: e.string().min(1).max(25)
200
- }), K = e.object({
201
- genericOffer: m(v),
202
- indicativeOffer: m(w),
203
- consentModal: m(T),
204
- completeApplication: m(I),
205
- completeKyc: m(O),
206
- signContract: m(C),
207
- selectOffer: m(A),
208
- provideAdditionalInfo: m(E),
209
- partnerTemplate: m(b).optional()
210
- }), F = e.object({
211
- genericOffer: v,
212
- indicativeOffer: w,
213
- consentModal: T,
214
- completeApplication: I,
215
- completeKyc: O,
216
- signContract: C,
217
- selectOffer: A,
218
- provideAdditionalInfo: E,
219
- partnerTemplate: b.optional()
215
+ mainText: n.string().min(1).max(150),
216
+ buttonText: n.string().min(1).max(25)
217
+ }), U = d.extend({
218
+ mainText: n.string().min(1).max(150),
219
+ buttonText: n.string().min(1).max(25)
220
+ }), D = d.extend({
221
+ mainText: n.string().min(1).max(150),
222
+ buttonText: n.string().min(1).max(25)
223
+ }), Q = n.object({
224
+ genericOffer: l(w),
225
+ indicativeOffer: l(I),
226
+ consentModal: l(A),
227
+ completeApplication: l(O),
228
+ completeKyc: l(C),
229
+ signContract: l(U),
230
+ selectOffer: l(E),
231
+ provideAdditionalInfo: l(D),
232
+ partnerTemplate: l(v).optional()
233
+ }), V = n.object({
234
+ genericOffer: w,
235
+ indicativeOffer: I,
236
+ consentModal: A,
237
+ completeApplication: O,
238
+ completeKyc: C,
239
+ signContract: U,
240
+ selectOffer: E,
241
+ provideAdditionalInfo: D,
242
+ partnerTemplate: v.optional()
220
243
  });
221
244
  export {
222
- U as CohortMap,
223
- I as CompleteApplicationSchema,
224
- O as CompleteKycSchema,
225
- T as ConsentModalSchema,
226
- K as CopyBundleSchema,
227
- F as CopySchema,
228
- v as GenericOfferSchema,
229
- w as IndicativeOfferSchema,
230
- m as LanguageMap,
231
- b as PartnerTemplateSchema,
232
- E as ProvideAdditionalInfoSchema,
233
- A as SelectOfferSchema,
234
- C as SignContractSchema,
245
+ M as CohortMap,
246
+ O as CompleteApplicationSchema,
247
+ C as CompleteKycSchema,
248
+ A as ConsentModalSchema,
249
+ Q as CopyBundleSchema,
250
+ V as CopySchema,
251
+ w as GenericOfferSchema,
252
+ I as IndicativeOfferSchema,
253
+ l as LanguageMap,
254
+ v as PartnerTemplateSchema,
255
+ D as ProvideAdditionalInfoSchema,
256
+ E as SelectOfferSchema,
257
+ U as SignContractSchema,
235
258
  d as WayflyerDocumentSchema,
236
- P as filterCopy,
237
- k as loadAndConfigureCopy,
238
- u as mustContainPlaceholders
259
+ N as filterCopy,
260
+ H as loadAndConfigureCopy,
261
+ y as mustContainPlaceholders
239
262
  };
240
263
  //# sourceMappingURL=index.es.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.es.js","sources":["../src/schemas/wayflyerDocument.ts","../src/schemas/partnerTemplate.ts","../src/schemas/genericOffer.ts","../src/utils/validators.ts","../src/utils/normalizers.ts","../src/utils/filterCopy.ts","../../logger/dist/index.es.js","../src/config/urls.ts","../src/utils/loadCopy.ts","../src/schemas/indicativeOffer.ts","../src/schemas/consentModal.ts","../src/schemas/completeApplication.ts","../src/schemas/selectOffer.ts","../src/schemas/completeKyc.ts","../src/schemas/signContract.ts","../src/schemas/provideAdditionalInfo.ts","../src/schemas/copyBundle.ts"],"sourcesContent":["import { z } from 'zod';\n\nexport const WayflyerDocumentSchema = z.object({\n version: z.string().min(1),\n language: z.string().min(2),\n cohort: z.string().min(1),\n});\nexport type WayflyerDocument = z.infer<typeof WayflyerDocumentSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const PartnerTemplateSchema = WayflyerDocumentSchema.extend({\n partnerName: z.string().trim(),\n termsOfServiceTitle: z.string().trim().max(120),\n termsAndServiceUrl: z.string().url(),\n});\nexport type PartnerTemplate = z.infer<typeof PartnerTemplateSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const GenericOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type GenericOffer = z.infer<typeof GenericOfferSchema>;\n","export const mustContainPlaceholders = (placeholders: string[]) => {\n return (value: string) => placeholders.every((placeholder) => value.includes(`{${placeholder}}`));\n};\n","import { z } from 'zod';\n\nexport const CohortMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), schema);\nexport const LanguageMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), CohortMap(schema));\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype FilterCopy = (copy: CopyBundle, options?: Options) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n const cohort = options?.cohort ?? 'default';\n const documentKeys = Object.keys(copy) as Array<keyof typeof copy>;\n let normalizedCopy = {};\n\n documentKeys.forEach((key) => {\n const document = copy[key];\n\n if (document) {\n let filteredDocument;\n const localizedDocument = document[language] ?? document.en;\n const cohortedDocument = localizedDocument[cohort] ?? localizedDocument.default;\n\n if (!cohortedDocument) {\n filteredDocument = document.en.default;\n } else {\n filteredDocument = cohortedDocument;\n }\n\n if (!filteredDocument) {\n throw new Error(\"Cohorted document doesn't exist\");\n }\n\n normalizedCopy = {\n ...normalizedCopy,\n [key]: filteredDocument,\n };\n }\n });\n\n return normalizedCopy as Copy;\n};\n","var y = Object.defineProperty;\nvar p = (o, t, s) => t in o ? y(o, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : o[t] = s;\nvar l = (o, t, s) => p(o, typeof t != \"symbol\" ? t + \"\" : t, s);\nconst g = \"https://api.wayflyer.com\", u = \"https://sandbox-api.wayflyer.com\", w = (o) => {\n try {\n return JSON.parse(atob(o.split(\".\")[1]));\n } catch {\n return null;\n }\n}, d = {\n \"Content-Type\": \"application/json\"\n}, I = {\n event: \"/financing/v1/company/event/\",\n error: \"/financing/v1/error/\"\n}, S = \"wf_session_v1\", h = 1800 * 1e3, f = 1440 * 60 * 1e3;\nclass m {\n getSessionId() {\n const t = Date.now();\n let s = this.loadSession();\n return (!s || this.isSessionExpired(s, t)) && (s = this.mintNewSession(t)), s.lastActivity = t, this.saveSession(s), s.sessionId;\n }\n isSessionExpired(t, s) {\n const e = s - t.lastActivity > h, a = s - t.createdAt > f;\n return e || a;\n }\n mintNewSession(t) {\n return {\n sessionId: crypto.randomUUID(),\n createdAt: t,\n lastActivity: t\n };\n }\n loadSession() {\n try {\n const t = sessionStorage.getItem(S);\n return t ? JSON.parse(t) : null;\n } catch {\n return null;\n }\n }\n saveSession(t) {\n try {\n sessionStorage.setItem(S, JSON.stringify(t));\n } catch {\n console.warn(\"Failed to save session context\");\n }\n }\n}\nclass n {\n constructor(t, s) {\n l(this, \"baseUrl\", null);\n l(this, \"sessionManager\");\n this.companyToken = t, this.baseUrl = s ? u : g, this.sessionManager = new m();\n }\n static getGlobalInstance() {\n return window.WayflyerLogger || null;\n }\n static setGlobalInstance(t) {\n window.WayflyerLogger = t;\n }\n static initialize(t, s) {\n n.getGlobalInstance() && console.warn(\"Logger re-initialized\");\n const e = new n(t, s == null ? void 0 : s.isSandbox);\n n.setGlobalInstance(e);\n }\n static getMandatoryProperties(t) {\n const s = w(t), [e, a] = (s == null ? void 0 : s.sub.split(\"|\")) || [], r = s == null ? void 0 : s.user_id;\n return { partnerId: e, companyId: a, userId: r };\n }\n static getInstance() {\n const t = n.getGlobalInstance();\n if (!t)\n throw new Error(\"Logger not initialized. Call initialize() first.\");\n return t;\n }\n static async logEvent(t, s) {\n const e = n.getInstance(), a = e.sessionManager.getSessionId(), r = {\n ...d,\n Authorization: `Bearer ${e.companyToken}`,\n \"X-Session-ID\": a\n };\n try {\n const i = {\n ...n.getMandatoryProperties(e.companyToken),\n ...s\n }, c = await fetch(e.baseUrl + I.event, {\n method: \"POST\",\n headers: r,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n event_name: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.error(\"Failed to log event\", i);\n }\n }\n static async logError(t, s) {\n const e = n.getInstance(), a = e.sessionManager.getSessionId(), r = {\n ...d,\n \"X-Session-ID\": a\n };\n try {\n const i = {\n ...n.getMandatoryProperties(e.companyToken),\n ...s\n }, c = await fetch(e.baseUrl + I.error, {\n method: \"POST\",\n headers: r,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n message: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.warn(\"Failed to log error\", i);\n }\n }\n}\nexport {\n n as Logger\n};\n","export const PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_PARTNER_ASSETS_BASE_URL;\nexport const SANDBOX_PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL;\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\nimport { Logger } from '@wf-financing/logger';\n\nimport { PARTNER_ASSETS_BASE_URL, SANDBOX_PARTNER_ASSETS_BASE_URL } from '../config';\nimport type { Copy, CopyBundle } from '../schemas';\nimport { filterCopy } from './filterCopy';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: Options;\n};\ntype LoadCopy = (params: LoadCopyParams) => Promise<Copy>;\n\nexport const loadAndConfigureCopy: LoadCopy = async (params) => {\n const partnerId = params.partnerId;\n const version = params?.version;\n const options = params?.options;\n const isSandbox = options?.isSandbox;\n const baseUrl = isSandbox ? SANDBOX_PARTNER_ASSETS_BASE_URL : PARTNER_ASSETS_BASE_URL;\n\n const requestUrl = `${baseUrl}/${partnerId}/copy/${version}/copy.json`;\n\n try {\n const documentResponse = await fetch(requestUrl);\n const document = (await documentResponse.json()) as CopyBundle;\n\n return filterCopy(document, options);\n } catch (err) {\n Logger.logError(`Error in partner copy loading: ${partnerId}`);\n throw err;\n }\n};\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const IndicativeOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type IndicativeOffer = z.infer<typeof IndicativeOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const ConsentModalSchema = WayflyerDocumentSchema.extend({\n imageUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n descriptions: z\n .array(\n z.object({\n title: z.string().trim().min(1),\n description: z.string().trim().min(1),\n }),\n )\n .length(3),\n buttons: z.object({\n accept: z.string().trim().min(1),\n close: z.string().trim().min(1),\n }),\n termsAndConditions: z\n .string()\n .trim()\n .min(1)\n .refine(mustContainPlaceholders(['termsUrl']), {\n message: 'termsUrl is required',\n }),\n});\nexport type ConsentModal = z.infer<typeof ConsentModalSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteApplicationSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteApplication = z.infer<typeof CompleteApplicationSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const SelectOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type SelectOffer = z.infer<typeof SelectOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteKycSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteKyc = z.infer<typeof CompleteKycSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const SignContractSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type SignContract = z.infer<typeof SignContractSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const ProvideAdditionalInfoSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type ProvideAdditionalInfo = z.infer<typeof ProvideAdditionalInfoSchema>;\n","import { z } from 'zod';\n\nimport { LanguageMap } from '../utils';\nimport { GenericOfferSchema } from './genericOffer';\nimport { IndicativeOfferSchema } from './indicativeOffer';\nimport { CompleteApplicationSchema } from './completeApplication.ts';\nimport { CompleteKycSchema } from './completeKyc.ts';\nimport { SelectOfferSchema } from './selectOffer.ts';\nimport { SignContractSchema } from './signContract';\nimport { ConsentModalSchema } from './consentModal';\nimport { PartnerTemplateSchema } from './partnerTemplate';\nimport { ProvideAdditionalInfoSchema } from './provideAdditionalInfo';\n\nexport const CopyBundleSchema = z.object({\n genericOffer: LanguageMap(GenericOfferSchema),\n indicativeOffer: LanguageMap(IndicativeOfferSchema),\n consentModal: LanguageMap(ConsentModalSchema),\n completeApplication: LanguageMap(CompleteApplicationSchema),\n completeKyc: LanguageMap(CompleteKycSchema),\n signContract: LanguageMap(SignContractSchema),\n selectOffer: LanguageMap(SelectOfferSchema),\n provideAdditionalInfo: LanguageMap(ProvideAdditionalInfoSchema),\n partnerTemplate: LanguageMap(PartnerTemplateSchema).optional(),\n});\nexport const CopySchema = z.object({\n genericOffer: GenericOfferSchema,\n indicativeOffer: IndicativeOfferSchema,\n consentModal: ConsentModalSchema,\n completeApplication: CompleteApplicationSchema,\n completeKyc: CompleteKycSchema,\n signContract: SignContractSchema,\n selectOffer: SelectOfferSchema,\n provideAdditionalInfo: ProvideAdditionalInfoSchema,\n partnerTemplate: PartnerTemplateSchema.optional(),\n});\nexport type Copy = z.infer<typeof CopySchema>;\nexport type CopyBundle = z.infer<typeof CopyBundleSchema>;\n"],"names":["WayflyerDocumentSchema","z","PartnerTemplateSchema","GenericOfferSchema","mustContainPlaceholders","placeholders","value","placeholder","CohortMap","schema","LanguageMap","filterCopy","copy","options","language","cohort","documentKeys","normalizedCopy","key","document","filteredDocument","localizedDocument","cohortedDocument","y","p","o","s","l","g","u","w","d","I","S","h","f","m","e","n","r","i","c","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","loadAndConfigureCopy","params","partnerId","version","requestUrl","err","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
1
+ {"version":3,"file":"index.es.js","sources":["../src/schemas/wayflyerDocument.ts","../src/schemas/partnerTemplate.ts","../src/schemas/genericOffer.ts","../src/utils/validators.ts","../src/utils/normalizers.ts","../src/utils/filterCopy.ts","../../logger/dist/index.es.js","../src/config/urls.ts","../src/utils/loadCopy.ts","../src/schemas/indicativeOffer.ts","../src/schemas/consentModal.ts","../src/schemas/completeApplication.ts","../src/schemas/selectOffer.ts","../src/schemas/completeKyc.ts","../src/schemas/signContract.ts","../src/schemas/provideAdditionalInfo.ts","../src/schemas/copyBundle.ts"],"sourcesContent":["import { z } from 'zod';\n\nexport const WayflyerDocumentSchema = z.object({\n version: z.string().min(1),\n language: z.string().min(2),\n cohort: z.string().min(1),\n});\nexport type WayflyerDocument = z.infer<typeof WayflyerDocumentSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const PartnerTemplateSchema = WayflyerDocumentSchema.extend({\n partnerName: z.string().trim(),\n termsOfServiceTitle: z.string().trim().max(120),\n termsAndServiceUrl: z.string().url(),\n});\nexport type PartnerTemplate = z.infer<typeof PartnerTemplateSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const GenericOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type GenericOffer = z.infer<typeof GenericOfferSchema>;\n","export const mustContainPlaceholders = (placeholders: string[]) => {\n return (value: string) => placeholders.every((placeholder) => value.includes(`{${placeholder}}`));\n};\n","import { z } from 'zod';\n\nexport const CohortMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), schema);\nexport const LanguageMap = <T extends z.ZodTypeAny>(schema: T) => z.record(z.string(), CohortMap(schema));\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype FilterCopy = (copy: CopyBundle, options?: Options) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n const cohort = options?.cohort ?? 'default';\n const documentKeys = Object.keys(copy) as Array<keyof typeof copy>;\n let normalizedCopy = {};\n\n documentKeys.forEach((key) => {\n const document = copy[key];\n\n if (document) {\n let filteredDocument;\n const localizedDocument = document[language] ?? document.en;\n const cohortedDocument = localizedDocument[cohort] ?? localizedDocument.default;\n\n if (!cohortedDocument) {\n filteredDocument = document.en.default;\n } else {\n filteredDocument = cohortedDocument;\n }\n\n if (!filteredDocument) {\n throw new Error(\"Cohorted document doesn't exist\");\n }\n\n normalizedCopy = {\n ...normalizedCopy,\n [key]: filteredDocument,\n };\n }\n });\n\n return normalizedCopy as Copy;\n};\n","var y = Object.defineProperty;\nvar p = (o, t, e) => t in o ? y(o, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : o[t] = e;\nvar l = (o, t, e) => p(o, typeof t != \"symbol\" ? t + \"\" : t, e);\nconst u = \"https://api.wayflyer.com\", h = \"https://sandbox-api.wayflyer.com\", w = (o) => {\n try {\n return JSON.parse(atob(o.split(\".\")[1]));\n } catch {\n return null;\n }\n}, d = {\n \"Content-Type\": \"application/json\"\n}, g = {\n event: \"/financing/v1/company/event/\",\n error: \"/financing/v1/error/\"\n}, I = \"wf_session_v1\", f = 1800 * 1e3, m = 1440 * 60 * 1e3;\nclass v {\n getSessionId() {\n const t = Date.now();\n let e = this.loadSession();\n return (!e || this.isSessionExpired(e, t)) && (e = this.mintNewSession(t)), e.lastActivity = t, this.saveSession(e), e.sessionId;\n }\n isSessionExpired(t, e) {\n const s = e - t.lastActivity > f, r = e - t.createdAt > m;\n return s || r;\n }\n mintNewSession(t) {\n return {\n sessionId: crypto.randomUUID(),\n createdAt: t,\n lastActivity: t\n };\n }\n loadSession() {\n try {\n const t = sessionStorage.getItem(I);\n return t ? JSON.parse(t) : null;\n } catch {\n return null;\n }\n }\n saveSession(t) {\n try {\n sessionStorage.setItem(I, JSON.stringify(t));\n } catch {\n console.warn(\"Failed to save session context\");\n }\n }\n}\nconst n = class n {\n constructor(t, e) {\n l(this, \"baseUrl\", null);\n l(this, \"sessionManager\");\n this.companyToken = t, this.baseUrl = e ? h : u, this.sessionManager = new v();\n }\n static getGlobalInstance() {\n return window.WayflyerLogger || null;\n }\n static setGlobalInstance(t) {\n window.WayflyerLogger = t;\n }\n static initialize(t, e) {\n n.getGlobalInstance() && console.warn(\"Logger re-initialized\");\n const s = new n(t, e == null ? void 0 : e.isSandbox);\n n.setGlobalInstance(s);\n }\n static getMandatoryProperties(t) {\n const e = w(t), [s, r] = (e == null ? void 0 : e.sub.split(\"|\")) || [], a = e == null ? void 0 : e.user_id;\n return { partnerId: s, companyId: r, userId: a };\n }\n static getInstance() {\n const t = n.getGlobalInstance();\n if (!t)\n throw new Error(\"Logger not initialized. Call initialize() first.\");\n return t;\n }\n static async logEvent(t, e) {\n if (this.isDevEnvironment) return;\n const s = n.getInstance(), r = s.sessionManager.getSessionId(), a = {\n ...d,\n Authorization: `Bearer ${s.companyToken}`,\n \"X-Session-ID\": r\n };\n try {\n const i = {\n ...n.getMandatoryProperties(s.companyToken),\n ...e\n }, c = await fetch(s.baseUrl + g.event, {\n method: \"POST\",\n headers: a,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n event_name: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.error(\"Failed to log event\", i);\n }\n }\n static async logError(t, e) {\n if (this.isDevEnvironment) {\n console.error(t);\n return;\n }\n const s = n.getInstance(), r = s.sessionManager.getSessionId(), a = {\n ...d,\n \"X-Session-ID\": r\n };\n try {\n const i = {\n ...n.getMandatoryProperties(s.companyToken),\n ...e\n }, c = await fetch(s.baseUrl + g.error, {\n method: \"POST\",\n headers: a,\n body: JSON.stringify({\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n message: t,\n properties: i\n })\n });\n if (c.status === 200)\n return await c.json();\n } catch (i) {\n console.warn(\"Failed to log error\", i);\n }\n }\n};\nl(n, \"isDevEnvironment\", !1);\nlet S = n;\nexport {\n S as Logger\n};\n","export const PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_PARTNER_ASSETS_BASE_URL;\nexport const SANDBOX_PARTNER_ASSETS_BASE_URL =\n import.meta.env?.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL ?? process.env.VITE_SANDBOX_PARTNER_ASSETS_BASE_URL;\n","import { SdkOptionsType } from '@wf-financing/embedded-types';\nimport { Logger } from '@wf-financing/logger';\n\nimport { PARTNER_ASSETS_BASE_URL, SANDBOX_PARTNER_ASSETS_BASE_URL } from '../config';\nimport type { Copy } from '../schemas';\nimport { filterCopy } from './filterCopy';\n\ntype Options = SdkOptionsType & {\n language?: string;\n cohort?: string;\n};\ntype LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: Options;\n};\ntype LoadCopy = (params: LoadCopyParams) => Promise<Copy>;\n\nclass HttpError extends Error {\n status: number;\n statusText: string;\n url: string;\n\n constructor(response: Response, url: string) {\n super(`Request to ${url} failed with status ${response.status} ${response.statusText}`);\n\n this.name = 'HttpError';\n this.status = response.status;\n this.statusText = response.statusText;\n this.url = url;\n }\n}\n\nexport const loadAndConfigureCopy: LoadCopy = async (params) => {\n const partnerId = params.partnerId;\n const version = params?.version;\n const options = params?.options;\n const isSandbox = options?.isSandbox;\n const baseUrl = isSandbox ? SANDBOX_PARTNER_ASSETS_BASE_URL : PARTNER_ASSETS_BASE_URL;\n\n const requestUrl = `${baseUrl}/${partnerId}/copy/${version}/copy.json`;\n\n try {\n const documentResponse = await fetch(requestUrl);\n\n if (!documentResponse.ok) {\n throw new HttpError(documentResponse, requestUrl);\n }\n\n const document = await documentResponse.json();\n\n return filterCopy(document, options);\n } catch (error) {\n Logger.logError(`Error in partner copy loading: ${error}`);\n throw error;\n }\n};\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const IndicativeOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type IndicativeOffer = z.infer<typeof IndicativeOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const ConsentModalSchema = WayflyerDocumentSchema.extend({\n imageUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n descriptions: z\n .array(\n z.object({\n title: z.string().trim().min(1),\n description: z.string().trim().min(1),\n }),\n )\n .length(3),\n buttons: z.object({\n accept: z.string().trim().min(1),\n close: z.string().trim().min(1),\n }),\n termsAndConditions: z\n .string()\n .trim()\n .min(1)\n .refine(mustContainPlaceholders(['termsUrl']), {\n message: 'termsUrl is required',\n }),\n});\nexport type ConsentModal = z.infer<typeof ConsentModalSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteApplicationSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteApplication = z.infer<typeof CompleteApplicationSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\nimport { mustContainPlaceholders } from '../utils';\n\nexport const SelectOfferSchema = WayflyerDocumentSchema.extend({\n mainText: z\n .string()\n .trim()\n .min(1)\n .max(160)\n .refine(mustContainPlaceholders(['amount']), {\n message: 'mainText must include {amount}',\n }),\n bulletPoints: z.array(z.string().min(1)).max(3),\n buttonText: z.string().min(1).max(25),\n});\nexport type SelectOffer = z.infer<typeof SelectOfferSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const CompleteKycSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type CompleteKyc = z.infer<typeof CompleteKycSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const SignContractSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type SignContract = z.infer<typeof SignContractSchema>;\n","import { z } from 'zod';\n\nimport { WayflyerDocumentSchema } from './wayflyerDocument';\n\nexport const ProvideAdditionalInfoSchema = WayflyerDocumentSchema.extend({\n mainText: z.string().min(1).max(150),\n buttonText: z.string().min(1).max(25),\n});\nexport type ProvideAdditionalInfo = z.infer<typeof ProvideAdditionalInfoSchema>;\n","import { z } from 'zod';\n\nimport { LanguageMap } from '../utils';\nimport { GenericOfferSchema } from './genericOffer';\nimport { IndicativeOfferSchema } from './indicativeOffer';\nimport { CompleteApplicationSchema } from './completeApplication.ts';\nimport { CompleteKycSchema } from './completeKyc.ts';\nimport { SelectOfferSchema } from './selectOffer.ts';\nimport { SignContractSchema } from './signContract';\nimport { ConsentModalSchema } from './consentModal';\nimport { PartnerTemplateSchema } from './partnerTemplate';\nimport { ProvideAdditionalInfoSchema } from './provideAdditionalInfo';\n\nexport const CopyBundleSchema = z.object({\n genericOffer: LanguageMap(GenericOfferSchema),\n indicativeOffer: LanguageMap(IndicativeOfferSchema),\n consentModal: LanguageMap(ConsentModalSchema),\n completeApplication: LanguageMap(CompleteApplicationSchema),\n completeKyc: LanguageMap(CompleteKycSchema),\n signContract: LanguageMap(SignContractSchema),\n selectOffer: LanguageMap(SelectOfferSchema),\n provideAdditionalInfo: LanguageMap(ProvideAdditionalInfoSchema),\n partnerTemplate: LanguageMap(PartnerTemplateSchema).optional(),\n});\nexport const CopySchema = z.object({\n genericOffer: GenericOfferSchema,\n indicativeOffer: IndicativeOfferSchema,\n consentModal: ConsentModalSchema,\n completeApplication: CompleteApplicationSchema,\n completeKyc: CompleteKycSchema,\n signContract: SignContractSchema,\n selectOffer: SelectOfferSchema,\n provideAdditionalInfo: ProvideAdditionalInfoSchema,\n partnerTemplate: PartnerTemplateSchema.optional(),\n});\nexport type Copy = z.infer<typeof CopySchema>;\nexport type CopyBundle = z.infer<typeof CopyBundleSchema>;\n"],"names":["WayflyerDocumentSchema","z","PartnerTemplateSchema","GenericOfferSchema","mustContainPlaceholders","placeholders","value","placeholder","CohortMap","schema","LanguageMap","filterCopy","copy","options","language","cohort","documentKeys","normalizedCopy","key","document","filteredDocument","localizedDocument","cohortedDocument","y","p","o","l","u","h","w","d","g","I","f","m","v","r","n","a","i","c","S","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","HttpError","response","url","__publicField","loadAndConfigureCopy","params","partnerId","version","requestUrl","documentResponse","error","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wf-financing/ui-assets",
3
- "version": "0.3.2",
3
+ "version": "0.3.4",
4
4
  "main": "dist/index.cjs.js",
5
5
  "module": "dist/index.es.js",
6
6
  "types": "dist/index.d.ts",
@@ -20,7 +20,7 @@
20
20
  "dependencies": {
21
21
  "zod": "^3.23.8",
22
22
  "@wf-financing/embedded-types": "0.7.1",
23
- "@wf-financing/logger": "1.1.2"
23
+ "@wf-financing/logger": "1.1.3"
24
24
  },
25
25
  "devDependencies": {
26
26
  "dotenv": "^17.2.3"