@onlive.ai/flow-client 0.1.54 → 0.1.55

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/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
2
- "use strict";var b=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var V=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var G=(i,o,e)=>o in i?b(i,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[o]=e;var $=(i,o)=>{for(var e in o)b(i,e,{get:o[e],enumerable:!0})},q=(i,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let r of V(o))!M.call(i,r)&&r!==e&&b(i,r,{get:()=>o[r],enumerable:!(n=U(o,r))||n.enumerable});return i};var B=i=>q(b({},"__esModule",{value:!0}),i);var p=(i,o,e)=>G(i,typeof o!="symbol"?o+"":o,e);var Z={};$(Z,{Action:()=>D,ActionEvent:()=>L,ActionScript:()=>A,ClientOptions:()=>_,DEFAULT_CLIENT_OPTIONS:()=>O,ErrorCode:()=>z,EventType:()=>J,Field:()=>S,Flow:()=>F,FlowClient:()=>v,FlowContext:()=>H,GetStepOptions:()=>g,GetStepTrigger:()=>N,ONLIVE_ANALYTICS_EVENT:()=>x,ONLIVE_FLOW_FORM_NAME:()=>m,PostAction:()=>P,Step:()=>R,StepId:()=>E,TrackingOptionsSchema:()=>d});module.exports=B(Z);var C=require("@onlive.ai/common-121/utils/merge.js");var s=require("@onlive.ai/tracker"),j=require("@onlive.ai/common-121/utils/merge.js"),I=require("@onlive.ai/common-121/utils/browser-preferences.js");var a=require("zod"),m="flow_form",x="onlive-analytics-event",d=a.z.object({enabled:a.z.boolean().default(!1).optional(),data:a.z.custom().optional(),removeExtraneousValues:a.z.boolean().default(!0).optional(),allowBotTraffic:a.z.boolean().default(!1).optional(),adapters:a.z.array(a.z.string()).default([]).optional(),apiUrl:a.z.string().url().optional(),emitters:a.z.object({windowEvent:a.z.boolean().optional(),dataLayer:a.z.boolean().optional(),windowPostMessage:a.z.boolean().optional()}).optional()});var T=class{constructor(o,e,n,r){p(this,"options");p(this,"tracker");p(this,"eventListeners",[]);this.options=d.parse(n),this.tracker=new s.Tracker({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:r}),this.tracker.setBase((0,j.merge)({},{organization_id:o,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:s.Session.id,interaction_id:s.Session.interactionId,extra:{flow_id:e}},this.options.data)),window.addEventListener(x,({detail:c})=>this.emit(c.event,c.data))}getTracker(){return this.tracker}preferences(){return{...(0,I.browserPreferences)(),interactionId:s.Session.interactionId,guestId:s.Session.id}}analyzeRequest(o,e){"currentStepId"in o&&(o.actionId&&this.tracker.send("element_click",{element_label:o.actionId,element_type:"button",form_name:Object.keys(e.fields||{}).length?m:void 0,step_name:o.currentStepId}),e.fields&&this.tracker.send("form_submit",{form_name:m,form_data:e.fields,step_name:o.currentStepId}))}analyzeResponse(o,e){this.tracker.setBase({form_name:m,step_name:e.step.id,step_initial:!("currentStepId"in o)||void 0,step_final:e.step.isFinal,...e.step.result?.tracking}),"currentStepId"in o&&(e.step.result?.pipelines&&e.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),e.step.error&&this.tracker.send("form_error",{form_error:e.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(o,e){this.tracker.send(o,e)}setData(o){this.tracker.setBase(o)}onEvent(o){this.eventListeners.push(o)}emit(o,e){this.eventListeners.forEach(n=>n({event:o,data:e}))}},w=T;var h=require("@onlive.ai/calendar"),t=require("zod");var O={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},E=t.z.string().nonempty(),_=t.z.object({baseUrl:t.z.string().url().nonempty(),flowId:t.z.string().length(24).nonempty(),organizationId:t.z.string().uuid().nonempty(),lang:t.z.string().length(2).nonempty(),tracking:d.optional(),devMode:t.z.boolean().default(!1).optional()}),g=t.z.object({state:t.z.record(t.z.string(),t.z.any()).optional(),fields:t.z.record(t.z.string(),t.z.any()).optional()}),N=t.z.object({currentStepId:t.z.string().nonempty(),actionId:t.z.string().nonempty()}),k=t.z.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),W=t.z.object({name:t.z.string(),value:t.z.string().optional(),icon:t.z.string().optional(),type:t.z.enum(["url","email","phone"]).optional()}),Y=t.z.object({lat:t.z.number().min(-90).max(90),lng:t.z.number().min(-180).max(180),meta:t.z.record(t.z.string(),t.z.any()).optional(),properties:t.z.record(t.z.string(),W).optional()}),K=t.z.object({datetime:t.z.string().datetime(),meta:t.z.record(t.z.string(),t.z.any()).optional()}),u=t.z.union([t.z.string(),t.z.number(),t.z.boolean(),Y,K]),f=t.z.object({content:t.z.object({icon:t.z.string().optional(),url:t.z.string().url().optional(),width:t.z.string().optional(),height:t.z.string().optional(),scale:t.z.number().optional()}).optional(),background:t.z.string().optional(),glyph:t.z.object({color:t.z.string().optional(),url:t.z.string().url().optional(),icon:t.z.string().optional()}).optional(),borderColor:t.z.string().optional(),scale:t.z.number().optional()}),y=t.z.custom(i=>/^\d{4}-\d{2}-\d{2}$/.test(i),{message:"Date must be in 'YYYY-MM-DD' format"}),l=t.z.object({text:t.z.string().optional(),icon:t.z.string().optional()}),S=t.z.object({name:t.z.string().nonempty(),label:t.z.string().optional(),value:t.z.union([u,t.z.array(u)]).optional(),type:k,component:t.z.enum(["input","textarea","select","radio","checkbox","switch","rating","carousel","button","label","map","calendar"]).optional(),disabled:t.z.boolean().optional(),readonly:t.z.boolean().optional(),multiple:t.z.boolean().optional(),placeholder:t.z.string().optional(),options:t.z.array(t.z.object({label:t.z.string().nonempty(),value:u.optional(),image:t.z.string().url().optional(),description:t.z.string().optional(),disabled:t.z.boolean().optional(),attributes:t.z.record(t.z.string(),t.z.any()).optional(),dependsOn:t.z.array(t.z.object({fieldName:t.z.string().nonempty(),value:u.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional()})).optional(),required:t.z.boolean().optional(),configuration:t.z.object({generic:t.z.object({error:t.z.object({icon:t.z.string().optional(),showOn:t.z.enum(["input","blur"]).optional()})}).optional(),input:t.z.object({min:t.z.number().optional(),max:t.z.number().optional(),step:t.z.number().optional(),pattern:t.z.string().refine(i=>{try{return new RegExp(i),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:t.z.number().optional(),maxLength:t.z.number().optional(),exactLength:t.z.number().optional(),prefix:t.z.object({default:l.optional(),success:l.optional(),error:l.optional()}).optional(),suffix:t.z.object({default:l.optional(),success:l.optional(),error:l.optional()}).optional(),clearable:t.z.boolean().optional(),floatingLabel:t.z.boolean().optional()}).optional(),textarea:t.z.object({rows:t.z.number().optional()}).optional(),checkbox:t.z.object({layout:t.z.enum(["horizontal","vertical"])}).optional(),rating:t.z.object({icons:t.z.array(t.z.string()).optional(),color:t.z.string().optional(),precision:t.z.number().optional()}).optional(),carousel:t.z.object({loop:t.z.boolean().optional(),mouseDragging:t.z.boolean().optional(),itemsPerPage:t.z.number().optional(),showArrows:t.z.boolean().optional(),showDots:t.z.boolean().optional(),autoplay:t.z.boolean().optional(),autoplaySpeed:t.z.number().optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional()}).optional(),map:t.z.object({apiKey:t.z.string().optional(),region:t.z.string().length(2).optional(),center:t.z.object({lat:t.z.number().min(-90).max(90),lng:t.z.number().min(-180).max(180)}).optional(),showMap:t.z.enum(["always","on-search","never"]).optional(),zoom:t.z.object({initial:t.z.number().optional(),focus:t.z.number().optional(),max:t.z.number().optional(),min:t.z.number().optional()}).optional(),controls:t.z.object({fullscreen:t.z.boolean().optional(),mapType:t.z.boolean().optional(),zoom:t.z.boolean().optional(),rotate:t.z.boolean().optional(),scale:t.z.boolean().optional(),streetView:t.z.boolean().optional()}).optional(),initialLocations:t.z.number().optional(),maxLocations:t.z.number().optional(),distanceUnit:t.z.enum(["km","mi"]).optional(),distanceFormat:t.z.enum(["short","long"]).optional(),options:t.z.object({show:t.z.enum(["always","on-search","never"]).optional(),component:t.z.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:t.z.string().optional(),detailsLabel:t.z.string().optional()}).optional(),search:t.z.object({value:t.z.string().optional(),button:t.z.object({label:t.z.string().optional(),position:t.z.enum(["inside","outside"]).optional()}).optional(),placeholder:t.z.string().optional(),noResultsText:t.z.string().optional(),autocomplete:t.z.boolean().optional(),clearable:t.z.boolean().optional(),mode:t.z.enum(["address","postcode"]).default("postcode").optional(),locationButton:t.z.object({icon:t.z.string().optional(),position:t.z.enum(["left","right"]).optional()}).optional(),prefix:t.z.object({default:l.optional()}).optional(),suffix:t.z.object({default:l.optional()}).optional(),mappedResults:t.z.object({mapping:t.z.record(t.z.string(),t.z.array(t.z.object({key:t.z.string(),value:t.z.string()})))}).optional()}).optional(),distanceRange:t.z.object({initial:t.z.number().optional(),min:t.z.number().optional(),max:t.z.number().optional(),step:t.z.number().optional()}).optional(),mapRegion:t.z.object({strokeColor:t.z.string().optional(),fillColor:t.z.string().optional(),fillOpacity:t.z.number().optional()}).optional(),locationPin:f.optional(),markerPin:t.z.object({default:f.optional(),hover:f.optional(),selected:f.optional()}).optional(),infoWindow:t.z.object({button:t.z.object({label:t.z.string(),action:t.z.string()}).optional()}).optional()}).optional(),calendar:t.z.object({current:t.z.object({month:t.z.number().min(0).max(11).optional(),year:t.z.number().optional()}).optional(),range:t.z.object({min:y.optional(),max:y.optional(),enabled:t.z.array(y).optional(),disabled:t.z.array(y).optional()}).optional(),time:t.z.object({label:t.z.string().optional(),format:t.z.enum(["12h","24h"]).optional(),component:t.z.enum(["carousel","list"]).optional()}).optional(),api:t.z.object({url:t.z.string().url().nonempty(),organizationId:t.z.string().nonempty(),availability:t.z.object({filters:h.GetAvailabilityFilters,options:h.GetAvailabilityOptions.optional()}).optional()}).optional()}).optional()}).optional(),dependsOn:t.z.array(t.z.object({fieldName:t.z.string().nonempty(),value:u.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional(),dependentBehavior:t.z.enum(["hidden","disabled"]).optional(),customError:t.z.object({required:t.z.string().optional(),invalid:t.z.string().optional(),minLength:t.z.string().optional(),maxLength:t.z.string().optional(),minValue:t.z.string().optional(),maxValue:t.z.string().optional(),mismatch:t.z.string().optional()}).optional()}),A=t.z.object({src:t.z.string().url(),preload:t.z.boolean().optional(),name:t.z.string().nonempty(),function:t.z.string().nonempty(),params:t.z.record(t.z.string(),t.z.any()).optional()}),L=t.z.object({name:t.z.enum(["organization_call","close_panel"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),D=t.z.object({id:t.z.string().nonempty(),type:t.z.enum(["submit","navigate","link","back","dispatcher","script"]),label:t.z.string().nonempty(),variant:t.z.enum(["primary","secondary","success","danger","warning","info"]),url:t.z.string().url().optional(),scripts:A.array().optional(),events:L.array().optional()}),z=t.z.enum(["INVALID_DATA","INVALID_ACTION","STEP_NOT_FOUND","UNKNOWN_ERROR","APPOINTMENT_INVALID_DATA","APPOINTMENT_BUSY_SLOT","APPOINTMENT_OUT_OF_DATE","APPOINTMENT_UNKNOWN_ERROR","LEAD_INVALID_DATA","LEAD_UNKNOWN_ERROR","CONTENT_INVALID_DATA","CONTENT_UNKNOWN_ERROR","CONTACT_INVALID_DATA","CONTACT_UNKNOWN_ERROR","LOST_OPPORTUNITY_INVALID_DATA","LOST_OPPORTUNITY_UNKNOWN_ERROR"]),P=t.z.object({type:t.z.enum(["redirect"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),R=t.z.object({id:t.z.string().nonempty(),title:t.z.string().optional(),description:t.z.string().optional(),stageId:t.z.string().optional(),state:t.z.record(t.z.string(),t.z.any()).optional(),fields:t.z.array(S).optional(),actions:t.z.array(D).optional(),result:t.z.object({postActions:t.z.array(P).optional(),pipelines:t.z.array(t.z.object({name:t.z.string(),data:t.z.object({})})).optional(),tracking:t.z.record(t.z.string(),t.z.any()).optional()}).optional(),error:t.z.object({code:z,message:t.z.string().optional(),fields:t.z.array(t.z.object({name:t.z.string(),type:k,value:t.z.any(),error:t.z.string()})).optional()}).optional(),isFinal:t.z.boolean().optional()}),F=t.z.object({id:t.z.string().length(24).nonempty(),organizationId:t.z.string().uuid().nonempty(),updatedAt:t.z.string().datetime().nonempty(),stages:t.z.array(t.z.object({id:t.z.string().nonempty(),name:t.z.string().nonempty()}))}),H=t.z.object({status:t.z.enum(["ok","error"]),step:R,flow:F}),J=t.z.enum(["track"]);var v=class{constructor(o){p(this,"baseURL");p(this,"headers");p(this,"flowId");p(this,"tracking");let e=(0,C.merge)({},O,_.parse(o));this.flowId=e.flowId,this.baseURL=e.baseUrl,this.headers=new Headers({"Content-Type":"application/json","X-Onlive-Organization-Id":e.organizationId,"X-Lang":e.lang}),e.tracking?.enabled&&(this.tracking=new w(e.organizationId,e.flowId,e.tracking,!!e.devMode))}async request(o,e={}){let n=await fetch(`${this.baseURL}/${o}`,{...e,headers:this.headers});if(!n?.ok)throw new Error(`HTTP error! status: ${n?.status||"unknown"}`);return n.json()}async firstStep(o={}){this.tracking?.analyzeRequest({},o);let e=this.tracking?.preferences(),n=await this.request(`flow/${this.flowId}/first-step`,{method:"POST",body:JSON.stringify(g.parse({...o,state:{preferences:e,...o.state}}))});return this.tracking?.analyzeResponse({},n),n}async getStep(o,e={}){this.tracking?.analyzeRequest({stepId:o},e);let n=this.tracking?.preferences(),r=await this.request(`flow/${this.flowId}/steps/${E.parse(o)}`,{method:"POST",body:JSON.stringify(g.parse({...e,state:{preferences:n,...e.state}}))});return this.tracking?.analyzeResponse({stepId:o},r),r}async nextStep(o,e={}){this.tracking?.analyzeRequest(o,e);let{currentStepId:n,actionId:r}=N.parse(o),c=await this.request(`flow/${this.flowId}/steps/${n}/action/${r}`,{method:"POST",body:JSON.stringify(g.parse(e))});return this.tracking?.analyzeResponse(o,c),c}};0&&(module.exports={Action,ActionEvent,ActionScript,ClientOptions,DEFAULT_CLIENT_OPTIONS,ErrorCode,EventType,Field,Flow,FlowClient,FlowContext,GetStepOptions,GetStepTrigger,ONLIVE_ANALYTICS_EVENT,ONLIVE_FLOW_FORM_NAME,PostAction,Step,StepId,TrackingOptionsSchema});
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
+ "use strict";var b=Object.defineProperty;var U=Object.getOwnPropertyDescriptor;var V=Object.getOwnPropertyNames;var M=Object.prototype.hasOwnProperty;var G=(i,o,e)=>o in i?b(i,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[o]=e;var $=(i,o)=>{for(var e in o)b(i,e,{get:o[e],enumerable:!0})},q=(i,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let r of V(o))!M.call(i,r)&&r!==e&&b(i,r,{get:()=>o[r],enumerable:!(n=U(o,r))||n.enumerable});return i};var B=i=>q(b({},"__esModule",{value:!0}),i);var p=(i,o,e)=>G(i,typeof o!="symbol"?o+"":o,e);var Z={};$(Z,{Action:()=>D,ActionEvent:()=>L,ActionScript:()=>A,ClientOptions:()=>_,DEFAULT_CLIENT_OPTIONS:()=>O,ErrorCode:()=>z,EventType:()=>J,Field:()=>S,Flow:()=>F,FlowClient:()=>v,FlowContext:()=>H,GetStepOptions:()=>g,GetStepTrigger:()=>N,ONLIVE_ANALYTICS_EVENT:()=>x,ONLIVE_FLOW_FORM_NAME:()=>m,PostAction:()=>P,Step:()=>R,StepId:()=>E,TrackingOptionsSchema:()=>d});module.exports=B(Z);var C=require("@onlive.ai/common-121/utils/merge.js");var s=require("@onlive.ai/tracker"),j=require("@onlive.ai/common-121/utils/merge.js"),I=require("@onlive.ai/common-121/utils/browser-preferences.js");var a=require("zod"),m="flow_form",x="onlive-analytics-event",d=a.z.object({enabled:a.z.boolean().default(!1).optional(),data:a.z.custom().optional(),removeExtraneousValues:a.z.boolean().default(!0).optional(),allowBotTraffic:a.z.boolean().default(!1).optional(),adapters:a.z.array(a.z.string()).default([]).optional(),apiUrl:a.z.string().url().optional(),emitters:a.z.object({windowEvent:a.z.boolean().optional(),dataLayer:a.z.boolean().optional(),windowPostMessage:a.z.boolean().optional()}).optional()});var T=class{constructor(o,e,n,r){p(this,"options");p(this,"tracker");p(this,"eventListeners",[]);this.options=d.parse(n),this.tracker=new s.Tracker({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:r}),this.tracker.setBase((0,j.merge)({},{organization_id:o,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:s.Session.id,interaction_id:s.Session.interactionId,extra:{flow_id:e}},this.options.data)),window.addEventListener(x,({detail:c})=>this.emit(c.event,c.data))}getTracker(){return this.tracker}preferences(){return{...(0,I.browserPreferences)(),interactionId:s.Session.interactionId,guestId:s.Session.id}}analyzeRequest(o,e){"currentStepId"in o&&(o.actionId&&this.tracker.send("element_click",{element_label:o.actionId,element_type:"button",form_name:Object.keys(e.fields||{}).length?m:void 0,step_name:o.currentStepId}),e.fields&&this.tracker.send("form_submit",{form_name:m,form_data:e.fields,step_name:o.currentStepId}))}analyzeResponse(o,e){this.tracker.setBase({form_name:m,step_name:e.step.id,step_initial:!("currentStepId"in o)||void 0,step_final:e.step.isFinal,...e.step.result?.tracking}),"currentStepId"in o&&(e.step.result?.pipelines&&e.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),e.step.error&&this.tracker.send("form_error",{form_error:e.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(o,e){this.tracker.send(o,e)}setData(o){this.tracker.setBase(o)}onEvent(o){this.eventListeners.push(o)}emit(o,e){this.eventListeners.forEach(n=>n({event:o,data:e}))}},w=T;var h=require("@onlive.ai/calendar"),t=require("zod");var O={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},E=t.z.string().nonempty(),_=t.z.object({baseUrl:t.z.string().url().nonempty(),flowId:t.z.string().length(24).nonempty(),organizationId:t.z.string().uuid().nonempty(),lang:t.z.string().length(2).nonempty(),tracking:d.optional(),devMode:t.z.boolean().default(!1).optional()}),g=t.z.object({state:t.z.record(t.z.string(),t.z.any()).optional(),fields:t.z.record(t.z.string(),t.z.any()).optional()}),N=t.z.object({currentStepId:t.z.string().nonempty(),actionId:t.z.string().nonempty()}),k=t.z.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),W=t.z.object({name:t.z.string(),value:t.z.string().optional(),icon:t.z.string().optional(),type:t.z.enum(["url","email","phone"]).optional()}),Y=t.z.object({lat:t.z.number().min(-90).max(90),lng:t.z.number().min(-180).max(180),meta:t.z.record(t.z.string(),t.z.any()).optional(),properties:t.z.record(t.z.string(),W).optional()}),K=t.z.object({datetime:t.z.string().datetime(),meta:t.z.record(t.z.string(),t.z.any()).optional()}),u=t.z.union([t.z.string(),t.z.number(),t.z.boolean(),Y,K]),f=t.z.object({content:t.z.object({icon:t.z.string().optional(),url:t.z.string().url().optional(),width:t.z.string().optional(),height:t.z.string().optional(),scale:t.z.number().optional()}).optional(),background:t.z.string().optional(),glyph:t.z.object({color:t.z.string().optional(),url:t.z.string().url().optional(),icon:t.z.string().optional()}).optional(),borderColor:t.z.string().optional(),scale:t.z.number().optional()}),y=t.z.custom(i=>/^\d{4}-\d{2}-\d{2}$/.test(i),{message:"Date must be in 'YYYY-MM-DD' format"}),l=t.z.object({text:t.z.string().optional(),icon:t.z.string().optional()}),S=t.z.object({name:t.z.string().nonempty(),label:t.z.string().optional(),value:t.z.union([u,t.z.array(u)]).optional(),type:k,component:t.z.enum(["input","textarea","select","radio","checkbox","switch","rating","carousel","button","label","map","calendar"]).optional(),disabled:t.z.boolean().optional(),readonly:t.z.boolean().optional(),multiple:t.z.boolean().optional(),placeholder:t.z.string().optional(),options:t.z.array(t.z.object({label:t.z.string().nonempty(),value:u.optional(),image:t.z.string().url().optional(),description:t.z.string().optional(),disabled:t.z.boolean().optional(),attributes:t.z.record(t.z.string(),t.z.any()).optional(),dependsOn:t.z.array(t.z.object({fieldName:t.z.string().nonempty(),value:u.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional()})).optional(),required:t.z.boolean().optional(),configuration:t.z.object({generic:t.z.object({error:t.z.object({icon:t.z.string().optional(),showOn:t.z.enum(["input","blur"]).optional()})}).optional(),input:t.z.object({min:t.z.number().optional(),max:t.z.number().optional(),step:t.z.number().optional(),pattern:t.z.string().refine(i=>{try{return new RegExp(i),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:t.z.number().optional(),maxLength:t.z.number().optional(),exactLength:t.z.number().optional(),prefix:t.z.object({default:l.optional(),success:l.optional(),error:l.optional()}).optional(),suffix:t.z.object({default:l.optional(),success:l.optional(),error:l.optional()}).optional(),clearable:t.z.boolean().optional(),floatingLabel:t.z.boolean().optional()}).optional(),textarea:t.z.object({rows:t.z.number().optional()}).optional(),checkbox:t.z.object({layout:t.z.enum(["horizontal","vertical"])}).optional(),rating:t.z.object({icons:t.z.array(t.z.string()).optional(),color:t.z.string().optional(),precision:t.z.number().optional()}).optional(),carousel:t.z.object({loop:t.z.boolean().optional(),mouseDragging:t.z.boolean().optional(),itemsPerPage:t.z.number().optional(),showArrows:t.z.boolean().optional(),showDots:t.z.boolean().optional(),autoplay:t.z.boolean().optional(),autoplaySpeed:t.z.number().optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional()}).optional(),map:t.z.object({apiKey:t.z.string().optional(),region:t.z.string().length(2).optional(),center:t.z.object({lat:t.z.number().min(-90).max(90),lng:t.z.number().min(-180).max(180)}).optional(),showMap:t.z.enum(["always","on-search","never"]).optional(),zoom:t.z.object({initial:t.z.number().optional(),focus:t.z.number().optional(),max:t.z.number().optional(),min:t.z.number().optional()}).optional(),controls:t.z.object({fullscreen:t.z.boolean().optional(),mapType:t.z.boolean().optional(),zoom:t.z.boolean().optional(),rotate:t.z.boolean().optional(),scale:t.z.boolean().optional(),streetView:t.z.boolean().optional()}).optional(),initialLocations:t.z.number().optional(),maxLocations:t.z.number().optional(),distanceUnit:t.z.enum(["km","mi"]).optional(),distanceFormat:t.z.enum(["short","long"]).optional(),options:t.z.object({show:t.z.enum(["always","on-search","never"]).optional(),component:t.z.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:t.z.string().optional(),detailsLabel:t.z.string().optional()}).optional(),search:t.z.object({enabled:t.z.boolean().optional(),value:t.z.string().optional(),button:t.z.object({label:t.z.string().optional(),position:t.z.enum(["inside","outside"]).optional()}).optional(),placeholder:t.z.string().optional(),noResultsText:t.z.string().optional(),autocomplete:t.z.boolean().optional(),clearable:t.z.boolean().optional(),mode:t.z.enum(["address","postcode"]).default("postcode").optional(),locationButton:t.z.object({icon:t.z.string().optional(),position:t.z.enum(["left","right"]).optional()}).optional(),prefix:t.z.object({default:l.optional()}).optional(),suffix:t.z.object({default:l.optional()}).optional(),mappedResults:t.z.object({mapping:t.z.record(t.z.string(),t.z.array(t.z.object({key:t.z.string(),value:t.z.string()})))}).optional()}).optional(),distanceRange:t.z.object({initial:t.z.number().optional(),min:t.z.number().optional(),max:t.z.number().optional(),step:t.z.number().optional()}).optional(),mapRegion:t.z.object({strokeColor:t.z.string().optional(),fillColor:t.z.string().optional(),fillOpacity:t.z.number().optional()}).optional(),locationPin:f.optional(),markerPin:t.z.object({default:f.optional(),hover:f.optional(),selected:f.optional()}).optional(),infoWindow:t.z.object({button:t.z.object({label:t.z.string(),action:t.z.string()}).optional()}).optional()}).optional(),calendar:t.z.object({current:t.z.object({month:t.z.number().min(0).max(11).optional(),year:t.z.number().optional()}).optional(),range:t.z.object({min:y.optional(),max:y.optional(),enabled:t.z.array(y).optional(),disabled:t.z.array(y).optional()}).optional(),time:t.z.object({label:t.z.string().optional(),format:t.z.enum(["12h","24h"]).optional(),component:t.z.enum(["carousel","list"]).optional()}).optional(),api:t.z.object({url:t.z.string().url().nonempty(),organizationId:t.z.string().nonempty(),availability:t.z.object({filters:h.GetAvailabilityFilters,options:h.GetAvailabilityOptions.optional()}).optional()}).optional()}).optional()}).optional(),dependsOn:t.z.array(t.z.object({fieldName:t.z.string().nonempty(),value:u.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional(),dependentBehavior:t.z.enum(["hidden","disabled"]).optional(),customError:t.z.object({required:t.z.string().optional(),invalid:t.z.string().optional(),minLength:t.z.string().optional(),maxLength:t.z.string().optional(),minValue:t.z.string().optional(),maxValue:t.z.string().optional(),mismatch:t.z.string().optional()}).optional()}),A=t.z.object({src:t.z.string().url(),preload:t.z.boolean().optional(),name:t.z.string().nonempty(),function:t.z.string().nonempty(),params:t.z.record(t.z.string(),t.z.any()).optional()}),L=t.z.object({name:t.z.enum(["organization_call","close_panel"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),D=t.z.object({id:t.z.string().nonempty(),type:t.z.enum(["submit","navigate","link","back","dispatcher","script"]),label:t.z.string().nonempty(),variant:t.z.enum(["primary","secondary","success","danger","warning","info"]),url:t.z.string().url().optional(),scripts:A.array().optional(),events:L.array().optional()}),z=t.z.enum(["INVALID_DATA","INVALID_ACTION","STEP_NOT_FOUND","UNKNOWN_ERROR","APPOINTMENT_INVALID_DATA","APPOINTMENT_BUSY_SLOT","APPOINTMENT_OUT_OF_DATE","APPOINTMENT_UNKNOWN_ERROR","LEAD_INVALID_DATA","LEAD_UNKNOWN_ERROR","CONTENT_INVALID_DATA","CONTENT_UNKNOWN_ERROR","CONTACT_INVALID_DATA","CONTACT_UNKNOWN_ERROR","LOST_OPPORTUNITY_INVALID_DATA","LOST_OPPORTUNITY_UNKNOWN_ERROR"]),P=t.z.object({type:t.z.enum(["redirect"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),R=t.z.object({id:t.z.string().nonempty(),title:t.z.string().optional(),description:t.z.string().optional(),stageId:t.z.string().optional(),state:t.z.record(t.z.string(),t.z.any()).optional(),fields:t.z.array(S).optional(),actions:t.z.array(D).optional(),result:t.z.object({postActions:t.z.array(P).optional(),pipelines:t.z.array(t.z.object({name:t.z.string(),data:t.z.object({})})).optional(),tracking:t.z.record(t.z.string(),t.z.any()).optional()}).optional(),error:t.z.object({code:z,message:t.z.string().optional(),fields:t.z.array(t.z.object({name:t.z.string(),type:k,value:t.z.any(),error:t.z.string()})).optional()}).optional(),isFinal:t.z.boolean().optional()}),F=t.z.object({id:t.z.string().length(24).nonempty(),organizationId:t.z.string().uuid().nonempty(),updatedAt:t.z.string().datetime().nonempty(),stages:t.z.array(t.z.object({id:t.z.string().nonempty(),name:t.z.string().nonempty()}))}),H=t.z.object({status:t.z.enum(["ok","error"]),step:R,flow:F}),J=t.z.enum(["track"]);var v=class{constructor(o){p(this,"baseURL");p(this,"headers");p(this,"flowId");p(this,"tracking");let e=(0,C.merge)({},O,_.parse(o));this.flowId=e.flowId,this.baseURL=e.baseUrl,this.headers=new Headers({"Content-Type":"application/json","X-Onlive-Organization-Id":e.organizationId,"X-Lang":e.lang}),e.tracking?.enabled&&(this.tracking=new w(e.organizationId,e.flowId,e.tracking,!!e.devMode))}async request(o,e={}){let n=await fetch(`${this.baseURL}/${o}`,{...e,headers:this.headers});if(!n?.ok)throw new Error(`HTTP error! status: ${n?.status||"unknown"}`);return n.json()}async firstStep(o={}){this.tracking?.analyzeRequest({},o);let e=this.tracking?.preferences(),n=await this.request(`flow/${this.flowId}/first-step`,{method:"POST",body:JSON.stringify(g.parse({...o,state:{preferences:e,...o.state}}))});return this.tracking?.analyzeResponse({},n),n}async getStep(o,e={}){this.tracking?.analyzeRequest({stepId:o},e);let n=this.tracking?.preferences(),r=await this.request(`flow/${this.flowId}/steps/${E.parse(o)}`,{method:"POST",body:JSON.stringify(g.parse({...e,state:{preferences:n,...e.state}}))});return this.tracking?.analyzeResponse({stepId:o},r),r}async nextStep(o,e={}){this.tracking?.analyzeRequest(o,e);let{currentStepId:n,actionId:r}=N.parse(o),c=await this.request(`flow/${this.flowId}/steps/${n}/action/${r}`,{method:"POST",body:JSON.stringify(g.parse(e))});return this.tracking?.analyzeResponse(o,c),c}};0&&(module.exports={Action,ActionEvent,ActionScript,ClientOptions,DEFAULT_CLIENT_OPTIONS,ErrorCode,EventType,Field,Flow,FlowClient,FlowContext,GetStepOptions,GetStepTrigger,ONLIVE_ANALYTICS_EVENT,ONLIVE_FLOW_FORM_NAME,PostAction,Step,StepId,TrackingOptionsSchema});
package/index.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
2
- var j=Object.defineProperty;var I=(a,e,o)=>e in a?j(a,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[e]=o;var r=(a,e,o)=>I(a,typeof e!="symbol"?e+"":e,o);import{merge as q}from"@onlive.ai/common-121/utils/merge.js";import{Session as u,Tracker as w}from"@onlive.ai/tracker";import{merge as k}from"@onlive.ai/common-121/utils/merge.js";import{browserPreferences as S}from"@onlive.ai/common-121/utils/browser-preferences.js";import{z as i}from"zod";var m="flow_form",v="onlive-analytics-event",d=i.object({enabled:i.boolean().default(!1).optional(),data:i.custom().optional(),removeExtraneousValues:i.boolean().default(!0).optional(),allowBotTraffic:i.boolean().default(!1).optional(),adapters:i.array(i.string()).default([]).optional(),apiUrl:i.string().url().optional(),emitters:i.object({windowEvent:i.boolean().optional(),dataLayer:i.boolean().optional(),windowPostMessage:i.boolean().optional()}).optional()});var y=class{constructor(e,o,n,l){r(this,"options");r(this,"tracker");r(this,"eventListeners",[]);this.options=d.parse(n),this.tracker=new w({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:l}),this.tracker.setBase(k({},{organization_id:e,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:u.id,interaction_id:u.interactionId,extra:{flow_id:o}},this.options.data)),window.addEventListener(v,({detail:s})=>this.emit(s.event,s.data))}getTracker(){return this.tracker}preferences(){return{...S(),interactionId:u.interactionId,guestId:u.id}}analyzeRequest(e,o){"currentStepId"in e&&(e.actionId&&this.tracker.send("element_click",{element_label:e.actionId,element_type:"button",form_name:Object.keys(o.fields||{}).length?m:void 0,step_name:e.currentStepId}),o.fields&&this.tracker.send("form_submit",{form_name:m,form_data:o.fields,step_name:e.currentStepId}))}analyzeResponse(e,o){this.tracker.setBase({form_name:m,step_name:o.step.id,step_initial:!("currentStepId"in e)||void 0,step_final:o.step.isFinal,...o.step.result?.tracking}),"currentStepId"in e&&(o.step.result?.pipelines&&o.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),o.step.error&&this.tracker.send("form_error",{form_error:o.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(e,o){this.tracker.send(e,o)}setData(e){this.tracker.setBase(e)}onEvent(e){this.eventListeners.push(e)}emit(e,o){this.eventListeners.forEach(n=>n({event:e,data:o}))}},x=y;import{GetAvailabilityFilters as A,GetAvailabilityOptions as L}from"@onlive.ai/calendar";import{z as t}from"zod";var T={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},O=t.string().nonempty(),E=t.object({baseUrl:t.string().url().nonempty(),flowId:t.string().length(24).nonempty(),organizationId:t.string().uuid().nonempty(),lang:t.string().length(2).nonempty(),tracking:d.optional(),devMode:t.boolean().default(!1).optional()}),f=t.object({state:t.record(t.string(),t.any()).optional(),fields:t.record(t.string(),t.any()).optional()}),_=t.object({currentStepId:t.string().nonempty(),actionId:t.string().nonempty()}),N=t.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),D=t.object({name:t.string(),value:t.string().optional(),icon:t.string().optional(),type:t.enum(["url","email","phone"]).optional()}),z=t.object({lat:t.number().min(-90).max(90),lng:t.number().min(-180).max(180),meta:t.record(t.string(),t.any()).optional(),properties:t.record(t.string(),D).optional()}),P=t.object({datetime:t.string().datetime(),meta:t.record(t.string(),t.any()).optional()}),c=t.union([t.string(),t.number(),t.boolean(),z,P]),g=t.object({content:t.object({icon:t.string().optional(),url:t.string().url().optional(),width:t.string().optional(),height:t.string().optional(),scale:t.number().optional()}).optional(),background:t.string().optional(),glyph:t.object({color:t.string().optional(),url:t.string().url().optional(),icon:t.string().optional()}).optional(),borderColor:t.string().optional(),scale:t.number().optional()}),b=t.custom(a=>/^\d{4}-\d{2}-\d{2}$/.test(a),{message:"Date must be in 'YYYY-MM-DD' format"}),p=t.object({text:t.string().optional(),icon:t.string().optional()}),R=t.object({name:t.string().nonempty(),label:t.string().optional(),value:t.union([c,t.array(c)]).optional(),type:N,component:t.enum(["input","textarea","select","radio","checkbox","switch","rating","carousel","button","label","map","calendar"]).optional(),disabled:t.boolean().optional(),readonly:t.boolean().optional(),multiple:t.boolean().optional(),placeholder:t.string().optional(),options:t.array(t.object({label:t.string().nonempty(),value:c.optional(),image:t.string().url().optional(),description:t.string().optional(),disabled:t.boolean().optional(),attributes:t.record(t.string(),t.any()).optional(),dependsOn:t.array(t.object({fieldName:t.string().nonempty(),value:c.optional(),operator:t.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional()})).optional(),required:t.boolean().optional(),configuration:t.object({generic:t.object({error:t.object({icon:t.string().optional(),showOn:t.enum(["input","blur"]).optional()})}).optional(),input:t.object({min:t.number().optional(),max:t.number().optional(),step:t.number().optional(),pattern:t.string().refine(a=>{try{return new RegExp(a),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:t.number().optional(),maxLength:t.number().optional(),exactLength:t.number().optional(),prefix:t.object({default:p.optional(),success:p.optional(),error:p.optional()}).optional(),suffix:t.object({default:p.optional(),success:p.optional(),error:p.optional()}).optional(),clearable:t.boolean().optional(),floatingLabel:t.boolean().optional()}).optional(),textarea:t.object({rows:t.number().optional()}).optional(),checkbox:t.object({layout:t.enum(["horizontal","vertical"])}).optional(),rating:t.object({icons:t.array(t.string()).optional(),color:t.string().optional(),precision:t.number().optional()}).optional(),carousel:t.object({loop:t.boolean().optional(),mouseDragging:t.boolean().optional(),itemsPerPage:t.number().optional(),showArrows:t.boolean().optional(),showDots:t.boolean().optional(),autoplay:t.boolean().optional(),autoplaySpeed:t.number().optional(),clickableItems:t.object({actionId:t.string()}).optional()}).optional(),map:t.object({apiKey:t.string().optional(),region:t.string().length(2).optional(),center:t.object({lat:t.number().min(-90).max(90),lng:t.number().min(-180).max(180)}).optional(),showMap:t.enum(["always","on-search","never"]).optional(),zoom:t.object({initial:t.number().optional(),focus:t.number().optional(),max:t.number().optional(),min:t.number().optional()}).optional(),controls:t.object({fullscreen:t.boolean().optional(),mapType:t.boolean().optional(),zoom:t.boolean().optional(),rotate:t.boolean().optional(),scale:t.boolean().optional(),streetView:t.boolean().optional()}).optional(),initialLocations:t.number().optional(),maxLocations:t.number().optional(),distanceUnit:t.enum(["km","mi"]).optional(),distanceFormat:t.enum(["short","long"]).optional(),options:t.object({show:t.enum(["always","on-search","never"]).optional(),component:t.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:t.string().optional(),detailsLabel:t.string().optional()}).optional(),search:t.object({value:t.string().optional(),button:t.object({label:t.string().optional(),position:t.enum(["inside","outside"]).optional()}).optional(),placeholder:t.string().optional(),noResultsText:t.string().optional(),autocomplete:t.boolean().optional(),clearable:t.boolean().optional(),mode:t.enum(["address","postcode"]).default("postcode").optional(),locationButton:t.object({icon:t.string().optional(),position:t.enum(["left","right"]).optional()}).optional(),prefix:t.object({default:p.optional()}).optional(),suffix:t.object({default:p.optional()}).optional(),mappedResults:t.object({mapping:t.record(t.string(),t.array(t.object({key:t.string(),value:t.string()})))}).optional()}).optional(),distanceRange:t.object({initial:t.number().optional(),min:t.number().optional(),max:t.number().optional(),step:t.number().optional()}).optional(),mapRegion:t.object({strokeColor:t.string().optional(),fillColor:t.string().optional(),fillOpacity:t.number().optional()}).optional(),locationPin:g.optional(),markerPin:t.object({default:g.optional(),hover:g.optional(),selected:g.optional()}).optional(),infoWindow:t.object({button:t.object({label:t.string(),action:t.string()}).optional()}).optional()}).optional(),calendar:t.object({current:t.object({month:t.number().min(0).max(11).optional(),year:t.number().optional()}).optional(),range:t.object({min:b.optional(),max:b.optional(),enabled:t.array(b).optional(),disabled:t.array(b).optional()}).optional(),time:t.object({label:t.string().optional(),format:t.enum(["12h","24h"]).optional(),component:t.enum(["carousel","list"]).optional()}).optional(),api:t.object({url:t.string().url().nonempty(),organizationId:t.string().nonempty(),availability:t.object({filters:A,options:L.optional()}).optional()}).optional()}).optional()}).optional(),dependsOn:t.array(t.object({fieldName:t.string().nonempty(),value:c.optional(),operator:t.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional(),dependentBehavior:t.enum(["hidden","disabled"]).optional(),customError:t.object({required:t.string().optional(),invalid:t.string().optional(),minLength:t.string().optional(),maxLength:t.string().optional(),minValue:t.string().optional(),maxValue:t.string().optional(),mismatch:t.string().optional()}).optional()}),F=t.object({src:t.string().url(),preload:t.boolean().optional(),name:t.string().nonempty(),function:t.string().nonempty(),params:t.record(t.string(),t.any()).optional()}),C=t.object({name:t.enum(["organization_call","close_panel"]),params:t.record(t.string(),t.any()).optional()}),U=t.object({id:t.string().nonempty(),type:t.enum(["submit","navigate","link","back","dispatcher","script"]),label:t.string().nonempty(),variant:t.enum(["primary","secondary","success","danger","warning","info"]),url:t.string().url().optional(),scripts:F.array().optional(),events:C.array().optional()}),V=t.enum(["INVALID_DATA","INVALID_ACTION","STEP_NOT_FOUND","UNKNOWN_ERROR","APPOINTMENT_INVALID_DATA","APPOINTMENT_BUSY_SLOT","APPOINTMENT_OUT_OF_DATE","APPOINTMENT_UNKNOWN_ERROR","LEAD_INVALID_DATA","LEAD_UNKNOWN_ERROR","CONTENT_INVALID_DATA","CONTENT_UNKNOWN_ERROR","CONTACT_INVALID_DATA","CONTACT_UNKNOWN_ERROR","LOST_OPPORTUNITY_INVALID_DATA","LOST_OPPORTUNITY_UNKNOWN_ERROR"]),M=t.object({type:t.enum(["redirect"]),params:t.record(t.string(),t.any()).optional()}),G=t.object({id:t.string().nonempty(),title:t.string().optional(),description:t.string().optional(),stageId:t.string().optional(),state:t.record(t.string(),t.any()).optional(),fields:t.array(R).optional(),actions:t.array(U).optional(),result:t.object({postActions:t.array(M).optional(),pipelines:t.array(t.object({name:t.string(),data:t.object({})})).optional(),tracking:t.record(t.string(),t.any()).optional()}).optional(),error:t.object({code:V,message:t.string().optional(),fields:t.array(t.object({name:t.string(),type:N,value:t.any(),error:t.string()})).optional()}).optional(),isFinal:t.boolean().optional()}),$=t.object({id:t.string().length(24).nonempty(),organizationId:t.string().uuid().nonempty(),updatedAt:t.string().datetime().nonempty(),stages:t.array(t.object({id:t.string().nonempty(),name:t.string().nonempty()}))}),pt=t.object({status:t.enum(["ok","error"]),step:G,flow:$}),lt=t.enum(["track"]);var h=class{constructor(e){r(this,"baseURL");r(this,"headers");r(this,"flowId");r(this,"tracking");let o=q({},T,E.parse(e));this.flowId=o.flowId,this.baseURL=o.baseUrl,this.headers=new Headers({"Content-Type":"application/json","X-Onlive-Organization-Id":o.organizationId,"X-Lang":o.lang}),o.tracking?.enabled&&(this.tracking=new x(o.organizationId,o.flowId,o.tracking,!!o.devMode))}async request(e,o={}){let n=await fetch(`${this.baseURL}/${e}`,{...o,headers:this.headers});if(!n?.ok)throw new Error(`HTTP error! status: ${n?.status||"unknown"}`);return n.json()}async firstStep(e={}){this.tracking?.analyzeRequest({},e);let o=this.tracking?.preferences(),n=await this.request(`flow/${this.flowId}/first-step`,{method:"POST",body:JSON.stringify(f.parse({...e,state:{preferences:o,...e.state}}))});return this.tracking?.analyzeResponse({},n),n}async getStep(e,o={}){this.tracking?.analyzeRequest({stepId:e},o);let n=this.tracking?.preferences(),l=await this.request(`flow/${this.flowId}/steps/${O.parse(e)}`,{method:"POST",body:JSON.stringify(f.parse({...o,state:{preferences:n,...o.state}}))});return this.tracking?.analyzeResponse({stepId:e},l),l}async nextStep(e,o={}){this.tracking?.analyzeRequest(e,o);let{currentStepId:n,actionId:l}=_.parse(e),s=await this.request(`flow/${this.flowId}/steps/${n}/action/${l}`,{method:"POST",body:JSON.stringify(f.parse(o))});return this.tracking?.analyzeResponse(e,s),s}};export{U as Action,C as ActionEvent,F as ActionScript,E as ClientOptions,T as DEFAULT_CLIENT_OPTIONS,V as ErrorCode,lt as EventType,R as Field,$ as Flow,h as FlowClient,pt as FlowContext,f as GetStepOptions,_ as GetStepTrigger,v as ONLIVE_ANALYTICS_EVENT,m as ONLIVE_FLOW_FORM_NAME,M as PostAction,G as Step,O as StepId,d as TrackingOptionsSchema};
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
+ var j=Object.defineProperty;var I=(a,e,o)=>e in a?j(a,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):a[e]=o;var r=(a,e,o)=>I(a,typeof e!="symbol"?e+"":e,o);import{merge as q}from"@onlive.ai/common-121/utils/merge.js";import{Session as u,Tracker as w}from"@onlive.ai/tracker";import{merge as k}from"@onlive.ai/common-121/utils/merge.js";import{browserPreferences as S}from"@onlive.ai/common-121/utils/browser-preferences.js";import{z as i}from"zod";var m="flow_form",v="onlive-analytics-event",d=i.object({enabled:i.boolean().default(!1).optional(),data:i.custom().optional(),removeExtraneousValues:i.boolean().default(!0).optional(),allowBotTraffic:i.boolean().default(!1).optional(),adapters:i.array(i.string()).default([]).optional(),apiUrl:i.string().url().optional(),emitters:i.object({windowEvent:i.boolean().optional(),dataLayer:i.boolean().optional(),windowPostMessage:i.boolean().optional()}).optional()});var y=class{constructor(e,o,n,l){r(this,"options");r(this,"tracker");r(this,"eventListeners",[]);this.options=d.parse(n),this.tracker=new w({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:l}),this.tracker.setBase(k({},{organization_id:e,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:u.id,interaction_id:u.interactionId,extra:{flow_id:o}},this.options.data)),window.addEventListener(v,({detail:s})=>this.emit(s.event,s.data))}getTracker(){return this.tracker}preferences(){return{...S(),interactionId:u.interactionId,guestId:u.id}}analyzeRequest(e,o){"currentStepId"in e&&(e.actionId&&this.tracker.send("element_click",{element_label:e.actionId,element_type:"button",form_name:Object.keys(o.fields||{}).length?m:void 0,step_name:e.currentStepId}),o.fields&&this.tracker.send("form_submit",{form_name:m,form_data:o.fields,step_name:e.currentStepId}))}analyzeResponse(e,o){this.tracker.setBase({form_name:m,step_name:o.step.id,step_initial:!("currentStepId"in e)||void 0,step_final:o.step.isFinal,...o.step.result?.tracking}),"currentStepId"in e&&(o.step.result?.pipelines&&o.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),o.step.error&&this.tracker.send("form_error",{form_error:o.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(e,o){this.tracker.send(e,o)}setData(e){this.tracker.setBase(e)}onEvent(e){this.eventListeners.push(e)}emit(e,o){this.eventListeners.forEach(n=>n({event:e,data:o}))}},x=y;import{GetAvailabilityFilters as A,GetAvailabilityOptions as L}from"@onlive.ai/calendar";import{z as t}from"zod";var T={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},O=t.string().nonempty(),E=t.object({baseUrl:t.string().url().nonempty(),flowId:t.string().length(24).nonempty(),organizationId:t.string().uuid().nonempty(),lang:t.string().length(2).nonempty(),tracking:d.optional(),devMode:t.boolean().default(!1).optional()}),f=t.object({state:t.record(t.string(),t.any()).optional(),fields:t.record(t.string(),t.any()).optional()}),_=t.object({currentStepId:t.string().nonempty(),actionId:t.string().nonempty()}),N=t.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),D=t.object({name:t.string(),value:t.string().optional(),icon:t.string().optional(),type:t.enum(["url","email","phone"]).optional()}),z=t.object({lat:t.number().min(-90).max(90),lng:t.number().min(-180).max(180),meta:t.record(t.string(),t.any()).optional(),properties:t.record(t.string(),D).optional()}),P=t.object({datetime:t.string().datetime(),meta:t.record(t.string(),t.any()).optional()}),c=t.union([t.string(),t.number(),t.boolean(),z,P]),g=t.object({content:t.object({icon:t.string().optional(),url:t.string().url().optional(),width:t.string().optional(),height:t.string().optional(),scale:t.number().optional()}).optional(),background:t.string().optional(),glyph:t.object({color:t.string().optional(),url:t.string().url().optional(),icon:t.string().optional()}).optional(),borderColor:t.string().optional(),scale:t.number().optional()}),b=t.custom(a=>/^\d{4}-\d{2}-\d{2}$/.test(a),{message:"Date must be in 'YYYY-MM-DD' format"}),p=t.object({text:t.string().optional(),icon:t.string().optional()}),R=t.object({name:t.string().nonempty(),label:t.string().optional(),value:t.union([c,t.array(c)]).optional(),type:N,component:t.enum(["input","textarea","select","radio","checkbox","switch","rating","carousel","button","label","map","calendar"]).optional(),disabled:t.boolean().optional(),readonly:t.boolean().optional(),multiple:t.boolean().optional(),placeholder:t.string().optional(),options:t.array(t.object({label:t.string().nonempty(),value:c.optional(),image:t.string().url().optional(),description:t.string().optional(),disabled:t.boolean().optional(),attributes:t.record(t.string(),t.any()).optional(),dependsOn:t.array(t.object({fieldName:t.string().nonempty(),value:c.optional(),operator:t.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional()})).optional(),required:t.boolean().optional(),configuration:t.object({generic:t.object({error:t.object({icon:t.string().optional(),showOn:t.enum(["input","blur"]).optional()})}).optional(),input:t.object({min:t.number().optional(),max:t.number().optional(),step:t.number().optional(),pattern:t.string().refine(a=>{try{return new RegExp(a),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:t.number().optional(),maxLength:t.number().optional(),exactLength:t.number().optional(),prefix:t.object({default:p.optional(),success:p.optional(),error:p.optional()}).optional(),suffix:t.object({default:p.optional(),success:p.optional(),error:p.optional()}).optional(),clearable:t.boolean().optional(),floatingLabel:t.boolean().optional()}).optional(),textarea:t.object({rows:t.number().optional()}).optional(),checkbox:t.object({layout:t.enum(["horizontal","vertical"])}).optional(),rating:t.object({icons:t.array(t.string()).optional(),color:t.string().optional(),precision:t.number().optional()}).optional(),carousel:t.object({loop:t.boolean().optional(),mouseDragging:t.boolean().optional(),itemsPerPage:t.number().optional(),showArrows:t.boolean().optional(),showDots:t.boolean().optional(),autoplay:t.boolean().optional(),autoplaySpeed:t.number().optional(),clickableItems:t.object({actionId:t.string()}).optional()}).optional(),map:t.object({apiKey:t.string().optional(),region:t.string().length(2).optional(),center:t.object({lat:t.number().min(-90).max(90),lng:t.number().min(-180).max(180)}).optional(),showMap:t.enum(["always","on-search","never"]).optional(),zoom:t.object({initial:t.number().optional(),focus:t.number().optional(),max:t.number().optional(),min:t.number().optional()}).optional(),controls:t.object({fullscreen:t.boolean().optional(),mapType:t.boolean().optional(),zoom:t.boolean().optional(),rotate:t.boolean().optional(),scale:t.boolean().optional(),streetView:t.boolean().optional()}).optional(),initialLocations:t.number().optional(),maxLocations:t.number().optional(),distanceUnit:t.enum(["km","mi"]).optional(),distanceFormat:t.enum(["short","long"]).optional(),options:t.object({show:t.enum(["always","on-search","never"]).optional(),component:t.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:t.string().optional(),detailsLabel:t.string().optional()}).optional(),search:t.object({enabled:t.boolean().optional(),value:t.string().optional(),button:t.object({label:t.string().optional(),position:t.enum(["inside","outside"]).optional()}).optional(),placeholder:t.string().optional(),noResultsText:t.string().optional(),autocomplete:t.boolean().optional(),clearable:t.boolean().optional(),mode:t.enum(["address","postcode"]).default("postcode").optional(),locationButton:t.object({icon:t.string().optional(),position:t.enum(["left","right"]).optional()}).optional(),prefix:t.object({default:p.optional()}).optional(),suffix:t.object({default:p.optional()}).optional(),mappedResults:t.object({mapping:t.record(t.string(),t.array(t.object({key:t.string(),value:t.string()})))}).optional()}).optional(),distanceRange:t.object({initial:t.number().optional(),min:t.number().optional(),max:t.number().optional(),step:t.number().optional()}).optional(),mapRegion:t.object({strokeColor:t.string().optional(),fillColor:t.string().optional(),fillOpacity:t.number().optional()}).optional(),locationPin:g.optional(),markerPin:t.object({default:g.optional(),hover:g.optional(),selected:g.optional()}).optional(),infoWindow:t.object({button:t.object({label:t.string(),action:t.string()}).optional()}).optional()}).optional(),calendar:t.object({current:t.object({month:t.number().min(0).max(11).optional(),year:t.number().optional()}).optional(),range:t.object({min:b.optional(),max:b.optional(),enabled:t.array(b).optional(),disabled:t.array(b).optional()}).optional(),time:t.object({label:t.string().optional(),format:t.enum(["12h","24h"]).optional(),component:t.enum(["carousel","list"]).optional()}).optional(),api:t.object({url:t.string().url().nonempty(),organizationId:t.string().nonempty(),availability:t.object({filters:A,options:L.optional()}).optional()}).optional()}).optional()}).optional(),dependsOn:t.array(t.object({fieldName:t.string().nonempty(),value:c.optional(),operator:t.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()})).optional(),dependentBehavior:t.enum(["hidden","disabled"]).optional(),customError:t.object({required:t.string().optional(),invalid:t.string().optional(),minLength:t.string().optional(),maxLength:t.string().optional(),minValue:t.string().optional(),maxValue:t.string().optional(),mismatch:t.string().optional()}).optional()}),F=t.object({src:t.string().url(),preload:t.boolean().optional(),name:t.string().nonempty(),function:t.string().nonempty(),params:t.record(t.string(),t.any()).optional()}),C=t.object({name:t.enum(["organization_call","close_panel"]),params:t.record(t.string(),t.any()).optional()}),U=t.object({id:t.string().nonempty(),type:t.enum(["submit","navigate","link","back","dispatcher","script"]),label:t.string().nonempty(),variant:t.enum(["primary","secondary","success","danger","warning","info"]),url:t.string().url().optional(),scripts:F.array().optional(),events:C.array().optional()}),V=t.enum(["INVALID_DATA","INVALID_ACTION","STEP_NOT_FOUND","UNKNOWN_ERROR","APPOINTMENT_INVALID_DATA","APPOINTMENT_BUSY_SLOT","APPOINTMENT_OUT_OF_DATE","APPOINTMENT_UNKNOWN_ERROR","LEAD_INVALID_DATA","LEAD_UNKNOWN_ERROR","CONTENT_INVALID_DATA","CONTENT_UNKNOWN_ERROR","CONTACT_INVALID_DATA","CONTACT_UNKNOWN_ERROR","LOST_OPPORTUNITY_INVALID_DATA","LOST_OPPORTUNITY_UNKNOWN_ERROR"]),M=t.object({type:t.enum(["redirect"]),params:t.record(t.string(),t.any()).optional()}),G=t.object({id:t.string().nonempty(),title:t.string().optional(),description:t.string().optional(),stageId:t.string().optional(),state:t.record(t.string(),t.any()).optional(),fields:t.array(R).optional(),actions:t.array(U).optional(),result:t.object({postActions:t.array(M).optional(),pipelines:t.array(t.object({name:t.string(),data:t.object({})})).optional(),tracking:t.record(t.string(),t.any()).optional()}).optional(),error:t.object({code:V,message:t.string().optional(),fields:t.array(t.object({name:t.string(),type:N,value:t.any(),error:t.string()})).optional()}).optional(),isFinal:t.boolean().optional()}),$=t.object({id:t.string().length(24).nonempty(),organizationId:t.string().uuid().nonempty(),updatedAt:t.string().datetime().nonempty(),stages:t.array(t.object({id:t.string().nonempty(),name:t.string().nonempty()}))}),pt=t.object({status:t.enum(["ok","error"]),step:G,flow:$}),lt=t.enum(["track"]);var h=class{constructor(e){r(this,"baseURL");r(this,"headers");r(this,"flowId");r(this,"tracking");let o=q({},T,E.parse(e));this.flowId=o.flowId,this.baseURL=o.baseUrl,this.headers=new Headers({"Content-Type":"application/json","X-Onlive-Organization-Id":o.organizationId,"X-Lang":o.lang}),o.tracking?.enabled&&(this.tracking=new x(o.organizationId,o.flowId,o.tracking,!!o.devMode))}async request(e,o={}){let n=await fetch(`${this.baseURL}/${e}`,{...o,headers:this.headers});if(!n?.ok)throw new Error(`HTTP error! status: ${n?.status||"unknown"}`);return n.json()}async firstStep(e={}){this.tracking?.analyzeRequest({},e);let o=this.tracking?.preferences(),n=await this.request(`flow/${this.flowId}/first-step`,{method:"POST",body:JSON.stringify(f.parse({...e,state:{preferences:o,...e.state}}))});return this.tracking?.analyzeResponse({},n),n}async getStep(e,o={}){this.tracking?.analyzeRequest({stepId:e},o);let n=this.tracking?.preferences(),l=await this.request(`flow/${this.flowId}/steps/${O.parse(e)}`,{method:"POST",body:JSON.stringify(f.parse({...o,state:{preferences:n,...o.state}}))});return this.tracking?.analyzeResponse({stepId:e},l),l}async nextStep(e,o={}){this.tracking?.analyzeRequest(e,o);let{currentStepId:n,actionId:l}=_.parse(e),s=await this.request(`flow/${this.flowId}/steps/${n}/action/${l}`,{method:"POST",body:JSON.stringify(f.parse(o))});return this.tracking?.analyzeResponse(e,s),s}};export{U as Action,C as ActionEvent,F as ActionScript,E as ClientOptions,T as DEFAULT_CLIENT_OPTIONS,V as ErrorCode,lt as EventType,R as Field,$ as Flow,h as FlowClient,pt as FlowContext,f as GetStepOptions,_ as GetStepTrigger,v as ONLIVE_ANALYTICS_EVENT,m as ONLIVE_FLOW_FORM_NAME,M as PostAction,G as Step,O as StepId,d as TrackingOptionsSchema};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onlive.ai/flow-client",
3
- "version": "0.1.54",
3
+ "version": "0.1.55",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "**/*.js",
@@ -30,10 +30,10 @@
30
30
  "tsup": "^8.5.0",
31
31
  "typescript": "~5.6.3",
32
32
  "vite": "^6.3.5",
33
- "vitest": "^2.1.9",
33
+ "vitest": "^3.2.4",
34
34
  "zod": "^3.24.4",
35
- "@onlive.ai/calendar": "0.0.10",
36
- "@onlive.ai/common-121": "0.2.49"
35
+ "@onlive.ai/calendar": "0.0.11",
36
+ "@onlive.ai/common-121": "0.2.50"
37
37
  },
38
38
  "devDependencies": {
39
39
  "zod-to-json-schema": "^3.24.5"
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  "use strict";var he=require("fs");var M=Symbol("Let zodToJsonSchema decide on which parser to use");var E={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},R=e=>typeof e=="string"?{...E,name:e}:{...E,...e};var $=e=>{let t=R(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}};function O(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function u(e,t,r,n,o){e[t]=r,O(e,t,n,o)}var P=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};var c=require("zod");function d(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?P(t,e.currentPath):t.join("/")}}var L=require("zod");function C(e,t){let r={type:"array"};return e.type?._def&&e.type?._def?.typeName!==L.ZodFirstPartyTypeKind.ZodAny&&(r.items=i(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&u(r,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&u(r,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(u(r,"minItems",e.exactLength.value,e.exactLength.message,t),u(r,"maxItems",e.exactLength.value,e.exactLength.message,t)),r}function I(e,t){let r={type:"integer",format:"int64"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"min":t.target==="jsonSchema7"?n.inclusive?u(r,"minimum",n.value,n.message,t):u(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),u(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?u(r,"maximum",n.value,n.message,t):u(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),u(r,"maximum",n.value,n.message,t));break;case"multipleOf":u(r,"multipleOf",n.value,n.message,t);break}return r}function z(){return{type:"boolean"}}function k(e,t){return i(e.type._def,t)}var B=(e,t)=>i(e.innerType._def,t);function Z(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Z(e,t,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return ge(e,t)}}var ge=(e,t)=>{let r={type:"integer",format:"unix-time"};if(t.target==="openApi3")return r;for(let n of e.checks)switch(n.kind){case"min":u(r,"minimum",n.value,n.message,t);break;case"max":u(r,"maximum",n.value,n.message,t);break}return r};function q(e,t){return{...i(e.innerType._def,t),default:e.defaultValue()}}function U(e,t){return t.effectStrategy==="input"?i(e.schema._def,t):d(t)}function V(e){return{type:"string",enum:Array.from(e.values)}}var ye=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function W(e,t){let r=[i(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),i(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(s=>!!s),n=t.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(ye(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let l=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:m,...p}=s;l=p}else n=void 0;o.push(l)}}),o.length?{allOf:o,...n}:void 0}function J(e,t){let r=typeof e.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(e.value)?"array":"object"}:t.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[e.value]}:{type:r==="bigint"?"integer":r,const:e.value}}var v=require("zod");var w,g={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(w===void 0&&(w=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),w),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function S(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":u(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t);break;case"max":u(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"email":switch(t.emailStrategy){case"format:email":y(r,"email",n.message,t);break;case"format:idn-email":y(r,"idn-email",n.message,t);break;case"pattern:zod":f(r,g.email,n.message,t);break}break;case"url":y(r,"uri",n.message,t);break;case"uuid":y(r,"uuid",n.message,t);break;case"regex":f(r,n.regex,n.message,t);break;case"cuid":f(r,g.cuid,n.message,t);break;case"cuid2":f(r,g.cuid2,n.message,t);break;case"startsWith":f(r,RegExp(`^${T(n.value,t)}`),n.message,t);break;case"endsWith":f(r,RegExp(`${T(n.value,t)}$`),n.message,t);break;case"datetime":y(r,"date-time",n.message,t);break;case"date":y(r,"date",n.message,t);break;case"time":y(r,"time",n.message,t);break;case"duration":y(r,"duration",n.message,t);break;case"length":u(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t),u(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"includes":{f(r,RegExp(T(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&y(r,"ipv4",n.message,t),n.version!=="v4"&&y(r,"ipv6",n.message,t);break}case"base64url":f(r,g.base64url,n.message,t);break;case"jwt":f(r,g.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&f(r,g.ipv4Cidr,n.message,t),n.version!=="v4"&&f(r,g.ipv6Cidr,n.message,t);break}case"emoji":f(r,g.emoji(),n.message,t);break;case"ulid":{f(r,g.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{y(r,"binary",n.message,t);break}case"contentEncoding:base64":{u(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{f(r,g.base64,n.message,t);break}}break}case"nanoid":f(r,g.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function T(e,t){return t.patternStrategy==="escape"?ve(e):e}var be=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ve(e){let t="";for(let r=0;r<e.length;r++)be.has(e[r])||(t+="\\"),t+=e[r];return t}function y(e,t,r,n){e.format||e.anyOf?.some(o=>o.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&n.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):u(e,"format",t,r,n)}function f(e,t,r,n){e.pattern||e.allOf?.some(o=>o.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:K(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):u(e,"pattern",K(t,n),r,n)}function K(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=r.i?e.source.toLowerCase():e.source,o="",s=!1,l=!1,m=!1;for(let p=0;p<n.length;p++){if(s){o+=n[p],s=!1;continue}if(r.i){if(l){if(n[p].match(/[a-z]/)){m?(o+=n[p],o+=`${n[p-2]}-${n[p]}`.toUpperCase(),m=!1):n[p+1]==="-"&&n[p+2]?.match(/[a-z]/)?(o+=n[p],m=!0):o+=`${n[p]}${n[p].toUpperCase()}`;continue}}else if(n[p].match(/[a-z]/)){o+=`[${n[p]}${n[p].toUpperCase()}]`;continue}}if(r.m){if(n[p]==="^"){o+=`(^|(?<=[\r
3
3
  ]))`;continue}else if(n[p]==="$"){o+=`($|(?=[\r
4
4
  ]))`;continue}}if(r.s&&n[p]==="."){o+=l?`${n[p]}\r
@@ -1,4 +1,4 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  import{writeFileSync as Ie}from"fs";var M=Symbol("Let zodToJsonSchema decide on which parser to use");var E={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},R=e=>typeof e=="string"?{...E,name:e}:{...E,...e};var $=e=>{let t=R(e),r=t.name!==void 0?[...t.basePath,t.definitionPath,t.name]:t.basePath;return{...t,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(t.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...t.basePath,t.definitionPath,n],jsonSchema:void 0}]))}};function O(e,t,r,n){n?.errorMessages&&r&&(e.errorMessage={...e.errorMessage,[t]:r})}function u(e,t,r,n,o){e[t]=r,O(e,t,n,o)}var P=(e,t)=>{let r=0;for(;r<e.length&&r<t.length&&e[r]===t[r];r++);return[(e.length-r).toString(),...t.slice(r)].join("/")};import{ZodFirstPartyTypeKind as c}from"zod";function d(e){if(e.target!=="openAi")return{};let t=[...e.basePath,e.definitionPath,e.openAiAnyTypeName];return e.flags.hasReferencedOpenAiAnyType=!0,{$ref:e.$refStrategy==="relative"?P(t,e.currentPath):t.join("/")}}import{ZodFirstPartyTypeKind as fe}from"zod";function L(e,t){let r={type:"array"};return e.type?._def&&e.type?._def?.typeName!==fe.ZodAny&&(r.items=i(e.type._def,{...t,currentPath:[...t.currentPath,"items"]})),e.minLength&&u(r,"minItems",e.minLength.value,e.minLength.message,t),e.maxLength&&u(r,"maxItems",e.maxLength.value,e.maxLength.message,t),e.exactLength&&(u(r,"minItems",e.exactLength.value,e.exactLength.message,t),u(r,"maxItems",e.exactLength.value,e.exactLength.message,t)),r}function C(e,t){let r={type:"integer",format:"int64"};if(!e.checks)return r;for(let n of e.checks)switch(n.kind){case"min":t.target==="jsonSchema7"?n.inclusive?u(r,"minimum",n.value,n.message,t):u(r,"exclusiveMinimum",n.value,n.message,t):(n.inclusive||(r.exclusiveMinimum=!0),u(r,"minimum",n.value,n.message,t));break;case"max":t.target==="jsonSchema7"?n.inclusive?u(r,"maximum",n.value,n.message,t):u(r,"exclusiveMaximum",n.value,n.message,t):(n.inclusive||(r.exclusiveMaximum=!0),u(r,"maximum",n.value,n.message,t));break;case"multipleOf":u(r,"multipleOf",n.value,n.message,t);break}return r}function I(){return{type:"boolean"}}function k(e,t){return i(e.type._def,t)}var z=(e,t)=>i(e.innerType._def,t);function Z(e,t,r){let n=r??t.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Z(e,t,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return he(e,t)}}var he=(e,t)=>{let r={type:"integer",format:"unix-time"};if(t.target==="openApi3")return r;for(let n of e.checks)switch(n.kind){case"min":u(r,"minimum",n.value,n.message,t);break;case"max":u(r,"maximum",n.value,n.message,t);break}return r};function B(e,t){return{...i(e.innerType._def,t),default:e.defaultValue()}}function q(e,t){return t.effectStrategy==="input"?i(e.schema._def,t):d(t)}function U(e){return{type:"string",enum:Array.from(e.values)}}var ge=e=>"type"in e&&e.type==="string"?!1:"allOf"in e;function V(e,t){let r=[i(e.left._def,{...t,currentPath:[...t.currentPath,"allOf","0"]}),i(e.right._def,{...t,currentPath:[...t.currentPath,"allOf","1"]})].filter(s=>!!s),n=t.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(ge(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let l=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:m,...p}=s;l=p}else n=void 0;o.push(l)}}),o.length?{allOf:o,...n}:void 0}function W(e,t){let r=typeof e.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(e.value)?"array":"object"}:t.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[e.value]}:{type:r==="bigint"?"integer":r,const:e.value}}import{ZodFirstPartyTypeKind as x}from"zod";var w,g={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(w===void 0&&(w=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),w),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function S(e,t){let r={type:"string"};if(e.checks)for(let n of e.checks)switch(n.kind){case"min":u(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t);break;case"max":u(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"email":switch(t.emailStrategy){case"format:email":y(r,"email",n.message,t);break;case"format:idn-email":y(r,"idn-email",n.message,t);break;case"pattern:zod":f(r,g.email,n.message,t);break}break;case"url":y(r,"uri",n.message,t);break;case"uuid":y(r,"uuid",n.message,t);break;case"regex":f(r,n.regex,n.message,t);break;case"cuid":f(r,g.cuid,n.message,t);break;case"cuid2":f(r,g.cuid2,n.message,t);break;case"startsWith":f(r,RegExp(`^${T(n.value,t)}`),n.message,t);break;case"endsWith":f(r,RegExp(`${T(n.value,t)}$`),n.message,t);break;case"datetime":y(r,"date-time",n.message,t);break;case"date":y(r,"date",n.message,t);break;case"time":y(r,"time",n.message,t);break;case"duration":y(r,"duration",n.message,t);break;case"length":u(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,t),u(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,t);break;case"includes":{f(r,RegExp(T(n.value,t)),n.message,t);break}case"ip":{n.version!=="v6"&&y(r,"ipv4",n.message,t),n.version!=="v4"&&y(r,"ipv6",n.message,t);break}case"base64url":f(r,g.base64url,n.message,t);break;case"jwt":f(r,g.jwt,n.message,t);break;case"cidr":{n.version!=="v6"&&f(r,g.ipv4Cidr,n.message,t),n.version!=="v4"&&f(r,g.ipv6Cidr,n.message,t);break}case"emoji":f(r,g.emoji(),n.message,t);break;case"ulid":{f(r,g.ulid,n.message,t);break}case"base64":{switch(t.base64Strategy){case"format:binary":{y(r,"binary",n.message,t);break}case"contentEncoding:base64":{u(r,"contentEncoding","base64",n.message,t);break}case"pattern:zod":{f(r,g.base64,n.message,t);break}}break}case"nanoid":f(r,g.nanoid,n.message,t);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function T(e,t){return t.patternStrategy==="escape"?be(e):e}var ye=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function be(e){let t="";for(let r=0;r<e.length;r++)ye.has(e[r])||(t+="\\"),t+=e[r];return t}function y(e,t,r,n){e.format||e.anyOf?.some(o=>o.format)?(e.anyOf||(e.anyOf=[]),e.format&&(e.anyOf.push({format:e.format,...e.errorMessage&&n.errorMessages&&{errorMessage:{format:e.errorMessage.format}}}),delete e.format,e.errorMessage&&(delete e.errorMessage.format,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.anyOf.push({format:t,...r&&n.errorMessages&&{errorMessage:{format:r}}})):u(e,"format",t,r,n)}function f(e,t,r,n){e.pattern||e.allOf?.some(o=>o.pattern)?(e.allOf||(e.allOf=[]),e.pattern&&(e.allOf.push({pattern:e.pattern,...e.errorMessage&&n.errorMessages&&{errorMessage:{pattern:e.errorMessage.pattern}}}),delete e.pattern,e.errorMessage&&(delete e.errorMessage.pattern,Object.keys(e.errorMessage).length===0&&delete e.errorMessage)),e.allOf.push({pattern:J(t,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):u(e,"pattern",J(t,n),r,n)}function J(e,t){if(!t.applyRegexFlags||!e.flags)return e.source;let r={i:e.flags.includes("i"),m:e.flags.includes("m"),s:e.flags.includes("s")},n=r.i?e.source.toLowerCase():e.source,o="",s=!1,l=!1,m=!1;for(let p=0;p<n.length;p++){if(s){o+=n[p],s=!1;continue}if(r.i){if(l){if(n[p].match(/[a-z]/)){m?(o+=n[p],o+=`${n[p-2]}-${n[p]}`.toUpperCase(),m=!1):n[p+1]==="-"&&n[p+2]?.match(/[a-z]/)?(o+=n[p],m=!0):o+=`${n[p]}${n[p].toUpperCase()}`;continue}}else if(n[p].match(/[a-z]/)){o+=`[${n[p]}${n[p].toUpperCase()}]`;continue}}if(r.m){if(n[p]==="^"){o+=`(^|(?<=[\r
3
3
  ]))`;continue}else if(n[p]==="$"){o+=`($|(?=[\r
4
4
  ]))`;continue}}if(r.s&&n[p]==="."){o+=l?`${n[p]}\r
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  "use strict";var s=Object.defineProperty;var E=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var k=Object.prototype.hasOwnProperty;var h=(a,e,t)=>e in a?s(a,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[e]=t;var T=(a,e)=>{for(var t in e)s(a,t,{get:e[t],enumerable:!0})},g=(a,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of _(e))!k.call(a,i)&&i!==t&&s(a,i,{get:()=>e[i],enumerable:!(n=E(e,i))||n.enumerable});return a};var I=a=>g(s({},"__esModule",{value:!0}),a);var p=(a,e,t)=>h(a,typeof e!="symbol"?e+"":e,t);var b={};T(b,{TrackingService:()=>c,default:()=>O});module.exports=I(b);var o=require("@onlive.ai/tracker"),f=require("@onlive.ai/common-121/utils/merge.js"),u=require("@onlive.ai/common-121/utils/browser-preferences.js");var r=require("zod"),d="flow_form",m="onlive-analytics-event",v=r.z.object({enabled:r.z.boolean().default(!1).optional(),data:r.z.custom().optional(),removeExtraneousValues:r.z.boolean().default(!0).optional(),allowBotTraffic:r.z.boolean().default(!1).optional(),adapters:r.z.array(r.z.string()).default([]).optional(),apiUrl:r.z.string().url().optional(),emitters:r.z.object({windowEvent:r.z.boolean().optional(),dataLayer:r.z.boolean().optional(),windowPostMessage:r.z.boolean().optional()}).optional()});var c=class{constructor(e,t,n,i){p(this,"options");p(this,"tracker");p(this,"eventListeners",[]);this.options=v.parse(n),this.tracker=new o.Tracker({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:i}),this.tracker.setBase((0,f.merge)({},{organization_id:e,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:o.Session.id,interaction_id:o.Session.interactionId,extra:{flow_id:t}},this.options.data)),window.addEventListener(m,({detail:l})=>this.emit(l.event,l.data))}getTracker(){return this.tracker}preferences(){return{...(0,u.browserPreferences)(),interactionId:o.Session.interactionId,guestId:o.Session.id}}analyzeRequest(e,t){"currentStepId"in e&&(e.actionId&&this.tracker.send("element_click",{element_label:e.actionId,element_type:"button",form_name:Object.keys(t.fields||{}).length?d:void 0,step_name:e.currentStepId}),t.fields&&this.tracker.send("form_submit",{form_name:d,form_data:t.fields,step_name:e.currentStepId}))}analyzeResponse(e,t){this.tracker.setBase({form_name:d,step_name:t.step.id,step_initial:!("currentStepId"in e)||void 0,step_final:t.step.isFinal,...t.step.result?.tracking}),"currentStepId"in e&&(t.step.result?.pipelines&&t.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),t.step.error&&this.tracker.send("form_error",{form_error:t.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(e,t){this.tracker.send(e,t)}setData(e){this.tracker.setBase(e)}onEvent(e){this.eventListeners.push(e)}emit(e,t){this.eventListeners.forEach(n=>n({event:e,data:t}))}},O=c;0&&(module.exports={TrackingService});
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  var v=Object.defineProperty;var f=(r,e,t)=>e in r?v(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var i=(r,e,t)=>f(r,typeof e!="symbol"?e+"":e,t);import{Session as s,Tracker as u}from"@onlive.ai/tracker";import{merge as E}from"@onlive.ai/common-121/utils/merge.js";import{browserPreferences as _}from"@onlive.ai/common-121/utils/browser-preferences.js";import{z as a}from"zod";var o="flow_form",c="onlive-analytics-event",l=a.object({enabled:a.boolean().default(!1).optional(),data:a.custom().optional(),removeExtraneousValues:a.boolean().default(!0).optional(),allowBotTraffic:a.boolean().default(!1).optional(),adapters:a.array(a.string()).default([]).optional(),apiUrl:a.string().url().optional(),emitters:a.object({windowEvent:a.boolean().optional(),dataLayer:a.boolean().optional(),windowPostMessage:a.boolean().optional()}).optional()});var p=class{constructor(e,t,n,m){i(this,"options");i(this,"tracker");i(this,"eventListeners",[]);this.options=l.parse(n),this.tracker=new u({apiUrl:this.options.apiUrl,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:m}),this.tracker.setBase(E({},{organization_id:e,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:s.id,interaction_id:s.interactionId,extra:{flow_id:t}},this.options.data)),window.addEventListener(c,({detail:d})=>this.emit(d.event,d.data))}getTracker(){return this.tracker}preferences(){return{..._(),interactionId:s.interactionId,guestId:s.id}}analyzeRequest(e,t){"currentStepId"in e&&(e.actionId&&this.tracker.send("element_click",{element_label:e.actionId,element_type:"button",form_name:Object.keys(t.fields||{}).length?o:void 0,step_name:e.currentStepId}),t.fields&&this.tracker.send("form_submit",{form_name:o,form_data:t.fields,step_name:e.currentStepId}))}analyzeResponse(e,t){this.tracker.setBase({form_name:o,step_name:t.step.id,step_initial:!("currentStepId"in e)||void 0,step_final:t.step.isFinal,...t.step.result?.tracking}),"currentStepId"in e&&(t.step.result?.pipelines&&t.step.result.pipelines.forEach(n=>{this.tracker.send("task_success",{task_name:n.name,task_data:n.data})}),t.step.error&&this.tracker.send("form_error",{form_error:t.step.error.code})),this.tracker.send("impression",{impression_type:"step"})}send(e,t){this.tracker.send(e,t)}setData(e){this.tracker.setBase(e)}onEvent(e){this.eventListeners.push(e)}emit(e,t){this.eventListeners.forEach(n=>n({event:e,data:t}))}},L=p;export{p as TrackingService,L as default};
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  "use strict";var i=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var c=(a,o)=>{for(var n in o)i(a,n,{get:o[n],enumerable:!0})},f=(a,o,n,l)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of p(o))!s.call(a,e)&&e!==n&&i(a,e,{get:()=>o[e],enumerable:!(l=r(o,e))||l.enumerable});return a};var E=a=>f(i({},"__esModule",{value:!0}),a);var u={};c(u,{ONLIVE_ANALYTICS_EVENT:()=>v,ONLIVE_FLOW_FORM_NAME:()=>m,TrackingOptionsSchema:()=>d});module.exports=E(u);var t=require("zod"),m="flow_form",v="onlive-analytics-event",d=t.z.object({enabled:t.z.boolean().default(!1).optional(),data:t.z.custom().optional(),removeExtraneousValues:t.z.boolean().default(!0).optional(),allowBotTraffic:t.z.boolean().default(!1).optional(),adapters:t.z.array(t.z.string()).default([]).optional(),apiUrl:t.z.string().url().optional(),emitters:t.z.object({windowEvent:t.z.boolean().optional(),dataLayer:t.z.boolean().optional(),windowPostMessage:t.z.boolean().optional()}).optional()});0&&(module.exports={ONLIVE_ANALYTICS_EVENT,ONLIVE_FLOW_FORM_NAME,TrackingOptionsSchema});
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.54 | © 2025 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.55 | © 2025 Onlive.ai */
2
2
  import{z as t}from"zod";var a="flow_form",e="onlive-analytics-event",n=t.object({enabled:t.boolean().default(!1).optional(),data:t.custom().optional(),removeExtraneousValues:t.boolean().default(!0).optional(),allowBotTraffic:t.boolean().default(!1).optional(),adapters:t.array(t.string()).default([]).optional(),apiUrl:t.string().url().optional(),emitters:t.object({windowEvent:t.boolean().optional(),dataLayer:t.boolean().optional(),windowPostMessage:t.boolean().optional()}).optional()});export{e as ONLIVE_ANALYTICS_EVENT,a as ONLIVE_FLOW_FORM_NAME,n as TrackingOptionsSchema};