@frigade/react 2.0.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _emotion_react_jsx_runtime from '@emotion/react/jsx-runtime';
2
2
  import * as React$1 from 'react';
3
- import React__default, { SyntheticEvent, CSSProperties, ForwardRefExoticComponent, RefAttributes } from 'react';
3
+ import React__default, { CSSProperties, SyntheticEvent, ReactNode, ForwardRefExoticComponent, RefAttributes } from 'react';
4
4
  import * as _frigade_js from '@frigade/js';
5
5
  import { Flow, FlowStep } from '@frigade/js';
6
6
  export { Flow, Frigade } from '@frigade/js';
@@ -8,70 +8,9 @@ import { EmotionJSX } from '@emotion/react/types/jsx-namespace';
8
8
  import { ControllerFieldState, Message, ValidationRule } from 'react-hook-form';
9
9
  import * as Popover from '@radix-ui/react-popover';
10
10
 
11
- type FlowHandlerProp = (flow: Flow, event?: React.MouseEvent<unknown>) => Promise<boolean | void> | (boolean | void);
12
- interface FlowHandlerProps {
13
- onComplete?: FlowHandlerProp;
14
- onDismiss?: FlowHandlerProp;
15
- }
16
- type DismissHandler = (e: React.MouseEvent<unknown>) => Promise<boolean | void>;
17
- declare function useFlowHandlers(flow: Flow, { onComplete, onDismiss }?: FlowHandlerProps): {
18
- handleDismiss: DismissHandler;
19
- };
20
-
21
- type StepHandlerProp = (step: FlowStep, event?: SyntheticEvent<object, unknown>) => Promise<boolean | void> | (boolean | void);
22
- interface StepHandlerProps {
23
- onPrimary?: StepHandlerProp;
24
- onSecondary?: StepHandlerProp;
25
- }
26
- type StepHandler = (event: SyntheticEvent<object, unknown>, properties?: Record<string | number, unknown>) => Promise<boolean>;
27
- declare function useStepHandlers(step: FlowStep, { onPrimary, onSecondary }?: StepHandlerProps): {
28
- handlePrimary: StepHandler;
29
- handleSecondary: StepHandler;
30
- };
31
-
32
11
  type DeepPartial<T> = {
33
12
  [K in keyof T]?: T[K] extends object ? DeepPartial<T[K]> : T[K];
34
13
  };
35
- interface FlowComponentProps extends Omit<BoxProps, 'container'> {
36
- /**
37
- * The type of container to render the Flow in. `dialog` will spawn a modal with the component in it.
38
- * `none` will render the component in the current context/inline.
39
- *
40
- * Defaults to 'none'.
41
- */
42
- container?: 'dialog' | 'none';
43
- /**
44
- * Whether the container is dismissible by clicking outside of it or pressing escape.
45
- *
46
- * Defaults to `true`.
47
- */
48
- dismissible?: boolean;
49
- /**
50
- * The Flow ID to render. You can find the Flow ID in the Frigade dashboard.
51
- */
52
- flowId: string;
53
- /**
54
- * Handler for when the Flow is completed.
55
- */
56
- onComplete?: FlowHandlerProp;
57
- /**
58
- * Handler for when the Flow is dismissed.
59
- */
60
- onDismiss?: FlowHandlerProp;
61
- /**
62
- * Handler for when primary button is clicked.
63
- */
64
- onPrimary?: StepHandlerProp;
65
- /**
66
- * Handler for when secondary button is clicked.
67
- */
68
- onSecondary?: StepHandlerProp;
69
- /**
70
- * Variables to pass to the Flow. You can use variables in the Flow configuration to customize copy.
71
- * For instance, you can use `title: Hello, ${name}!` in the Flow configuration and pass `variables={{name: 'John'}}` to customize the copy.
72
- */
73
- variables?: Record<string, unknown>;
74
- }
75
14
 
76
15
  declare const tokens: {
77
16
  radii: {
@@ -272,6 +211,7 @@ declare const tokens: {
272
211
  type Tokens = typeof tokens;
273
212
 
274
213
  type Theme = DeepPartial<Tokens>;
214
+ declare const themeVariables: {};
275
215
  declare const theme: DeepPartial<{
276
216
  radii: {
277
217
  md: string;
@@ -1152,15 +1092,82 @@ declare namespace Text {
1152
1092
  interface DialogProps extends BoxProps {
1153
1093
  }
1154
1094
 
1155
- interface AnnouncementProps extends FlowComponentProps, Omit<DialogProps, 'container'> {
1095
+ type FlowHandlerProp = (flow: Flow, event?: React.MouseEvent<unknown>) => Promise<boolean | void> | (boolean | void);
1096
+ interface FlowHandlerProps {
1097
+ onComplete?: FlowHandlerProp;
1098
+ onDismiss?: FlowHandlerProp;
1099
+ }
1100
+ type DismissHandler = (e: React.MouseEvent<unknown>) => Promise<boolean | void>;
1101
+ declare function useFlowHandlers(flow: Flow, { onComplete, onDismiss }?: FlowHandlerProps): {
1102
+ handleDismiss: DismissHandler;
1103
+ };
1104
+
1105
+ type StepHandlerProp = (step: FlowStep, event?: SyntheticEvent<object, unknown>) => Promise<boolean | void> | (boolean | void);
1106
+ interface StepHandlerProps {
1107
+ onPrimary?: StepHandlerProp;
1108
+ onSecondary?: StepHandlerProp;
1109
+ }
1110
+ type StepHandler = (event: SyntheticEvent<object, unknown>, properties?: Record<string | number, unknown>) => Promise<boolean>;
1111
+ declare function useStepHandlers(step: FlowStep, { onPrimary, onSecondary }?: StepHandlerProps): {
1112
+ handlePrimary: StepHandler;
1113
+ handleSecondary: StepHandler;
1114
+ };
1115
+
1116
+ interface FlowProps extends Omit<BoxProps, 'container'> {
1117
+ /**
1118
+ * Flow accepts a render function as its only child, whose props are described in FlowChildrenProps
1119
+ */
1120
+ children: (props: FlowChildrenProps) => ReactNode;
1121
+ /**
1122
+ * Whether the Flow is dismissible or not
1123
+ *
1124
+ * @defaultValue `true`
1125
+ */
1126
+ dismissible?: boolean;
1127
+ /**
1128
+ * The Flow ID to render. You can find the Flow ID in the Frigade dashboard.
1129
+ */
1130
+ flowId: string;
1131
+ /**
1132
+ * Handler for when the Flow is completed.
1133
+ */
1134
+ onComplete?: FlowHandlerProp;
1135
+ /**
1136
+ * Handler for when the Flow is dismissed.
1137
+ */
1138
+ onDismiss?: FlowHandlerProp;
1139
+ /**
1140
+ * Handler for when primary button is clicked.
1141
+ */
1142
+ onPrimary?: StepHandlerProp;
1143
+ /**
1144
+ * Handler for when secondary button is clicked.
1145
+ */
1146
+ onSecondary?: StepHandlerProp;
1147
+ /**
1148
+ * Variables to pass to the Flow. You can use variables in the Flow configuration to customize copy.
1149
+ * For instance, you can use `title: Hello, ${name}!` in the Flow configuration and pass `variables={{name: 'John'}}` to customize the copy.
1150
+ */
1151
+ variables?: Record<string, unknown>;
1152
+ }
1153
+ interface FlowChildrenProps {
1154
+ flow: Flow;
1155
+ handleDismiss: DismissHandler;
1156
+ handlePrimary: StepHandler;
1157
+ handleSecondary: StepHandler;
1158
+ parentProps: Record<string, unknown>;
1159
+ step: FlowStep;
1160
+ }
1161
+
1162
+ interface AnnouncementProps extends FlowProps, DialogProps {
1156
1163
  }
1157
1164
  declare function Announcement(props: AnnouncementProps): _emotion_react_jsx_runtime.JSX.Element;
1158
1165
 
1159
- interface BannerProps extends FlowComponentProps {
1166
+ interface BannerProps extends FlowProps {
1160
1167
  }
1161
1168
  declare function Banner(props: BannerProps): _emotion_react_jsx_runtime.JSX.Element;
1162
1169
 
1163
- interface CardComponent extends ForwardRefExoticComponent<Omit<FlowComponentProps, 'ref'> & RefAttributes<unknown>> {
1170
+ interface CardComponent extends ForwardRefExoticComponent<Omit<FlowProps, 'ref'> & RefAttributes<unknown>> {
1164
1171
  Dismiss: (props: ButtonProps) => EmotionJSX.Element;
1165
1172
  Media: (props: MediaProps) => EmotionJSX.Element;
1166
1173
  Primary: (props: ButtonProps) => EmotionJSX.Element;
@@ -1207,7 +1214,7 @@ interface FormFieldProps {
1207
1214
  formState: any;
1208
1215
  fieldState: ControllerFieldState;
1209
1216
  }
1210
- interface FormProps extends FlowComponentProps {
1217
+ interface FormProps extends FlowProps {
1211
1218
  /**
1212
1219
  * Custom field types to be used in the Form.
1213
1220
  * You can use this to build your own custom form fields in a `Form`.
@@ -1268,7 +1275,7 @@ declare namespace Tooltip {
1268
1275
  var Title: ({ children, ...props }: TextProps) => _emotion_react_jsx_runtime.JSX.Element;
1269
1276
  }
1270
1277
 
1271
- interface TourProps extends TooltipProps, FlowComponentProps {
1278
+ interface TourProps extends TooltipProps, FlowProps {
1272
1279
  }
1273
1280
  declare function Tour({ flowId, onComplete, variables, ...props }: TourProps): _emotion_react_jsx_runtime.JSX.Element;
1274
1281
 
@@ -1307,4 +1314,4 @@ declare function useGroup(): {
1307
1314
  track: (eventName: string, properties?: Record<string, unknown>) => Promise<void>;
1308
1315
  };
1309
1316
 
1310
- export { Announcement, AnnouncementProps, Banner, Box, BoxProps, Button, ButtonProps, Card, Flex, FlowConfig, Form, Provider, ProviderProps, Text, TextProps, Tooltip, TooltipProps, Tour, TourProps, useBoundingClientRect, useFlow, useFlowHandlers, useFrigade, useGroup, useModal, useStepHandlers, useUser };
1317
+ export { Announcement, AnnouncementProps, Banner, Box, BoxProps, Button, ButtonProps, Card, Flex, FlowConfig, Form, Provider, ProviderProps, Text, TextProps, Tooltip, TooltipProps, Tour, TourProps, themeVariables, useBoundingClientRect, useFlow, useFlowHandlers, useFrigade, useGroup, useModal, useStepHandlers, useUser };
package/dist/index.js CHANGED
@@ -1,11 +1,11 @@
1
1
  'use client';
2
- import * as w from '@radix-ui/react-dialog';
2
+ import * as T from '@radix-ui/react-dialog';
3
3
  import { XMarkIcon } from '@heroicons/react/24/solid';
4
- import * as xe from 'react';
4
+ import * as me from 'react';
5
5
  import { createContext, useState, useMemo, useEffect, useContext, useRef, useCallback, useLayoutEffect } from 'react';
6
6
  import { clsx } from 'clsx';
7
- import Do from 'known-css-properties';
8
- import Wo from 'dompurify';
7
+ import kt from 'known-css-properties';
8
+ import Lt from 'dompurify';
9
9
  import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
10
10
  import { keyframes, Global, ThemeProvider } from '@emotion/react';
11
11
  import { Frigade } from '@frigade/js';
@@ -14,10 +14,10 @@ import { useForm, useController } from 'react-hook-form';
14
14
  import * as N from '@radix-ui/react-radio-group';
15
15
  import * as S from '@radix-ui/react-select';
16
16
  import { ChevronDownIcon } from '@heroicons/react/24/outline';
17
- import * as D from '@radix-ui/react-popover';
17
+ import * as k from '@radix-ui/react-popover';
18
18
 
19
- var wo=Object.defineProperty;var Ro=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(o,t)=>(typeof require<"u"?require:o)[t]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var te=(e,o)=>{for(var t in o)wo(e,t,{get:o[t],enumerable:!0});};var Fe={borders:{md:"1px solid"},borderWidths:{0:"0",md:"1px"}};var Te={black:"#000000",gray100:"#14161A",gray200:"#181B20",gray300:"#1F2329",gray400:"#2E343D",gray500:"#4C5766",gray600:"#5A6472",gray700:"#C5CBD3",gray800:"#E2E5E9",gray900:"#F1F2F4",white:"#ffffff",blue400:"#015AC6",blue500:"#0171F8",blue800:"#DBECFF",blue900:"#F5F9FF",green400:"#009E37",green500:"#00D149",green800:"#DBFFE8",transparent:"#FFFFFF00",inherit:"inherit",red500:"#c00000"};var we={md:"10px",lg:"20px",round:"50%"};var l=e=>`var(--fr-colors-${e})`,Re={neutral:{background:l("white"),border:l("gray800"),foreground:l("black"),surface:l("gray700"),active:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")},focus:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")},hover:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")}},primary:{background:l("blue500"),border:l("blue500"),foreground:l("white"),surface:l("blue500"),active:{background:l("blue400"),border:l("blue400"),foreground:l("white"),surface:l("blue400")},focus:{background:l("blue500"),border:l("blue500"),foreground:l("white"),surface:l("blue500")},hover:{background:l("blue400"),border:l("blue400"),foreground:l("white"),surface:l("blue400")}},secondary:{background:l("white"),border:l("gray800"),foreground:l("black"),surface:l("gray900"),active:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray800")},focus:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray900")},hover:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray800")}}};var Be={md:"0px 4px 20px rgba(0, 0, 0, 0.1)"};var Bo="px",vo=e=>typeof e=="number"?`${4*e}${Bo}`:e,ko=[-20,-19,-18,-17,-16,-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,-.5,0,.5,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,"auto"],ve=Object.fromEntries(ko.map(e=>[e,vo(e)]));var ke={fontFamilies:{default:"inherit"},fontSizes:{xs:"12px",sm:"14px",md:"16px",lg:"18px",xl:"20px","2xl":"24px","3xl":"30px","4xl":"36px","5xl":"48px"},fontWeights:{thin:"100",extralight:"200",light:"300",regular:"400",medium:"500",demibold:"600",bold:"700",extrabold:"800",black:"900"},letterSpacings:{md:"0.02em"},lineHeights:{xs:"18px",sm:"22px",md:"24px",lg:"26px",xl:"30px","2xl":"38px","3xl":"46px","4xl":"60px"}};var me={...Fe,colors:{...Te,...Re},...ke,radii:we,shadows:Be,space:ve};function X(e,o="",t="."){return Object.keys(e).reduce((n,r)=>{let a=`${o.length?`${o}${t}`:""}${r}`,s=e[r];return typeof s=="object"&&s!==null&&!Array.isArray(s)?Object.assign(n,X(s,a,t)):n[a]=s,n},{})}function ce(e){return X(e,"--fr","-")}function De(e,o="--fr"){let t={};return Object.keys(e).forEach(n=>{let r=e[n];typeof r=="object"&&r!==null&&!Array.isArray(r)?t[n]=De(r,`${o}-${n}`):t[n]=`var(${o}-${n})`;}),t}var Ee=ce(me),c=De(me);var Eo=new Set(["alt","size","src"]),Oo=Do.all.filter(e=>e.indexOf("-")!=0&&!Eo.has(e)).map(e=>[e.replace(/-([a-z])/g,(o,t)=>t.toUpperCase()),null]),Ho=Object.fromEntries(Oo),ue=X(c.colors),Mo={color:ue,backgroundColor:ue,borderColor:ue,border:c.borders,borderRadius:c.radii,borderWidth:c.borderWidths,boxShadow:c.shadows,fontFamily:c.fontFamilies,fontSize:c.fontSizes,fontWeight:c.fontWeights,gap:c.space,lineHeight:c.lineHeights,margin:c.space,marginBottom:c.space,marginLeft:c.space,marginRight:c.space,marginTop:c.space,padding:c.space,paddingBottom:c.space,paddingLeft:c.space,paddingRight:c.space,paddingTop:c.space},Oe={...Ho,...Mo},He={bg:["backgroundColor"],m:["margin"],mt:["marginTop"],mr:["marginRight"],mb:["marginBottom"],ml:["marginLeft"],mx:["marginLeft","marginRight"],my:["marginTop","marginBottom"],p:["padding"],pt:["paddingTop"],pr:["paddingRight"],pb:["paddingBottom"],pl:["paddingLeft"],px:["paddingLeft","paddingRight"],py:["paddingTop","paddingBottom"]},Me=new Set(["active","focus","focusVisible","focusWithin","hover"]);function Io(e){return Array.isArray(e)?new Map(e.map(o=>[o,o])):typeof e=="object"&&e!==null?new Map(Object.entries(e)):typeof e=="string"||typeof e=="number"?new Map([[e,e]]):new Map}var Ie=new Map(Object.entries(Oe).map(([e,o])=>[e,Io(o)])),Ao=new Map(Object.entries(He).map(([e,o])=>[e,new Set(o)])),Vo=new Set(["height","width"]),Lo=new Set(["canvas","embed","iframe","img","input","object","video"]);function Ae(e){let[o,t]=e.split(":");return [o,Me.has(t)?t:null]}function Ve(e,o="div"){let t=Object.assign({},e),n={};function r(i){if(i==null)return n;let s=`&:${i.replace(/[A-Z]/g,d=>`-${d.toLocaleLowerCase()}`)}`;return n[s]==null&&(n[s]={}),n[s]}return Object.entries(t).forEach(([i,a])=>{let[s,d]=Ae(i),f=Ao.get(s);f!=null&&(f.forEach(g=>{let y=`${g}${d?":"+d:""}`;t[y]=a;}),delete t[i]);}),Object.entries(t).forEach(([i,a])=>{let[s,d]=Ae(i),f=Ie.get(s);if(f!=null){if(typeof a=="string"&&a.indexOf(" ")>-1){let g=a.split(" ");r(d)[s]=g.map(y=>f.get(y.toString())??y).join(" ");}else f.has(a.toString())?r(d)[s]=f.get(a.toString()):r(d)[s]=a;(typeof o!="string"||!Lo.has(o)||!Vo.has(s))&&delete t[i];}}),Object.keys(t).forEach(i=>{let a=i.substring(1);i.indexOf("_")===0&&Ie.has(a)&&(t[a]=t[i],delete t[i]);}),{cssFromProps:n,unmatchedProps:t}}function $o(){if(typeof window>"u"){let{JSDOM:e}=Ro("jsdom");return new e("<!DOCTYPE html>").window}return window}function Le(e){return e?{__html:Wo($o()).sanitize(e,{ALLOWED_TAGS:["b","i","a","span","div","p","pre","u","br","img","code","li","ul","table","tbody","thead","tr","td","th","h1","h2","h3","h4","video"],ALLOWED_ATTR:["style","class","target","id","href","alt","src","controls","autoplay","loop","muted"]})}:{__html:""}}function _o(e){return e&&`fr-${e}`}function ze(e){return e&&(Array.isArray(e)?e.map(o=>ze(o)).join(" "):_o(e))}function jo({as:e,children:o,className:t,css:n={},part:r,...i},a){let s=e??"div",{cssFromProps:d,unmatchedProps:f}=Ve(i,s),g=ze(r),y=t||g?clsx(t,g):void 0,b=[{boxSizing:"border-box"},d,n];return typeof o=="string"?jsx(s,{className:y,css:b,...f,ref:a,dangerouslySetInnerHTML:Le(o)}):jsx(s,{className:y,css:b,...f,ref:a,children:o})}var p=xe.forwardRef(jo);var m={};te(m,{Body1:()=>at,Body2:()=>st,Caption:()=>lt,Display1:()=>et,Display2:()=>ot,H1:()=>tt,H2:()=>rt,H3:()=>nt,H4:()=>it});var fe={};te(fe,{Body1:()=>qo,Body2:()=>Yo,Caption:()=>Qo,Display1:()=>Ko,Display2:()=>No,H1:()=>Uo,H2:()=>Go,H3:()=>Xo,H4:()=>Jo});var E={color:"neutral.foreground",fontFamily:"default",margin:"0"},Ko={...E,fontSize:"5xl",fontWeight:"bold",lineHeight:"4xl"},No={...E,fontSize:"4xl",fontWeight:"bold",lineHeight:"3xl"},Uo={...E,fontSize:"3xl",fontWeight:"demibold",lineHeight:"2xl"},Go={...E,fontSize:"2xl",fontWeight:"demibold",lineHeight:"xl"},Xo={...E,fontSize:"xl",fontWeight:"demibold",lineHeight:"lg"},Jo={...E,fontSize:"md",fontWeight:"demibold",lineHeight:"md"},qo={...E,fontSize:"md",fontWeight:"regular",lineHeight:"md"},Yo={...E,fontSize:"sm",fontWeight:"regular",lineHeight:"sm"},Qo={...E,fontSize:"xs",fontWeight:"regular",lineHeight:"xs"};var Zo=["Display1","Display2","H1","H2","H3","H4","Body1","Body2","Caption"],O=Object.fromEntries(Zo.map(e=>{let o=["H1","H2","H3","H4"].includes(e)?e.toLowerCase():"span",t=xe.forwardRef(({as:n=o,children:r,...i},a)=>jsx(p,{as:n,...fe[e],...i,ref:a,children:r}));return t.displayName=`Text.${e}`,[e,t]})),et=O.Display1,ot=O.Display2,tt=O.H1,rt=O.H2,nt=O.H3,it=O.H4,at=O.Body1,st=O.Body2,lt=O.Caption;var ge={};te(ge,{Link:()=>ct,Plain:()=>ut,Primary:()=>dt,Secondary:()=>mt});var re={borderWidth:"0",borderRadius:"md",display:"flex",gap:"2",padding:"2 4"},dt={...re,backgroundColor:"primary.surface",color:"primary.foreground","backgroundColor:hover":"primary.hover.surface"},mt={...re,backgroundColor:"secondary.background",borderColor:"secondary.border",borderStyle:"solid",borderWidth:"1px",color:"secondary.foreground","backgroundColor:hover":"secondary.hover.background"},ct={...re,backgroundColor:"transparent",color:"primary.surface","color:hover":"primary.hover.surface"},ut={...re,backgroundColor:"transparent",color:"neutral.foreground"};function je({as:e,children:o,part:t,title:n,variant:r="Primary",...i}){let a=r.toLocaleLowerCase();return jsxs(p,{as:e??"button",part:[`button-${a}`,t],...ge[r],...i,children:[o,n&&jsx(m.Body2,{color:"inherit",flexGrow:"1",fontWeight:"demibold",transform:"translateY(1px)",css:{"-webkit-font-smoothing":"antialiased","-moz-osx-font-smoothing":"grayscale"},children:n})]})}var ft=["Primary","Secondary","Link","Plain"],gt=Object.fromEntries(ft.map(e=>{let o=t=>jsx(je,{...t,variant:e,children:t.children});return o.displayName=`Button.${e}`,[e,o]})),h=Object.assign(je,gt);var x={};te(x,{Column:()=>ht,Row:()=>yt});var yt=xe.forwardRef(({children:e,css:o,...t},n)=>jsx(p,{css:[{display:"flex",flexDirection:"row"},o],...t,ref:n,children:e})),ht=xe.forwardRef(({children:e,css:o,...t},n)=>jsx(p,{css:[{display:"flex",flexDirection:"column"},o],...t,ref:n,children:e}));var v=createContext({apiKey:"",modals:new Set,setModals:()=>{},currentModal:null,navigate:()=>{}});function Rt({children:e,navigate:o,theme:t,...n}){let r=t?ce(t):{},[i,a]=useState(new Set),s=useMemo(()=>new Frigade(n.apiKey,{apiKey:n.apiKey,apiUrl:n.apiUrl,userId:n.userId,groupId:n.groupId,__readOnly:n.__readOnly,__flowConfigOverrides:n.__flowConfigOverrides}),[n.userId,n.groupId,n.apiKey]),d=o??((g,y="_self")=>{window.open(g,y);});useEffect(()=>()=>{s.destroy();},[]);let f=i.size>0?i.values().next().value:null;return jsxs(v.Provider,{value:{modals:i,setModals:a,currentModal:f,navigate:d,...n,frigade:s},children:[jsx(Global,{styles:{":root":{...Ee,...r}}}),jsx(ThemeProvider,{theme:c,children:e})]})}function J(e,o){let[t,n]=useState(),[,r]=useState(""),{frigade:i}=useContext(v),a=s=>{s.id===e&&(o!=null&&o.variables&&s.applyVariables(o.variables),n(s),r(Math.random().toString()));};return useEffect(()=>((async()=>{let s=await i.getFlow(e);if(!s||i.hasFailedToLoad()){n(void 0);return}o!=null&&o.variables&&s.applyVariables(o.variables),n(s);})(),i.onStateChange(a),()=>{i.removeStateChangeHandler(a);}),[]),{flow:t}}function L(e,{onComplete:o,onDismiss:t}={}){let n=useRef(null);return useEffect(()=>{e!=null&&(e.isCompleted&&n.current===!1&&(async()=>await(o==null?void 0:o(e)))(),n.current=e==null?void 0:e.isCompleted);},[e==null?void 0:e.isCompleted]),{handleDismiss:useCallback(async r=>{if(await(t==null?void 0:t(e,r))===!1)return r.preventDefault(),!1;await e.skip();},[e])}}function q(e,{onPrimary:o,onSecondary:t}={}){let{navigate:n}=useContext(v);return {handlePrimary:useCallback(async(r,i)=>await(o==null?void 0:o(e,r))===!1?(r.preventDefault(),!1):(await e.complete(i),e.primaryButtonUri!=null&&n(e.primaryButtonUri,e.primaryButtonUriTarget),!0),[e]),handleSecondary:useCallback(async(r,i)=>await(t==null?void 0:t(e,r))===!1?(r.preventDefault(),!1):(await e.complete(i),e.secondaryButtonUri!=null&&n(e.secondaryButtonUri,e.secondaryButtonUriTarget),!0),[e])}}function Y(e){let{currentModal:o,modals:t,setModals:n}=useContext(v),[r,i]=useState(!1);useEffect(()=>{e!=null&&e.isVisible&&e&&!t.has(e.id)&&n(s=>new Set(s).add(e.id));},[e==null?void 0:e.id,e==null?void 0:e.isVisible]),useEffect(()=>{let s=o===(e==null?void 0:e.id);(e==null?void 0:e.id)!=null&&s!==r&&i(s);},[e==null?void 0:e.id,o]);function a(){t.has(e==null?void 0:e.id)&&n(s=>{let d=new Set(s);return d.delete(e==null?void 0:e.id),d});}return {isCurrentModal:r,removeModal:a}}function I({as:e,container:o,dismissible:t=o==="dialog",flowId:n,onComplete:r,onDismiss:i,onPrimary:a,onSecondary:s,variables:d,...f}){let g=o==="dialog"?F:e??p,y=function({children:Z,...se}){let{flow:P}=J(n,{variables:d}),U=P==null?void 0:P.getCurrentStep(),{handleDismiss:le}=L(P,{onComplete:r,onDismiss:i}),{handlePrimary:pe,handleSecondary:de}=q(U,{onPrimary:a,onSecondary:s}),{isCurrentModal:G,removeModal:ee}=Y(P);return useEffect(()=>{!(P!=null&&P.isVisible)&&G&&ee();},[P==null?void 0:P.isVisible,G]),P==null||!P.isVisible||!G?null:(P.start(),U.start(),jsx(g,{position:"relative",...se,...f,children:Z({flow:P,handleDismiss:le,handlePrimary:pe,handleSecondary:de,parentProps:{container:o,dismissible:t,flowId:n,variables:d,...f},step:U})}))};return {FlowComponent:useMemo(()=>y,[])}}function qe(e){let{FlowComponent:o}=I(e);return jsx(o,{as:u,gap:5,borderColor:"neutral.border",borderStyle:"solid",borderWidth:"md",children:({handleDismiss:t,handlePrimary:n,handleSecondary:r,parentProps:{dismissible:i},step:a})=>jsxs(Fragment,{children:[jsxs(x.Row,{alignItems:"center",flexWrap:"wrap",gap:1,justifyContent:"space-between",part:"card-header",children:[jsx(u.Title,{children:a.title}),i&&jsx(u.Dismiss,{onClick:t}),jsx(u.Subtitle,{flexBasis:"100%",children:a.subtitle})]}),jsx(u.Media,{src:a.imageUri,css:{objectFit:"contain",width:"100%"}}),jsxs(x.Row,{gap:3,justifyContent:"flex-end",part:"card-footer",children:[jsx(u.Secondary,{title:a.secondaryButtonTitle,onClick:r}),jsx(u.Primary,{title:a.primaryButtonTitle??"Continue",onClick:n})]})]})})}function Ye({part:e,src:o,...t}){return jsx(p,{as:"img",part:["image",e],src:o,...t})}function zt(e){var o,t,n,r;if(e.includes("youtube"))return `https://www.youtube.com/embed/${(o=e.split("v=")[1])==null?void 0:o.split("&")[0]}`;if(e.includes("vimeo"))return `https://player.vimeo.com/video/${(t=e.split("vimeo.com/")[1])==null?void 0:t.split("&")[0]}`;if(e.includes("wistia"))return `https://fast.wistia.net/embed/iframe/${(n=e.split("wistia.com/medias/")[1])==null?void 0:n.split("&")[0]}`;if(e.includes("loom"))return `https://loom.com/embed/${(r=e.split("loom.com/share/")[1])==null?void 0:r.split("&")[0]}?hideEmbedTopBar=true&hide_title=true&hide_share=true&hide_owner=true`;throw new Error("Could not map videoUri to a known provider (Youtube, Vimeo, Wistia, Loom).")}function Qe({part:e,src:o,...t}){let n=zt(o);return jsx(p,{allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,as:"iframe",backgroundColor:"gray100",borderWidth:0,part:["video",e],src:n,...t})}function $({src:e,type:o,...t}){return jsx(o==="video"?Qe:Ye,{src:e,...t})}var u=xe.forwardRef(({as:e,children:o,...t},n)=>{if(t.flowId!=null)return jsx(qe,{as:e,...t});let r=e??x.Column;return jsx(r,{backgroundColor:"neutral.background",borderRadius:"md",gap:5,p:5,...t,ref:n,children:o})});u.Dismiss=e=>jsx(h.Plain,{part:"dismiss",padding:0,...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})});u.Media=({src:e,...o})=>e==null?null:jsx($,{borderRadius:"md",src:e,...o});u.Primary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Primary,{title:o,onClick:e,...t});u.Secondary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Secondary,{title:o,onClick:e,...t});u.Subtitle=({children:e,...o})=>e==null?null:jsx(m.Body2,{display:"block",part:"subtitle",...o,children:e});u.Title=({children:e,...o})=>e==null?null:jsx(m.Body1,{display:"block",fontWeight:"bold",part:"title",...o,children:e});function F({children:e,...o}){return jsx(w.Root,{defaultOpen:!0,modal:!0,children:jsx(w.Portal,{children:jsxs(p,{inset:"0",position:"fixed",zIndex:"9999",children:[jsx(w.Overlay,{asChild:!0,children:jsx(p,{background:"rgb(0 0 0 / 0.5)",part:"dialog-overlay",position:"fixed",inset:"0"})}),jsx(w.Content,{asChild:!0,onOpenAutoFocus:t=>t.preventDefault(),onPointerDownOutside:t=>t.preventDefault(),children:jsx(u,{boxShadow:"md",left:"50%",maxWidth:"430px",p:8,part:"dialog-content",position:"fixed",textAlign:"center",top:"50%",transform:"translate(-50%, -50%)",...o,children:e})})]})})})}F.Dismiss=e=>jsx(w.Close,{"aria-label":"Close",asChild:!0,children:jsx(h.Plain,{part:"close",position:"absolute",right:"-4px",top:"4px",...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})})});F.Subtitle=({children:e,...o})=>jsx(w.Description,{asChild:!0,children:jsx(m.Body2,{part:"subtitle",...o,children:e})});F.Media=({src:e,...o})=>e==null?null:jsx($,{borderRadius:"md",src:e,...o});F.Primary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Primary,{title:o,onClick:e,...t});F.ProgressDots=({current:e,total:o})=>{if(o==1)return null;let t=[...Array(o)].map((n,r)=>jsx("circle",{r:4,cx:4+16*r,cy:"4px",fill:e===r?c.colors.blue500:c.colors.blue800},r));return jsx(p,{as:"svg",height:"8px",marginInline:"auto",part:"progress",viewBox:`0 0 ${16*o-8} 8`,width:16*o-8,children:t})};F.Secondary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Secondary,{title:o,onClick:e,...t});F.Title=({children:e,...o})=>jsx(w.Title,{asChild:!0,children:jsx(m.H3,{part:"title",...o,children:e})});function Gt(e){let{FlowComponent:o}=I({...e,container:"dialog"});return jsx(o,{children:({flow:t,handleDismiss:n,handlePrimary:r,handleSecondary:i,parentProps:{dismissible:a},step:s})=>jsxs(Fragment,{children:[a&&jsx(F.Dismiss,{onClick:n}),jsxs(x.Column,{gap:1,part:"announcement-header",children:[jsx(F.Title,{children:s.title}),jsx(F.Subtitle,{children:s.subtitle})]}),jsx(F.Media,{src:s.videoUri??s.imageUri,type:s.videoUri?"video":"image",css:{aspectRatio:"1.5",objectFit:"cover",width:"100%"}}),jsx(F.ProgressDots,{current:t.getNumberOfCompletedSteps(),total:t.getNumberOfAvailableSteps()}),jsxs(x.Row,{css:{"& > button":{flexGrow:1}},gap:3,part:"announcement-footer",children:[s.secondaryButtonTitle&&jsx(F.Secondary,{title:s.secondaryButtonTitle,onClick:i}),jsx(F.Primary,{title:s.primaryButtonTitle??"Continue",onClick:r})]})]})})}function Jt(e){let{FlowComponent:o}=I(e);return jsx(o,{as:u,border:"md",borderColor:"neutral.border",display:"flex",flexDirection:"row",gap:3,justifyContent:"space-between",children:({handleDismiss:t,handlePrimary:n,handleSecondary:r,step:i})=>jsxs(Fragment,{children:[jsxs(x.Row,{gap:3,children:[i.imageUri&&jsx("img",{src:i.imageUri,style:{height:40,width:40,alignSelf:"center"}}),jsxs(x.Column,{children:[jsx(m.H4,{mb:1,children:i.title}),jsx(m.Body2,{color:"gray500",children:i.subtitle})]})]}),jsxs(x.Row,{alignItems:"center",gap:3,justifyContent:"center",children:[i.secondaryButtonTitle&&jsx(h.Secondary,{title:i.secondaryButtonTitle,onClick:r}),jsx(h.Primary,{title:i.primaryButtonTitle,onClick:n}),e.dismissible&&jsx(u.Dismiss,{onClick:t})]})]})})}var Zt=new Set(["required","min","max","minLength","maxLength","pattern"]);function er({fieldComponent:e,control:o,fieldData:t}){t.pattern!=null&&(typeof t.pattern=="string"?t.pattern=new RegExp(t.pattern.replace(/^\/|\/$/g,"")):typeof t.pattern=="object"&&typeof t.pattern.value=="string"&&(t.pattern.value=new RegExp(t.pattern.value.replace(/^\/|\/$/g,""))));let n=Object.fromEntries(Object.entries(t).filter(([i])=>Zt.has(i))),r=useController({name:t.id,control:o,rules:n});return jsx(e,{...r,fieldData:t})}function eo({fieldTypes:e,handleDismiss:o,handlePrimary:t,handleSecondary:n,parentProps:{dismissible:r},step:i}){var y;let{control:a,handleSubmit:s}=useForm({delayError:2e3,mode:"onChange"}),d=[];function f(b,K){t(K,b);}function g(b,K){n(K,b);}return (y=i.fields)==null||y.forEach(b=>{e[b.type]!=null&&d.push(jsx(er,{control:a,fieldComponent:e[b.type],fieldData:b},b.id));}),jsxs(x.Column,{gap:5,children:[jsxs(x.Row,{alignItems:"center",flexWrap:"wrap",gap:1,justifyContent:"space-between",part:"form-header",children:[jsx(u.Title,{children:i.title}),r&&jsx(u.Dismiss,{onClick:o}),jsx(u.Subtitle,{flexBasis:"100%",children:i.subtitle})]}),d,jsxs(x.Row,{part:"form-footer",justifyContent:"flex-end",gap:3,children:[i.secondaryButtonTitle&&jsx(h.Secondary,{title:i.secondaryButtonTitle,onClick:s(g)}),jsx(h.Primary,{title:i.primaryButtonTitle??"Submit",onClick:s(f)})]},"form-footer")]})}function oo({error:e}){var o;return (o=e==null?void 0:e.message)!=null&&o.length?jsx(m.Caption,{color:"red500",display:"block",part:"field-error",textAlign:"end",children:e==null?void 0:e.message}):null}function to({children:e,id:o,required:t=!1}){return jsxs(m.H4,{as:"label",htmlFor:o,part:"field-label",children:[e,t&&" *"]})}var Q={px:"4",py:"2",backgroundColor:"neutral.background",borderColor:"neutral.border",borderStyle:"solid",borderWidth:"md",borderRadius:"md",display:"block",outline:"none",width:"100%"};function V({children:e,field:o,fieldData:t,fieldState:n}){let{id:r,label:i,placeholder:a}=t,{error:s}=n,d={id:r,...o,...a?{placeholder:a}:{},...Q,"aria-invalid":!!s,value:o.value??""};return jsxs(p,{part:"field",children:[jsx(to,{id:r,required:!!t.required,children:i}),e(d),jsx(oo,{error:s})]})}var nr=()=>jsx(p,{as:"svg",color:"primary.foreground",width:"10px",height:"8px",viewBox:"0 0 10 8",fill:"none",children:jsx("path",{d:"M1 4.34664L3.4618 6.99729L3.4459 6.98017L9 1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),ir=xe.forwardRef(({label:e,value:o},t)=>jsxs(p,{as:"label",backgroundColor:"neutral.background",borderColor:"neutral.border",borderRadius:"md",borderStyle:"solid",borderWidth:"md",display:"flex",htmlFor:o,justifyContent:"space-between",part:"field-radio",px:4,py:2,children:[jsx(m.Body2,{part:"field-radio-label",children:e}),jsx(N.Item,{id:o,value:o,ref:t,asChild:!0,children:jsx(p,{as:"button",backgroundColor:"inherit",borderWidth:"md",borderStyle:"solid",borderColor:"neutral.border",borderRadius:"100%",padding:"0",part:"field-radio-value",position:"relative",height:"24px",width:"24px",children:jsx(p,{as:N.Indicator,alignItems:"center",bg:"primary.surface",borderWidth:"md",borderStyle:"solid",borderColor:"primary.border",borderRadius:"100%",display:"flex",height:"calc(100% + 2px)",justifyContent:"center",left:"-1px",part:"field-radio-indicator",position:"absolute",top:"-1px",width:"calc(100% + 2px)",children:jsx(nr,{})})})})]}));function ao(e){let{field:{onChange:o,value:t},fieldData:{options:n=[]}}=e,r=n.map(({label:i,value:a})=>jsx(ir,{value:a,label:i},a));return jsx(V,{...e,children:()=>jsx(N.Root,{value:t,onValueChange:o,asChild:!0,children:jsx(x.Column,{gap:2,part:"field-radio-group",children:r})})})}var lr=xe.forwardRef(({label:e,value:o},t)=>jsx(S.Item,{value:o,ref:t,asChild:!0,children:jsx(p,{"backgroundColor:hover":"blue900",borderRadius:"md",outline:"none",part:"field-select-option",px:"3",py:"2",children:jsx(S.ItemText,{asChild:!0,children:jsx(m.Body2,{part:"field-select-option-label",children:e})})})}));function po(e){let{field:{onChange:o,value:t},fieldData:{options:n=[],placeholder:r}}=e,i=n.map(({label:a,value:s})=>jsx(lr,{value:s,label:a},s));return jsx(V,{...e,children:()=>jsxs(S.Root,{value:t,onValueChange:o,children:[jsx(S.Trigger,{asChild:!0,children:jsxs(m.Body2,{...Q,alignItems:"center",display:"flex",justifyContent:"space-between",part:"field-select",children:[jsx(S.Value,{placeholder:r??"Select one"}),jsx(S.Icon,{children:jsx(p,{as:ChevronDownIcon,color:"gray100",display:"block",height:"24px",part:"field-select-icon",width:"24px"})})]})}),jsx(S.Portal,{children:jsx(S.Content,{position:"popper",sideOffset:4,asChild:!0,children:jsx(p,{...Q,p:"1",part:"field-select-options",width:"var(--radix-popper-anchor-width)",children:jsx(S.Viewport,{children:i})})})})]})})}function co(e){return jsx(V,{...e,children:o=>jsx(m.Body2,{as:"input",part:"field-text",type:"text",...o})})}function fo(e){return jsx(V,{...e,children:o=>jsx(m.Body2,{as:"textarea",part:"field-textarea",...o})})}var pr={radio:ao,select:po,text:co,textarea:fo};function dr({fieldTypes:e={},...o}){let{FlowComponent:t}=I(o),n=Object.assign({},pr,e);return jsx(t,{children:r=>jsx(eo,{fieldTypes:n,...r})})}function ie(){let e="DOMRect"in globalThis?new DOMRect:{height:0,width:0,x:0,y:0,bottom:0,top:0,right:0,left:0,toJSON:()=>{}},[o,t]=useState(e),[n,r]=useState(null),i=useCallback(a=>{r(a);},[]);return useLayoutEffect(()=>{if(!n)return;let a=()=>{let s=n.getBoundingClientRect();t(s);};return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[n]),{node:n,rect:o,ref:i}}var fr=keyframes({"0%":{opacity:.5,transform:"scale(0.5)"},"50%":{opacity:0,transform:"scale(1)"},"100%":{opacity:0,transform:"scale(1)"}});function ho({style:e={},part:o="",...t}){return jsxs(p,{part:`dot-wrapper ${o}`,style:{height:"48px",position:"absolute",width:"48px",...e},...t,children:[jsx(p,{backgroundColor:"primary.surface",part:"dot-pulse",css:{animation:`2s ease-out infinite ${fr}`,borderRadius:"24px",height:"48px",left:0,position:"absolute",top:0,transformOrigin:"center center",width:"48px"}}),jsx(p,{backgroundColor:"primary.surface",part:"dot",style:{borderRadius:"12px",height:"24px",left:"12px",position:"absolute",top:"12px",width:"24px"}})]})}function bo({props:e,alignAttr:o,sideAttr:t}){let n=t??"bottom",r={},i=()=>{if(["after","before"].includes(e.align)){if(o=="start")return "before";if(o=="end")return "after"}return e.align??"after"},a="-24px",s={top:"bottom",right:"left",bottom:"top",left:"right"};r[s[n]]=a;let d=i();return ["before","end"].includes(d)?["top","bottom"].includes(n)?r.right=a:r.bottom=a:["after","start"].includes(d)?["top","bottom"].includes(n)?r.left=a:r.top=a:["top","bottom"].includes(n)?r.left=`calc(50% + ${a})`:r.top=`calc(50% + ${a})`,r}var Po={content:["align","alignOffset","arrowPadding","avoidCollisions","collisionBoundary","collisionPadding","forceMount","hideWhenDetached","onCloseAutoFocus","onEscapeKeyDown","onFocusOutside","onInteractOutside","onOpenAutoFocus","onPointerDownOutside","side","sideOffset","sticky"],root:["defaultOpen","modal","onOpenChange","open"]};function Co(e,o){let t=Object.fromEntries(Po.content.map(r=>[r,e[r]]).filter(r=>r[1]!==void 0)),n=Object.fromEntries(Po.root.map(r=>[r,e[r]]).filter(r=>r[1]!==void 0));if(t.align=t.align??"after",t.side=t.side??"bottom",["before","after"].includes(t.align)){let r={after:"end",before:"start"},i=(y,b)=>["top","bottom"].includes(b)?y=="after"?"marginLeft":"marginRight":y=="after"?"marginTop":"marginBottom",a=t.alignOffset??0,s=t.style??{},d=t.side??"bottom",f=t.align;t.style={...s,[i(f,d)]:a};let g=["top","bottom"].includes(d)?o.width:o.height;t.alignOffset=(g+a)*-1,t.align=r[f];}return {contentProps:t,rootProps:n}}function T({anchor:e,children:o,className:t,spotlight:n=!1,style:r,...i}){let{node:a,rect:s,ref:d}=ie(),{node:f,rect:g,ref:y}=ie(),{contentProps:b,rootProps:K}=Co(i,s),[Z,se]=useState(b.align),[P,U]=useState(b.side),[le,pe]=useState(0),[de,G]=useState(0);if(a!==null){let M=a.getAttribute("data-align"),oe=a.getAttribute("data-side");Z!==M&&se(M),P!==oe&&U(oe);}let ee=useRef(null);if(useEffect(()=>{let M=document.querySelector(e);M!=null&&(y(M),ee.current=M);},[e]),useEffect(()=>{let{scrollX:M,scrollY:oe}=window;pe(g.left+M),G(g.top+oe);},[g.left,g.top]),f==null)return null;let Se="0";typeof window<"u"&&(Se=window.getComputedStyle(f).borderRadius);let To=bo({props:i,alignAttr:Z,sideAttr:P});return jsxs(D.Root,{defaultOpen:!0,...K,children:[jsx(D.Anchor,{virtualRef:ee}),jsx(D.Portal,{children:jsxs("div",{className:t,css:{bottom:0,left:0,position:"absolute",right:0,top:0,zIndex:9999},children:[n&&jsx(p,{part:"tooltip-spotlight",position:"absolute",style:{borderRadius:Se,boxShadow:"0 0 0 20000px rgb(0 0 0 / 0.5)",height:g.height,left:le,top:de,width:g.width}}),jsx(D.Content,{asChild:!0,...b,ref:d,children:jsxs(u,{boxShadow:"md",part:"tooltip-content",position:"relative",css:{maxWidth:"360px",...r},children:[jsx(ho,{style:To}),o]})})]})})]})}T.Close=e=>jsx(D.Close,{"aria-label":"Close",asChild:!0,children:jsx(h.Plain,{css:{top:"12px",right:"4px"},part:"close",position:"absolute",...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})})});T.Media=({src:e,...o})=>e==null?null:jsx($,{borderRadius:"md md 0 0",borderWidth:"0",css:{aspectRatio:"2",objectFit:"cover"},margin:"-5 -5 0",src:e,...o});T.Primary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Primary,{title:o,onClick:e,...t});T.Progress=({children:e,...o})=>e==null?null:jsx(m.H4,{part:"progress",...o,children:e});T.Secondary=({onClick:e,title:o,...t})=>o==null?null:jsx(h.Secondary,{title:o,onClick:e,...t});T.Subtitle=({children:e,...o})=>e==null?null:jsx(m.Body2,{part:"subtitle",...o,children:e});T.Title=({children:e,...o})=>e==null?null:jsx(m.H4,{part:"title",...o,children:e});function Fo({dismissible:e=!0,flow:o,onDismiss:t,onPrimary:n,onSecondary:r,step:i,...a}){let{handleDismiss:s}=L(o,{onDismiss:t}),{handlePrimary:d,handleSecondary:f}=q(i,{onPrimary:n,onSecondary:r});return jsxs(T,{anchor:i.selector,onOpenAutoFocus:g=>g.preventDefault(),onPointerDownOutside:g=>g.preventDefault(),...a,children:[e&&jsx(T.Close,{onClick:s}),jsx(T.Media,{src:i.videoUri??i.imageUri,type:i.videoUri?"video":"image"}),jsxs(x.Column,{gap:1,part:"tooltip-header",children:[jsx(T.Title,{children:i.title}),jsx(T.Subtitle,{color:"gray500",children:i.subtitle})]}),jsxs(x.Row,{alignItems:"center",gap:3,justifyContent:"flex-end",part:"tooltip-footer",children:[jsx(T.Progress,{marginRight:"auto",transform:"translateY(1px)",children:`${o.getNumberOfCompletedSteps()+1}/${o.getNumberOfAvailableSteps()}`}),jsx(T.Secondary,{title:i.secondaryButtonTitle,onClick:f}),jsx(T.Primary,{title:i.primaryButtonTitle,onClick:d})]})]},i.id)}function br({flowId:e,onComplete:o,variables:t,...n}){let{flow:r}=J(e,{variables:t});L(r,{onComplete:o});let{isCurrentModal:i,removeModal:a}=Y(r);if(useEffect(()=>{!(r!=null&&r.isVisible)&&i&&a();},[r==null?void 0:r.isVisible,i]),r==null||r.isVisible===!1||!i)return null;r.start();let s=r.getCurrentStep();return s==null||s.start(),jsx(Fo,{step:s,flow:r,...n})}function Sr(){let{frigade:e}=useContext(v);return {frigade:e,isLoading:!(e!=null&&e.isReady())}}function Tr(){let{userId:e,frigade:o}=useContext(v);async function t(r){await o.identify(e,r);}async function n(r,i){await o.track(r,i);}return {userId:e,addProperties:t,track:n}}function Rr(){let{groupId:e,frigade:o}=useContext(v);async function t(r){if(!e){console.error("No Group ID is set. Cannot set properties without a Group ID.");return}await o.group(e,r);}async function n(r,i){await o.track(r,i);}return {groupId:e,addProperties:t,track:n}}
19
+ var Tt=Object.defineProperty;var wt=(e=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(e,{get:(t,o)=>(typeof require<"u"?require:t)[o]}):e)(function(e){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+e+'" is not supported')});var Z=(e,t)=>{for(var o in t)Tt(e,o,{get:t[o],enumerable:!0});};var Se={borders:{md:"1px solid"},borderWidths:{0:"0",md:"1px"}};var Ce={black:"#000000",gray100:"#14161A",gray200:"#181B20",gray300:"#1F2329",gray400:"#2E343D",gray500:"#4C5766",gray600:"#5A6472",gray700:"#C5CBD3",gray800:"#E2E5E9",gray900:"#F1F2F4",white:"#ffffff",blue400:"#015AC6",blue500:"#0171F8",blue800:"#DBECFF",blue900:"#F5F9FF",green400:"#009E37",green500:"#00D149",green800:"#DBFFE8",transparent:"#FFFFFF00",inherit:"inherit",red500:"#c00000"};var Fe={md:"10px",lg:"20px",round:"50%"};var l=e=>`var(--fr-colors-${e})`,Te={neutral:{background:l("white"),border:l("gray800"),foreground:l("black"),surface:l("gray700"),active:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")},focus:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")},hover:{background:l("white"),border:l("gray900"),foreground:l("black"),surface:l("gray700")}},primary:{background:l("blue500"),border:l("blue500"),foreground:l("white"),surface:l("blue500"),active:{background:l("blue400"),border:l("blue400"),foreground:l("white"),surface:l("blue400")},focus:{background:l("blue500"),border:l("blue500"),foreground:l("white"),surface:l("blue500")},hover:{background:l("blue400"),border:l("blue400"),foreground:l("white"),surface:l("blue400")}},secondary:{background:l("white"),border:l("gray800"),foreground:l("black"),surface:l("gray900"),active:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray800")},focus:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray900")},hover:{background:l("gray900"),border:l("gray800"),foreground:l("black"),surface:l("gray800")}}};var we={md:"0px 4px 20px rgba(0, 0, 0, 0.1)"};var Rt="px",Bt=e=>typeof e=="number"?`${4*e}${Rt}`:e,vt=[-20,-19,-18,-17,-16,-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1,-.5,0,.5,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,"auto"],Re=Object.fromEntries(vt.map(e=>[e,Bt(e)]));var Be={fontFamilies:{default:"inherit"},fontSizes:{xs:"12px",sm:"14px",md:"16px",lg:"18px",xl:"20px","2xl":"24px","3xl":"30px","4xl":"36px","5xl":"48px"},fontWeights:{thin:"100",extralight:"200",light:"300",regular:"400",medium:"500",demibold:"600",bold:"700",extrabold:"800",black:"900"},letterSpacings:{md:"0.02em"},lineHeights:{xs:"18px",sm:"22px",md:"24px",lg:"26px",xl:"30px","2xl":"38px","3xl":"46px","4xl":"60px"}};var ae={...Se,colors:{...Ce,...Te},...Be,radii:Fe,shadows:we,space:Re};function U(e,t="",o="."){return Object.keys(e).reduce((n,r)=>{let a=`${t.length?`${t}${o}`:""}${r}`,s=e[r];return typeof s=="object"&&s!==null&&!Array.isArray(s)?Object.assign(n,U(s,a,o)):n[a]=s,n},{})}function se(e){return U(e,"--fr","-")}function ve(e,t="--fr"){let o={};return Object.keys(e).forEach(n=>{let r=e[n];typeof r=="object"&&r!==null&&!Array.isArray(r)?o[n]=ve(r,`${t}-${n}`):o[n]=`var(${t}-${n})`;}),o}var le=se(ae),f=ve(ae);var Et=new Set(["alt","size","src"]),Dt=kt.all.filter(e=>e.indexOf("-")!=0&&!Et.has(e)).map(e=>[e.replace(/-([a-z])/g,(t,o)=>o.toUpperCase()),null]),Ot=Object.fromEntries(Dt),pe=U(f.colors),Mt={color:pe,backgroundColor:pe,borderColor:pe,border:f.borders,borderRadius:f.radii,borderWidth:f.borderWidths,boxShadow:f.shadows,fontFamily:f.fontFamilies,fontSize:f.fontSizes,fontWeight:f.fontWeights,gap:f.space,lineHeight:f.lineHeights,margin:f.space,marginBottom:f.space,marginLeft:f.space,marginRight:f.space,marginTop:f.space,padding:f.space,paddingBottom:f.space,paddingLeft:f.space,paddingRight:f.space,paddingTop:f.space},ke={...Ot,...Mt},Ee={bg:["backgroundColor"],m:["margin"],mt:["marginTop"],mr:["marginRight"],mb:["marginBottom"],ml:["marginLeft"],mx:["marginLeft","marginRight"],my:["marginTop","marginBottom"],p:["padding"],pt:["paddingTop"],pr:["paddingRight"],pb:["paddingBottom"],pl:["paddingLeft"],px:["paddingLeft","paddingRight"],py:["paddingTop","paddingBottom"]},De=new Set(["active","focus","focusVisible","focusWithin","hover"]);function Ht(e){return Array.isArray(e)?new Map(e.map(t=>[t,t])):typeof e=="object"&&e!==null?new Map(Object.entries(e)):typeof e=="string"||typeof e=="number"?new Map([[e,e]]):new Map}var Oe=new Map(Object.entries(ke).map(([e,t])=>[e,Ht(t)])),It=new Map(Object.entries(Ee).map(([e,t])=>[e,new Set(t)])),At=new Set(["height","width"]),Vt=new Set(["canvas","embed","iframe","img","input","object","video"]);function Me(e){let[t,o]=e.split(":");return [t,De.has(o)?o:null]}function He(e,t="div"){let o=Object.assign({},e),n={};function r(i){if(i==null)return n;let s=`&:${i.replace(/[A-Z]/g,c=>`-${c.toLocaleLowerCase()}`)}`;return n[s]==null&&(n[s]={}),n[s]}return Object.entries(o).forEach(([i,a])=>{let[s,c]=Me(i),x=It.get(s);x!=null&&(x.forEach(u=>{let d=`${u}${c?":"+c:""}`;o[d]=a;}),delete o[i]);}),Object.entries(o).forEach(([i,a])=>{let[s,c]=Me(i),x=Oe.get(s);if(x!=null){if(typeof a=="string"&&a.indexOf(" ")>-1){let u=a.split(" ");r(c)[s]=u.map(d=>x.get(d.toString())??d).join(" ");}else x.has(a.toString())?r(c)[s]=x.get(a.toString()):r(c)[s]=a;(typeof t!="string"||!Vt.has(t)||!At.has(s))&&delete o[i];}}),Object.keys(o).forEach(i=>{let a=i.substring(1);i.indexOf("_")===0&&Oe.has(a)&&(o[a]=o[i],delete o[i]);}),{cssFromProps:n,unmatchedProps:o}}function Wt(){if(typeof window>"u"){let{JSDOM:e}=wt("jsdom");return new e("<!DOCTYPE html>").window}return window}function Ie(e){return e?{__html:Lt(Wt()).sanitize(e,{ALLOWED_TAGS:["b","i","a","span","div","p","pre","u","br","img","code","li","ul","table","tbody","thead","tr","td","th","h1","h2","h3","h4","video"],ALLOWED_ATTR:["style","class","target","id","href","alt","src","controls","autoplay","loop","muted"]})}:{__html:""}}function _t(e){return e&&`fr-${e}`}function Le(e){return e&&(Array.isArray(e)?e.map(t=>Le(t)).join(" "):_t(e))}function zt({as:e,children:t,className:o,css:n={},part:r,...i},a){let s=e??"div",{cssFromProps:c,unmatchedProps:x}=He(i,s),u=Le(r),d=o||u?clsx(o,u):void 0,h=[{boxSizing:"border-box"},c,n];return typeof t=="string"?jsx(s,{className:d,css:h,...x,ref:a,dangerouslySetInnerHTML:Ie(t)}):jsx(s,{className:d,css:h,...x,ref:a,children:t})}var p=me.forwardRef(zt);var m={};Z(m,{Body1:()=>io,Body2:()=>ao,Caption:()=>so,Display1:()=>Zt,Display2:()=>eo,H1:()=>to,H2:()=>oo,H3:()=>ro,H4:()=>no});var de={};Z(de,{Body1:()=>Xt,Body2:()=>qt,Caption:()=>Yt,Display1:()=>jt,Display2:()=>Kt,H1:()=>Nt,H2:()=>Ut,H3:()=>Gt,H4:()=>Jt});var E={color:"neutral.foreground",fontFamily:"default",margin:"0"},jt={...E,fontSize:"5xl",fontWeight:"bold",lineHeight:"4xl"},Kt={...E,fontSize:"4xl",fontWeight:"bold",lineHeight:"3xl"},Nt={...E,fontSize:"3xl",fontWeight:"demibold",lineHeight:"2xl"},Ut={...E,fontSize:"2xl",fontWeight:"demibold",lineHeight:"xl"},Gt={...E,fontSize:"xl",fontWeight:"demibold",lineHeight:"lg"},Jt={...E,fontSize:"md",fontWeight:"demibold",lineHeight:"md"},Xt={...E,fontSize:"md",fontWeight:"regular",lineHeight:"md"},qt={...E,fontSize:"sm",fontWeight:"regular",lineHeight:"sm"},Yt={...E,fontSize:"xs",fontWeight:"regular",lineHeight:"xs"};var Qt=["Display1","Display2","H1","H2","H3","H4","Body1","Body2","Caption"],D=Object.fromEntries(Qt.map(e=>{let t=["H1","H2","H3","H4"].includes(e)?e.toLowerCase():"span",o=me.forwardRef(({as:n=t,children:r,...i},a)=>jsx(p,{as:n,...de[e],...i,ref:a,children:r}));return o.displayName=`Text.${e}`,[e,o]})),Zt=D.Display1,eo=D.Display2,to=D.H1,oo=D.H2,ro=D.H3,no=D.H4,io=D.Body1,ao=D.Body2,so=D.Caption;var ce={};Z(ce,{Link:()=>mo,Plain:()=>uo,Primary:()=>po,Secondary:()=>co});var ee={borderWidth:"0",borderRadius:"md",display:"flex",gap:"2",padding:"2 4"},po={...ee,backgroundColor:"primary.surface",color:"primary.foreground","backgroundColor:hover":"primary.hover.surface"},co={...ee,backgroundColor:"secondary.background",borderColor:"secondary.border",borderStyle:"solid",borderWidth:"1px",color:"secondary.foreground","backgroundColor:hover":"secondary.hover.background"},mo={...ee,backgroundColor:"transparent",color:"primary.surface","color:hover":"primary.hover.surface"},uo={...ee,backgroundColor:"transparent",color:"neutral.foreground"};function $e({as:e,children:t,part:o,title:n,variant:r="Primary",...i}){let a=r.toLocaleLowerCase();return jsxs(p,{as:e??"button",part:[`button-${a}`,o],...ce[r],...i,children:[t,n&&jsx(m.Body2,{color:"inherit",flexGrow:"1",fontWeight:"demibold",css:{WebkitFontSmoothing:"antialiased",MozOsxFontSmoothing:"grayscale"},children:n})]})}var fo=["Primary","Secondary","Link","Plain"],go=Object.fromEntries(fo.map(e=>{let t=o=>jsx($e,{...o,variant:e,children:o.children});return t.displayName=`Button.${e}`,[e,t]})),b=Object.assign($e,go);var y={};Z(y,{Column:()=>ho,Row:()=>yo});var yo=me.forwardRef((e,t)=>jsx(p,{display:"flex",flexDirection:"row",...e,ref:t})),ho=me.forwardRef((e,t)=>jsx(p,{display:"flex",flexDirection:"column",...e,ref:t}));var B=createContext({apiKey:"",modals:new Set,setModals:()=>{},currentModal:null,navigate:()=>{}});function Ro({children:e,navigate:t,theme:o,...n}){let r=o?se(o):{},[i,a]=useState(new Set),s=useMemo(()=>new Frigade(n.apiKey,{apiKey:n.apiKey,apiUrl:n.apiUrl,userId:n.userId,groupId:n.groupId,__readOnly:n.__readOnly,__flowConfigOverrides:n.__flowConfigOverrides}),[n.userId,n.groupId,n.apiKey]),c=t??((u,d="_self")=>{window.open(u,d);});useEffect(()=>()=>{s.destroy();},[]);let x=i.size>0?i.values().next().value:null;return jsxs(B.Provider,{value:{modals:i,setModals:a,currentModal:x,navigate:c,...n,frigade:s},children:[jsx(Global,{styles:{":root":{...le,...r}}}),jsx(ThemeProvider,{theme:f,children:e})]})}function G(e,t){let[o,n]=useState(),[,r]=useState(""),{frigade:i}=useContext(B),a=s=>{s.id===e&&(t!=null&&t.variables&&s.applyVariables(t.variables),n(s),r(Math.random().toString()));};return useEffect(()=>((async()=>{let s=await i.getFlow(e);if(!s||i.hasFailedToLoad()){n(void 0);return}t!=null&&t.variables&&s.applyVariables(t.variables),n(s);})(),i.onStateChange(a),()=>{i.removeStateChangeHandler(a);}),[]),{flow:o}}function L(e,{onComplete:t,onDismiss:o}={}){let n=useRef(null);return useEffect(()=>{e!=null&&(e.isCompleted&&n.current===!1&&(async()=>await(t==null?void 0:t(e)))(),n.current=e==null?void 0:e.isCompleted);},[e==null?void 0:e.isCompleted]),{handleDismiss:useCallback(async r=>{if(await(o==null?void 0:o(e,r))===!1)return r.preventDefault(),!1;await e.skip();},[e])}}function J(e,{onPrimary:t,onSecondary:o}={}){let{navigate:n}=useContext(B);return {handlePrimary:useCallback(async(r,i)=>await(t==null?void 0:t(e,r))===!1?(r.preventDefault(),!1):(await e.complete(i),e.primaryButtonUri!=null&&n(e.primaryButtonUri,e.primaryButtonUriTarget),!0),[e]),handleSecondary:useCallback(async(r,i)=>await(o==null?void 0:o(e,r))===!1?(r.preventDefault(),!1):(await e.complete(i),e.secondaryButtonUri!=null&&n(e.secondaryButtonUri,e.secondaryButtonUriTarget),!0),[e])}}function X(e){let{currentModal:t,modals:o,setModals:n}=useContext(B),[r,i]=useState(!1);useEffect(()=>{e!=null&&e.isVisible&&e&&!o.has(e.id)&&n(s=>new Set(s).add(e.id));},[e==null?void 0:e.id,e==null?void 0:e.isVisible]),useEffect(()=>{let s=t===(e==null?void 0:e.id);(e==null?void 0:e.id)!=null&&s!==r&&i(s);},[e==null?void 0:e.id,t]);function a(){o.has(e==null?void 0:e.id)&&n(s=>{let c=new Set(s);return c.delete(e==null?void 0:e.id),c});}return {isCurrentModal:r,removeModal:a}}function H({as:e,children:t,container:o,dismissible:n=!1,flowId:r,onComplete:i,onDismiss:a,onPrimary:s,onSecondary:c,variables:x,...u}){let{flow:d}=G(r,{variables:x}),h=d==null?void 0:d.getCurrentStep(),{handleDismiss:V}=L(d,{onComplete:i,onDismiss:a}),{handlePrimary:Y,handleSecondary:ne}=J(h,{onPrimary:s,onSecondary:c}),{isCurrentModal:K,removeModal:ie}=X(d);return useEffect(()=>{!(d!=null&&d.isVisible)&&K&&ie();},[d==null?void 0:d.isVisible,K]),d==null||!d.isVisible||!K?null:(d.start(),h.start(),jsx(e??p,{position:"relative",...u,children:t({flow:d,handleDismiss:V,handlePrimary:Y,handleSecondary:ne,parentProps:{container:o,dismissible:n,flowId:r,variables:x,...u},step:h})}))}function Ge(e){return jsx(H,{as:g,gap:5,borderColor:"neutral.border",borderStyle:"solid",borderWidth:"md",...e,children:({handleDismiss:t,handlePrimary:o,handleSecondary:n,parentProps:{dismissible:r},step:i})=>jsxs(Fragment,{children:[jsxs(y.Row,{alignItems:"center",flexWrap:"wrap",gap:1,justifyContent:"space-between",part:"card-header",children:[jsx(g.Title,{children:i.title}),r&&jsx(g.Dismiss,{onClick:t}),jsx(g.Subtitle,{flexBasis:"100%",children:i.subtitle})]}),jsx(g.Media,{src:i.imageUri,css:{objectFit:"contain",width:"100%"}}),jsxs(y.Row,{gap:3,justifyContent:"flex-end",part:"card-footer",children:[jsx(g.Secondary,{title:i.secondaryButtonTitle,onClick:n}),jsx(g.Primary,{title:i.primaryButtonTitle??"Continue",onClick:o})]})]})})}function Je({part:e,src:t,...o}){return jsx(p,{as:"img",part:["image",e],src:t,...o})}function $o(e){var t,o,n,r;if(e.includes("youtube"))return `https://www.youtube.com/embed/${(t=e.split("v=")[1])==null?void 0:t.split("&")[0]}`;if(e.includes("vimeo"))return `https://player.vimeo.com/video/${(o=e.split("vimeo.com/")[1])==null?void 0:o.split("&")[0]}`;if(e.includes("wistia"))return `https://fast.wistia.net/embed/iframe/${(n=e.split("wistia.com/medias/")[1])==null?void 0:n.split("&")[0]}`;if(e.includes("loom"))return `https://loom.com/embed/${(r=e.split("loom.com/share/")[1])==null?void 0:r.split("&")[0]}?hideEmbedTopBar=true&hide_title=true&hide_share=true&hide_owner=true`;throw new Error("Could not map videoUri to a known provider (Youtube, Vimeo, Wistia, Loom).")}function Xe({part:e,src:t,...o}){let n=$o(t);return jsx(p,{allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0,as:"iframe",backgroundColor:"gray100",borderWidth:0,part:["video",e],src:n,...o})}function $({src:e,type:t,...o}){return jsx(t==="video"?Xe:Je,{src:e,...o})}var g=me.forwardRef((e,t)=>{if(e.flowId!=null)return jsx(Ge,{...e});let o=e.as??y.Column;return jsx(o,{backgroundColor:"neutral.background",borderRadius:"md",gap:5,p:5,...e,ref:t})});g.Dismiss=e=>jsx(b.Plain,{part:"dismiss",padding:0,...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})});g.Media=({src:e,...t})=>e==null?null:jsx($,{borderRadius:"md",src:e,...t});g.Primary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Primary,{title:t,onClick:e,...o});g.Secondary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Secondary,{title:t,onClick:e,...o});g.Subtitle=({children:e,...t})=>e==null?null:jsx(m.Body2,{display:"block",part:"subtitle",...t,children:e});g.Title=({children:e,...t})=>e==null?null:jsx(m.Body1,{display:"block",fontWeight:"bold",part:"title",...t,children:e});function F({children:e,...t}){return jsx(T.Root,{defaultOpen:!0,modal:!0,children:jsx(T.Portal,{children:jsxs(p,{inset:"0",position:"fixed",zIndex:"9999",children:[jsx(T.Overlay,{asChild:!0,children:jsx(p,{background:"rgb(0 0 0 / 0.5)",part:"dialog-overlay",position:"fixed",inset:"0"})}),jsx(T.Content,{asChild:!0,onOpenAutoFocus:o=>o.preventDefault(),onPointerDownOutside:o=>o.preventDefault(),children:jsx(g,{boxShadow:"md",left:"50%",maxWidth:"430px",p:8,part:"dialog-content",position:"fixed",textAlign:"center",top:"50%",transform:"translate(-50%, -50%)",...t,children:e})})]})})})}F.Dismiss=e=>jsx(T.Close,{"aria-label":"Close",asChild:!0,children:jsx(b.Plain,{part:"close",position:"absolute",right:"-4px",top:"4px",...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})})});F.Subtitle=({children:e,...t})=>jsx(T.Description,{asChild:!0,children:jsx(m.Body2,{part:"subtitle",...t,children:e})});F.Media=({src:e,...t})=>e==null?null:jsx($,{borderRadius:"md",src:e,...t});F.Primary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Primary,{title:t,onClick:e,...o});F.ProgressDots=({current:e,total:t})=>{if(t==1)return null;let o=[...Array(t)].map((n,r)=>jsx("circle",{r:4,cx:4+16*r,cy:"4px",fill:e===r?f.colors.blue500:f.colors.blue800},r));return jsx(p,{as:"svg",height:"8px",marginInline:"auto",part:"progress",viewBox:`0 0 ${16*t-8} 8`,width:16*t-8,children:o})};F.Secondary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Secondary,{title:t,onClick:e,...o});F.Title=({children:e,...t})=>jsx(T.Title,{asChild:!0,children:jsx(m.H3,{part:"title",...t,children:e})});function Uo(e){return jsx(H,{as:F,dismissible:!0,...e,children:({flow:t,handleDismiss:o,handlePrimary:n,handleSecondary:r,parentProps:{dismissible:i},step:a})=>jsxs(Fragment,{children:[i&&jsx(F.Dismiss,{onClick:o}),jsxs(y.Column,{gap:1,part:"announcement-header",children:[jsx(F.Title,{children:a.title}),jsx(F.Subtitle,{children:a.subtitle})]}),jsx(F.Media,{src:a.videoUri??a.imageUri,type:a.videoUri?"video":"image",css:{aspectRatio:"1.5",objectFit:"cover",width:"100%"}}),jsx(F.ProgressDots,{current:t.getNumberOfCompletedSteps(),total:t.getNumberOfAvailableSteps()}),jsxs(y.Row,{css:{"& > button":{flexBasis:"50%",flexGrow:1}},gap:3,part:"announcement-footer",children:[a.secondaryButtonTitle&&jsx(F.Secondary,{onClick:r,title:a.secondaryButtonTitle}),a.primaryButtonTitle&&jsx(F.Primary,{onClick:n,title:a.primaryButtonTitle??"Continue"})]})]})})}function Jo(e){return jsx(H,{as:g,border:"md",borderColor:"neutral.border",display:"flex",flexDirection:"row",gap:3,justifyContent:"space-between",...e,children:({handleDismiss:t,handlePrimary:o,handleSecondary:n,step:r})=>jsxs(Fragment,{children:[jsxs(y.Row,{gap:3,children:[r.imageUri&&jsx("img",{src:r.imageUri,style:{height:40,width:40,alignSelf:"center"}}),jsxs(y.Column,{children:[jsx(m.H4,{mb:1,children:r.title}),jsx(m.Body2,{color:"gray500",children:r.subtitle})]})]}),jsxs(y.Row,{alignItems:"center",gap:3,justifyContent:"center",children:[r.secondaryButtonTitle&&jsx(b.Secondary,{title:r.secondaryButtonTitle,onClick:n}),jsx(b.Primary,{title:r.primaryButtonTitle,onClick:o}),e.dismissible&&jsx(g.Dismiss,{onClick:t})]})]})})}var Qo=new Set(["required","min","max","minLength","maxLength","pattern"]);function Zo({fieldComponent:e,control:t,fieldData:o}){o.pattern!=null&&(typeof o.pattern=="string"?o.pattern=new RegExp(o.pattern.replace(/^\/|\/$/g,"")):typeof o.pattern=="object"&&typeof o.pattern.value=="string"&&(o.pattern.value=new RegExp(o.pattern.value.replace(/^\/|\/$/g,""))));let n=Object.fromEntries(Object.entries(o).filter(([i])=>Qo.has(i))),r=useController({name:o.id,control:t,rules:n});return jsx(e,{...r,fieldData:o})}function Ye({fieldTypes:e,handleDismiss:t,handlePrimary:o,handleSecondary:n,parentProps:{dismissible:r},step:i}){var d;let{control:a,handleSubmit:s}=useForm({delayError:2e3,mode:"onChange"}),c=[];function x(h,V){o(V,h);}function u(h,V){n(V,h);}return (d=i.fields)==null||d.forEach(h=>{e[h.type]!=null&&c.push(jsx(Zo,{control:a,fieldComponent:e[h.type],fieldData:h},h.id));}),jsxs(y.Column,{gap:5,children:[jsxs(y.Row,{alignItems:"center",flexWrap:"wrap",gap:1,justifyContent:"space-between",part:"form-header",children:[jsx(g.Title,{children:i.title}),r&&jsx(g.Dismiss,{onClick:t}),jsx(g.Subtitle,{flexBasis:"100%",children:i.subtitle})]}),c,jsxs(y.Row,{part:"form-footer",justifyContent:"flex-end",gap:3,children:[i.secondaryButtonTitle&&jsx(b.Secondary,{title:i.secondaryButtonTitle,onClick:s(u)}),jsx(b.Primary,{title:i.primaryButtonTitle??"Submit",onClick:s(x)})]},"form-footer")]})}function Qe({error:e}){var t;return (t=e==null?void 0:e.message)!=null&&t.length?jsx(m.Caption,{color:"red500",display:"block",part:"field-error",textAlign:"end",children:e==null?void 0:e.message}):null}function Ze({children:e,id:t,required:o=!1}){return jsxs(m.H4,{as:"label",htmlFor:t,part:"field-label",children:[e,o&&" *"]})}var q={px:"4",py:"2",backgroundColor:"neutral.background",borderColor:"neutral.border",borderStyle:"solid",borderWidth:"md",borderRadius:"md",display:"block",outline:"none",width:"100%"};function A({children:e,field:t,fieldData:o,fieldState:n}){let{id:r,label:i,placeholder:a}=o,{error:s}=n,c={id:r,...t,...a?{placeholder:a}:{},...q,"aria-invalid":!!s,value:t.value??""};return jsxs(p,{part:"field",children:[jsx(Ze,{id:r,required:!!o.required,children:i}),e(c),jsx(Qe,{error:s})]})}var rr=()=>jsx(p,{as:"svg",color:"primary.foreground",width:"10px",height:"8px",viewBox:"0 0 10 8",fill:"none",children:jsx("path",{d:"M1 4.34664L3.4618 6.99729L3.4459 6.98017L9 1",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})}),nr=me.forwardRef(({label:e,value:t},o)=>jsxs(p,{as:"label",backgroundColor:"neutral.background",borderColor:"neutral.border",borderRadius:"md",borderStyle:"solid",borderWidth:"md",display:"flex",htmlFor:t,justifyContent:"space-between",part:"field-radio",px:4,py:2,children:[jsx(m.Body2,{part:"field-radio-label",children:e}),jsx(N.Item,{id:t,value:t,ref:o,asChild:!0,children:jsx(p,{as:"button",backgroundColor:"inherit",borderWidth:"md",borderStyle:"solid",borderColor:"neutral.border",borderRadius:"100%",padding:"0",part:"field-radio-value",position:"relative",height:"24px",width:"24px",children:jsx(p,{as:N.Indicator,alignItems:"center",bg:"primary.surface",borderWidth:"md",borderStyle:"solid",borderColor:"primary.border",borderRadius:"100%",display:"flex",height:"calc(100% + 2px)",justifyContent:"center",left:"-1px",part:"field-radio-indicator",position:"absolute",top:"-1px",width:"calc(100% + 2px)",children:jsx(rr,{})})})})]}));function rt(e){let{field:{onChange:t,value:o},fieldData:{options:n=[]}}=e,r=n.map(({label:i,value:a})=>jsx(nr,{value:a,label:i},a));return jsx(A,{...e,children:()=>jsx(N.Root,{value:o,onValueChange:t,asChild:!0,children:jsx(y.Column,{gap:2,part:"field-radio-group",children:r})})})}var sr=me.forwardRef(({label:e,value:t},o)=>jsx(S.Item,{value:t,ref:o,asChild:!0,children:jsx(p,{"backgroundColor:hover":"blue900",borderRadius:"md",outline:"none",part:"field-select-option",px:"3",py:"2",children:jsx(S.ItemText,{asChild:!0,children:jsx(m.Body2,{part:"field-select-option-label",children:e})})})}));function at(e){let{field:{onChange:t,value:o},fieldData:{options:n=[],placeholder:r}}=e,i=n.map(({label:a,value:s})=>jsx(sr,{value:s,label:a},s));return jsx(A,{...e,children:()=>jsxs(S.Root,{value:o,onValueChange:t,children:[jsx(S.Trigger,{asChild:!0,children:jsxs(m.Body2,{...q,alignItems:"center",display:"flex",justifyContent:"space-between",part:"field-select",children:[jsx(S.Value,{placeholder:r??"Select one"}),jsx(S.Icon,{children:jsx(p,{as:ChevronDownIcon,color:"gray100",display:"block",height:"24px",part:"field-select-icon",width:"24px"})})]})}),jsx(S.Portal,{children:jsx(S.Content,{position:"popper",sideOffset:4,asChild:!0,children:jsx(p,{...q,p:"1",part:"field-select-options",width:"var(--radix-popper-anchor-width)",children:jsx(S.Viewport,{children:i})})})})]})})}function lt(e){return jsx(A,{...e,children:t=>jsx(m.Body2,{as:"input",part:"field-text",type:"text",...t})})}function dt(e){return jsx(A,{...e,children:t=>jsx(m.Body2,{as:"textarea",part:"field-textarea",...t})})}var lr={radio:rt,select:at,text:lt,textarea:dt};function pr({fieldTypes:e={},...t}){let o=Object.assign({},lr,e);return jsx(H,{...t,children:n=>jsx(Ye,{fieldTypes:o,...n})})}function oe(){let e="DOMRect"in globalThis?new DOMRect:{height:0,width:0,x:0,y:0,bottom:0,top:0,right:0,left:0,toJSON:()=>{}},[t,o]=useState(e),[n,r]=useState(null),i=useCallback(a=>{r(a);},[]);return useLayoutEffect(()=>{if(!n)return;let a=()=>{let s=n.getBoundingClientRect();o(s);};return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[n]),{node:n,rect:t,ref:i}}var ur=keyframes({"0%":{opacity:.5,transform:"scale(0.5)"},"50%":{opacity:0,transform:"scale(1)"},"100%":{opacity:0,transform:"scale(1)"}});function ft({style:e={},part:t="",...o}){return jsxs(p,{part:`dot-wrapper ${t}`,style:{height:"48px",position:"absolute",width:"48px",...e},...o,children:[jsx(p,{backgroundColor:"primary.surface",part:"dot-pulse",css:{animation:`2s ease-out infinite ${ur}`,borderRadius:"24px",height:"48px",left:0,position:"absolute",top:0,transformOrigin:"center center",width:"48px"}}),jsx(p,{backgroundColor:"primary.surface",part:"dot",style:{borderRadius:"12px",height:"24px",left:"12px",position:"absolute",top:"12px",width:"24px"}})]})}function gt({props:e,alignAttr:t,sideAttr:o}){let n=o??"bottom",r={},i=()=>{if(["after","before"].includes(e.align)){if(t=="start")return "before";if(t=="end")return "after"}return e.align??"after"},a="-24px",s={top:"bottom",right:"left",bottom:"top",left:"right"};r[s[n]]=a;let c=i();return ["before","end"].includes(c)?["top","bottom"].includes(n)?r.right=a:r.bottom=a:["after","start"].includes(c)?["top","bottom"].includes(n)?r.left=a:r.top=a:["top","bottom"].includes(n)?r.left=`calc(50% + ${a})`:r.top=`calc(50% + ${a})`,r}var xt={content:["align","alignOffset","arrowPadding","avoidCollisions","collisionBoundary","collisionPadding","forceMount","hideWhenDetached","onCloseAutoFocus","onEscapeKeyDown","onFocusOutside","onInteractOutside","onOpenAutoFocus","onPointerDownOutside","side","sideOffset","sticky"],root:["defaultOpen","modal","onOpenChange","open"]};function yt(e,t){let o=Object.fromEntries(xt.content.map(r=>[r,e[r]]).filter(r=>r[1]!==void 0)),n=Object.fromEntries(xt.root.map(r=>[r,e[r]]).filter(r=>r[1]!==void 0));if(o.align=o.align??"after",o.side=o.side??"bottom",["before","after"].includes(o.align)){let r={after:"end",before:"start"},i=(d,h)=>["top","bottom"].includes(h)?d=="after"?"marginLeft":"marginRight":d=="after"?"marginTop":"marginBottom",a=o.alignOffset??0,s=o.style??{},c=o.side??"bottom",x=o.align;o.style={...s,[i(x,c)]:a};let u=["top","bottom"].includes(c)?t.width:t.height;o.alignOffset=(u+a)*-1,o.align=r[x];}return {contentProps:o,rootProps:n}}function C({anchor:e,children:t,className:o,spotlight:n=!1,style:r,...i}){let{node:a,rect:s,ref:c}=oe(),{node:x,rect:u,ref:d}=oe(),{contentProps:h,rootProps:V}=yt(i,s),[Y,ne]=useState(h.align),[K,ie]=useState(h.side),[he,Pt]=useState(0),[St,Ct]=useState(0);if(a!==null){let M=a.getAttribute("data-align"),Q=a.getAttribute("data-side");Y!==M&&ne(M),K!==Q&&ie(Q);}let be=useRef(null);if(useEffect(()=>{let M=document.querySelector(e);M!=null&&(d(M),be.current=M);},[e]),useEffect(()=>{let{scrollX:M,scrollY:Q}=window;Pt(u.left+M),Ct(u.top+Q);},[u.left,u.top]),x==null)return null;let Pe="0";typeof window<"u"&&(Pe=window.getComputedStyle(x).borderRadius);let Ft=gt({props:i,alignAttr:Y,sideAttr:K});return jsxs(k.Root,{defaultOpen:!0,...V,children:[jsx(k.Anchor,{virtualRef:be}),jsx(k.Portal,{children:jsxs("div",{className:o,css:{bottom:0,left:0,position:"absolute",right:0,top:0,zIndex:9999,pointerEvents:"none"},children:[n&&jsx(p,{part:"tooltip-spotlight",position:"absolute",style:{borderRadius:Pe,boxShadow:"0 0 0 20000px rgb(0 0 0 / 0.5)",height:u.height,left:he,top:St,width:u.width}}),jsx(k.Content,{asChild:!0,...h,ref:c,children:jsxs(g,{boxShadow:"md",part:"tooltip-content",position:"relative",css:{maxWidth:"360px",pointerEvents:"auto",...r},children:[jsx(ft,{style:Ft}),t]})})]})})]})}C.Close=e=>jsx(k.Close,{"aria-label":"Close",asChild:!0,children:jsx(b.Plain,{css:{top:"12px",right:"4px"},part:"close",position:"absolute",...e,children:jsx(XMarkIcon,{height:"24",fill:"currentColor"})})});C.Media=({src:e,...t})=>e==null?null:jsx($,{borderRadius:"md md 0 0",borderWidth:"0",css:{aspectRatio:"2",objectFit:"cover"},margin:"-5 -5 0",src:e,...t});C.Primary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Primary,{title:t,onClick:e,...o});C.Progress=({children:e,...t})=>e==null?null:jsx(m.H4,{part:"progress",...t,children:e});C.Secondary=({onClick:e,title:t,...o})=>t==null?null:jsx(b.Secondary,{title:t,onClick:e,...o});C.Subtitle=({children:e,...t})=>e==null?null:jsx(m.Body2,{part:"subtitle",...t,children:e});C.Title=({children:e,...t})=>e==null?null:jsx(m.H4,{part:"title",...t,children:e});function bt({dismissible:e=!0,flow:t,onDismiss:o,onPrimary:n,onSecondary:r,step:i,...a}){let{handleDismiss:s}=L(t,{onDismiss:o}),{handlePrimary:c,handleSecondary:x}=J(i,{onPrimary:n,onSecondary:r});return jsxs(C,{anchor:i.selector,onOpenAutoFocus:u=>u.preventDefault(),onPointerDownOutside:u=>u.preventDefault(),...a,children:[e&&jsx(C.Close,{onClick:s}),jsx(C.Media,{src:i.videoUri??i.imageUri,type:i.videoUri?"video":"image"}),jsxs(y.Column,{gap:1,part:"tooltip-header",children:[jsx(C.Title,{children:i.title}),jsx(C.Subtitle,{color:"gray500",children:i.subtitle})]}),jsxs(y.Row,{alignItems:"center",gap:3,justifyContent:"flex-end",part:"tooltip-footer",children:[jsx(C.Progress,{marginRight:"auto",transform:"translateY(1px)",children:`${t.getNumberOfCompletedSteps()+1}/${t.getNumberOfAvailableSteps()}`}),jsx(C.Secondary,{title:i.secondaryButtonTitle,onClick:x}),jsx(C.Primary,{title:i.primaryButtonTitle,onClick:c})]})]},i.id)}function hr({flowId:e,onComplete:t,variables:o,...n}){let{flow:r}=G(e,{variables:o});L(r,{onComplete:t});let{isCurrentModal:i,removeModal:a}=X(r);if(useEffect(()=>{!(r!=null&&r.isVisible)&&i&&a();},[r==null?void 0:r.isVisible,i]),r==null||r.isVisible===!1||!i)return null;r.start();let s=r.getCurrentStep();return s==null||s.start(),jsx(bt,{step:s,flow:r,...n})}function Sr(){let{frigade:e}=useContext(B);return {frigade:e,isLoading:!(e!=null&&e.isReady())}}function Fr(){let{userId:e,frigade:t}=useContext(B);async function o(r){await t.identify(e,r);}async function n(r,i){await t.track(r,i);}return {userId:e,addProperties:o,track:n}}function wr(){let{groupId:e,frigade:t}=useContext(B);async function o(r){if(!e){console.error("No Group ID is set. Cannot set properties without a Group ID.");return}await t.group(e,r);}async function n(r,i){await t.track(r,i);}return {groupId:e,addProperties:o,track:n}}
20
20
 
21
- export { Gt as Announcement, Jt as Banner, p as Box, h as Button, u as Card, x as Flex, dr as Form, Rt as Provider, m as Text, T as Tooltip, br as Tour, ie as useBoundingClientRect, J as useFlow, L as useFlowHandlers, Sr as useFrigade, Rr as useGroup, Y as useModal, q as useStepHandlers, Tr as useUser };
21
+ export { Uo as Announcement, Jo as Banner, p as Box, b as Button, g as Card, y as Flex, pr as Form, Ro as Provider, m as Text, C as Tooltip, hr as Tour, le as themeVariables, oe as useBoundingClientRect, G as useFlow, L as useFlowHandlers, Sr as useFrigade, wr as useGroup, X as useModal, J as useStepHandlers, Fr as useUser };
22
22
  //# sourceMappingURL=out.js.map
23
23
  //# sourceMappingURL=index.js.map