@wf-financing/ui-assets 0.3.4 → 1.0.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.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +71 -81
- package/dist/index.es.js.map +1 -1
- package/dist/schemas/consentModal.d.ts +9 -39
- package/dist/schemas/copyBundle.d.ts +40 -154
- package/dist/schemas/partnerTemplate.d.ts +3 -9
- package/dist/schemas/selectOffer.d.ts +0 -3
- package/dist/utils/filterCopy.d.ts +2 -6
- package/dist/utils/loadCopy.d.ts +2 -6
- package/package.json +3 -3
- package/dist/types/options.d.ts +0 -5
package/dist/index.cjs.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
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)}),
|
|
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)}),y=m.extend({partnerLogoUrl:n.z.string().trim().url()}),p=m.extend({mainText:n.z.string().min(1).max(150),bulletPoints:n.z.array(n.z.string().min(1)).length(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",o="default",a=Object.keys(r);let c={};return a.forEach(i=>{const s=r[i];if(s){let u;const I=s[e]??s.en,C=I[o]??I.default;if(C?u=C:u=s.en.default,!u)throw new Error("Cohorted document doesn't exist");c={...c,[i]:u}}}),c};var $=Object.defineProperty,N=(r,t,e)=>t in r?$(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,h=(r,t,e)=>N(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}},A={"Content-Type":"application/json"},O={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 o=e-t.lastActivity>B,a=e-t.createdAt>k;return o||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 o=new d(t,e==null?void 0:e.isSandbox);d.setGlobalInstance(o)}static getMandatoryProperties(t){const e=G(t),[o,a]=(e==null?void 0:e.sub.split("|"))||[],c=e==null?void 0:e.user_id;return{partnerId:o,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 o=d.getInstance(),a=o.sessionManager.getSessionId(),c={...A,Authorization:`Bearer ${o.companyToken}`,"X-Session-ID":a};try{const i={...d.getMandatoryProperties(o.companyToken),...e},s=await fetch(o.baseUrl+O.event,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),event_name:t,properties:i})});if(s.status===200)return await s.json()}catch(i){console.error("Failed to log event",i)}}static async logError(t,e){if(this.isDevEnvironment){console.error(t);return}const o=d.getInstance(),a=o.sessionManager.getSessionId(),c={...A,"X-Session-ID":a};try{const i={...d.getMandatoryProperties(o.companyToken),...e},s=await fetch(o.baseUrl+O.error,{method:"POST",headers:c,body:JSON.stringify({timestamp:new Date().toISOString(),message:t,properties:i})});if(s.status===200)return await s.json()}catch(i){console.warn("Failed to log error",i)}}};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,o){super(`Request to ${o} 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=o}}const X=async r=>{const t=r.partnerId,e=r==null?void 0:r.version,o=r==null?void 0:r.options,i=`${(o==null?void 0:o.isSandbox)?W:q}/${t}/copy/${e}/copy.json`;try{const s=await fetch(i);if(!s.ok)throw new F(s,i);const u=await s.json();return M(u,o)}catch(s){const u=navigator.userAgent;throw K.logError(`Error in partner copy loading from ${i} by userAgent: ${u}: ${s}`),s}},S=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)).length(3),buttonText:n.z.string().min(1).max(25)}),x=m.extend({logoUrl:n.z.string().trim().url(),title:n.z.string().trim().min(1),bulletPoints:n.z.array(n.z.string().min(1)).length(3),button:n.z.string().trim().min(1),termsAndConditions:n.z.string().trim().min(1).refine(f(["termsUrl"]),{message:"termsUrl is required"})}),b=m.extend({mainText:n.z.string().min(1).max(150),buttonText:n.z.string().min(1).max(25)}),v=m.extend({mainText:n.z.string().trim().min(1).max(160).refine(f(["amount"]),{message:"mainText must include {amount}"}),buttonText:n.z.string().min(1).max(25)}),z=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(p),indicativeOffer:l(S),consentModal:l(x),completeApplication:l(b),completeKyc:l(z),signContract:l(T),selectOffer:l(v),provideAdditionalInfo:l(w),partnerTemplate:l(y).optional()}),H=n.z.object({genericOffer:p,indicativeOffer:S,consentModal:x,completeApplication:b,completeKyc:z,signContract:T,selectOffer:v,provideAdditionalInfo:w,partnerTemplate:y.optional()});exports.CohortMap=P;exports.CompleteApplicationSchema=b;exports.CompleteKycSchema=z;exports.ConsentModalSchema=x;exports.CopyBundleSchema=_;exports.CopySchema=H;exports.GenericOfferSchema=p;exports.IndicativeOfferSchema=S;exports.LanguageMap=l;exports.PartnerTemplateSchema=y;exports.ProvideAdditionalInfoSchema=w;exports.SelectOfferSchema=v;exports.SignContractSchema=T;exports.WayflyerDocumentSchema=m;exports.filterCopy=M;exports.loadAndConfigureCopy=X;exports.mustContainPlaceholders=f;
|
|
2
2
|
//# sourceMappingURL=index.cjs.js.map
|
package/dist/index.cjs.js.map
CHANGED
|
@@ -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, 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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"}
|
|
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 partnerLogoUrl: z.string().trim().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)).length(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 { UiSdkOptions } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype FilterCopy = (copy: CopyBundle, options?: UiSdkOptions) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n // TODO: Unblock after cohort selection becomes available for SDK users\n // const cohort = options?.cohort ?? 'default';\n const 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 { UiSdkOptions } 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 LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: UiSdkOptions;\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 const userAgent = navigator.userAgent;\n\n Logger.logError(`Error in partner copy loading from ${requestUrl} by userAgent: ${userAgent}: ${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)).length(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 logoUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n bulletPoints: z.array(z.string().min(1)).length(3),\n button: z.string().trim().min(1),\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 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","s","r","n","a","c","S","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","HttpError","response","url","__publicField","loadAndConfigureCopy","params","partnerId","version","requestUrl","documentResponse","error","userAgent","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
|
package/dist/index.es.js
CHANGED
|
@@ -1,44 +1,42 @@
|
|
|
1
1
|
var P = Object.defineProperty;
|
|
2
|
-
var
|
|
3
|
-
var g = (
|
|
2
|
+
var M = (s, t, e) => t in s ? P(s, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[t] = e;
|
|
3
|
+
var g = (s, t, e) => M(s, typeof t != "symbol" ? t + "" : t, e);
|
|
4
4
|
import { z as n } from "zod";
|
|
5
5
|
const d = n.object({
|
|
6
6
|
version: n.string().min(1),
|
|
7
7
|
language: n.string().min(2),
|
|
8
8
|
cohort: n.string().min(1)
|
|
9
9
|
}), v = d.extend({
|
|
10
|
-
|
|
11
|
-
termsOfServiceTitle: n.string().trim().max(120),
|
|
12
|
-
termsAndServiceUrl: n.string().url()
|
|
10
|
+
partnerLogoUrl: n.string().trim().url()
|
|
13
11
|
}), w = d.extend({
|
|
14
12
|
mainText: n.string().min(1).max(150),
|
|
15
|
-
bulletPoints: n.array(n.string().min(1)).
|
|
13
|
+
bulletPoints: n.array(n.string().min(1)).length(3),
|
|
16
14
|
buttonText: n.string().min(1).max(25)
|
|
17
|
-
}), y = (
|
|
18
|
-
const e = (t == null ? void 0 : t.language) ?? "en",
|
|
15
|
+
}), y = (s) => (t) => s.every((e) => t.includes(`{${e}}`)), $ = (s) => n.record(n.string(), s), l = (s) => n.record(n.string(), $(s)), j = (s, t) => {
|
|
16
|
+
const e = (t == null ? void 0 : t.language) ?? "en", r = "default", a = Object.keys(s);
|
|
19
17
|
let c = {};
|
|
20
|
-
return a.forEach((
|
|
21
|
-
const
|
|
22
|
-
if (
|
|
18
|
+
return a.forEach((i) => {
|
|
19
|
+
const o = s[i];
|
|
20
|
+
if (o) {
|
|
23
21
|
let u;
|
|
24
|
-
const h =
|
|
25
|
-
if (
|
|
22
|
+
const h = o[e] ?? o.en, p = h[r] ?? h.default;
|
|
23
|
+
if (p ? u = p : u = o.en.default, !u)
|
|
26
24
|
throw new Error("Cohorted document doesn't exist");
|
|
27
25
|
c = {
|
|
28
26
|
...c,
|
|
29
|
-
[
|
|
27
|
+
[i]: u
|
|
30
28
|
};
|
|
31
29
|
}
|
|
32
30
|
}), c;
|
|
33
31
|
};
|
|
34
|
-
var
|
|
35
|
-
const
|
|
32
|
+
var N = Object.defineProperty, z = (s, t, e) => t in s ? N(s, t, { enumerable: !0, configurable: !0, writable: !0, value: e }) : s[t] = e, f = (s, t, e) => z(s, typeof t != "symbol" ? t + "" : t, e);
|
|
33
|
+
const L = "https://api.wayflyer.com", R = "https://sandbox-api.wayflyer.com", G = (s) => {
|
|
36
34
|
try {
|
|
37
|
-
return JSON.parse(atob(
|
|
35
|
+
return JSON.parse(atob(s.split(".")[1]));
|
|
38
36
|
} catch {
|
|
39
37
|
return null;
|
|
40
38
|
}
|
|
41
|
-
},
|
|
39
|
+
}, x = {
|
|
42
40
|
"Content-Type": "application/json"
|
|
43
41
|
}, S = {
|
|
44
42
|
event: "/financing/v1/company/event/",
|
|
@@ -51,8 +49,8 @@ class J {
|
|
|
51
49
|
return (!e || this.isSessionExpired(e, t)) && (e = this.mintNewSession(t)), e.lastActivity = t, this.saveSession(e), e.sessionId;
|
|
52
50
|
}
|
|
53
51
|
isSessionExpired(t, e) {
|
|
54
|
-
const
|
|
55
|
-
return
|
|
52
|
+
const r = e - t.lastActivity > k, a = e - t.createdAt > B;
|
|
53
|
+
return r || a;
|
|
56
54
|
}
|
|
57
55
|
mintNewSession(t) {
|
|
58
56
|
return {
|
|
@@ -79,7 +77,7 @@ class J {
|
|
|
79
77
|
}
|
|
80
78
|
const T = class m {
|
|
81
79
|
constructor(t, e) {
|
|
82
|
-
f(this, "baseUrl", null), f(this, "sessionManager"), this.companyToken = t, this.baseUrl = e ?
|
|
80
|
+
f(this, "baseUrl", null), f(this, "sessionManager"), this.companyToken = t, this.baseUrl = e ? R : L, this.sessionManager = new J();
|
|
83
81
|
}
|
|
84
82
|
static getGlobalInstance() {
|
|
85
83
|
return window.WayflyerLogger || null;
|
|
@@ -89,12 +87,12 @@ const T = class m {
|
|
|
89
87
|
}
|
|
90
88
|
static initialize(t, e) {
|
|
91
89
|
m.getGlobalInstance() && console.warn("Logger re-initialized");
|
|
92
|
-
const
|
|
93
|
-
m.setGlobalInstance(
|
|
90
|
+
const r = new m(t, e == null ? void 0 : e.isSandbox);
|
|
91
|
+
m.setGlobalInstance(r);
|
|
94
92
|
}
|
|
95
93
|
static getMandatoryProperties(t) {
|
|
96
|
-
const e = G(t), [
|
|
97
|
-
return { partnerId:
|
|
94
|
+
const e = G(t), [r, a] = (e == null ? void 0 : e.sub.split("|")) || [], c = e == null ? void 0 : e.user_id;
|
|
95
|
+
return { partnerId: r, companyId: a, userId: c };
|
|
98
96
|
}
|
|
99
97
|
static getInstance() {
|
|
100
98
|
const t = m.getGlobalInstance();
|
|
@@ -104,28 +102,28 @@ const T = class m {
|
|
|
104
102
|
}
|
|
105
103
|
static async logEvent(t, e) {
|
|
106
104
|
if (this.isDevEnvironment) return;
|
|
107
|
-
const
|
|
108
|
-
...
|
|
109
|
-
Authorization: `Bearer ${
|
|
105
|
+
const r = m.getInstance(), a = r.sessionManager.getSessionId(), c = {
|
|
106
|
+
...x,
|
|
107
|
+
Authorization: `Bearer ${r.companyToken}`,
|
|
110
108
|
"X-Session-ID": a
|
|
111
109
|
};
|
|
112
110
|
try {
|
|
113
|
-
const
|
|
114
|
-
...m.getMandatoryProperties(
|
|
111
|
+
const i = {
|
|
112
|
+
...m.getMandatoryProperties(r.companyToken),
|
|
115
113
|
...e
|
|
116
|
-
},
|
|
114
|
+
}, o = await fetch(r.baseUrl + S.event, {
|
|
117
115
|
method: "POST",
|
|
118
116
|
headers: c,
|
|
119
117
|
body: JSON.stringify({
|
|
120
118
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
121
119
|
event_name: t,
|
|
122
|
-
properties:
|
|
120
|
+
properties: i
|
|
123
121
|
})
|
|
124
122
|
});
|
|
125
|
-
if (
|
|
126
|
-
return await
|
|
127
|
-
} catch (
|
|
128
|
-
console.error("Failed to log event",
|
|
123
|
+
if (o.status === 200)
|
|
124
|
+
return await o.json();
|
|
125
|
+
} catch (i) {
|
|
126
|
+
console.error("Failed to log event", i);
|
|
129
127
|
}
|
|
130
128
|
}
|
|
131
129
|
static async logError(t, e) {
|
|
@@ -133,27 +131,27 @@ const T = class m {
|
|
|
133
131
|
console.error(t);
|
|
134
132
|
return;
|
|
135
133
|
}
|
|
136
|
-
const
|
|
137
|
-
...
|
|
134
|
+
const r = m.getInstance(), a = r.sessionManager.getSessionId(), c = {
|
|
135
|
+
...x,
|
|
138
136
|
"X-Session-ID": a
|
|
139
137
|
};
|
|
140
138
|
try {
|
|
141
|
-
const
|
|
142
|
-
...m.getMandatoryProperties(
|
|
139
|
+
const i = {
|
|
140
|
+
...m.getMandatoryProperties(r.companyToken),
|
|
143
141
|
...e
|
|
144
|
-
},
|
|
142
|
+
}, o = await fetch(r.baseUrl + S.error, {
|
|
145
143
|
method: "POST",
|
|
146
144
|
headers: c,
|
|
147
145
|
body: JSON.stringify({
|
|
148
146
|
timestamp: (/* @__PURE__ */ new Date()).toISOString(),
|
|
149
147
|
message: t,
|
|
150
|
-
properties:
|
|
148
|
+
properties: i
|
|
151
149
|
})
|
|
152
150
|
});
|
|
153
|
-
if (
|
|
154
|
-
return await
|
|
155
|
-
} catch (
|
|
156
|
-
console.warn("Failed to log error",
|
|
151
|
+
if (o.status === 200)
|
|
152
|
+
return await o.json();
|
|
153
|
+
} catch (i) {
|
|
154
|
+
console.warn("Failed to log error", i);
|
|
157
155
|
}
|
|
158
156
|
}
|
|
159
157
|
};
|
|
@@ -161,55 +159,47 @@ f(T, "isDevEnvironment", !1);
|
|
|
161
159
|
let K = T;
|
|
162
160
|
const q = "https://partner-assets.wayflyer.com", F = "https://partner-assets-sandbox.wayflyer.com";
|
|
163
161
|
class W extends Error {
|
|
164
|
-
constructor(e,
|
|
165
|
-
super(`Request to ${
|
|
162
|
+
constructor(e, r) {
|
|
163
|
+
super(`Request to ${r} failed with status ${e.status} ${e.statusText}`);
|
|
166
164
|
g(this, "status");
|
|
167
165
|
g(this, "statusText");
|
|
168
166
|
g(this, "url");
|
|
169
|
-
this.name = "HttpError", this.status = e.status, this.statusText = e.statusText, this.url =
|
|
167
|
+
this.name = "HttpError", this.status = e.status, this.statusText = e.statusText, this.url = r;
|
|
170
168
|
}
|
|
171
169
|
}
|
|
172
|
-
const H = async (
|
|
173
|
-
const t =
|
|
170
|
+
const H = async (s) => {
|
|
171
|
+
const t = s.partnerId, e = s == null ? void 0 : s.version, r = s == null ? void 0 : s.options, i = `${(r == null ? void 0 : r.isSandbox) ? F : q}/${t}/copy/${e}/copy.json`;
|
|
174
172
|
try {
|
|
175
|
-
const
|
|
176
|
-
if (!
|
|
177
|
-
throw new W(
|
|
178
|
-
const u = await
|
|
179
|
-
return
|
|
180
|
-
} catch (
|
|
181
|
-
|
|
173
|
+
const o = await fetch(i);
|
|
174
|
+
if (!o.ok)
|
|
175
|
+
throw new W(o, i);
|
|
176
|
+
const u = await o.json();
|
|
177
|
+
return j(u, r);
|
|
178
|
+
} catch (o) {
|
|
179
|
+
const u = navigator.userAgent;
|
|
180
|
+
throw K.logError(`Error in partner copy loading from ${i} by userAgent: ${u}: ${o}`), o;
|
|
182
181
|
}
|
|
183
182
|
}, I = d.extend({
|
|
184
183
|
mainText: n.string().trim().min(1).max(160).refine(y(["amount"]), {
|
|
185
184
|
message: "mainText must include {amount}"
|
|
186
185
|
}),
|
|
187
|
-
bulletPoints: n.array(n.string().min(1)).
|
|
186
|
+
bulletPoints: n.array(n.string().min(1)).length(3),
|
|
188
187
|
buttonText: n.string().min(1).max(25)
|
|
189
188
|
}), A = d.extend({
|
|
190
|
-
|
|
189
|
+
logoUrl: n.string().trim().url(),
|
|
191
190
|
title: n.string().trim().min(1),
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
title: n.string().trim().min(1),
|
|
195
|
-
description: n.string().trim().min(1)
|
|
196
|
-
})
|
|
197
|
-
).length(3),
|
|
198
|
-
buttons: n.object({
|
|
199
|
-
accept: n.string().trim().min(1),
|
|
200
|
-
close: n.string().trim().min(1)
|
|
201
|
-
}),
|
|
191
|
+
bulletPoints: n.array(n.string().min(1)).length(3),
|
|
192
|
+
button: n.string().trim().min(1),
|
|
202
193
|
termsAndConditions: n.string().trim().min(1).refine(y(["termsUrl"]), {
|
|
203
194
|
message: "termsUrl is required"
|
|
204
195
|
})
|
|
205
|
-
}),
|
|
196
|
+
}), E = d.extend({
|
|
206
197
|
mainText: n.string().min(1).max(150),
|
|
207
198
|
buttonText: n.string().min(1).max(25)
|
|
208
|
-
}),
|
|
199
|
+
}), O = d.extend({
|
|
209
200
|
mainText: n.string().trim().min(1).max(160).refine(y(["amount"]), {
|
|
210
201
|
message: "mainText must include {amount}"
|
|
211
202
|
}),
|
|
212
|
-
bulletPoints: n.array(n.string().min(1)).max(3),
|
|
213
203
|
buttonText: n.string().min(1).max(25)
|
|
214
204
|
}), C = d.extend({
|
|
215
205
|
mainText: n.string().min(1).max(150),
|
|
@@ -224,26 +214,26 @@ const H = async (r) => {
|
|
|
224
214
|
genericOffer: l(w),
|
|
225
215
|
indicativeOffer: l(I),
|
|
226
216
|
consentModal: l(A),
|
|
227
|
-
completeApplication: l(
|
|
217
|
+
completeApplication: l(E),
|
|
228
218
|
completeKyc: l(C),
|
|
229
219
|
signContract: l(U),
|
|
230
|
-
selectOffer: l(
|
|
220
|
+
selectOffer: l(O),
|
|
231
221
|
provideAdditionalInfo: l(D),
|
|
232
222
|
partnerTemplate: l(v).optional()
|
|
233
223
|
}), V = n.object({
|
|
234
224
|
genericOffer: w,
|
|
235
225
|
indicativeOffer: I,
|
|
236
226
|
consentModal: A,
|
|
237
|
-
completeApplication:
|
|
227
|
+
completeApplication: E,
|
|
238
228
|
completeKyc: C,
|
|
239
229
|
signContract: U,
|
|
240
|
-
selectOffer:
|
|
230
|
+
selectOffer: O,
|
|
241
231
|
provideAdditionalInfo: D,
|
|
242
232
|
partnerTemplate: v.optional()
|
|
243
233
|
});
|
|
244
234
|
export {
|
|
245
|
-
|
|
246
|
-
|
|
235
|
+
$ as CohortMap,
|
|
236
|
+
E as CompleteApplicationSchema,
|
|
247
237
|
C as CompleteKycSchema,
|
|
248
238
|
A as ConsentModalSchema,
|
|
249
239
|
Q as CopyBundleSchema,
|
|
@@ -253,10 +243,10 @@ export {
|
|
|
253
243
|
l as LanguageMap,
|
|
254
244
|
v as PartnerTemplateSchema,
|
|
255
245
|
D as ProvideAdditionalInfoSchema,
|
|
256
|
-
|
|
246
|
+
O as SelectOfferSchema,
|
|
257
247
|
U as SignContractSchema,
|
|
258
248
|
d as WayflyerDocumentSchema,
|
|
259
|
-
|
|
249
|
+
j as filterCopy,
|
|
260
250
|
H as loadAndConfigureCopy,
|
|
261
251
|
y as mustContainPlaceholders
|
|
262
252
|
};
|
package/dist/index.es.js.map
CHANGED
|
@@ -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, 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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"}
|
|
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 partnerLogoUrl: z.string().trim().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)).length(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 { UiSdkOptions } from '@wf-financing/embedded-types';\n\nimport type { CopyBundle, Copy } from '../schemas';\n\ntype FilterCopy = (copy: CopyBundle, options?: UiSdkOptions) => Copy;\n\nexport const filterCopy: FilterCopy = (copy, options) => {\n const language = options?.language ?? 'en';\n // TODO: Unblock after cohort selection becomes available for SDK users\n // const cohort = options?.cohort ?? 'default';\n const 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 { UiSdkOptions } 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 LoadCopyParams = {\n partnerId: string;\n companyId?: string;\n version?: string;\n options?: UiSdkOptions;\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 const userAgent = navigator.userAgent;\n\n Logger.logError(`Error in partner copy loading from ${requestUrl} by userAgent: ${userAgent}: ${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)).length(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 logoUrl: z.string().trim().url(),\n title: z.string().trim().min(1),\n bulletPoints: z.array(z.string().min(1)).length(3),\n button: z.string().trim().min(1),\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 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","s","r","n","a","c","S","PARTNER_ASSETS_BASE_URL","SANDBOX_PARTNER_ASSETS_BASE_URL","HttpError","response","url","__publicField","loadAndConfigureCopy","params","partnerId","version","requestUrl","documentResponse","error","userAgent","Logger","IndicativeOfferSchema","ConsentModalSchema","CompleteApplicationSchema","SelectOfferSchema","CompleteKycSchema","SignContractSchema","ProvideAdditionalInfoSchema","CopyBundleSchema","CopySchema"],"mappings":"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"}
|
|
@@ -5,58 +5,28 @@ export declare const ConsentModalSchema: z.ZodObject<{
|
|
|
5
5
|
language: z.ZodString;
|
|
6
6
|
cohort: z.ZodString;
|
|
7
7
|
} & {
|
|
8
|
-
|
|
8
|
+
logoUrl: z.ZodString;
|
|
9
9
|
title: z.ZodString;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
description: z.ZodString;
|
|
13
|
-
}, "strip", z.ZodTypeAny, {
|
|
14
|
-
title: string;
|
|
15
|
-
description: string;
|
|
16
|
-
}, {
|
|
17
|
-
title: string;
|
|
18
|
-
description: string;
|
|
19
|
-
}>, "many">;
|
|
20
|
-
buttons: z.ZodObject<{
|
|
21
|
-
accept: z.ZodString;
|
|
22
|
-
close: z.ZodString;
|
|
23
|
-
}, "strip", z.ZodTypeAny, {
|
|
24
|
-
accept: string;
|
|
25
|
-
close: string;
|
|
26
|
-
}, {
|
|
27
|
-
accept: string;
|
|
28
|
-
close: string;
|
|
29
|
-
}>;
|
|
10
|
+
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
11
|
+
button: z.ZodString;
|
|
30
12
|
termsAndConditions: z.ZodEffects<z.ZodString, string, string>;
|
|
31
13
|
}, "strip", z.ZodTypeAny, {
|
|
32
14
|
version: string;
|
|
33
15
|
language: string;
|
|
34
16
|
cohort: string;
|
|
35
|
-
|
|
17
|
+
bulletPoints: string[];
|
|
18
|
+
logoUrl: string;
|
|
36
19
|
title: string;
|
|
37
|
-
|
|
38
|
-
title: string;
|
|
39
|
-
description: string;
|
|
40
|
-
}[];
|
|
41
|
-
buttons: {
|
|
42
|
-
accept: string;
|
|
43
|
-
close: string;
|
|
44
|
-
};
|
|
20
|
+
button: string;
|
|
45
21
|
termsAndConditions: string;
|
|
46
22
|
}, {
|
|
47
23
|
version: string;
|
|
48
24
|
language: string;
|
|
49
25
|
cohort: string;
|
|
50
|
-
|
|
26
|
+
bulletPoints: string[];
|
|
27
|
+
logoUrl: string;
|
|
51
28
|
title: string;
|
|
52
|
-
|
|
53
|
-
title: string;
|
|
54
|
-
description: string;
|
|
55
|
-
}[];
|
|
56
|
-
buttons: {
|
|
57
|
-
accept: string;
|
|
58
|
-
close: string;
|
|
59
|
-
};
|
|
29
|
+
button: string;
|
|
60
30
|
termsAndConditions: string;
|
|
61
31
|
}>;
|
|
62
32
|
export type ConsentModal = z.infer<typeof ConsentModalSchema>;
|
|
@@ -52,58 +52,28 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
52
52
|
language: z.ZodString;
|
|
53
53
|
cohort: z.ZodString;
|
|
54
54
|
} & {
|
|
55
|
-
|
|
55
|
+
logoUrl: z.ZodString;
|
|
56
56
|
title: z.ZodString;
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
description: z.ZodString;
|
|
60
|
-
}, "strip", z.ZodTypeAny, {
|
|
61
|
-
title: string;
|
|
62
|
-
description: string;
|
|
63
|
-
}, {
|
|
64
|
-
title: string;
|
|
65
|
-
description: string;
|
|
66
|
-
}>, "many">;
|
|
67
|
-
buttons: z.ZodObject<{
|
|
68
|
-
accept: z.ZodString;
|
|
69
|
-
close: z.ZodString;
|
|
70
|
-
}, "strip", z.ZodTypeAny, {
|
|
71
|
-
accept: string;
|
|
72
|
-
close: string;
|
|
73
|
-
}, {
|
|
74
|
-
accept: string;
|
|
75
|
-
close: string;
|
|
76
|
-
}>;
|
|
57
|
+
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
58
|
+
button: z.ZodString;
|
|
77
59
|
termsAndConditions: z.ZodEffects<z.ZodString, string, string>;
|
|
78
60
|
}, "strip", z.ZodTypeAny, {
|
|
79
61
|
version: string;
|
|
80
62
|
language: string;
|
|
81
63
|
cohort: string;
|
|
82
|
-
|
|
64
|
+
bulletPoints: string[];
|
|
65
|
+
logoUrl: string;
|
|
83
66
|
title: string;
|
|
84
|
-
|
|
85
|
-
title: string;
|
|
86
|
-
description: string;
|
|
87
|
-
}[];
|
|
88
|
-
buttons: {
|
|
89
|
-
accept: string;
|
|
90
|
-
close: string;
|
|
91
|
-
};
|
|
67
|
+
button: string;
|
|
92
68
|
termsAndConditions: string;
|
|
93
69
|
}, {
|
|
94
70
|
version: string;
|
|
95
71
|
language: string;
|
|
96
72
|
cohort: string;
|
|
97
|
-
|
|
73
|
+
bulletPoints: string[];
|
|
74
|
+
logoUrl: string;
|
|
98
75
|
title: string;
|
|
99
|
-
|
|
100
|
-
title: string;
|
|
101
|
-
description: string;
|
|
102
|
-
}[];
|
|
103
|
-
buttons: {
|
|
104
|
-
accept: string;
|
|
105
|
-
close: string;
|
|
106
|
-
};
|
|
76
|
+
button: string;
|
|
107
77
|
termsAndConditions: string;
|
|
108
78
|
}>>>;
|
|
109
79
|
completeApplication: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -172,21 +142,18 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
172
142
|
cohort: z.ZodString;
|
|
173
143
|
} & {
|
|
174
144
|
mainText: z.ZodEffects<z.ZodString, string, string>;
|
|
175
|
-
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
176
145
|
buttonText: z.ZodString;
|
|
177
146
|
}, "strip", z.ZodTypeAny, {
|
|
178
147
|
version: string;
|
|
179
148
|
language: string;
|
|
180
149
|
cohort: string;
|
|
181
150
|
mainText: string;
|
|
182
|
-
bulletPoints: string[];
|
|
183
151
|
buttonText: string;
|
|
184
152
|
}, {
|
|
185
153
|
version: string;
|
|
186
154
|
language: string;
|
|
187
155
|
cohort: string;
|
|
188
156
|
mainText: string;
|
|
189
|
-
bulletPoints: string[];
|
|
190
157
|
buttonText: string;
|
|
191
158
|
}>>>;
|
|
192
159
|
provideAdditionalInfo: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
@@ -214,23 +181,17 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
214
181
|
language: z.ZodString;
|
|
215
182
|
cohort: z.ZodString;
|
|
216
183
|
} & {
|
|
217
|
-
|
|
218
|
-
termsOfServiceTitle: z.ZodString;
|
|
219
|
-
termsAndServiceUrl: z.ZodString;
|
|
184
|
+
partnerLogoUrl: z.ZodString;
|
|
220
185
|
}, "strip", z.ZodTypeAny, {
|
|
221
186
|
version: string;
|
|
222
187
|
language: string;
|
|
223
188
|
cohort: string;
|
|
224
|
-
|
|
225
|
-
termsOfServiceTitle: string;
|
|
226
|
-
termsAndServiceUrl: string;
|
|
189
|
+
partnerLogoUrl: string;
|
|
227
190
|
}, {
|
|
228
191
|
version: string;
|
|
229
192
|
language: string;
|
|
230
193
|
cohort: string;
|
|
231
|
-
|
|
232
|
-
termsOfServiceTitle: string;
|
|
233
|
-
termsAndServiceUrl: string;
|
|
194
|
+
partnerLogoUrl: string;
|
|
234
195
|
}>>>>;
|
|
235
196
|
}, "strip", z.ZodTypeAny, {
|
|
236
197
|
genericOffer: Record<string, Record<string, {
|
|
@@ -253,16 +214,10 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
253
214
|
version: string;
|
|
254
215
|
language: string;
|
|
255
216
|
cohort: string;
|
|
256
|
-
|
|
217
|
+
bulletPoints: string[];
|
|
218
|
+
logoUrl: string;
|
|
257
219
|
title: string;
|
|
258
|
-
|
|
259
|
-
title: string;
|
|
260
|
-
description: string;
|
|
261
|
-
}[];
|
|
262
|
-
buttons: {
|
|
263
|
-
accept: string;
|
|
264
|
-
close: string;
|
|
265
|
-
};
|
|
220
|
+
button: string;
|
|
266
221
|
termsAndConditions: string;
|
|
267
222
|
}>>;
|
|
268
223
|
completeApplication: Record<string, Record<string, {
|
|
@@ -291,7 +246,6 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
291
246
|
language: string;
|
|
292
247
|
cohort: string;
|
|
293
248
|
mainText: string;
|
|
294
|
-
bulletPoints: string[];
|
|
295
249
|
buttonText: string;
|
|
296
250
|
}>>;
|
|
297
251
|
provideAdditionalInfo: Record<string, Record<string, {
|
|
@@ -305,9 +259,7 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
305
259
|
version: string;
|
|
306
260
|
language: string;
|
|
307
261
|
cohort: string;
|
|
308
|
-
|
|
309
|
-
termsOfServiceTitle: string;
|
|
310
|
-
termsAndServiceUrl: string;
|
|
262
|
+
partnerLogoUrl: string;
|
|
311
263
|
}>> | undefined;
|
|
312
264
|
}, {
|
|
313
265
|
genericOffer: Record<string, Record<string, {
|
|
@@ -330,16 +282,10 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
330
282
|
version: string;
|
|
331
283
|
language: string;
|
|
332
284
|
cohort: string;
|
|
333
|
-
|
|
285
|
+
bulletPoints: string[];
|
|
286
|
+
logoUrl: string;
|
|
334
287
|
title: string;
|
|
335
|
-
|
|
336
|
-
title: string;
|
|
337
|
-
description: string;
|
|
338
|
-
}[];
|
|
339
|
-
buttons: {
|
|
340
|
-
accept: string;
|
|
341
|
-
close: string;
|
|
342
|
-
};
|
|
288
|
+
button: string;
|
|
343
289
|
termsAndConditions: string;
|
|
344
290
|
}>>;
|
|
345
291
|
completeApplication: Record<string, Record<string, {
|
|
@@ -368,7 +314,6 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
368
314
|
language: string;
|
|
369
315
|
cohort: string;
|
|
370
316
|
mainText: string;
|
|
371
|
-
bulletPoints: string[];
|
|
372
317
|
buttonText: string;
|
|
373
318
|
}>>;
|
|
374
319
|
provideAdditionalInfo: Record<string, Record<string, {
|
|
@@ -382,9 +327,7 @@ export declare const CopyBundleSchema: z.ZodObject<{
|
|
|
382
327
|
version: string;
|
|
383
328
|
language: string;
|
|
384
329
|
cohort: string;
|
|
385
|
-
|
|
386
|
-
termsOfServiceTitle: string;
|
|
387
|
-
termsAndServiceUrl: string;
|
|
330
|
+
partnerLogoUrl: string;
|
|
388
331
|
}>> | undefined;
|
|
389
332
|
}>;
|
|
390
333
|
export declare const CopySchema: z.ZodObject<{
|
|
@@ -439,58 +382,28 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
439
382
|
language: z.ZodString;
|
|
440
383
|
cohort: z.ZodString;
|
|
441
384
|
} & {
|
|
442
|
-
|
|
385
|
+
logoUrl: z.ZodString;
|
|
443
386
|
title: z.ZodString;
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
description: z.ZodString;
|
|
447
|
-
}, "strip", z.ZodTypeAny, {
|
|
448
|
-
title: string;
|
|
449
|
-
description: string;
|
|
450
|
-
}, {
|
|
451
|
-
title: string;
|
|
452
|
-
description: string;
|
|
453
|
-
}>, "many">;
|
|
454
|
-
buttons: z.ZodObject<{
|
|
455
|
-
accept: z.ZodString;
|
|
456
|
-
close: z.ZodString;
|
|
457
|
-
}, "strip", z.ZodTypeAny, {
|
|
458
|
-
accept: string;
|
|
459
|
-
close: string;
|
|
460
|
-
}, {
|
|
461
|
-
accept: string;
|
|
462
|
-
close: string;
|
|
463
|
-
}>;
|
|
387
|
+
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
388
|
+
button: z.ZodString;
|
|
464
389
|
termsAndConditions: z.ZodEffects<z.ZodString, string, string>;
|
|
465
390
|
}, "strip", z.ZodTypeAny, {
|
|
466
391
|
version: string;
|
|
467
392
|
language: string;
|
|
468
393
|
cohort: string;
|
|
469
|
-
|
|
394
|
+
bulletPoints: string[];
|
|
395
|
+
logoUrl: string;
|
|
470
396
|
title: string;
|
|
471
|
-
|
|
472
|
-
title: string;
|
|
473
|
-
description: string;
|
|
474
|
-
}[];
|
|
475
|
-
buttons: {
|
|
476
|
-
accept: string;
|
|
477
|
-
close: string;
|
|
478
|
-
};
|
|
397
|
+
button: string;
|
|
479
398
|
termsAndConditions: string;
|
|
480
399
|
}, {
|
|
481
400
|
version: string;
|
|
482
401
|
language: string;
|
|
483
402
|
cohort: string;
|
|
484
|
-
|
|
403
|
+
bulletPoints: string[];
|
|
404
|
+
logoUrl: string;
|
|
485
405
|
title: string;
|
|
486
|
-
|
|
487
|
-
title: string;
|
|
488
|
-
description: string;
|
|
489
|
-
}[];
|
|
490
|
-
buttons: {
|
|
491
|
-
accept: string;
|
|
492
|
-
close: string;
|
|
493
|
-
};
|
|
406
|
+
button: string;
|
|
494
407
|
termsAndConditions: string;
|
|
495
408
|
}>;
|
|
496
409
|
completeApplication: z.ZodObject<{
|
|
@@ -559,21 +472,18 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
559
472
|
cohort: z.ZodString;
|
|
560
473
|
} & {
|
|
561
474
|
mainText: z.ZodEffects<z.ZodString, string, string>;
|
|
562
|
-
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
563
475
|
buttonText: z.ZodString;
|
|
564
476
|
}, "strip", z.ZodTypeAny, {
|
|
565
477
|
version: string;
|
|
566
478
|
language: string;
|
|
567
479
|
cohort: string;
|
|
568
480
|
mainText: string;
|
|
569
|
-
bulletPoints: string[];
|
|
570
481
|
buttonText: string;
|
|
571
482
|
}, {
|
|
572
483
|
version: string;
|
|
573
484
|
language: string;
|
|
574
485
|
cohort: string;
|
|
575
486
|
mainText: string;
|
|
576
|
-
bulletPoints: string[];
|
|
577
487
|
buttonText: string;
|
|
578
488
|
}>;
|
|
579
489
|
provideAdditionalInfo: z.ZodObject<{
|
|
@@ -601,23 +511,17 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
601
511
|
language: z.ZodString;
|
|
602
512
|
cohort: z.ZodString;
|
|
603
513
|
} & {
|
|
604
|
-
|
|
605
|
-
termsOfServiceTitle: z.ZodString;
|
|
606
|
-
termsAndServiceUrl: z.ZodString;
|
|
514
|
+
partnerLogoUrl: z.ZodString;
|
|
607
515
|
}, "strip", z.ZodTypeAny, {
|
|
608
516
|
version: string;
|
|
609
517
|
language: string;
|
|
610
518
|
cohort: string;
|
|
611
|
-
|
|
612
|
-
termsOfServiceTitle: string;
|
|
613
|
-
termsAndServiceUrl: string;
|
|
519
|
+
partnerLogoUrl: string;
|
|
614
520
|
}, {
|
|
615
521
|
version: string;
|
|
616
522
|
language: string;
|
|
617
523
|
cohort: string;
|
|
618
|
-
|
|
619
|
-
termsOfServiceTitle: string;
|
|
620
|
-
termsAndServiceUrl: string;
|
|
524
|
+
partnerLogoUrl: string;
|
|
621
525
|
}>>;
|
|
622
526
|
}, "strip", z.ZodTypeAny, {
|
|
623
527
|
genericOffer: {
|
|
@@ -640,16 +544,10 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
640
544
|
version: string;
|
|
641
545
|
language: string;
|
|
642
546
|
cohort: string;
|
|
643
|
-
|
|
547
|
+
bulletPoints: string[];
|
|
548
|
+
logoUrl: string;
|
|
644
549
|
title: string;
|
|
645
|
-
|
|
646
|
-
title: string;
|
|
647
|
-
description: string;
|
|
648
|
-
}[];
|
|
649
|
-
buttons: {
|
|
650
|
-
accept: string;
|
|
651
|
-
close: string;
|
|
652
|
-
};
|
|
550
|
+
button: string;
|
|
653
551
|
termsAndConditions: string;
|
|
654
552
|
};
|
|
655
553
|
completeApplication: {
|
|
@@ -678,7 +576,6 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
678
576
|
language: string;
|
|
679
577
|
cohort: string;
|
|
680
578
|
mainText: string;
|
|
681
|
-
bulletPoints: string[];
|
|
682
579
|
buttonText: string;
|
|
683
580
|
};
|
|
684
581
|
provideAdditionalInfo: {
|
|
@@ -692,9 +589,7 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
692
589
|
version: string;
|
|
693
590
|
language: string;
|
|
694
591
|
cohort: string;
|
|
695
|
-
|
|
696
|
-
termsOfServiceTitle: string;
|
|
697
|
-
termsAndServiceUrl: string;
|
|
592
|
+
partnerLogoUrl: string;
|
|
698
593
|
} | undefined;
|
|
699
594
|
}, {
|
|
700
595
|
genericOffer: {
|
|
@@ -717,16 +612,10 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
717
612
|
version: string;
|
|
718
613
|
language: string;
|
|
719
614
|
cohort: string;
|
|
720
|
-
|
|
615
|
+
bulletPoints: string[];
|
|
616
|
+
logoUrl: string;
|
|
721
617
|
title: string;
|
|
722
|
-
|
|
723
|
-
title: string;
|
|
724
|
-
description: string;
|
|
725
|
-
}[];
|
|
726
|
-
buttons: {
|
|
727
|
-
accept: string;
|
|
728
|
-
close: string;
|
|
729
|
-
};
|
|
618
|
+
button: string;
|
|
730
619
|
termsAndConditions: string;
|
|
731
620
|
};
|
|
732
621
|
completeApplication: {
|
|
@@ -755,7 +644,6 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
755
644
|
language: string;
|
|
756
645
|
cohort: string;
|
|
757
646
|
mainText: string;
|
|
758
|
-
bulletPoints: string[];
|
|
759
647
|
buttonText: string;
|
|
760
648
|
};
|
|
761
649
|
provideAdditionalInfo: {
|
|
@@ -769,9 +657,7 @@ export declare const CopySchema: z.ZodObject<{
|
|
|
769
657
|
version: string;
|
|
770
658
|
language: string;
|
|
771
659
|
cohort: string;
|
|
772
|
-
|
|
773
|
-
termsOfServiceTitle: string;
|
|
774
|
-
termsAndServiceUrl: string;
|
|
660
|
+
partnerLogoUrl: string;
|
|
775
661
|
} | undefined;
|
|
776
662
|
}>;
|
|
777
663
|
export type Copy = z.infer<typeof CopySchema>;
|
|
@@ -5,22 +5,16 @@ export declare const PartnerTemplateSchema: z.ZodObject<{
|
|
|
5
5
|
language: z.ZodString;
|
|
6
6
|
cohort: z.ZodString;
|
|
7
7
|
} & {
|
|
8
|
-
|
|
9
|
-
termsOfServiceTitle: z.ZodString;
|
|
10
|
-
termsAndServiceUrl: z.ZodString;
|
|
8
|
+
partnerLogoUrl: z.ZodString;
|
|
11
9
|
}, "strip", z.ZodTypeAny, {
|
|
12
10
|
version: string;
|
|
13
11
|
language: string;
|
|
14
12
|
cohort: string;
|
|
15
|
-
|
|
16
|
-
termsOfServiceTitle: string;
|
|
17
|
-
termsAndServiceUrl: string;
|
|
13
|
+
partnerLogoUrl: string;
|
|
18
14
|
}, {
|
|
19
15
|
version: string;
|
|
20
16
|
language: string;
|
|
21
17
|
cohort: string;
|
|
22
|
-
|
|
23
|
-
termsOfServiceTitle: string;
|
|
24
|
-
termsAndServiceUrl: string;
|
|
18
|
+
partnerLogoUrl: string;
|
|
25
19
|
}>;
|
|
26
20
|
export type PartnerTemplate = z.infer<typeof PartnerTemplateSchema>;
|
|
@@ -6,21 +6,18 @@ export declare const SelectOfferSchema: z.ZodObject<{
|
|
|
6
6
|
cohort: z.ZodString;
|
|
7
7
|
} & {
|
|
8
8
|
mainText: z.ZodEffects<z.ZodString, string, string>;
|
|
9
|
-
bulletPoints: z.ZodArray<z.ZodString, "many">;
|
|
10
9
|
buttonText: z.ZodString;
|
|
11
10
|
}, "strip", z.ZodTypeAny, {
|
|
12
11
|
version: string;
|
|
13
12
|
language: string;
|
|
14
13
|
cohort: string;
|
|
15
14
|
mainText: string;
|
|
16
|
-
bulletPoints: string[];
|
|
17
15
|
buttonText: string;
|
|
18
16
|
}, {
|
|
19
17
|
version: string;
|
|
20
18
|
language: string;
|
|
21
19
|
cohort: string;
|
|
22
20
|
mainText: string;
|
|
23
|
-
bulletPoints: string[];
|
|
24
21
|
buttonText: string;
|
|
25
22
|
}>;
|
|
26
23
|
export type SelectOffer = z.infer<typeof SelectOfferSchema>;
|
|
@@ -1,10 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UiSdkOptions } from '@wf-financing/embedded-types';
|
|
2
2
|
import { CopyBundle, Copy } from '../schemas';
|
|
3
3
|
|
|
4
|
-
type
|
|
5
|
-
language?: string;
|
|
6
|
-
cohort?: string;
|
|
7
|
-
};
|
|
8
|
-
type FilterCopy = (copy: CopyBundle, options?: Options) => Copy;
|
|
4
|
+
type FilterCopy = (copy: CopyBundle, options?: UiSdkOptions) => Copy;
|
|
9
5
|
export declare const filterCopy: FilterCopy;
|
|
10
6
|
export {};
|
package/dist/utils/loadCopy.d.ts
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { UiSdkOptions } from '@wf-financing/embedded-types';
|
|
2
2
|
import { Copy } from '../schemas';
|
|
3
3
|
|
|
4
|
-
type Options = SdkOptionsType & {
|
|
5
|
-
language?: string;
|
|
6
|
-
cohort?: string;
|
|
7
|
-
};
|
|
8
4
|
type LoadCopyParams = {
|
|
9
5
|
partnerId: string;
|
|
10
6
|
companyId?: string;
|
|
11
7
|
version?: string;
|
|
12
|
-
options?:
|
|
8
|
+
options?: UiSdkOptions;
|
|
13
9
|
};
|
|
14
10
|
type LoadCopy = (params: LoadCopyParams) => Promise<Copy>;
|
|
15
11
|
export declare const loadAndConfigureCopy: LoadCopy;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wf-financing/ui-assets",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"main": "dist/index.cjs.js",
|
|
5
5
|
"module": "dist/index.es.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
},
|
|
20
20
|
"dependencies": {
|
|
21
21
|
"zod": "^3.23.8",
|
|
22
|
-
"@wf-financing/embedded-types": "0.
|
|
23
|
-
"@wf-financing/logger": "
|
|
22
|
+
"@wf-financing/embedded-types": "1.0.0",
|
|
23
|
+
"@wf-financing/logger": "2.0.0"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"dotenv": "^17.2.3"
|