@onlive.ai/flow-client 0.1.238 → 0.1.271

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.
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.238 | © 2026 Onlive.ai */
2
- import{GetAvailabilityFilters as d,GetAvailabilityOptions as y}from"@onlive.ai/calendar";import{GetSlotFilters as f,GetSlotOptions as x}from"@onlive.ai/calendar/client/client.types.js";import{z as o}from"zod";import{z as t}from"zod";var c=t.object({enabled:t.boolean().default(!1).optional(),conditions:t.custom().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()});var R="bf585082a22fad962b4cbc08",u=(l=>(l.DARK="DARK",l.FOLLOW_SYSTEM="FOLLOW_SYSTEM",l.LIGHT="LIGHT",l))(u||{}),C={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},M=o.string().nonempty(),V=o.object({baseUrl:o.string().url().nonempty(),flowId:o.string().length(24).nonempty(),organizationId:o.string().uuid().nonempty(),lang:o.string().length(2).nonempty(),tracking:c.optional(),devMode:o.boolean().default(!1).optional()}),U=o.object({state:o.record(o.string(),o.any()).optional(),fields:o.record(o.string(),o.any()).optional()}),G=o.object({currentStepId:o.string().nonempty(),actionId:o.string().nonempty()}),g=o.enum(["text","boolean","number","first_name","last_name","name","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),j=o.object({name:o.string().optional(),value:o.string().optional(),icon:o.string().optional(),type:o.enum(["url","email","phone"]).optional()}),T=o.object({lat:o.number().min(-90).max(90),lng:o.number().min(-180).max(180),meta:o.record(o.string(),o.any()).optional(),properties:o.record(o.string(),j).optional()}),v=o.object({datetime:o.string().datetime(),meta:o.record(o.string(),o.any()).optional()}),r=o.union([o.string(),o.number(),o.boolean(),T,v]),i=o.object({content:o.object({icon:o.string().optional(),url:o.string().url().optional(),width:o.string().optional(),height:o.string().optional(),scale:o.number().optional()}).optional(),background:o.string().optional(),glyph:o.object({color:o.string().optional(),url:o.string().url().optional(),icon:o.string().optional()}).optional(),borderColor:o.string().optional(),scale:o.number().optional()}),a=o.custom(e=>typeof e=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e),{message:"Date must be in 'YYYY-MM-DD' format"}),n=o.object({text:o.string().optional(),icon:o.string().optional()}),p=o.object({fieldName:o.string().nonempty(),value:r.optional(),operator:o.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()}),A=o.object({and:o.array(p).optional(),or:o.array(p).optional()}),m=o.array(o.union([p,A])),h=o.object({src:o.string().url(),preload:o.boolean().optional(),name:o.string().nonempty(),function:o.string().nonempty(),params:o.array(o.record(o.string(),o.any())).optional()}),O=o.object({name:o.enum(["organization_call","close_panel","retry_first_step","retry_next_step","organization_chat"]),params:o.record(o.string(),o.any()).optional()}),s=o.object({id:o.string().nonempty(),type:o.enum(["submit","navigate","link","back","dispatcher","script"]),label:o.string().nonempty(),variant:o.enum(["primary","secondary","success","danger","warning","info"]),position:o.enum(["top","bottom"]).optional(),url:o.string().url().optional(),target:o.enum(["_self","_blank","_parent","_top"]).optional(),loadingBehavior:o.enum(["none","spinner","disabled"]).optional(),prefix:n.optional(),suffix:n.optional(),caption:o.string().optional(),scripts:h.array().optional(),events:O.array().optional()}),E=o.object({message:o.string().optional(),icon:o.string().optional(),position:o.enum(["top","bottom"]).optional(),kind:o.enum(["initial-loading","step-loading","step-validation","field-loading"]).optional(),actions:o.array(s).optional()}),_=o.object({name:o.string().nonempty(),label:o.string().optional(),description:o.string().optional(),value:o.union([r,o.array(r)]).optional(),type:g,component:o.enum(["input","phone_input","textarea","select","radio","checkbox","switch","rating","carousel","grid","button","label","map","calendar","stripe_payment"]).optional(),disabled:o.boolean().optional(),readonly:o.boolean().optional(),multiple:o.boolean().optional(),placeholder:o.string().optional(),options:o.array(o.object({id:o.string().optional(),label:o.string().nonempty(),value:r.optional(),image:o.string().url().optional(),description:o.string().optional(),disabled:o.boolean().optional(),attributes:o.record(o.string(),o.any()).optional(),actions:o.array(s).optional(),dependsOn:m.optional()})).optional(),required:o.boolean().optional(),configuration:o.object({generic:o.object({attributes:o.record(o.string(),o.any()).optional(),error:o.object({loading:E.optional(),validation:o.object({icon:o.string().optional(),showOn:o.enum(["input","blur"]).optional()}).optional()})}).optional(),input:o.object({min:o.union([o.number(),o.string()]).optional(),max:o.union([o.number(),o.string()]).optional(),step:o.number().optional(),pattern:o.string().refine(e=>{try{return new RegExp(e),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:o.number().optional(),maxLength:o.number().optional(),exactLength:o.number().optional(),prefix:o.object({default:n.optional(),success:n.optional(),error:n.optional()}).optional(),suffix:o.object({default:n.optional(),success:n.optional(),error:n.optional()}).optional(),clearable:o.boolean().optional(),floatingLabel:o.boolean().optional()}).optional(),phoneInput:o.object({includePrefixValue:o.boolean().optional(),showFlag:o.boolean().optional(),showCode:o.boolean().optional(),prefixLabel:o.string().optional(),lockedPrefix:o.boolean().optional(),countries:o.array(o.string()).optional(),defaultPrefix:o.string().optional(),autoDetectCountry:o.boolean().optional()}).optional(),textarea:o.object({minLength:o.number().optional(),maxLength:o.number().optional(),exactLength:o.number().optional(),rows:o.number().optional()}).optional(),checkbox:o.object({layout:o.enum(["horizontal","vertical"])}).optional(),rating:o.object({icons:o.array(o.string()).optional(),color:o.string().optional(),precision:o.number().optional()}).optional(),carousel:o.object({loop:o.boolean().optional(),mouseDragging:o.boolean().optional(),itemsPerPage:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),itemsPerMove:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),showArrows:o.boolean().optional(),showDots:o.boolean().optional(),autoplay:o.boolean().optional(),autoplaySpeed:o.number().optional(),showcaseMode:o.boolean().optional(),clickableItems:o.object({actionId:o.string()}).optional(),labels:o.object({position:o.enum(["top","bottom","nav-top","nav-bottom","static-top","static-bottom"]).optional(),button:o.object({label:o.string(),actionId:o.string()}).optional()}).optional()}).optional(),grid:o.object({search:o.object({enabled:o.boolean().optional(),value:o.string().optional(),button:o.object({label:o.string().optional()}).optional(),placeholder:o.string().optional(),noResultsText:o.string().optional(),clearable:o.boolean().optional()}).optional(),itemsPerRow:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),itemsPerPage:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),clickableItems:o.object({actionId:o.string()}).optional()}).optional(),map:o.object({apiKey:o.string().optional(),mapId:o.string().optional(),region:o.string().length(2).optional(),colorScheme:o.nativeEnum(u).optional(),center:o.object({lat:o.number().min(-90).max(90),lng:o.number().min(-180).max(180)}).optional(),showMap:o.enum(["always","on-search","never"]).optional(),zoom:o.object({initial:o.number().optional(),focus:o.number().optional(),max:o.number().optional(),min:o.number().optional()}).optional(),controls:o.object({fullscreen:o.boolean().optional(),mapType:o.boolean().optional(),zoom:o.boolean().optional(),rotate:o.boolean().optional(),scale:o.boolean().optional(),streetView:o.boolean().optional()}).optional(),initialLocations:o.number().optional(),maxLocations:o.number().optional(),distanceUnit:o.enum(["km","mi"]).optional(),distanceFormat:o.enum(["short","long"]).optional(),distanceDecimals:o.number().optional(),options:o.object({show:o.enum(["always","on-search","never"]).optional(),component:o.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:o.string().optional(),detailsLabel:o.string().optional()}).optional(),search:o.object({enabled:o.boolean().optional(),value:o.string().optional(),button:o.object({label:o.string().optional(),position:o.enum(["inside","outside"]).optional()}).optional(),placeholder:o.string().optional(),noResultsText:o.string().optional(),autofocus:o.boolean().optional(),autocomplete:o.boolean().optional(),clearable:o.boolean().optional(),mode:o.enum(["address","postcode"]).default("postcode").optional(),locationButton:o.object({icon:o.string().optional(),position:o.enum(["left","right"]).optional()}).optional(),prefix:o.object({default:n.optional()}).optional(),suffix:o.object({default:n.optional()}).optional()}).optional(),distanceRange:o.object({initial:o.number().optional(),min:o.number().optional(),max:o.number().optional(),step:o.number().optional()}).optional(),mapRegion:o.object({strokeColor:o.string().optional(),fillColor:o.string().optional(),fillOpacity:o.number().optional()}).optional(),locationPin:i.optional(),markerPin:o.object({default:i.optional(),hover:i.optional(),selected:i.optional()}).optional(),infoWindow:o.object({button:o.object({label:o.string(),action:o.string()}).optional(),directionsLabel:o.string().optional()}).optional(),ordering:o.object({orderBy:o.enum(["distance","title","id"]).optional(),orderDir:o.enum(["asc","desc"]).optional(),preferences:o.array(o.object({ids:o.string().array(),filters:o.object({postcodes:o.string().array().optional()}).optional()}))}).optional(),clickableItems:o.object({actionId:o.string()}).optional(),forcePolyfills:o.boolean().optional()}).optional(),calendar:o.object({current:o.object({month:o.number().min(0).max(11).optional(),year:o.number().optional()}).optional(),range:o.object({min:a.optional(),max:a.optional(),enabled:o.array(a).optional(),disabled:o.array(a).optional()}).optional(),time:o.object({label:o.string().optional(),format:o.enum(["12h","24h"]).optional(),component:o.enum(["carousel","list"]).optional()}).optional(),api:o.object({version:o.string().optional(),url:o.string().url().nonempty(),organizationId:o.string().nonempty(),availability:o.object({filters:d,options:y.optional()}).optional(),slots:o.object({filters:f,options:x.optional()}).optional()}).optional()}).optional(),stripe:o.object({publishableKey:o.string().nonempty(),mode:o.enum(["payment","setup"]).default("payment").optional(),createPaymentIntentEndpoint:o.string().url().optional(),createSetupIntentEndpoint:o.string().url().optional(),clientSecret:o.string().optional(),paymentIntentId:o.string().optional(),setupIntentId:o.string().optional(),amount:o.number().optional(),currency:o.string().default("usd").optional(),connectedAccountId:o.string().optional(),returnUrl:o.string().url().optional(),headers:o.record(o.string(),o.string()).optional(),paymentIntentParams:o.record(o.string(),o.unknown()).optional(),locale:o.string().optional(),appearance:o.object({theme:o.enum(["stripe","night","flat"]).optional(),variables:o.record(o.string(),o.string()).optional(),rules:o.record(o.string(),o.record(o.string(),o.string())).optional()}).optional(),layout:o.enum(["tabs","accordion","auto"]).optional(),elementOptions:o.record(o.string(),o.unknown()).optional(),terms:o.object({card:o.enum(["auto","always","never"]).optional()}).optional(),customTermsText:o.string().optional(),openDialogButtonText:o.string().optional(),confirmButtonText:o.string().optional(),cancelButtonText:o.string().optional(),authorizedText:o.string().optional(),successMessage:o.string().optional(),setupSuccessMessage:o.string().optional(),infoText:o.string().optional(),amountLabel:o.string().optional(),loadingElementText:o.string().optional(),showAmount:o.boolean().optional(),dialogTitle:o.string().optional(),autoOpenDialog:o.boolean().optional(),actionId:o.string().optional()}).optional()}).optional(),dependsOn:m.optional(),dependentBehavior:o.enum(["hidden","disabled"]).optional(),customError:o.object({required:o.string().optional(),invalid:o.string().optional(),minLength:o.string().optional(),maxLength:o.string().optional(),minValue:o.string().optional(),maxValue:o.string().optional(),mismatch:o.string().optional()}).optional()}),D=o.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"]),I=o.object({type:o.enum(["redirect"]),params:o.record(o.string(),o.any()).optional()}),b=o.object({trackingAction:o.enum(["EMIT_EVENT","SET_BASE_DATA"]).optional(),eventName:o.string().optional(),eventData:o.record(o.string(),o.any()).optional()}).catchall(o.any()),N=o.object({id:o.string().nonempty(),number:o.number().optional(),title:o.string().optional(),description:o.string().optional(),stageId:o.string().optional(),state:o.record(o.string(),o.any()).optional(),fields:o.array(_).optional(),actions:o.array(s).optional(),result:o.object({postActions:o.array(I).optional(),pipelines:o.array(o.object({name:o.string(),data:o.object({})})).optional(),tracking:o.union([b,o.array(b)]).optional()}).optional(),error:o.object({code:D,message:o.string().optional(),icon:o.string().optional(),position:o.enum(["top","bottom"]).optional(),fields:o.array(o.object({name:o.string(),type:g,value:o.any(),error:o.string()})).optional()}).optional(),isFinal:o.boolean().optional()}),L=o.object({id:o.string().length(24).nonempty(),organizationId:o.string().uuid().nonempty(),updatedAt:o.string().datetime().nonempty(),stages:o.array(o.object({id:o.string().nonempty(),name:o.string().nonempty()}))}),B=o.object({status:o.enum(["ok","error"]),step:N,flow:L}),K=o.enum(["track"]);export{s as Action,O as ActionEvent,h as ActionScript,V as ClientOptions,u as ColorScheme,C as DEFAULT_CLIENT_OPTIONS,R as DEFAULT_MAP_ID,D as ErrorCode,E as ErrorData,K as EventType,_ as Field,L as Flow,B as FlowContext,U as GetStepOptions,G as GetStepTrigger,I as PostAction,N as Step,M as StepId};
1
+ /*! @onlive.ai/flow-client v0.1.271 | © 2026 Onlive.ai */
2
+ import{GetAvailabilityFilters as d,GetAvailabilityOptions as y}from"@onlive.ai/calendar";import{GetSlotFilters as f,GetSlotOptions as x}from"@onlive.ai/calendar/client/client.types.js";import{z as o}from"zod";import{z as t}from"zod";var c=t.object({enabled:t.boolean().default(!1).optional(),conditions:t.custom().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()});var M="bf585082a22fad962b4cbc08",b=(l=>(l.DARK="DARK",l.FOLLOW_SYSTEM="FOLLOW_SYSTEM",l.LIGHT="LIGHT",l))(b||{}),C={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},V=o.string().nonempty(),U=o.object({baseUrl:o.string().url().nonempty(),flowId:o.string().length(24).nonempty(),organizationId:o.string().uuid().nonempty(),lang:o.string().length(2).nonempty(),tracking:c.optional(),devMode:o.boolean().default(!1).optional()}),G=o.object({state:o.record(o.string(),o.any()).optional(),fields:o.record(o.string(),o.any()).optional()}),B=o.object({currentStepId:o.string().nonempty(),actionId:o.string().nonempty()}),g=o.enum(["text","boolean","number","first_name","last_name","name","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),j=o.object({name:o.string().optional(),value:o.string().optional(),icon:o.string().optional(),type:o.enum(["url","email","phone"]).optional()}),T=o.object({lat:o.number().min(-90).max(90),lng:o.number().min(-180).max(180),meta:o.record(o.string(),o.any()).optional(),properties:o.record(o.string(),j).optional()}),v=o.object({datetime:o.string().datetime(),meta:o.record(o.string(),o.any()).optional()}),r=o.union([o.string(),o.number(),o.boolean(),T,v]),i=o.object({content:o.object({icon:o.string().optional(),url:o.string().url().optional(),width:o.string().optional(),height:o.string().optional(),scale:o.number().optional()}).optional(),background:o.string().optional(),glyph:o.object({color:o.string().optional(),url:o.string().url().optional(),icon:o.string().optional()}).optional(),borderColor:o.string().optional(),scale:o.number().optional()}),a=o.custom(e=>typeof e=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(e),{message:"Date must be in 'YYYY-MM-DD' format"}),n=o.object({text:o.string().optional(),icon:o.string().optional()}),p=o.object({fieldName:o.string().nonempty(),value:r.optional(),operator:o.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()}),O=o.object({and:o.array(p).optional(),or:o.array(p).optional()}),m=o.array(o.union([p,O])),A=o.object({src:o.string().url(),preload:o.boolean().optional(),name:o.string().nonempty(),function:o.string().nonempty(),params:o.array(o.record(o.string(),o.any())).optional()}),h=o.object({name:o.enum(["organization_call","close_panel","retry_first_step","retry_next_step","organization_chat"]),params:o.record(o.string(),o.any()).optional()}),s=o.object({id:o.string().nonempty(),type:o.enum(["submit","navigate","link","back","dispatcher","script"]),label:o.string().nonempty(),variant:o.enum(["primary","secondary","success","danger","warning","info"]),outline:o.boolean().optional(),position:o.enum(["top","bottom"]).optional(),url:o.string().url().optional(),target:o.enum(["_self","_blank","_parent","_top"]).optional(),loadingBehavior:o.enum(["none","spinner","disabled"]).optional(),prefix:n.optional(),suffix:n.optional(),caption:o.string().optional(),scripts:A.array().optional(),events:h.array().optional()}),E=o.object({message:o.string().optional(),icon:o.string().optional(),position:o.enum(["top","bottom"]).optional(),kind:o.enum(["initial-loading","step-loading","step-validation","field-loading"]).optional(),actions:o.array(s).optional()}),_=o.object({stepId:o.string().nonempty(),name:o.string().nonempty(),behavior:o.enum(["append","replace"]),state:o.record(o.string(),o.any()).optional()}),D=o.object({name:o.string().nonempty(),label:o.string().optional(),description:o.string().optional(),value:o.union([r,o.array(r)]).optional(),type:g,component:o.enum(["input","phone_input","textarea","select","radio","checkbox","switch","rating","carousel","grid","button","label","map","calendar","stripe_payment"]).optional(),disabled:o.boolean().optional(),readonly:o.boolean().optional(),multiple:o.boolean().optional(),placeholder:o.string().optional(),options:o.array(o.object({id:o.string().optional(),label:o.string().nonempty(),value:r.optional(),image:o.string().url().optional(),description:o.string().optional(),disabled:o.boolean().optional(),attributes:o.record(o.string(),o.any()).optional(),actions:o.array(s).optional(),dependsOn:m.optional()})).optional(),required:o.boolean().optional(),configuration:o.object({generic:o.object({attributes:o.record(o.string(),o.any()).optional(),error:o.object({loading:E.optional(),validation:o.object({icon:o.string().optional(),showOn:o.enum(["input","blur"]).optional()}).optional()})}).optional(),input:o.object({min:o.union([o.number(),o.string()]).optional(),max:o.union([o.number(),o.string()]).optional(),step:o.number().optional(),pattern:o.string().refine(e=>{try{return new RegExp(e),!0}catch{return!1}},"Invalid regex pattern").optional(),minLength:o.number().optional(),maxLength:o.number().optional(),exactLength:o.number().optional(),prefix:o.object({default:n.optional(),success:n.optional(),error:n.optional()}).optional(),suffix:o.object({default:n.optional(),success:n.optional(),error:n.optional()}).optional(),clearable:o.boolean().optional(),floatingLabel:o.boolean().optional()}).optional(),phoneInput:o.object({includePrefixValue:o.boolean().optional(),showFlag:o.boolean().optional(),showCode:o.boolean().optional(),prefixLabel:o.string().optional(),lockedPrefix:o.boolean().optional(),countries:o.array(o.string()).optional(),defaultPrefix:o.string().optional(),autoDetectCountry:o.boolean().optional()}).optional(),textarea:o.object({minLength:o.number().optional(),maxLength:o.number().optional(),exactLength:o.number().optional(),rows:o.number().optional()}).optional(),checkbox:o.object({layout:o.enum(["horizontal","vertical"])}).optional(),rating:o.object({icons:o.array(o.string()).optional(),iconMode:o.enum(["individual","unified"]).optional(),colors:o.array(o.string()).optional(),colorMode:o.enum(["unified","individual"]).optional(),color:o.string().optional(),precision:o.number().optional(),labels:o.object({start:o.string().optional(),end:o.string().optional(),position:o.enum(["top","bottom"]).optional()}).optional()}).optional(),carousel:o.object({loop:o.boolean().optional(),mouseDragging:o.boolean().optional(),itemsPerPage:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),itemsPerMove:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),showArrows:o.boolean().optional(),showDots:o.boolean().optional(),autoplay:o.boolean().optional(),autoplaySpeed:o.number().optional(),showcaseMode:o.boolean().optional(),clickableItems:o.object({actionId:o.string()}).optional(),labels:o.object({position:o.enum(["top","bottom","nav-top","nav-bottom","static-top","static-bottom"]).optional(),button:o.object({label:o.string(),actionId:o.string()}).optional()}).optional()}).optional(),grid:o.object({search:o.object({enabled:o.boolean().optional(),value:o.string().optional(),button:o.object({label:o.string().optional()}).optional(),placeholder:o.string().optional(),noResultsText:o.string().optional(),clearable:o.boolean().optional()}).optional(),itemsPerRow:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),itemsPerPage:o.object({small:o.number(),medium:o.number().optional(),large:o.number().optional()}).optional(),clickableItems:o.object({actionId:o.string()}).optional()}).optional(),map:o.object({apiKey:o.string().optional(),mapId:o.string().optional(),region:o.string().length(2).optional(),colorScheme:o.nativeEnum(b).optional(),center:o.object({lat:o.number().min(-90).max(90),lng:o.number().min(-180).max(180)}).optional(),showMap:o.enum(["always","on-search","never"]).optional(),zoom:o.object({initial:o.number().optional(),focus:o.number().optional(),max:o.number().optional(),min:o.number().optional()}).optional(),controls:o.object({fullscreen:o.boolean().optional(),mapType:o.boolean().optional(),zoom:o.boolean().optional(),rotate:o.boolean().optional(),scale:o.boolean().optional(),streetView:o.boolean().optional()}).optional(),initialLocations:o.number().optional(),maxLocations:o.number().optional(),distanceUnit:o.enum(["km","mi"]).optional(),distanceFormat:o.enum(["short","long"]).optional(),distanceDecimals:o.number().optional(),options:o.object({show:o.enum(["always","on-search","never"]).optional(),component:o.enum(["list-button","list-radio","carousel"]).optional(),searchLabel:o.string().optional(),detailsLabel:o.string().optional()}).optional(),search:o.object({enabled:o.boolean().optional(),value:o.string().optional(),button:o.object({label:o.string().optional(),position:o.enum(["inside","outside"]).optional()}).optional(),placeholder:o.string().optional(),noResultsText:o.string().optional(),autofocus:o.boolean().optional(),autocomplete:o.boolean().optional(),clearable:o.boolean().optional(),mode:o.enum(["address","postcode"]).default("postcode").optional(),locationButton:o.object({icon:o.string().optional(),position:o.enum(["left","right"]).optional()}).optional(),prefix:o.object({default:n.optional()}).optional(),suffix:o.object({default:n.optional()}).optional()}).optional(),distanceRange:o.object({initial:o.number().optional(),min:o.number().optional(),max:o.number().optional(),step:o.number().optional()}).optional(),mapRegion:o.object({strokeColor:o.string().optional(),fillColor:o.string().optional(),fillOpacity:o.number().optional()}).optional(),locationPin:i.optional(),markerPin:o.object({default:i.optional(),hover:i.optional(),selected:i.optional()}).optional(),infoWindow:o.object({button:o.object({label:o.string(),action:o.string()}).optional(),directionsLabel:o.string().optional()}).optional(),ordering:o.object({orderBy:o.enum(["distance","title","id"]).optional(),orderDir:o.enum(["asc","desc"]).optional(),preferences:o.array(o.object({ids:o.string().array(),filters:o.object({postcodes:o.string().array().optional()}).optional()}))}).optional(),clickableItems:o.object({actionId:o.string()}).optional(),forcePolyfills:o.boolean().optional()}).optional(),calendar:o.object({current:o.object({month:o.number().min(0).max(11).optional(),year:o.number().optional()}).optional(),range:o.object({min:a.optional(),max:a.optional(),enabled:o.array(a).optional(),disabled:o.array(a).optional()}).optional(),time:o.object({label:o.string().optional(),format:o.enum(["12h","24h"]).optional(),component:o.enum(["carousel","list"]).optional()}).optional(),api:o.object({version:o.string().optional(),url:o.string().url().nonempty(),organizationId:o.string().nonempty(),availability:o.object({filters:d,options:y.optional()}).optional(),slots:o.object({filters:f,options:x.optional()}).optional()}).optional()}).optional(),stripe:o.object({publishableKey:o.string().nonempty(),mode:o.enum(["payment","setup"]).default("payment").optional(),createPaymentIntentEndpoint:o.string().url().optional(),createSetupIntentEndpoint:o.string().url().optional(),clientSecret:o.string().optional(),paymentIntentId:o.string().optional(),setupIntentId:o.string().optional(),amount:o.number().optional(),currency:o.string().default("usd").optional(),connectedAccountId:o.string().optional(),returnUrl:o.string().url().optional(),headers:o.record(o.string(),o.string()).optional(),paymentIntentParams:o.record(o.string(),o.unknown()).optional(),locale:o.string().optional(),appearance:o.object({theme:o.enum(["stripe","night","flat"]).optional(),variables:o.record(o.string(),o.string()).optional(),rules:o.record(o.string(),o.record(o.string(),o.string())).optional()}).optional(),layout:o.enum(["tabs","accordion","auto"]).optional(),elementOptions:o.record(o.string(),o.unknown()).optional(),terms:o.object({card:o.enum(["auto","always","never"]).optional()}).optional(),customTermsText:o.string().optional(),openDialogButtonText:o.string().optional(),confirmButtonText:o.string().optional(),cancelButtonText:o.string().optional(),authorizedText:o.string().optional(),successMessage:o.string().optional(),setupSuccessMessage:o.string().optional(),infoText:o.string().optional(),amountLabel:o.string().optional(),loadingElementText:o.string().optional(),showAmount:o.boolean().optional(),dialogTitle:o.string().optional(),autoOpenDialog:o.boolean().optional(),actionId:o.string().optional()}).optional()}).optional(),remoteOptions:_.optional(),dependsOn:m.optional(),dependentBehavior:o.enum(["hidden","disabled"]).optional(),customError:o.object({required:o.string().optional(),invalid:o.string().optional(),minLength:o.string().optional(),maxLength:o.string().optional(),minValue:o.string().optional(),maxValue:o.string().optional(),mismatch:o.string().optional()}).optional()}),I=o.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"]),N=o.object({type:o.enum(["redirect"]),params:o.record(o.string(),o.any()).optional()}),u=o.object({trackingAction:o.enum(["EMIT_EVENT","SET_BASE_DATA"]).optional(),eventName:o.string().optional(),eventData:o.record(o.string(),o.any()).optional()}).catchall(o.any()),L=o.object({id:o.string().nonempty(),number:o.number().optional(),title:o.string().optional(),description:o.string().optional(),stageId:o.string().optional(),state:o.record(o.string(),o.any()).optional(),fields:o.array(D).optional(),actions:o.array(s).optional(),result:o.object({postActions:o.array(N).optional(),pipelines:o.array(o.object({name:o.string(),data:o.object({})})).optional(),tracking:o.union([u,o.array(u)]).optional()}).optional(),error:o.object({code:I,message:o.string().optional(),icon:o.string().optional(),position:o.enum(["top","bottom"]).optional(),fields:o.array(o.object({name:o.string(),type:g,value:o.any(),error:o.string()})).optional()}).optional(),isFinal:o.boolean().optional()}),P=o.object({id:o.string().length(24).nonempty(),organizationId:o.string().uuid().nonempty(),updatedAt:o.string().datetime().nonempty(),stages:o.array(o.object({id:o.string().nonempty(),name:o.string().nonempty()}))}),K=o.object({status:o.enum(["ok","error"]),step:L,flow:P}),W=o.enum(["track"]);export{s as Action,h as ActionEvent,A as ActionScript,U as ClientOptions,b as ColorScheme,C as DEFAULT_CLIENT_OPTIONS,M as DEFAULT_MAP_ID,I as ErrorCode,E as ErrorData,W as EventType,D as Field,P as Flow,K as FlowContext,G as GetStepOptions,B as GetStepTrigger,N as PostAction,_ as RemoteOptions,L as Step,V as StepId};
package/flow.types.cjs CHANGED
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.238 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.271 | © 2026 Onlive.ai */
2
2
  "use strict";var d=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var F=Object.getOwnPropertyNames;var E=Object.prototype.hasOwnProperty;var T=(i,t)=>{for(var s in t)d(i,s,{get:t[s],enumerable:!0})},P=(i,t,s,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of F(t))!E.call(i,n)&&n!==s&&d(i,n,{get:()=>t[n],enumerable:!(p=B(t,n))||p.enumerable});return i};var R=i=>P(d({},"__esModule",{value:!0}),i);var L={};T(L,{ActionDtoSchema:()=>C,ActionPipelineDtoSchema:()=>A,ActionTypeEnumSchema:()=>j,ActionVariantEnumSchema:()=>x,ConditionalGroupOperatorDtoSchema:()=>a,ConditionalOperatorDtoSchema:()=>r,DataProviderDtoSchema:()=>c,DataProviderSourceTypeSchema:()=>v,DataTransformerDtoSchema:()=>y,DataTransformerTypeSchema:()=>g,FailFlowSchema:()=>k,FieldComponentEnumSchema:()=>b,FieldDependentBehaviorEnumSchema:()=>h,FieldDtoSchema:()=>D,FieldItemDtoSchema:()=>m,FieldSelectionModeSchema:()=>u,FieldTypeEnumSchema:()=>f,FlowDtoSchema:()=>I,NodeDtoSchema:()=>l,NodeListDtoSchema:()=>O,PipelineFunctionTypeSchema:()=>w,RoutingDtoSchema:()=>q,ScriptsDtoSchema:()=>S});module.exports=R(L);var e=require("zod"),o=e.z.record(e.z.string(),e.z.any()).describe("Represents a plain literal object."),f=e.z.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","void","location","availability"]).describe("Enum for field types."),b=e.z.enum(["input","textarea","select","radio","checkbox","switch","carousel","button","label","calendar","map","grid","rating","phone_input","stripe_payment"]).describe("Enum for field components."),u=e.z.enum(["simple","multiple"]).describe("Enum for field selection modes."),h=e.z.enum(["hidden","disabled"]).describe("Enum for field dependent behaviors."),m=e.z.object({label:e.z.union([e.z.string(),o]).optional().describe("Label for the field item."),value:o.optional().describe("Value of the field item."),description:e.z.union([e.z.string(),o]).optional().describe("Description for the field item."),image:e.z.string().url().optional().describe("URL of an image for the field item."),nextNodeId:e.z.boolean().optional().describe("ID of the next node.")}).describe("Data transfer object for a field item."),v=e.z.enum(["property","httpRequest","mqRequest","function"]).describe("Enum for data provider source types."),r=e.z.object({exists:e.z.object({valueA:e.z.unknown(),valueB:e.z.boolean()}).optional().describe("Checks if a value exists."),equal:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if two values are equal."),notEqual:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if two values are not equal."),equalOrGreater:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if valueA is equal to or greater than valueB."),equalOrLess:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if valueA is equal to or less than valueB."),greater:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if valueA is greater than valueB."),less:e.z.object({valueA:e.z.unknown(),valueB:e.z.unknown()}).optional().describe("Checks if valueA is less than valueB."),startsWith:e.z.object({valueA:e.z.string(),valueB:e.z.string()}).optional().describe("Checks if valueA starts with valueB."),contains:e.z.object({valueA:e.z.string(),valueB:e.z.string()}).optional().describe("Checks if valueA contains valueB."),includes:e.z.object({valueA:e.z.array(e.z.unknown()),valueB:e.z.unknown()}).optional().describe("Checks if valueA includes valueB.")}).describe("Data transfer object for conditional operators."),a=e.z.object({or:e.z.array(r).optional().describe("Array of OR conditions."),and:e.z.array(r).optional().describe("Array of AND conditions.")}).describe("Data transfer object for conditional group operators."),g=e.z.enum(["map","concat","filter","reduce","unique","join","flat","flatmap","sort","delete"]).describe("Enum for data transformer types."),y=e.z.object({type:g.describe("Type of the data transformer."),params:e.z.record(e.z.string(),e.z.any()).optional().describe("Parameters for the data transformer."),conditions:e.z.array(e.z.union([r,a])).optional().describe("Conditions for the data transformer."),require:e.z.array(e.z.string()).optional().describe("Required fields for the data transformer.")}).describe("Data transfer object for data transformers."),c=e.z.object({type:v.describe("Type of the data provider source."),name:e.z.string().optional().describe("Name of the data provider."),params:e.z.union([e.z.record(e.z.string(),e.z.unknown()),e.z.string()]).optional().describe("Parameters for the data provider."),persist:e.z.boolean().optional().describe("Whether to persist the data."),conditions:e.z.array(e.z.union([r,a])).optional().describe("Conditions for the data provider."),transformers:e.z.array(y).optional().describe("Transformers for the data provider."),require:e.z.array(e.z.string()).optional().describe("Required fields for the data provider.")}).describe("Data transfer object for data providers."),D=e.z.object({name:e.z.string().describe("Name of the field."),type:f.describe("Type of the field."),label:e.z.union([e.z.string(),o]).optional().describe("Label for the field."),value:e.z.any().optional().describe("Value of the field."),component:b.optional().describe("Component for the field."),selectionMode:u.optional().describe("Selection mode for the field."),required:e.z.boolean().optional().describe("Whether the field is required."),placeholder:e.z.union([e.z.string(),o]).optional().describe("Placeholder for the field."),options:e.z.array(m).optional().describe("Options for the field."),optionsProvider:c.optional().describe("Data provider for the field options."),configuration:o.optional().describe("Configuration for the field."),dependsOn:e.z.array(o).optional().describe("Fields that this field depends on."),dependentBehavior:h.optional().describe("Behavior of the field when its dependencies are not met."),conditions:e.z.array(o).optional().describe("Conditions for the field."),customError:o.optional().describe("Custom error message for the field.")}).describe("Data transfer object for a field."),j=e.z.enum(["submit","link","forward","script"]).describe("Enum for action types."),x=e.z.enum(["primary","secondary","success","warning","info","danger"]).describe("Enum for action variants."),S=e.z.object({src:e.z.string().url().describe("Source URL of the script."),preload:e.z.boolean().optional().describe("Whether to preload the script."),name:e.z.string().describe("Name of the script."),function:e.z.string().describe("Function to execute from the script."),params:e.z.record(e.z.string(),e.z.any()).optional().describe("Parameters for the script function.")}).describe("Data transfer object for scripts."),w=e.z.string().describe("Enum for pipeline function types. TODO: Replace z.string() with z.enum([...]) with actual pipeline function types."),k=o.describe("Data transfer object for fail flow. TODO: Define the actual structure for FailFlowSchema if it's not a plain literal object."),A=e.z.object({function:w.describe("Function type for the pipeline."),params:o.optional().describe("Parameters for the pipeline function."),conditions:e.z.array(e.z.union([r,a])).optional().describe("Conditions for the pipeline."),require:e.z.array(e.z.string()).optional().describe("Required fields for the pipeline."),onFail:k.optional().describe("Fail flow configuration.")}).describe("Data transfer object for an action pipeline."),C=e.z.object({id:e.z.string().describe("ID of the action."),label:e.z.union([e.z.string(),o]).optional().describe("Label for the action."),type:j.describe("Type of the action."),variant:x.optional().describe("Variant of the action."),url:e.z.string().optional().describe("URL for link-type actions."),pipeline:e.z.array(A).optional().describe("Pipeline for the action."),conditions:e.z.array(o).optional().describe("Conditions for the action."),nextStepId:e.z.string().optional().describe("ID of the next step."),scripts:e.z.array(S).optional().describe("Scripts associated with the action.")}).describe("Data transfer object for an action."),q=e.z.object({conditions:e.z.array(e.z.union([r,a])).optional().describe("Conditions for the routing rule."),nextStepId:e.z.string().describe("ID of the next step if conditions are met.")}).describe("Data transfer object for routing."),l=e.z.object({id:e.z.string().describe("ID of the node."),initialNode:e.z.boolean().optional().describe("Whether this is the initial node."),finalNode:e.z.boolean().optional().describe("Whether this is a final node."),title:e.z.union([e.z.string(),o]).optional().describe("Title of the node."),description:e.z.string().optional().describe("Description of the node."),fields:e.z.array(D).optional().describe("Fields in the node."),actions:e.z.array(C).optional().describe("Actions available in the node."),routing:e.z.array(q).optional().describe("Routing rules for the node."),stateProviders:e.z.array(c).optional().describe("Data providers for state management."),trackingProviders:e.z.array(c).optional().describe("Data providers for tracking."),stageId:e.z.string().optional().describe("ID of the stage this node belongs to."),translations:o.optional().describe("Translations for the node.")}).describe("Data transfer object for a node."),O=e.z.array(l).describe("List of nodes."),I=e.z.object({nodes:e.z.array(l).describe("List of nodes.")});0&&(module.exports={ActionDtoSchema,ActionPipelineDtoSchema,ActionTypeEnumSchema,ActionVariantEnumSchema,ConditionalGroupOperatorDtoSchema,ConditionalOperatorDtoSchema,DataProviderDtoSchema,DataProviderSourceTypeSchema,DataTransformerDtoSchema,DataTransformerTypeSchema,FailFlowSchema,FieldComponentEnumSchema,FieldDependentBehaviorEnumSchema,FieldDtoSchema,FieldItemDtoSchema,FieldSelectionModeSchema,FieldTypeEnumSchema,FlowDtoSchema,NodeDtoSchema,NodeListDtoSchema,PipelineFunctionTypeSchema,RoutingDtoSchema,ScriptsDtoSchema});
package/flow.types.js CHANGED
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.238 | © 2026 Onlive.ai */
1
+ /*! @onlive.ai/flow-client v0.1.271 | © 2026 Onlive.ai */
2
2
  import{z as e}from"zod";var o=e.record(e.string(),e.any()).describe("Represents a plain literal object."),a=e.enum(["text","boolean","number","email","phone","mobile_phone","date","time","datetime","password","url","void","location","availability"]).describe("Enum for field types."),s=e.enum(["input","textarea","select","radio","checkbox","switch","carousel","button","label","calendar","map","grid","rating","phone_input","stripe_payment"]).describe("Enum for field components."),c=e.enum(["simple","multiple"]).describe("Enum for field selection modes."),d=e.enum(["hidden","disabled"]).describe("Enum for field dependent behaviors."),l=e.object({label:e.union([e.string(),o]).optional().describe("Label for the field item."),value:o.optional().describe("Value of the field item."),description:e.union([e.string(),o]).optional().describe("Description for the field item."),image:e.string().url().optional().describe("URL of an image for the field item."),nextNodeId:e.boolean().optional().describe("ID of the next node.")}).describe("Data transfer object for a field item."),p=e.enum(["property","httpRequest","mqRequest","function"]).describe("Enum for data provider source types."),t=e.object({exists:e.object({valueA:e.unknown(),valueB:e.boolean()}).optional().describe("Checks if a value exists."),equal:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if two values are equal."),notEqual:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if two values are not equal."),equalOrGreater:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if valueA is equal to or greater than valueB."),equalOrLess:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if valueA is equal to or less than valueB."),greater:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if valueA is greater than valueB."),less:e.object({valueA:e.unknown(),valueB:e.unknown()}).optional().describe("Checks if valueA is less than valueB."),startsWith:e.object({valueA:e.string(),valueB:e.string()}).optional().describe("Checks if valueA starts with valueB."),contains:e.object({valueA:e.string(),valueB:e.string()}).optional().describe("Checks if valueA contains valueB."),includes:e.object({valueA:e.array(e.unknown()),valueB:e.unknown()}).optional().describe("Checks if valueA includes valueB.")}).describe("Data transfer object for conditional operators."),i=e.object({or:e.array(t).optional().describe("Array of OR conditions."),and:e.array(t).optional().describe("Array of AND conditions.")}).describe("Data transfer object for conditional group operators."),f=e.enum(["map","concat","filter","reduce","unique","join","flat","flatmap","sort","delete"]).describe("Enum for data transformer types."),b=e.object({type:f.describe("Type of the data transformer."),params:e.record(e.string(),e.any()).optional().describe("Parameters for the data transformer."),conditions:e.array(e.union([t,i])).optional().describe("Conditions for the data transformer."),require:e.array(e.string()).optional().describe("Required fields for the data transformer.")}).describe("Data transfer object for data transformers."),r=e.object({type:p.describe("Type of the data provider source."),name:e.string().optional().describe("Name of the data provider."),params:e.union([e.record(e.string(),e.unknown()),e.string()]).optional().describe("Parameters for the data provider."),persist:e.boolean().optional().describe("Whether to persist the data."),conditions:e.array(e.union([t,i])).optional().describe("Conditions for the data provider."),transformers:e.array(b).optional().describe("Transformers for the data provider."),require:e.array(e.string()).optional().describe("Required fields for the data provider.")}).describe("Data transfer object for data providers."),u=e.object({name:e.string().describe("Name of the field."),type:a.describe("Type of the field."),label:e.union([e.string(),o]).optional().describe("Label for the field."),value:e.any().optional().describe("Value of the field."),component:s.optional().describe("Component for the field."),selectionMode:c.optional().describe("Selection mode for the field."),required:e.boolean().optional().describe("Whether the field is required."),placeholder:e.union([e.string(),o]).optional().describe("Placeholder for the field."),options:e.array(l).optional().describe("Options for the field."),optionsProvider:r.optional().describe("Data provider for the field options."),configuration:o.optional().describe("Configuration for the field."),dependsOn:e.array(o).optional().describe("Fields that this field depends on."),dependentBehavior:d.optional().describe("Behavior of the field when its dependencies are not met."),conditions:e.array(o).optional().describe("Conditions for the field."),customError:o.optional().describe("Custom error message for the field.")}).describe("Data transfer object for a field."),h=e.enum(["submit","link","forward","script"]).describe("Enum for action types."),m=e.enum(["primary","secondary","success","warning","info","danger"]).describe("Enum for action variants."),v=e.object({src:e.string().url().describe("Source URL of the script."),preload:e.boolean().optional().describe("Whether to preload the script."),name:e.string().describe("Name of the script."),function:e.string().describe("Function to execute from the script."),params:e.record(e.string(),e.any()).optional().describe("Parameters for the script function.")}).describe("Data transfer object for scripts."),g=e.string().describe("Enum for pipeline function types. TODO: Replace z.string() with z.enum([...]) with actual pipeline function types."),y=o.describe("Data transfer object for fail flow. TODO: Define the actual structure for FailFlowSchema if it's not a plain literal object."),D=e.object({function:g.describe("Function type for the pipeline."),params:o.optional().describe("Parameters for the pipeline function."),conditions:e.array(e.union([t,i])).optional().describe("Conditions for the pipeline."),require:e.array(e.string()).optional().describe("Required fields for the pipeline."),onFail:y.optional().describe("Fail flow configuration.")}).describe("Data transfer object for an action pipeline."),j=e.object({id:e.string().describe("ID of the action."),label:e.union([e.string(),o]).optional().describe("Label for the action."),type:h.describe("Type of the action."),variant:m.optional().describe("Variant of the action."),url:e.string().optional().describe("URL for link-type actions."),pipeline:e.array(D).optional().describe("Pipeline for the action."),conditions:e.array(o).optional().describe("Conditions for the action."),nextStepId:e.string().optional().describe("ID of the next step."),scripts:e.array(v).optional().describe("Scripts associated with the action.")}).describe("Data transfer object for an action."),x=e.object({conditions:e.array(e.union([t,i])).optional().describe("Conditions for the routing rule."),nextStepId:e.string().describe("ID of the next step if conditions are met.")}).describe("Data transfer object for routing."),n=e.object({id:e.string().describe("ID of the node."),initialNode:e.boolean().optional().describe("Whether this is the initial node."),finalNode:e.boolean().optional().describe("Whether this is a final node."),title:e.union([e.string(),o]).optional().describe("Title of the node."),description:e.string().optional().describe("Description of the node."),fields:e.array(u).optional().describe("Fields in the node."),actions:e.array(j).optional().describe("Actions available in the node."),routing:e.array(x).optional().describe("Routing rules for the node."),stateProviders:e.array(r).optional().describe("Data providers for state management."),trackingProviders:e.array(r).optional().describe("Data providers for tracking."),stageId:e.string().optional().describe("ID of the stage this node belongs to."),translations:o.optional().describe("Translations for the node.")}).describe("Data transfer object for a node."),w=e.array(n).describe("List of nodes."),k=e.object({nodes:e.array(n).describe("List of nodes.")});export{j as ActionDtoSchema,D as ActionPipelineDtoSchema,h as ActionTypeEnumSchema,m as ActionVariantEnumSchema,i as ConditionalGroupOperatorDtoSchema,t as ConditionalOperatorDtoSchema,r as DataProviderDtoSchema,p as DataProviderSourceTypeSchema,b as DataTransformerDtoSchema,f as DataTransformerTypeSchema,y as FailFlowSchema,s as FieldComponentEnumSchema,d as FieldDependentBehaviorEnumSchema,u as FieldDtoSchema,l as FieldItemDtoSchema,c as FieldSelectionModeSchema,a as FieldTypeEnumSchema,k as FlowDtoSchema,n as NodeDtoSchema,w as NodeListDtoSchema,g as PipelineFunctionTypeSchema,x as RoutingDtoSchema,v as ScriptsDtoSchema};
package/index.cjs CHANGED
@@ -1,2 +1,2 @@
1
- /*! @onlive.ai/flow-client v0.1.238 | © 2026 Onlive.ai */
2
- "use strict";var y=Object.defineProperty;var J=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var Q=(a,o,e)=>o in a?y(a,o,{enumerable:!0,configurable:!0,writable:!0,value:e}):a[o]=e;var tt=(a,o)=>{for(var e in o)y(a,e,{get:o[e],enumerable:!0})},ot=(a,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let i of Z(o))!X.call(a,i)&&i!==e&&y(a,i,{get:()=>o[i],enumerable:!(n=J(o,i))||n.enumerable});return a};var et=a=>ot(y({},"__esModule",{value:!0}),a);var p=(a,o,e)=>Q(a,typeof o!="symbol"?o+"":o,e);var ct={};tt(ct,{Action:()=>x,ActionEvent:()=>G,ActionScript:()=>M,ClientOptions:()=>N,ColorScheme:()=>w,DEFAULT_CLIENT_OPTIONS:()=>I,DEFAULT_MAP_ID:()=>nt,ErrorCode:()=>q,ErrorData:()=>V,EventType:()=>lt,Field:()=>U,Flow:()=>W,FlowClient:()=>_,FlowContext:()=>pt,GetStepOptions:()=>b,GetStepTrigger:()=>S,ONLIVE_ANALYTICS_EVENT:()=>E,ONLIVE_FLOW_FORM_NAME:()=>d,PostAction:()=>$,Step:()=>B,StepId:()=>A,TrackingOptionsSchema:()=>g});module.exports=et(ct);var Y=require("@onlive.ai/common-121/utils/browser-preferences.js"),K=require("@onlive.ai/common-121/utils/merge.js");var D=require("@onlive.ai/common-121/utils/browser-preferences.js"),R=require("@onlive.ai/common-121/utils/merge.js"),u=require("@onlive.ai/tracker/session"),L=require("@onlive.ai/tracker/tracker");var s=require("zod"),d="flow_form",E="onlive-analytics-event",g=s.z.object({enabled:s.z.boolean().default(!1).optional(),conditions:s.z.custom().optional(),data:s.z.custom().optional(),removeExtraneousValues:s.z.boolean().default(!0).optional(),allowBotTraffic:s.z.boolean().default(!1).optional(),adapters:s.z.array(s.z.string()).default([]).optional(),apiUrl:s.z.string().url().optional(),emitters:s.z.object({windowEvent:s.z.boolean().optional(),dataLayer:s.z.boolean().optional(),windowPostMessage:s.z.boolean().optional()}).optional()});var O=class{constructor(o,e,n,i){p(this,"taskSuccessMappers",{create_i_event_registration:o=>({task_name:"ievent_registration",task_data:this.getRecord(o.fields)})});p(this,"options");p(this,"tracker");p(this,"eventListeners",[]);this.options=g.parse(n),this.tracker=new L.Tracker({apiUrl:this.options.apiUrl||"",conditions:this.options.conditions,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:i}),this.tracker.setBase((0,R.merge)({},{organization_id:o,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:u.Session.id,interaction_id:u.Session.interactionId,extra:{flow_id:e}},this.options.data)),window.addEventListener(E,({detail:r})=>r?.event&&r?.data&&this.emit(r.event,r.data))}getTracker(){return this.tracker}preferences(){return{...(0,D.browserPreferences)(),interactionId:u.Session.interactionId,guestId:u.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?d:void 0}),e.fields&&Object.keys(e.fields).length&&this.tracker.send("form_submit",{form_name:d,form_data:e.fields}))}analyzeResponse(o,e){let n=this.getTrackingEntries(e.step.result?.tracking),i={};n.forEach(r=>{let{trackingAction:c,...m}=r;(!c||c==="SET_BASE_DATA")&&(delete m.eventName,delete m.eventData,Object.assign(i,m))}),this.tracker.setBase({form_name:d,step_name:e.step.id,step_number:e.step.number,step_initial:!("currentStepId"in o)||void 0,step_final:e.step.isFinal,...i}),"currentStepId"in o&&(e.step.result?.pipelines&&e.step.result.pipelines.forEach(r=>{let c=this.mapTaskSuccessPipeline({name:r.name,data:this.getRecord(r.data)});this.tracker.send("task_success",{task_name:c.task_name,task_data:c.task_data})}),e.step.error&&this.tracker.send("form_error",{form_error:e.step.error.code})),n.forEach(r=>{let{trackingAction:c,eventName:m,eventData:H}=r;c==="EMIT_EVENT"&&typeof m=="string"&&m&&this.send(m,this.getRecord(H))}),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}))}mapTaskSuccessPipeline(o){let e=this.taskSuccessMappers[o.name];if(!e)return{task_name:this.normalizeTaskName(o.name),task_data:o.data};let n=e(o.data);return{...n,task_name:this.normalizeTaskName(n.task_name)}}normalizeTaskName(o){return o.replace(/_v4$/,"")}getRecord(o){return!o||typeof o!="object"||Array.isArray(o)?{}:o}getTrackingEntries(o){if(Array.isArray(o))return o.map(n=>this.getRecord(n)).filter(n=>Object.keys(n).length>0);let e=this.getRecord(o);return Object.keys(e).length>0?[e]:[]}},P=O;var T=require("@onlive.ai/calendar"),k=require("@onlive.ai/calendar/client/client.types.js"),t=require("zod");var nt="bf585082a22fad962b4cbc08",w=(n=>(n.DARK="DARK",n.FOLLOW_SYSTEM="FOLLOW_SYSTEM",n.LIGHT="LIGHT",n))(w||{}),I={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},A=t.z.string().nonempty(),N=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:g.optional(),devMode:t.z.boolean().default(!1).optional()}),b=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()}),S=t.z.object({currentStepId:t.z.string().nonempty(),actionId:t.z.string().nonempty()}),C=t.z.enum(["text","boolean","number","first_name","last_name","name","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),it=t.z.object({name:t.z.string().optional(),value:t.z.string().optional(),icon:t.z.string().optional(),type:t.z.enum(["url","email","phone"]).optional()}),at=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(),it).optional()}),rt=t.z.object({datetime:t.z.string().datetime(),meta:t.z.record(t.z.string(),t.z.any()).optional()}),v=t.z.union([t.z.string(),t.z.number(),t.z.boolean(),at,rt]),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()}),h=t.z.custom(a=>typeof a=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(a),{message:"Date must be in 'YYYY-MM-DD' format"}),l=t.z.object({text:t.z.string().optional(),icon:t.z.string().optional()}),j=t.z.object({fieldName:t.z.string().nonempty(),value:v.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()}),st=t.z.object({and:t.z.array(j).optional(),or:t.z.array(j).optional()}),z=t.z.array(t.z.union([j,st])),M=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.array(t.z.record(t.z.string(),t.z.any())).optional()}),G=t.z.object({name:t.z.enum(["organization_call","close_panel","retry_first_step","retry_next_step","organization_chat"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),x=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"]),position:t.z.enum(["top","bottom"]).optional(),url:t.z.string().url().optional(),target:t.z.enum(["_self","_blank","_parent","_top"]).optional(),loadingBehavior:t.z.enum(["none","spinner","disabled"]).optional(),prefix:l.optional(),suffix:l.optional(),caption:t.z.string().optional(),scripts:M.array().optional(),events:G.array().optional()}),V=t.z.object({message:t.z.string().optional(),icon:t.z.string().optional(),position:t.z.enum(["top","bottom"]).optional(),kind:t.z.enum(["initial-loading","step-loading","step-validation","field-loading"]).optional(),actions:t.z.array(x).optional()}),U=t.z.object({name:t.z.string().nonempty(),label:t.z.string().optional(),description:t.z.string().optional(),value:t.z.union([v,t.z.array(v)]).optional(),type:C,component:t.z.enum(["input","phone_input","textarea","select","radio","checkbox","switch","rating","carousel","grid","button","label","map","calendar","stripe_payment"]).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({id:t.z.string().optional(),label:t.z.string().nonempty(),value:v.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(),actions:t.z.array(x).optional(),dependsOn:z.optional()})).optional(),required:t.z.boolean().optional(),configuration:t.z.object({generic:t.z.object({attributes:t.z.record(t.z.string(),t.z.any()).optional(),error:t.z.object({loading:V.optional(),validation:t.z.object({icon:t.z.string().optional(),showOn:t.z.enum(["input","blur"]).optional()}).optional()})}).optional(),input:t.z.object({min:t.z.union([t.z.number(),t.z.string()]).optional(),max:t.z.union([t.z.number(),t.z.string()]).optional(),step:t.z.number().optional(),pattern:t.z.string().refine(a=>{try{return new RegExp(a),!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(),phoneInput:t.z.object({includePrefixValue:t.z.boolean().optional(),showFlag:t.z.boolean().optional(),showCode:t.z.boolean().optional(),prefixLabel:t.z.string().optional(),lockedPrefix:t.z.boolean().optional(),countries:t.z.array(t.z.string()).optional(),defaultPrefix:t.z.string().optional(),autoDetectCountry:t.z.boolean().optional()}).optional(),textarea:t.z.object({minLength:t.z.number().optional(),maxLength:t.z.number().optional(),exactLength:t.z.number().optional(),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.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),itemsPerMove:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),showArrows:t.z.boolean().optional(),showDots:t.z.boolean().optional(),autoplay:t.z.boolean().optional(),autoplaySpeed:t.z.number().optional(),showcaseMode:t.z.boolean().optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional(),labels:t.z.object({position:t.z.enum(["top","bottom","nav-top","nav-bottom","static-top","static-bottom"]).optional(),button:t.z.object({label:t.z.string(),actionId:t.z.string()}).optional()}).optional()}).optional(),grid:t.z.object({search:t.z.object({enabled:t.z.boolean().optional(),value:t.z.string().optional(),button:t.z.object({label:t.z.string().optional()}).optional(),placeholder:t.z.string().optional(),noResultsText:t.z.string().optional(),clearable:t.z.boolean().optional()}).optional(),itemsPerRow:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),itemsPerPage:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional()}).optional(),map:t.z.object({apiKey:t.z.string().optional(),mapId:t.z.string().optional(),region:t.z.string().length(2).optional(),colorScheme:t.z.nativeEnum(w).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(),distanceDecimals:t.z.number().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(),autofocus:t.z.boolean().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()}).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(),directionsLabel:t.z.string().optional()}).optional(),ordering:t.z.object({orderBy:t.z.enum(["distance","title","id"]).optional(),orderDir:t.z.enum(["asc","desc"]).optional(),preferences:t.z.array(t.z.object({ids:t.z.string().array(),filters:t.z.object({postcodes:t.z.string().array().optional()}).optional()}))}).optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional(),forcePolyfills:t.z.boolean().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:h.optional(),max:h.optional(),enabled:t.z.array(h).optional(),disabled:t.z.array(h).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({version:t.z.string().optional(),url:t.z.string().url().nonempty(),organizationId:t.z.string().nonempty(),availability:t.z.object({filters:T.GetAvailabilityFilters,options:T.GetAvailabilityOptions.optional()}).optional(),slots:t.z.object({filters:k.GetSlotFilters,options:k.GetSlotOptions.optional()}).optional()}).optional()}).optional(),stripe:t.z.object({publishableKey:t.z.string().nonempty(),mode:t.z.enum(["payment","setup"]).default("payment").optional(),createPaymentIntentEndpoint:t.z.string().url().optional(),createSetupIntentEndpoint:t.z.string().url().optional(),clientSecret:t.z.string().optional(),paymentIntentId:t.z.string().optional(),setupIntentId:t.z.string().optional(),amount:t.z.number().optional(),currency:t.z.string().default("usd").optional(),connectedAccountId:t.z.string().optional(),returnUrl:t.z.string().url().optional(),headers:t.z.record(t.z.string(),t.z.string()).optional(),paymentIntentParams:t.z.record(t.z.string(),t.z.unknown()).optional(),locale:t.z.string().optional(),appearance:t.z.object({theme:t.z.enum(["stripe","night","flat"]).optional(),variables:t.z.record(t.z.string(),t.z.string()).optional(),rules:t.z.record(t.z.string(),t.z.record(t.z.string(),t.z.string())).optional()}).optional(),layout:t.z.enum(["tabs","accordion","auto"]).optional(),elementOptions:t.z.record(t.z.string(),t.z.unknown()).optional(),terms:t.z.object({card:t.z.enum(["auto","always","never"]).optional()}).optional(),customTermsText:t.z.string().optional(),openDialogButtonText:t.z.string().optional(),confirmButtonText:t.z.string().optional(),cancelButtonText:t.z.string().optional(),authorizedText:t.z.string().optional(),successMessage:t.z.string().optional(),setupSuccessMessage:t.z.string().optional(),infoText:t.z.string().optional(),amountLabel:t.z.string().optional(),loadingElementText:t.z.string().optional(),showAmount:t.z.boolean().optional(),dialogTitle:t.z.string().optional(),autoOpenDialog:t.z.boolean().optional(),actionId:t.z.string().optional()}).optional()}).optional(),dependsOn:z.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()}),q=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"]),$=t.z.object({type:t.z.enum(["redirect"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),F=t.z.object({trackingAction:t.z.enum(["EMIT_EVENT","SET_BASE_DATA"]).optional(),eventName:t.z.string().optional(),eventData:t.z.record(t.z.string(),t.z.any()).optional()}).catchall(t.z.any()),B=t.z.object({id:t.z.string().nonempty(),number:t.z.number().optional(),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(U).optional(),actions:t.z.array(x).optional(),result:t.z.object({postActions:t.z.array($).optional(),pipelines:t.z.array(t.z.object({name:t.z.string(),data:t.z.object({})})).optional(),tracking:t.z.union([F,t.z.array(F)]).optional()}).optional(),error:t.z.object({code:q,message:t.z.string().optional(),icon:t.z.string().optional(),position:t.z.enum(["top","bottom"]).optional(),fields:t.z.array(t.z.object({name:t.z.string(),type:C,value:t.z.any(),error:t.z.string()})).optional()}).optional(),isFinal:t.z.boolean().optional()}),W=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()}))}),pt=t.z.object({status:t.z.enum(["ok","error"]),step:B,flow:W}),lt=t.z.enum(["track"]);var _=class{constructor(o){p(this,"baseURL");p(this,"headers");p(this,"flowId");p(this,"tracking");p(this,"RETRIES",[0,3e3]);let e=(0,K.merge)({},I,N.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 P(e.organizationId,e.flowId,e.tracking,!!e.devMode))}delay(o){return new Promise(e=>setTimeout(e,o))}async request(o,e={}){let n=null;try{return await this.executeRequest(o,e)}catch(i){n=i instanceof Error?i:new Error(String(i))}for(let i of this.RETRIES)try{return i>0&&await this.delay(i),await this.executeRequest(o,e)}catch(r){n=r instanceof Error?r:new Error(String(r))}throw n??new Error("Request failed")}async executeRequest(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?this.tracking?.preferences():(0,Y.browserPreferences)(),n=await this.request(`flow/${this.flowId}/first-step`,{method:"POST",body:JSON.stringify(b.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(),i=await this.request(`flow/${this.flowId}/steps/${A.parse(o)}`,{method:"POST",body:JSON.stringify(b.parse({...e,state:{preferences:n,...e.state}}))});return this.tracking?.analyzeResponse({stepId:o},i),i}async nextStep(o,e={}){this.tracking?.analyzeRequest(o,e);let{currentStepId:n,actionId:i}=S.parse(o),r=await this.request(`flow/${this.flowId}/steps/${n}/action/${i}`,{method:"POST",body:JSON.stringify(b.parse(e))});return this.tracking?.analyzeResponse(o,r),r}};0&&(module.exports={Action,ActionEvent,ActionScript,ClientOptions,ColorScheme,DEFAULT_CLIENT_OPTIONS,DEFAULT_MAP_ID,ErrorCode,ErrorData,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.271 | © 2026 Onlive.ai */
2
+ "use strict";var x=Object.defineProperty;var J=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var Q=(r,o)=>{for(var e in o)x(r,e,{get:o[e],enumerable:!0})},tt=(r,o,e,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let i of Z(o))!X.call(r,i)&&i!==e&&x(r,i,{get:()=>o[i],enumerable:!(n=J(o,i))||n.enumerable});return r};var ot=r=>tt(x({},"__esModule",{value:!0}),r);var lt={};Q(lt,{Action:()=>T,ActionEvent:()=>M,ActionScript:()=>C,ClientOptions:()=>N,ColorScheme:()=>w,DEFAULT_CLIENT_OPTIONS:()=>j,DEFAULT_MAP_ID:()=>et,ErrorCode:()=>q,ErrorData:()=>U,EventType:()=>pt,Field:()=>V,Flow:()=>K,FlowClient:()=>k,FlowContext:()=>st,GetStepOptions:()=>g,GetStepTrigger:()=>S,ONLIVE_ANALYTICS_EVENT:()=>E,ONLIVE_FLOW_FORM_NAME:()=>m,PostAction:()=>$,RemoteOptions:()=>G,Step:()=>B,StepId:()=>I,TrackingOptionsSchema:()=>d});module.exports=ot(lt);var W=require("@onlive.ai/common-121/utils/browser-preferences.js"),Y=require("@onlive.ai/common-121/utils/merge.js");var A=require("@onlive.ai/common-121/utils/browser-preferences.js"),D=require("@onlive.ai/common-121/utils/merge.js"),u=require("@onlive.ai/tracker/session"),R=require("@onlive.ai/tracker/tracker");var s=require("zod"),m="flow_form",E="onlive-analytics-event",d=s.z.object({enabled:s.z.boolean().default(!1).optional(),conditions:s.z.custom().optional(),data:s.z.custom().optional(),removeExtraneousValues:s.z.boolean().default(!0).optional(),allowBotTraffic:s.z.boolean().default(!1).optional(),adapters:s.z.array(s.z.string()).default([]).optional(),apiUrl:s.z.string().url().optional(),emitters:s.z.object({windowEvent:s.z.boolean().optional(),dataLayer:s.z.boolean().optional(),windowPostMessage:s.z.boolean().optional()}).optional()});var _=class r{static DEFAULT_TRACK_SEND_OPTIONS={keepalive:!0};taskSuccessMappers={create_i_event_registration:o=>({task_name:"ievent_registration",task_data:this.getRecord(o.fields)})};options;tracker;eventListeners=[];constructor(o,e,n,i){this.options=d.parse(n),this.tracker=new R.Tracker({apiUrl:this.options.apiUrl||"",conditions:this.options.conditions,removeExtraneousValues:this.options.removeExtraneousValues,allowBotTraffic:this.options.allowBotTraffic,adapters:this.options.adapters,dryRun:i}),this.tracker.setBase((0,D.merge)({},{organization_id:o,page_url:window.location.href,page_referrer:document.referrer,origin_medium:"web",guest_id:u.Session.id,interaction_id:u.Session.interactionId,extra:{flow_id:e}},this.options.data)),window.addEventListener(E,({detail:a})=>a?.event&&a?.data&&this.emit(a.event,a.data))}getTracker(){return this.tracker}preferences(){return{...(0,A.browserPreferences)(),interactionId:u.Session.interactionId,guestId:u.Session.id}}analyzeRequest(o,e){"currentStepId"in o&&(o.actionId&&this.track("element_click",{element_label:o.actionId,element_type:"button",form_name:Object.keys(e.fields||{}).length?m:void 0}),e.fields&&Object.keys(e.fields).length&&this.track("form_submit",{form_name:m,form_data:e.fields}))}analyzeResponse(o,e){let n=this.getTrackingEntries(e.step.result?.tracking),i={};n.forEach(a=>{let{trackingAction:l,...c}=a;(!l||l==="SET_BASE_DATA")&&(delete c.eventName,delete c.eventData,Object.assign(i,c))}),this.tracker.setBase({form_name:m,step_name:e.step.id,step_number:e.step.number,step_initial:!("currentStepId"in o)||void 0,step_final:e.step.isFinal,...i}),"currentStepId"in o&&(e.step.result?.pipelines&&e.step.result.pipelines.forEach(a=>{let l=this.mapTaskSuccessPipeline({name:a.name,data:this.getRecord(a.data)});this.track("task_success",{task_name:l.task_name,task_data:l.task_data})}),e.step.error&&this.track("form_error",{form_error:e.step.error.code})),n.forEach(a=>{let{trackingAction:l,eventName:c,eventData:H}=a;l==="EMIT_EVENT"&&typeof c=="string"&&c&&this.send(c,this.getRecord(H))}),this.track("impression",{impression_type:"step"})}track(o,e){this.tracker.send(o,e,r.DEFAULT_TRACK_SEND_OPTIONS)}send(o,e){this.track(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}))}mapTaskSuccessPipeline(o){let e=this.taskSuccessMappers[o.name];if(!e)return{task_name:this.normalizeTaskName(o.name),task_data:o.data};let n=e(o.data);return{...n,task_name:this.normalizeTaskName(n.task_name)}}normalizeTaskName(o){return o.replace(/_v4$/,"")}getRecord(o){return!o||typeof o!="object"||Array.isArray(o)?{}:o}getTrackingEntries(o){if(Array.isArray(o))return o.map(n=>this.getRecord(n)).filter(n=>Object.keys(n).length>0);let e=this.getRecord(o);return Object.keys(e).length>0?[e]:[]}},L=_;var h=require("@onlive.ai/calendar"),v=require("@onlive.ai/calendar/client/client.types.js"),t=require("zod");var et="bf585082a22fad962b4cbc08",w=(n=>(n.DARK="DARK",n.FOLLOW_SYSTEM="FOLLOW_SYSTEM",n.LIGHT="LIGHT",n))(w||{}),j={tracking:{removeExtraneousValues:!0,apiUrl:"https://srvless.onlive.site/tracking",data:{widget_type:"OnliveAppFlow"}}},I=t.z.string().nonempty(),N=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()}),S=t.z.object({currentStepId:t.z.string().nonempty(),actionId:t.z.string().nonempty()}),F=t.z.enum(["text","boolean","number","first_name","last_name","name","email","phone","mobile_phone","date","time","datetime","password","url","color","object","void","location","availability"]),nt=t.z.object({name:t.z.string().optional(),value:t.z.string().optional(),icon:t.z.string().optional(),type:t.z.enum(["url","email","phone"]).optional()}),it=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(),nt).optional()}),at=t.z.object({datetime:t.z.string().datetime(),meta:t.z.record(t.z.string(),t.z.any()).optional()}),f=t.z.union([t.z.string(),t.z.number(),t.z.boolean(),it,at]),b=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(r=>typeof r=="string"&&/^\d{4}-\d{2}-\d{2}$/.test(r),{message:"Date must be in 'YYYY-MM-DD' format"}),p=t.z.object({text:t.z.string().optional(),icon:t.z.string().optional()}),O=t.z.object({fieldName:t.z.string().nonempty(),value:f.optional(),operator:t.z.enum(["exists","equals","not-equals","contains","not-contains","greater-than","less-than"]).optional()}),rt=t.z.object({and:t.z.array(O).optional(),or:t.z.array(O).optional()}),P=t.z.array(t.z.union([O,rt])),C=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.array(t.z.record(t.z.string(),t.z.any())).optional()}),M=t.z.object({name:t.z.enum(["organization_call","close_panel","retry_first_step","retry_next_step","organization_chat"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),T=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"]),outline:t.z.boolean().optional(),position:t.z.enum(["top","bottom"]).optional(),url:t.z.string().url().optional(),target:t.z.enum(["_self","_blank","_parent","_top"]).optional(),loadingBehavior:t.z.enum(["none","spinner","disabled"]).optional(),prefix:p.optional(),suffix:p.optional(),caption:t.z.string().optional(),scripts:C.array().optional(),events:M.array().optional()}),U=t.z.object({message:t.z.string().optional(),icon:t.z.string().optional(),position:t.z.enum(["top","bottom"]).optional(),kind:t.z.enum(["initial-loading","step-loading","step-validation","field-loading"]).optional(),actions:t.z.array(T).optional()}),G=t.z.object({stepId:t.z.string().nonempty(),name:t.z.string().nonempty(),behavior:t.z.enum(["append","replace"]),state:t.z.record(t.z.string(),t.z.any()).optional()}),V=t.z.object({name:t.z.string().nonempty(),label:t.z.string().optional(),description:t.z.string().optional(),value:t.z.union([f,t.z.array(f)]).optional(),type:F,component:t.z.enum(["input","phone_input","textarea","select","radio","checkbox","switch","rating","carousel","grid","button","label","map","calendar","stripe_payment"]).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({id:t.z.string().optional(),label:t.z.string().nonempty(),value:f.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(),actions:t.z.array(T).optional(),dependsOn:P.optional()})).optional(),required:t.z.boolean().optional(),configuration:t.z.object({generic:t.z.object({attributes:t.z.record(t.z.string(),t.z.any()).optional(),error:t.z.object({loading:U.optional(),validation:t.z.object({icon:t.z.string().optional(),showOn:t.z.enum(["input","blur"]).optional()}).optional()})}).optional(),input:t.z.object({min:t.z.union([t.z.number(),t.z.string()]).optional(),max:t.z.union([t.z.number(),t.z.string()]).optional(),step:t.z.number().optional(),pattern:t.z.string().refine(r=>{try{return new RegExp(r),!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:p.optional(),success:p.optional(),error:p.optional()}).optional(),suffix:t.z.object({default:p.optional(),success:p.optional(),error:p.optional()}).optional(),clearable:t.z.boolean().optional(),floatingLabel:t.z.boolean().optional()}).optional(),phoneInput:t.z.object({includePrefixValue:t.z.boolean().optional(),showFlag:t.z.boolean().optional(),showCode:t.z.boolean().optional(),prefixLabel:t.z.string().optional(),lockedPrefix:t.z.boolean().optional(),countries:t.z.array(t.z.string()).optional(),defaultPrefix:t.z.string().optional(),autoDetectCountry:t.z.boolean().optional()}).optional(),textarea:t.z.object({minLength:t.z.number().optional(),maxLength:t.z.number().optional(),exactLength:t.z.number().optional(),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(),iconMode:t.z.enum(["individual","unified"]).optional(),colors:t.z.array(t.z.string()).optional(),colorMode:t.z.enum(["unified","individual"]).optional(),color:t.z.string().optional(),precision:t.z.number().optional(),labels:t.z.object({start:t.z.string().optional(),end:t.z.string().optional(),position:t.z.enum(["top","bottom"]).optional()}).optional()}).optional(),carousel:t.z.object({loop:t.z.boolean().optional(),mouseDragging:t.z.boolean().optional(),itemsPerPage:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),itemsPerMove:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),showArrows:t.z.boolean().optional(),showDots:t.z.boolean().optional(),autoplay:t.z.boolean().optional(),autoplaySpeed:t.z.number().optional(),showcaseMode:t.z.boolean().optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional(),labels:t.z.object({position:t.z.enum(["top","bottom","nav-top","nav-bottom","static-top","static-bottom"]).optional(),button:t.z.object({label:t.z.string(),actionId:t.z.string()}).optional()}).optional()}).optional(),grid:t.z.object({search:t.z.object({enabled:t.z.boolean().optional(),value:t.z.string().optional(),button:t.z.object({label:t.z.string().optional()}).optional(),placeholder:t.z.string().optional(),noResultsText:t.z.string().optional(),clearable:t.z.boolean().optional()}).optional(),itemsPerRow:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),itemsPerPage:t.z.object({small:t.z.number(),medium:t.z.number().optional(),large:t.z.number().optional()}).optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional()}).optional(),map:t.z.object({apiKey:t.z.string().optional(),mapId:t.z.string().optional(),region:t.z.string().length(2).optional(),colorScheme:t.z.nativeEnum(w).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(),distanceDecimals:t.z.number().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(),autofocus:t.z.boolean().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:p.optional()}).optional(),suffix:t.z.object({default:p.optional()}).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:b.optional(),markerPin:t.z.object({default:b.optional(),hover:b.optional(),selected:b.optional()}).optional(),infoWindow:t.z.object({button:t.z.object({label:t.z.string(),action:t.z.string()}).optional(),directionsLabel:t.z.string().optional()}).optional(),ordering:t.z.object({orderBy:t.z.enum(["distance","title","id"]).optional(),orderDir:t.z.enum(["asc","desc"]).optional(),preferences:t.z.array(t.z.object({ids:t.z.string().array(),filters:t.z.object({postcodes:t.z.string().array().optional()}).optional()}))}).optional(),clickableItems:t.z.object({actionId:t.z.string()}).optional(),forcePolyfills:t.z.boolean().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({version:t.z.string().optional(),url:t.z.string().url().nonempty(),organizationId:t.z.string().nonempty(),availability:t.z.object({filters:h.GetAvailabilityFilters,options:h.GetAvailabilityOptions.optional()}).optional(),slots:t.z.object({filters:v.GetSlotFilters,options:v.GetSlotOptions.optional()}).optional()}).optional()}).optional(),stripe:t.z.object({publishableKey:t.z.string().nonempty(),mode:t.z.enum(["payment","setup"]).default("payment").optional(),createPaymentIntentEndpoint:t.z.string().url().optional(),createSetupIntentEndpoint:t.z.string().url().optional(),clientSecret:t.z.string().optional(),paymentIntentId:t.z.string().optional(),setupIntentId:t.z.string().optional(),amount:t.z.number().optional(),currency:t.z.string().default("usd").optional(),connectedAccountId:t.z.string().optional(),returnUrl:t.z.string().url().optional(),headers:t.z.record(t.z.string(),t.z.string()).optional(),paymentIntentParams:t.z.record(t.z.string(),t.z.unknown()).optional(),locale:t.z.string().optional(),appearance:t.z.object({theme:t.z.enum(["stripe","night","flat"]).optional(),variables:t.z.record(t.z.string(),t.z.string()).optional(),rules:t.z.record(t.z.string(),t.z.record(t.z.string(),t.z.string())).optional()}).optional(),layout:t.z.enum(["tabs","accordion","auto"]).optional(),elementOptions:t.z.record(t.z.string(),t.z.unknown()).optional(),terms:t.z.object({card:t.z.enum(["auto","always","never"]).optional()}).optional(),customTermsText:t.z.string().optional(),openDialogButtonText:t.z.string().optional(),confirmButtonText:t.z.string().optional(),cancelButtonText:t.z.string().optional(),authorizedText:t.z.string().optional(),successMessage:t.z.string().optional(),setupSuccessMessage:t.z.string().optional(),infoText:t.z.string().optional(),amountLabel:t.z.string().optional(),loadingElementText:t.z.string().optional(),showAmount:t.z.boolean().optional(),dialogTitle:t.z.string().optional(),autoOpenDialog:t.z.boolean().optional(),actionId:t.z.string().optional()}).optional()}).optional(),remoteOptions:G.optional(),dependsOn:P.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()}),q=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"]),$=t.z.object({type:t.z.enum(["redirect"]),params:t.z.record(t.z.string(),t.z.any()).optional()}),z=t.z.object({trackingAction:t.z.enum(["EMIT_EVENT","SET_BASE_DATA"]).optional(),eventName:t.z.string().optional(),eventData:t.z.record(t.z.string(),t.z.any()).optional()}).catchall(t.z.any()),B=t.z.object({id:t.z.string().nonempty(),number:t.z.number().optional(),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(V).optional(),actions:t.z.array(T).optional(),result:t.z.object({postActions:t.z.array($).optional(),pipelines:t.z.array(t.z.object({name:t.z.string(),data:t.z.object({})})).optional(),tracking:t.z.union([z,t.z.array(z)]).optional()}).optional(),error:t.z.object({code:q,message:t.z.string().optional(),icon:t.z.string().optional(),position:t.z.enum(["top","bottom"]).optional(),fields:t.z.array(t.z.object({name:t.z.string(),type:F,value:t.z.any(),error:t.z.string()})).optional()}).optional(),isFinal:t.z.boolean().optional()}),K=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()}))}),st=t.z.object({status:t.z.enum(["ok","error"]),step:B,flow:K}),pt=t.z.enum(["track"]);var k=class{baseURL;headers;flowId;tracking;constructor(o){let e=(0,Y.merge)({},j,N.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 L(e.organizationId,e.flowId,e.tracking,!!e.devMode))}RETRIES=[0,3e3];delay(o){return new Promise(e=>setTimeout(e,o))}async request(o,e={}){let n=null;try{return await this.executeRequest(o,e)}catch(i){n=i instanceof Error?i:new Error(String(i))}for(let i of this.RETRIES)try{return i>0&&await this.delay(i),await this.executeRequest(o,e)}catch(a){n=a instanceof Error?a:new Error(String(a))}throw n??new Error("Request failed")}async executeRequest(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?this.tracking?.preferences():(0,W.browserPreferences)(),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(),i=await this.request(`flow/${this.flowId}/steps/${I.parse(o)}`,{method:"POST",body:JSON.stringify(g.parse({...e,state:{preferences:n,...e.state}}))});return this.tracking?.analyzeResponse({stepId:o},i),i}async fetchData(o){return this.request(`flow/${this.flowId}/data`,{method:"POST",body:JSON.stringify(o)})}async nextStep(o,e={}){this.tracking?.analyzeRequest(o,e);let{currentStepId:n,actionId:i}=S.parse(o),a=await this.request(`flow/${this.flowId}/steps/${n}/action/${i}`,{method:"POST",body:JSON.stringify(g.parse(e))});return this.tracking?.analyzeResponse(o,a),a}};0&&(module.exports={Action,ActionEvent,ActionScript,ClientOptions,ColorScheme,DEFAULT_CLIENT_OPTIONS,DEFAULT_MAP_ID,ErrorCode,ErrorData,EventType,Field,Flow,FlowClient,FlowContext,GetStepOptions,GetStepTrigger,ONLIVE_ANALYTICS_EVENT,ONLIVE_FLOW_FORM_NAME,PostAction,RemoteOptions,Step,StepId,TrackingOptionsSchema});
package/index.d.cts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { EventData, EventName } from '@onlive.ai/tracker';
2
2
  export { FlowClient } from './client/client.service.cjs';
3
- export { Action, ActionEvent, ActionScript, AffixSlot, Availability, ClientOptions, ColorScheme, DEFAULT_CLIENT_OPTIONS, DEFAULT_MAP_ID, DependencyCondition, DependencyGroup, DependsOn, ErrorCode, ErrorData, EventListener, EventType, Field, FieldValue, Flow, FlowContext, GetStepOptions, GetStepTrigger, Location, LocationProperty, MapPin, PostAction, Step, StepId } from './client/client.types.cjs';
3
+ export { Action, ActionEvent, ActionScript, AffixSlot, Availability, ClientOptions, ColorScheme, DEFAULT_CLIENT_OPTIONS, DEFAULT_MAP_ID, DependencyCondition, DependencyGroup, DependsOn, ErrorCode, ErrorData, EventListener, EventType, Field, FieldValue, Flow, FlowContext, GetStepOptions, GetStepTrigger, Location, LocationProperty, MapPin, PostAction, RemoteOptions, Step, StepId } from './client/client.types.cjs';
4
4
  export { ONLIVE_ANALYTICS_EVENT, ONLIVE_FLOW_FORM_NAME, TrackingEventData, TrackingOptions, TrackingOptionsSchema } from './tracking/tracking.types.cjs';
5
5
  import './tracking/tracking.service.cjs';
6
6
  import '@onlive.ai/tracker/tracker';
package/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { EventData, EventName } from '@onlive.ai/tracker';
2
2
  export { FlowClient } from './client/client.service.js';
3
- export { Action, ActionEvent, ActionScript, AffixSlot, Availability, ClientOptions, ColorScheme, DEFAULT_CLIENT_OPTIONS, DEFAULT_MAP_ID, DependencyCondition, DependencyGroup, DependsOn, ErrorCode, ErrorData, EventListener, EventType, Field, FieldValue, Flow, FlowContext, GetStepOptions, GetStepTrigger, Location, LocationProperty, MapPin, PostAction, Step, StepId } from './client/client.types.js';
3
+ export { Action, ActionEvent, ActionScript, AffixSlot, Availability, ClientOptions, ColorScheme, DEFAULT_CLIENT_OPTIONS, DEFAULT_MAP_ID, DependencyCondition, DependencyGroup, DependsOn, ErrorCode, ErrorData, EventListener, EventType, Field, FieldValue, Flow, FlowContext, GetStepOptions, GetStepTrigger, Location, LocationProperty, MapPin, PostAction, RemoteOptions, Step, StepId } from './client/client.types.js';
4
4
  export { ONLIVE_ANALYTICS_EVENT, ONLIVE_FLOW_FORM_NAME, TrackingEventData, TrackingOptions, TrackingOptionsSchema } from './tracking/tracking.types.js';
5
5
  import './tracking/tracking.service.js';
6
6
  import '@onlive.ai/tracker/tracker';