@developer_tribe/react-builder 1.2.45 → 1.2.46

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.
@@ -29,5 +29,5 @@
29
29
  //! moment.js
30
30
  r.version="2.30.1",n(Yi),r.fn=lo,r.min=Ji,r.max=Qi,r.now=er,r.utc=m,r.unix=co,r.months=yo,r.isDate=p,r.locale=mi,r.invalid=b,r.duration=Rr,r.isMoment=w,r.weekdays=Co,r.parseZone=po,r.localeData=yi,r.isDuration=ar,r.monthsShort=bo,r.weekdaysMin=vo,r.defineLocale=hi,r.updateLocale=fi,r.locales=bi,r.weekdaysShort=xo,r.normalizeUnits=ie,r.relativeTimeRounding=na,r.relativeTimeThreshold=oa,r.calendarFormat=Nr,r.prototype=lo,r.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"},r}()),moment$2.exports;var e}var momentExports=requireMoment(),moment=getDefaultExportFromCjs(momentExports);function formatCountdownTime(e,t,i=Date.now()){const r=Math.max(0,e-i);return moment(r).format(t)}const PaywallContext=React.createContext(void 0);function usePaywallContext(){return React.useContext(PaywallContext)??{products:[],setSelectedProductId:()=>{},onCounterDown:()=>{},isBackAllowed:!0}}const DEFAULT_FORMAT="m : s";function CountDown({node:e}){useLogRender("CountDown"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"CountDown",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),{onCounterDown:a}=usePaywallContext(),s=React.useRef(a),l=useMergedStyle(useExtractTextStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),c=e.attributes?.count,d="number"==typeof c&&Number.isFinite(c)?Math.max(0,c):0,[p,g]=React.useState("");React.useEffect(()=>{s.current=a},[a]),React.useEffect(()=>{const e=Date.now()+d;if(g(formatCountdownTime(e,DEFAULT_FORMAT)),d<=0)return;const t=setInterval(()=>{const i=Date.now(),r=e-i;g(formatCountdownTime(e,DEFAULT_FORMAT,i)),r<=0&&(clearInterval(t),s.current?.())},950);return()=>{clearInterval(t)}},[d]);const u=5*("number"==typeof l?.fontSize?l.fontSize:"string"==typeof l?.fontSize?parseFloat(l.fontSize):16)*.6+4*("number"==typeof l?.letterSpacing?l.letterSpacing:"string"==typeof l?.letterSpacing?parseFloat(l.letterSpacing):0);return jsxRuntime.jsx("p",{"attribute-name":i,"attribute-key":r,style:{...l,width:u,textAlign:"left",alignItems:"left",alignSelf:"center"},children:p})}var isCheckBoxInput=e=>"checkbox"===e.type,isDateObject=e=>e instanceof Date,isNullOrUndefined=e=>null==e;const isObjectType=e=>"object"==typeof e;var isObject$1=e=>!isNullOrUndefined(e)&&!Array.isArray(e)&&isObjectType(e)&&!isDateObject(e),getEventValue=e=>isObject$1(e)&&e.target?isCheckBoxInput(e.target)?e.target.checked:e.target.value:e,getNodeParentName=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,isNameInFieldArray=(e,t)=>e.has(getNodeParentName(t)),isPlainObject$3=e=>{const t=e.constructor&&e.constructor.prototype;return isObject$1(t)&&t.hasOwnProperty("isPrototypeOf")},isWeb="undefined"!=typeof window&&void 0!==window.HTMLElement&&"undefined"!=typeof document;function cloneObject(e){if(e instanceof Date)return new Date(e);const t="undefined"!=typeof FileList&&e instanceof FileList;if(isWeb&&(e instanceof Blob||t))return e;const i=Array.isArray(e);if(!(i||isObject$1(e)&&isPlainObject$3(e)))return e;const r=i?[]:Object.create(Object.getPrototypeOf(e));for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(r[t]=cloneObject(e[t]));return r}var isKey=e=>/^\w*$/.test(e),isUndefined=e=>void 0===e,compact=e=>Array.isArray(e)?e.filter(Boolean):[],stringToPath=e=>compact(e.replace(/["|']|\]/g,"").split(/\.|\[/)),get=(e,t,i)=>{if(!t||!isObject$1(e))return i;const r=(isKey(t)?[t]:stringToPath(t)).reduce((e,t)=>isNullOrUndefined(e)?e:e[t],e);return isUndefined(r)||r===e?isUndefined(e[t])?i:e[t]:r},isBoolean=e=>"boolean"==typeof e,isFunction=e=>"function"==typeof e,set=(e,t,i)=>{let r=-1;const n=isKey(t)?[t]:stringToPath(t),o=n.length,a=o-1;for(;++r<o;){const t=n[r];let o=i;if(r!==a){const i=e[t];o=isObject$1(i)||Array.isArray(i)?i:isNaN(+n[r+1])?{}:[]}if("__proto__"===t||"constructor"===t||"prototype"===t)return;e[t]=o,e=e[t]}};const EVENTS={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},HookFormControlContext=React.createContext(null);HookFormControlContext.displayName="HookFormControlContext";const useFormControlContext=()=>React.useContext(HookFormControlContext);var getProxyFormState=(e,t,i,r=!0)=>{const n={defaultValues:t._defaultValues};for(const o in e)Object.defineProperty(n,o,{get:()=>{const n=o;return t._proxyFormState[n]!==VALIDATION_MODE.all&&(t._proxyFormState[n]=!r||VALIDATION_MODE.all),i&&(i[n]=!0),e[n]}});return n};const useIsomorphicLayoutEffect="undefined"!=typeof window?React.useLayoutEffect:React.useEffect;function useFormState(e){const t=useFormControlContext(),{control:i=t,disabled:r,name:n,exact:o}=e||{},[a,s]=React.useState(i._formState),l=React.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1});return useIsomorphicLayoutEffect(()=>i._subscribe({name:n,formState:l.current,exact:o,callback:e=>{!r&&s({...i._formState,...e})}}),[n,r,o]),React.useEffect(()=>{l.current.isValid&&i._setValid(!0)},[i]),React.useMemo(()=>getProxyFormState(a,i,l.current,!1),[a,i])}var isString=e=>"string"==typeof e,generateWatchOutput=(e,t,i,r,n)=>isString(e)?(r&&t.watch.add(e),get(i,e,n)):Array.isArray(e)?e.map(e=>(r&&t.watch.add(e),get(i,e))):(r&&(t.watchAll=!0),i),isPrimitive=e=>isNullOrUndefined(e)||!isObjectType(e);function deepEqual(e,t,i=new WeakSet){if(isPrimitive(e)||isPrimitive(t))return Object.is(e,t);if(isDateObject(e)&&isDateObject(t))return Object.is(e.getTime(),t.getTime());const r=Object.keys(e),n=Object.keys(t);if(r.length!==n.length)return!1;if(i.has(e)||i.has(t))return!0;i.add(e),i.add(t);for(const o of r){const r=e[o];if(!n.includes(o))return!1;if("ref"!==o){const e=t[o];if(isDateObject(r)&&isDateObject(e)||isObject$1(r)&&isObject$1(e)||Array.isArray(r)&&Array.isArray(e)?!deepEqual(r,e,i):!Object.is(r,e))return!1}}return!0}function useWatch(e){const t=useFormControlContext(),{control:i=t,name:r,defaultValue:n,disabled:o,exact:a,compute:s}=e||{},l=React.useRef(n),c=React.useRef(s),d=React.useRef(void 0),p=React.useRef(i),g=React.useRef(r);c.current=s;const[u,m]=React.useState(()=>{const e=i._getWatch(r,l.current);return c.current?c.current(e):e}),h=React.useCallback(e=>{const t=generateWatchOutput(r,i._names,e||i._formValues,!1,l.current);return c.current?c.current(t):t},[i._formValues,i._names,r]),f=React.useCallback(e=>{if(!o){const t=generateWatchOutput(r,i._names,e||i._formValues,!1,l.current);if(c.current){const e=c.current(t);deepEqual(e,d.current)||(m(e),d.current=e)}else m(t)}},[i._formValues,i._names,o,r]);useIsomorphicLayoutEffect(()=>(p.current===i&&deepEqual(g.current,r)||(p.current=i,g.current=r,f()),i._subscribe({name:r,formState:{values:!0},exact:a,callback:e=>{f(e.values)}})),[i,a,r,f]),React.useEffect(()=>i._removeUnmounted());const y=p.current!==i,b=g.current,C=React.useMemo(()=>{if(o)return null;const e=!y&&!deepEqual(b,r);return y||e?h():null},[o,y,r,b,h]);return null!==C?C:u}function useController(e){const t=useFormControlContext(),{name:i,disabled:r,control:n=t,shouldUnregister:o,defaultValue:a,exact:s=!0}=e,l=isNameInFieldArray(n._names.array,i),c=React.useMemo(()=>get(n._formValues,i,get(n._defaultValues,i,a)),[n,i,a]),d=useWatch({control:n,name:i,defaultValue:c,exact:s}),p=useFormState({control:n,name:i,exact:s}),g=React.useRef(e),u=React.useRef(void 0),m=React.useRef(n.register(i,{...e.rules,value:d,...isBoolean(e.disabled)?{disabled:e.disabled}:{}}));g.current=e;const h=React.useMemo(()=>Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!get(p.errors,i)},isDirty:{enumerable:!0,get:()=>!!get(p.dirtyFields,i)},isTouched:{enumerable:!0,get:()=>!!get(p.touchedFields,i)},isValidating:{enumerable:!0,get:()=>!!get(p.validatingFields,i)},error:{enumerable:!0,get:()=>get(p.errors,i)}}),[p,i]),f=React.useCallback(e=>m.current.onChange({target:{value:getEventValue(e),name:i},type:EVENTS.CHANGE}),[i]),y=React.useCallback(()=>m.current.onBlur({target:{value:get(n._formValues,i),name:i},type:EVENTS.BLUR}),[i,n._formValues]),b=React.useCallback(e=>{const t=get(n._fields,i);t&&t._f&&e&&(t._f.ref={focus:()=>isFunction(e.focus)&&e.focus(),select:()=>isFunction(e.select)&&e.select(),setCustomValidity:t=>isFunction(e.setCustomValidity)&&e.setCustomValidity(t),reportValidity:()=>isFunction(e.reportValidity)&&e.reportValidity()})},[n._fields,i]),C=React.useMemo(()=>({name:i,value:d,...isBoolean(r)||p.disabled?{disabled:p.disabled||r}:{},onChange:f,onBlur:y,ref:b}),[i,r,p.disabled,f,y,b,d]);return React.useEffect(()=>{const e=n._options.shouldUnregister||o,t=u.current;t&&t!==i&&!l&&n.unregister(t),n.register(i,{...g.current.rules,...isBoolean(g.current.disabled)?{disabled:g.current.disabled}:{}});const r=(e,t)=>{const i=get(n._fields,e);i&&i._f&&(i._f.mount=t)};if(r(i,!0),e){const e=cloneObject(get(n._options.defaultValues,i,g.current.defaultValue));set(n._defaultValues,i,e),isUndefined(get(n._formValues,i))&&set(n._formValues,i,e)}return!l&&n.register(i),u.current=i,()=>{(l?e&&!n._state.action:e)?n.unregister(i):r(i,!1)}},[i,n,l,o]),React.useEffect(()=>{n._setDisabledField({disabled:r,name:i})},[r,i,n]),React.useMemo(()=>({field:C,formState:p,fieldState:h}),[C,p,h])}const Controller=e=>e.render(useController(e)),HookFormContext=React.createContext(null);HookFormContext.displayName="HookFormContext";const FormProvider$1=e=>{const{children:t,watch:i,getValues:r,getFieldState:n,setError:o,clearErrors:a,setValue:s,trigger:l,formState:c,resetField:d,reset:p,handleSubmit:g,unregister:u,control:m,register:h,setFocus:f,subscribe:y}=e;return React.createElement(HookFormContext.Provider,{value:React.useMemo(()=>({watch:i,getValues:r,getFieldState:n,setError:o,clearErrors:a,setValue:s,trigger:l,formState:c,resetField:d,reset:p,handleSubmit:g,unregister:u,control:m,register:h,setFocus:f,subscribe:y}),[a,m,c,n,r,g,h,p,d,o,f,s,y,l,u,i])},React.createElement(HookFormControlContext.Provider,{value:m},t))};var appendErrors=(e,t,i,r,n)=>t?{...i[e],types:{...i[e]&&i[e].types?i[e].types:{},[r]:n||!0}}:{},convertToArrayPayload=e=>Array.isArray(e)?e:[e],createSubject=()=>{let e=[];return{get observers(){return e},next:t=>{for(const i of e)i.next&&i.next(t)},subscribe:t=>(e.push(t),{unsubscribe:()=>{e=e.filter(e=>e!==t)}}),unsubscribe:()=>{e=[]}}};function extractFormValues(e,t){const i={};for(const r in e)if(e.hasOwnProperty(r)){const n=e[r],o=t[r];if(n&&isObject$1(n)&&o){const e=extractFormValues(n,o);isObject$1(e)&&(i[r]=e)}else e[r]&&(i[r]=o)}return i}var isEmptyObject=e=>isObject$1(e)&&!Object.keys(e).length,isFileInput=e=>"file"===e.type,isHTMLElement=e=>{if(!isWeb)return!1;const t=e?e.ownerDocument:0;return e instanceof(t&&t.defaultView?t.defaultView.HTMLElement:HTMLElement)},isMultipleSelect=e=>"select-multiple"===e.type,isRadioInput=e=>"radio"===e.type,isRadioOrCheckbox=e=>isRadioInput(e)||isCheckBoxInput(e),live=e=>isHTMLElement(e)&&e.isConnected;function baseGet(e,t){const i=t.slice(0,-1).length;let r=0;for(;r<i;)e=isUndefined(e)?r++:e[t[r++]];return e}function isEmptyArray(e){for(const t in e)if(e.hasOwnProperty(t)&&!isUndefined(e[t]))return!1;return!0}function unset(e,t){const i=Array.isArray(t)?t:isKey(t)?[t]:stringToPath(t),r=1===i.length?e:baseGet(e,i),n=i.length-1,o=i[n];return r&&delete r[o],0!==n&&(isObject$1(r)&&isEmptyObject(r)||Array.isArray(r)&&isEmptyArray(r))&&unset(e,i.slice(0,-1)),e}var objectHasFunction=e=>{for(const t in e)if(isFunction(e[t]))return!0;return!1};function isTraversable(e){return Array.isArray(e)||isObject$1(e)&&!objectHasFunction(e)}function markFieldsDirty(e,t={}){for(const i in e){const r=e[i];isTraversable(r)?(t[i]=Array.isArray(r)?[]:{},markFieldsDirty(r,t[i])):isUndefined(r)||(t[i]=!0)}return t}function getDirtyFields(e,t,i){i||(i=markFieldsDirty(t));for(const r in e){const n=e[r];if(isTraversable(n))isUndefined(t)||isPrimitive(i[r])?i[r]=markFieldsDirty(n,Array.isArray(n)?[]:{}):getDirtyFields(n,isNullOrUndefined(t)?{}:t[r],i[r]);else{const e=t[r];i[r]=!deepEqual(n,e)}}return i}const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=e=>{if(Array.isArray(e)){if(e.length>1){const t=e.filter(e=>e&&e.checked&&!e.disabled).map(e=>e.value);return{value:t,isValid:!!t.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!isUndefined(e[0].attributes.value)?isUndefined(e[0].value)||""===e[0].value?validResult:{value:e[0].value,isValid:!0}:validResult:defaultResult}return defaultResult},getFieldValueAs=(e,{valueAsNumber:t,valueAsDate:i,setValueAs:r})=>isUndefined(e)?e:t?""===e?NaN:e?+e:e:i&&isString(e)?new Date(e):r?r(e):e;const defaultReturn={isValid:!1,value:null};var getRadioValue=e=>Array.isArray(e)?e.reduce((e,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:e,defaultReturn):defaultReturn;function getFieldValue(e){const t=e.ref;return isFileInput(t)?t.files:isRadioInput(t)?getRadioValue(e.refs).value:isMultipleSelect(t)?[...t.selectedOptions].map(({value:e})=>e):isCheckBoxInput(t)?getCheckboxValue(e.refs).value:getFieldValueAs(isUndefined(t.value)?e.ref.value:t.value,e)}var getResolverOptions=(e,t,i,r)=>{const n={};for(const i of e){const e=get(t,i);e&&set(n,i,e._f)}return{criteriaMode:i,names:[...e],fields:n,shouldUseNativeValidation:r}},isRegex=e=>e instanceof RegExp,getRuleValue=e=>isUndefined(e)?e:isRegex(e)?e.source:isObject$1(e)?isRegex(e.value)?e.value.source:e.value:e,getValidationModes=e=>({isOnSubmit:!e||e===VALIDATION_MODE.onSubmit,isOnBlur:e===VALIDATION_MODE.onBlur,isOnChange:e===VALIDATION_MODE.onChange,isOnAll:e===VALIDATION_MODE.all,isOnTouch:e===VALIDATION_MODE.onTouched});const ASYNC_FUNCTION="AsyncFunction";var hasPromiseValidation=e=>!!e&&!!e.validate&&!!(isFunction(e.validate)&&e.validate.constructor.name===ASYNC_FUNCTION||isObject$1(e.validate)&&Object.values(e.validate).find(e=>e.constructor.name===ASYNC_FUNCTION)),hasValidation=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate),isWatched=(e,t,i)=>!i&&(t.watchAll||t.watch.has(e)||[...t.watch].some(t=>e.startsWith(t)&&/^\.\w+/.test(e.slice(t.length))));const iterateFieldsByAction=(e,t,i,r)=>{for(const n of i||Object.keys(e)){const i=get(e,n);if(i){const{_f:e,...o}=i;if(e){if(e.refs&&e.refs[0]&&t(e.refs[0],n)&&!r)return!0;if(e.ref&&t(e.ref,e.name)&&!r)return!0;if(iterateFieldsByAction(o,t))break}else if(isObject$1(o)&&iterateFieldsByAction(o,t))break}}};function schemaErrorLookup(e,t,i){const r=get(e,i);if(r||isKey(i))return{error:r,name:i};const n=i.split(".");for(;n.length;){const r=n.join("."),o=get(t,r),a=get(e,r);if(o&&!Array.isArray(o)&&i!==r)return{name:i};if(a&&a.type)return{name:r,error:a};if(a&&a.root&&a.root.type)return{name:`${r}.root`,error:a.root};n.pop()}return{name:i}}var shouldRenderFormState=(e,t,i,r)=>{i(e);const{name:n,...o}=e;return isEmptyObject(o)||Object.keys(o).length>=Object.keys(t).length||Object.keys(o).find(e=>t[e]===(!r||VALIDATION_MODE.all))},shouldSubscribeByName=(e,t,i)=>!e||!t||e===t||convertToArrayPayload(e).some(e=>e&&(i?e===t:e.startsWith(t)||t.startsWith(e))),skipValidation=(e,t,i,r,n)=>!n.isOnAll&&(!i&&n.isOnTouch?!(t||e):(i?r.isOnBlur:n.isOnBlur)?!e:!(i?r.isOnChange:n.isOnChange)||e),unsetEmptyArray=(e,t)=>!compact(get(e,t)).length&&unset(e,t),updateFieldArrayRootError=(e,t,i)=>{const r=convertToArrayPayload(get(e,i));return set(r,"root",t[i]),set(e,i,r),e};function getValidateError(e,t,i="validate"){if(isString(e)||Array.isArray(e)&&e.every(isString)||isBoolean(e)&&!e)return{type:i,message:isString(e)?e:"",ref:t}}var getValueAndMessage=e=>isObject$1(e)&&!isRegex(e)?e:{value:e,message:""},validateField=async(e,t,i,r,n,o)=>{const{ref:a,refs:s,required:l,maxLength:c,minLength:d,min:p,max:g,pattern:u,validate:m,name:h,valueAsNumber:f,mount:y}=e._f,b=get(i,h);if(!y||t.has(h))return{};const C=s?s[0]:a,x=e=>{n&&C.reportValidity&&(C.setCustomValidity(isBoolean(e)?"":e||""),C.reportValidity())},v={},S=isRadioInput(a),w=isCheckBoxInput(a),k=S||w,T=(f||isFileInput(a))&&isUndefined(a.value)&&isUndefined(b)||isHTMLElement(a)&&""===a.value||""===b||Array.isArray(b)&&!b.length,_=appendErrors.bind(null,h,r,v),R=(e,t,i,r=INPUT_VALIDATION_RULES.maxLength,n=INPUT_VALIDATION_RULES.minLength)=>{const o=e?t:i;v[h]={type:e?r:n,message:o,ref:a,..._(e?r:n,o)}};if(o?!Array.isArray(b)||!b.length:l&&(!k&&(T||isNullOrUndefined(b))||isBoolean(b)&&!b||w&&!getCheckboxValue(s).isValid||S&&!getRadioValue(s).isValid)){const{value:e,message:t}=isString(l)?{value:!!l,message:l}:getValueAndMessage(l);if(e&&(v[h]={type:INPUT_VALIDATION_RULES.required,message:t,ref:C,..._(INPUT_VALIDATION_RULES.required,t)},!r))return x(t),v}if(!(T||isNullOrUndefined(p)&&isNullOrUndefined(g))){let e,t;const i=getValueAndMessage(g),n=getValueAndMessage(p);if(isNullOrUndefined(b)||isNaN(b)){const r=a.valueAsDate||new Date(b),o=e=>new Date((new Date).toDateString()+" "+e),s="time"==a.type,l="week"==a.type;isString(i.value)&&b&&(e=s?o(b)>o(i.value):l?b>i.value:r>new Date(i.value)),isString(n.value)&&b&&(t=s?o(b)<o(n.value):l?b<n.value:r<new Date(n.value))}else{const r=a.valueAsNumber||(b?+b:b);isNullOrUndefined(i.value)||(e=r>i.value),isNullOrUndefined(n.value)||(t=r<n.value)}if((e||t)&&(R(!!e,i.message,n.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!r))return x(v[h].message),v}if((c||d)&&!T&&(isString(b)||o&&Array.isArray(b))){const e=getValueAndMessage(c),t=getValueAndMessage(d),i=!isNullOrUndefined(e.value)&&b.length>+e.value,n=!isNullOrUndefined(t.value)&&b.length<+t.value;if((i||n)&&(R(i,e.message,t.message),!r))return x(v[h].message),v}if(u&&!T&&isString(b)){const{value:e,message:t}=getValueAndMessage(u);if(isRegex(e)&&!b.match(e)&&(v[h]={type:INPUT_VALIDATION_RULES.pattern,message:t,ref:a,..._(INPUT_VALIDATION_RULES.pattern,t)},!r))return x(t),v}if(m)if(isFunction(m)){const e=getValidateError(await m(b,i),C);if(e&&(v[h]={...e,..._(INPUT_VALIDATION_RULES.validate,e.message)},!r))return x(e.message),v}else if(isObject$1(m)){let e={};for(const t in m){if(!isEmptyObject(e)&&!r)break;const n=getValidateError(await m[t](b,i),C,t);n&&(e={...n,..._(t,n.message)},x(n.message),r&&(v[h]=e))}if(!isEmptyObject(e)&&(v[h]={ref:C,...e},!r))return v}return x(!0),v};const defaultOptions={mode:VALIDATION_MODE.onSubmit,reValidateMode:VALIDATION_MODE.onChange,shouldFocusError:!0};function createFormControl(e={}){let t,i={...defaultOptions,...e},r={submitCount:0,isDirty:!1,isReady:!1,isLoading:isFunction(i.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:i.errors||{},disabled:i.disabled||!1},n={},o=(isObject$1(i.defaultValues)||isObject$1(i.values))&&cloneObject(i.defaultValues||i.values)||{},a=i.shouldUnregister?{}:cloneObject(o),s={action:!1,mount:!1,watch:!1,keepIsValid:!1},l={mount:new Set,disabled:new Set,unMount:new Set,array:new Set,watch:new Set},c=0;const d={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},p={...d};let g={...p};const u={array:createSubject(),state:createSubject()},m=i.criteriaMode===VALIDATION_MODE.all,h=async e=>{if(!s.keepIsValid&&!i.disabled&&(p.isValid||g.isValid||e)){let e;i.resolver?(e=isEmptyObject((await x()).errors),f()):e=await v(n,!0),e!==r.isValid&&u.state.next({isValid:e})}},f=(e,t)=>{!i.disabled&&(p.isValidating||p.validatingFields||g.isValidating||g.validatingFields)&&((e||Array.from(l.mount)).forEach(e=>{e&&(t?set(r.validatingFields,e,t):unset(r.validatingFields,e))}),u.state.next({validatingFields:r.validatingFields,isValidating:!isEmptyObject(r.validatingFields)}))},y=(e,t,i,r)=>{const l=get(n,e);if(l){const n=get(a,e,isUndefined(i)?get(o,e):i);isUndefined(n)||r&&r.defaultChecked||t?set(a,e,t?n:getFieldValue(l._f)):k(e,n),s.mount&&!s.action&&h()}},b=(e,t,n,a,s)=>{let l=!1,c=!1;const d={name:e};if(!i.disabled){if(!n||a){(p.isDirty||g.isDirty)&&(c=r.isDirty,r.isDirty=d.isDirty=S(),l=c!==d.isDirty);const i=deepEqual(get(o,e),t);c=!!get(r.dirtyFields,e),i?unset(r.dirtyFields,e):set(r.dirtyFields,e,!0),d.dirtyFields=r.dirtyFields,l=l||(p.dirtyFields||g.dirtyFields)&&c!==!i}if(n){const t=get(r.touchedFields,e);t||(set(r.touchedFields,e,n),d.touchedFields=r.touchedFields,l=l||(p.touchedFields||g.touchedFields)&&t!==n)}l&&s&&u.state.next(d)}return l?d:{}},C=(e,n,o,a)=>{const s=get(r.errors,e),l=(p.isValid||g.isValid)&&isBoolean(n)&&r.isValid!==n;var d;if(i.delayError&&o?(d=()=>((e,t)=>{set(r.errors,e,t),u.state.next({errors:r.errors})})(e,o),t=e=>{clearTimeout(c),c=setTimeout(d,e)},t(i.delayError)):(clearTimeout(c),t=null,o?set(r.errors,e,o):unset(r.errors,e)),(o?!deepEqual(s,o):s)||!isEmptyObject(a)||l){const t={...a,...l&&isBoolean(n)?{isValid:n}:{},errors:r.errors,name:e};r={...r,...t},u.state.next(t)}},x=async e=>{f(e,!0);return await i.resolver(a,i.context,getResolverOptions(e||l.mount,n,i.criteriaMode,i.shouldUseNativeValidation))},v=async(t,n,o={valid:!0})=>{for(const s in t){const c=t[s];if(c){const{_f:t,...s}=c;if(t){const s=l.array.has(t.name),d=c._f&&hasPromiseValidation(c._f);d&&p.validatingFields&&f([t.name],!0);const g=await validateField(c,l.disabled,a,m,i.shouldUseNativeValidation&&!n,s);if(d&&p.validatingFields&&f([t.name]),g[t.name]&&(o.valid=!1,n||e.shouldUseNativeValidation))break;!n&&(get(g,t.name)?s?updateFieldArrayRootError(r.errors,g,t.name):set(r.errors,t.name,g[t.name]):unset(r.errors,t.name))}!isEmptyObject(s)&&await v(s,n,o)}}return o.valid},S=(e,t)=>!i.disabled&&(e&&t&&set(a,e,t),!deepEqual(M(),o)),w=(e,t,i)=>generateWatchOutput(e,l,{...s.mount?a:isUndefined(t)?o:isString(e)?{[e]:t}:t},i,t),k=(e,t,i={})=>{const r=get(n,e);let o=t;if(r){const i=r._f;i&&(!i.disabled&&set(a,e,getFieldValueAs(t,i)),o=isHTMLElement(i.ref)&&isNullOrUndefined(t)?"":t,isMultipleSelect(i.ref)?[...i.ref.options].forEach(e=>e.selected=o.includes(e.value)):i.refs?isCheckBoxInput(i.ref)?i.refs.forEach(e=>{e.defaultChecked&&e.disabled||(Array.isArray(o)?e.checked=!!o.find(t=>t===e.value):e.checked=o===e.value||!!o)}):i.refs.forEach(e=>e.checked=e.value===o):isFileInput(i.ref)?i.ref.value="":(i.ref.value=o,i.ref.type||u.state.next({name:e,values:cloneObject(a)})))}(i.shouldDirty||i.shouldTouch)&&b(e,o,i.shouldTouch,i.shouldDirty,!0),i.shouldValidate&&I(e)},T=(e,t,i)=>{for(const r in t){if(!t.hasOwnProperty(r))return;const o=t[r],a=e+"."+r,s=get(n,a);(l.array.has(e)||isObject$1(o)||s&&!s._f)&&!isDateObject(o)?T(a,o,i):k(a,o,i)}},_=(e,t,i={})=>{const c=get(n,e),d=l.array.has(e),m=cloneObject(t);set(a,e,m),d?(u.array.next({name:e,values:cloneObject(a)}),(p.isDirty||p.dirtyFields||g.isDirty||g.dirtyFields)&&i.shouldDirty&&u.state.next({name:e,dirtyFields:getDirtyFields(o,a),isDirty:S(e,m)})):!c||c._f||isNullOrUndefined(m)?k(e,m,i):T(e,m,i),isWatched(e,l)?u.state.next({...r,name:e,values:cloneObject(a)}):u.state.next({name:s.mount?e:void 0,values:cloneObject(a)})},R=async e=>{s.mount=!0;const o=e.target;let c=o.name,d=!0;const y=get(n,c),S=e=>{d=Number.isNaN(e)||isDateObject(e)&&isNaN(e.getTime())||deepEqual(e,get(a,c,e))},w=getValidationModes(i.mode),k=getValidationModes(i.reValidateMode);if(y){let s,T;const _=o.type?getFieldValue(y._f):getEventValue(e),R=e.type===EVENTS.BLUR||e.type===EVENTS.FOCUS_OUT,O=!hasValidation(y._f)&&!i.resolver&&!get(r.errors,c)&&!y._f.deps||skipValidation(R,get(r.touchedFields,c),r.isSubmitted,k,w),M=isWatched(c,l,R);set(a,c,_),R?o&&o.readOnly||(y._f.onBlur&&y._f.onBlur(e),t&&t(0)):y._f.onChange&&y._f.onChange(e);const j=b(c,_,R),P=!isEmptyObject(j)||M;if(!R&&u.state.next({name:c,type:e.type,values:cloneObject(a)}),O)return(p.isValid||g.isValid)&&("onBlur"===i.mode?R&&h():R||h()),P&&u.state.next({name:c,...M?{}:j});if(!R&&M&&u.state.next({...r}),i.resolver){const{errors:e}=await x([c]);if(f([c]),S(_),d){const t=schemaErrorLookup(r.errors,n,c),i=schemaErrorLookup(e,n,t.name||c);s=i.error,c=i.name,T=isEmptyObject(e)}}else f([c],!0),s=(await validateField(y,l.disabled,a,m,i.shouldUseNativeValidation))[c],f([c]),S(_),d&&(s?T=!1:(p.isValid||g.isValid)&&(T=await v(n,!0)));d&&(y._f.deps&&(!Array.isArray(y._f.deps)||y._f.deps.length>0)&&I(y._f.deps),C(c,T,s,j))}},O=(e,t)=>{if(get(r.errors,t)&&e.focus)return e.focus(),1},I=async(e,t={})=>{let o,a;const s=convertToArrayPayload(e);if(i.resolver){const t=await(async e=>{const{errors:t}=await x(e);if(f(e),e)for(const i of e){const e=get(t,i);e?set(r.errors,i,e):unset(r.errors,i)}else r.errors=t;return t})(isUndefined(e)?e:s);o=isEmptyObject(t),a=e?!s.some(e=>get(t,e)):o}else e?(a=(await Promise.all(s.map(async e=>{const t=get(n,e);return await v(t&&t._f?{[e]:t}:t)}))).every(Boolean),(a||r.isValid)&&h()):a=o=await v(n);return u.state.next({...!isString(e)||(p.isValid||g.isValid)&&o!==r.isValid?{}:{name:e},...i.resolver||!e?{isValid:o}:{},errors:r.errors}),t.shouldFocus&&!a&&iterateFieldsByAction(n,O,e?s:l.mount),a},M=(e,t)=>{let i={...s.mount?a:o};return t&&(i=extractFormValues(t.dirtyFields?r.dirtyFields:r.touchedFields,i)),isUndefined(e)?i:isString(e)?get(i,e):e.map(e=>get(i,e))},j=(e,t)=>({invalid:!!get((t||r).errors,e),isDirty:!!get((t||r).dirtyFields,e),error:get((t||r).errors,e),isValidating:!!get(r.validatingFields,e),isTouched:!!get((t||r).touchedFields,e)}),P=(e,t,i)=>{const o=(get(n,e,{_f:{}})._f||{}).ref,a=get(r.errors,e)||{},{ref:s,message:l,type:c,...d}=a;set(r.errors,e,{...d,...t,ref:o}),u.state.next({name:e,errors:r.errors,isValid:!1}),i&&i.shouldFocus&&o&&o.focus&&o.focus()},E=e=>u.state.subscribe({next:t=>{shouldSubscribeByName(e.name,t.name,e.exact)&&shouldRenderFormState(t,e.formState||p,F,e.reRenderRoot)&&e.callback({values:{...a},...r,...t,defaultValues:o})}}).unsubscribe,L=(e,t={})=>{for(const s of e?convertToArrayPayload(e):l.mount)l.mount.delete(s),l.array.delete(s),t.keepValue||(unset(n,s),unset(a,s)),!t.keepError&&unset(r.errors,s),!t.keepDirty&&unset(r.dirtyFields,s),!t.keepTouched&&unset(r.touchedFields,s),!t.keepIsValidating&&unset(r.validatingFields,s),!i.shouldUnregister&&!t.keepDefaultValue&&unset(o,s);u.state.next({values:cloneObject(a)}),u.state.next({...r,...t.keepDirty?{isDirty:S()}:{}}),!t.keepIsValid&&h()},z=({disabled:e,name:t})=>{if(isBoolean(e)&&s.mount||e||l.disabled.has(t)){const i=l.disabled.has(t)!==!!e;e?l.disabled.add(t):l.disabled.delete(t),i&&s.mount&&!s.action&&h()}},D=(e,t={})=>{let r=get(n,e);const a=isBoolean(t.disabled)||isBoolean(i.disabled);return set(n,e,{...r||{},_f:{...r&&r._f?r._f:{ref:{name:e}},name:e,mount:!0,...t}}),l.mount.add(e),r?z({disabled:isBoolean(t.disabled)?t.disabled:i.disabled,name:e}):y(e,!0,t.value),{...a?{disabled:t.disabled||i.disabled}:{},...i.progressive?{required:!!t.required,min:getRuleValue(t.min),max:getRuleValue(t.max),minLength:getRuleValue(t.minLength),maxLength:getRuleValue(t.maxLength),pattern:getRuleValue(t.pattern)}:{},name:e,onChange:R,onBlur:R,ref:a=>{if(a){D(e,t),r=get(n,e);const i=isUndefined(a.value)&&a.querySelectorAll&&a.querySelectorAll("input,select,textarea")[0]||a,s=isRadioOrCheckbox(i),l=r._f.refs||[];if(s?l.find(e=>e===i):i===r._f.ref)return;set(n,e,{_f:{...r._f,...s?{refs:[...l.filter(live),i,...Array.isArray(get(o,e))?[{}]:[]],ref:{type:i.type,name:e}}:{ref:i}}}),y(e,!1,void 0,i)}else r=get(n,e,{}),r._f&&(r._f.mount=!1),(i.shouldUnregister||t.shouldUnregister)&&(!isNameInFieldArray(l.array,e)||!s.action)&&l.unMount.add(e)}}},B=()=>i.shouldFocusError&&iterateFieldsByAction(n,O,l.mount),A=(e,t)=>async o=>{let s;o&&(o.preventDefault&&o.preventDefault(),o.persist&&o.persist());let c=cloneObject(a);if(u.state.next({isSubmitting:!0}),i.resolver){const{errors:e,values:t}=await x();f(),r.errors=e,c=cloneObject(t)}else await v(n);if(l.disabled.size)for(const e of l.disabled)unset(c,e);if(unset(r.errors,"root"),isEmptyObject(r.errors)){u.state.next({errors:{}});try{await e(c,o)}catch(e){s=e}}else t&&await t({...r.errors},o),B(),setTimeout(B);if(u.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(r.errors)&&!s,submitCount:r.submitCount+1,errors:r.errors}),s)throw s},V=(e,t={})=>{const c=e?cloneObject(e):o,d=cloneObject(c),g=isEmptyObject(e),m=g?o:d;if(t.keepDefaultValues||(o=c),!t.keepValues){if(t.keepDirtyValues){const e=new Set([...l.mount,...Object.keys(getDirtyFields(o,a))]);for(const t of Array.from(e)){const e=get(r.dirtyFields,t),i=get(a,t),n=get(m,t);e&&!isUndefined(i)?set(m,t,i):e||isUndefined(n)||_(t,n)}}else{if(isWeb&&isUndefined(e))for(const e of l.mount){const t=get(n,e);if(t&&t._f){const e=Array.isArray(t._f.refs)?t._f.refs[0]:t._f.ref;if(isHTMLElement(e)){const t=e.closest("form");if(t){t.reset();break}}}}if(t.keepFieldsRef)for(const e of l.mount)_(e,get(m,e));else n={}}a=i.shouldUnregister?t.keepDefaultValues?cloneObject(o):{}:cloneObject(m),u.array.next({values:{...m}}),u.state.next({values:{...m}})}l={mount:t.keepDirtyValues?l.mount:new Set,unMount:new Set,array:new Set,disabled:new Set,watch:new Set,watchAll:!1,focus:""},s.mount=!p.isValid||!!t.keepIsValid||!!t.keepDirtyValues||!i.shouldUnregister&&!isEmptyObject(m),s.watch=!!i.shouldUnregister,s.keepIsValid=!!t.keepIsValid,s.action=!1,t.keepErrors||(r.errors={}),u.state.next({submitCount:t.keepSubmitCount?r.submitCount:0,isDirty:!g&&(t.keepDirty?r.isDirty:!(!t.keepDefaultValues||deepEqual(e,o))),isSubmitted:!!t.keepIsSubmitted&&r.isSubmitted,dirtyFields:g?{}:t.keepDirtyValues?t.keepDefaultValues&&a?getDirtyFields(o,a):r.dirtyFields:t.keepDefaultValues&&e?getDirtyFields(o,e):t.keepDirty?r.dirtyFields:{},touchedFields:t.keepTouched?r.touchedFields:{},errors:t.keepErrors?r.errors:{},isSubmitSuccessful:!!t.keepIsSubmitSuccessful&&r.isSubmitSuccessful,isSubmitting:!1,defaultValues:o})},N=(e,t)=>V(isFunction(e)?e(a):e,{...i.resetOptions,...t}),F=e=>{r={...r,...e}},H={control:{register:D,unregister:L,getFieldState:j,handleSubmit:A,setError:P,_subscribe:E,_runSchema:x,_updateIsValidating:f,_focusError:B,_getWatch:w,_getDirty:S,_setValid:h,_setFieldArray:(e,t=[],l,c,d=!0,m=!0)=>{if(c&&l&&!i.disabled){if(s.action=!0,m&&Array.isArray(get(n,e))){const t=l(get(n,e),c.argA,c.argB);d&&set(n,e,t)}if(m&&Array.isArray(get(r.errors,e))){const t=l(get(r.errors,e),c.argA,c.argB);d&&set(r.errors,e,t),unsetEmptyArray(r.errors,e)}if((p.touchedFields||g.touchedFields)&&m&&Array.isArray(get(r.touchedFields,e))){const t=l(get(r.touchedFields,e),c.argA,c.argB);d&&set(r.touchedFields,e,t)}(p.dirtyFields||g.dirtyFields)&&(r.dirtyFields=getDirtyFields(o,a)),u.state.next({name:e,isDirty:S(e,t),dirtyFields:r.dirtyFields,errors:r.errors,isValid:r.isValid})}else set(a,e,t)},_setDisabledField:z,_setErrors:e=>{r.errors=e,u.state.next({errors:r.errors,isValid:!1})},_getFieldArray:e=>compact(get(s.mount?a:o,e,i.shouldUnregister?get(o,e,[]):[])),_reset:V,_resetDefaultValues:()=>isFunction(i.defaultValues)&&i.defaultValues().then(e=>{N(e,i.resetOptions),u.state.next({isLoading:!1})}),_removeUnmounted:()=>{for(const e of l.unMount){const t=get(n,e);t&&(t._f.refs?t._f.refs.every(e=>!live(e)):!live(t._f.ref))&&L(e)}l.unMount=new Set},_disableForm:e=>{isBoolean(e)&&(u.state.next({disabled:e}),iterateFieldsByAction(n,(t,i)=>{const r=get(n,i);r&&(t.disabled=r._f.disabled||e,Array.isArray(r._f.refs)&&r._f.refs.forEach(t=>{t.disabled=r._f.disabled||e}))},0,!1))},_subjects:u,_proxyFormState:p,get _fields(){return n},get _formValues(){return a},get _state(){return s},set _state(e){s=e},get _defaultValues(){return o},get _names(){return l},set _names(e){l=e},get _formState(){return r},get _options(){return i},set _options(e){i={...i,...e}}},subscribe:e=>(s.mount=!0,g={...g,...e.formState},E({...e,formState:{...d,...e.formState}})),trigger:I,register:D,handleSubmit:A,watch:(e,t)=>isFunction(e)?u.state.subscribe({next:i=>"values"in i&&e(w(void 0,t),i)}):w(e,t,!0),setValue:_,getValues:M,reset:N,resetField:(e,t={})=>{get(n,e)&&(isUndefined(t.defaultValue)?_(e,cloneObject(get(o,e))):(_(e,t.defaultValue),set(o,e,cloneObject(t.defaultValue))),t.keepTouched||unset(r.touchedFields,e),t.keepDirty||(unset(r.dirtyFields,e),r.isDirty=t.defaultValue?S(e,cloneObject(get(o,e))):S()),t.keepError||(unset(r.errors,e),p.isValid&&h()),u.state.next({...r}))},clearErrors:e=>{const t=e?convertToArrayPayload(e):void 0;null==t||t.forEach(e=>unset(r.errors,e)),t?t.forEach(e=>{u.state.next({name:e,errors:r.errors})}):u.state.next({errors:{}})},unregister:L,setError:P,setFocus:(e,t={})=>{const i=get(n,e),r=i&&i._f;if(r){const e=r.refs?r.refs[0]:r.ref;e.focus&&setTimeout(()=>{e.focus(),t.shouldSelect&&isFunction(e.select)&&e.select()})}},getFieldState:j};return{...H,formControl:H}}function useForm(e={}){const t=React.useRef(void 0),i=React.useRef(void 0),[r,n]=React.useState({isDirty:!1,isValidating:!1,isLoading:isFunction(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,isReady:!1,defaultValues:isFunction(e.defaultValues)?void 0:e.defaultValues});if(!t.current)if(e.formControl)t.current={...e.formControl,formState:r},e.defaultValues&&!isFunction(e.defaultValues)&&e.formControl.reset(e.defaultValues,e.resetOptions);else{const{formControl:i,...n}=createFormControl(e);t.current={...n,formState:r}}const o=t.current.control;return o._options=e,useIsomorphicLayoutEffect(()=>{const e=o._subscribe({formState:o._proxyFormState,callback:()=>n({...o._formState}),reRenderRoot:!0});return n(e=>({...e,isReady:!0})),o._formState.isReady=!0,e},[o]),React.useEffect(()=>o._disableForm(e.disabled),[o,e.disabled]),React.useEffect(()=>{e.mode&&(o._options.mode=e.mode),e.reValidateMode&&(o._options.reValidateMode=e.reValidateMode)},[o,e.mode,e.reValidateMode]),React.useEffect(()=>{e.errors&&(o._setErrors(e.errors),o._focusError())},[o,e.errors]),React.useEffect(()=>{e.shouldUnregister&&o._subjects.state.next({values:o._getWatch()})},[o,e.shouldUnregister]),React.useEffect(()=>{if(o._proxyFormState.isDirty){const e=o._getDirty();e!==r.isDirty&&o._subjects.state.next({isDirty:e})}},[o,r.isDirty]),React.useEffect(()=>{var t;e.values&&!deepEqual(e.values,i.current)?(o._reset(e.values,{keepFieldsRef:!0,...o._options.resetOptions}),(null===(t=o._options.resetOptions)||void 0===t?void 0:t.keepIsValid)||o._setValid(),i.current=e.values,n(e=>({...e}))):o._resetDefaultValues()},[o,e.values]),React.useEffect(()=>{o._state.mount||(o._setValid(),o._state.mount=!0),o._state.watch&&(o._state.watch=!1,o._subjects.state.next({...o._formState})),o._removeUnmounted()}),t.current.formState=React.useMemo(()=>getProxyFormState(r,o),[o,r]),t.current}const formContext=React.createContext(null);function parseDefaultValues(e){if(null==e||"string"!=typeof e||""===e.trim())return{};try{const t=JSON.parse(e);return"object"!=typeof t||null===t||Array.isArray(t)?{}:t}catch(t){return console.warn("[FormProvider] parseDefaultValues: invalid defaultValues JSON",e,t),{}}}function FormProviderInner({node:e}){useLogRender("FormProvider");const t=(e=useNode(e)).attributes,i=useForm({defaultValues:React.useMemo(()=>parseDefaultValues(t?.defaultValues),[t?.defaultValues]),mode:"onChange"}),[r,n]=React.useState(null),o=t?.validationErrorMessageKey??"form.error.validation_required",a=React.useCallback(e=>i.handleSubmit(t=>{n(null);try{const i=e(t),r=null!=i&&"function"==typeof i.then?i:null;r&&r.catch(e=>{throw n(e instanceof Error?e.message:String(e)),e})}catch(e){throw n(e instanceof Error?e.message:String(e)),e}},()=>{n(o)}),[i,o]),s=React.useMemo(()=>({handleSubmit:a,isValid:i.formState.isValid,globalError:r,control:i.control}),[a,i.formState.isValid,i.control,r]),l=useExtractViewStyle$1(e);return jsxRuntime.jsx(formContext.Provider,{value:s,children:jsxRuntime.jsx(FormProvider$1,{...i,children:jsxRuntime.jsx("form",{onSubmit:e=>{e.preventDefault()},style:l,"attribute-name":e.sourceType??e.type??"FormProvider","attribute-key":e.key,children:e.children?jsxRuntime.jsx(RenderNode$1,{node:e.children}):null})})})}function FormProvider(e){return jsxRuntime.jsx(FormProviderInner,{node:e.node})}function validationArrayToRules(e){const t={};if(!Array.isArray(e))return t;e.includes("required")&&(t.required=!0);const i=e.indexOf("min");if(i>=0)if(null!=e[i+1]){const r=Number(e[i+1]);Number.isFinite(r)?t.min=r:console.warn('[FormCheckbox] validation "min" rule skipped: value must be a number.',"Received:",e[i+1],'— Expected e.g. ["min", 2].')}else console.warn('[FormCheckbox] validation "min" rule skipped: no value after "min".','Expected e.g. ["min", 2], got:',e);const r=e.indexOf("max");if(r>=0)if(null!=e[r+1]){const i=Number(e[r+1]);Number.isFinite(i)?t.max=i:console.warn('[FormCheckbox] validation "max" rule skipped: value must be a number.',"Received:",e[r+1],'— Expected e.g. ["max", 5].')}else console.warn('[FormCheckbox] validation "max" rule skipped: no value after "max".','Expected e.g. ["max", 5], got:',e);return t}function FormCheckbox({node:e}){useLogRender("FormCheckbox"),e=useNode(e);const t=React.useContext(formContext),i=e.attributes,r=i?.name,n=i?.validation;if(!t||!r)return jsxRuntime.jsx(Checkbox$1,{node:e});const o=t.control,a=validationArrayToRules(n);return jsxRuntime.jsx(Controller,{name:r,control:o,rules:a,render:({field:t})=>jsxRuntime.jsx(Checkbox$1,{node:e,checked:Boolean(t.value),onCheckedChange:e=>t.onChange(e)})})}function Text({node:e}){useLogRender("Text");const t=(e=useNode(e)).sourceType??e.type??"text",i=e.key,r=React.useRef(null),[n,o]=React.useState(null),{previewMode:a,selectedKey:s}=useBuilderParams(),l=e.children,c=useExtractTextStyle$1(e),d=isNodeSelected({previewMode:!!a,current:s?{key:s}:void 0,node:e}),p=useLocalize(),g=e.attributes?.translateCounter,u=React.useMemo(()=>{let e=p(l);const t=g??1;for(let i=1;i<t;i++)e=p(e);return e},[p,l,g]),m=e.attributes?.styles,h=m?.adjustsFontSizeToFit??!1,f=e.attributes?.numberOfLines;React.useLayoutEffect(()=>{if(1!==f||!h)return void o(null);const e=r.current;if(!e)return;const t=()=>{const t=e.clientWidth,i=e.clientHeight,r=u?.length??0;if(!t||!i||!r)return void o(null);const n=Math.sqrt(t*i/r),a=Number.parseFloat(window.getComputedStyle(e).fontSize),s=Number.isFinite(a)?a:void 0,l=Math.max(8,s?Math.min(n,s):n);o(Number.isFinite(l)?l:null)};t();let i=null;return"undefined"!=typeof ResizeObserver?(i=new ResizeObserver(()=>t()),i.observe(e)):window.addEventListener("resize",t),()=>{i?.disconnect(),window.removeEventListener("resize",t)}},[h,u,f]);const y=useMergedStyle(useMergedStyle(c,React.useMemo(()=>{let e;return 1==f&&h&&(e={...e??{},overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}),null!==n&&(e={...e??{},fontSize:`${n}px`}),e},[n,f,h])),d?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("p",{ref:r,"attribute-name":t,"attribute-key":i,style:y,children:u})}var Text$1=React.memo(Text);function FormErrorText({node:e}){useLogRender("FormErrorText"),e=useNode(e);const t=React.useContext(formContext),i=useLocalize(),r=React.useMemo(()=>t?.globalError?i(t.globalError):"",[t?.globalError,i]);if(!t?.globalError||!r)return null;const n={...e,type:"Text",children:r};return jsxRuntime.jsx("div",{role:"alert","aria-live":"polite",children:jsxRuntime.jsx(Text,{node:n})})}function usePlacementButtonEvents(e,t){const{context:i,requestPermission:r,onNavigateWithoutPlacement:n}=t,o=React.useRef([]);return React.useCallback(async()=>{const t=e??[];for(const e of t)if(!o.current.includes(e))if("Permission"===e.type){const t=e.permission??"camera";await r(t),o.current.push(e)}else if("Placement"===e.type&&e.placementKey)"onboard"===e.placementKey?i?.navigation("onboard"):"paywall"===e.placementKey?i?.navigation("subscription"):"terms"===e.placementKey&&i?.navigation("terms"),o.current.push(e);else if("Navigate"===e.type)if(e.placementKey)"onboard"===e.placementKey?i?.navigation("onboard"):"paywall"===e.placementKey?i?.navigation("subscription"):"terms"===e.placementKey&&i?.navigation("terms"),o.current.push(e);else{null!=n&&await Promise.resolve(n(e))?o.current.push(e):e.navigate_to&&"string"==typeof e.navigate_to&&(i?.navigation(e.navigate_to),o.current.push(e))}},[e,i,r,n])}function SystemButton({node:e,onClick:t,disabled:i=!1}){useLogRender("SystemButton");const r=(e=useNode(e)).sourceType??e.type??"SystemButton",n=useMockOSContext(),o=useMockPermission(n),a=React.useId(),s=e.key??a,l=e.attributes,c=l?.labelKey??"",d=useLocalize()(c),p=useExtractViewStyle$1(e),g=useExtractTextStyle$1(e),u=usePlacementButtonEvents(l?.events,{context:n,requestPermission:e=>o.requestPermission(e)}),m=t??u,h=useMergedStyle(p,g,{border:"none",display:"flex",justifyContent:"center",alignItems:"center",cursor:i?"not-allowed":"pointer",opacity:i?.6:1});return jsxRuntime.jsx("button",{...l?.testID?{"data-testid":l.testID}:{},"attribute-name":r,"attribute-key":s,onClick:m,disabled:i,type:"button",style:h,children:d||"Button"})}function FormSubmitButton({node:e}){useLogRender("FormSubmitButton"),e=useNode(e);const t=React.useContext(formContext),i=useMockOSContext(),r=useMockPermission(i),n=e.attributes,o=usePlacementButtonEvents(n?.events,{context:i,requestPermission:e=>r.requestPermission(e)}),a=!0===n?.validationRequired&&!0===n?.disableIfUnvalidated&&null!==t&&!t.isValid,s=null!==t?t.handleSubmit(()=>{o()}):o;return jsxRuntime.jsx(SystemButton,{node:e,onClick:null!==t?s:void 0,disabled:null!==t&&a})}function extractImageStyle(e,t={}){const i=e.attributes,r={};if(!i)return r;const n=getStyleBag(i),o=n?.resizeMode??i.resizeMode;return"cover"===o?r.objectFit="cover":"contain"===o?r.objectFit="contain":"stretch"===o?r.objectFit="fill":"center"===o&&(r.objectFit="none"),{...extractViewStyle(e,t),...r}}function extractImageStyleNative(e,t={}){const i=e.attributes;if(!i)return{};const r=getStyleBag(i),n=r?.resizeMode??i.resizeMode,o={};return n&&(o.resizeMode=n),{...extractViewStyleNative(e,t),...o}}function useExtractImageStyle$1(e){const{selectedTheme:t,projectColors:i,baseSize:r,device:n}=useBuilderParams();return React.useMemo(()=>extractImageStyle(e,{theme:t,projectColors:i,baseSize:r,device:n}),[e,t,i,r,n])}function Image$1({node:e}){useLogRender("Image"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"image",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useExtractImageStyle$1(e),s=e.attributes?.src,l=useMergedStyle(a,isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("img",{"attribute-name":i,"attribute-key":r,src:resolveImageSrc(s),style:{...l,width:"auto",maxWidth:"100%"},alt:""},e.key+(s??"-"))}var Image$2=React.memo(Image$1);function addInset(e,t){return t?void 0===e?t:"number"==typeof e?e+t:"string"==typeof e&&e.trim()?`calc(${e.trim()} + ${t}px)`:t:e}function subtractInset(e,t){return t?void 0===e?`calc(100% - ${t}px)`:"number"==typeof e?Math.max(0,e-t):"string"==typeof e&&e.trim()?`calc(${e.trim()} - ${t}px)`:`calc(100% - ${t}px)`:e}function useSafeAreaViewStyle(e,t,i){const r=useRenderStore(e=>e.statusBarOverrideTranslucent);return React.useMemo(()=>{if(!t)return e;const[n,o,,a]=i?.insets??[0,0,0,0],s=r?0:n||("ios"===i?.platform?20:i?.platform?24:0),l=o??0,c=a??0,d=c+l,p=s+0;return{...e,marginTop:addInset(e.marginTop,s),marginRight:addInset(e.marginRight,l),marginBottom:addInset(e.marginBottom,0),marginLeft:addInset(e.marginLeft,c),width:subtractInset(e.width??"100%",d),height:subtractInset(e.height??"100%",p)}},[t,e,i,r])}function Main({node:e}){useLogRender("Main"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"Main",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useRenderStore(e=>e.device),s=useMergedStyle(useSafeAreaViewStyle(useExtractViewStyle$1(e),e.attributes?.useSafeAreaView??!0,a),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0,{boxSizing:"content-box"});return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:s,children:jsxRuntime.jsx(RenderNode$1,{node:e.children})})}var Main$1=React.memo(Main);function NavigationBarColor({node:e}){useLogRender("NavigationBarColor"),e=useNode(e);const{selectedTheme:t,projectColors:i}=useBuilderParams(),r=useRenderStore(e=>e.setNavBarOverrideColor),n=useRenderStore(e=>e.setNavBarOverrideTranslucent),o=getStyleBag(e.attributes)?.backgroundColor,a=parseColor(o,{projectColors:i,theme:t}),s=e.attributes?.translucent;return React.useEffect(()=>(a&&r(a),void 0!==s&&n(s),()=>{r(null),n(null)}),[a,r,s,n]),null}var NavigationBarColor$1=React.memo(NavigationBarColor);function Onboard({node:e}){useLogRender("Onboard");const t=(e=useNode(e)).type??"Onboard";return jsxRuntime.jsx(Carousel$1,{node:{...e,type:"carousel",sourceType:t}})}var Onboard$1=React.memo(Onboard);function OnboardButton({node:e}){useLogRender("OnboardButton");const t=(e=useNode(e)).sourceType??e.type??"OnboardButton",{emblaApi:i,selectedIndex:r}=React.useContext(onboardContext)??{},{selectedTheme:n,projectColors:o}=useBuilderParams(),a=useMockOSContext(),s=useMockPermission(a),l=React.useId(),c=e.key??l,d=e.attributes,p=d?.labelKey??"",g=useLocalize()(p),u=d?.styles?.color,m=parseColor(u,{projectColors:o,theme:n}),h=useExtractViewStyle$1(e),f=React.useCallback(e=>{const t=e.targetIndex;return"number"==typeof t?(i?.scrollTo(t),!0):!(!e.navigate_to||"string"!=typeof e.navigate_to)&&(a?a.navigation(e.navigate_to):console.warn("Mock OS context not available for navigation."),!0)},[i,a]),y=usePlacementButtonEvents(d?.events,{context:a,requestPermission:e=>s.requestPermission(e),onNavigateWithoutPlacement:f});return jsxRuntime.jsx("button",{...d?.testID?{"data-testid":`${d.testID}-${r??0}`}:{},"attribute-name":t,"attribute-key":c,onClick:y,style:{...h,color:m??void 0,border:"none",display:"flex",justifyContent:"center",cursor:"pointer"},children:g})}function OnboardButtons({node:e}){useLogRender("OnboardButtons");const t=(e=useNode(e)).sourceType??e.type??"OnboardButtons",{previewMode:i,selectedKey:r}=useBuilderParams(),n=React.useContext(onboardContext)??{},[o,a]=React.useState(n.selectedIndex??0);React.useEffect(()=>{"number"==typeof n.selectedIndex&&a(n.selectedIndex)},[n.selectedIndex]);const s=toAttributeRecord(e.attributes),l=getStyleBag(e.attributes),c=React.useMemo(()=>{const t=e.children;return Array.isArray(t)?t:[t]},[e.children]),d=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!i,current:r?{key:r}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),p=React.useId(),g=s.condition??l?.condition,u=s.conditionVariable??l?.conditionVariable;return"carousel-index"===g&&"number"==typeof u&&u!==o?null:jsxRuntime.jsx("div",{"attribute-name":t,"attribute-key":e.key??p,style:{...d,boxSizing:"border-box"},children:c.map((e,t)=>jsxRuntime.jsx(RenderNode$1,{node:e},e?.key??t))})}var OnboardButtons$1=React.memo(OnboardButtons);function OnboardDot({node:e}){useLogRender("OnboardDot"),e=useNode(e);const t=React.useId(),i=e.type??"OnboardDot",r=e.key??t,n=e.attributes,o=toAttributeRecord(n),a=getStyleBag(n),s=o.dotType??a?.dotType??"normal_dot",{previewMode:l,selectedKey:c,selectedTheme:d,projectColors:p,baseSize:g,device:u}=useBuilderParams(),m=o.inactive_dot_opacity??a?.inactive_dot_opacity??.3,h=o.inactive_dot_color??a?.inactive_dot_color,f=o.active_dot_color??a?.active_dot_color,y=React.useMemo(()=>parseColor(f,{theme:d,projectColors:p}),[f,d,p]),b=React.useMemo(()=>parseColor(h,{theme:d,projectColors:p}),[h,d,p]),C=useExtractViewStyle$1(e),x=useMergedStyle(React.useMemo(()=>{const{flexDirection:e,...t}=C;return t},[C]),isNodeSelected({previewMode:!!l,current:c?{key:c}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),v=o.dot_thickness??a?.dot_thickness,S=React.useMemo(()=>{const e=parseSize(v,g,u);return void 0===e?"10px":"number"==typeof e?`${e}px`:"string"==typeof e&&e.trim()?e:"10px"},[v,g,u]),w=React.useMemo(()=>{const e="string"==typeof S&&S.trim().endsWith("px")?Number.parseFloat(S):Number.NaN,t=Number.isFinite(e)?e:10;return`${Math.max(0,t/3)}px`},[S]),k=useMergedStyle(x,{display:"flex",flexWrap:"wrap",gap:x.gap??w,alignItems:"center"}),T=React.useContext(onboardContext),_=T?.emblaApi,[R,O]=React.useState(0),[I,M]=React.useState([]);return React.useEffect(()=>{if(!_)return;const e=_.scrollSnapList(),t=_.selectedScrollSnap();M(e),O(t);const i=()=>{const e=_.selectedScrollSnap();O(e)};return _.on("select",i),()=>{_&&_.off&&_.off("select",i)}},[_]),jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,className:`embla__dots embla__dots--${s}`,style:k,children:I.map((e,t)=>{const i=R===t,r=(i?y:b)??void 0;return jsxRuntime.jsx("button",{className:"embla__dot",style:{width:S,height:S,backgroundColor:r,opacity:i?1:m,borderRadius:"9999px",border:0,padding:0,margin:0,display:"inline-block",cursor:"pointer",boxSizing:"border-box"},"aria-label":`Go to slide ${t+1}`,"aria-current":i?"true":void 0},t)})})}function escapeRegExp$1(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function buildSegments$1(e,t){const i=[];for(const r of t){if(!r.value)continue;const t=new RegExp(escapeRegExp$1(r.value),"gi");for(const n of e.matchAll(t)){if(null==n.index)continue;const e=n[0];e&&i.push({start:n.index,end:n.index+e.length,value:e,color:r.color,page:r.page})}}if(0===i.length)return{segments:[{type:"text",value:e}],matchCount:0};i.sort((e,t)=>{if(e.start!==t.start)return e.start-t.start;const i=e.end-e.start;return t.end-t.start-i});const r=[];let n=-1;for(const e of i)e.start>=n&&(r.push(e),n=e.end);const o=[];let a=0;for(const{start:t,end:i,value:n,color:s,page:l}of r)t>a&&o.push({type:"text",value:e.slice(a,t)}),o.push({type:"match",value:n,color:s,page:l}),a=i;return a<e.length&&o.push({type:"text",value:e.slice(a)}),{segments:o,matchCount:r.length}}function OnboardFooter({node:e}){useLogRender("OnboardFooter");const t=(e=useNode(e)).sourceType??e.type??"OnboardFooter",{selectedTheme:i,previewMode:r,selectedKey:n,projectColors:o}=useBuilderParams(),a=o,s=useLocalize(),l=e=>e?s(e):"",c=e?.attributes,d=toAttributeRecord(c),p=l(c?.textLocalizationKey),g=useExtractTextStyle$1(e,!0),u=useExtractViewStyle$1(e),m=d.linkedWordSecondColor,h=d.linkedWordFirstColor,f=React.useMemo(()=>parseColor(m,{projectColors:a,theme:i}),[m,a,i]),y=React.useMemo(()=>parseColor(h,{projectColors:a,theme:i}),[h,a,i]),b=useMergedStyle(g,{cursor:"pointer"}),C=useMergedStyle(u,isNodeSelected({previewMode:!!r,current:n?{key:n}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),x=React.useId(),v=e.key??x;return jsxRuntime.jsx("div",{"attribute-name":t,"attribute-key":v,style:C,children:!!p&&(()=>{const e=l(c?.linkedWordFirstLocalizationKey),t=l(c?.linkedWordSecondLocalizationKey),{segments:i,matchCount:r}=buildSegments$1(p,[{value:e,color:f??void 0,page:c?.linkedWordFirstPage},{value:t,color:y??void 0,page:c?.linkedWordSecondPage}]);return jsxRuntime.jsxs("span",{style:{...b,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:[i.map((e,t)=>"text"===e.type?jsxRuntime.jsx(React.Fragment,{children:e.value},t):jsxRuntime.jsx("span",{style:{...e.color?{color:e.color}:{},cursor:"pointer"},onClick:()=>{e.page},children:e.value},t)),0===r&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" ",c?.linkedWordFirstLocalizationKey&&jsxRuntime.jsx("span",{style:{...f?{color:f}:{},cursor:"pointer"},onClick:()=>{},children:e})," ",c?.linkedWordSecondLocalizationKey&&jsxRuntime.jsx("span",{style:{...y?{color:y}:{},cursor:"pointer"},onClick:()=>{},children:t})]})]})})()})}var OnboardFooter$1=React.memo(OnboardFooter),lottie$2={exports:{}},lottie$1=lottie$2.exports,hasRequiredLottie;function requireLottie(){return hasRequiredLottie||(hasRequiredLottie=1,function(module,exports){var factory;"undefined"!=typeof document&&"undefined"!=typeof navigator&&(factory=function(){var svgNS="http://www.w3.org/2000/svg",locationHref="",_useWebWorker=!1,initialDefaultFrame=-999999,setWebWorker=function(e){_useWebWorker=!!e},getWebWorker=function(){return _useWebWorker},setLocationHref=function(e){locationHref=e},getLocationHref=function(){return locationHref};function createTag(e){return document.createElement(e)}function extendPrototype(e,t){var i,r,n=e.length;for(i=0;i<n;i+=1)for(var o in r=e[i].prototype)Object.prototype.hasOwnProperty.call(r,o)&&(t.prototype[o]=r[o])}function getDescriptor(e,t){return Object.getOwnPropertyDescriptor(e,t)}function createProxyFunction(e){function t(){}return t.prototype=e,t}var audioControllerFactory=function(){function e(e){this.audios=[],this.audioFactory=e,this._volume=1,this._isMuted=!1}return e.prototype={addAudio:function(e){this.audios.push(e)},pause:function(){var e,t=this.audios.length;for(e=0;e<t;e+=1)this.audios[e].pause()},resume:function(){var e,t=this.audios.length;for(e=0;e<t;e+=1)this.audios[e].resume()},setRate:function(e){var t,i=this.audios.length;for(t=0;t<i;t+=1)this.audios[t].setRate(e)},createAudio:function(e){return this.audioFactory?this.audioFactory(e):window.Howl?new window.Howl({src:[e]}):{isPlaying:!1,play:function(){this.isPlaying=!0},seek:function(){this.isPlaying=!1},playing:function(){},rate:function(){},setVolume:function(){}}},setAudioFactory:function(e){this.audioFactory=e},setVolume:function(e){this._volume=e,this._updateVolume()},mute:function(){this._isMuted=!0,this._updateVolume()},unmute:function(){this._isMuted=!1,this._updateVolume()},getVolume:function(){return this._volume},_updateVolume:function(){var e,t=this.audios.length;for(e=0;e<t;e+=1)this.audios[e].volume(this._volume*(this._isMuted?0:1))}},function(){return new e}}(),createTypedArray=function(){function e(e,t){var i,r=0,n=[];switch(e){case"int16":case"uint8c":i=1;break;default:i=1.1}for(r=0;r<t;r+=1)n.push(i);return n}return"function"==typeof Uint8ClampedArray&&"function"==typeof Float32Array?function(t,i){return"float32"===t?new Float32Array(i):"int16"===t?new Int16Array(i):"uint8c"===t?new Uint8ClampedArray(i):e(t,i)}:e}();function createSizedArray(e){return Array.apply(null,{length:e})}function _typeof$6(e){return _typeof$6="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$6(e)}var subframeEnabled=!0,expressionsPlugin=null,expressionsInterfaces=null,idPrefix$1="",isSafari=/^((?!chrome|android).)*safari/i.test(navigator.userAgent),bmPow=Math.pow,bmSqrt=Math.sqrt,bmFloor=Math.floor,bmMax=Math.max,bmMin=Math.min,BMMath={};!function(){var e,t=["abs","acos","acosh","asin","asinh","atan","atanh","atan2","ceil","cbrt","expm1","clz32","cos","cosh","exp","floor","fround","hypot","imul","log","log1p","log2","log10","max","min","pow","random","round","sign","sin","sinh","sqrt","tan","tanh","trunc","E","LN10","LN2","LOG10E","LOG2E","PI","SQRT1_2","SQRT2"],i=t.length;for(e=0;e<i;e+=1)BMMath[t[e]]=Math[t[e]]}(),BMMath.random=Math.random,BMMath.abs=function(e){if("object"===_typeof$6(e)&&e.length){var t,i=createSizedArray(e.length),r=e.length;for(t=0;t<r;t+=1)i[t]=Math.abs(e[t]);return i}return Math.abs(e)};var defaultCurveSegments=150,degToRads=Math.PI/180,roundCorner=.5519;function styleDiv(e){e.style.position="absolute",e.style.top=0,e.style.left=0,e.style.display="block",e.style.transformOrigin="0 0",e.style.webkitTransformOrigin="0 0",e.style.backfaceVisibility="visible",e.style.webkitBackfaceVisibility="visible",e.style.transformStyle="preserve-3d",e.style.webkitTransformStyle="preserve-3d",e.style.mozTransformStyle="preserve-3d"}function BMEnterFrameEvent(e,t,i,r){this.type=e,this.currentTime=t,this.totalTime=i,this.direction=r<0?-1:1}function BMCompleteEvent(e,t){this.type=e,this.direction=t<0?-1:1}function BMCompleteLoopEvent(e,t,i,r){this.type=e,this.currentLoop=i,this.totalLoops=t,this.direction=r<0?-1:1}function BMSegmentStartEvent(e,t,i){this.type=e,this.firstFrame=t,this.totalFrames=i}function BMDestroyEvent(e,t){this.type=e,this.target=t}function BMRenderFrameErrorEvent(e,t){this.type="renderFrameError",this.nativeError=e,this.currentTime=t}function BMConfigErrorEvent(e){this.type="configError",this.nativeError=e}var createElementID=(_count=0,function(){return idPrefix$1+"__lottie_element_"+(_count+=1)}),_count;function HSVtoRGB(e,t,i){var r,n,o,a,s,l,c,d;switch(l=i*(1-t),c=i*(1-(s=6*e-(a=Math.floor(6*e)))*t),d=i*(1-(1-s)*t),a%6){case 0:r=i,n=d,o=l;break;case 1:r=c,n=i,o=l;break;case 2:r=l,n=i,o=d;break;case 3:r=l,n=c,o=i;break;case 4:r=d,n=l,o=i;break;case 5:r=i,n=l,o=c}return[r,n,o]}function RGBtoHSV(e,t,i){var r,n=Math.max(e,t,i),o=Math.min(e,t,i),a=n-o,s=0===n?0:a/n,l=n/255;switch(n){case o:r=0;break;case e:r=t-i+a*(t<i?6:0),r/=6*a;break;case t:r=i-e+2*a,r/=6*a;break;case i:r=e-t+4*a,r/=6*a}return[r,s,l]}function addSaturationToRGB(e,t){var i=RGBtoHSV(255*e[0],255*e[1],255*e[2]);return i[1]+=t,i[1]>1?i[1]=1:i[1]<=0&&(i[1]=0),HSVtoRGB(i[0],i[1],i[2])}function addBrightnessToRGB(e,t){var i=RGBtoHSV(255*e[0],255*e[1],255*e[2]);return i[2]+=t,i[2]>1?i[2]=1:i[2]<0&&(i[2]=0),HSVtoRGB(i[0],i[1],i[2])}function addHueToRGB(e,t){var i=RGBtoHSV(255*e[0],255*e[1],255*e[2]);return i[0]+=t/360,i[0]>1?i[0]-=1:i[0]<0&&(i[0]+=1),HSVtoRGB(i[0],i[1],i[2])}var rgbToHex=function(){var e,t,i=[];for(e=0;e<256;e+=1)t=e.toString(16),i[e]=1===t.length?"0"+t:t;return function(e,t,r){return e<0&&(e=0),t<0&&(t=0),r<0&&(r=0),"#"+i[e]+i[t]+i[r]}}(),setSubframeEnabled=function(e){subframeEnabled=!!e},getSubframeEnabled=function(){return subframeEnabled},setExpressionsPlugin=function(e){expressionsPlugin=e},getExpressionsPlugin=function(){return expressionsPlugin},setExpressionInterfaces=function(e){expressionsInterfaces=e},getExpressionInterfaces=function(){return expressionsInterfaces},setDefaultCurveSegments=function(e){defaultCurveSegments=e},getDefaultCurveSegments=function(){return defaultCurveSegments},setIdPrefix=function(e){idPrefix$1=e};function createNS(e){return document.createElementNS(svgNS,e)}function _typeof$5(e){return _typeof$5="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$5(e)}var dataManager=function(){var e,t,i=1,r=[],n={onmessage:function(){},postMessage:function(t){e({data:t})}},o={postMessage:function(e){n.onmessage({data:e})}};function a(){t||(t=function(t){if(window.Worker&&window.Blob&&getWebWorker()){var i=new Blob(["var _workerSelf = self; self.onmessage = ",t.toString()],{type:"text/javascript"}),r=URL.createObjectURL(i);return new Worker(r)}return e=t,n}(function(e){if(o.dataManager||(o.dataManager=function(){function e(n,o){var a,s,l,c,d,g,u=n.length;for(s=0;s<u;s+=1)if("ks"in(a=n[s])&&!a.completed){if(a.completed=!0,a.hasMask){var m=a.masksProperties;for(c=m.length,l=0;l<c;l+=1)if(m[l].pt.k.i)r(m[l].pt.k);else for(g=m[l].pt.k.length,d=0;d<g;d+=1)m[l].pt.k[d].s&&r(m[l].pt.k[d].s[0]),m[l].pt.k[d].e&&r(m[l].pt.k[d].e[0])}0===a.ty?(a.layers=t(a.refId,o),e(a.layers,o)):4===a.ty?i(a.shapes):5===a.ty&&p(a)}}function t(e,t){var i=function(e,t){for(var i=0,r=t.length;i<r;){if(t[i].id===e)return t[i];i+=1}return null}(e,t);return i?i.layers.__used?JSON.parse(JSON.stringify(i.layers)):(i.layers.__used=!0,i.layers):null}function i(e){var t,n,o;for(t=e.length-1;t>=0;t-=1)if("sh"===e[t].ty)if(e[t].ks.k.i)r(e[t].ks.k);else for(o=e[t].ks.k.length,n=0;n<o;n+=1)e[t].ks.k[n].s&&r(e[t].ks.k[n].s[0]),e[t].ks.k[n].e&&r(e[t].ks.k[n].e[0]);else"gr"===e[t].ty&&i(e[t].it)}function r(e){var t,i=e.i.length;for(t=0;t<i;t+=1)e.i[t][0]+=e.v[t][0],e.i[t][1]+=e.v[t][1],e.o[t][0]+=e.v[t][0],e.o[t][1]+=e.v[t][1]}function n(e,t){var i=t?t.split("."):[100,100,100];return e[0]>i[0]||!(i[0]>e[0])&&(e[1]>i[1]||!(i[1]>e[1])&&(e[2]>i[2]||!(i[2]>e[2])&&null))}var o,a=function(){var e=[4,4,14];function t(e){var t=e.t.d;e.t.d={k:[{s:t,t:0}]}}function i(e){var i,r=e.length;for(i=0;i<r;i+=1)5===e[i].ty&&t(e[i])}return function(t){if(n(e,t.v)&&(i(t.layers),t.assets)){var r,o=t.assets.length;for(r=0;r<o;r+=1)t.assets[r].layers&&i(t.assets[r].layers)}}}(),s=(o=[4,7,99],function(e){if(e.chars&&!n(o,e.v)){var t,r=e.chars.length;for(t=0;t<r;t+=1){var a=e.chars[t];a.data&&a.data.shapes&&(i(a.data.shapes),a.data.ip=0,a.data.op=99999,a.data.st=0,a.data.sr=1,a.data.ks={p:{k:[0,0],a:0},s:{k:[100,100],a:0},a:{k:[0,0],a:0},r:{k:0,a:0},o:{k:100,a:0}},e.chars[t].t||(a.data.shapes.push({ty:"no"}),a.data.shapes[0].it.push({p:{k:[0,0],a:0},s:{k:[100,100],a:0},a:{k:[0,0],a:0},r:{k:0,a:0},o:{k:100,a:0},sk:{k:0,a:0},sa:{k:0,a:0},ty:"tr"})))}}}),l=function(){var e=[5,7,15];function t(e){var t=e.t.p;"number"==typeof t.a&&(t.a={a:0,k:t.a}),"number"==typeof t.p&&(t.p={a:0,k:t.p}),"number"==typeof t.r&&(t.r={a:0,k:t.r})}function i(e){var i,r=e.length;for(i=0;i<r;i+=1)5===e[i].ty&&t(e[i])}return function(t){if(n(e,t.v)&&(i(t.layers),t.assets)){var r,o=t.assets.length;for(r=0;r<o;r+=1)t.assets[r].layers&&i(t.assets[r].layers)}}}(),c=function(){var e=[4,1,9];function t(e){var i,r,n,o=e.length;for(i=0;i<o;i+=1)if("gr"===e[i].ty)t(e[i].it);else if("fl"===e[i].ty||"st"===e[i].ty)if(e[i].c.k&&e[i].c.k[0].i)for(n=e[i].c.k.length,r=0;r<n;r+=1)e[i].c.k[r].s&&(e[i].c.k[r].s[0]/=255,e[i].c.k[r].s[1]/=255,e[i].c.k[r].s[2]/=255,e[i].c.k[r].s[3]/=255),e[i].c.k[r].e&&(e[i].c.k[r].e[0]/=255,e[i].c.k[r].e[1]/=255,e[i].c.k[r].e[2]/=255,e[i].c.k[r].e[3]/=255);else e[i].c.k[0]/=255,e[i].c.k[1]/=255,e[i].c.k[2]/=255,e[i].c.k[3]/=255}function i(e){var i,r=e.length;for(i=0;i<r;i+=1)4===e[i].ty&&t(e[i].shapes)}return function(t){if(n(e,t.v)&&(i(t.layers),t.assets)){var r,o=t.assets.length;for(r=0;r<o;r+=1)t.assets[r].layers&&i(t.assets[r].layers)}}}(),d=function(){var e=[4,4,18];function t(e){var i,r,n;for(i=e.length-1;i>=0;i-=1)if("sh"===e[i].ty)if(e[i].ks.k.i)e[i].ks.k.c=e[i].closed;else for(n=e[i].ks.k.length,r=0;r<n;r+=1)e[i].ks.k[r].s&&(e[i].ks.k[r].s[0].c=e[i].closed),e[i].ks.k[r].e&&(e[i].ks.k[r].e[0].c=e[i].closed);else"gr"===e[i].ty&&t(e[i].it)}function i(e){var i,r,n,o,a,s,l=e.length;for(r=0;r<l;r+=1){if((i=e[r]).hasMask){var c=i.masksProperties;for(o=c.length,n=0;n<o;n+=1)if(c[n].pt.k.i)c[n].pt.k.c=c[n].cl;else for(s=c[n].pt.k.length,a=0;a<s;a+=1)c[n].pt.k[a].s&&(c[n].pt.k[a].s[0].c=c[n].cl),c[n].pt.k[a].e&&(c[n].pt.k[a].e[0].c=c[n].cl)}4===i.ty&&t(i.shapes)}}return function(t){if(n(e,t.v)&&(i(t.layers),t.assets)){var r,o=t.assets.length;for(r=0;r<o;r+=1)t.assets[r].layers&&i(t.assets[r].layers)}}}();function p(e){0===e.t.a.length&&e.t.p}var g={completeData:function(i){i.__complete||(c(i),a(i),s(i),l(i),d(i),e(i.layers,i.assets),function(i,r){if(i){var n=0,o=i.length;for(n=0;n<o;n+=1)1===i[n].t&&(i[n].data.layers=t(i[n].data.refId,r),e(i[n].data.layers,r))}}(i.chars,i.assets),i.__complete=!0)}};return g.checkColors=c,g.checkChars=s,g.checkPathProperties=l,g.checkShapes=d,g.completeLayers=e,g}()),o.assetLoader||(o.assetLoader=function(){function e(e){var t=e.getResponseHeader("content-type");return t&&"json"===e.responseType&&-1!==t.indexOf("json")||e.response&&"object"===_typeof$5(e.response)?e.response:e.response&&"string"==typeof e.response?JSON.parse(e.response):e.responseText?JSON.parse(e.responseText):null}return{load:function(t,i,r,n){var o,a=new XMLHttpRequest;try{a.responseType="json"}catch(e){}a.onreadystatechange=function(){if(4===a.readyState)if(200===a.status)o=e(a),r(o);else try{o=e(a),r(o)}catch(e){n&&n(e)}};try{a.open(["G","E","T"].join(""),t,!0)}catch(e){a.open(["G","E","T"].join(""),i+"/"+t,!0)}a.send()}}}()),"loadAnimation"===e.data.type)o.assetLoader.load(e.data.path,e.data.fullPath,function(t){o.dataManager.completeData(t),o.postMessage({id:e.data.id,payload:t,status:"success"})},function(){o.postMessage({id:e.data.id,status:"error"})});else if("complete"===e.data.type){var t=e.data.animation;o.dataManager.completeData(t),o.postMessage({id:e.data.id,payload:t,status:"success"})}else"loadData"===e.data.type&&o.assetLoader.load(e.data.path,e.data.fullPath,function(t){o.postMessage({id:e.data.id,payload:t,status:"success"})},function(){o.postMessage({id:e.data.id,status:"error"})})}),t.onmessage=function(e){var t=e.data,i=t.id,n=r[i];r[i]=null,"success"===t.status?n.onComplete(t.payload):n.onError&&n.onError()})}function s(e,t){var n="processId_"+(i+=1);return r[n]={onComplete:e,onError:t},n}return{loadAnimation:function(e,i,r){a();var n=s(i,r);t.postMessage({type:"loadAnimation",path:e,fullPath:window.location.origin+window.location.pathname,id:n})},loadData:function(e,i,r){a();var n=s(i,r);t.postMessage({type:"loadData",path:e,fullPath:window.location.origin+window.location.pathname,id:n})},completeAnimation:function(e,i,r){a();var n=s(i,r);t.postMessage({type:"complete",animation:e,id:n})}}}(),ImagePreloader=function(){var e=function(){var e=createTag("canvas");e.width=1,e.height=1;var t=e.getContext("2d");return t.fillStyle="rgba(0,0,0,0)",t.fillRect(0,0,1,1),e}();function t(){this.loadedAssets+=1,this.loadedAssets===this.totalImages&&this.loadedFootagesCount===this.totalFootages&&this.imagesLoadedCb&&this.imagesLoadedCb(null)}function i(){this.loadedFootagesCount+=1,this.loadedAssets===this.totalImages&&this.loadedFootagesCount===this.totalFootages&&this.imagesLoadedCb&&this.imagesLoadedCb(null)}function r(e,t,i){var r="";if(e.e)r=e.p;else if(t){var n=e.p;-1!==n.indexOf("images/")&&(n=n.split("/")[1]),r=t+n}else r=i,r+=e.u?e.u:"",r+=e.p;return r}function n(e){var t=0,i=setInterval(function(){(e.getBBox().width||t>500)&&(this._imageLoaded(),clearInterval(i)),t+=1}.bind(this),50)}function o(e){var t={assetData:e},i=r(e,this.assetsPath,this.path);return dataManager.loadData(i,function(e){t.img=e,this._footageLoaded()}.bind(this),function(){t.img={},this._footageLoaded()}.bind(this)),t}function a(){this._imageLoaded=t.bind(this),this._footageLoaded=i.bind(this),this.testImageLoaded=n.bind(this),this.createFootageData=o.bind(this),this.assetsPath="",this.path="",this.totalImages=0,this.totalFootages=0,this.loadedAssets=0,this.loadedFootagesCount=0,this.imagesLoadedCb=null,this.images=[]}return a.prototype={loadAssets:function(e,t){var i;this.imagesLoadedCb=t;var r=e.length;for(i=0;i<r;i+=1)e[i].layers||(e[i].t&&"seq"!==e[i].t?3===e[i].t&&(this.totalFootages+=1,this.images.push(this.createFootageData(e[i]))):(this.totalImages+=1,this.images.push(this._createImageData(e[i]))))},setAssetsPath:function(e){this.assetsPath=e||""},setPath:function(e){this.path=e||""},loadedImages:function(){return this.totalImages===this.loadedAssets},loadedFootages:function(){return this.totalFootages===this.loadedFootagesCount},destroy:function(){this.imagesLoadedCb=null,this.images.length=0},getAsset:function(e){for(var t=0,i=this.images.length;t<i;){if(this.images[t].assetData===e)return this.images[t].img;t+=1}return null},createImgData:function(t){var i=r(t,this.assetsPath,this.path),n=createTag("img");n.crossOrigin="anonymous",n.addEventListener("load",this._imageLoaded,!1),n.addEventListener("error",function(){o.img=e,this._imageLoaded()}.bind(this),!1),n.src=i;var o={img:n,assetData:t};return o},createImageData:function(t){var i=r(t,this.assetsPath,this.path),n=createNS("image");isSafari?this.testImageLoaded(n):n.addEventListener("load",this._imageLoaded,!1),n.addEventListener("error",function(){o.img=e,this._imageLoaded()}.bind(this),!1),n.setAttributeNS("http://www.w3.org/1999/xlink","href",i),this._elementHelper.append?this._elementHelper.append(n):this._elementHelper.appendChild(n);var o={img:n,assetData:t};return o},imageLoaded:t,footageLoaded:i,setCacheType:function(e,t){"svg"===e?(this._elementHelper=t,this._createImageData=this.createImageData.bind(this)):this._createImageData=this.createImgData.bind(this)}},a}();function BaseEvent(){}BaseEvent.prototype={triggerEvent:function(e,t){if(this._cbs[e])for(var i=this._cbs[e],r=0;r<i.length;r+=1)i[r](t)},addEventListener:function(e,t){return this._cbs[e]||(this._cbs[e]=[]),this._cbs[e].push(t),function(){this.removeEventListener(e,t)}.bind(this)},removeEventListener:function(e,t){if(t){if(this._cbs[e]){for(var i=0,r=this._cbs[e].length;i<r;)this._cbs[e][i]===t&&(this._cbs[e].splice(i,1),i-=1,r-=1),i+=1;this._cbs[e].length||(this._cbs[e]=null)}}else this._cbs[e]=null}};var markerParser=function(){function e(e){for(var t,i=e.split("\r\n"),r={},n=0,o=0;o<i.length;o+=1)2===(t=i[o].split(":")).length&&(r[t[0]]=t[1].trim(),n+=1);if(0===n)throw new Error;return r}return function(t){for(var i=[],r=0;r<t.length;r+=1){var n=t[r],o={time:n.tm,duration:n.dr};try{o.payload=JSON.parse(t[r].cm)}catch(i){try{o.payload=e(t[r].cm)}catch(e){o.payload={name:t[r].cm}}}i.push(o)}return i}}(),ProjectInterface=function(){function e(e){this.compositions.push(e)}return function(){function t(e){for(var t=0,i=this.compositions.length;t<i;){if(this.compositions[t].data&&this.compositions[t].data.nm===e)return this.compositions[t].prepareFrame&&this.compositions[t].data.xt&&this.compositions[t].prepareFrame(this.currentFrame),this.compositions[t].compInterface;t+=1}return null}return t.compositions=[],t.currentFrame=0,t.registerComposition=e,t}}(),renderers={},registerRenderer=function(e,t){renderers[e]=t};function getRenderer(e){return renderers[e]}function getRegisteredRenderer(){if(renderers.canvas)return"canvas";for(var e in renderers)if(renderers[e])return e;return""}function _typeof$4(e){return _typeof$4="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$4(e)}var AnimationItem=function(){this._cbs=[],this.name="",this.path="",this.isLoaded=!1,this.currentFrame=0,this.currentRawFrame=0,this.firstFrame=0,this.totalFrames=0,this.frameRate=0,this.frameMult=0,this.playSpeed=1,this.playDirection=1,this.playCount=0,this.animationData={},this.assets=[],this.isPaused=!0,this.autoplay=!1,this.loop=!0,this.renderer=null,this.animationID=createElementID(),this.assetsPath="",this.timeCompleted=0,this.segmentPos=0,this.isSubframeEnabled=getSubframeEnabled(),this.segments=[],this._idle=!0,this._completedLoop=!1,this.projectInterface=ProjectInterface(),this.imagePreloader=new ImagePreloader,this.audioController=audioControllerFactory(),this.markers=[],this.configAnimation=this.configAnimation.bind(this),this.onSetupError=this.onSetupError.bind(this),this.onSegmentComplete=this.onSegmentComplete.bind(this),this.drawnFrameEvent=new BMEnterFrameEvent("drawnFrame",0,0,0),this.expressionsPlugin=getExpressionsPlugin()};extendPrototype([BaseEvent],AnimationItem),AnimationItem.prototype.setParams=function(e){(e.wrapper||e.container)&&(this.wrapper=e.wrapper||e.container);var t="svg";e.animType?t=e.animType:e.renderer&&(t=e.renderer);var i=getRenderer(t);this.renderer=new i(this,e.rendererSettings),this.imagePreloader.setCacheType(t,this.renderer.globalData.defs),this.renderer.setProjectInterface(this.projectInterface),this.animType=t,""===e.loop||null===e.loop||void 0===e.loop||!0===e.loop?this.loop=!0:!1===e.loop?this.loop=!1:this.loop=parseInt(e.loop,10),this.autoplay=!("autoplay"in e)||e.autoplay,this.name=e.name?e.name:"",this.autoloadSegments=!Object.prototype.hasOwnProperty.call(e,"autoloadSegments")||e.autoloadSegments,this.assetsPath=e.assetsPath,this.initialSegment=e.initialSegment,e.audioFactory&&this.audioController.setAudioFactory(e.audioFactory),e.animationData?this.setupAnimation(e.animationData):e.path&&(-1!==e.path.lastIndexOf("\\")?this.path=e.path.substr(0,e.path.lastIndexOf("\\")+1):this.path=e.path.substr(0,e.path.lastIndexOf("/")+1),this.fileName=e.path.substr(e.path.lastIndexOf("/")+1),this.fileName=this.fileName.substr(0,this.fileName.lastIndexOf(".json")),dataManager.loadAnimation(e.path,this.configAnimation,this.onSetupError))},AnimationItem.prototype.onSetupError=function(){this.trigger("data_failed")},AnimationItem.prototype.setupAnimation=function(e){dataManager.completeAnimation(e,this.configAnimation)},AnimationItem.prototype.setData=function(e,t){t&&"object"!==_typeof$4(t)&&(t=JSON.parse(t));var i={wrapper:e,animationData:t},r=e.attributes;i.path=r.getNamedItem("data-animation-path")?r.getNamedItem("data-animation-path").value:r.getNamedItem("data-bm-path")?r.getNamedItem("data-bm-path").value:r.getNamedItem("bm-path")?r.getNamedItem("bm-path").value:"",i.animType=r.getNamedItem("data-anim-type")?r.getNamedItem("data-anim-type").value:r.getNamedItem("data-bm-type")?r.getNamedItem("data-bm-type").value:r.getNamedItem("bm-type")?r.getNamedItem("bm-type").value:r.getNamedItem("data-bm-renderer")?r.getNamedItem("data-bm-renderer").value:r.getNamedItem("bm-renderer")?r.getNamedItem("bm-renderer").value:getRegisteredRenderer()||"canvas";var n=r.getNamedItem("data-anim-loop")?r.getNamedItem("data-anim-loop").value:r.getNamedItem("data-bm-loop")?r.getNamedItem("data-bm-loop").value:r.getNamedItem("bm-loop")?r.getNamedItem("bm-loop").value:"";"false"===n?i.loop=!1:"true"===n?i.loop=!0:""!==n&&(i.loop=parseInt(n,10));var o=r.getNamedItem("data-anim-autoplay")?r.getNamedItem("data-anim-autoplay").value:r.getNamedItem("data-bm-autoplay")?r.getNamedItem("data-bm-autoplay").value:!r.getNamedItem("bm-autoplay")||r.getNamedItem("bm-autoplay").value;i.autoplay="false"!==o,i.name=r.getNamedItem("data-name")?r.getNamedItem("data-name").value:r.getNamedItem("data-bm-name")?r.getNamedItem("data-bm-name").value:r.getNamedItem("bm-name")?r.getNamedItem("bm-name").value:"","false"===(r.getNamedItem("data-anim-prerender")?r.getNamedItem("data-anim-prerender").value:r.getNamedItem("data-bm-prerender")?r.getNamedItem("data-bm-prerender").value:r.getNamedItem("bm-prerender")?r.getNamedItem("bm-prerender").value:"")&&(i.prerender=!1),i.path?this.setParams(i):this.trigger("destroy")},AnimationItem.prototype.includeLayers=function(e){e.op>this.animationData.op&&(this.animationData.op=e.op,this.totalFrames=Math.floor(e.op-this.animationData.ip));var t,i,r=this.animationData.layers,n=r.length,o=e.layers,a=o.length;for(i=0;i<a;i+=1)for(t=0;t<n;){if(r[t].id===o[i].id){r[t]=o[i];break}t+=1}if((e.chars||e.fonts)&&(this.renderer.globalData.fontManager.addChars(e.chars),this.renderer.globalData.fontManager.addFonts(e.fonts,this.renderer.globalData.defs)),e.assets)for(n=e.assets.length,t=0;t<n;t+=1)this.animationData.assets.push(e.assets[t]);this.animationData.__complete=!1,dataManager.completeAnimation(this.animationData,this.onSegmentComplete)},AnimationItem.prototype.onSegmentComplete=function(e){this.animationData=e;var t=getExpressionsPlugin();t&&t.initExpressions(this),this.loadNextSegment()},AnimationItem.prototype.loadNextSegment=function(){var e=this.animationData.segments;if(!e||0===e.length||!this.autoloadSegments)return this.trigger("data_ready"),void(this.timeCompleted=this.totalFrames);var t=e.shift();this.timeCompleted=t.time*this.frameRate;var i=this.path+this.fileName+"_"+this.segmentPos+".json";this.segmentPos+=1,dataManager.loadData(i,this.includeLayers.bind(this),function(){this.trigger("data_failed")}.bind(this))},AnimationItem.prototype.loadSegments=function(){this.animationData.segments||(this.timeCompleted=this.totalFrames),this.loadNextSegment()},AnimationItem.prototype.imagesLoaded=function(){this.trigger("loaded_images"),this.checkLoaded()},AnimationItem.prototype.preloadImages=function(){this.imagePreloader.setAssetsPath(this.assetsPath),this.imagePreloader.setPath(this.path),this.imagePreloader.loadAssets(this.animationData.assets,this.imagesLoaded.bind(this))},AnimationItem.prototype.configAnimation=function(e){if(this.renderer)try{this.animationData=e,this.initialSegment?(this.totalFrames=Math.floor(this.initialSegment[1]-this.initialSegment[0]),this.firstFrame=Math.round(this.initialSegment[0])):(this.totalFrames=Math.floor(this.animationData.op-this.animationData.ip),this.firstFrame=Math.round(this.animationData.ip)),this.renderer.configAnimation(e),e.assets||(e.assets=[]),this.assets=this.animationData.assets,this.frameRate=this.animationData.fr,this.frameMult=this.animationData.fr/1e3,this.renderer.searchExtraCompositions(e.assets),this.markers=markerParser(e.markers||[]),this.trigger("config_ready"),this.preloadImages(),this.loadSegments(),this.updaFrameModifier(),this.waitForFontsLoaded(),this.isPaused&&this.audioController.pause()}catch(e){this.triggerConfigError(e)}},AnimationItem.prototype.waitForFontsLoaded=function(){this.renderer&&(this.renderer.globalData.fontManager.isLoaded?this.checkLoaded():setTimeout(this.waitForFontsLoaded.bind(this),20))},AnimationItem.prototype.checkLoaded=function(){if(!this.isLoaded&&this.renderer.globalData.fontManager.isLoaded&&(this.imagePreloader.loadedImages()||"canvas"!==this.renderer.rendererType)&&this.imagePreloader.loadedFootages()){this.isLoaded=!0;var e=getExpressionsPlugin();e&&e.initExpressions(this),this.renderer.initItems(),setTimeout(function(){this.trigger("DOMLoaded")}.bind(this),0),this.gotoFrame(),this.autoplay&&this.play()}},AnimationItem.prototype.resize=function(e,t){var i="number"==typeof e?e:void 0,r="number"==typeof t?t:void 0;this.renderer.updateContainerSize(i,r)},AnimationItem.prototype.setSubframe=function(e){this.isSubframeEnabled=!!e},AnimationItem.prototype.gotoFrame=function(){this.currentFrame=this.isSubframeEnabled?this.currentRawFrame:~~this.currentRawFrame,this.timeCompleted!==this.totalFrames&&this.currentFrame>this.timeCompleted&&(this.currentFrame=this.timeCompleted),this.trigger("enterFrame"),this.renderFrame(),this.trigger("drawnFrame")},AnimationItem.prototype.renderFrame=function(){if(!1!==this.isLoaded&&this.renderer)try{this.expressionsPlugin&&this.expressionsPlugin.resetFrame(),this.renderer.renderFrame(this.currentFrame+this.firstFrame)}catch(e){this.triggerRenderFrameError(e)}},AnimationItem.prototype.play=function(e){e&&this.name!==e||!0===this.isPaused&&(this.isPaused=!1,this.trigger("_play"),this.audioController.resume(),this._idle&&(this._idle=!1,this.trigger("_active")))},AnimationItem.prototype.pause=function(e){e&&this.name!==e||!1===this.isPaused&&(this.isPaused=!0,this.trigger("_pause"),this._idle=!0,this.trigger("_idle"),this.audioController.pause())},AnimationItem.prototype.togglePause=function(e){e&&this.name!==e||(!0===this.isPaused?this.play():this.pause())},AnimationItem.prototype.stop=function(e){e&&this.name!==e||(this.pause(),this.playCount=0,this._completedLoop=!1,this.setCurrentRawFrameValue(0))},AnimationItem.prototype.getMarkerData=function(e){for(var t,i=0;i<this.markers.length;i+=1)if((t=this.markers[i]).payload&&t.payload.name===e)return t;return null},AnimationItem.prototype.goToAndStop=function(e,t,i){if(!i||this.name===i){var r=Number(e);if(isNaN(r)){var n=this.getMarkerData(e);n&&this.goToAndStop(n.time,!0)}else t?this.setCurrentRawFrameValue(e):this.setCurrentRawFrameValue(e*this.frameModifier);this.pause()}},AnimationItem.prototype.goToAndPlay=function(e,t,i){if(!i||this.name===i){var r=Number(e);if(isNaN(r)){var n=this.getMarkerData(e);n&&(n.duration?this.playSegments([n.time,n.time+n.duration],!0):this.goToAndStop(n.time,!0))}else this.goToAndStop(r,t,i);this.play()}},AnimationItem.prototype.advanceTime=function(e){if(!0!==this.isPaused&&!1!==this.isLoaded){var t=this.currentRawFrame+e*this.frameModifier,i=!1;t>=this.totalFrames-1&&this.frameModifier>0?this.loop&&this.playCount!==this.loop?t>=this.totalFrames?(this.playCount+=1,this.checkSegments(t%this.totalFrames)||(this.setCurrentRawFrameValue(t%this.totalFrames),this._completedLoop=!0,this.trigger("loopComplete"))):this.setCurrentRawFrameValue(t):this.checkSegments(t>this.totalFrames?t%this.totalFrames:0)||(i=!0,t=this.totalFrames-1):t<0?this.checkSegments(t%this.totalFrames)||(!this.loop||this.playCount--<=0&&!0!==this.loop?(i=!0,t=0):(this.setCurrentRawFrameValue(this.totalFrames+t%this.totalFrames),this._completedLoop?this.trigger("loopComplete"):this._completedLoop=!0)):this.setCurrentRawFrameValue(t),i&&(this.setCurrentRawFrameValue(t),this.pause(),this.trigger("complete"))}},AnimationItem.prototype.adjustSegment=function(e,t){this.playCount=0,e[1]<e[0]?(this.frameModifier>0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(-1)),this.totalFrames=e[0]-e[1],this.timeCompleted=this.totalFrames,this.firstFrame=e[1],this.setCurrentRawFrameValue(this.totalFrames-.001-t)):e[1]>e[0]&&(this.frameModifier<0&&(this.playSpeed<0?this.setSpeed(-this.playSpeed):this.setDirection(1)),this.totalFrames=e[1]-e[0],this.timeCompleted=this.totalFrames,this.firstFrame=e[0],this.setCurrentRawFrameValue(.001+t)),this.trigger("segmentStart")},AnimationItem.prototype.setSegment=function(e,t){var i=-1;this.isPaused&&(this.currentRawFrame+this.firstFrame<e?i=e:this.currentRawFrame+this.firstFrame>t&&(i=t-e)),this.firstFrame=e,this.totalFrames=t-e,this.timeCompleted=this.totalFrames,-1!==i&&this.goToAndStop(i,!0)},AnimationItem.prototype.playSegments=function(e,t){if(t&&(this.segments.length=0),"object"===_typeof$4(e[0])){var i,r=e.length;for(i=0;i<r;i+=1)this.segments.push(e[i])}else this.segments.push(e);this.segments.length&&t&&this.adjustSegment(this.segments.shift(),0),this.isPaused&&this.play()},AnimationItem.prototype.resetSegments=function(e){this.segments.length=0,this.segments.push([this.animationData.ip,this.animationData.op]),e&&this.checkSegments(0)},AnimationItem.prototype.checkSegments=function(e){return!!this.segments.length&&(this.adjustSegment(this.segments.shift(),e),!0)},AnimationItem.prototype.destroy=function(e){e&&this.name!==e||!this.renderer||(this.renderer.destroy(),this.imagePreloader.destroy(),this.trigger("destroy"),this._cbs=null,this.onEnterFrame=null,this.onLoopComplete=null,this.onComplete=null,this.onSegmentStart=null,this.onDestroy=null,this.renderer=null,this.expressionsPlugin=null,this.imagePreloader=null,this.projectInterface=null)},AnimationItem.prototype.setCurrentRawFrameValue=function(e){this.currentRawFrame=e,this.gotoFrame()},AnimationItem.prototype.setSpeed=function(e){this.playSpeed=e,this.updaFrameModifier()},AnimationItem.prototype.setDirection=function(e){this.playDirection=e<0?-1:1,this.updaFrameModifier()},AnimationItem.prototype.setLoop=function(e){this.loop=e},AnimationItem.prototype.setVolume=function(e,t){t&&this.name!==t||this.audioController.setVolume(e)},AnimationItem.prototype.getVolume=function(){return this.audioController.getVolume()},AnimationItem.prototype.mute=function(e){e&&this.name!==e||this.audioController.mute()},AnimationItem.prototype.unmute=function(e){e&&this.name!==e||this.audioController.unmute()},AnimationItem.prototype.updaFrameModifier=function(){this.frameModifier=this.frameMult*this.playSpeed*this.playDirection,this.audioController.setRate(this.playSpeed*this.playDirection)},AnimationItem.prototype.getPath=function(){return this.path},AnimationItem.prototype.getAssetsPath=function(e){var t="";if(e.e)t=e.p;else if(this.assetsPath){var i=e.p;-1!==i.indexOf("images/")&&(i=i.split("/")[1]),t=this.assetsPath+i}else t=this.path,t+=e.u?e.u:"",t+=e.p;return t},AnimationItem.prototype.getAssetData=function(e){for(var t=0,i=this.assets.length;t<i;){if(e===this.assets[t].id)return this.assets[t];t+=1}return null},AnimationItem.prototype.hide=function(){this.renderer.hide()},AnimationItem.prototype.show=function(){this.renderer.show()},AnimationItem.prototype.getDuration=function(e){return e?this.totalFrames:this.totalFrames/this.frameRate},AnimationItem.prototype.updateDocumentData=function(e,t,i){try{this.renderer.getElementByPath(e).updateDocumentData(t,i)}catch(e){}},AnimationItem.prototype.trigger=function(e){if(this._cbs&&this._cbs[e])switch(e){case"enterFrame":this.triggerEvent(e,new BMEnterFrameEvent(e,this.currentFrame,this.totalFrames,this.frameModifier));break;case"drawnFrame":this.drawnFrameEvent.currentTime=this.currentFrame,this.drawnFrameEvent.totalTime=this.totalFrames,this.drawnFrameEvent.direction=this.frameModifier,this.triggerEvent(e,this.drawnFrameEvent);break;case"loopComplete":this.triggerEvent(e,new BMCompleteLoopEvent(e,this.loop,this.playCount,this.frameMult));break;case"complete":this.triggerEvent(e,new BMCompleteEvent(e,this.frameMult));break;case"segmentStart":this.triggerEvent(e,new BMSegmentStartEvent(e,this.firstFrame,this.totalFrames));break;case"destroy":this.triggerEvent(e,new BMDestroyEvent(e,this));break;default:this.triggerEvent(e)}"enterFrame"===e&&this.onEnterFrame&&this.onEnterFrame.call(this,new BMEnterFrameEvent(e,this.currentFrame,this.totalFrames,this.frameMult)),"loopComplete"===e&&this.onLoopComplete&&this.onLoopComplete.call(this,new BMCompleteLoopEvent(e,this.loop,this.playCount,this.frameMult)),"complete"===e&&this.onComplete&&this.onComplete.call(this,new BMCompleteEvent(e,this.frameMult)),"segmentStart"===e&&this.onSegmentStart&&this.onSegmentStart.call(this,new BMSegmentStartEvent(e,this.firstFrame,this.totalFrames)),"destroy"===e&&this.onDestroy&&this.onDestroy.call(this,new BMDestroyEvent(e,this))},AnimationItem.prototype.triggerRenderFrameError=function(e){var t=new BMRenderFrameErrorEvent(e,this.currentFrame);this.triggerEvent("error",t),this.onError&&this.onError.call(this,t)},AnimationItem.prototype.triggerConfigError=function(e){var t=new BMConfigErrorEvent(e,this.currentFrame);this.triggerEvent("error",t),this.onError&&this.onError.call(this,t)};var animationManager=function(){var e={},t=[],i=0,r=0,n=0,o=!0,a=!1;function s(e){for(var i=0,n=e.target;i<r;)t[i].animation===n&&(t.splice(i,1),i-=1,r-=1,n.isPaused||d()),i+=1}function l(e,i){if(!e)return null;for(var n=0;n<r;){if(t[n].elem===e&&null!==t[n].elem)return t[n].animation;n+=1}var o=new AnimationItem;return p(o,e),o.setData(e,i),o}function c(){n+=1,m()}function d(){n-=1}function p(e,i){e.addEventListener("destroy",s),e.addEventListener("_active",c),e.addEventListener("_idle",d),t.push({elem:i,animation:e}),r+=1}function g(e){var s,l=e-i;for(s=0;s<r;s+=1)t[s].animation.advanceTime(l);i=e,n&&!a?window.requestAnimationFrame(g):o=!0}function u(e){i=e,window.requestAnimationFrame(g)}function m(){!a&&n&&o&&(window.requestAnimationFrame(u),o=!1)}return e.registerAnimation=l,e.loadAnimation=function(e){var t=new AnimationItem;return p(t,null),t.setParams(e),t},e.setSpeed=function(e,i){var n;for(n=0;n<r;n+=1)t[n].animation.setSpeed(e,i)},e.setDirection=function(e,i){var n;for(n=0;n<r;n+=1)t[n].animation.setDirection(e,i)},e.play=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.play(e)},e.pause=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.pause(e)},e.stop=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.stop(e)},e.togglePause=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.togglePause(e)},e.searchAnimations=function(e,t,i){var r,n=[].concat([].slice.call(document.getElementsByClassName("lottie")),[].slice.call(document.getElementsByClassName("bodymovin"))),o=n.length;for(r=0;r<o;r+=1)i&&n[r].setAttribute("data-bm-type",i),l(n[r],e);if(t&&0===o){i||(i="svg");var a=document.getElementsByTagName("body")[0];a.innerText="";var s=createTag("div");s.style.width="100%",s.style.height="100%",s.setAttribute("data-bm-type",i),a.appendChild(s),l(s,e)}},e.resize=function(){var e;for(e=0;e<r;e+=1)t[e].animation.resize()},e.goToAndStop=function(e,i,n){var o;for(o=0;o<r;o+=1)t[o].animation.goToAndStop(e,i,n)},e.destroy=function(e){var i;for(i=r-1;i>=0;i-=1)t[i].animation.destroy(e)},e.freeze=function(){a=!0},e.unfreeze=function(){a=!1,m()},e.setVolume=function(e,i){var n;for(n=0;n<r;n+=1)t[n].animation.setVolume(e,i)},e.mute=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.mute(e)},e.unmute=function(e){var i;for(i=0;i<r;i+=1)t[i].animation.unmute(e)},e.getRegisteredAnimations=function(){var e,i=t.length,r=[];for(e=0;e<i;e+=1)r.push(t[e].animation);return r},e}(),BezierFactory=function(){var e={getBezierEasing:function(e,i,r,n,o){var a=o||("bez_"+e+"_"+i+"_"+r+"_"+n).replace(/\./g,"p");if(t[a])return t[a];var s=new d([e,i,r,n]);return t[a]=s,s}},t={},i=11,r=1/(i-1),n="function"==typeof Float32Array;function o(e,t){return 1-3*t+3*e}function a(e,t){return 3*t-6*e}function s(e){return 3*e}function l(e,t,i){return((o(t,i)*e+a(t,i))*e+s(t))*e}function c(e,t,i){return 3*o(t,i)*e*e+2*a(t,i)*e+s(t)}function d(e){this._p=e,this._mSampleValues=n?new Float32Array(i):new Array(i),this._precomputed=!1,this.get=this.get.bind(this)}return d.prototype={get:function(e){var t=this._p[0],i=this._p[1],r=this._p[2],n=this._p[3];return this._precomputed||this._precompute(),t===i&&r===n?e:0===e?0:1===e?1:l(this._getTForX(e),i,n)},_precompute:function(){var e=this._p[0],t=this._p[1],i=this._p[2],r=this._p[3];this._precomputed=!0,e===t&&i===r||this._calcSampleValues()},_calcSampleValues:function(){for(var e=this._p[0],t=this._p[2],n=0;n<i;++n)this._mSampleValues[n]=l(n*r,e,t)},_getTForX:function(e){for(var t=this._p[0],n=this._p[2],o=this._mSampleValues,a=0,s=1,d=i-1;s!==d&&o[s]<=e;++s)a+=r;var p=a+(e-o[--s])/(o[s+1]-o[s])*r,g=c(p,t,n);return g>=.001?function(e,t,i,r){for(var n=0;n<4;++n){var o=c(t,i,r);if(0===o)return t;t-=(l(t,i,r)-e)/o}return t}(e,p,t,n):0===g?p:function(e,t,i,r,n){var o,a,s=0;do{(o=l(a=t+(i-t)/2,r,n)-e)>0?i=a:t=a}while(Math.abs(o)>1e-7&&++s<10);return a}(e,a,a+r,t,n)}},e}(),pooling={double:function(e){return e.concat(createSizedArray(e.length))}},poolFactory=function(e,t,i){var r=0,n=e,o=createSizedArray(n);return{newElement:function(){return r?o[r-=1]:t()},release:function(e){r===n&&(o=pooling.double(o),n*=2),i&&i(e),o[r]=e,r+=1}}},bezierLengthPool=poolFactory(8,function(){return{addedLength:0,percents:createTypedArray("float32",getDefaultCurveSegments()),lengths:createTypedArray("float32",getDefaultCurveSegments())}}),segmentsLengthPool=poolFactory(8,function(){return{lengths:[],totalLength:0}},function(e){var t,i=e.lengths.length;for(t=0;t<i;t+=1)bezierLengthPool.release(e.lengths[t]);e.lengths.length=0});function bezFunction(){var e=Math;function t(e,t,i,r,n,o){var a=e*r+t*n+i*o-n*r-o*e-i*t;return a>-.001&&a<.001}var i=function(e,t,i,r){var n,o,a,s,l,c,d=getDefaultCurveSegments(),p=0,g=[],u=[],m=bezierLengthPool.newElement();for(a=i.length,n=0;n<d;n+=1){for(l=n/(d-1),c=0,o=0;o<a;o+=1)s=bmPow(1-l,3)*e[o]+3*bmPow(1-l,2)*l*i[o]+3*(1-l)*bmPow(l,2)*r[o]+bmPow(l,3)*t[o],g[o]=s,null!==u[o]&&(c+=bmPow(g[o]-u[o],2)),u[o]=g[o];c&&(p+=c=bmSqrt(c)),m.percents[n]=l,m.lengths[n]=p}return m.addedLength=p,m};function r(e){this.segmentLength=0,this.points=new Array(e)}function n(e,t){this.partialLength=e,this.point=t}var o,a=(o={},function(e,i,a,s){var l=(e[0]+"_"+e[1]+"_"+i[0]+"_"+i[1]+"_"+a[0]+"_"+a[1]+"_"+s[0]+"_"+s[1]).replace(/\./g,"p");if(!o[l]){var c,d,p,g,u,m,h,f=getDefaultCurveSegments(),y=0,b=null;2===e.length&&(e[0]!==i[0]||e[1]!==i[1])&&t(e[0],e[1],i[0],i[1],e[0]+a[0],e[1]+a[1])&&t(e[0],e[1],i[0],i[1],i[0]+s[0],i[1]+s[1])&&(f=2);var C=new r(f);for(p=a.length,c=0;c<f;c+=1){for(h=createSizedArray(p),u=c/(f-1),m=0,d=0;d<p;d+=1)g=bmPow(1-u,3)*e[d]+3*bmPow(1-u,2)*u*(e[d]+a[d])+3*(1-u)*bmPow(u,2)*(i[d]+s[d])+bmPow(u,3)*i[d],h[d]=g,null!==b&&(m+=bmPow(h[d]-b[d],2));y+=m=bmSqrt(m),C.points[c]=new n(m,h),b=h}C.segmentLength=y,o[l]=C}return o[l]});function s(e,t){var i=t.percents,r=t.lengths,n=i.length,o=bmFloor((n-1)*e),a=e*t.addedLength,s=0;if(o===n-1||0===o||a===r[o])return i[o];for(var l=r[o]>a?-1:1,c=!0;c;)if(r[o]<=a&&r[o+1]>a?(s=(a-r[o])/(r[o+1]-r[o]),c=!1):o+=l,o<0||o>=n-1){if(o===n-1)return i[o];c=!1}return i[o]+(i[o+1]-i[o])*s}var l=createTypedArray("float32",8);return{getSegmentsLength:function(e){var t,r=segmentsLengthPool.newElement(),n=e.c,o=e.v,a=e.o,s=e.i,l=e._length,c=r.lengths,d=0;for(t=0;t<l-1;t+=1)c[t]=i(o[t],o[t+1],a[t],s[t+1]),d+=c[t].addedLength;return n&&l&&(c[t]=i(o[t],o[0],a[t],s[0]),d+=c[t].addedLength),r.totalLength=d,r},getNewSegment:function(t,i,r,n,o,a,c){o<0?o=0:o>1&&(o=1);var d,p=s(o,c),g=s(a=a>1?1:a,c),u=t.length,m=1-p,h=1-g,f=m*m*m,y=p*m*m*3,b=p*p*m*3,C=p*p*p,x=m*m*h,v=p*m*h+m*p*h+m*m*g,S=p*p*h+m*p*g+p*m*g,w=p*p*g,k=m*h*h,T=p*h*h+m*g*h+m*h*g,_=p*g*h+m*g*g+p*h*g,R=p*g*g,O=h*h*h,I=g*h*h+h*g*h+h*h*g,M=g*g*h+h*g*g+g*h*g,j=g*g*g;for(d=0;d<u;d+=1)l[4*d]=e.round(1e3*(f*t[d]+y*r[d]+b*n[d]+C*i[d]))/1e3,l[4*d+1]=e.round(1e3*(x*t[d]+v*r[d]+S*n[d]+w*i[d]))/1e3,l[4*d+2]=e.round(1e3*(k*t[d]+T*r[d]+_*n[d]+R*i[d]))/1e3,l[4*d+3]=e.round(1e3*(O*t[d]+I*r[d]+M*n[d]+j*i[d]))/1e3;return l},getPointInSegment:function(t,i,r,n,o,a){var l=s(o,a),c=1-l;return[e.round(1e3*(c*c*c*t[0]+(l*c*c+c*l*c+c*c*l)*r[0]+(l*l*c+c*l*l+l*c*l)*n[0]+l*l*l*i[0]))/1e3,e.round(1e3*(c*c*c*t[1]+(l*c*c+c*l*c+c*c*l)*r[1]+(l*l*c+c*l*l+l*c*l)*n[1]+l*l*l*i[1]))/1e3]},buildBezierData:a,pointOnLine2D:t,pointOnLine3D:function(i,r,n,o,a,s,l,c,d){if(0===n&&0===s&&0===d)return t(i,r,o,a,l,c);var p,g=e.sqrt(e.pow(o-i,2)+e.pow(a-r,2)+e.pow(s-n,2)),u=e.sqrt(e.pow(l-i,2)+e.pow(c-r,2)+e.pow(d-n,2)),m=e.sqrt(e.pow(l-o,2)+e.pow(c-a,2)+e.pow(d-s,2));return(p=g>u?g>m?g-u-m:m-u-g:m>u?m-u-g:u-g-m)>-1e-4&&p<1e-4}}}var bez=bezFunction(),initFrame=initialDefaultFrame,mathAbs=Math.abs;function interpolateValue(e,t){var i,r=this.offsetTime;"multidimensional"===this.propType&&(i=createTypedArray("float32",this.pv.length));for(var n,o,a,s,l,c,d,p,g,u=t.lastIndex,m=u,h=this.keyframes.length-1,f=!0;f;){if(n=this.keyframes[m],o=this.keyframes[m+1],m===h-1&&e>=o.t-r){n.h&&(n=o),u=0;break}if(o.t-r>e){u=m;break}m<h-1?m+=1:(u=0,f=!1)}a=this.keyframesMetadata[m]||{};var y,b=o.t-r,C=n.t-r;if(n.to){a.bezierData||(a.bezierData=bez.buildBezierData(n.s,o.s||n.e,n.to,n.ti));var x=a.bezierData;if(e>=b||e<C){var v=e>=b?x.points.length-1:0;for(l=x.points[v].point.length,s=0;s<l;s+=1)i[s]=x.points[v].point[s]}else{a.__fnct?g=a.__fnct:(g=BezierFactory.getBezierEasing(n.o.x,n.o.y,n.i.x,n.i.y,n.n).get,a.__fnct=g),c=g((e-C)/(b-C));var S,w=x.segmentLength*c,k=t.lastFrame<e&&t._lastKeyframeIndex===m?t._lastAddedLength:0;for(p=t.lastFrame<e&&t._lastKeyframeIndex===m?t._lastPoint:0,f=!0,d=x.points.length;f;){if(k+=x.points[p].partialLength,0===w||0===c||p===x.points.length-1){for(l=x.points[p].point.length,s=0;s<l;s+=1)i[s]=x.points[p].point[s];break}if(w>=k&&w<k+x.points[p+1].partialLength){for(S=(w-k)/x.points[p+1].partialLength,l=x.points[p].point.length,s=0;s<l;s+=1)i[s]=x.points[p].point[s]+(x.points[p+1].point[s]-x.points[p].point[s])*S;break}p<d-1?p+=1:f=!1}t._lastPoint=p,t._lastAddedLength=k-x.points[p].partialLength,t._lastKeyframeIndex=m}}else{var T,_,R,O,I;if(h=n.s.length,y=o.s||n.e,this.sh&&1!==n.h)e>=b?(i[0]=y[0],i[1]=y[1],i[2]=y[2]):e<=C?(i[0]=n.s[0],i[1]=n.s[1],i[2]=n.s[2]):quaternionToEuler(i,slerp(createQuaternion(n.s),createQuaternion(y),(e-C)/(b-C)));else for(m=0;m<h;m+=1)1!==n.h&&(e>=b?c=1:e<C?c=0:(n.o.x.constructor===Array?(a.__fnct||(a.__fnct=[]),a.__fnct[m]?g=a.__fnct[m]:(T=void 0===n.o.x[m]?n.o.x[0]:n.o.x[m],_=void 0===n.o.y[m]?n.o.y[0]:n.o.y[m],R=void 0===n.i.x[m]?n.i.x[0]:n.i.x[m],O=void 0===n.i.y[m]?n.i.y[0]:n.i.y[m],g=BezierFactory.getBezierEasing(T,_,R,O).get,a.__fnct[m]=g)):a.__fnct?g=a.__fnct:(T=n.o.x,_=n.o.y,R=n.i.x,O=n.i.y,g=BezierFactory.getBezierEasing(T,_,R,O).get,n.keyframeMetadata=g),c=g((e-C)/(b-C)))),y=o.s||n.e,I=1===n.h?n.s[m]:n.s[m]+(y[m]-n.s[m])*c,"multidimensional"===this.propType?i[m]=I:i=I}return t.lastIndex=u,i}function slerp(e,t,i){var r,n,o,a,s,l=[],c=e[0],d=e[1],p=e[2],g=e[3],u=t[0],m=t[1],h=t[2],f=t[3];return(n=c*u+d*m+p*h+g*f)<0&&(n=-n,u=-u,m=-m,h=-h,f=-f),1-n>1e-6?(r=Math.acos(n),o=Math.sin(r),a=Math.sin((1-i)*r)/o,s=Math.sin(i*r)/o):(a=1-i,s=i),l[0]=a*c+s*u,l[1]=a*d+s*m,l[2]=a*p+s*h,l[3]=a*g+s*f,l}function quaternionToEuler(e,t){var i=t[0],r=t[1],n=t[2],o=t[3],a=Math.atan2(2*r*o-2*i*n,1-2*r*r-2*n*n),s=Math.asin(2*i*r+2*n*o),l=Math.atan2(2*i*o-2*r*n,1-2*i*i-2*n*n);e[0]=a/degToRads,e[1]=s/degToRads,e[2]=l/degToRads}function createQuaternion(e){var t=e[0]*degToRads,i=e[1]*degToRads,r=e[2]*degToRads,n=Math.cos(t/2),o=Math.cos(i/2),a=Math.cos(r/2),s=Math.sin(t/2),l=Math.sin(i/2),c=Math.sin(r/2);return[s*l*a+n*o*c,s*o*a+n*l*c,n*l*a-s*o*c,n*o*a-s*l*c]}function getValueAtCurrentTime(){var e=this.comp.renderedFrame-this.offsetTime,t=this.keyframes[0].t-this.offsetTime,i=this.keyframes[this.keyframes.length-1].t-this.offsetTime;if(!(e===this._caching.lastFrame||this._caching.lastFrame!==initFrame&&(this._caching.lastFrame>=i&&e>=i||this._caching.lastFrame<t&&e<t))){this._caching.lastFrame>=e&&(this._caching._lastKeyframeIndex=-1,this._caching.lastIndex=0);var r=this.interpolateValue(e,this._caching);this.pv=r}return this._caching.lastFrame=e,this.pv}function setVValue(e){var t;if("unidimensional"===this.propType)t=e*this.mult,mathAbs(this.v-t)>1e-5&&(this.v=t,this._mdf=!0);else for(var i=0,r=this.v.length;i<r;)t=e[i]*this.mult,mathAbs(this.v[i]-t)>1e-5&&(this.v[i]=t,this._mdf=!0),i+=1}function processEffectsSequence(){if(this.elem.globalData.frameId!==this.frameId&&this.effectsSequence.length)if(this.lock)this.setVValue(this.pv);else{var e;this.lock=!0,this._mdf=this._isFirstFrame;var t=this.effectsSequence.length,i=this.kf?this.pv:this.data.k;for(e=0;e<t;e+=1)i=this.effectsSequence[e](i);this.setVValue(i),this._isFirstFrame=!1,this.lock=!1,this.frameId=this.elem.globalData.frameId}}function addEffect(e){this.effectsSequence.push(e),this.container.addDynamicProperty(this)}function ValueProperty(e,t,i,r){this.propType="unidimensional",this.mult=i||1,this.data=t,this.v=i?t.k*i:t.k,this.pv=t.k,this._mdf=!1,this.elem=e,this.container=r,this.comp=e.comp,this.k=!1,this.kf=!1,this.vel=0,this.effectsSequence=[],this._isFirstFrame=!0,this.getValue=processEffectsSequence,this.setVValue=setVValue,this.addEffect=addEffect}function MultiDimensionalProperty(e,t,i,r){var n;this.propType="multidimensional",this.mult=i||1,this.data=t,this._mdf=!1,this.elem=e,this.container=r,this.comp=e.comp,this.k=!1,this.kf=!1,this.frameId=-1;var o=t.k.length;for(this.v=createTypedArray("float32",o),this.pv=createTypedArray("float32",o),this.vel=createTypedArray("float32",o),n=0;n<o;n+=1)this.v[n]=t.k[n]*this.mult,this.pv[n]=t.k[n];this._isFirstFrame=!0,this.effectsSequence=[],this.getValue=processEffectsSequence,this.setVValue=setVValue,this.addEffect=addEffect}function KeyframedValueProperty(e,t,i,r){this.propType="unidimensional",this.keyframes=t.k,this.keyframesMetadata=[],this.offsetTime=e.data.st,this.frameId=-1,this._caching={lastFrame:initFrame,lastIndex:0,value:0,_lastKeyframeIndex:-1},this.k=!0,this.kf=!0,this.data=t,this.mult=i||1,this.elem=e,this.container=r,this.comp=e.comp,this.v=initFrame,this.pv=initFrame,this._isFirstFrame=!0,this.getValue=processEffectsSequence,this.setVValue=setVValue,this.interpolateValue=interpolateValue,this.effectsSequence=[getValueAtCurrentTime.bind(this)],this.addEffect=addEffect}function KeyframedMultidimensionalProperty(e,t,i,r){var n;this.propType="multidimensional";var o,a,s,l,c=t.k.length;for(n=0;n<c-1;n+=1)t.k[n].to&&t.k[n].s&&t.k[n+1]&&t.k[n+1].s&&(o=t.k[n].s,a=t.k[n+1].s,s=t.k[n].to,l=t.k[n].ti,(2===o.length&&(o[0]!==a[0]||o[1]!==a[1])&&bez.pointOnLine2D(o[0],o[1],a[0],a[1],o[0]+s[0],o[1]+s[1])&&bez.pointOnLine2D(o[0],o[1],a[0],a[1],a[0]+l[0],a[1]+l[1])||3===o.length&&(o[0]!==a[0]||o[1]!==a[1]||o[2]!==a[2])&&bez.pointOnLine3D(o[0],o[1],o[2],a[0],a[1],a[2],o[0]+s[0],o[1]+s[1],o[2]+s[2])&&bez.pointOnLine3D(o[0],o[1],o[2],a[0],a[1],a[2],a[0]+l[0],a[1]+l[1],a[2]+l[2]))&&(t.k[n].to=null,t.k[n].ti=null),o[0]===a[0]&&o[1]===a[1]&&0===s[0]&&0===s[1]&&0===l[0]&&0===l[1]&&(2===o.length||o[2]===a[2]&&0===s[2]&&0===l[2])&&(t.k[n].to=null,t.k[n].ti=null));this.effectsSequence=[getValueAtCurrentTime.bind(this)],this.data=t,this.keyframes=t.k,this.keyframesMetadata=[],this.offsetTime=e.data.st,this.k=!0,this.kf=!0,this._isFirstFrame=!0,this.mult=i||1,this.elem=e,this.container=r,this.comp=e.comp,this.getValue=processEffectsSequence,this.setVValue=setVValue,this.interpolateValue=interpolateValue,this.frameId=-1;var d=t.k[0].s.length;for(this.v=createTypedArray("float32",d),this.pv=createTypedArray("float32",d),n=0;n<d;n+=1)this.v[n]=initFrame,this.pv[n]=initFrame;this._caching={lastFrame:initFrame,lastIndex:0,value:createTypedArray("float32",d)},this.addEffect=addEffect}var PropertyFactory=(ob={getProp:function(e,t,i,r,n){var o;if(t.sid&&(t=e.globalData.slotManager.getProp(t)),t.k.length)if("number"==typeof t.k[0])o=new MultiDimensionalProperty(e,t,r,n);else switch(i){case 0:o=new KeyframedValueProperty(e,t,r,n);break;case 1:o=new KeyframedMultidimensionalProperty(e,t,r,n)}else o=new ValueProperty(e,t,r,n);return o.effectsSequence.length&&n.addDynamicProperty(o),o}},ob),ob;function DynamicPropertyContainer(){}DynamicPropertyContainer.prototype={addDynamicProperty:function(e){-1===this.dynamicProperties.indexOf(e)&&(this.dynamicProperties.push(e),this.container.addDynamicProperty(this),this._isAnimated=!0)},iterateDynamicProperties:function(){var e;this._mdf=!1;var t=this.dynamicProperties.length;for(e=0;e<t;e+=1)this.dynamicProperties[e].getValue(),this.dynamicProperties[e]._mdf&&(this._mdf=!0)},initDynamicPropertyContainer:function(e){this.container=e,this.dynamicProperties=[],this._mdf=!1,this._isAnimated=!1}};var pointPool=poolFactory(8,function(){return createTypedArray("float32",2)});function ShapePath(){this.c=!1,this._length=0,this._maxLength=8,this.v=createSizedArray(this._maxLength),this.o=createSizedArray(this._maxLength),this.i=createSizedArray(this._maxLength)}ShapePath.prototype.setPathData=function(e,t){this.c=e,this.setLength(t);for(var i=0;i<t;)this.v[i]=pointPool.newElement(),this.o[i]=pointPool.newElement(),this.i[i]=pointPool.newElement(),i+=1},ShapePath.prototype.setLength=function(e){for(;this._maxLength<e;)this.doubleArrayLength();this._length=e},ShapePath.prototype.doubleArrayLength=function(){this.v=this.v.concat(createSizedArray(this._maxLength)),this.i=this.i.concat(createSizedArray(this._maxLength)),this.o=this.o.concat(createSizedArray(this._maxLength)),this._maxLength*=2},ShapePath.prototype.setXYAt=function(e,t,i,r,n){var o;switch(this._length=Math.max(this._length,r+1),this._length>=this._maxLength&&this.doubleArrayLength(),i){case"v":o=this.v;break;case"i":o=this.i;break;case"o":o=this.o;break;default:o=[]}(!o[r]||o[r]&&!n)&&(o[r]=pointPool.newElement()),o[r][0]=e,o[r][1]=t},ShapePath.prototype.setTripleAt=function(e,t,i,r,n,o,a,s){this.setXYAt(e,t,"v",a,s),this.setXYAt(i,r,"o",a,s),this.setXYAt(n,o,"i",a,s)},ShapePath.prototype.reverse=function(){var e=new ShapePath;e.setPathData(this.c,this._length);var t=this.v,i=this.o,r=this.i,n=0;this.c&&(e.setTripleAt(t[0][0],t[0][1],r[0][0],r[0][1],i[0][0],i[0][1],0,!1),n=1);var o,a=this._length-1,s=this._length;for(o=n;o<s;o+=1)e.setTripleAt(t[a][0],t[a][1],r[a][0],r[a][1],i[a][0],i[a][1],o,!1),a-=1;return e},ShapePath.prototype.length=function(){return this._length};var shapePool=(factory=poolFactory(4,function(){return new ShapePath},function(e){var t,i=e._length;for(t=0;t<i;t+=1)pointPool.release(e.v[t]),pointPool.release(e.i[t]),pointPool.release(e.o[t]),e.v[t]=null,e.i[t]=null,e.o[t]=null;e._length=0,e.c=!1}),factory.clone=function(e){var t,i=factory.newElement(),r=void 0===e._length?e.v.length:e._length;for(i.setLength(r),i.c=e.c,t=0;t<r;t+=1)i.setTripleAt(e.v[t][0],e.v[t][1],e.o[t][0],e.o[t][1],e.i[t][0],e.i[t][1],t);return i},factory),factory;function ShapeCollection(){this._length=0,this._maxLength=4,this.shapes=createSizedArray(this._maxLength)}ShapeCollection.prototype.addShape=function(e){this._length===this._maxLength&&(this.shapes=this.shapes.concat(createSizedArray(this._maxLength)),this._maxLength*=2),this.shapes[this._length]=e,this._length+=1},ShapeCollection.prototype.releaseShapes=function(){var e;for(e=0;e<this._length;e+=1)shapePool.release(this.shapes[e]);this._length=0};var shapeCollectionPool=function(){var e={newShapeCollection:function(){return t?r[t-=1]:new ShapeCollection},release:function(e){var n,o=e._length;for(n=0;n<o;n+=1)shapePool.release(e.shapes[n]);e._length=0,t===i&&(r=pooling.double(r),i*=2),r[t]=e,t+=1}},t=0,i=4,r=createSizedArray(i);return e}(),ShapePropertyFactory=function(){var e=-999999;function t(e,t,i){var r,n,o,a,s,l,c,d,p,g=i.lastIndex,u=this.keyframes;if(e<u[0].t-this.offsetTime)r=u[0].s[0],o=!0,g=0;else if(e>=u[u.length-1].t-this.offsetTime)r=u[u.length-1].s?u[u.length-1].s[0]:u[u.length-2].e[0],o=!0;else{for(var m,h,f,y=g,b=u.length-1,C=!0;C&&(m=u[y],!((h=u[y+1]).t-this.offsetTime>e));)y<b-1?y+=1:C=!1;if(f=this.keyframesMetadata[y]||{},g=y,!(o=1===m.h)){if(e>=h.t-this.offsetTime)d=1;else if(e<m.t-this.offsetTime)d=0;else{var x;f.__fnct?x=f.__fnct:(x=BezierFactory.getBezierEasing(m.o.x,m.o.y,m.i.x,m.i.y).get,f.__fnct=x),d=x((e-(m.t-this.offsetTime))/(h.t-this.offsetTime-(m.t-this.offsetTime)))}n=h.s?h.s[0]:m.e[0]}r=m.s[0]}for(l=t._length,c=r.i[0].length,i.lastIndex=g,a=0;a<l;a+=1)for(s=0;s<c;s+=1)p=o?r.i[a][s]:r.i[a][s]+(n.i[a][s]-r.i[a][s])*d,t.i[a][s]=p,p=o?r.o[a][s]:r.o[a][s]+(n.o[a][s]-r.o[a][s])*d,t.o[a][s]=p,p=o?r.v[a][s]:r.v[a][s]+(n.v[a][s]-r.v[a][s])*d,t.v[a][s]=p}function i(){var t=this.comp.renderedFrame-this.offsetTime,i=this.keyframes[0].t-this.offsetTime,r=this.keyframes[this.keyframes.length-1].t-this.offsetTime,n=this._caching.lastFrame;return n!==e&&(n<i&&t<i||n>r&&t>r)||(this._caching.lastIndex=n<t?this._caching.lastIndex:0,this.interpolateShape(t,this.pv,this._caching)),this._caching.lastFrame=t,this.pv}function r(){this.paths=this.localShapeCollection}function n(e){(function(e,t){if(e._length!==t._length||e.c!==t.c)return!1;var i,r=e._length;for(i=0;i<r;i+=1)if(e.v[i][0]!==t.v[i][0]||e.v[i][1]!==t.v[i][1]||e.o[i][0]!==t.o[i][0]||e.o[i][1]!==t.o[i][1]||e.i[i][0]!==t.i[i][0]||e.i[i][1]!==t.i[i][1])return!1;return!0})(this.v,e)||(this.v=shapePool.clone(e),this.localShapeCollection.releaseShapes(),this.localShapeCollection.addShape(this.v),this._mdf=!0,this.paths=this.localShapeCollection)}function o(){if(this.elem.globalData.frameId!==this.frameId)if(this.effectsSequence.length)if(this.lock)this.setVValue(this.pv);else{var e,t;this.lock=!0,this._mdf=!1,e=this.kf?this.pv:this.data.ks?this.data.ks.k:this.data.pt.k;var i=this.effectsSequence.length;for(t=0;t<i;t+=1)e=this.effectsSequence[t](e);this.setVValue(e),this.lock=!1,this.frameId=this.elem.globalData.frameId}else this._mdf=!1}function a(e,t,i){this.propType="shape",this.comp=e.comp,this.container=e,this.elem=e,this.data=t,this.k=!1,this.kf=!1,this._mdf=!1;var n=3===i?t.pt.k:t.ks.k;this.v=shapePool.clone(n),this.pv=shapePool.clone(this.v),this.localShapeCollection=shapeCollectionPool.newShapeCollection(),this.paths=this.localShapeCollection,this.paths.addShape(this.v),this.reset=r,this.effectsSequence=[]}function s(e){this.effectsSequence.push(e),this.container.addDynamicProperty(this)}function l(t,n,o){this.propType="shape",this.comp=t.comp,this.elem=t,this.container=t,this.offsetTime=t.data.st,this.keyframes=3===o?n.pt.k:n.ks.k,this.keyframesMetadata=[],this.k=!0,this.kf=!0;var a=this.keyframes[0].s[0].i.length;this.v=shapePool.newElement(),this.v.setPathData(this.keyframes[0].s[0].c,a),this.pv=shapePool.clone(this.v),this.localShapeCollection=shapeCollectionPool.newShapeCollection(),this.paths=this.localShapeCollection,this.paths.addShape(this.v),this.lastFrame=e,this.reset=r,this._caching={lastFrame:e,lastIndex:0},this.effectsSequence=[i.bind(this)]}a.prototype.interpolateShape=t,a.prototype.getValue=o,a.prototype.setVValue=n,a.prototype.addEffect=s,l.prototype.getValue=o,l.prototype.interpolateShape=t,l.prototype.setVValue=n,l.prototype.addEffect=s;var c=function(){var e=roundCorner;function t(e,t){this.v=shapePool.newElement(),this.v.setPathData(!0,4),this.localShapeCollection=shapeCollectionPool.newShapeCollection(),this.paths=this.localShapeCollection,this.localShapeCollection.addShape(this.v),this.d=t.d,this.elem=e,this.comp=e.comp,this.frameId=-1,this.initDynamicPropertyContainer(e),this.p=PropertyFactory.getProp(e,t.p,1,0,this),this.s=PropertyFactory.getProp(e,t.s,1,0,this),this.dynamicProperties.length?this.k=!0:(this.k=!1,this.convertEllToPath())}return t.prototype={reset:r,getValue:function(){this.elem.globalData.frameId!==this.frameId&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertEllToPath())},convertEllToPath:function(){var t=this.p.v[0],i=this.p.v[1],r=this.s.v[0]/2,n=this.s.v[1]/2,o=3!==this.d,a=this.v;a.v[0][0]=t,a.v[0][1]=i-n,a.v[1][0]=o?t+r:t-r,a.v[1][1]=i,a.v[2][0]=t,a.v[2][1]=i+n,a.v[3][0]=o?t-r:t+r,a.v[3][1]=i,a.i[0][0]=o?t-r*e:t+r*e,a.i[0][1]=i-n,a.i[1][0]=o?t+r:t-r,a.i[1][1]=i-n*e,a.i[2][0]=o?t+r*e:t-r*e,a.i[2][1]=i+n,a.i[3][0]=o?t-r:t+r,a.i[3][1]=i+n*e,a.o[0][0]=o?t+r*e:t-r*e,a.o[0][1]=i-n,a.o[1][0]=o?t+r:t-r,a.o[1][1]=i+n*e,a.o[2][0]=o?t-r*e:t+r*e,a.o[2][1]=i+n,a.o[3][0]=o?t-r:t+r,a.o[3][1]=i-n*e}},extendPrototype([DynamicPropertyContainer],t),t}(),d=function(){function e(e,t){this.v=shapePool.newElement(),this.v.setPathData(!0,0),this.elem=e,this.comp=e.comp,this.data=t,this.frameId=-1,this.d=t.d,this.initDynamicPropertyContainer(e),1===t.sy?(this.ir=PropertyFactory.getProp(e,t.ir,0,0,this),this.is=PropertyFactory.getProp(e,t.is,0,.01,this),this.convertToPath=this.convertStarToPath):this.convertToPath=this.convertPolygonToPath,this.pt=PropertyFactory.getProp(e,t.pt,0,0,this),this.p=PropertyFactory.getProp(e,t.p,1,0,this),this.r=PropertyFactory.getProp(e,t.r,0,degToRads,this),this.or=PropertyFactory.getProp(e,t.or,0,0,this),this.os=PropertyFactory.getProp(e,t.os,0,.01,this),this.localShapeCollection=shapeCollectionPool.newShapeCollection(),this.localShapeCollection.addShape(this.v),this.paths=this.localShapeCollection,this.dynamicProperties.length?this.k=!0:(this.k=!1,this.convertToPath())}return e.prototype={reset:r,getValue:function(){this.elem.globalData.frameId!==this.frameId&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertToPath())},convertStarToPath:function(){var e,t,i,r,n=2*Math.floor(this.pt.v),o=2*Math.PI/n,a=!0,s=this.or.v,l=this.ir.v,c=this.os.v,d=this.is.v,p=2*Math.PI*s/(2*n),g=2*Math.PI*l/(2*n),u=-Math.PI/2;u+=this.r.v;var m=3===this.data.d?-1:1;for(this.v._length=0,e=0;e<n;e+=1){i=a?c:d,r=a?p:g;var h=(t=a?s:l)*Math.cos(u),f=t*Math.sin(u),y=0===h&&0===f?0:f/Math.sqrt(h*h+f*f),b=0===h&&0===f?0:-h/Math.sqrt(h*h+f*f);h+=+this.p.v[0],f+=+this.p.v[1],this.v.setTripleAt(h,f,h-y*r*i*m,f-b*r*i*m,h+y*r*i*m,f+b*r*i*m,e,!0),a=!a,u+=o*m}},convertPolygonToPath:function(){var e,t=Math.floor(this.pt.v),i=2*Math.PI/t,r=this.or.v,n=this.os.v,o=2*Math.PI*r/(4*t),a=.5*-Math.PI,s=3===this.data.d?-1:1;for(a+=this.r.v,this.v._length=0,e=0;e<t;e+=1){var l=r*Math.cos(a),c=r*Math.sin(a),d=0===l&&0===c?0:c/Math.sqrt(l*l+c*c),p=0===l&&0===c?0:-l/Math.sqrt(l*l+c*c);l+=+this.p.v[0],c+=+this.p.v[1],this.v.setTripleAt(l,c,l-d*o*n*s,c-p*o*n*s,l+d*o*n*s,c+p*o*n*s,e,!0),a+=i*s}this.paths.length=0,this.paths[0]=this.v}},extendPrototype([DynamicPropertyContainer],e),e}(),p=function(){function e(e,t){this.v=shapePool.newElement(),this.v.c=!0,this.localShapeCollection=shapeCollectionPool.newShapeCollection(),this.localShapeCollection.addShape(this.v),this.paths=this.localShapeCollection,this.elem=e,this.comp=e.comp,this.frameId=-1,this.d=t.d,this.initDynamicPropertyContainer(e),this.p=PropertyFactory.getProp(e,t.p,1,0,this),this.s=PropertyFactory.getProp(e,t.s,1,0,this),this.r=PropertyFactory.getProp(e,t.r,0,0,this),this.dynamicProperties.length?this.k=!0:(this.k=!1,this.convertRectToPath())}return e.prototype={convertRectToPath:function(){var e=this.p.v[0],t=this.p.v[1],i=this.s.v[0]/2,r=this.s.v[1]/2,n=bmMin(i,r,this.r.v),o=n*(1-roundCorner);this.v._length=0,2===this.d||1===this.d?(this.v.setTripleAt(e+i,t-r+n,e+i,t-r+n,e+i,t-r+o,0,!0),this.v.setTripleAt(e+i,t+r-n,e+i,t+r-o,e+i,t+r-n,1,!0),0!==n?(this.v.setTripleAt(e+i-n,t+r,e+i-n,t+r,e+i-o,t+r,2,!0),this.v.setTripleAt(e-i+n,t+r,e-i+o,t+r,e-i+n,t+r,3,!0),this.v.setTripleAt(e-i,t+r-n,e-i,t+r-n,e-i,t+r-o,4,!0),this.v.setTripleAt(e-i,t-r+n,e-i,t-r+o,e-i,t-r+n,5,!0),this.v.setTripleAt(e-i+n,t-r,e-i+n,t-r,e-i+o,t-r,6,!0),this.v.setTripleAt(e+i-n,t-r,e+i-o,t-r,e+i-n,t-r,7,!0)):(this.v.setTripleAt(e-i,t+r,e-i+o,t+r,e-i,t+r,2),this.v.setTripleAt(e-i,t-r,e-i,t-r+o,e-i,t-r,3))):(this.v.setTripleAt(e+i,t-r+n,e+i,t-r+o,e+i,t-r+n,0,!0),0!==n?(this.v.setTripleAt(e+i-n,t-r,e+i-n,t-r,e+i-o,t-r,1,!0),this.v.setTripleAt(e-i+n,t-r,e-i+o,t-r,e-i+n,t-r,2,!0),this.v.setTripleAt(e-i,t-r+n,e-i,t-r+n,e-i,t-r+o,3,!0),this.v.setTripleAt(e-i,t+r-n,e-i,t+r-o,e-i,t+r-n,4,!0),this.v.setTripleAt(e-i+n,t+r,e-i+n,t+r,e-i+o,t+r,5,!0),this.v.setTripleAt(e+i-n,t+r,e+i-o,t+r,e+i-n,t+r,6,!0),this.v.setTripleAt(e+i,t+r-n,e+i,t+r-n,e+i,t+r-o,7,!0)):(this.v.setTripleAt(e-i,t-r,e-i+o,t-r,e-i,t-r,1,!0),this.v.setTripleAt(e-i,t+r,e-i,t+r-o,e-i,t+r,2,!0),this.v.setTripleAt(e+i,t+r,e+i-o,t+r,e+i,t+r,3,!0)))},getValue:function(){this.elem.globalData.frameId!==this.frameId&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf&&this.convertRectToPath())},reset:r},extendPrototype([DynamicPropertyContainer],e),e}(),g={getShapeProp:function(e,t,i){var r;return 3===i||4===i?r=(3===i?t.pt:t.ks).k.length?new l(e,t,i):new a(e,t,i):5===i?r=new p(e,t):6===i?r=new c(e,t):7===i&&(r=new d(e,t)),r.k&&e.addDynamicProperty(r),r},getConstructorFunction:function(){return a},getKeyframedConstructorFunction:function(){return l}};return g}(),Matrix=function(){var e=Math.cos,t=Math.sin,i=Math.tan,r=Math.round;function n(){return this.props[0]=1,this.props[1]=0,this.props[2]=0,this.props[3]=0,this.props[4]=0,this.props[5]=1,this.props[6]=0,this.props[7]=0,this.props[8]=0,this.props[9]=0,this.props[10]=1,this.props[11]=0,this.props[12]=0,this.props[13]=0,this.props[14]=0,this.props[15]=1,this}function o(i){if(0===i)return this;var r=e(i),n=t(i);return this._t(r,-n,0,0,n,r,0,0,0,0,1,0,0,0,0,1)}function a(i){if(0===i)return this;var r=e(i),n=t(i);return this._t(1,0,0,0,0,r,-n,0,0,n,r,0,0,0,0,1)}function s(i){if(0===i)return this;var r=e(i),n=t(i);return this._t(r,0,n,0,0,1,0,0,-n,0,r,0,0,0,0,1)}function l(i){if(0===i)return this;var r=e(i),n=t(i);return this._t(r,-n,0,0,n,r,0,0,0,0,1,0,0,0,0,1)}function c(e,t){return this._t(1,t,e,1,0,0)}function d(e,t){return this.shear(i(e),i(t))}function p(r,n){var o=e(n),a=t(n);return this._t(o,a,0,0,-a,o,0,0,0,0,1,0,0,0,0,1)._t(1,0,0,0,i(r),1,0,0,0,0,1,0,0,0,0,1)._t(o,-a,0,0,a,o,0,0,0,0,1,0,0,0,0,1)}function g(e,t,i){return i||0===i||(i=1),1===e&&1===t&&1===i?this:this._t(e,0,0,0,0,t,0,0,0,0,i,0,0,0,0,1)}function u(e,t,i,r,n,o,a,s,l,c,d,p,g,u,m,h){return this.props[0]=e,this.props[1]=t,this.props[2]=i,this.props[3]=r,this.props[4]=n,this.props[5]=o,this.props[6]=a,this.props[7]=s,this.props[8]=l,this.props[9]=c,this.props[10]=d,this.props[11]=p,this.props[12]=g,this.props[13]=u,this.props[14]=m,this.props[15]=h,this}function m(e,t,i){return i=i||0,0!==e||0!==t||0!==i?this._t(1,0,0,0,0,1,0,0,0,0,1,0,e,t,i,1):this}function h(e,t,i,r,n,o,a,s,l,c,d,p,g,u,m,h){var f=this.props;if(1===e&&0===t&&0===i&&0===r&&0===n&&1===o&&0===a&&0===s&&0===l&&0===c&&1===d&&0===p)return f[12]=f[12]*e+f[15]*g,f[13]=f[13]*o+f[15]*u,f[14]=f[14]*d+f[15]*m,f[15]*=h,this._identityCalculated=!1,this;var y=f[0],b=f[1],C=f[2],x=f[3],v=f[4],S=f[5],w=f[6],k=f[7],T=f[8],_=f[9],R=f[10],O=f[11],I=f[12],M=f[13],j=f[14],P=f[15];return f[0]=y*e+b*n+C*l+x*g,f[1]=y*t+b*o+C*c+x*u,f[2]=y*i+b*a+C*d+x*m,f[3]=y*r+b*s+C*p+x*h,f[4]=v*e+S*n+w*l+k*g,f[5]=v*t+S*o+w*c+k*u,f[6]=v*i+S*a+w*d+k*m,f[7]=v*r+S*s+w*p+k*h,f[8]=T*e+_*n+R*l+O*g,f[9]=T*t+_*o+R*c+O*u,f[10]=T*i+_*a+R*d+O*m,f[11]=T*r+_*s+R*p+O*h,f[12]=I*e+M*n+j*l+P*g,f[13]=I*t+M*o+j*c+P*u,f[14]=I*i+M*a+j*d+P*m,f[15]=I*r+M*s+j*p+P*h,this._identityCalculated=!1,this}function f(e){var t=e.props;return this.transform(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])}function y(){return this._identityCalculated||(this._identity=!(1!==this.props[0]||0!==this.props[1]||0!==this.props[2]||0!==this.props[3]||0!==this.props[4]||1!==this.props[5]||0!==this.props[6]||0!==this.props[7]||0!==this.props[8]||0!==this.props[9]||1!==this.props[10]||0!==this.props[11]||0!==this.props[12]||0!==this.props[13]||0!==this.props[14]||1!==this.props[15]),this._identityCalculated=!0),this._identity}function b(e){for(var t=0;t<16;){if(e.props[t]!==this.props[t])return!1;t+=1}return!0}function C(e){var t;for(t=0;t<16;t+=1)e.props[t]=this.props[t];return e}function x(e){var t;for(t=0;t<16;t+=1)this.props[t]=e[t]}function v(e,t,i){return{x:e*this.props[0]+t*this.props[4]+i*this.props[8]+this.props[12],y:e*this.props[1]+t*this.props[5]+i*this.props[9]+this.props[13],z:e*this.props[2]+t*this.props[6]+i*this.props[10]+this.props[14]}}function S(e,t,i){return e*this.props[0]+t*this.props[4]+i*this.props[8]+this.props[12]}function w(e,t,i){return e*this.props[1]+t*this.props[5]+i*this.props[9]+this.props[13]}function k(e,t,i){return e*this.props[2]+t*this.props[6]+i*this.props[10]+this.props[14]}function T(){var e=this.props[0]*this.props[5]-this.props[1]*this.props[4],t=this.props[5]/e,i=-this.props[1]/e,r=-this.props[4]/e,n=this.props[0]/e,o=(this.props[4]*this.props[13]-this.props[5]*this.props[12])/e,a=-(this.props[0]*this.props[13]-this.props[1]*this.props[12])/e,s=new Matrix;return s.props[0]=t,s.props[1]=i,s.props[4]=r,s.props[5]=n,s.props[12]=o,s.props[13]=a,s}function _(e){return this.getInverseMatrix().applyToPointArray(e[0],e[1],e[2]||0)}function R(e){var t,i=e.length,r=[];for(t=0;t<i;t+=1)r[t]=_(e[t]);return r}function O(e,t,i){var r=createTypedArray("float32",6);if(this.isIdentity())r[0]=e[0],r[1]=e[1],r[2]=t[0],r[3]=t[1],r[4]=i[0],r[5]=i[1];else{var n=this.props[0],o=this.props[1],a=this.props[4],s=this.props[5],l=this.props[12],c=this.props[13];r[0]=e[0]*n+e[1]*a+l,r[1]=e[0]*o+e[1]*s+c,r[2]=t[0]*n+t[1]*a+l,r[3]=t[0]*o+t[1]*s+c,r[4]=i[0]*n+i[1]*a+l,r[5]=i[0]*o+i[1]*s+c}return r}function I(e,t,i){return this.isIdentity()?[e,t,i]:[e*this.props[0]+t*this.props[4]+i*this.props[8]+this.props[12],e*this.props[1]+t*this.props[5]+i*this.props[9]+this.props[13],e*this.props[2]+t*this.props[6]+i*this.props[10]+this.props[14]]}function M(e,t){if(this.isIdentity())return e+","+t;var i=this.props;return Math.round(100*(e*i[0]+t*i[4]+i[12]))/100+","+Math.round(100*(e*i[1]+t*i[5]+i[13]))/100}function j(){for(var e=0,t=this.props,i="matrix3d(";e<16;)i+=r(1e4*t[e])/1e4,i+=15===e?")":",",e+=1;return i}function P(e){return e<1e-6&&e>0||e>-1e-6&&e<0?r(1e4*e)/1e4:e}function E(){var e=this.props;return"matrix("+P(e[0])+","+P(e[1])+","+P(e[4])+","+P(e[5])+","+P(e[12])+","+P(e[13])+")"}return function(){this.reset=n,this.rotate=o,this.rotateX=a,this.rotateY=s,this.rotateZ=l,this.skew=d,this.skewFromAxis=p,this.shear=c,this.scale=g,this.setTransform=u,this.translate=m,this.transform=h,this.multiply=f,this.applyToPoint=v,this.applyToX=S,this.applyToY=w,this.applyToZ=k,this.applyToPointArray=I,this.applyToTriplePoints=O,this.applyToPointStringified=M,this.toCSS=j,this.to2dCSS=E,this.clone=C,this.cloneFromProps=x,this.equals=b,this.inversePoints=R,this.inversePoint=_,this.getInverseMatrix=T,this._t=this.transform,this.isIdentity=y,this._identity=!0,this._identityCalculated=!1,this.props=createTypedArray("float32",16),this.reset()}}();function _typeof$3(e){return _typeof$3="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$3(e)}var lottie={};function setLocation(e){setLocationHref(e)}function searchAnimations(){animationManager.searchAnimations()}function setSubframeRendering(e){setSubframeEnabled(e)}function setPrefix(e){setIdPrefix(e)}function loadAnimation(e){return animationManager.loadAnimation(e)}function setQuality(e){if("string"==typeof e)switch(e){case"high":setDefaultCurveSegments(200);break;default:case"medium":setDefaultCurveSegments(50);break;case"low":setDefaultCurveSegments(10)}else!isNaN(e)&&e>1&&setDefaultCurveSegments(e)}function inBrowser(){return"undefined"!=typeof navigator}function installPlugin(e,t){"expressions"===e&&setExpressionsPlugin(t)}function getFactory(e){switch(e){case"propertyFactory":return PropertyFactory;case"shapePropertyFactory":return ShapePropertyFactory;case"matrix":return Matrix;default:return null}}function checkReady(){"complete"===document.readyState&&(clearInterval(readyStateCheckInterval),searchAnimations())}function getQueryVariable(e){for(var t=queryString.split("&"),i=0;i<t.length;i+=1){var r=t[i].split("=");if(decodeURIComponent(r[0])==e)return decodeURIComponent(r[1])}return null}lottie.play=animationManager.play,lottie.pause=animationManager.pause,lottie.setLocationHref=setLocation,lottie.togglePause=animationManager.togglePause,lottie.setSpeed=animationManager.setSpeed,lottie.setDirection=animationManager.setDirection,lottie.stop=animationManager.stop,lottie.searchAnimations=searchAnimations,lottie.registerAnimation=animationManager.registerAnimation,lottie.loadAnimation=loadAnimation,lottie.setSubframeRendering=setSubframeRendering,lottie.resize=animationManager.resize,lottie.goToAndStop=animationManager.goToAndStop,lottie.destroy=animationManager.destroy,lottie.setQuality=setQuality,lottie.inBrowser=inBrowser,lottie.installPlugin=installPlugin,lottie.freeze=animationManager.freeze,lottie.unfreeze=animationManager.unfreeze,lottie.setVolume=animationManager.setVolume,lottie.mute=animationManager.mute,lottie.unmute=animationManager.unmute,lottie.getRegisteredAnimations=animationManager.getRegisteredAnimations,lottie.useWebWorker=setWebWorker,lottie.setIDPrefix=setPrefix,lottie.__getFactory=getFactory,lottie.version="5.13.0";var queryString="",scripts=document.getElementsByTagName("script"),index=scripts.length-1,myScript=scripts[index]||{src:""};queryString=myScript.src?myScript.src.replace(/^[^\?]+\??/,""):"",getQueryVariable("renderer");var readyStateCheckInterval=setInterval(checkReady,100);try{"object"!==_typeof$3(exports)&&(window.bodymovin=lottie)}catch(e){}var ShapeModifiers=function(){var e={},t={};return e.registerModifier=function(e,i){t[e]||(t[e]=i)},e.getModifier=function(e,i,r){return new t[e](i,r)},e}();function ShapeModifier(){}function TrimModifier(){}function PuckerAndBloatModifier(){}ShapeModifier.prototype.initModifierProperties=function(){},ShapeModifier.prototype.addShapeToModifier=function(){},ShapeModifier.prototype.addShape=function(e){if(!this.closed){e.sh.container.addDynamicProperty(e.sh);var t={shape:e.sh,data:e,localShapeCollection:shapeCollectionPool.newShapeCollection()};this.shapes.push(t),this.addShapeToModifier(t),this._isAnimated&&e.setAsAnimated()}},ShapeModifier.prototype.init=function(e,t){this.shapes=[],this.elem=e,this.initDynamicPropertyContainer(e),this.initModifierProperties(e,t),this.frameId=initialDefaultFrame,this.closed=!1,this.k=!1,this.dynamicProperties.length?this.k=!0:this.getValue(!0)},ShapeModifier.prototype.processKeys=function(){this.elem.globalData.frameId!==this.frameId&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties())},extendPrototype([DynamicPropertyContainer],ShapeModifier),extendPrototype([ShapeModifier],TrimModifier),TrimModifier.prototype.initModifierProperties=function(e,t){this.s=PropertyFactory.getProp(e,t.s,0,.01,this),this.e=PropertyFactory.getProp(e,t.e,0,.01,this),this.o=PropertyFactory.getProp(e,t.o,0,0,this),this.sValue=0,this.eValue=0,this.getValue=this.processKeys,this.m=t.m,this._isAnimated=!!this.s.effectsSequence.length||!!this.e.effectsSequence.length||!!this.o.effectsSequence.length},TrimModifier.prototype.addShapeToModifier=function(e){e.pathsData=[]},TrimModifier.prototype.calculateShapeEdges=function(e,t,i,r,n){var o=[];t<=1?o.push({s:e,e:t}):e>=1?o.push({s:e-1,e:t-1}):(o.push({s:e,e:1}),o.push({s:0,e:t-1}));var a,s,l=[],c=o.length;for(a=0;a<c;a+=1){var d,p;(s=o[a]).e*n<r||s.s*n>r+i||(d=s.s*n<=r?0:(s.s*n-r)/i,p=s.e*n>=r+i?1:(s.e*n-r)/i,l.push([d,p]))}return l.length||l.push([0,0]),l},TrimModifier.prototype.releasePathsData=function(e){var t,i=e.length;for(t=0;t<i;t+=1)segmentsLengthPool.release(e[t]);return e.length=0,e},TrimModifier.prototype.processShapes=function(e){var t,i,r,n;if(this._mdf||e){var o=this.o.v%360/360;if(o<0&&(o+=1),(t=this.s.v>1?1+o:this.s.v<0?0+o:this.s.v+o)>(i=this.e.v>1?1+o:this.e.v<0?0+o:this.e.v+o)){var a=t;t=i,i=a}t=1e-4*Math.round(1e4*t),i=1e-4*Math.round(1e4*i),this.sValue=t,this.eValue=i}else t=this.sValue,i=this.eValue;var s,l,c,d,p,g=this.shapes.length,u=0;if(i===t)for(n=0;n<g;n+=1)this.shapes[n].localShapeCollection.releaseShapes(),this.shapes[n].shape._mdf=!0,this.shapes[n].shape.paths=this.shapes[n].localShapeCollection,this._mdf&&(this.shapes[n].pathsData.length=0);else if(1===i&&0===t||0===i&&1===t){if(this._mdf)for(n=0;n<g;n+=1)this.shapes[n].pathsData.length=0,this.shapes[n].shape._mdf=!0}else{var m,h,f=[];for(n=0;n<g;n+=1)if((m=this.shapes[n]).shape._mdf||this._mdf||e||2===this.m){if(l=(r=m.shape.paths)._length,p=0,!m.shape._mdf&&m.pathsData.length)p=m.totalShapeLength;else{for(c=this.releasePathsData(m.pathsData),s=0;s<l;s+=1)d=bez.getSegmentsLength(r.shapes[s]),c.push(d),p+=d.totalLength;m.totalShapeLength=p,m.pathsData=c}u+=p,m.shape._mdf=!0}else m.shape.paths=m.localShapeCollection;var y,b=t,C=i,x=0;for(n=g-1;n>=0;n-=1)if((m=this.shapes[n]).shape._mdf){for((h=m.localShapeCollection).releaseShapes(),2===this.m&&g>1?(y=this.calculateShapeEdges(t,i,m.totalShapeLength,x,u),x+=m.totalShapeLength):y=[[b,C]],l=y.length,s=0;s<l;s+=1){b=y[s][0],C=y[s][1],f.length=0,C<=1?f.push({s:m.totalShapeLength*b,e:m.totalShapeLength*C}):b>=1?f.push({s:m.totalShapeLength*(b-1),e:m.totalShapeLength*(C-1)}):(f.push({s:m.totalShapeLength*b,e:m.totalShapeLength}),f.push({s:0,e:m.totalShapeLength*(C-1)}));var v=this.addShapes(m,f[0]);if(f[0].s!==f[0].e){if(f.length>1)if(m.shape.paths.shapes[m.shape.paths._length-1].c){var S=v.pop();this.addPaths(v,h),v=this.addShapes(m,f[1],S)}else this.addPaths(v,h),v=this.addShapes(m,f[1]);this.addPaths(v,h)}}m.shape.paths=h}}},TrimModifier.prototype.addPaths=function(e,t){var i,r=e.length;for(i=0;i<r;i+=1)t.addShape(e[i])},TrimModifier.prototype.addSegment=function(e,t,i,r,n,o,a){n.setXYAt(t[0],t[1],"o",o),n.setXYAt(i[0],i[1],"i",o+1),a&&n.setXYAt(e[0],e[1],"v",o),n.setXYAt(r[0],r[1],"v",o+1)},TrimModifier.prototype.addSegmentFromArray=function(e,t,i,r){t.setXYAt(e[1],e[5],"o",i),t.setXYAt(e[2],e[6],"i",i+1),r&&t.setXYAt(e[0],e[4],"v",i),t.setXYAt(e[3],e[7],"v",i+1)},TrimModifier.prototype.addShapes=function(e,t,i){var r,n,o,a,s,l,c,d,p=e.pathsData,g=e.shape.paths.shapes,u=e.shape.paths._length,m=0,h=[],f=!0;for(i?(s=i._length,d=i._length):(i=shapePool.newElement(),s=0,d=0),h.push(i),r=0;r<u;r+=1){for(l=p[r].lengths,i.c=g[r].c,o=g[r].c?l.length:l.length+1,n=1;n<o;n+=1)if(m+(a=l[n-1]).addedLength<t.s)m+=a.addedLength,i.c=!1;else{if(m>t.e){i.c=!1;break}t.s<=m&&t.e>=m+a.addedLength?(this.addSegment(g[r].v[n-1],g[r].o[n-1],g[r].i[n],g[r].v[n],i,s,f),f=!1):(c=bez.getNewSegment(g[r].v[n-1],g[r].v[n],g[r].o[n-1],g[r].i[n],(t.s-m)/a.addedLength,(t.e-m)/a.addedLength,l[n-1]),this.addSegmentFromArray(c,i,s,f),f=!1,i.c=!1),m+=a.addedLength,s+=1}if(g[r].c&&l.length){if(a=l[n-1],m<=t.e){var y=l[n-1].addedLength;t.s<=m&&t.e>=m+y?(this.addSegment(g[r].v[n-1],g[r].o[n-1],g[r].i[0],g[r].v[0],i,s,f),f=!1):(c=bez.getNewSegment(g[r].v[n-1],g[r].v[0],g[r].o[n-1],g[r].i[0],(t.s-m)/y,(t.e-m)/y,l[n-1]),this.addSegmentFromArray(c,i,s,f),f=!1,i.c=!1)}else i.c=!1;m+=a.addedLength,s+=1}if(i._length&&(i.setXYAt(i.v[d][0],i.v[d][1],"i",d),i.setXYAt(i.v[i._length-1][0],i.v[i._length-1][1],"o",i._length-1)),m>t.e)break;r<u-1&&(i=shapePool.newElement(),f=!0,h.push(i),s=0)}return h},extendPrototype([ShapeModifier],PuckerAndBloatModifier),PuckerAndBloatModifier.prototype.initModifierProperties=function(e,t){this.getValue=this.processKeys,this.amount=PropertyFactory.getProp(e,t.a,0,null,this),this._isAnimated=!!this.amount.effectsSequence.length},PuckerAndBloatModifier.prototype.processPath=function(e,t){var i=t/100,r=[0,0],n=e._length,o=0;for(o=0;o<n;o+=1)r[0]+=e.v[o][0],r[1]+=e.v[o][1];r[0]/=n,r[1]/=n;var a,s,l,c,d,p,g=shapePool.newElement();for(g.c=e.c,o=0;o<n;o+=1)a=e.v[o][0]+(r[0]-e.v[o][0])*i,s=e.v[o][1]+(r[1]-e.v[o][1])*i,l=e.o[o][0]+(r[0]-e.o[o][0])*-i,c=e.o[o][1]+(r[1]-e.o[o][1])*-i,d=e.i[o][0]+(r[0]-e.i[o][0])*-i,p=e.i[o][1]+(r[1]-e.i[o][1])*-i,g.setTripleAt(a,s,l,c,d,p,o);return g},PuckerAndBloatModifier.prototype.processShapes=function(e){var t,i,r,n,o,a,s=this.shapes.length,l=this.amount.v;if(0!==l)for(i=0;i<s;i+=1){if(a=(o=this.shapes[i]).localShapeCollection,o.shape._mdf||this._mdf||e)for(a.releaseShapes(),o.shape._mdf=!0,t=o.shape.paths.shapes,n=o.shape.paths._length,r=0;r<n;r+=1)a.addShape(this.processPath(t[r],l));o.shape.paths=o.localShapeCollection}this.dynamicProperties.length||(this._mdf=!1)};var TransformPropertyFactory=function(){var e=[0,0];function t(e,t,i){if(this.elem=e,this.frameId=-1,this.propType="transform",this.data=t,this.v=new Matrix,this.pre=new Matrix,this.appliedTransformations=0,this.initDynamicPropertyContainer(i||e),t.p&&t.p.s?(this.px=PropertyFactory.getProp(e,t.p.x,0,0,this),this.py=PropertyFactory.getProp(e,t.p.y,0,0,this),t.p.z&&(this.pz=PropertyFactory.getProp(e,t.p.z,0,0,this))):this.p=PropertyFactory.getProp(e,t.p||{k:[0,0,0]},1,0,this),t.rx){if(this.rx=PropertyFactory.getProp(e,t.rx,0,degToRads,this),this.ry=PropertyFactory.getProp(e,t.ry,0,degToRads,this),this.rz=PropertyFactory.getProp(e,t.rz,0,degToRads,this),t.or.k[0].ti){var r,n=t.or.k.length;for(r=0;r<n;r+=1)t.or.k[r].to=null,t.or.k[r].ti=null}this.or=PropertyFactory.getProp(e,t.or,1,degToRads,this),this.or.sh=!0}else this.r=PropertyFactory.getProp(e,t.r||{k:0},0,degToRads,this);t.sk&&(this.sk=PropertyFactory.getProp(e,t.sk,0,degToRads,this),this.sa=PropertyFactory.getProp(e,t.sa,0,degToRads,this)),this.a=PropertyFactory.getProp(e,t.a||{k:[0,0,0]},1,0,this),this.s=PropertyFactory.getProp(e,t.s||{k:[100,100,100]},1,.01,this),t.o?this.o=PropertyFactory.getProp(e,t.o,0,.01,e):this.o={_mdf:!1,v:1},this._isDirty=!0,this.dynamicProperties.length||this.getValue(!0)}return t.prototype={applyToMatrix:function(e){var t=this._mdf;this.iterateDynamicProperties(),this._mdf=this._mdf||t,this.a&&e.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.s&&e.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.sk&&e.skewFromAxis(-this.sk.v,this.sa.v),this.r?e.rotate(-this.r.v):e.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.data.p.s?this.data.p.z?e.translate(this.px.v,this.py.v,-this.pz.v):e.translate(this.px.v,this.py.v,0):e.translate(this.p.v[0],this.p.v[1],-this.p.v[2])},getValue:function(t){if(this.elem.globalData.frameId!==this.frameId){if(this._isDirty&&(this.precalculateMatrix(),this._isDirty=!1),this.iterateDynamicProperties(),this._mdf||t){var i;if(this.v.cloneFromProps(this.pre.props),this.appliedTransformations<1&&this.v.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations<2&&this.v.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.sk&&this.appliedTransformations<3&&this.v.skewFromAxis(-this.sk.v,this.sa.v),this.r&&this.appliedTransformations<4?this.v.rotate(-this.r.v):!this.r&&this.appliedTransformations<4&&this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.autoOriented){var r,n;if(i=this.elem.globalData.frameRate,this.p&&this.p.keyframes&&this.p.getValueAtTime)this.p._caching.lastFrame+this.p.offsetTime<=this.p.keyframes[0].t?(r=this.p.getValueAtTime((this.p.keyframes[0].t+.01)/i,0),n=this.p.getValueAtTime(this.p.keyframes[0].t/i,0)):this.p._caching.lastFrame+this.p.offsetTime>=this.p.keyframes[this.p.keyframes.length-1].t?(r=this.p.getValueAtTime(this.p.keyframes[this.p.keyframes.length-1].t/i,0),n=this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length-1].t-.05)/i,0)):(r=this.p.pv,n=this.p.getValueAtTime((this.p._caching.lastFrame+this.p.offsetTime-.01)/i,this.p.offsetTime));else if(this.px&&this.px.keyframes&&this.py.keyframes&&this.px.getValueAtTime&&this.py.getValueAtTime){r=[],n=[];var o=this.px,a=this.py;o._caching.lastFrame+o.offsetTime<=o.keyframes[0].t?(r[0]=o.getValueAtTime((o.keyframes[0].t+.01)/i,0),r[1]=a.getValueAtTime((a.keyframes[0].t+.01)/i,0),n[0]=o.getValueAtTime(o.keyframes[0].t/i,0),n[1]=a.getValueAtTime(a.keyframes[0].t/i,0)):o._caching.lastFrame+o.offsetTime>=o.keyframes[o.keyframes.length-1].t?(r[0]=o.getValueAtTime(o.keyframes[o.keyframes.length-1].t/i,0),r[1]=a.getValueAtTime(a.keyframes[a.keyframes.length-1].t/i,0),n[0]=o.getValueAtTime((o.keyframes[o.keyframes.length-1].t-.01)/i,0),n[1]=a.getValueAtTime((a.keyframes[a.keyframes.length-1].t-.01)/i,0)):(r=[o.pv,a.pv],n[0]=o.getValueAtTime((o._caching.lastFrame+o.offsetTime-.01)/i,o.offsetTime),n[1]=a.getValueAtTime((a._caching.lastFrame+a.offsetTime-.01)/i,a.offsetTime))}else r=n=e;this.v.rotate(-Math.atan2(r[1]-n[1],r[0]-n[0]))}this.data.p&&this.data.p.s?this.data.p.z?this.v.translate(this.px.v,this.py.v,-this.pz.v):this.v.translate(this.px.v,this.py.v,0):this.v.translate(this.p.v[0],this.p.v[1],-this.p.v[2])}this.frameId=this.elem.globalData.frameId}},precalculateMatrix:function(){if(this.appliedTransformations=0,this.pre.reset(),!this.a.effectsSequence.length&&(this.pre.translate(-this.a.v[0],-this.a.v[1],this.a.v[2]),this.appliedTransformations=1,!this.s.effectsSequence.length)){if(this.pre.scale(this.s.v[0],this.s.v[1],this.s.v[2]),this.appliedTransformations=2,this.sk){if(this.sk.effectsSequence.length||this.sa.effectsSequence.length)return;this.pre.skewFromAxis(-this.sk.v,this.sa.v),this.appliedTransformations=3}this.r?this.r.effectsSequence.length||(this.pre.rotate(-this.r.v),this.appliedTransformations=4):this.rz.effectsSequence.length||this.ry.effectsSequence.length||this.rx.effectsSequence.length||this.or.effectsSequence.length||(this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]),this.appliedTransformations=4)}},autoOrient:function(){}},extendPrototype([DynamicPropertyContainer],t),t.prototype.addDynamicProperty=function(e){this._addDynamicProperty(e),this.elem.addDynamicProperty(e),this._isDirty=!0},t.prototype._addDynamicProperty=DynamicPropertyContainer.prototype.addDynamicProperty,{getTransformProperty:function(e,i,r){return new t(e,i,r)}}}();function RepeaterModifier(){}function RoundCornersModifier(){}function floatEqual(e,t){return 1e5*Math.abs(e-t)<=Math.min(Math.abs(e),Math.abs(t))}function floatZero(e){return Math.abs(e)<=1e-5}function lerp(e,t,i){return e*(1-i)+t*i}function lerpPoint(e,t,i){return[lerp(e[0],t[0],i),lerp(e[1],t[1],i)]}function quadRoots(e,t,i){if(0===e)return[];var r=t*t-4*e*i;if(r<0)return[];var n=-t/(2*e);if(0===r)return[n];var o=Math.sqrt(r)/(2*e);return[n-o,n+o]}function polynomialCoefficients(e,t,i,r){return[3*t-e-3*i+r,3*e-6*t+3*i,-3*e+3*t,e]}function singlePoint(e){return new PolynomialBezier(e,e,e,e,!1)}function PolynomialBezier(e,t,i,r,n){n&&pointEqual(e,t)&&(t=lerpPoint(e,r,1/3)),n&&pointEqual(i,r)&&(i=lerpPoint(e,r,2/3));var o=polynomialCoefficients(e[0],t[0],i[0],r[0]),a=polynomialCoefficients(e[1],t[1],i[1],r[1]);this.a=[o[0],a[0]],this.b=[o[1],a[1]],this.c=[o[2],a[2]],this.d=[o[3],a[3]],this.points=[e,t,i,r]}function extrema(e,t){var i=e.points[0][t],r=e.points[e.points.length-1][t];if(i>r){var n=r;r=i,i=n}for(var o=quadRoots(3*e.a[t],2*e.b[t],e.c[t]),a=0;a<o.length;a+=1)if(o[a]>0&&o[a]<1){var s=e.point(o[a])[t];s<i?i=s:s>r&&(r=s)}return{min:i,max:r}}function intersectData(e,t,i){var r=e.boundingBox();return{cx:r.cx,cy:r.cy,width:r.width,height:r.height,bez:e,t:(t+i)/2,t1:t,t2:i}}function splitData(e){var t=e.bez.split(.5);return[intersectData(t[0],e.t1,e.t),intersectData(t[1],e.t,e.t2)]}function boxIntersect(e,t){return 2*Math.abs(e.cx-t.cx)<e.width+t.width&&2*Math.abs(e.cy-t.cy)<e.height+t.height}function intersectsImpl(e,t,i,r,n,o){if(boxIntersect(e,t))if(i>=o||e.width<=r&&e.height<=r&&t.width<=r&&t.height<=r)n.push([e.t,t.t]);else{var a=splitData(e),s=splitData(t);intersectsImpl(a[0],s[0],i+1,r,n,o),intersectsImpl(a[0],s[1],i+1,r,n,o),intersectsImpl(a[1],s[0],i+1,r,n,o),intersectsImpl(a[1],s[1],i+1,r,n,o)}}function crossProduct(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function lineIntersection(e,t,i,r){var n=[e[0],e[1],1],o=[t[0],t[1],1],a=[i[0],i[1],1],s=[r[0],r[1],1],l=crossProduct(crossProduct(n,o),crossProduct(a,s));return floatZero(l[2])?null:[l[0]/l[2],l[1]/l[2]]}function polarOffset(e,t,i){return[e[0]+Math.cos(t)*i,e[1]-Math.sin(t)*i]}function pointDistance(e,t){return Math.hypot(e[0]-t[0],e[1]-t[1])}function pointEqual(e,t){return floatEqual(e[0],t[0])&&floatEqual(e[1],t[1])}function ZigZagModifier(){}function setPoint(e,t,i,r,n,o,a){var s=i-Math.PI/2,l=i+Math.PI/2,c=t[0]+Math.cos(i)*r*n,d=t[1]-Math.sin(i)*r*n;e.setTripleAt(c,d,c+Math.cos(s)*o,d-Math.sin(s)*o,c+Math.cos(l)*a,d-Math.sin(l)*a,e.length())}function getPerpendicularVector(e,t){var i=[t[0]-e[0],t[1]-e[1]],r=.5*-Math.PI;return[Math.cos(r)*i[0]-Math.sin(r)*i[1],Math.sin(r)*i[0]+Math.cos(r)*i[1]]}function getProjectingAngle(e,t){var i=0===t?e.length()-1:t-1,r=(t+1)%e.length(),n=getPerpendicularVector(e.v[i],e.v[r]);return Math.atan2(0,1)-Math.atan2(n[1],n[0])}function zigZagCorner(e,t,i,r,n,o,a){var s=getProjectingAngle(t,i),l=t.v[i%t._length],c=t.v[0===i?t._length-1:i-1],d=t.v[(i+1)%t._length],p=2===o?Math.sqrt(Math.pow(l[0]-c[0],2)+Math.pow(l[1]-c[1],2)):0,g=2===o?Math.sqrt(Math.pow(l[0]-d[0],2)+Math.pow(l[1]-d[1],2)):0;setPoint(e,t.v[i%t._length],s,a,r,g/(2*(n+1)),p/(2*(n+1)))}function zigZagSegment(e,t,i,r,n,o){for(var a=0;a<r;a+=1){var s=(a+1)/(r+1),l=2===n?Math.sqrt(Math.pow(t.points[3][0]-t.points[0][0],2)+Math.pow(t.points[3][1]-t.points[0][1],2)):0,c=t.normalAngle(s);setPoint(e,t.point(s),c,o,i,l/(2*(r+1)),l/(2*(r+1))),o=-o}return o}function linearOffset(e,t,i){var r=Math.atan2(t[0]-e[0],t[1]-e[1]);return[polarOffset(e,r,i),polarOffset(t,r,i)]}function offsetSegment(e,t){var i,r,n,o,a,s,l;i=(l=linearOffset(e.points[0],e.points[1],t))[0],r=l[1],n=(l=linearOffset(e.points[1],e.points[2],t))[0],o=l[1],a=(l=linearOffset(e.points[2],e.points[3],t))[0],s=l[1];var c=lineIntersection(i,r,n,o);null===c&&(c=r);var d=lineIntersection(a,s,n,o);return null===d&&(d=a),new PolynomialBezier(i,c,d,s)}function joinLines(e,t,i,r,n){var o=t.points[3],a=i.points[0];if(3===r)return o;if(pointEqual(o,a))return o;if(2===r){var s=-t.tangentAngle(1),l=-i.tangentAngle(0)+Math.PI,c=lineIntersection(o,polarOffset(o,s+Math.PI/2,100),a,polarOffset(a,s+Math.PI/2,100)),d=c?pointDistance(c,o):pointDistance(o,a)/2,p=polarOffset(o,s,2*d*roundCorner);return e.setXYAt(p[0],p[1],"o",e.length()-1),p=polarOffset(a,l,2*d*roundCorner),e.setTripleAt(a[0],a[1],a[0],a[1],p[0],p[1],e.length()),a}var g=lineIntersection(pointEqual(o,t.points[2])?t.points[0]:t.points[2],o,a,pointEqual(a,i.points[1])?i.points[3]:i.points[1]);return g&&pointDistance(g,o)<n?(e.setTripleAt(g[0],g[1],g[0],g[1],g[0],g[1],e.length()),g):o}function getIntersection(e,t){var i=e.intersections(t);return i.length&&floatEqual(i[0][0],1)&&i.shift(),i.length?i[0]:null}function pruneSegmentIntersection(e,t){var i=e.slice(),r=t.slice(),n=getIntersection(e[e.length-1],t[0]);return n&&(i[e.length-1]=e[e.length-1].split(n[0])[0],r[0]=t[0].split(n[1])[1]),e.length>1&&t.length>1&&(n=getIntersection(e[0],t[t.length-1]))?[[e[0].split(n[0])[0]],[t[t.length-1].split(n[1])[1]]]:[i,r]}function pruneIntersections(e){for(var t,i=1;i<e.length;i+=1)t=pruneSegmentIntersection(e[i-1],e[i]),e[i-1]=t[0],e[i]=t[1];return e.length>1&&(t=pruneSegmentIntersection(e[e.length-1],e[0]),e[e.length-1]=t[0],e[0]=t[1]),e}function offsetSegmentSplit(e,t){var i,r,n,o,a=e.inflectionPoints();if(0===a.length)return[offsetSegment(e,t)];if(1===a.length||floatEqual(a[1],1))return i=(n=e.split(a[0]))[0],r=n[1],[offsetSegment(i,t),offsetSegment(r,t)];i=(n=e.split(a[0]))[0];var s=(a[1]-a[0])/(1-a[0]);return o=(n=n[1].split(s))[0],r=n[1],[offsetSegment(i,t),offsetSegment(o,t),offsetSegment(r,t)]}function OffsetPathModifier(){}function getFontProperties(e){for(var t=e.fStyle?e.fStyle.split(" "):[],i="normal",r="normal",n=t.length,o=0;o<n;o+=1)switch(t[o].toLowerCase()){case"italic":r="italic";break;case"bold":i="700";break;case"black":i="900";break;case"medium":i="500";break;case"regular":case"normal":i="400";break;case"light":case"thin":i="200"}return{style:r,weight:e.fWeight||i}}extendPrototype([ShapeModifier],RepeaterModifier),RepeaterModifier.prototype.initModifierProperties=function(e,t){this.getValue=this.processKeys,this.c=PropertyFactory.getProp(e,t.c,0,null,this),this.o=PropertyFactory.getProp(e,t.o,0,null,this),this.tr=TransformPropertyFactory.getTransformProperty(e,t.tr,this),this.so=PropertyFactory.getProp(e,t.tr.so,0,.01,this),this.eo=PropertyFactory.getProp(e,t.tr.eo,0,.01,this),this.data=t,this.dynamicProperties.length||this.getValue(!0),this._isAnimated=!!this.dynamicProperties.length,this.pMatrix=new Matrix,this.rMatrix=new Matrix,this.sMatrix=new Matrix,this.tMatrix=new Matrix,this.matrix=new Matrix},RepeaterModifier.prototype.applyTransforms=function(e,t,i,r,n,o){var a=o?-1:1,s=r.s.v[0]+(1-r.s.v[0])*(1-n),l=r.s.v[1]+(1-r.s.v[1])*(1-n);e.translate(r.p.v[0]*a*n,r.p.v[1]*a*n,r.p.v[2]),t.translate(-r.a.v[0],-r.a.v[1],r.a.v[2]),t.rotate(-r.r.v*a*n),t.translate(r.a.v[0],r.a.v[1],r.a.v[2]),i.translate(-r.a.v[0],-r.a.v[1],r.a.v[2]),i.scale(o?1/s:s,o?1/l:l),i.translate(r.a.v[0],r.a.v[1],r.a.v[2])},RepeaterModifier.prototype.init=function(e,t,i,r){for(this.elem=e,this.arr=t,this.pos=i,this.elemsData=r,this._currentCopies=0,this._elements=[],this._groups=[],this.frameId=-1,this.initDynamicPropertyContainer(e),this.initModifierProperties(e,t[i]);i>0;)i-=1,this._elements.unshift(t[i]);this.dynamicProperties.length?this.k=!0:this.getValue(!0)},RepeaterModifier.prototype.resetElements=function(e){var t,i=e.length;for(t=0;t<i;t+=1)e[t]._processed=!1,"gr"===e[t].ty&&this.resetElements(e[t].it)},RepeaterModifier.prototype.cloneElements=function(e){var t=JSON.parse(JSON.stringify(e));return this.resetElements(t),t},RepeaterModifier.prototype.changeGroupRender=function(e,t){var i,r=e.length;for(i=0;i<r;i+=1)e[i]._render=t,"gr"===e[i].ty&&this.changeGroupRender(e[i].it,t)},RepeaterModifier.prototype.processShapes=function(e){var t,i,r,n,o,a=!1;if(this._mdf||e){var s,l=Math.ceil(this.c.v);if(this._groups.length<l){for(;this._groups.length<l;){var c={it:this.cloneElements(this._elements),ty:"gr"};c.it.push({a:{a:0,ix:1,k:[0,0]},nm:"Transform",o:{a:0,ix:7,k:100},p:{a:0,ix:2,k:[0,0]},r:{a:1,ix:6,k:[{s:0,e:0,t:0},{s:0,e:0,t:1}]},s:{a:0,ix:3,k:[100,100]},sa:{a:0,ix:5,k:0},sk:{a:0,ix:4,k:0},ty:"tr"}),this.arr.splice(0,0,c),this._groups.splice(0,0,c),this._currentCopies+=1}this.elem.reloadShapes(),a=!0}for(o=0,r=0;r<=this._groups.length-1;r+=1){if(s=o<l,this._groups[r]._render=s,this.changeGroupRender(this._groups[r].it,s),!s){var d=this.elemsData[r].it,p=d[d.length-1];0!==p.transform.op.v?(p.transform.op._mdf=!0,p.transform.op.v=0):p.transform.op._mdf=!1}o+=1}this._currentCopies=l;var g=this.o.v,u=g%1,m=g>0?Math.floor(g):Math.ceil(g),h=this.pMatrix.props,f=this.rMatrix.props,y=this.sMatrix.props;this.pMatrix.reset(),this.rMatrix.reset(),this.sMatrix.reset(),this.tMatrix.reset(),this.matrix.reset();var b,C,x=0;if(g>0){for(;x<m;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),x+=1;u&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,u,!1),x+=u)}else if(g<0){for(;x>m;)this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!0),x-=1;u&&(this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,-u,!0),x-=u)}for(r=1===this.data.m?0:this._currentCopies-1,n=1===this.data.m?1:-1,o=this._currentCopies;o;){if(C=(i=(t=this.elemsData[r].it)[t.length-1].transform.mProps.v.props).length,t[t.length-1].transform.mProps._mdf=!0,t[t.length-1].transform.op._mdf=!0,t[t.length-1].transform.op.v=1===this._currentCopies?this.so.v:this.so.v+(this.eo.v-this.so.v)*(r/(this._currentCopies-1)),0!==x){for((0!==r&&1===n||r!==this._currentCopies-1&&-1===n)&&this.applyTransforms(this.pMatrix,this.rMatrix,this.sMatrix,this.tr,1,!1),this.matrix.transform(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],f[9],f[10],f[11],f[12],f[13],f[14],f[15]),this.matrix.transform(y[0],y[1],y[2],y[3],y[4],y[5],y[6],y[7],y[8],y[9],y[10],y[11],y[12],y[13],y[14],y[15]),this.matrix.transform(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8],h[9],h[10],h[11],h[12],h[13],h[14],h[15]),b=0;b<C;b+=1)i[b]=this.matrix.props[b];this.matrix.reset()}else for(this.matrix.reset(),b=0;b<C;b+=1)i[b]=this.matrix.props[b];x+=1,o-=1,r+=n}}else for(o=this._currentCopies,r=0,n=1;o;)i=(t=this.elemsData[r].it)[t.length-1].transform.mProps.v.props,t[t.length-1].transform.mProps._mdf=!1,t[t.length-1].transform.op._mdf=!1,o-=1,r+=n;return a},RepeaterModifier.prototype.addShape=function(){},extendPrototype([ShapeModifier],RoundCornersModifier),RoundCornersModifier.prototype.initModifierProperties=function(e,t){this.getValue=this.processKeys,this.rd=PropertyFactory.getProp(e,t.r,0,null,this),this._isAnimated=!!this.rd.effectsSequence.length},RoundCornersModifier.prototype.processPath=function(e,t){var i,r=shapePool.newElement();r.c=e.c;var n,o,a,s,l,c,d,p,g,u,m,h,f=e._length,y=0;for(i=0;i<f;i+=1)n=e.v[i],a=e.o[i],o=e.i[i],n[0]===a[0]&&n[1]===a[1]&&n[0]===o[0]&&n[1]===o[1]?0!==i&&i!==f-1||e.c?(s=0===i?e.v[f-1]:e.v[i-1],c=(l=Math.sqrt(Math.pow(n[0]-s[0],2)+Math.pow(n[1]-s[1],2)))?Math.min(l/2,t)/l:0,d=m=n[0]+(s[0]-n[0])*c,p=h=n[1]-(n[1]-s[1])*c,g=d-(d-n[0])*roundCorner,u=p-(p-n[1])*roundCorner,r.setTripleAt(d,p,g,u,m,h,y),y+=1,s=i===f-1?e.v[0]:e.v[i+1],c=(l=Math.sqrt(Math.pow(n[0]-s[0],2)+Math.pow(n[1]-s[1],2)))?Math.min(l/2,t)/l:0,d=g=n[0]+(s[0]-n[0])*c,p=u=n[1]+(s[1]-n[1])*c,m=d-(d-n[0])*roundCorner,h=p-(p-n[1])*roundCorner,r.setTripleAt(d,p,g,u,m,h,y),y+=1):(r.setTripleAt(n[0],n[1],a[0],a[1],o[0],o[1],y),y+=1):(r.setTripleAt(e.v[i][0],e.v[i][1],e.o[i][0],e.o[i][1],e.i[i][0],e.i[i][1],y),y+=1);return r},RoundCornersModifier.prototype.processShapes=function(e){var t,i,r,n,o,a,s=this.shapes.length,l=this.rd.v;if(0!==l)for(i=0;i<s;i+=1){if(a=(o=this.shapes[i]).localShapeCollection,o.shape._mdf||this._mdf||e)for(a.releaseShapes(),o.shape._mdf=!0,t=o.shape.paths.shapes,n=o.shape.paths._length,r=0;r<n;r+=1)a.addShape(this.processPath(t[r],l));o.shape.paths=o.localShapeCollection}this.dynamicProperties.length||(this._mdf=!1)},PolynomialBezier.prototype.point=function(e){return[((this.a[0]*e+this.b[0])*e+this.c[0])*e+this.d[0],((this.a[1]*e+this.b[1])*e+this.c[1])*e+this.d[1]]},PolynomialBezier.prototype.derivative=function(e){return[(3*e*this.a[0]+2*this.b[0])*e+this.c[0],(3*e*this.a[1]+2*this.b[1])*e+this.c[1]]},PolynomialBezier.prototype.tangentAngle=function(e){var t=this.derivative(e);return Math.atan2(t[1],t[0])},PolynomialBezier.prototype.normalAngle=function(e){var t=this.derivative(e);return Math.atan2(t[0],t[1])},PolynomialBezier.prototype.inflectionPoints=function(){var e=this.a[1]*this.b[0]-this.a[0]*this.b[1];if(floatZero(e))return[];var t=-.5*(this.a[1]*this.c[0]-this.a[0]*this.c[1])/e,i=t*t-1/3*(this.b[1]*this.c[0]-this.b[0]*this.c[1])/e;if(i<0)return[];var r=Math.sqrt(i);return floatZero(r)?r>0&&r<1?[t]:[]:[t-r,t+r].filter(function(e){return e>0&&e<1})},PolynomialBezier.prototype.split=function(e){if(e<=0)return[singlePoint(this.points[0]),this];if(e>=1)return[this,singlePoint(this.points[this.points.length-1])];var t=lerpPoint(this.points[0],this.points[1],e),i=lerpPoint(this.points[1],this.points[2],e),r=lerpPoint(this.points[2],this.points[3],e),n=lerpPoint(t,i,e),o=lerpPoint(i,r,e),a=lerpPoint(n,o,e);return[new PolynomialBezier(this.points[0],t,n,a,!0),new PolynomialBezier(a,o,r,this.points[3],!0)]},PolynomialBezier.prototype.bounds=function(){return{x:extrema(this,0),y:extrema(this,1)}},PolynomialBezier.prototype.boundingBox=function(){var e=this.bounds();return{left:e.x.min,right:e.x.max,top:e.y.min,bottom:e.y.max,width:e.x.max-e.x.min,height:e.y.max-e.y.min,cx:(e.x.max+e.x.min)/2,cy:(e.y.max+e.y.min)/2}},PolynomialBezier.prototype.intersections=function(e,t,i){void 0===t&&(t=2),void 0===i&&(i=7);var r=[];return intersectsImpl(intersectData(this,0,1),intersectData(e,0,1),0,t,r,i),r},PolynomialBezier.shapeSegment=function(e,t){var i=(t+1)%e.length();return new PolynomialBezier(e.v[t],e.o[t],e.i[i],e.v[i],!0)},PolynomialBezier.shapeSegmentInverted=function(e,t){var i=(t+1)%e.length();return new PolynomialBezier(e.v[i],e.i[i],e.o[t],e.v[t],!0)},extendPrototype([ShapeModifier],ZigZagModifier),ZigZagModifier.prototype.initModifierProperties=function(e,t){this.getValue=this.processKeys,this.amplitude=PropertyFactory.getProp(e,t.s,0,null,this),this.frequency=PropertyFactory.getProp(e,t.r,0,null,this),this.pointsType=PropertyFactory.getProp(e,t.pt,0,null,this),this._isAnimated=0!==this.amplitude.effectsSequence.length||0!==this.frequency.effectsSequence.length||0!==this.pointsType.effectsSequence.length},ZigZagModifier.prototype.processPath=function(e,t,i,r){var n=e._length,o=shapePool.newElement();if(o.c=e.c,e.c||(n-=1),0===n)return o;var a=-1,s=PolynomialBezier.shapeSegment(e,0);zigZagCorner(o,e,0,t,i,r,a);for(var l=0;l<n;l+=1)a=zigZagSegment(o,s,t,i,r,-a),s=l!==n-1||e.c?PolynomialBezier.shapeSegment(e,(l+1)%n):null,zigZagCorner(o,e,l+1,t,i,r,a);return o},ZigZagModifier.prototype.processShapes=function(e){var t,i,r,n,o,a,s=this.shapes.length,l=this.amplitude.v,c=Math.max(0,Math.round(this.frequency.v)),d=this.pointsType.v;if(0!==l)for(i=0;i<s;i+=1){if(a=(o=this.shapes[i]).localShapeCollection,o.shape._mdf||this._mdf||e)for(a.releaseShapes(),o.shape._mdf=!0,t=o.shape.paths.shapes,n=o.shape.paths._length,r=0;r<n;r+=1)a.addShape(this.processPath(t[r],l,c,d));o.shape.paths=o.localShapeCollection}this.dynamicProperties.length||(this._mdf=!1)},extendPrototype([ShapeModifier],OffsetPathModifier),OffsetPathModifier.prototype.initModifierProperties=function(e,t){this.getValue=this.processKeys,this.amount=PropertyFactory.getProp(e,t.a,0,null,this),this.miterLimit=PropertyFactory.getProp(e,t.ml,0,null,this),this.lineJoin=t.lj,this._isAnimated=0!==this.amount.effectsSequence.length},OffsetPathModifier.prototype.processPath=function(e,t,i,r){var n=shapePool.newElement();n.c=e.c;var o,a,s,l=e.length();e.c||(l-=1);var c=[];for(o=0;o<l;o+=1)s=PolynomialBezier.shapeSegment(e,o),c.push(offsetSegmentSplit(s,t));if(!e.c)for(o=l-1;o>=0;o-=1)s=PolynomialBezier.shapeSegmentInverted(e,o),c.push(offsetSegmentSplit(s,t));c=pruneIntersections(c);var d=null,p=null;for(o=0;o<c.length;o+=1){var g=c[o];for(p&&(d=joinLines(n,p,g[0],i,r)),p=g[g.length-1],a=0;a<g.length;a+=1)s=g[a],d&&pointEqual(s.points[0],d)?n.setXYAt(s.points[1][0],s.points[1][1],"o",n.length()-1):n.setTripleAt(s.points[0][0],s.points[0][1],s.points[1][0],s.points[1][1],s.points[0][0],s.points[0][1],n.length()),n.setTripleAt(s.points[3][0],s.points[3][1],s.points[3][0],s.points[3][1],s.points[2][0],s.points[2][1],n.length()),d=s.points[3]}return c.length&&joinLines(n,p,c[0][0],i,r),n},OffsetPathModifier.prototype.processShapes=function(e){var t,i,r,n,o,a,s=this.shapes.length,l=this.amount.v,c=this.miterLimit.v,d=this.lineJoin;if(0!==l)for(i=0;i<s;i+=1){if(a=(o=this.shapes[i]).localShapeCollection,o.shape._mdf||this._mdf||e)for(a.releaseShapes(),o.shape._mdf=!0,t=o.shape.paths.shapes,n=o.shape.paths._length,r=0;r<n;r+=1)a.addShape(this.processPath(t[r],l,d,c));o.shape.paths=o.localShapeCollection}this.dynamicProperties.length||(this._mdf=!1)};var FontManager=function(){var e={w:0,size:0,shapes:[],data:{shapes:[]}},t=[];t=t.concat([2304,2305,2306,2307,2362,2363,2364,2364,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2387,2388,2389,2390,2391,2402,2403]);var i=127988,r=["d83cdffb","d83cdffc","d83cdffd","d83cdffe","d83cdfff"];function n(e,t){var i=createTag("span");i.setAttribute("aria-hidden",!0),i.style.fontFamily=t;var r=createTag("span");r.innerText="giItT1WQy@!-/#",i.style.position="absolute",i.style.left="-10000px",i.style.top="-10000px",i.style.fontSize="300px",i.style.fontVariant="normal",i.style.fontStyle="normal",i.style.fontWeight="normal",i.style.letterSpacing="0",i.appendChild(r),document.body.appendChild(i);var n=r.offsetWidth;return r.style.fontFamily=function(e){var t,i=e.split(","),r=i.length,n=[];for(t=0;t<r;t+=1)"sans-serif"!==i[t]&&"monospace"!==i[t]&&n.push(i[t]);return n.join(",")}(e)+", "+t,{node:r,w:n,parent:i}}function o(e,t){var i,r=document.body&&t?"svg":"canvas",n=getFontProperties(e);if("svg"===r){var o=createNS("text");o.style.fontSize="100px",o.setAttribute("font-family",e.fFamily),o.setAttribute("font-style",n.style),o.setAttribute("font-weight",n.weight),o.textContent="1",e.fClass?(o.style.fontFamily="inherit",o.setAttribute("class",e.fClass)):o.style.fontFamily=e.fFamily,t.appendChild(o),i=o}else{var a=new OffscreenCanvas(500,500).getContext("2d");a.font=n.style+" "+n.weight+" 100px "+e.fFamily,i=a}return{measureText:function(e){return"svg"===r?(i.textContent=e,i.getComputedTextLength()):i.measureText(e).width}}}function a(e){var t=0,i=e.charCodeAt(0);if(i>=55296&&i<=56319){var r=e.charCodeAt(1);r>=56320&&r<=57343&&(t=1024*(i-55296)+r-56320+65536)}return t}function s(e){var t=a(e);return t>=127462&&t<=127487}var l=function(){this.fonts=[],this.chars=null,this.typekitLoaded=0,this.isLoaded=!1,this._warned=!1,this.initTime=Date.now(),this.setIsLoadedBinded=this.setIsLoaded.bind(this),this.checkLoadedFontsBinded=this.checkLoadedFonts.bind(this)};l.isModifier=function(e,t){var i=e.toString(16)+t.toString(16);return-1!==r.indexOf(i)},l.isZeroWidthJoiner=function(e){return 8205===e},l.isFlagEmoji=function(e){return s(e.substr(0,2))&&s(e.substr(2,2))},l.isRegionalCode=s,l.isCombinedCharacter=function(e){return-1!==t.indexOf(e)},l.isRegionalFlag=function(e,t){var r=a(e.substr(t,2));if(r!==i)return!1;var n=0;for(t+=2;n<5;){if((r=a(e.substr(t,2)))<917601||r>917626)return!1;n+=1,t+=2}return 917631===a(e.substr(t,2))},l.isVariationSelector=function(e){return 65039===e},l.BLACK_FLAG_CODE_POINT=i;var c={addChars:function(e){if(e){var t;this.chars||(this.chars=[]);var i,r,n=e.length,o=this.chars.length;for(t=0;t<n;t+=1){for(i=0,r=!1;i<o;)this.chars[i].style===e[t].style&&this.chars[i].fFamily===e[t].fFamily&&this.chars[i].ch===e[t].ch&&(r=!0),i+=1;r||(this.chars.push(e[t]),o+=1)}}},addFonts:function(e,t){if(e){if(this.chars)return this.isLoaded=!0,void(this.fonts=e.list);if(!document.body)return this.isLoaded=!0,e.list.forEach(function(e){e.helper=o(e),e.cache={}}),void(this.fonts=e.list);var i,r=e.list,a=r.length,s=a;for(i=0;i<a;i+=1){var l,c,d=!0;if(r[i].loaded=!1,r[i].monoCase=n(r[i].fFamily,"monospace"),r[i].sansCase=n(r[i].fFamily,"sans-serif"),r[i].fPath){if("p"===r[i].fOrigin||3===r[i].origin){if((l=document.querySelectorAll('style[f-forigin="p"][f-family="'+r[i].fFamily+'"], style[f-origin="3"][f-family="'+r[i].fFamily+'"]')).length>0&&(d=!1),d){var p=createTag("style");p.setAttribute("f-forigin",r[i].fOrigin),p.setAttribute("f-origin",r[i].origin),p.setAttribute("f-family",r[i].fFamily),p.type="text/css",p.innerText="@font-face {font-family: "+r[i].fFamily+"; font-style: normal; src: url('"+r[i].fPath+"');}",t.appendChild(p)}}else if("g"===r[i].fOrigin||1===r[i].origin){for(l=document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]'),c=0;c<l.length;c+=1)-1!==l[c].href.indexOf(r[i].fPath)&&(d=!1);if(d){var g=createTag("link");g.setAttribute("f-forigin",r[i].fOrigin),g.setAttribute("f-origin",r[i].origin),g.type="text/css",g.rel="stylesheet",g.href=r[i].fPath,document.body.appendChild(g)}}else if("t"===r[i].fOrigin||2===r[i].origin){for(l=document.querySelectorAll('script[f-forigin="t"], script[f-origin="2"]'),c=0;c<l.length;c+=1)r[i].fPath===l[c].src&&(d=!1);if(d){var u=createTag("link");u.setAttribute("f-forigin",r[i].fOrigin),u.setAttribute("f-origin",r[i].origin),u.setAttribute("rel","stylesheet"),u.setAttribute("href",r[i].fPath),t.appendChild(u)}}}else r[i].loaded=!0,s-=1;r[i].helper=o(r[i],t),r[i].cache={},this.fonts.push(r[i])}0===s?this.isLoaded=!0:setTimeout(this.checkLoadedFonts.bind(this),100)}else this.isLoaded=!0},getCharData:function(t,i,r){for(var n=0,o=this.chars.length;n<o;){if(this.chars[n].ch===t&&this.chars[n].style===i&&this.chars[n].fFamily===r)return this.chars[n];n+=1}return("string"==typeof t&&13!==t.charCodeAt(0)||!t)&&console&&console.warn&&!this._warned&&(this._warned=!0,console.warn("Missing character from exported characters list: ",t,i,r)),e},getFontByName:function(e){for(var t=0,i=this.fonts.length;t<i;){if(this.fonts[t].fName===e)return this.fonts[t];t+=1}return this.fonts[0]},measureText:function(e,t,i){var r=this.getFontByName(t),n=e;if(!r.cache[n]){var o=r.helper;if(" "===e){var a=o.measureText("|"+e+"|"),s=o.measureText("||");r.cache[n]=(a-s)/100}else r.cache[n]=o.measureText(e)/100}return r.cache[n]*i},checkLoadedFonts:function(){var e,t,i,r=this.fonts.length,n=r;for(e=0;e<r;e+=1)this.fonts[e].loaded?n-=1:"n"===this.fonts[e].fOrigin||0===this.fonts[e].origin?this.fonts[e].loaded=!0:(t=this.fonts[e].monoCase.node,i=this.fonts[e].monoCase.w,t.offsetWidth!==i?(n-=1,this.fonts[e].loaded=!0):(t=this.fonts[e].sansCase.node,i=this.fonts[e].sansCase.w,t.offsetWidth!==i&&(n-=1,this.fonts[e].loaded=!0)),this.fonts[e].loaded&&(this.fonts[e].sansCase.parent.parentNode.removeChild(this.fonts[e].sansCase.parent),this.fonts[e].monoCase.parent.parentNode.removeChild(this.fonts[e].monoCase.parent)));0!==n&&Date.now()-this.initTime<5e3?setTimeout(this.checkLoadedFontsBinded,20):setTimeout(this.setIsLoadedBinded,10)},setIsLoaded:function(){this.isLoaded=!0}};return l.prototype=c,l}();function SlotManager(e){this.animationData=e}function slotFactory(e){return new SlotManager(e)}function RenderableElement(){}SlotManager.prototype.getProp=function(e){return this.animationData.slots&&this.animationData.slots[e.sid]?Object.assign(e,this.animationData.slots[e.sid].p):e},RenderableElement.prototype={initRenderable:function(){this.isInRange=!1,this.hidden=!1,this.isTransparent=!1,this.renderableComponents=[]},addRenderableComponent:function(e){-1===this.renderableComponents.indexOf(e)&&this.renderableComponents.push(e)},removeRenderableComponent:function(e){-1!==this.renderableComponents.indexOf(e)&&this.renderableComponents.splice(this.renderableComponents.indexOf(e),1)},prepareRenderableFrame:function(e){this.checkLayerLimits(e)},checkTransparency:function(){this.finalTransform.mProp.o.v<=0?!this.isTransparent&&this.globalData.renderConfig.hideOnTransparent&&(this.isTransparent=!0,this.hide()):this.isTransparent&&(this.isTransparent=!1,this.show())},checkLayerLimits:function(e){this.data.ip-this.data.st<=e&&this.data.op-this.data.st>e?!0!==this.isInRange&&(this.globalData._mdf=!0,this._mdf=!0,this.isInRange=!0,this.show()):!1!==this.isInRange&&(this.globalData._mdf=!0,this.isInRange=!1,this.hide())},renderRenderable:function(){var e,t=this.renderableComponents.length;for(e=0;e<t;e+=1)this.renderableComponents[e].renderFrame(this._isFirstFrame)},sourceRectAtTime:function(){return{top:0,left:0,width:100,height:100}},getLayerSize:function(){return 5===this.data.ty?{w:this.data.textData.width,h:this.data.textData.height}:{w:this.data.width,h:this.data.height}}};var getBlendMode=(blendModeEnums={0:"source-over",1:"multiply",2:"screen",3:"overlay",4:"darken",5:"lighten",6:"color-dodge",7:"color-burn",8:"hard-light",9:"soft-light",10:"difference",11:"exclusion",12:"hue",13:"saturation",14:"color",15:"luminosity"},function(e){return blendModeEnums[e]||""}),blendModeEnums;function SliderEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,0,0,i)}function AngleEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,0,0,i)}function ColorEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,1,0,i)}function PointEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,1,0,i)}function LayerIndexEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,0,0,i)}function MaskIndexEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,0,0,i)}function CheckboxEffect(e,t,i){this.p=PropertyFactory.getProp(t,e.v,0,0,i)}function NoValueEffect(){this.p={}}function EffectsManager(e,t){var i,r=e.ef||[];this.effectElements=[];var n,o=r.length;for(i=0;i<o;i+=1)n=new GroupEffect(r[i],t),this.effectElements.push(n)}function GroupEffect(e,t){this.init(e,t)}function BaseElement(){}function FrameElement(){}function FootageElement(e,t,i){this.initFrame(),this.initRenderable(),this.assetData=t.getAssetData(e.refId),this.footageData=t.imageLoader.getAsset(this.assetData),this.initBaseData(e,t,i)}function AudioElement(e,t,i){this.initFrame(),this.initRenderable(),this.assetData=t.getAssetData(e.refId),this.initBaseData(e,t,i),this._isPlaying=!1,this._canPlay=!1;var r=this.globalData.getAssetsPath(this.assetData);this.audio=this.globalData.audioController.createAudio(r),this._currentTime=0,this.globalData.audioController.addAudio(this),this._volumeMultiplier=1,this._volume=1,this._previousVolume=null,this.tm=e.tm?PropertyFactory.getProp(this,e.tm,0,t.frameRate,this):{_placeholder:!0},this.lv=PropertyFactory.getProp(this,e.au&&e.au.lv?e.au.lv:{k:[100]},1,.01,this)}function BaseRenderer(){}extendPrototype([DynamicPropertyContainer],GroupEffect),GroupEffect.prototype.getValue=GroupEffect.prototype.iterateDynamicProperties,GroupEffect.prototype.init=function(e,t){var i;this.data=e,this.effectElements=[],this.initDynamicPropertyContainer(t);var r,n=this.data.ef.length,o=this.data.ef;for(i=0;i<n;i+=1){switch(r=null,o[i].ty){case 0:r=new SliderEffect(o[i],t,this);break;case 1:r=new AngleEffect(o[i],t,this);break;case 2:r=new ColorEffect(o[i],t,this);break;case 3:r=new PointEffect(o[i],t,this);break;case 4:case 7:r=new CheckboxEffect(o[i],t,this);break;case 10:r=new LayerIndexEffect(o[i],t,this);break;case 11:r=new MaskIndexEffect(o[i],t,this);break;case 5:r=new EffectsManager(o[i],t);break;default:r=new NoValueEffect(o[i])}r&&this.effectElements.push(r)}},BaseElement.prototype={checkMasks:function(){if(!this.data.hasMask)return!1;for(var e=0,t=this.data.masksProperties.length;e<t;){if("n"!==this.data.masksProperties[e].mode&&!1!==this.data.masksProperties[e].cl)return!0;e+=1}return!1},initExpressions:function(){var e=getExpressionInterfaces();if(e){var t=e("layer"),i=e("effects"),r=e("shape"),n=e("text"),o=e("comp");this.layerInterface=t(this),this.data.hasMask&&this.maskManager&&this.layerInterface.registerMaskInterface(this.maskManager);var a=i.createEffectsInterface(this,this.layerInterface);this.layerInterface.registerEffectsInterface(a),0===this.data.ty||this.data.xt?this.compInterface=o(this):4===this.data.ty?(this.layerInterface.shapeInterface=r(this.shapesData,this.itemsData,this.layerInterface),this.layerInterface.content=this.layerInterface.shapeInterface):5===this.data.ty&&(this.layerInterface.textInterface=n(this),this.layerInterface.text=this.layerInterface.textInterface)}},setBlendMode:function(){var e=getBlendMode(this.data.bm);(this.baseElement||this.layerElement).style["mix-blend-mode"]=e},initBaseData:function(e,t,i){this.globalData=t,this.comp=i,this.data=e,this.layerId=createElementID(),this.data.sr||(this.data.sr=1),this.effectsManager=new EffectsManager(this.data,this,this.dynamicProperties)},getType:function(){return this.type},sourceRectAtTime:function(){}},FrameElement.prototype={initFrame:function(){this._isFirstFrame=!1,this.dynamicProperties=[],this._mdf=!1},prepareProperties:function(e,t){var i,r=this.dynamicProperties.length;for(i=0;i<r;i+=1)(t||this._isParent&&"transform"===this.dynamicProperties[i].propType)&&(this.dynamicProperties[i].getValue(),this.dynamicProperties[i]._mdf&&(this.globalData._mdf=!0,this._mdf=!0))},addDynamicProperty:function(e){-1===this.dynamicProperties.indexOf(e)&&this.dynamicProperties.push(e)}},FootageElement.prototype.prepareFrame=function(){},extendPrototype([RenderableElement,BaseElement,FrameElement],FootageElement),FootageElement.prototype.getBaseElement=function(){return null},FootageElement.prototype.renderFrame=function(){},FootageElement.prototype.destroy=function(){},FootageElement.prototype.initExpressions=function(){var e=getExpressionInterfaces();if(e){var t=e("footage");this.layerInterface=t(this)}},FootageElement.prototype.getFootageData=function(){return this.footageData},AudioElement.prototype.prepareFrame=function(e){if(this.prepareRenderableFrame(e,!0),this.prepareProperties(e,!0),this.tm._placeholder)this._currentTime=e/this.data.sr;else{var t=this.tm.v;this._currentTime=t}this._volume=this.lv.v[0];var i=this._volume*this._volumeMultiplier;this._previousVolume!==i&&(this._previousVolume=i,this.audio.volume(i))},extendPrototype([RenderableElement,BaseElement,FrameElement],AudioElement),AudioElement.prototype.renderFrame=function(){this.isInRange&&this._canPlay&&(this._isPlaying?(!this.audio.playing()||Math.abs(this._currentTime/this.globalData.frameRate-this.audio.seek())>.1)&&this.audio.seek(this._currentTime/this.globalData.frameRate):(this.audio.play(),this.audio.seek(this._currentTime/this.globalData.frameRate),this._isPlaying=!0))},AudioElement.prototype.show=function(){},AudioElement.prototype.hide=function(){this.audio.pause(),this._isPlaying=!1},AudioElement.prototype.pause=function(){this.audio.pause(),this._isPlaying=!1,this._canPlay=!1},AudioElement.prototype.resume=function(){this._canPlay=!0},AudioElement.prototype.setRate=function(e){this.audio.rate(e)},AudioElement.prototype.volume=function(e){this._volumeMultiplier=e,this._previousVolume=e*this._volume,this.audio.volume(this._previousVolume)},AudioElement.prototype.getBaseElement=function(){return null},AudioElement.prototype.destroy=function(){},AudioElement.prototype.sourceRectAtTime=function(){},AudioElement.prototype.initExpressions=function(){},BaseRenderer.prototype.checkLayers=function(e){var t,i,r=this.layers.length;for(this.completeLayers=!0,t=r-1;t>=0;t-=1)this.elements[t]||(i=this.layers[t]).ip-i.st<=e-this.layers[t].st&&i.op-i.st>e-this.layers[t].st&&this.buildItem(t),this.completeLayers=!!this.elements[t]&&this.completeLayers;this.checkPendingElements()},BaseRenderer.prototype.createItem=function(e){switch(e.ty){case 2:return this.createImage(e);case 0:return this.createComp(e);case 1:return this.createSolid(e);case 3:default:return this.createNull(e);case 4:return this.createShape(e);case 5:return this.createText(e);case 6:return this.createAudio(e);case 13:return this.createCamera(e);case 15:return this.createFootage(e)}},BaseRenderer.prototype.createCamera=function(){throw new Error("You're using a 3d camera. Try the html renderer.")},BaseRenderer.prototype.createAudio=function(e){return new AudioElement(e,this.globalData,this)},BaseRenderer.prototype.createFootage=function(e){return new FootageElement(e,this.globalData,this)},BaseRenderer.prototype.buildAllItems=function(){var e,t=this.layers.length;for(e=0;e<t;e+=1)this.buildItem(e);this.checkPendingElements()},BaseRenderer.prototype.includeLayers=function(e){var t;this.completeLayers=!1;var i,r=e.length,n=this.layers.length;for(t=0;t<r;t+=1)for(i=0;i<n;){if(this.layers[i].id===e[t].id){this.layers[i]=e[t];break}i+=1}},BaseRenderer.prototype.setProjectInterface=function(e){this.globalData.projectInterface=e},BaseRenderer.prototype.initItems=function(){this.globalData.progressiveLoad||this.buildAllItems()},BaseRenderer.prototype.buildElementParenting=function(e,t,i){for(var r=this.elements,n=this.layers,o=0,a=n.length;o<a;)n[o].ind==t&&(r[o]&&!0!==r[o]?(i.push(r[o]),r[o].setAsParent(),void 0!==n[o].parent?this.buildElementParenting(e,n[o].parent,i):e.setHierarchy(i)):(this.buildItem(o),this.addPendingElement(e))),o+=1},BaseRenderer.prototype.addPendingElement=function(e){this.pendingElements.push(e)},BaseRenderer.prototype.searchExtraCompositions=function(e){var t,i=e.length;for(t=0;t<i;t+=1)if(e[t].xt){var r=this.createComp(e[t]);r.initExpressions(),this.globalData.projectInterface.registerComposition(r)}},BaseRenderer.prototype.getElementById=function(e){var t,i=this.elements.length;for(t=0;t<i;t+=1)if(this.elements[t].data.ind===e)return this.elements[t];return null},BaseRenderer.prototype.getElementByPath=function(e){var t,i=e.shift();if("number"==typeof i)t=this.elements[i];else{var r,n=this.elements.length;for(r=0;r<n;r+=1)if(this.elements[r].data.nm===i){t=this.elements[r];break}}return 0===e.length?t:t.getElementByPath(e)},BaseRenderer.prototype.setupGlobalData=function(e,t){this.globalData.fontManager=new FontManager,this.globalData.slotManager=slotFactory(e),this.globalData.fontManager.addChars(e.chars),this.globalData.fontManager.addFonts(e.fonts,t),this.globalData.getAssetData=this.animationItem.getAssetData.bind(this.animationItem),this.globalData.getAssetsPath=this.animationItem.getAssetsPath.bind(this.animationItem),this.globalData.imageLoader=this.animationItem.imagePreloader,this.globalData.audioController=this.animationItem.audioController,this.globalData.frameId=0,this.globalData.frameRate=e.fr,this.globalData.nm=e.nm,this.globalData.compSize={w:e.w,h:e.h}};var effectTypes={TRANSFORM_EFFECT:"transformEFfect"};function TransformElement(){}function MaskElement(e,t,i){this.data=e,this.element=t,this.globalData=i,this.storedData=[],this.masksProperties=this.data.masksProperties||[],this.maskElement=null;var r,n,o=this.globalData.defs,a=this.masksProperties?this.masksProperties.length:0;this.viewData=createSizedArray(a),this.solidPath="";var s,l,c,d,p,g,u=this.masksProperties,m=0,h=[],f=createElementID(),y="clipPath",b="clip-path";for(r=0;r<a;r+=1)if(("a"!==u[r].mode&&"n"!==u[r].mode||u[r].inv||100!==u[r].o.k||u[r].o.x)&&(y="mask",b="mask"),"s"!==u[r].mode&&"i"!==u[r].mode||0!==m?c=null:((c=createNS("rect")).setAttribute("fill","#ffffff"),c.setAttribute("width",this.element.comp.data.w||0),c.setAttribute("height",this.element.comp.data.h||0),h.push(c)),n=createNS("path"),"n"===u[r].mode)this.viewData[r]={op:PropertyFactory.getProp(this.element,u[r].o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,u[r],3),elem:n,lastPath:""},o.appendChild(n);else{var C;if(m+=1,n.setAttribute("fill","s"===u[r].mode?"#000000":"#ffffff"),n.setAttribute("clip-rule","nonzero"),0!==u[r].x.k?(y="mask",b="mask",g=PropertyFactory.getProp(this.element,u[r].x,0,null,this.element),C=createElementID(),(d=createNS("filter")).setAttribute("id",C),(p=createNS("feMorphology")).setAttribute("operator","erode"),p.setAttribute("in","SourceGraphic"),p.setAttribute("radius","0"),d.appendChild(p),o.appendChild(d),n.setAttribute("stroke","s"===u[r].mode?"#000000":"#ffffff")):(p=null,g=null),this.storedData[r]={elem:n,x:g,expan:p,lastPath:"",lastOperator:"",filterId:C,lastRadius:0},"i"===u[r].mode){l=h.length;var x=createNS("g");for(s=0;s<l;s+=1)x.appendChild(h[s]);var v=createNS("mask");v.setAttribute("mask-type","alpha"),v.setAttribute("id",f+"_"+m),v.appendChild(n),o.appendChild(v),x.setAttribute("mask","url("+getLocationHref()+"#"+f+"_"+m+")"),h.length=0,h.push(x)}else h.push(n);u[r].inv&&!this.solidPath&&(this.solidPath=this.createLayerSolidPath()),this.viewData[r]={elem:n,lastPath:"",op:PropertyFactory.getProp(this.element,u[r].o,0,.01,this.element),prop:ShapePropertyFactory.getShapeProp(this.element,u[r],3),invRect:c},this.viewData[r].prop.k||this.drawPath(u[r],this.viewData[r].prop.v,this.viewData[r])}for(this.maskElement=createNS(y),a=h.length,r=0;r<a;r+=1)this.maskElement.appendChild(h[r]);m>0&&(this.maskElement.setAttribute("id",f),this.element.maskedElement.setAttribute(b,"url("+getLocationHref()+"#"+f+")"),o.appendChild(this.maskElement)),this.viewData.length&&this.element.addRenderableComponent(this)}TransformElement.prototype={initTransform:function(){var e=new Matrix;this.finalTransform={mProp:this.data.ks?TransformPropertyFactory.getTransformProperty(this,this.data.ks,this):{o:0},_matMdf:!1,_localMatMdf:!1,_opMdf:!1,mat:e,localMat:e,localOpacity:1},this.data.ao&&(this.finalTransform.mProp.autoOriented=!0),this.data.ty},renderTransform:function(){if(this.finalTransform._opMdf=this.finalTransform.mProp.o._mdf||this._isFirstFrame,this.finalTransform._matMdf=this.finalTransform.mProp._mdf||this._isFirstFrame,this.hierarchy){var e,t=this.finalTransform.mat,i=0,r=this.hierarchy.length;if(!this.finalTransform._matMdf)for(;i<r;){if(this.hierarchy[i].finalTransform.mProp._mdf){this.finalTransform._matMdf=!0;break}i+=1}if(this.finalTransform._matMdf)for(e=this.finalTransform.mProp.v.props,t.cloneFromProps(e),i=0;i<r;i+=1)t.multiply(this.hierarchy[i].finalTransform.mProp.v)}this.localTransforms&&!this.finalTransform._matMdf||(this.finalTransform._localMatMdf=this.finalTransform._matMdf),this.finalTransform._opMdf&&(this.finalTransform.localOpacity=this.finalTransform.mProp.o.v)},renderLocalTransform:function(){if(this.localTransforms){var e=0,t=this.localTransforms.length;if(this.finalTransform._localMatMdf=this.finalTransform._matMdf,!this.finalTransform._localMatMdf||!this.finalTransform._opMdf)for(;e<t;)this.localTransforms[e]._mdf&&(this.finalTransform._localMatMdf=!0),this.localTransforms[e]._opMdf&&!this.finalTransform._opMdf&&(this.finalTransform.localOpacity=this.finalTransform.mProp.o.v,this.finalTransform._opMdf=!0),e+=1;if(this.finalTransform._localMatMdf){var i=this.finalTransform.localMat;for(this.localTransforms[0].matrix.clone(i),e=1;e<t;e+=1){var r=this.localTransforms[e].matrix;i.multiply(r)}i.multiply(this.finalTransform.mat)}if(this.finalTransform._opMdf){var n=this.finalTransform.localOpacity;for(e=0;e<t;e+=1)n*=.01*this.localTransforms[e].opacity;this.finalTransform.localOpacity=n}}},searchEffectTransforms:function(){if(this.renderableEffectsManager){var e=this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT);if(e.length){this.localTransforms=[],this.finalTransform.localMat=new Matrix;var t=0,i=e.length;for(t=0;t<i;t+=1)this.localTransforms.push(e[t])}}},globalToLocal:function(e){var t=[];t.push(this.finalTransform);for(var i,r=!0,n=this.comp;r;)n.finalTransform?(n.data.hasMask&&t.splice(0,0,n.finalTransform),n=n.comp):r=!1;var o,a=t.length;for(i=0;i<a;i+=1)o=t[i].mat.applyToPointArray(0,0,0),e=[e[0]-o[0],e[1]-o[1],0];return e},mHelper:new Matrix},MaskElement.prototype.getMaskProperty=function(e){return this.viewData[e].prop},MaskElement.prototype.renderFrame=function(e){var t,i=this.element.finalTransform.mat,r=this.masksProperties.length;for(t=0;t<r;t+=1)if((this.viewData[t].prop._mdf||e)&&this.drawPath(this.masksProperties[t],this.viewData[t].prop.v,this.viewData[t]),(this.viewData[t].op._mdf||e)&&this.viewData[t].elem.setAttribute("fill-opacity",this.viewData[t].op.v),"n"!==this.masksProperties[t].mode&&(this.viewData[t].invRect&&(this.element.finalTransform.mProp._mdf||e)&&this.viewData[t].invRect.setAttribute("transform",i.getInverseMatrix().to2dCSS()),this.storedData[t].x&&(this.storedData[t].x._mdf||e))){var n=this.storedData[t].expan;this.storedData[t].x.v<0?("erode"!==this.storedData[t].lastOperator&&(this.storedData[t].lastOperator="erode",this.storedData[t].elem.setAttribute("filter","url("+getLocationHref()+"#"+this.storedData[t].filterId+")")),n.setAttribute("radius",-this.storedData[t].x.v)):("dilate"!==this.storedData[t].lastOperator&&(this.storedData[t].lastOperator="dilate",this.storedData[t].elem.setAttribute("filter",null)),this.storedData[t].elem.setAttribute("stroke-width",2*this.storedData[t].x.v))}},MaskElement.prototype.getMaskelement=function(){return this.maskElement},MaskElement.prototype.createLayerSolidPath=function(){var e="M0,0 ";return e+=" h"+this.globalData.compSize.w,e+=" v"+this.globalData.compSize.h,e+=" h-"+this.globalData.compSize.w,e+=" v-"+this.globalData.compSize.h+" "},MaskElement.prototype.drawPath=function(e,t,i){var r,n,o=" M"+t.v[0][0]+","+t.v[0][1];for(n=t._length,r=1;r<n;r+=1)o+=" C"+t.o[r-1][0]+","+t.o[r-1][1]+" "+t.i[r][0]+","+t.i[r][1]+" "+t.v[r][0]+","+t.v[r][1];if(t.c&&n>1&&(o+=" C"+t.o[r-1][0]+","+t.o[r-1][1]+" "+t.i[0][0]+","+t.i[0][1]+" "+t.v[0][0]+","+t.v[0][1]),i.lastPath!==o){var a="";i.elem&&(t.c&&(a=e.inv?this.solidPath+o:o),i.elem.setAttribute("d",a)),i.lastPath=o}},MaskElement.prototype.destroy=function(){this.element=null,this.globalData=null,this.maskElement=null,this.data=null,this.masksProperties=null};var filtersFactory=function(){var e={createFilter:function(e,t){var i=createNS("filter");return i.setAttribute("id",e),!0!==t&&(i.setAttribute("filterUnits","objectBoundingBox"),i.setAttribute("x","0%"),i.setAttribute("y","0%"),i.setAttribute("width","100%"),i.setAttribute("height","100%")),i},createAlphaToLuminanceFilter:function(){var e=createNS("feColorMatrix");return e.setAttribute("type","matrix"),e.setAttribute("color-interpolation-filters","sRGB"),e.setAttribute("values","0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1"),e}};return e}(),featureSupport=function(){var e={maskType:!0,svgLumaHidden:!0,offscreenCanvas:"undefined"!=typeof OffscreenCanvas};return(/MSIE 10/i.test(navigator.userAgent)||/MSIE 9/i.test(navigator.userAgent)||/rv:11.0/i.test(navigator.userAgent)||/Edge\/\d./i.test(navigator.userAgent))&&(e.maskType=!1),/firefox/i.test(navigator.userAgent)&&(e.svgLumaHidden=!1),e}(),registeredEffects$1={},idPrefix="filter_result_";function SVGEffects(e){var t,i,r="SourceGraphic",n=e.data.ef?e.data.ef.length:0,o=createElementID(),a=filtersFactory.createFilter(o,!0),s=0;for(this.filters=[],t=0;t<n;t+=1){i=null;var l=e.data.ef[t].ty;registeredEffects$1[l]&&(i=new(0,registeredEffects$1[l].effect)(a,e.effectsManager.effectElements[t],e,idPrefix+s,r),r=idPrefix+s,registeredEffects$1[l].countsAsEffect&&(s+=1)),i&&this.filters.push(i)}s&&(e.globalData.defs.appendChild(a),e.layerElement.setAttribute("filter","url("+getLocationHref()+"#"+o+")")),this.filters.length&&e.addRenderableComponent(this)}function registerEffect$1(e,t,i){registeredEffects$1[e]={effect:t,countsAsEffect:i}}function SVGBaseElement(){}function HierarchyElement(){}function RenderableDOMElement(){}function IImageElement(e,t,i){this.assetData=t.getAssetData(e.refId),this.assetData&&this.assetData.sid&&(this.assetData=t.slotManager.getProp(this.assetData)),this.initElement(e,t,i),this.sourceRect={top:0,left:0,width:this.assetData.w,height:this.assetData.h}}function ProcessedElement(e,t){this.elem=e,this.pos=t}function IShapeElement(){}SVGEffects.prototype.renderFrame=function(e){var t,i=this.filters.length;for(t=0;t<i;t+=1)this.filters[t].renderFrame(e)},SVGEffects.prototype.getEffects=function(e){var t,i=this.filters.length,r=[];for(t=0;t<i;t+=1)this.filters[t].type===e&&r.push(this.filters[t]);return r},SVGBaseElement.prototype={initRendererElement:function(){this.layerElement=createNS("g")},createContainerElements:function(){this.matteElement=createNS("g"),this.transformedElement=this.layerElement,this.maskedElement=this.layerElement,this._sizeChanged=!1;var e=null;if(this.data.td){this.matteMasks={};var t=createNS("g");t.setAttribute("id",this.layerId),t.appendChild(this.layerElement),e=t,this.globalData.defs.appendChild(t)}else this.data.tt?(this.matteElement.appendChild(this.layerElement),e=this.matteElement,this.baseElement=this.matteElement):this.baseElement=this.layerElement;if(this.data.ln&&this.layerElement.setAttribute("id",this.data.ln),this.data.cl&&this.layerElement.setAttribute("class",this.data.cl),0===this.data.ty&&!this.data.hd){var i=createNS("clipPath"),r=createNS("path");r.setAttribute("d","M0,0 L"+this.data.w+",0 L"+this.data.w+","+this.data.h+" L0,"+this.data.h+"z");var n=createElementID();if(i.setAttribute("id",n),i.appendChild(r),this.globalData.defs.appendChild(i),this.checkMasks()){var o=createNS("g");o.setAttribute("clip-path","url("+getLocationHref()+"#"+n+")"),o.appendChild(this.layerElement),this.transformedElement=o,e?e.appendChild(this.transformedElement):this.baseElement=this.transformedElement}else this.layerElement.setAttribute("clip-path","url("+getLocationHref()+"#"+n+")")}0!==this.data.bm&&this.setBlendMode()},renderElement:function(){this.finalTransform._localMatMdf&&this.transformedElement.setAttribute("transform",this.finalTransform.localMat.to2dCSS()),this.finalTransform._opMdf&&this.transformedElement.setAttribute("opacity",this.finalTransform.localOpacity)},destroyBaseElement:function(){this.layerElement=null,this.matteElement=null,this.maskManager.destroy()},getBaseElement:function(){return this.data.hd?null:this.baseElement},createRenderableComponents:function(){this.maskManager=new MaskElement(this.data,this,this.globalData),this.renderableEffectsManager=new SVGEffects(this),this.searchEffectTransforms()},getMatte:function(e){if(this.matteMasks||(this.matteMasks={}),!this.matteMasks[e]){var t,i,r,n,o=this.layerId+"_"+e;if(1===e||3===e){var a=createNS("mask");a.setAttribute("id",o),a.setAttribute("mask-type",3===e?"luminance":"alpha"),(r=createNS("use")).setAttributeNS("http://www.w3.org/1999/xlink","href","#"+this.layerId),a.appendChild(r),this.globalData.defs.appendChild(a),featureSupport.maskType||1!==e||(a.setAttribute("mask-type","luminance"),t=createElementID(),i=filtersFactory.createFilter(t),this.globalData.defs.appendChild(i),i.appendChild(filtersFactory.createAlphaToLuminanceFilter()),(n=createNS("g")).appendChild(r),a.appendChild(n),n.setAttribute("filter","url("+getLocationHref()+"#"+t+")"))}else if(2===e){var s=createNS("mask");s.setAttribute("id",o),s.setAttribute("mask-type","alpha");var l=createNS("g");s.appendChild(l),t=createElementID(),i=filtersFactory.createFilter(t);var c=createNS("feComponentTransfer");c.setAttribute("in","SourceGraphic"),i.appendChild(c);var d=createNS("feFuncA");d.setAttribute("type","table"),d.setAttribute("tableValues","1.0 0.0"),c.appendChild(d),this.globalData.defs.appendChild(i);var p=createNS("rect");p.setAttribute("width",this.comp.data.w),p.setAttribute("height",this.comp.data.h),p.setAttribute("x","0"),p.setAttribute("y","0"),p.setAttribute("fill","#ffffff"),p.setAttribute("opacity","0"),l.setAttribute("filter","url("+getLocationHref()+"#"+t+")"),l.appendChild(p),(r=createNS("use")).setAttributeNS("http://www.w3.org/1999/xlink","href","#"+this.layerId),l.appendChild(r),featureSupport.maskType||(s.setAttribute("mask-type","luminance"),i.appendChild(filtersFactory.createAlphaToLuminanceFilter()),n=createNS("g"),l.appendChild(p),n.appendChild(this.layerElement),l.appendChild(n)),this.globalData.defs.appendChild(s)}this.matteMasks[e]=o}return this.matteMasks[e]},setMatte:function(e){this.matteElement&&this.matteElement.setAttribute("mask","url("+getLocationHref()+"#"+e+")")}},HierarchyElement.prototype={initHierarchy:function(){this.hierarchy=[],this._isParent=!1,this.checkParenting()},setHierarchy:function(e){this.hierarchy=e},setAsParent:function(){this._isParent=!0},checkParenting:function(){void 0!==this.data.parent&&this.comp.buildElementParenting(this,this.data.parent,[])}},extendPrototype([RenderableElement,createProxyFunction({initElement:function(e,t,i){this.initFrame(),this.initBaseData(e,t,i),this.initTransform(e,t,i),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide()},hide:function(){this.hidden||this.isInRange&&!this.isTransparent||((this.baseElement||this.layerElement).style.display="none",this.hidden=!0)},show:function(){this.isInRange&&!this.isTransparent&&(this.data.hd||((this.baseElement||this.layerElement).style.display="block"),this.hidden=!1,this._isFirstFrame=!0)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderLocalTransform(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame=!1))},renderInnerContent:function(){},prepareFrame:function(e){this._mdf=!1,this.prepareRenderableFrame(e),this.prepareProperties(e,this.isInRange),this.checkTransparency()},destroy:function(){this.innerElem=null,this.destroyBaseElement()}})],RenderableDOMElement),extendPrototype([BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement],IImageElement),IImageElement.prototype.createContent=function(){var e=this.globalData.getAssetsPath(this.assetData);this.innerElem=createNS("image"),this.innerElem.setAttribute("width",this.assetData.w+"px"),this.innerElem.setAttribute("height",this.assetData.h+"px"),this.innerElem.setAttribute("preserveAspectRatio",this.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio),this.innerElem.setAttributeNS("http://www.w3.org/1999/xlink","href",e),this.layerElement.appendChild(this.innerElem)},IImageElement.prototype.sourceRectAtTime=function(){return this.sourceRect},IShapeElement.prototype={addShapeToModifiers:function(e){var t,i=this.shapeModifiers.length;for(t=0;t<i;t+=1)this.shapeModifiers[t].addShape(e)},isShapeInAnimatedModifiers:function(e){for(var t=this.shapeModifiers.length;0<t;)if(this.shapeModifiers[0].isAnimatedWithShape(e))return!0;return!1},renderModifiers:function(){if(this.shapeModifiers.length){var e,t=this.shapes.length;for(e=0;e<t;e+=1)this.shapes[e].sh.reset();for(e=(t=this.shapeModifiers.length)-1;e>=0&&!this.shapeModifiers[e].processShapes(this._isFirstFrame);e-=1);}},searchProcessedElement:function(e){for(var t=this.processedElements,i=0,r=t.length;i<r;){if(t[i].elem===e)return t[i].pos;i+=1}return 0},addProcessedElement:function(e,t){for(var i=this.processedElements,r=i.length;r;)if(i[r-=1].elem===e)return void(i[r].pos=t);i.push(new ProcessedElement(e,t))},prepareFrame:function(e){this.prepareRenderableFrame(e),this.prepareProperties(e,this.isInRange)}};var lineCapEnum={1:"butt",2:"round",3:"square"},lineJoinEnum={1:"miter",2:"round",3:"bevel"};function SVGShapeData(e,t,i){this.caches=[],this.styles=[],this.transformers=e,this.lStr="",this.sh=i,this.lvl=t,this._isAnimated=!!i.k;for(var r=0,n=e.length;r<n;){if(e[r].mProps.dynamicProperties.length){this._isAnimated=!0;break}r+=1}}function SVGStyleData(e,t){this.data=e,this.type=e.ty,this.d="",this.lvl=t,this._mdf=!1,this.closed=!0===e.hd,this.pElem=createNS("path"),this.msElem=null}function DashProperty(e,t,i,r){var n;this.elem=e,this.frameId=-1,this.dataProps=createSizedArray(t.length),this.renderer=i,this.k=!1,this.dashStr="",this.dashArray=createTypedArray("float32",t.length?t.length-1:0),this.dashoffset=createTypedArray("float32",1),this.initDynamicPropertyContainer(r);var o,a=t.length||0;for(n=0;n<a;n+=1)o=PropertyFactory.getProp(e,t[n].v,0,0,this),this.k=o.k||this.k,this.dataProps[n]={n:t[n].n,p:o};this.k||this.getValue(!0),this._isAnimated=this.k}function SVGStrokeStyleData(e,t,i){this.initDynamicPropertyContainer(e),this.getValue=this.iterateDynamicProperties,this.o=PropertyFactory.getProp(e,t.o,0,.01,this),this.w=PropertyFactory.getProp(e,t.w,0,null,this),this.d=new DashProperty(e,t.d||{},"svg",this),this.c=PropertyFactory.getProp(e,t.c,1,255,this),this.style=i,this._isAnimated=!!this._isAnimated}function SVGFillStyleData(e,t,i){this.initDynamicPropertyContainer(e),this.getValue=this.iterateDynamicProperties,this.o=PropertyFactory.getProp(e,t.o,0,.01,this),this.c=PropertyFactory.getProp(e,t.c,1,255,this),this.style=i}function SVGNoStyleData(e,t,i){this.initDynamicPropertyContainer(e),this.getValue=this.iterateDynamicProperties,this.style=i}function GradientProperty(e,t,i){this.data=t,this.c=createTypedArray("uint8c",4*t.p);var r=t.k.k[0].s?t.k.k[0].s.length-4*t.p:t.k.k.length-4*t.p;this.o=createTypedArray("float32",r),this._cmdf=!1,this._omdf=!1,this._collapsable=this.checkCollapsable(),this._hasOpacity=r,this.initDynamicPropertyContainer(i),this.prop=PropertyFactory.getProp(e,t.k,1,null,this),this.k=this.prop.k,this.getValue(!0)}function SVGGradientFillStyleData(e,t,i){this.initDynamicPropertyContainer(e),this.getValue=this.iterateDynamicProperties,this.initGradientData(e,t,i)}function SVGGradientStrokeStyleData(e,t,i){this.initDynamicPropertyContainer(e),this.getValue=this.iterateDynamicProperties,this.w=PropertyFactory.getProp(e,t.w,0,null,this),this.d=new DashProperty(e,t.d||{},"svg",this),this.initGradientData(e,t,i),this._isAnimated=!!this._isAnimated}function ShapeGroupData(){this.it=[],this.prevViewData=[],this.gr=createNS("g")}function SVGTransformData(e,t,i){this.transform={mProps:e,op:t,container:i},this.elements=[],this._isAnimated=this.transform.mProps.dynamicProperties.length||this.transform.op.effectsSequence.length}SVGShapeData.prototype.setAsAnimated=function(){this._isAnimated=!0},SVGStyleData.prototype.reset=function(){this.d="",this._mdf=!1},DashProperty.prototype.getValue=function(e){if((this.elem.globalData.frameId!==this.frameId||e)&&(this.frameId=this.elem.globalData.frameId,this.iterateDynamicProperties(),this._mdf=this._mdf||e,this._mdf)){var t=0,i=this.dataProps.length;for("svg"===this.renderer&&(this.dashStr=""),t=0;t<i;t+=1)"o"!==this.dataProps[t].n?"svg"===this.renderer?this.dashStr+=" "+this.dataProps[t].p.v:this.dashArray[t]=this.dataProps[t].p.v:this.dashoffset[0]=this.dataProps[t].p.v}},extendPrototype([DynamicPropertyContainer],DashProperty),extendPrototype([DynamicPropertyContainer],SVGStrokeStyleData),extendPrototype([DynamicPropertyContainer],SVGFillStyleData),extendPrototype([DynamicPropertyContainer],SVGNoStyleData),GradientProperty.prototype.comparePoints=function(e,t){for(var i=0,r=this.o.length/2;i<r;){if(Math.abs(e[4*i]-e[4*t+2*i])>.01)return!1;i+=1}return!0},GradientProperty.prototype.checkCollapsable=function(){if(this.o.length/2!=this.c.length/4)return!1;if(this.data.k.k[0].s)for(var e=0,t=this.data.k.k.length;e<t;){if(!this.comparePoints(this.data.k.k[e].s,this.data.p))return!1;e+=1}else if(!this.comparePoints(this.data.k.k,this.data.p))return!1;return!0},GradientProperty.prototype.getValue=function(e){if(this.prop.getValue(),this._mdf=!1,this._cmdf=!1,this._omdf=!1,this.prop._mdf||e){var t,i,r,n=4*this.data.p;for(t=0;t<n;t+=1)i=t%4==0?100:255,r=Math.round(this.prop.v[t]*i),this.c[t]!==r&&(this.c[t]=r,this._cmdf=!e);if(this.o.length)for(n=this.prop.v.length,t=4*this.data.p;t<n;t+=1)i=t%2==0?100:1,r=t%2==0?Math.round(100*this.prop.v[t]):this.prop.v[t],this.o[t-4*this.data.p]!==r&&(this.o[t-4*this.data.p]=r,this._omdf=!e);this._mdf=!e}},extendPrototype([DynamicPropertyContainer],GradientProperty),SVGGradientFillStyleData.prototype.initGradientData=function(e,t,i){this.o=PropertyFactory.getProp(e,t.o,0,.01,this),this.s=PropertyFactory.getProp(e,t.s,1,null,this),this.e=PropertyFactory.getProp(e,t.e,1,null,this),this.h=PropertyFactory.getProp(e,t.h||{k:0},0,.01,this),this.a=PropertyFactory.getProp(e,t.a||{k:0},0,degToRads,this),this.g=new GradientProperty(e,t.g,this),this.style=i,this.stops=[],this.setGradientData(i.pElem,t),this.setGradientOpacity(t,i),this._isAnimated=!!this._isAnimated},SVGGradientFillStyleData.prototype.setGradientData=function(e,t){var i=createElementID(),r=createNS(1===t.t?"linearGradient":"radialGradient");r.setAttribute("id",i),r.setAttribute("spreadMethod","pad"),r.setAttribute("gradientUnits","userSpaceOnUse");var n,o,a,s=[];for(a=4*t.g.p,o=0;o<a;o+=4)n=createNS("stop"),r.appendChild(n),s.push(n);e.setAttribute("gf"===t.ty?"fill":"stroke","url("+getLocationHref()+"#"+i+")"),this.gf=r,this.cst=s},SVGGradientFillStyleData.prototype.setGradientOpacity=function(e,t){if(this.g._hasOpacity&&!this.g._collapsable){var i,r,n,o=createNS("mask"),a=createNS("path");o.appendChild(a);var s=createElementID(),l=createElementID();o.setAttribute("id",l);var c=createNS(1===e.t?"linearGradient":"radialGradient");c.setAttribute("id",s),c.setAttribute("spreadMethod","pad"),c.setAttribute("gradientUnits","userSpaceOnUse"),n=e.g.k.k[0].s?e.g.k.k[0].s.length:e.g.k.k.length;var d=this.stops;for(r=4*e.g.p;r<n;r+=2)(i=createNS("stop")).setAttribute("stop-color","rgb(255,255,255)"),c.appendChild(i),d.push(i);a.setAttribute("gf"===e.ty?"fill":"stroke","url("+getLocationHref()+"#"+s+")"),"gs"===e.ty&&(a.setAttribute("stroke-linecap",lineCapEnum[e.lc||2]),a.setAttribute("stroke-linejoin",lineJoinEnum[e.lj||2]),1===e.lj&&a.setAttribute("stroke-miterlimit",e.ml)),this.of=c,this.ms=o,this.ost=d,this.maskId=l,t.msElem=a}},extendPrototype([DynamicPropertyContainer],SVGGradientFillStyleData),extendPrototype([SVGGradientFillStyleData,DynamicPropertyContainer],SVGGradientStrokeStyleData);var buildShapeString=function(e,t,i,r){if(0===t)return"";var n,o=e.o,a=e.i,s=e.v,l=" M"+r.applyToPointStringified(s[0][0],s[0][1]);for(n=1;n<t;n+=1)l+=" C"+r.applyToPointStringified(o[n-1][0],o[n-1][1])+" "+r.applyToPointStringified(a[n][0],a[n][1])+" "+r.applyToPointStringified(s[n][0],s[n][1]);return i&&t&&(l+=" C"+r.applyToPointStringified(o[n-1][0],o[n-1][1])+" "+r.applyToPointStringified(a[0][0],a[0][1])+" "+r.applyToPointStringified(s[0][0],s[0][1]),l+="z"),l},SVGElementsRenderer=function(){var e=new Matrix,t=new Matrix,i={createRenderFunction:function(e){switch(e.ty){case"fl":return a;case"gf":return l;case"gs":return s;case"st":return c;case"sh":case"el":case"rc":case"sr":return o;case"tr":return r;case"no":return n;default:return null}}};function r(e,t,i){(i||t.transform.op._mdf)&&t.transform.container.setAttribute("opacity",t.transform.op.v),(i||t.transform.mProps._mdf)&&t.transform.container.setAttribute("transform",t.transform.mProps.v.to2dCSS())}function n(){}function o(i,r,n){var o,a,s,l,c,d,p,g,u,m,h=r.styles.length,f=r.lvl;for(d=0;d<h;d+=1){if(l=r.sh._mdf||n,r.styles[d].lvl<f){for(g=t.reset(),u=f-r.styles[d].lvl,m=r.transformers.length-1;!l&&u>0;)l=r.transformers[m].mProps._mdf||l,u-=1,m-=1;if(l)for(u=f-r.styles[d].lvl,m=r.transformers.length-1;u>0;)g.multiply(r.transformers[m].mProps.v),u-=1,m-=1}else g=e;if(a=(p=r.sh.paths)._length,l){for(s="",o=0;o<a;o+=1)(c=p.shapes[o])&&c._length&&(s+=buildShapeString(c,c._length,c.c,g));r.caches[d]=s}else s=r.caches[d];r.styles[d].d+=!0===i.hd?"":s,r.styles[d]._mdf=l||r.styles[d]._mdf}}function a(e,t,i){var r=t.style;(t.c._mdf||i)&&r.pElem.setAttribute("fill","rgb("+bmFloor(t.c.v[0])+","+bmFloor(t.c.v[1])+","+bmFloor(t.c.v[2])+")"),(t.o._mdf||i)&&r.pElem.setAttribute("fill-opacity",t.o.v)}function s(e,t,i){l(e,t,i),c(0,t,i)}function l(e,t,i){var r,n,o,a,s,l=t.gf,c=t.g._hasOpacity,d=t.s.v,p=t.e.v;if(t.o._mdf||i){var g="gf"===e.ty?"fill-opacity":"stroke-opacity";t.style.pElem.setAttribute(g,t.o.v)}if(t.s._mdf||i){var u=1===e.t?"x1":"cx",m="x1"===u?"y1":"cy";l.setAttribute(u,d[0]),l.setAttribute(m,d[1]),c&&!t.g._collapsable&&(t.of.setAttribute(u,d[0]),t.of.setAttribute(m,d[1]))}if(t.g._cmdf||i){r=t.cst;var h=t.g.c;for(o=r.length,n=0;n<o;n+=1)(a=r[n]).setAttribute("offset",h[4*n]+"%"),a.setAttribute("stop-color","rgb("+h[4*n+1]+","+h[4*n+2]+","+h[4*n+3]+")")}if(c&&(t.g._omdf||i)){var f=t.g.o;for(o=(r=t.g._collapsable?t.cst:t.ost).length,n=0;n<o;n+=1)a=r[n],t.g._collapsable||a.setAttribute("offset",f[2*n]+"%"),a.setAttribute("stop-opacity",f[2*n+1])}if(1===e.t)(t.e._mdf||i)&&(l.setAttribute("x2",p[0]),l.setAttribute("y2",p[1]),c&&!t.g._collapsable&&(t.of.setAttribute("x2",p[0]),t.of.setAttribute("y2",p[1])));else if((t.s._mdf||t.e._mdf||i)&&(s=Math.sqrt(Math.pow(d[0]-p[0],2)+Math.pow(d[1]-p[1],2)),l.setAttribute("r",s),c&&!t.g._collapsable&&t.of.setAttribute("r",s)),t.s._mdf||t.e._mdf||t.h._mdf||t.a._mdf||i){s||(s=Math.sqrt(Math.pow(d[0]-p[0],2)+Math.pow(d[1]-p[1],2)));var y=Math.atan2(p[1]-d[1],p[0]-d[0]),b=t.h.v;b>=1?b=.99:b<=-1&&(b=-.99);var C=s*b,x=Math.cos(y+t.a.v)*C+d[0],v=Math.sin(y+t.a.v)*C+d[1];l.setAttribute("fx",x),l.setAttribute("fy",v),c&&!t.g._collapsable&&(t.of.setAttribute("fx",x),t.of.setAttribute("fy",v))}}function c(e,t,i){var r=t.style,n=t.d;n&&(n._mdf||i)&&n.dashStr&&(r.pElem.setAttribute("stroke-dasharray",n.dashStr),r.pElem.setAttribute("stroke-dashoffset",n.dashoffset[0])),t.c&&(t.c._mdf||i)&&r.pElem.setAttribute("stroke","rgb("+bmFloor(t.c.v[0])+","+bmFloor(t.c.v[1])+","+bmFloor(t.c.v[2])+")"),(t.o._mdf||i)&&r.pElem.setAttribute("stroke-opacity",t.o.v),(t.w._mdf||i)&&(r.pElem.setAttribute("stroke-width",t.w.v),r.msElem&&r.msElem.setAttribute("stroke-width",t.w.v))}return i}();function SVGShapeElement(e,t,i){this.shapes=[],this.shapesData=e.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.initElement(e,t,i),this.prevViewData=[]}function LetterProps(e,t,i,r,n,o){this.o=e,this.sw=t,this.sc=i,this.fc=r,this.m=n,this.p=o,this._mdf={o:!0,sw:!!t,sc:!!i,fc:!!r,m:!0,p:!0}}function TextProperty(e,t){this._frameId=initialDefaultFrame,this.pv="",this.v="",this.kf=!1,this._isFirstFrame=!0,this._mdf=!1,t.d&&t.d.sid&&(t.d=e.globalData.slotManager.getProp(t.d)),this.data=t,this.elem=e,this.comp=this.elem.comp,this.keysIndex=0,this.canResize=!1,this.minimumFontSize=1,this.effectsSequence=[],this.currentData={ascent:0,boxWidth:this.defaultBoxWidth,f:"",fStyle:"",fWeight:"",fc:"",j:"",justifyOffset:"",l:[],lh:0,lineWidths:[],ls:"",of:"",s:"",sc:"",sw:0,t:0,tr:0,sz:0,ps:null,fillColorAnim:!1,strokeColorAnim:!1,strokeWidthAnim:!1,yOffset:0,finalSize:0,finalText:[],finalLineHeight:0,__complete:!1},this.copyData(this.currentData,this.data.d.k[0].s),this.searchProperty()||this.completeTextData(this.currentData)}extendPrototype([BaseElement,TransformElement,SVGBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableDOMElement],SVGShapeElement),SVGShapeElement.prototype.initSecondaryElement=function(){},SVGShapeElement.prototype.identityMatrix=new Matrix,SVGShapeElement.prototype.buildExpressionInterface=function(){},SVGShapeElement.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes()},SVGShapeElement.prototype.filterUniqueShapes=function(){var e,t,i,r,n=this.shapes.length,o=this.stylesList.length,a=[],s=!1;for(i=0;i<o;i+=1){for(r=this.stylesList[i],s=!1,a.length=0,e=0;e<n;e+=1)-1!==(t=this.shapes[e]).styles.indexOf(r)&&(a.push(t),s=t._isAnimated||s);a.length>1&&s&&this.setShapesAsAnimated(a)}},SVGShapeElement.prototype.setShapesAsAnimated=function(e){var t,i=e.length;for(t=0;t<i;t+=1)e[t].setAsAnimated()},SVGShapeElement.prototype.createStyleElement=function(e,t){var i,r=new SVGStyleData(e,t),n=r.pElem;return"st"===e.ty?i=new SVGStrokeStyleData(this,e,r):"fl"===e.ty?i=new SVGFillStyleData(this,e,r):"gf"===e.ty||"gs"===e.ty?(i=new("gf"===e.ty?SVGGradientFillStyleData:SVGGradientStrokeStyleData)(this,e,r),this.globalData.defs.appendChild(i.gf),i.maskId&&(this.globalData.defs.appendChild(i.ms),this.globalData.defs.appendChild(i.of),n.setAttribute("mask","url("+getLocationHref()+"#"+i.maskId+")"))):"no"===e.ty&&(i=new SVGNoStyleData(this,e,r)),"st"!==e.ty&&"gs"!==e.ty||(n.setAttribute("stroke-linecap",lineCapEnum[e.lc||2]),n.setAttribute("stroke-linejoin",lineJoinEnum[e.lj||2]),n.setAttribute("fill-opacity","0"),1===e.lj&&n.setAttribute("stroke-miterlimit",e.ml)),2===e.r&&n.setAttribute("fill-rule","evenodd"),e.ln&&n.setAttribute("id",e.ln),e.cl&&n.setAttribute("class",e.cl),e.bm&&(n.style["mix-blend-mode"]=getBlendMode(e.bm)),this.stylesList.push(r),this.addToAnimatedContents(e,i),i},SVGShapeElement.prototype.createGroupElement=function(e){var t=new ShapeGroupData;return e.ln&&t.gr.setAttribute("id",e.ln),e.cl&&t.gr.setAttribute("class",e.cl),e.bm&&(t.gr.style["mix-blend-mode"]=getBlendMode(e.bm)),t},SVGShapeElement.prototype.createTransformElement=function(e,t){var i=TransformPropertyFactory.getTransformProperty(this,e,this),r=new SVGTransformData(i,i.o,t);return this.addToAnimatedContents(e,r),r},SVGShapeElement.prototype.createShapeElement=function(e,t,i){var r=4;"rc"===e.ty?r=5:"el"===e.ty?r=6:"sr"===e.ty&&(r=7);var n=new SVGShapeData(t,i,ShapePropertyFactory.getShapeProp(this,e,r,this));return this.shapes.push(n),this.addShapeToModifiers(n),this.addToAnimatedContents(e,n),n},SVGShapeElement.prototype.addToAnimatedContents=function(e,t){for(var i=0,r=this.animatedContents.length;i<r;){if(this.animatedContents[i].element===t)return;i+=1}this.animatedContents.push({fn:SVGElementsRenderer.createRenderFunction(e),element:t,data:e})},SVGShapeElement.prototype.setElementStyles=function(e){var t,i=e.styles,r=this.stylesList.length;for(t=0;t<r;t+=1)-1!==i.indexOf(this.stylesList[t])||this.stylesList[t].closed||i.push(this.stylesList[t])},SVGShapeElement.prototype.reloadShapes=function(){var e;this._isFirstFrame=!0;var t=this.itemsData.length;for(e=0;e<t;e+=1)this.prevViewData[e]=this.itemsData[e];for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.layerElement,0,[],!0),this.filterUniqueShapes(),t=this.dynamicProperties.length,e=0;e<t;e+=1)this.dynamicProperties[e].getValue();this.renderModifiers()},SVGShapeElement.prototype.searchShapes=function(e,t,i,r,n,o,a){var s,l,c,d,p,g,u=[].concat(o),m=e.length-1,h=[],f=[];for(s=m;s>=0;s-=1){if((g=this.searchProcessedElement(e[s]))?t[s]=i[g-1]:e[s]._render=a,"fl"===e[s].ty||"st"===e[s].ty||"gf"===e[s].ty||"gs"===e[s].ty||"no"===e[s].ty)g?t[s].style.closed=e[s].hd:t[s]=this.createStyleElement(e[s],n),e[s]._render&&t[s].style.pElem.parentNode!==r&&r.appendChild(t[s].style.pElem),h.push(t[s].style);else if("gr"===e[s].ty){if(g)for(c=t[s].it.length,l=0;l<c;l+=1)t[s].prevViewData[l]=t[s].it[l];else t[s]=this.createGroupElement(e[s]);this.searchShapes(e[s].it,t[s].it,t[s].prevViewData,t[s].gr,n+1,u,a),e[s]._render&&t[s].gr.parentNode!==r&&r.appendChild(t[s].gr)}else"tr"===e[s].ty?(g||(t[s]=this.createTransformElement(e[s],r)),d=t[s].transform,u.push(d)):"sh"===e[s].ty||"rc"===e[s].ty||"el"===e[s].ty||"sr"===e[s].ty?(g||(t[s]=this.createShapeElement(e[s],u,n)),this.setElementStyles(t[s])):"tm"===e[s].ty||"rd"===e[s].ty||"ms"===e[s].ty||"pb"===e[s].ty||"zz"===e[s].ty||"op"===e[s].ty?(g?(p=t[s]).closed=!1:((p=ShapeModifiers.getModifier(e[s].ty)).init(this,e[s]),t[s]=p,this.shapeModifiers.push(p)),f.push(p)):"rp"===e[s].ty&&(g?(p=t[s]).closed=!0:(p=ShapeModifiers.getModifier(e[s].ty),t[s]=p,p.init(this,e,s,t),this.shapeModifiers.push(p),a=!1),f.push(p));this.addProcessedElement(e[s],s+1)}for(m=h.length,s=0;s<m;s+=1)h[s].closed=!0;for(m=f.length,s=0;s<m;s+=1)f[s].closed=!0},SVGShapeElement.prototype.renderInnerContent=function(){var e;this.renderModifiers();var t=this.stylesList.length;for(e=0;e<t;e+=1)this.stylesList[e].reset();for(this.renderShape(),e=0;e<t;e+=1)(this.stylesList[e]._mdf||this._isFirstFrame)&&(this.stylesList[e].msElem&&(this.stylesList[e].msElem.setAttribute("d",this.stylesList[e].d),this.stylesList[e].d="M0 0"+this.stylesList[e].d),this.stylesList[e].pElem.setAttribute("d",this.stylesList[e].d||"M0 0"))},SVGShapeElement.prototype.renderShape=function(){var e,t,i=this.animatedContents.length;for(e=0;e<i;e+=1)t=this.animatedContents[e],(this._isFirstFrame||t.element._isAnimated)&&!0!==t.data&&t.fn(t.data,t.element,this._isFirstFrame)},SVGShapeElement.prototype.destroy=function(){this.destroyBaseElement(),this.shapesData=null,this.itemsData=null},LetterProps.prototype.update=function(e,t,i,r,n,o){this._mdf.o=!1,this._mdf.sw=!1,this._mdf.sc=!1,this._mdf.fc=!1,this._mdf.m=!1,this._mdf.p=!1;var a=!1;return this.o!==e&&(this.o=e,this._mdf.o=!0,a=!0),this.sw!==t&&(this.sw=t,this._mdf.sw=!0,a=!0),this.sc!==i&&(this.sc=i,this._mdf.sc=!0,a=!0),this.fc!==r&&(this.fc=r,this._mdf.fc=!0,a=!0),this.m!==n&&(this.m=n,this._mdf.m=!0,a=!0),!o.length||this.p[0]===o[0]&&this.p[1]===o[1]&&this.p[4]===o[4]&&this.p[5]===o[5]&&this.p[12]===o[12]&&this.p[13]===o[13]||(this.p=o,this._mdf.p=!0,a=!0),a},TextProperty.prototype.defaultBoxWidth=[0,0],TextProperty.prototype.copyData=function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},TextProperty.prototype.setCurrentData=function(e){e.__complete||this.completeTextData(e),this.currentData=e,this.currentData.boxWidth=this.currentData.boxWidth||this.defaultBoxWidth,this._mdf=!0},TextProperty.prototype.searchProperty=function(){return this.searchKeyframes()},TextProperty.prototype.searchKeyframes=function(){return this.kf=this.data.d.k.length>1,this.kf&&this.addEffect(this.getKeyframeValue.bind(this)),this.kf},TextProperty.prototype.addEffect=function(e){this.effectsSequence.push(e),this.elem.addDynamicProperty(this)},TextProperty.prototype.getValue=function(e){if(this.elem.globalData.frameId!==this.frameId&&this.effectsSequence.length||e){this.currentData.t=this.data.d.k[this.keysIndex].s.t;var t=this.currentData,i=this.keysIndex;if(this.lock)this.setCurrentData(this.currentData);else{var r;this.lock=!0,this._mdf=!1;var n=this.effectsSequence.length,o=e||this.data.d.k[this.keysIndex].s;for(r=0;r<n;r+=1)o=i!==this.keysIndex?this.effectsSequence[r](o,o.t):this.effectsSequence[r](this.currentData,o.t);t!==o&&this.setCurrentData(o),this.v=this.currentData,this.pv=this.v,this.lock=!1,this.frameId=this.elem.globalData.frameId}}},TextProperty.prototype.getKeyframeValue=function(){for(var e=this.data.d.k,t=this.elem.comp.renderedFrame,i=0,r=e.length;i<=r-1&&!(i===r-1||e[i+1].t>t);)i+=1;return this.keysIndex!==i&&(this.keysIndex=i),this.data.d.k[this.keysIndex].s},TextProperty.prototype.buildFinalText=function(e){for(var t,i,r=[],n=0,o=e.length,a=!1,s=!1,l="";n<o;)a=s,s=!1,t=e.charCodeAt(n),l=e.charAt(n),FontManager.isCombinedCharacter(t)?a=!0:t>=55296&&t<=56319?FontManager.isRegionalFlag(e,n)?l=e.substr(n,14):(i=e.charCodeAt(n+1))>=56320&&i<=57343&&(FontManager.isModifier(t,i)?(l=e.substr(n,2),a=!0):l=FontManager.isFlagEmoji(e.substr(n,4))?e.substr(n,4):e.substr(n,2)):t>56319?(i=e.charCodeAt(n+1),FontManager.isVariationSelector(t)&&(a=!0)):FontManager.isZeroWidthJoiner(t)&&(a=!0,s=!0),a?(r[r.length-1]+=l,a=!1):r.push(l),n+=l.length;return r},TextProperty.prototype.completeTextData=function(e){e.__complete=!0;var t,i,r,n,o,a,s,l=this.elem.globalData.fontManager,c=this.data,d=[],p=0,g=c.m.g,u=0,m=0,h=0,f=[],y=0,b=0,C=l.getFontByName(e.f),x=0,v=getFontProperties(C);e.fWeight=v.weight,e.fStyle=v.style,e.finalSize=e.s,e.finalText=this.buildFinalText(e.t),i=e.finalText.length,e.finalLineHeight=e.lh;var S,w=e.tr/1e3*e.finalSize;if(e.sz)for(var k,T,_=!0,R=e.sz[0],O=e.sz[1];_;){k=0,y=0,i=(T=this.buildFinalText(e.t)).length,w=e.tr/1e3*e.finalSize;var I=-1;for(t=0;t<i;t+=1)S=T[t].charCodeAt(0),r=!1," "===T[t]?I=t:13!==S&&3!==S||(y=0,r=!0,k+=e.finalLineHeight||1.2*e.finalSize),l.chars?(s=l.getCharData(T[t],C.fStyle,C.fFamily),x=r?0:s.w*e.finalSize/100):x=l.measureText(T[t],e.f,e.finalSize),y+x>R&&" "!==T[t]?(-1===I?i+=1:t=I,k+=e.finalLineHeight||1.2*e.finalSize,T.splice(t,I===t?1:0,"\r"),I=-1,y=0):(y+=x,y+=w);k+=C.ascent*e.finalSize/100,this.canResize&&e.finalSize>this.minimumFontSize&&O<k?(e.finalSize-=1,e.finalLineHeight=e.finalSize*e.lh/e.s):(e.finalText=T,i=e.finalText.length,_=!1)}y=-w,x=0;var M,j=0;for(t=0;t<i;t+=1)if(r=!1,13===(S=(M=e.finalText[t]).charCodeAt(0))||3===S?(j=0,f.push(y),b=y>b?y:b,y=-2*w,n="",r=!0,h+=1):n=M,l.chars?(s=l.getCharData(M,C.fStyle,l.getFontByName(e.f).fFamily),x=r?0:s.w*e.finalSize/100):x=l.measureText(n,e.f,e.finalSize)," "===M?j+=x+w:(y+=x+w+j,j=0),d.push({l:x,an:x,add:u,n:r,anIndexes:[],val:n,line:h,animatorJustifyOffset:0}),2==g){if(u+=x,""===n||" "===n||t===i-1){for(""!==n&&" "!==n||(u-=x);m<=t;)d[m].an=u,d[m].ind=p,d[m].extra=x,m+=1;p+=1,u=0}}else if(3==g){if(u+=x,""===n||t===i-1){for(""===n&&(u-=x);m<=t;)d[m].an=u,d[m].ind=p,d[m].extra=x,m+=1;u=0,p+=1}}else d[p].ind=p,d[p].extra=0,p+=1;if(e.l=d,b=y>b?y:b,f.push(y),e.sz)e.boxWidth=e.sz[0],e.justifyOffset=0;else switch(e.boxWidth=b,e.j){case 1:e.justifyOffset=-e.boxWidth;break;case 2:e.justifyOffset=-e.boxWidth/2;break;default:e.justifyOffset=0}e.lineWidths=f;var P,E,L,z,D=c.a;a=D.length;var B=[];for(o=0;o<a;o+=1){for((P=D[o]).a.sc&&(e.strokeColorAnim=!0),P.a.sw&&(e.strokeWidthAnim=!0),(P.a.fc||P.a.fh||P.a.fs||P.a.fb)&&(e.fillColorAnim=!0),z=0,L=P.s.b,t=0;t<i;t+=1)(E=d[t]).anIndexes[o]=z,(1==L&&""!==E.val||2==L&&""!==E.val&&" "!==E.val||3==L&&(E.n||" "==E.val||t==i-1)||4==L&&(E.n||t==i-1))&&(1===P.s.rn&&B.push(z),z+=1);c.a[o].s.totalChars=z;var A,V=-1;if(1===P.s.rn)for(t=0;t<i;t+=1)V!=(E=d[t]).anIndexes[o]&&(V=E.anIndexes[o],A=B.splice(Math.floor(Math.random()*B.length),1)[0]),E.anIndexes[o]=A}e.yOffset=e.finalLineHeight||1.2*e.finalSize,e.ls=e.ls||0,e.ascent=C.ascent*e.finalSize/100},TextProperty.prototype.updateDocumentData=function(e,t){t=void 0===t?this.keysIndex:t;var i=this.copyData({},this.data.d.k[t].s);i=this.copyData(i,e),this.data.d.k[t].s=i,this.recalculate(t),this.setCurrentData(i),this.elem.addDynamicProperty(this)},TextProperty.prototype.recalculate=function(e){var t=this.data.d.k[e].s;t.__complete=!1,this.keysIndex=0,this._isFirstFrame=!0,this.getValue(t)},TextProperty.prototype.canResizeFont=function(e){this.canResize=e,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)},TextProperty.prototype.setMinimumFontSize=function(e){this.minimumFontSize=Math.floor(e)||1,this.recalculate(this.keysIndex),this.elem.addDynamicProperty(this)};var TextSelectorProp=function(){var e=Math.max,t=Math.min,i=Math.floor;function r(e,t){this._currentTextLength=-1,this.k=!1,this.data=t,this.elem=e,this.comp=e.comp,this.finalS=0,this.finalE=0,this.initDynamicPropertyContainer(e),this.s=PropertyFactory.getProp(e,t.s||{k:0},0,0,this),this.e="e"in t?PropertyFactory.getProp(e,t.e,0,0,this):{v:100},this.o=PropertyFactory.getProp(e,t.o||{k:0},0,0,this),this.xe=PropertyFactory.getProp(e,t.xe||{k:0},0,0,this),this.ne=PropertyFactory.getProp(e,t.ne||{k:0},0,0,this),this.sm=PropertyFactory.getProp(e,t.sm||{k:100},0,0,this),this.a=PropertyFactory.getProp(e,t.a,0,.01,this),this.dynamicProperties.length||this.getValue()}return r.prototype={getMult:function(r){this._currentTextLength!==this.elem.textProperty.currentData.l.length&&this.getValue();var n=0,o=0,a=1,s=1;this.ne.v>0?n=this.ne.v/100:o=-this.ne.v/100,this.xe.v>0?a=1-this.xe.v/100:s=1+this.xe.v/100;var l=BezierFactory.getBezierEasing(n,o,a,s).get,c=0,d=this.finalS,p=this.finalE,g=this.data.sh;if(2===g)c=l(c=p===d?r>=p?1:0:e(0,t(.5/(p-d)+(r-d)/(p-d),1)));else if(3===g)c=l(c=p===d?r>=p?0:1:1-e(0,t(.5/(p-d)+(r-d)/(p-d),1)));else if(4===g)p===d?c=0:(c=e(0,t(.5/(p-d)+(r-d)/(p-d),1)))<.5?c*=2:c=1-2*(c-.5),c=l(c);else if(5===g){if(p===d)c=0;else{var u=p-d,m=-u/2+(r=t(e(0,r+.5-d),p-d)),h=u/2;c=Math.sqrt(1-m*m/(h*h))}c=l(c)}else 6===g?(p===d?c=0:(r=t(e(0,r+.5-d),p-d),c=(1+Math.cos(Math.PI+2*Math.PI*r/(p-d)))/2),c=l(c)):(r>=i(d)&&(c=e(0,t(r-d<0?t(p,1)-(d-r):p-r,1))),c=l(c));if(100!==this.sm.v){var f=.01*this.sm.v;0===f&&(f=1e-8);var y=.5-.5*f;c<y?c=0:(c=(c-y)/f)>1&&(c=1)}return c*this.a.v},getValue:function(e){this.iterateDynamicProperties(),this._mdf=e||this._mdf,this._currentTextLength=this.elem.textProperty.currentData.l.length||0,e&&2===this.data.r&&(this.e.v=this._currentTextLength);var t=2===this.data.r?1:100/this.data.totalChars,i=this.o.v/t,r=this.s.v/t+i,n=this.e.v/t+i;if(r>n){var o=r;r=n,n=o}this.finalS=r,this.finalE=n}},extendPrototype([DynamicPropertyContainer],r),{getTextSelectorProp:function(e,t,i){return new r(e,t)}}}();function TextAnimatorDataProperty(e,t,i){var r={propType:!1},n=PropertyFactory.getProp,o=t.a;this.a={r:o.r?n(e,o.r,0,degToRads,i):r,rx:o.rx?n(e,o.rx,0,degToRads,i):r,ry:o.ry?n(e,o.ry,0,degToRads,i):r,sk:o.sk?n(e,o.sk,0,degToRads,i):r,sa:o.sa?n(e,o.sa,0,degToRads,i):r,s:o.s?n(e,o.s,1,.01,i):r,a:o.a?n(e,o.a,1,0,i):r,o:o.o?n(e,o.o,0,.01,i):r,p:o.p?n(e,o.p,1,0,i):r,sw:o.sw?n(e,o.sw,0,0,i):r,sc:o.sc?n(e,o.sc,1,0,i):r,fc:o.fc?n(e,o.fc,1,0,i):r,fh:o.fh?n(e,o.fh,0,0,i):r,fs:o.fs?n(e,o.fs,0,.01,i):r,fb:o.fb?n(e,o.fb,0,.01,i):r,t:o.t?n(e,o.t,0,0,i):r},this.s=TextSelectorProp.getTextSelectorProp(e,t.s,i),this.s.t=t.s.t}function TextAnimatorProperty(e,t,i){this._isFirstFrame=!0,this._hasMaskedPath=!1,this._frameId=-1,this._textData=e,this._renderType=t,this._elem=i,this._animatorsData=createSizedArray(this._textData.a.length),this._pathData={},this._moreOptions={alignment:{}},this.renderedLetters=[],this.lettersChangedFlag=!1,this.initDynamicPropertyContainer(i)}function ITextElement(){}TextAnimatorProperty.prototype.searchProperties=function(){var e,t,i=this._textData.a.length,r=PropertyFactory.getProp;for(e=0;e<i;e+=1)t=this._textData.a[e],this._animatorsData[e]=new TextAnimatorDataProperty(this._elem,t,this);this._textData.p&&"m"in this._textData.p?(this._pathData={a:r(this._elem,this._textData.p.a,0,0,this),f:r(this._elem,this._textData.p.f,0,0,this),l:r(this._elem,this._textData.p.l,0,0,this),r:r(this._elem,this._textData.p.r,0,0,this),p:r(this._elem,this._textData.p.p,0,0,this),m:this._elem.maskManager.getMaskProperty(this._textData.p.m)},this._hasMaskedPath=!0):this._hasMaskedPath=!1,this._moreOptions.alignment=r(this._elem,this._textData.m.a,1,0,this)},TextAnimatorProperty.prototype.getMeasures=function(e,t){if(this.lettersChangedFlag=t,this._mdf||this._isFirstFrame||t||this._hasMaskedPath&&this._pathData.m._mdf){this._isFirstFrame=!1;var i,r,n,o,a,s,l,c,d,p,g,u,m,h,f,y,b,C,x,v=this._moreOptions.alignment.v,S=this._animatorsData,w=this._textData,k=this.mHelper,T=this._renderType,_=this.renderedLetters.length,R=e.l;if(this._hasMaskedPath){if(x=this._pathData.m,!this._pathData.n||this._pathData._mdf){var O,I=x.v;for(this._pathData.r.v&&(I=I.reverse()),a={tLength:0,segments:[]},o=I._length-1,y=0,n=0;n<o;n+=1)O=bez.buildBezierData(I.v[n],I.v[n+1],[I.o[n][0]-I.v[n][0],I.o[n][1]-I.v[n][1]],[I.i[n+1][0]-I.v[n+1][0],I.i[n+1][1]-I.v[n+1][1]]),a.tLength+=O.segmentLength,a.segments.push(O),y+=O.segmentLength;n=o,x.v.c&&(O=bez.buildBezierData(I.v[n],I.v[0],[I.o[n][0]-I.v[n][0],I.o[n][1]-I.v[n][1]],[I.i[0][0]-I.v[0][0],I.i[0][1]-I.v[0][1]]),a.tLength+=O.segmentLength,a.segments.push(O),y+=O.segmentLength),this._pathData.pi=a}if(a=this._pathData.pi,s=this._pathData.f.v,g=0,p=1,c=0,d=!0,h=a.segments,s<0&&x.v.c)for(a.tLength<Math.abs(s)&&(s=-Math.abs(s)%a.tLength),p=(m=h[g=h.length-1].points).length-1;s<0;)s+=m[p].partialLength,(p-=1)<0&&(p=(m=h[g-=1].points).length-1);u=(m=h[g].points)[p-1],f=(l=m[p]).partialLength}o=R.length,i=0,r=0;var M,j,P,E,L,z=1.2*e.finalSize*.714,D=!0;P=S.length;var B,A,V,N,F,H,W,$,U,G,K,Y,Z=-1,q=s,X=g,J=p,Q=-1,ee="",te=this.defaultPropsArray;if(2===e.j||1===e.j){var ie=0,re=0,ne=2===e.j?-.5:-1,oe=0,ae=!0;for(n=0;n<o;n+=1)if(R[n].n){for(ie&&(ie+=re);oe<n;)R[oe].animatorJustifyOffset=ie,oe+=1;ie=0,ae=!0}else{for(j=0;j<P;j+=1)(M=S[j].a).t.propType&&(ae&&2===e.j&&(re+=M.t.v*ne),(L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars)).length?ie+=M.t.v*L[0]*ne:ie+=M.t.v*L*ne);ae=!1}for(ie&&(ie+=re);oe<n;)R[oe].animatorJustifyOffset=ie,oe+=1}for(n=0;n<o;n+=1){if(k.reset(),N=1,R[n].n)i=0,r+=e.yOffset,r+=D?1:0,s=q,D=!1,this._hasMaskedPath&&(p=J,u=(m=h[g=X].points)[p-1],f=(l=m[p]).partialLength,c=0),ee="",K="",U="",Y="",te=this.defaultPropsArray;else{if(this._hasMaskedPath){if(Q!==R[n].line){switch(e.j){case 1:s+=y-e.lineWidths[R[n].line];break;case 2:s+=(y-e.lineWidths[R[n].line])/2}Q=R[n].line}Z!==R[n].ind&&(R[Z]&&(s+=R[Z].extra),s+=R[n].an/2,Z=R[n].ind),s+=v[0]*R[n].an*.005;var se=0;for(j=0;j<P;j+=1)(M=S[j].a).p.propType&&((L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars)).length?se+=M.p.v[0]*L[0]:se+=M.p.v[0]*L),M.a.propType&&((L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars)).length?se+=M.a.v[0]*L[0]:se+=M.a.v[0]*L);for(d=!0,this._pathData.a.v&&(s=.5*R[0].an+(y-this._pathData.f.v-.5*R[0].an-.5*R[R.length-1].an)*Z/(o-1),s+=this._pathData.f.v);d;)c+f>=s+se||!m?(b=(s+se-c)/l.partialLength,A=u.point[0]+(l.point[0]-u.point[0])*b,V=u.point[1]+(l.point[1]-u.point[1])*b,k.translate(-v[0]*R[n].an*.005,-v[1]*z*.01),d=!1):m&&(c+=l.partialLength,(p+=1)>=m.length&&(p=0,h[g+=1]?m=h[g].points:x.v.c?(p=0,m=h[g=0].points):(c-=l.partialLength,m=null)),m&&(u=l,f=(l=m[p]).partialLength));B=R[n].an/2-R[n].add,k.translate(-B,0,0)}else B=R[n].an/2-R[n].add,k.translate(-B,0,0),k.translate(-v[0]*R[n].an*.005,-v[1]*z*.01,0);for(j=0;j<P;j+=1)(M=S[j].a).t.propType&&(L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars),0===i&&0===e.j||(this._hasMaskedPath?L.length?s+=M.t.v*L[0]:s+=M.t.v*L:L.length?i+=M.t.v*L[0]:i+=M.t.v*L));for(e.strokeWidthAnim&&(H=e.sw||0),e.strokeColorAnim&&(F=e.sc?[e.sc[0],e.sc[1],e.sc[2]]:[0,0,0]),e.fillColorAnim&&e.fc&&(W=[e.fc[0],e.fc[1],e.fc[2]]),j=0;j<P;j+=1)(M=S[j].a).a.propType&&((L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars)).length?k.translate(-M.a.v[0]*L[0],-M.a.v[1]*L[1],M.a.v[2]*L[2]):k.translate(-M.a.v[0]*L,-M.a.v[1]*L,M.a.v[2]*L));for(j=0;j<P;j+=1)(M=S[j].a).s.propType&&((L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars)).length?k.scale(1+(M.s.v[0]-1)*L[0],1+(M.s.v[1]-1)*L[1],1):k.scale(1+(M.s.v[0]-1)*L,1+(M.s.v[1]-1)*L,1));for(j=0;j<P;j+=1){if(M=S[j].a,L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars),M.sk.propType&&(L.length?k.skewFromAxis(-M.sk.v*L[0],M.sa.v*L[1]):k.skewFromAxis(-M.sk.v*L,M.sa.v*L)),M.r.propType&&(L.length?k.rotateZ(-M.r.v*L[2]):k.rotateZ(-M.r.v*L)),M.ry.propType&&(L.length?k.rotateY(M.ry.v*L[1]):k.rotateY(M.ry.v*L)),M.rx.propType&&(L.length?k.rotateX(M.rx.v*L[0]):k.rotateX(M.rx.v*L)),M.o.propType&&(L.length?N+=(M.o.v*L[0]-N)*L[0]:N+=(M.o.v*L-N)*L),e.strokeWidthAnim&&M.sw.propType&&(L.length?H+=M.sw.v*L[0]:H+=M.sw.v*L),e.strokeColorAnim&&M.sc.propType)for($=0;$<3;$+=1)L.length?F[$]+=(M.sc.v[$]-F[$])*L[0]:F[$]+=(M.sc.v[$]-F[$])*L;if(e.fillColorAnim&&e.fc){if(M.fc.propType)for($=0;$<3;$+=1)L.length?W[$]+=(M.fc.v[$]-W[$])*L[0]:W[$]+=(M.fc.v[$]-W[$])*L;M.fh.propType&&(W=L.length?addHueToRGB(W,M.fh.v*L[0]):addHueToRGB(W,M.fh.v*L)),M.fs.propType&&(W=L.length?addSaturationToRGB(W,M.fs.v*L[0]):addSaturationToRGB(W,M.fs.v*L)),M.fb.propType&&(W=L.length?addBrightnessToRGB(W,M.fb.v*L[0]):addBrightnessToRGB(W,M.fb.v*L))}}for(j=0;j<P;j+=1)(M=S[j].a).p.propType&&(L=S[j].s.getMult(R[n].anIndexes[j],w.a[j].s.totalChars),this._hasMaskedPath?L.length?k.translate(0,M.p.v[1]*L[0],-M.p.v[2]*L[1]):k.translate(0,M.p.v[1]*L,-M.p.v[2]*L):L.length?k.translate(M.p.v[0]*L[0],M.p.v[1]*L[1],-M.p.v[2]*L[2]):k.translate(M.p.v[0]*L,M.p.v[1]*L,-M.p.v[2]*L));if(e.strokeWidthAnim&&(U=H<0?0:H),e.strokeColorAnim&&(G="rgb("+Math.round(255*F[0])+","+Math.round(255*F[1])+","+Math.round(255*F[2])+")"),e.fillColorAnim&&e.fc&&(K="rgb("+Math.round(255*W[0])+","+Math.round(255*W[1])+","+Math.round(255*W[2])+")"),this._hasMaskedPath){if(k.translate(0,-e.ls),k.translate(0,v[1]*z*.01+r,0),this._pathData.p.v){C=(l.point[1]-u.point[1])/(l.point[0]-u.point[0]);var le=180*Math.atan(C)/Math.PI;l.point[0]<u.point[0]&&(le+=180),k.rotate(-le*Math.PI/180)}k.translate(A,V,0),s-=v[0]*R[n].an*.005,R[n+1]&&Z!==R[n+1].ind&&(s+=R[n].an/2,s+=.001*e.tr*e.finalSize)}else{switch(k.translate(i,r,0),e.ps&&k.translate(e.ps[0],e.ps[1]+e.ascent,0),e.j){case 1:k.translate(R[n].animatorJustifyOffset+e.justifyOffset+(e.boxWidth-e.lineWidths[R[n].line]),0,0);break;case 2:k.translate(R[n].animatorJustifyOffset+e.justifyOffset+(e.boxWidth-e.lineWidths[R[n].line])/2,0,0)}k.translate(0,-e.ls),k.translate(B,0,0),k.translate(v[0]*R[n].an*.005,v[1]*z*.01,0),i+=R[n].l+.001*e.tr*e.finalSize}"html"===T?ee=k.toCSS():"svg"===T?ee=k.to2dCSS():te=[k.props[0],k.props[1],k.props[2],k.props[3],k.props[4],k.props[5],k.props[6],k.props[7],k.props[8],k.props[9],k.props[10],k.props[11],k.props[12],k.props[13],k.props[14],k.props[15]],Y=N}_<=n?(E=new LetterProps(Y,U,G,K,ee,te),this.renderedLetters.push(E),_+=1,this.lettersChangedFlag=!0):(E=this.renderedLetters[n],this.lettersChangedFlag=E.update(Y,U,G,K,ee,te)||this.lettersChangedFlag)}}},TextAnimatorProperty.prototype.getValue=function(){this._elem.globalData.frameId!==this._frameId&&(this._frameId=this._elem.globalData.frameId,this.iterateDynamicProperties())},TextAnimatorProperty.prototype.mHelper=new Matrix,TextAnimatorProperty.prototype.defaultPropsArray=[],extendPrototype([DynamicPropertyContainer],TextAnimatorProperty),ITextElement.prototype.initElement=function(e,t,i){this.lettersChangedFlag=!0,this.initFrame(),this.initBaseData(e,t,i),this.textProperty=new TextProperty(this,e.t,this.dynamicProperties),this.textAnimator=new TextAnimatorProperty(e.t,this.renderType,this),this.initTransform(e,t,i),this.initHierarchy(),this.initRenderable(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),this.createContent(),this.hide(),this.textAnimator.searchProperties(this.dynamicProperties)},ITextElement.prototype.prepareFrame=function(e){this._mdf=!1,this.prepareRenderableFrame(e),this.prepareProperties(e,this.isInRange)},ITextElement.prototype.createPathShape=function(e,t){var i,r,n=t.length,o="";for(i=0;i<n;i+=1)"sh"===t[i].ty&&(r=t[i].ks.k,o+=buildShapeString(r,r.i.length,!0,e));return o},ITextElement.prototype.updateDocumentData=function(e,t){this.textProperty.updateDocumentData(e,t)},ITextElement.prototype.canResizeFont=function(e){this.textProperty.canResizeFont(e)},ITextElement.prototype.setMinimumFontSize=function(e){this.textProperty.setMinimumFontSize(e)},ITextElement.prototype.applyTextPropertiesToMatrix=function(e,t,i,r,n){switch(e.ps&&t.translate(e.ps[0],e.ps[1]+e.ascent,0),t.translate(0,-e.ls,0),e.j){case 1:t.translate(e.justifyOffset+(e.boxWidth-e.lineWidths[i]),0,0);break;case 2:t.translate(e.justifyOffset+(e.boxWidth-e.lineWidths[i])/2,0,0)}t.translate(r,n,0)},ITextElement.prototype.buildColor=function(e){return"rgb("+Math.round(255*e[0])+","+Math.round(255*e[1])+","+Math.round(255*e[2])+")"},ITextElement.prototype.emptyProp=new LetterProps,ITextElement.prototype.destroy=function(){},ITextElement.prototype.validateText=function(){(this.textProperty._mdf||this.textProperty._isFirstFrame)&&(this.buildNewText(),this.textProperty._isFirstFrame=!1,this.textProperty._mdf=!1)};var emptyShapeData={shapes:[]};function SVGTextLottieElement(e,t,i){this.textSpans=[],this.renderType="svg",this.initElement(e,t,i)}function ISolidElement(e,t,i){this.initElement(e,t,i)}function NullElement(e,t,i){this.initFrame(),this.initBaseData(e,t,i),this.initFrame(),this.initTransform(e,t,i),this.initHierarchy()}function SVGRendererBase(){}function ICompElement(){}function SVGCompElement(e,t,i){this.layers=e.layers,this.supports3d=!0,this.completeLayers=!1,this.pendingElements=[],this.elements=this.layers?createSizedArray(this.layers.length):[],this.initElement(e,t,i),this.tm=e.tm?PropertyFactory.getProp(this,e.tm,0,t.frameRate,this):{_placeholder:!0}}function SVGRenderer(e,t){this.animationItem=e,this.layers=null,this.renderedFrame=-1,this.svgElement=createNS("svg");var i="";if(t&&t.title){var r=createNS("title"),n=createElementID();r.setAttribute("id",n),r.textContent=t.title,this.svgElement.appendChild(r),i+=n}if(t&&t.description){var o=createNS("desc"),a=createElementID();o.setAttribute("id",a),o.textContent=t.description,this.svgElement.appendChild(o),i+=" "+a}i&&this.svgElement.setAttribute("aria-labelledby",i);var s=createNS("defs");this.svgElement.appendChild(s);var l=createNS("g");this.svgElement.appendChild(l),this.layerElement=l,this.renderConfig={preserveAspectRatio:t&&t.preserveAspectRatio||"xMidYMid meet",imagePreserveAspectRatio:t&&t.imagePreserveAspectRatio||"xMidYMid slice",contentVisibility:t&&t.contentVisibility||"visible",progressiveLoad:t&&t.progressiveLoad||!1,hideOnTransparent:!(t&&!1===t.hideOnTransparent),viewBoxOnly:t&&t.viewBoxOnly||!1,viewBoxSize:t&&t.viewBoxSize||!1,className:t&&t.className||"",id:t&&t.id||"",focusable:t&&t.focusable,filterSize:{width:t&&t.filterSize&&t.filterSize.width||"100%",height:t&&t.filterSize&&t.filterSize.height||"100%",x:t&&t.filterSize&&t.filterSize.x||"0%",y:t&&t.filterSize&&t.filterSize.y||"0%"},width:t&&t.width,height:t&&t.height,runExpressions:!t||void 0===t.runExpressions||t.runExpressions},this.globalData={_mdf:!1,frameNum:-1,defs:s,renderConfig:this.renderConfig},this.elements=[],this.pendingElements=[],this.destroyed=!1,this.rendererType="svg"}function ShapeTransformManager(){this.sequences={},this.sequenceList=[],this.transform_key_count=0}extendPrototype([BaseElement,TransformElement,SVGBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement],SVGTextLottieElement),SVGTextLottieElement.prototype.createContent=function(){this.data.singleShape&&!this.globalData.fontManager.chars&&(this.textContainer=createNS("text"))},SVGTextLottieElement.prototype.buildTextContents=function(e){for(var t=0,i=e.length,r=[],n="";t<i;)e[t]===String.fromCharCode(13)||e[t]===String.fromCharCode(3)?(r.push(n),n=""):n+=e[t],t+=1;return r.push(n),r},SVGTextLottieElement.prototype.buildShapeData=function(e,t){if(e.shapes&&e.shapes.length){var i=e.shapes[0];if(i.it){var r=i.it[i.it.length-1];r.s&&(r.s.k[0]=t,r.s.k[1]=t)}}return e},SVGTextLottieElement.prototype.buildNewText=function(){var e,t;this.addDynamicProperty(this);var i=this.textProperty.currentData;this.renderedLetters=createSizedArray(i?i.l.length:0),i.fc?this.layerElement.setAttribute("fill",this.buildColor(i.fc)):this.layerElement.setAttribute("fill","rgba(0,0,0,0)"),i.sc&&(this.layerElement.setAttribute("stroke",this.buildColor(i.sc)),this.layerElement.setAttribute("stroke-width",i.sw)),this.layerElement.setAttribute("font-size",i.finalSize);var r=this.globalData.fontManager.getFontByName(i.f);if(r.fClass)this.layerElement.setAttribute("class",r.fClass);else{this.layerElement.setAttribute("font-family",r.fFamily);var n=i.fWeight,o=i.fStyle;this.layerElement.setAttribute("font-style",o),this.layerElement.setAttribute("font-weight",n)}this.layerElement.setAttribute("aria-label",i.t);var a,s=i.l||[],l=!!this.globalData.fontManager.chars;t=s.length;var c=this.mHelper,d=this.data.singleShape,p=0,g=0,u=!0,m=.001*i.tr*i.finalSize;if(!d||l||i.sz){var h,f=this.textSpans.length;for(e=0;e<t;e+=1){if(this.textSpans[e]||(this.textSpans[e]={span:null,childSpan:null,glyph:null}),!l||!d||0===e){if(a=f>e?this.textSpans[e].span:createNS(l?"g":"text"),f<=e){if(a.setAttribute("stroke-linecap","butt"),a.setAttribute("stroke-linejoin","round"),a.setAttribute("stroke-miterlimit","4"),this.textSpans[e].span=a,l){var y=createNS("g");a.appendChild(y),this.textSpans[e].childSpan=y}this.textSpans[e].span=a,this.layerElement.appendChild(a)}a.style.display="inherit"}if(c.reset(),d&&(s[e].n&&(p=-m,g+=i.yOffset,g+=u?1:0,u=!1),this.applyTextPropertiesToMatrix(i,c,s[e].line,p,g),p+=s[e].l||0,p+=m),l){var b;if(1===(h=this.globalData.fontManager.getCharData(i.finalText[e],r.fStyle,this.globalData.fontManager.getFontByName(i.f).fFamily)).t)b=new SVGCompElement(h.data,this.globalData,this);else{var C=emptyShapeData;h.data&&h.data.shapes&&(C=this.buildShapeData(h.data,i.finalSize)),b=new SVGShapeElement(C,this.globalData,this)}if(this.textSpans[e].glyph){var x=this.textSpans[e].glyph;this.textSpans[e].childSpan.removeChild(x.layerElement),x.destroy()}this.textSpans[e].glyph=b,b._debug=!0,b.prepareFrame(0),b.renderFrame(),this.textSpans[e].childSpan.appendChild(b.layerElement),1===h.t&&this.textSpans[e].childSpan.setAttribute("transform","scale("+i.finalSize/100+","+i.finalSize/100+")")}else d&&a.setAttribute("transform","translate("+c.props[12]+","+c.props[13]+")"),a.textContent=s[e].val,a.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve")}d&&a&&a.setAttribute("d","")}else{var v=this.textContainer,S="start";switch(i.j){case 1:S="end";break;case 2:S="middle";break;default:S="start"}v.setAttribute("text-anchor",S),v.setAttribute("letter-spacing",m);var w=this.buildTextContents(i.finalText);for(t=w.length,g=i.ps?i.ps[1]+i.ascent:0,e=0;e<t;e+=1)(a=this.textSpans[e].span||createNS("tspan")).textContent=w[e],a.setAttribute("x",0),a.setAttribute("y",g),a.style.display="inherit",v.appendChild(a),this.textSpans[e]||(this.textSpans[e]={span:null,glyph:null}),this.textSpans[e].span=a,g+=i.finalLineHeight;this.layerElement.appendChild(v)}for(;e<this.textSpans.length;)this.textSpans[e].span.style.display="none",e+=1;this._sizeChanged=!0},SVGTextLottieElement.prototype.sourceRectAtTime=function(){if(this.prepareFrame(this.comp.renderedFrame-this.data.st),this.renderInnerContent(),this._sizeChanged){this._sizeChanged=!1;var e=this.layerElement.getBBox();this.bbox={top:e.y,left:e.x,width:e.width,height:e.height}}return this.bbox},SVGTextLottieElement.prototype.getValue=function(){var e,t,i=this.textSpans.length;for(this.renderedFrame=this.comp.renderedFrame,e=0;e<i;e+=1)(t=this.textSpans[e].glyph)&&(t.prepareFrame(this.comp.renderedFrame-this.data.st),t._mdf&&(this._mdf=!0))},SVGTextLottieElement.prototype.renderInnerContent=function(){if(this.validateText(),(!this.data.singleShape||this._mdf)&&(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),this.lettersChangedFlag||this.textAnimator.lettersChangedFlag)){var e,t;this._sizeChanged=!0;var i,r,n,o=this.textAnimator.renderedLetters,a=this.textProperty.currentData.l;for(t=a.length,e=0;e<t;e+=1)a[e].n||(i=o[e],r=this.textSpans[e].span,(n=this.textSpans[e].glyph)&&n.renderFrame(),i._mdf.m&&r.setAttribute("transform",i.m),i._mdf.o&&r.setAttribute("opacity",i.o),i._mdf.sw&&r.setAttribute("stroke-width",i.sw),i._mdf.sc&&r.setAttribute("stroke",i.sc),i._mdf.fc&&r.setAttribute("fill",i.fc))}},extendPrototype([IImageElement],ISolidElement),ISolidElement.prototype.createContent=function(){var e=createNS("rect");e.setAttribute("width",this.data.sw),e.setAttribute("height",this.data.sh),e.setAttribute("fill",this.data.sc),this.layerElement.appendChild(e)},NullElement.prototype.prepareFrame=function(e){this.prepareProperties(e,!0)},NullElement.prototype.renderFrame=function(){},NullElement.prototype.getBaseElement=function(){return null},NullElement.prototype.destroy=function(){},NullElement.prototype.sourceRectAtTime=function(){},NullElement.prototype.hide=function(){},extendPrototype([BaseElement,TransformElement,HierarchyElement,FrameElement],NullElement),extendPrototype([BaseRenderer],SVGRendererBase),SVGRendererBase.prototype.createNull=function(e){return new NullElement(e,this.globalData,this)},SVGRendererBase.prototype.createShape=function(e){return new SVGShapeElement(e,this.globalData,this)},SVGRendererBase.prototype.createText=function(e){return new SVGTextLottieElement(e,this.globalData,this)},SVGRendererBase.prototype.createImage=function(e){return new IImageElement(e,this.globalData,this)},SVGRendererBase.prototype.createSolid=function(e){return new ISolidElement(e,this.globalData,this)},SVGRendererBase.prototype.configAnimation=function(e){this.svgElement.setAttribute("xmlns","http://www.w3.org/2000/svg"),this.svgElement.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink"),this.renderConfig.viewBoxSize?this.svgElement.setAttribute("viewBox",this.renderConfig.viewBoxSize):this.svgElement.setAttribute("viewBox","0 0 "+e.w+" "+e.h),this.renderConfig.viewBoxOnly||(this.svgElement.setAttribute("width",e.w),this.svgElement.setAttribute("height",e.h),this.svgElement.style.width="100%",this.svgElement.style.height="100%",this.svgElement.style.transform="translate3d(0,0,0)",this.svgElement.style.contentVisibility=this.renderConfig.contentVisibility),this.renderConfig.width&&this.svgElement.setAttribute("width",this.renderConfig.width),this.renderConfig.height&&this.svgElement.setAttribute("height",this.renderConfig.height),this.renderConfig.className&&this.svgElement.setAttribute("class",this.renderConfig.className),this.renderConfig.id&&this.svgElement.setAttribute("id",this.renderConfig.id),void 0!==this.renderConfig.focusable&&this.svgElement.setAttribute("focusable",this.renderConfig.focusable),this.svgElement.setAttribute("preserveAspectRatio",this.renderConfig.preserveAspectRatio),this.animationItem.wrapper.appendChild(this.svgElement);var t=this.globalData.defs;this.setupGlobalData(e,t),this.globalData.progressiveLoad=this.renderConfig.progressiveLoad,this.data=e;var i=createNS("clipPath"),r=createNS("rect");r.setAttribute("width",e.w),r.setAttribute("height",e.h),r.setAttribute("x",0),r.setAttribute("y",0);var n=createElementID();i.setAttribute("id",n),i.appendChild(r),this.layerElement.setAttribute("clip-path","url("+getLocationHref()+"#"+n+")"),t.appendChild(i),this.layers=e.layers,this.elements=createSizedArray(e.layers.length)},SVGRendererBase.prototype.destroy=function(){var e;this.animationItem.wrapper&&(this.animationItem.wrapper.innerText=""),this.layerElement=null,this.globalData.defs=null;var t=this.layers?this.layers.length:0;for(e=0;e<t;e+=1)this.elements[e]&&this.elements[e].destroy&&this.elements[e].destroy();this.elements.length=0,this.destroyed=!0,this.animationItem=null},SVGRendererBase.prototype.updateContainerSize=function(){},SVGRendererBase.prototype.findIndexByInd=function(e){var t=0,i=this.layers.length;for(t=0;t<i;t+=1)if(this.layers[t].ind===e)return t;return-1},SVGRendererBase.prototype.buildItem=function(e){var t=this.elements;if(!t[e]&&99!==this.layers[e].ty){t[e]=!0;var i=this.createItem(this.layers[e]);if(t[e]=i,getExpressionsPlugin()&&(0===this.layers[e].ty&&this.globalData.projectInterface.registerComposition(i),i.initExpressions()),this.appendElementInPos(i,e),this.layers[e].tt){var r="tp"in this.layers[e]?this.findIndexByInd(this.layers[e].tp):e-1;if(-1===r)return;if(this.elements[r]&&!0!==this.elements[r]){var n=t[r].getMatte(this.layers[e].tt);i.setMatte(n)}else this.buildItem(r),this.addPendingElement(i)}}},SVGRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;){var e=this.pendingElements.pop();if(e.checkParenting(),e.data.tt)for(var t=0,i=this.elements.length;t<i;){if(this.elements[t]===e){var r="tp"in e.data?this.findIndexByInd(e.data.tp):t-1,n=this.elements[r].getMatte(this.layers[t].tt);e.setMatte(n);break}t+=1}}},SVGRendererBase.prototype.renderFrame=function(e){if(this.renderedFrame!==e&&!this.destroyed){var t;null===e?e=this.renderedFrame:this.renderedFrame=e,this.globalData.frameNum=e,this.globalData.frameId+=1,this.globalData.projectInterface.currentFrame=e,this.globalData._mdf=!1;var i=this.layers.length;for(this.completeLayers||this.checkLayers(e),t=i-1;t>=0;t-=1)(this.completeLayers||this.elements[t])&&this.elements[t].prepareFrame(e-this.layers[t].st);if(this.globalData._mdf)for(t=0;t<i;t+=1)(this.completeLayers||this.elements[t])&&this.elements[t].renderFrame()}},SVGRendererBase.prototype.appendElementInPos=function(e,t){var i=e.getBaseElement();if(i){for(var r,n=0;n<t;)this.elements[n]&&!0!==this.elements[n]&&this.elements[n].getBaseElement()&&(r=this.elements[n].getBaseElement()),n+=1;r?this.layerElement.insertBefore(i,r):this.layerElement.appendChild(i)}},SVGRendererBase.prototype.hide=function(){this.layerElement.style.display="none"},SVGRendererBase.prototype.show=function(){this.layerElement.style.display="block"},extendPrototype([BaseElement,TransformElement,HierarchyElement,FrameElement,RenderableDOMElement],ICompElement),ICompElement.prototype.initElement=function(e,t,i){this.initFrame(),this.initBaseData(e,t,i),this.initTransform(e,t,i),this.initRenderable(),this.initHierarchy(),this.initRendererElement(),this.createContainerElements(),this.createRenderableComponents(),!this.data.xt&&t.progressiveLoad||this.buildAllItems(),this.hide()},ICompElement.prototype.prepareFrame=function(e){if(this._mdf=!1,this.prepareRenderableFrame(e),this.prepareProperties(e,this.isInRange),this.isInRange||this.data.xt){if(this.tm._placeholder)this.renderedFrame=e/this.data.sr;else{var t=this.tm.v;t===this.data.op&&(t=this.data.op-1),this.renderedFrame=t}var i,r=this.elements.length;for(this.completeLayers||this.checkLayers(this.renderedFrame),i=r-1;i>=0;i-=1)(this.completeLayers||this.elements[i])&&(this.elements[i].prepareFrame(this.renderedFrame-this.layers[i].st),this.elements[i]._mdf&&(this._mdf=!0))}},ICompElement.prototype.renderInnerContent=function(){var e,t=this.layers.length;for(e=0;e<t;e+=1)(this.completeLayers||this.elements[e])&&this.elements[e].renderFrame()},ICompElement.prototype.setElements=function(e){this.elements=e},ICompElement.prototype.getElements=function(){return this.elements},ICompElement.prototype.destroyElements=function(){var e,t=this.layers.length;for(e=0;e<t;e+=1)this.elements[e]&&this.elements[e].destroy()},ICompElement.prototype.destroy=function(){this.destroyElements(),this.destroyBaseElement()},extendPrototype([SVGRendererBase,ICompElement,SVGBaseElement],SVGCompElement),SVGCompElement.prototype.createComp=function(e){return new SVGCompElement(e,this.globalData,this)},extendPrototype([SVGRendererBase],SVGRenderer),SVGRenderer.prototype.createComp=function(e){return new SVGCompElement(e,this.globalData,this)},ShapeTransformManager.prototype={addTransformSequence:function(e){var t,i=e.length,r="_";for(t=0;t<i;t+=1)r+=e[t].transform.key+"_";var n=this.sequences[r];return n||(n={transforms:[].concat(e),finalTransform:new Matrix,_mdf:!1},this.sequences[r]=n,this.sequenceList.push(n)),n},processSequence:function(e,t){for(var i=0,r=e.transforms.length,n=t;i<r&&!t;){if(e.transforms[i].transform.mProps._mdf){n=!0;break}i+=1}if(n)for(e.finalTransform.reset(),i=r-1;i>=0;i-=1)e.finalTransform.multiply(e.transforms[i].transform.mProps.v);e._mdf=n},processSequences:function(e){var t,i=this.sequenceList.length;for(t=0;t<i;t+=1)this.processSequence(this.sequenceList[t],e)},getNewKey:function(){return this.transform_key_count+=1,"_"+this.transform_key_count}};var lumaLoader=function(){var e="__lottie_element_luma_buffer",t=null,i=null,r=null;function n(){var n,o,a;t||(n=createNS("svg"),o=createNS("filter"),a=createNS("feColorMatrix"),o.setAttribute("id",e),a.setAttribute("type","matrix"),a.setAttribute("color-interpolation-filters","sRGB"),a.setAttribute("values","0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0, 0.3, 0.3, 0.3, 0, 0"),o.appendChild(a),n.appendChild(o),n.setAttribute("id",e+"_svg"),featureSupport.svgLumaHidden&&(n.style.display="none"),r=n,document.body.appendChild(r),t=createTag("canvas"),(i=t.getContext("2d")).filter="url(#"+e+")",i.fillStyle="rgba(0,0,0,0)",i.fillRect(0,0,1,1))}return{load:n,get:function(r){return t||n(),t.width=r.width,t.height=r.height,i.filter="url(#"+e+")",t}}};function createCanvas(e,t){if(featureSupport.offscreenCanvas)return new OffscreenCanvas(e,t);var i=createTag("canvas");return i.width=e,i.height=t,i}var assetLoader={loadLumaCanvas:lumaLoader.load,getLumaCanvas:lumaLoader.get,createCanvas:createCanvas},registeredEffects={};function CVEffects(e){var t,i,r=e.data.ef?e.data.ef.length:0;for(this.filters=[],t=0;t<r;t+=1){i=null;var n=e.data.ef[t].ty;registeredEffects[n]&&(i=new(0,registeredEffects[n].effect)(e.effectsManager.effectElements[t],e)),i&&this.filters.push(i)}this.filters.length&&e.addRenderableComponent(this)}function registerEffect(e,t){registeredEffects[e]={effect:t}}function CVMaskElement(e,t){var i;this.data=e,this.element=t,this.masksProperties=this.data.masksProperties||[],this.viewData=createSizedArray(this.masksProperties.length);var r=this.masksProperties.length,n=!1;for(i=0;i<r;i+=1)"n"!==this.masksProperties[i].mode&&(n=!0),this.viewData[i]=ShapePropertyFactory.getShapeProp(this.element,this.masksProperties[i],3);this.hasMasks=n,n&&this.element.addRenderableComponent(this)}function CVBaseElement(){}CVEffects.prototype.renderFrame=function(e){var t,i=this.filters.length;for(t=0;t<i;t+=1)this.filters[t].renderFrame(e)},CVEffects.prototype.getEffects=function(e){var t,i=this.filters.length,r=[];for(t=0;t<i;t+=1)this.filters[t].type===e&&r.push(this.filters[t]);return r},CVMaskElement.prototype.renderFrame=function(){if(this.hasMasks){var e,t,i,r,n=this.element.finalTransform.mat,o=this.element.canvasContext,a=this.masksProperties.length;for(o.beginPath(),e=0;e<a;e+=1)if("n"!==this.masksProperties[e].mode){var s;this.masksProperties[e].inv&&(o.moveTo(0,0),o.lineTo(this.element.globalData.compSize.w,0),o.lineTo(this.element.globalData.compSize.w,this.element.globalData.compSize.h),o.lineTo(0,this.element.globalData.compSize.h),o.lineTo(0,0)),r=this.viewData[e].v,t=n.applyToPointArray(r.v[0][0],r.v[0][1],0),o.moveTo(t[0],t[1]);var l=r._length;for(s=1;s<l;s+=1)i=n.applyToTriplePoints(r.o[s-1],r.i[s],r.v[s]),o.bezierCurveTo(i[0],i[1],i[2],i[3],i[4],i[5]);i=n.applyToTriplePoints(r.o[s-1],r.i[0],r.v[0]),o.bezierCurveTo(i[0],i[1],i[2],i[3],i[4],i[5])}this.element.globalData.renderer.save(!0),o.clip()}},CVMaskElement.prototype.getMaskProperty=MaskElement.prototype.getMaskProperty,CVMaskElement.prototype.destroy=function(){this.element=null};var operationsMap={1:"source-in",2:"source-out",3:"source-in",4:"source-out"};function CVShapeData(e,t,i,r){this.styledShapes=[],this.tr=[0,0,0,0,0,0];var n,o=4;"rc"===t.ty?o=5:"el"===t.ty?o=6:"sr"===t.ty&&(o=7),this.sh=ShapePropertyFactory.getShapeProp(e,t,o,e);var a,s=i.length;for(n=0;n<s;n+=1)i[n].closed||(a={transforms:r.addTransformSequence(i[n].transforms),trNodes:[]},this.styledShapes.push(a),i[n].elements.push(a))}function CVShapeElement(e,t,i){this.shapes=[],this.shapesData=e.shapes,this.stylesList=[],this.itemsData=[],this.prevViewData=[],this.shapeModifiers=[],this.processedElements=[],this.transformsManager=new ShapeTransformManager,this.initElement(e,t,i)}function CVTextElement(e,t,i){this.textSpans=[],this.yOffset=0,this.fillColorAnim=!1,this.strokeColorAnim=!1,this.strokeWidthAnim=!1,this.stroke=!1,this.fill=!1,this.justifyOffset=0,this.currentRender=null,this.renderType="canvas",this.values={fill:"rgba(0,0,0,0)",stroke:"rgba(0,0,0,0)",sWidth:0,fValue:""},this.initElement(e,t,i)}function CVImageElement(e,t,i){this.assetData=t.getAssetData(e.refId),this.img=t.imageLoader.getAsset(this.assetData),this.initElement(e,t,i)}function CVSolidElement(e,t,i){this.initElement(e,t,i)}function CanvasRendererBase(){}function CanvasContext(){this.opacity=-1,this.transform=createTypedArray("float32",16),this.fillStyle="",this.strokeStyle="",this.lineWidth="",this.lineCap="",this.lineJoin="",this.miterLimit="",this.id=Math.random()}function CVContextData(){var e;for(this.stack=[],this.cArrPos=0,this.cTr=new Matrix,e=0;e<15;e+=1){var t=new CanvasContext;this.stack[e]=t}this._length=15,this.nativeContext=null,this.transformMat=new Matrix,this.currentOpacity=1,this.currentFillStyle="",this.appliedFillStyle="",this.currentStrokeStyle="",this.appliedStrokeStyle="",this.currentLineWidth="",this.appliedLineWidth="",this.currentLineCap="",this.appliedLineCap="",this.currentLineJoin="",this.appliedLineJoin="",this.appliedMiterLimit="",this.currentMiterLimit=""}function CVCompElement(e,t,i){this.completeLayers=!1,this.layers=e.layers,this.pendingElements=[],this.elements=createSizedArray(this.layers.length),this.initElement(e,t,i),this.tm=e.tm?PropertyFactory.getProp(this,e.tm,0,t.frameRate,this):{_placeholder:!0}}function CanvasRenderer(e,t){this.animationItem=e,this.renderConfig={clearCanvas:!t||void 0===t.clearCanvas||t.clearCanvas,context:t&&t.context||null,progressiveLoad:t&&t.progressiveLoad||!1,preserveAspectRatio:t&&t.preserveAspectRatio||"xMidYMid meet",imagePreserveAspectRatio:t&&t.imagePreserveAspectRatio||"xMidYMid slice",contentVisibility:t&&t.contentVisibility||"visible",className:t&&t.className||"",id:t&&t.id||"",runExpressions:!t||void 0===t.runExpressions||t.runExpressions},this.renderConfig.dpr=t&&t.dpr||1,this.animationItem.wrapper&&(this.renderConfig.dpr=t&&t.dpr||window.devicePixelRatio||1),this.renderedFrame=-1,this.globalData={frameNum:-1,_mdf:!1,renderConfig:this.renderConfig,currentGlobalAlpha:-1},this.contextData=new CVContextData,this.elements=[],this.pendingElements=[],this.transformMat=new Matrix,this.completeLayers=!1,this.rendererType="canvas",this.renderConfig.clearCanvas&&(this.ctxTransform=this.contextData.transform.bind(this.contextData),this.ctxOpacity=this.contextData.opacity.bind(this.contextData),this.ctxFillStyle=this.contextData.fillStyle.bind(this.contextData),this.ctxStrokeStyle=this.contextData.strokeStyle.bind(this.contextData),this.ctxLineWidth=this.contextData.lineWidth.bind(this.contextData),this.ctxLineCap=this.contextData.lineCap.bind(this.contextData),this.ctxLineJoin=this.contextData.lineJoin.bind(this.contextData),this.ctxMiterLimit=this.contextData.miterLimit.bind(this.contextData),this.ctxFill=this.contextData.fill.bind(this.contextData),this.ctxFillRect=this.contextData.fillRect.bind(this.contextData),this.ctxStroke=this.contextData.stroke.bind(this.contextData),this.save=this.contextData.save.bind(this.contextData))}function HBaseElement(){}function HSolidElement(e,t,i){this.initElement(e,t,i)}function HShapeElement(e,t,i){this.shapes=[],this.shapesData=e.shapes,this.stylesList=[],this.shapeModifiers=[],this.itemsData=[],this.processedElements=[],this.animatedContents=[],this.shapesContainer=createNS("g"),this.initElement(e,t,i),this.prevViewData=[],this.currentBBox={x:999999,y:-999999,h:0,w:0}}function HTextElement(e,t,i){this.textSpans=[],this.textPaths=[],this.currentBBox={x:999999,y:-999999,h:0,w:0},this.renderType="svg",this.isMasked=!1,this.initElement(e,t,i)}function HCameraElement(e,t,i){this.initFrame(),this.initBaseData(e,t,i),this.initHierarchy();var r=PropertyFactory.getProp;if(this.pe=r(this,e.pe,0,0,this),e.ks.p.s?(this.px=r(this,e.ks.p.x,1,0,this),this.py=r(this,e.ks.p.y,1,0,this),this.pz=r(this,e.ks.p.z,1,0,this)):this.p=r(this,e.ks.p,1,0,this),e.ks.a&&(this.a=r(this,e.ks.a,1,0,this)),e.ks.or.k.length&&e.ks.or.k[0].to){var n,o=e.ks.or.k.length;for(n=0;n<o;n+=1)e.ks.or.k[n].to=null,e.ks.or.k[n].ti=null}this.or=r(this,e.ks.or,1,degToRads,this),this.or.sh=!0,this.rx=r(this,e.ks.rx,0,degToRads,this),this.ry=r(this,e.ks.ry,0,degToRads,this),this.rz=r(this,e.ks.rz,0,degToRads,this),this.mat=new Matrix,this._prevMat=new Matrix,this._isFirstFrame=!0,this.finalTransform={mProp:this}}function HImageElement(e,t,i){this.assetData=t.getAssetData(e.refId),this.initElement(e,t,i)}function HybridRendererBase(e,t){this.animationItem=e,this.layers=null,this.renderedFrame=-1,this.renderConfig={className:t&&t.className||"",imagePreserveAspectRatio:t&&t.imagePreserveAspectRatio||"xMidYMid slice",hideOnTransparent:!(t&&!1===t.hideOnTransparent),filterSize:{width:t&&t.filterSize&&t.filterSize.width||"400%",height:t&&t.filterSize&&t.filterSize.height||"400%",x:t&&t.filterSize&&t.filterSize.x||"-100%",y:t&&t.filterSize&&t.filterSize.y||"-100%"}},this.globalData={_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements=[],this.elements=[],this.threeDElements=[],this.destroyed=!1,this.camera=null,this.supports3d=!0,this.rendererType="html"}function HCompElement(e,t,i){this.layers=e.layers,this.supports3d=!e.hasMask,this.completeLayers=!1,this.pendingElements=[],this.elements=this.layers?createSizedArray(this.layers.length):[],this.initElement(e,t,i),this.tm=e.tm?PropertyFactory.getProp(this,e.tm,0,t.frameRate,this):{_placeholder:!0}}function HybridRenderer(e,t){this.animationItem=e,this.layers=null,this.renderedFrame=-1,this.renderConfig={className:t&&t.className||"",imagePreserveAspectRatio:t&&t.imagePreserveAspectRatio||"xMidYMid slice",hideOnTransparent:!(t&&!1===t.hideOnTransparent),filterSize:{width:t&&t.filterSize&&t.filterSize.width||"400%",height:t&&t.filterSize&&t.filterSize.height||"400%",x:t&&t.filterSize&&t.filterSize.x||"-100%",y:t&&t.filterSize&&t.filterSize.y||"-100%"},runExpressions:!t||void 0===t.runExpressions||t.runExpressions},this.globalData={_mdf:!1,frameNum:-1,renderConfig:this.renderConfig},this.pendingElements=[],this.elements=[],this.threeDElements=[],this.destroyed=!1,this.camera=null,this.supports3d=!0,this.rendererType="html"}CVBaseElement.prototype={createElements:function(){},initRendererElement:function(){},createContainerElements:function(){if(this.data.tt>=1){this.buffers=[];var e=this.globalData.canvasContext,t=assetLoader.createCanvas(e.canvas.width,e.canvas.height);this.buffers.push(t);var i=assetLoader.createCanvas(e.canvas.width,e.canvas.height);this.buffers.push(i),this.data.tt>=3&&!document._isProxy&&assetLoader.loadLumaCanvas()}this.canvasContext=this.globalData.canvasContext,this.transformCanvas=this.globalData.transformCanvas,this.renderableEffectsManager=new CVEffects(this),this.searchEffectTransforms()},createContent:function(){},setBlendMode:function(){var e=this.globalData;if(e.blendMode!==this.data.bm){e.blendMode=this.data.bm;var t=getBlendMode(this.data.bm);e.canvasContext.globalCompositeOperation=t}},createRenderableComponents:function(){this.maskManager=new CVMaskElement(this.data,this),this.transformEffects=this.renderableEffectsManager.getEffects(effectTypes.TRANSFORM_EFFECT)},hideElement:function(){this.hidden||this.isInRange&&!this.isTransparent||(this.hidden=!0)},showElement:function(){this.isInRange&&!this.isTransparent&&(this.hidden=!1,this._isFirstFrame=!0,this.maskManager._isFirstFrame=!0)},clearCanvas:function(e){e.clearRect(this.transformCanvas.tx,this.transformCanvas.ty,this.transformCanvas.w*this.transformCanvas.sx,this.transformCanvas.h*this.transformCanvas.sy)},prepareLayer:function(){if(this.data.tt>=1){var e=this.buffers[0].getContext("2d");this.clearCanvas(e),e.drawImage(this.canvasContext.canvas,0,0),this.currentTransform=this.canvasContext.getTransform(),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform)}},exitLayer:function(){if(this.data.tt>=1){var e=this.buffers[1],t=e.getContext("2d");if(this.clearCanvas(t),t.drawImage(this.canvasContext.canvas,0,0),this.canvasContext.setTransform(1,0,0,1,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.setTransform(this.currentTransform),this.comp.getElementById("tp"in this.data?this.data.tp:this.data.ind-1).renderFrame(!0),this.canvasContext.setTransform(1,0,0,1,0,0),this.data.tt>=3&&!document._isProxy){var i=assetLoader.getLumaCanvas(this.canvasContext.canvas);i.getContext("2d").drawImage(this.canvasContext.canvas,0,0),this.clearCanvas(this.canvasContext),this.canvasContext.drawImage(i,0,0)}this.canvasContext.globalCompositeOperation=operationsMap[this.data.tt],this.canvasContext.drawImage(e,0,0),this.canvasContext.globalCompositeOperation="destination-over",this.canvasContext.drawImage(this.buffers[0],0,0),this.canvasContext.setTransform(this.currentTransform),this.canvasContext.globalCompositeOperation="source-over"}},renderFrame:function(e){if(!this.hidden&&!this.data.hd&&(1!==this.data.td||e)){this.renderTransform(),this.renderRenderable(),this.renderLocalTransform(),this.setBlendMode();var t=0===this.data.ty;this.prepareLayer(),this.globalData.renderer.save(t),this.globalData.renderer.ctxTransform(this.finalTransform.localMat.props),this.globalData.renderer.ctxOpacity(this.finalTransform.localOpacity),this.renderInnerContent(),this.globalData.renderer.restore(t),this.exitLayer(),this.maskManager.hasMasks&&this.globalData.renderer.restore(!0),this._isFirstFrame&&(this._isFirstFrame=!1)}},destroy:function(){this.canvasContext=null,this.data=null,this.globalData=null,this.maskManager.destroy()},mHelper:new Matrix},CVBaseElement.prototype.hide=CVBaseElement.prototype.hideElement,CVBaseElement.prototype.show=CVBaseElement.prototype.showElement,CVShapeData.prototype.setAsAnimated=SVGShapeData.prototype.setAsAnimated,extendPrototype([BaseElement,TransformElement,CVBaseElement,IShapeElement,HierarchyElement,FrameElement,RenderableElement],CVShapeElement),CVShapeElement.prototype.initElement=RenderableDOMElement.prototype.initElement,CVShapeElement.prototype.transformHelper={opacity:1,_opMdf:!1},CVShapeElement.prototype.dashResetter=[],CVShapeElement.prototype.createContent=function(){this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,[])},CVShapeElement.prototype.createStyleElement=function(e,t){var i={data:e,type:e.ty,preTransforms:this.transformsManager.addTransformSequence(t),transforms:[],elements:[],closed:!0===e.hd},r={};if("fl"===e.ty||"st"===e.ty?(r.c=PropertyFactory.getProp(this,e.c,1,255,this),r.c.k||(i.co="rgb("+bmFloor(r.c.v[0])+","+bmFloor(r.c.v[1])+","+bmFloor(r.c.v[2])+")")):"gf"!==e.ty&&"gs"!==e.ty||(r.s=PropertyFactory.getProp(this,e.s,1,null,this),r.e=PropertyFactory.getProp(this,e.e,1,null,this),r.h=PropertyFactory.getProp(this,e.h||{k:0},0,.01,this),r.a=PropertyFactory.getProp(this,e.a||{k:0},0,degToRads,this),r.g=new GradientProperty(this,e.g,this)),r.o=PropertyFactory.getProp(this,e.o,0,.01,this),"st"===e.ty||"gs"===e.ty){if(i.lc=lineCapEnum[e.lc||2],i.lj=lineJoinEnum[e.lj||2],1==e.lj&&(i.ml=e.ml),r.w=PropertyFactory.getProp(this,e.w,0,null,this),r.w.k||(i.wi=r.w.v),e.d){var n=new DashProperty(this,e.d,"canvas",this);r.d=n,r.d.k||(i.da=r.d.dashArray,i.do=r.d.dashoffset[0])}}else i.r=2===e.r?"evenodd":"nonzero";return this.stylesList.push(i),r.style=i,r},CVShapeElement.prototype.createGroupElement=function(){return{it:[],prevViewData:[]}},CVShapeElement.prototype.createTransformElement=function(e){return{transform:{opacity:1,_opMdf:!1,key:this.transformsManager.getNewKey(),op:PropertyFactory.getProp(this,e.o,0,.01,this),mProps:TransformPropertyFactory.getTransformProperty(this,e,this)}}},CVShapeElement.prototype.createShapeElement=function(e){var t=new CVShapeData(this,e,this.stylesList,this.transformsManager);return this.shapes.push(t),this.addShapeToModifiers(t),t},CVShapeElement.prototype.reloadShapes=function(){var e;this._isFirstFrame=!0;var t=this.itemsData.length;for(e=0;e<t;e+=1)this.prevViewData[e]=this.itemsData[e];for(this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,!0,[]),t=this.dynamicProperties.length,e=0;e<t;e+=1)this.dynamicProperties[e].getValue();this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame)},CVShapeElement.prototype.addTransformToStyleList=function(e){var t,i=this.stylesList.length;for(t=0;t<i;t+=1)this.stylesList[t].closed||this.stylesList[t].transforms.push(e)},CVShapeElement.prototype.removeTransformFromStyleList=function(){var e,t=this.stylesList.length;for(e=0;e<t;e+=1)this.stylesList[e].closed||this.stylesList[e].transforms.pop()},CVShapeElement.prototype.closeStyles=function(e){var t,i=e.length;for(t=0;t<i;t+=1)e[t].closed=!0},CVShapeElement.prototype.searchShapes=function(e,t,i,r,n){var o,a,s,l,c,d,p=e.length-1,g=[],u=[],m=[].concat(n);for(o=p;o>=0;o-=1){if((l=this.searchProcessedElement(e[o]))?t[o]=i[l-1]:e[o]._shouldRender=r,"fl"===e[o].ty||"st"===e[o].ty||"gf"===e[o].ty||"gs"===e[o].ty)l?t[o].style.closed=!1:t[o]=this.createStyleElement(e[o],m),g.push(t[o].style);else if("gr"===e[o].ty){if(l)for(s=t[o].it.length,a=0;a<s;a+=1)t[o].prevViewData[a]=t[o].it[a];else t[o]=this.createGroupElement(e[o]);this.searchShapes(e[o].it,t[o].it,t[o].prevViewData,r,m)}else"tr"===e[o].ty?(l||(d=this.createTransformElement(e[o]),t[o]=d),m.push(t[o]),this.addTransformToStyleList(t[o])):"sh"===e[o].ty||"rc"===e[o].ty||"el"===e[o].ty||"sr"===e[o].ty?l||(t[o]=this.createShapeElement(e[o])):"tm"===e[o].ty||"rd"===e[o].ty||"pb"===e[o].ty||"zz"===e[o].ty||"op"===e[o].ty?(l?(c=t[o]).closed=!1:((c=ShapeModifiers.getModifier(e[o].ty)).init(this,e[o]),t[o]=c,this.shapeModifiers.push(c)),u.push(c)):"rp"===e[o].ty&&(l?(c=t[o]).closed=!0:(c=ShapeModifiers.getModifier(e[o].ty),t[o]=c,c.init(this,e,o,t),this.shapeModifiers.push(c),r=!1),u.push(c));this.addProcessedElement(e[o],o+1)}for(this.removeTransformFromStyleList(),this.closeStyles(g),p=u.length,o=0;o<p;o+=1)u[o].closed=!0},CVShapeElement.prototype.renderInnerContent=function(){this.transformHelper.opacity=1,this.transformHelper._opMdf=!1,this.renderModifiers(),this.transformsManager.processSequences(this._isFirstFrame),this.renderShape(this.transformHelper,this.shapesData,this.itemsData,!0)},CVShapeElement.prototype.renderShapeTransform=function(e,t){(e._opMdf||t.op._mdf||this._isFirstFrame)&&(t.opacity=e.opacity,t.opacity*=t.op.v,t._opMdf=!0)},CVShapeElement.prototype.drawLayer=function(){var e,t,i,r,n,o,a,s,l,c=this.stylesList.length,d=this.globalData.renderer,p=this.globalData.canvasContext;for(e=0;e<c;e+=1)if(("st"!==(s=(l=this.stylesList[e]).type)&&"gs"!==s||0!==l.wi)&&l.data._shouldRender&&0!==l.coOp&&0!==this.globalData.currentGlobalAlpha){for(d.save(),o=l.elements,"st"===s||"gs"===s?(d.ctxStrokeStyle("st"===s?l.co:l.grd),d.ctxLineWidth(l.wi),d.ctxLineCap(l.lc),d.ctxLineJoin(l.lj),d.ctxMiterLimit(l.ml||0)):d.ctxFillStyle("fl"===s?l.co:l.grd),d.ctxOpacity(l.coOp),"st"!==s&&"gs"!==s&&p.beginPath(),d.ctxTransform(l.preTransforms.finalTransform.props),i=o.length,t=0;t<i;t+=1){for("st"!==s&&"gs"!==s||(p.beginPath(),l.da&&(p.setLineDash(l.da),p.lineDashOffset=l.do)),n=(a=o[t].trNodes).length,r=0;r<n;r+=1)"m"===a[r].t?p.moveTo(a[r].p[0],a[r].p[1]):"c"===a[r].t?p.bezierCurveTo(a[r].pts[0],a[r].pts[1],a[r].pts[2],a[r].pts[3],a[r].pts[4],a[r].pts[5]):p.closePath();"st"!==s&&"gs"!==s||(d.ctxStroke(),l.da&&p.setLineDash(this.dashResetter))}"st"!==s&&"gs"!==s&&this.globalData.renderer.ctxFill(l.r),d.restore()}},CVShapeElement.prototype.renderShape=function(e,t,i,r){var n,o;for(o=e,n=t.length-1;n>=0;n-=1)"tr"===t[n].ty?(o=i[n].transform,this.renderShapeTransform(e,o)):"sh"===t[n].ty||"el"===t[n].ty||"rc"===t[n].ty||"sr"===t[n].ty?this.renderPath(t[n],i[n]):"fl"===t[n].ty?this.renderFill(t[n],i[n],o):"st"===t[n].ty?this.renderStroke(t[n],i[n],o):"gf"===t[n].ty||"gs"===t[n].ty?this.renderGradientFill(t[n],i[n],o):"gr"===t[n].ty?this.renderShape(o,t[n].it,i[n].it):t[n].ty;r&&this.drawLayer()},CVShapeElement.prototype.renderStyledShape=function(e,t){if(this._isFirstFrame||t._mdf||e.transforms._mdf){var i,r,n,o=e.trNodes,a=t.paths,s=a._length;o.length=0;var l=e.transforms.finalTransform;for(n=0;n<s;n+=1){var c=a.shapes[n];if(c&&c.v){for(r=c._length,i=1;i<r;i+=1)1===i&&o.push({t:"m",p:l.applyToPointArray(c.v[0][0],c.v[0][1],0)}),o.push({t:"c",pts:l.applyToTriplePoints(c.o[i-1],c.i[i],c.v[i])});1===r&&o.push({t:"m",p:l.applyToPointArray(c.v[0][0],c.v[0][1],0)}),c.c&&r&&(o.push({t:"c",pts:l.applyToTriplePoints(c.o[i-1],c.i[0],c.v[0])}),o.push({t:"z"}))}}e.trNodes=o}},CVShapeElement.prototype.renderPath=function(e,t){if(!0!==e.hd&&e._shouldRender){var i,r=t.styledShapes.length;for(i=0;i<r;i+=1)this.renderStyledShape(t.styledShapes[i],t.sh)}},CVShapeElement.prototype.renderFill=function(e,t,i){var r=t.style;(t.c._mdf||this._isFirstFrame)&&(r.co="rgb("+bmFloor(t.c.v[0])+","+bmFloor(t.c.v[1])+","+bmFloor(t.c.v[2])+")"),(t.o._mdf||i._opMdf||this._isFirstFrame)&&(r.coOp=t.o.v*i.opacity)},CVShapeElement.prototype.renderGradientFill=function(e,t,i){var r,n=t.style;if(!n.grd||t.g._mdf||t.s._mdf||t.e._mdf||1!==e.t&&(t.h._mdf||t.a._mdf)){var o,a=this.globalData.canvasContext,s=t.s.v,l=t.e.v;if(1===e.t)r=a.createLinearGradient(s[0],s[1],l[0],l[1]);else{var c=Math.sqrt(Math.pow(s[0]-l[0],2)+Math.pow(s[1]-l[1],2)),d=Math.atan2(l[1]-s[1],l[0]-s[0]),p=t.h.v;p>=1?p=.99:p<=-1&&(p=-.99);var g=c*p,u=Math.cos(d+t.a.v)*g+s[0],m=Math.sin(d+t.a.v)*g+s[1];r=a.createRadialGradient(u,m,0,s[0],s[1],c)}var h=e.g.p,f=t.g.c,y=1;for(o=0;o<h;o+=1)t.g._hasOpacity&&t.g._collapsable&&(y=t.g.o[2*o+1]),r.addColorStop(f[4*o]/100,"rgba("+f[4*o+1]+","+f[4*o+2]+","+f[4*o+3]+","+y+")");n.grd=r}n.coOp=t.o.v*i.opacity},CVShapeElement.prototype.renderStroke=function(e,t,i){var r=t.style,n=t.d;n&&(n._mdf||this._isFirstFrame)&&(r.da=n.dashArray,r.do=n.dashoffset[0]),(t.c._mdf||this._isFirstFrame)&&(r.co="rgb("+bmFloor(t.c.v[0])+","+bmFloor(t.c.v[1])+","+bmFloor(t.c.v[2])+")"),(t.o._mdf||i._opMdf||this._isFirstFrame)&&(r.coOp=t.o.v*i.opacity),(t.w._mdf||this._isFirstFrame)&&(r.wi=t.w.v)},CVShapeElement.prototype.destroy=function(){this.shapesData=null,this.globalData=null,this.canvasContext=null,this.stylesList.length=0,this.itemsData.length=0},extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement,ITextElement],CVTextElement),CVTextElement.prototype.tHelper=createTag("canvas").getContext("2d"),CVTextElement.prototype.buildNewText=function(){var e=this.textProperty.currentData;this.renderedLetters=createSizedArray(e.l?e.l.length:0);var t=!1;e.fc?(t=!0,this.values.fill=this.buildColor(e.fc)):this.values.fill="rgba(0,0,0,0)",this.fill=t;var i=!1;e.sc&&(i=!0,this.values.stroke=this.buildColor(e.sc),this.values.sWidth=e.sw);var r,n,o,a,s,l,c,d,p,g,u,m,h=this.globalData.fontManager.getFontByName(e.f),f=e.l,y=this.mHelper;this.stroke=i,this.values.fValue=e.finalSize+"px "+this.globalData.fontManager.getFontByName(e.f).fFamily,n=e.finalText.length;var b=this.data.singleShape,C=.001*e.tr*e.finalSize,x=0,v=0,S=!0,w=0;for(r=0;r<n;r+=1){a=(o=this.globalData.fontManager.getCharData(e.finalText[r],h.fStyle,this.globalData.fontManager.getFontByName(e.f).fFamily))&&o.data||{},y.reset(),b&&f[r].n&&(x=-C,v+=e.yOffset,v+=S?1:0,S=!1),p=(c=a.shapes?a.shapes[0].it:[]).length,y.scale(e.finalSize/100,e.finalSize/100),b&&this.applyTextPropertiesToMatrix(e,y,f[r].line,x,v),u=createSizedArray(p-1);var k=0;for(d=0;d<p;d+=1)if("sh"===c[d].ty){for(l=c[d].ks.k.i.length,g=c[d].ks.k,m=[],s=1;s<l;s+=1)1===s&&m.push(y.applyToX(g.v[0][0],g.v[0][1],0),y.applyToY(g.v[0][0],g.v[0][1],0)),m.push(y.applyToX(g.o[s-1][0],g.o[s-1][1],0),y.applyToY(g.o[s-1][0],g.o[s-1][1],0),y.applyToX(g.i[s][0],g.i[s][1],0),y.applyToY(g.i[s][0],g.i[s][1],0),y.applyToX(g.v[s][0],g.v[s][1],0),y.applyToY(g.v[s][0],g.v[s][1],0));m.push(y.applyToX(g.o[s-1][0],g.o[s-1][1],0),y.applyToY(g.o[s-1][0],g.o[s-1][1],0),y.applyToX(g.i[0][0],g.i[0][1],0),y.applyToY(g.i[0][0],g.i[0][1],0),y.applyToX(g.v[0][0],g.v[0][1],0),y.applyToY(g.v[0][0],g.v[0][1],0)),u[k]=m,k+=1}b&&(x+=f[r].l,x+=C),this.textSpans[w]?this.textSpans[w].elem=u:this.textSpans[w]={elem:u},w+=1}},CVTextElement.prototype.renderInnerContent=function(){var e,t,i,r,n,o;this.validateText(),this.canvasContext.font=this.values.fValue,this.globalData.renderer.ctxLineCap("butt"),this.globalData.renderer.ctxLineJoin("miter"),this.globalData.renderer.ctxMiterLimit(4),this.data.singleShape||this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag);var a,s=this.textAnimator.renderedLetters,l=this.textProperty.currentData.l;t=l.length;var c,d,p=null,g=null,u=null,m=this.globalData.renderer;for(e=0;e<t;e+=1)if(!l[e].n){if((a=s[e])&&(m.save(),m.ctxTransform(a.p),m.ctxOpacity(a.o)),this.fill){for(a&&a.fc?p!==a.fc&&(m.ctxFillStyle(a.fc),p=a.fc):p!==this.values.fill&&(p=this.values.fill,m.ctxFillStyle(this.values.fill)),r=(c=this.textSpans[e].elem).length,this.globalData.canvasContext.beginPath(),i=0;i<r;i+=1)for(o=(d=c[i]).length,this.globalData.canvasContext.moveTo(d[0],d[1]),n=2;n<o;n+=6)this.globalData.canvasContext.bezierCurveTo(d[n],d[n+1],d[n+2],d[n+3],d[n+4],d[n+5]);this.globalData.canvasContext.closePath(),m.ctxFill()}if(this.stroke){for(a&&a.sw?u!==a.sw&&(u=a.sw,m.ctxLineWidth(a.sw)):u!==this.values.sWidth&&(u=this.values.sWidth,m.ctxLineWidth(this.values.sWidth)),a&&a.sc?g!==a.sc&&(g=a.sc,m.ctxStrokeStyle(a.sc)):g!==this.values.stroke&&(g=this.values.stroke,m.ctxStrokeStyle(this.values.stroke)),r=(c=this.textSpans[e].elem).length,this.globalData.canvasContext.beginPath(),i=0;i<r;i+=1)for(o=(d=c[i]).length,this.globalData.canvasContext.moveTo(d[0],d[1]),n=2;n<o;n+=6)this.globalData.canvasContext.bezierCurveTo(d[n],d[n+1],d[n+2],d[n+3],d[n+4],d[n+5]);this.globalData.canvasContext.closePath(),m.ctxStroke()}a&&this.globalData.renderer.restore()}},extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement],CVImageElement),CVImageElement.prototype.initElement=SVGShapeElement.prototype.initElement,CVImageElement.prototype.prepareFrame=IImageElement.prototype.prepareFrame,CVImageElement.prototype.createContent=function(){if(this.img.width&&(this.assetData.w!==this.img.width||this.assetData.h!==this.img.height)){var e=createTag("canvas");e.width=this.assetData.w,e.height=this.assetData.h;var t,i,r=e.getContext("2d"),n=this.img.width,o=this.img.height,a=n/o,s=this.assetData.w/this.assetData.h,l=this.assetData.pr||this.globalData.renderConfig.imagePreserveAspectRatio;a>s&&"xMidYMid slice"===l||a<s&&"xMidYMid slice"!==l?t=(i=o)*s:i=(t=n)/s,r.drawImage(this.img,(n-t)/2,(o-i)/2,t,i,0,0,this.assetData.w,this.assetData.h),this.img=e}},CVImageElement.prototype.renderInnerContent=function(){this.canvasContext.drawImage(this.img,0,0)},CVImageElement.prototype.destroy=function(){this.img=null},extendPrototype([BaseElement,TransformElement,CVBaseElement,HierarchyElement,FrameElement,RenderableElement],CVSolidElement),CVSolidElement.prototype.initElement=SVGShapeElement.prototype.initElement,CVSolidElement.prototype.prepareFrame=IImageElement.prototype.prepareFrame,CVSolidElement.prototype.renderInnerContent=function(){this.globalData.renderer.ctxFillStyle(this.data.sc),this.globalData.renderer.ctxFillRect(0,0,this.data.sw,this.data.sh)},extendPrototype([BaseRenderer],CanvasRendererBase),CanvasRendererBase.prototype.createShape=function(e){return new CVShapeElement(e,this.globalData,this)},CanvasRendererBase.prototype.createText=function(e){return new CVTextElement(e,this.globalData,this)},CanvasRendererBase.prototype.createImage=function(e){return new CVImageElement(e,this.globalData,this)},CanvasRendererBase.prototype.createSolid=function(e){return new CVSolidElement(e,this.globalData,this)},CanvasRendererBase.prototype.createNull=SVGRenderer.prototype.createNull,CanvasRendererBase.prototype.ctxTransform=function(e){1===e[0]&&0===e[1]&&0===e[4]&&1===e[5]&&0===e[12]&&0===e[13]||this.canvasContext.transform(e[0],e[1],e[4],e[5],e[12],e[13])},CanvasRendererBase.prototype.ctxOpacity=function(e){this.canvasContext.globalAlpha*=e<0?0:e},CanvasRendererBase.prototype.ctxFillStyle=function(e){this.canvasContext.fillStyle=e},CanvasRendererBase.prototype.ctxStrokeStyle=function(e){this.canvasContext.strokeStyle=e},CanvasRendererBase.prototype.ctxLineWidth=function(e){this.canvasContext.lineWidth=e},CanvasRendererBase.prototype.ctxLineCap=function(e){this.canvasContext.lineCap=e},CanvasRendererBase.prototype.ctxLineJoin=function(e){this.canvasContext.lineJoin=e},CanvasRendererBase.prototype.ctxMiterLimit=function(e){this.canvasContext.miterLimit=e},CanvasRendererBase.prototype.ctxFill=function(e){this.canvasContext.fill(e)},CanvasRendererBase.prototype.ctxFillRect=function(e,t,i,r){this.canvasContext.fillRect(e,t,i,r)},CanvasRendererBase.prototype.ctxStroke=function(){this.canvasContext.stroke()},CanvasRendererBase.prototype.reset=function(){this.renderConfig.clearCanvas?this.contextData.reset():this.canvasContext.restore()},CanvasRendererBase.prototype.save=function(){this.canvasContext.save()},CanvasRendererBase.prototype.restore=function(e){this.renderConfig.clearCanvas?(e&&(this.globalData.blendMode="source-over"),this.contextData.restore(e)):this.canvasContext.restore()},CanvasRendererBase.prototype.configAnimation=function(e){if(this.animationItem.wrapper){this.animationItem.container=createTag("canvas");var t=this.animationItem.container.style;t.width="100%",t.height="100%";var i="0px 0px 0px";t.transformOrigin=i,t.mozTransformOrigin=i,t.webkitTransformOrigin=i,t["-webkit-transform"]=i,t.contentVisibility=this.renderConfig.contentVisibility,this.animationItem.wrapper.appendChild(this.animationItem.container),this.canvasContext=this.animationItem.container.getContext("2d"),this.renderConfig.className&&this.animationItem.container.setAttribute("class",this.renderConfig.className),this.renderConfig.id&&this.animationItem.container.setAttribute("id",this.renderConfig.id)}else this.canvasContext=this.renderConfig.context;this.contextData.setContext(this.canvasContext),this.data=e,this.layers=e.layers,this.transformCanvas={w:e.w,h:e.h,sx:0,sy:0,tx:0,ty:0},this.setupGlobalData(e,document.body),this.globalData.canvasContext=this.canvasContext,this.globalData.renderer=this,this.globalData.isDashed=!1,this.globalData.progressiveLoad=this.renderConfig.progressiveLoad,this.globalData.transformCanvas=this.transformCanvas,this.elements=createSizedArray(e.layers.length),this.updateContainerSize()},CanvasRendererBase.prototype.updateContainerSize=function(e,t){var i,r,n,o;if(this.reset(),e?(i=e,r=t,this.canvasContext.canvas.width=i,this.canvasContext.canvas.height=r):(this.animationItem.wrapper&&this.animationItem.container?(i=this.animationItem.wrapper.offsetWidth,r=this.animationItem.wrapper.offsetHeight):(i=this.canvasContext.canvas.width,r=this.canvasContext.canvas.height),this.canvasContext.canvas.width=i*this.renderConfig.dpr,this.canvasContext.canvas.height=r*this.renderConfig.dpr),-1!==this.renderConfig.preserveAspectRatio.indexOf("meet")||-1!==this.renderConfig.preserveAspectRatio.indexOf("slice")){var a=this.renderConfig.preserveAspectRatio.split(" "),s=a[1]||"meet",l=a[0]||"xMidYMid",c=l.substr(0,4),d=l.substr(4);n=i/r,(o=this.transformCanvas.w/this.transformCanvas.h)>n&&"meet"===s||o<n&&"slice"===s?(this.transformCanvas.sx=i/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.sy=i/(this.transformCanvas.w/this.renderConfig.dpr)):(this.transformCanvas.sx=r/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.sy=r/(this.transformCanvas.h/this.renderConfig.dpr)),this.transformCanvas.tx="xMid"===c&&(o<n&&"meet"===s||o>n&&"slice"===s)?(i-this.transformCanvas.w*(r/this.transformCanvas.h))/2*this.renderConfig.dpr:"xMax"===c&&(o<n&&"meet"===s||o>n&&"slice"===s)?(i-this.transformCanvas.w*(r/this.transformCanvas.h))*this.renderConfig.dpr:0,this.transformCanvas.ty="YMid"===d&&(o>n&&"meet"===s||o<n&&"slice"===s)?(r-this.transformCanvas.h*(i/this.transformCanvas.w))/2*this.renderConfig.dpr:"YMax"===d&&(o>n&&"meet"===s||o<n&&"slice"===s)?(r-this.transformCanvas.h*(i/this.transformCanvas.w))*this.renderConfig.dpr:0}else"none"===this.renderConfig.preserveAspectRatio?(this.transformCanvas.sx=i/(this.transformCanvas.w/this.renderConfig.dpr),this.transformCanvas.sy=r/(this.transformCanvas.h/this.renderConfig.dpr),this.transformCanvas.tx=0,this.transformCanvas.ty=0):(this.transformCanvas.sx=this.renderConfig.dpr,this.transformCanvas.sy=this.renderConfig.dpr,this.transformCanvas.tx=0,this.transformCanvas.ty=0);this.transformCanvas.props=[this.transformCanvas.sx,0,0,0,0,this.transformCanvas.sy,0,0,0,0,1,0,this.transformCanvas.tx,this.transformCanvas.ty,0,1],this.ctxTransform(this.transformCanvas.props),this.canvasContext.beginPath(),this.canvasContext.rect(0,0,this.transformCanvas.w,this.transformCanvas.h),this.canvasContext.closePath(),this.canvasContext.clip(),this.renderFrame(this.renderedFrame,!0)},CanvasRendererBase.prototype.destroy=function(){var e;for(this.renderConfig.clearCanvas&&this.animationItem.wrapper&&(this.animationItem.wrapper.innerText=""),e=(this.layers?this.layers.length:0)-1;e>=0;e-=1)this.elements[e]&&this.elements[e].destroy&&this.elements[e].destroy();this.elements.length=0,this.globalData.canvasContext=null,this.animationItem.container=null,this.destroyed=!0},CanvasRendererBase.prototype.renderFrame=function(e,t){if((this.renderedFrame!==e||!0!==this.renderConfig.clearCanvas||t)&&!this.destroyed&&-1!==e){var i;this.renderedFrame=e,this.globalData.frameNum=e-this.animationItem._isFirstFrame,this.globalData.frameId+=1,this.globalData._mdf=!this.renderConfig.clearCanvas||t,this.globalData.projectInterface.currentFrame=e;var r=this.layers.length;for(this.completeLayers||this.checkLayers(e),i=r-1;i>=0;i-=1)(this.completeLayers||this.elements[i])&&this.elements[i].prepareFrame(e-this.layers[i].st);if(this.globalData._mdf){for(!0===this.renderConfig.clearCanvas?this.canvasContext.clearRect(0,0,this.transformCanvas.w,this.transformCanvas.h):this.save(),i=r-1;i>=0;i-=1)(this.completeLayers||this.elements[i])&&this.elements[i].renderFrame();!0!==this.renderConfig.clearCanvas&&this.restore()}}},CanvasRendererBase.prototype.buildItem=function(e){var t=this.elements;if(!t[e]&&99!==this.layers[e].ty){var i=this.createItem(this.layers[e],this,this.globalData);t[e]=i,i.initExpressions()}},CanvasRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;)this.pendingElements.pop().checkParenting()},CanvasRendererBase.prototype.hide=function(){this.animationItem.container.style.display="none"},CanvasRendererBase.prototype.show=function(){this.animationItem.container.style.display="block"},CVContextData.prototype.duplicate=function(){var e=2*this._length,t=0;for(t=this._length;t<e;t+=1)this.stack[t]=new CanvasContext;this._length=e},CVContextData.prototype.reset=function(){this.cArrPos=0,this.cTr.reset(),this.stack[this.cArrPos].opacity=1},CVContextData.prototype.restore=function(e){this.cArrPos-=1;var t,i=this.stack[this.cArrPos],r=i.transform,n=this.cTr.props;for(t=0;t<16;t+=1)n[t]=r[t];if(e){this.nativeContext.restore();var o=this.stack[this.cArrPos+1];this.appliedFillStyle=o.fillStyle,this.appliedStrokeStyle=o.strokeStyle,this.appliedLineWidth=o.lineWidth,this.appliedLineCap=o.lineCap,this.appliedLineJoin=o.lineJoin,this.appliedMiterLimit=o.miterLimit}this.nativeContext.setTransform(r[0],r[1],r[4],r[5],r[12],r[13]),(e||-1!==i.opacity&&this.currentOpacity!==i.opacity)&&(this.nativeContext.globalAlpha=i.opacity,this.currentOpacity=i.opacity),this.currentFillStyle=i.fillStyle,this.currentStrokeStyle=i.strokeStyle,this.currentLineWidth=i.lineWidth,this.currentLineCap=i.lineCap,this.currentLineJoin=i.lineJoin,this.currentMiterLimit=i.miterLimit},CVContextData.prototype.save=function(e){e&&this.nativeContext.save();var t=this.cTr.props;this._length<=this.cArrPos&&this.duplicate();var i,r=this.stack[this.cArrPos];for(i=0;i<16;i+=1)r.transform[i]=t[i];this.cArrPos+=1;var n=this.stack[this.cArrPos];n.opacity=r.opacity,n.fillStyle=r.fillStyle,n.strokeStyle=r.strokeStyle,n.lineWidth=r.lineWidth,n.lineCap=r.lineCap,n.lineJoin=r.lineJoin,n.miterLimit=r.miterLimit},CVContextData.prototype.setOpacity=function(e){this.stack[this.cArrPos].opacity=e},CVContextData.prototype.setContext=function(e){this.nativeContext=e},CVContextData.prototype.fillStyle=function(e){this.stack[this.cArrPos].fillStyle!==e&&(this.currentFillStyle=e,this.stack[this.cArrPos].fillStyle=e)},CVContextData.prototype.strokeStyle=function(e){this.stack[this.cArrPos].strokeStyle!==e&&(this.currentStrokeStyle=e,this.stack[this.cArrPos].strokeStyle=e)},CVContextData.prototype.lineWidth=function(e){this.stack[this.cArrPos].lineWidth!==e&&(this.currentLineWidth=e,this.stack[this.cArrPos].lineWidth=e)},CVContextData.prototype.lineCap=function(e){this.stack[this.cArrPos].lineCap!==e&&(this.currentLineCap=e,this.stack[this.cArrPos].lineCap=e)},CVContextData.prototype.lineJoin=function(e){this.stack[this.cArrPos].lineJoin!==e&&(this.currentLineJoin=e,this.stack[this.cArrPos].lineJoin=e)},CVContextData.prototype.miterLimit=function(e){this.stack[this.cArrPos].miterLimit!==e&&(this.currentMiterLimit=e,this.stack[this.cArrPos].miterLimit=e)},CVContextData.prototype.transform=function(e){this.transformMat.cloneFromProps(e);var t=this.cTr;this.transformMat.multiply(t),t.cloneFromProps(this.transformMat.props);var i=t.props;this.nativeContext.setTransform(i[0],i[1],i[4],i[5],i[12],i[13])},CVContextData.prototype.opacity=function(e){var t=this.stack[this.cArrPos].opacity;t*=e<0?0:e,this.stack[this.cArrPos].opacity!==t&&(this.currentOpacity!==e&&(this.nativeContext.globalAlpha=e,this.currentOpacity=e),this.stack[this.cArrPos].opacity=t)},CVContextData.prototype.fill=function(e){this.appliedFillStyle!==this.currentFillStyle&&(this.appliedFillStyle=this.currentFillStyle,this.nativeContext.fillStyle=this.appliedFillStyle),this.nativeContext.fill(e)},CVContextData.prototype.fillRect=function(e,t,i,r){this.appliedFillStyle!==this.currentFillStyle&&(this.appliedFillStyle=this.currentFillStyle,this.nativeContext.fillStyle=this.appliedFillStyle),this.nativeContext.fillRect(e,t,i,r)},CVContextData.prototype.stroke=function(){this.appliedStrokeStyle!==this.currentStrokeStyle&&(this.appliedStrokeStyle=this.currentStrokeStyle,this.nativeContext.strokeStyle=this.appliedStrokeStyle),this.appliedLineWidth!==this.currentLineWidth&&(this.appliedLineWidth=this.currentLineWidth,this.nativeContext.lineWidth=this.appliedLineWidth),this.appliedLineCap!==this.currentLineCap&&(this.appliedLineCap=this.currentLineCap,this.nativeContext.lineCap=this.appliedLineCap),this.appliedLineJoin!==this.currentLineJoin&&(this.appliedLineJoin=this.currentLineJoin,this.nativeContext.lineJoin=this.appliedLineJoin),this.appliedMiterLimit!==this.currentMiterLimit&&(this.appliedMiterLimit=this.currentMiterLimit,this.nativeContext.miterLimit=this.appliedMiterLimit),this.nativeContext.stroke()},extendPrototype([CanvasRendererBase,ICompElement,CVBaseElement],CVCompElement),CVCompElement.prototype.renderInnerContent=function(){var e,t=this.canvasContext;for(t.beginPath(),t.moveTo(0,0),t.lineTo(this.data.w,0),t.lineTo(this.data.w,this.data.h),t.lineTo(0,this.data.h),t.lineTo(0,0),t.clip(),e=this.layers.length-1;e>=0;e-=1)(this.completeLayers||this.elements[e])&&this.elements[e].renderFrame()},CVCompElement.prototype.destroy=function(){var e;for(e=this.layers.length-1;e>=0;e-=1)this.elements[e]&&this.elements[e].destroy();this.layers=null,this.elements=null},CVCompElement.prototype.createComp=function(e){return new CVCompElement(e,this.globalData,this)},extendPrototype([CanvasRendererBase],CanvasRenderer),CanvasRenderer.prototype.createComp=function(e){return new CVCompElement(e,this.globalData,this)},HBaseElement.prototype={checkBlendMode:function(){},initRendererElement:function(){this.baseElement=createTag(this.data.tg||"div"),this.data.hasMask?(this.svgElement=createNS("svg"),this.layerElement=createNS("g"),this.maskedElement=this.layerElement,this.svgElement.appendChild(this.layerElement),this.baseElement.appendChild(this.svgElement)):this.layerElement=this.baseElement,styleDiv(this.baseElement)},createContainerElements:function(){this.renderableEffectsManager=new CVEffects(this),this.transformedElement=this.baseElement,this.maskedElement=this.layerElement,this.data.ln&&this.layerElement.setAttribute("id",this.data.ln),this.data.cl&&this.layerElement.setAttribute("class",this.data.cl),0!==this.data.bm&&this.setBlendMode()},renderElement:function(){var e=this.transformedElement?this.transformedElement.style:{};if(this.finalTransform._matMdf){var t=this.finalTransform.mat.toCSS();e.transform=t,e.webkitTransform=t}this.finalTransform._opMdf&&(e.opacity=this.finalTransform.mProp.o.v)},renderFrame:function(){this.data.hd||this.hidden||(this.renderTransform(),this.renderRenderable(),this.renderElement(),this.renderInnerContent(),this._isFirstFrame&&(this._isFirstFrame=!1))},destroy:function(){this.layerElement=null,this.transformedElement=null,this.matteElement&&(this.matteElement=null),this.maskManager&&(this.maskManager.destroy(),this.maskManager=null)},createRenderableComponents:function(){this.maskManager=new MaskElement(this.data,this,this.globalData)},addEffects:function(){},setMatte:function(){}},HBaseElement.prototype.getBaseElement=SVGBaseElement.prototype.getBaseElement,HBaseElement.prototype.destroyBaseElement=HBaseElement.prototype.destroy,HBaseElement.prototype.buildElementParenting=BaseRenderer.prototype.buildElementParenting,extendPrototype([BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement],HSolidElement),HSolidElement.prototype.createContent=function(){var e;this.data.hasMask?((e=createNS("rect")).setAttribute("width",this.data.sw),e.setAttribute("height",this.data.sh),e.setAttribute("fill",this.data.sc),this.svgElement.setAttribute("width",this.data.sw),this.svgElement.setAttribute("height",this.data.sh)):((e=createTag("div")).style.width=this.data.sw+"px",e.style.height=this.data.sh+"px",e.style.backgroundColor=this.data.sc),this.layerElement.appendChild(e)},extendPrototype([BaseElement,TransformElement,HSolidElement,SVGShapeElement,HBaseElement,HierarchyElement,FrameElement,RenderableElement],HShapeElement),HShapeElement.prototype._renderShapeFrame=HShapeElement.prototype.renderInnerContent,HShapeElement.prototype.createContent=function(){var e;if(this.baseElement.style.fontSize=0,this.data.hasMask)this.layerElement.appendChild(this.shapesContainer),e=this.svgElement;else{e=createNS("svg");var t=this.comp.data?this.comp.data:this.globalData.compSize;e.setAttribute("width",t.w),e.setAttribute("height",t.h),e.appendChild(this.shapesContainer),this.layerElement.appendChild(e)}this.searchShapes(this.shapesData,this.itemsData,this.prevViewData,this.shapesContainer,0,[],!0),this.filterUniqueShapes(),this.shapeCont=e},HShapeElement.prototype.getTransformedPoint=function(e,t){var i,r=e.length;for(i=0;i<r;i+=1)t=e[i].mProps.v.applyToPointArray(t[0],t[1],0);return t},HShapeElement.prototype.calculateShapeBoundingBox=function(e,t){var i,r,n,o,a,s=e.sh.v,l=e.transformers,c=s._length;if(!(c<=1)){for(i=0;i<c-1;i+=1)r=this.getTransformedPoint(l,s.v[i]),n=this.getTransformedPoint(l,s.o[i]),o=this.getTransformedPoint(l,s.i[i+1]),a=this.getTransformedPoint(l,s.v[i+1]),this.checkBounds(r,n,o,a,t);s.c&&(r=this.getTransformedPoint(l,s.v[i]),n=this.getTransformedPoint(l,s.o[i]),o=this.getTransformedPoint(l,s.i[0]),a=this.getTransformedPoint(l,s.v[0]),this.checkBounds(r,n,o,a,t))}},HShapeElement.prototype.checkBounds=function(e,t,i,r,n){this.getBoundsOfCurve(e,t,i,r);var o=this.shapeBoundingBox;n.x=bmMin(o.left,n.x),n.xMax=bmMax(o.right,n.xMax),n.y=bmMin(o.top,n.y),n.yMax=bmMax(o.bottom,n.yMax)},HShapeElement.prototype.shapeBoundingBox={left:0,right:0,top:0,bottom:0},HShapeElement.prototype.tempBoundingBox={x:0,xMax:0,y:0,yMax:0,width:0,height:0},HShapeElement.prototype.getBoundsOfCurve=function(e,t,i,r){for(var n,o,a,s,l,c,d,p=[[e[0],r[0]],[e[1],r[1]]],g=0;g<2;++g)o=6*e[g]-12*t[g]+6*i[g],n=-3*e[g]+9*t[g]-9*i[g]+3*r[g],a=3*t[g]-3*e[g],o|=0,a|=0,0==(n|=0)&&0===o||(0===n?(s=-a/o)>0&&s<1&&p[g].push(this.calculateF(s,e,t,i,r,g)):(l=o*o-4*a*n)>=0&&((c=(-o+bmSqrt(l))/(2*n))>0&&c<1&&p[g].push(this.calculateF(c,e,t,i,r,g)),(d=(-o-bmSqrt(l))/(2*n))>0&&d<1&&p[g].push(this.calculateF(d,e,t,i,r,g))));this.shapeBoundingBox.left=bmMin.apply(null,p[0]),this.shapeBoundingBox.top=bmMin.apply(null,p[1]),this.shapeBoundingBox.right=bmMax.apply(null,p[0]),this.shapeBoundingBox.bottom=bmMax.apply(null,p[1])},HShapeElement.prototype.calculateF=function(e,t,i,r,n,o){return bmPow(1-e,3)*t[o]+3*bmPow(1-e,2)*e*i[o]+3*(1-e)*bmPow(e,2)*r[o]+bmPow(e,3)*n[o]},HShapeElement.prototype.calculateBoundingBox=function(e,t){var i,r=e.length;for(i=0;i<r;i+=1)e[i]&&e[i].sh?this.calculateShapeBoundingBox(e[i],t):e[i]&&e[i].it?this.calculateBoundingBox(e[i].it,t):e[i]&&e[i].style&&e[i].w&&this.expandStrokeBoundingBox(e[i].w,t)},HShapeElement.prototype.expandStrokeBoundingBox=function(e,t){var i=0;if(e.keyframes){for(var r=0;r<e.keyframes.length;r+=1){var n=e.keyframes[r].s;n>i&&(i=n)}i*=e.mult}else i=e.v*e.mult;t.x-=i,t.xMax+=i,t.y-=i,t.yMax+=i},HShapeElement.prototype.currentBoxContains=function(e){return this.currentBBox.x<=e.x&&this.currentBBox.y<=e.y&&this.currentBBox.width+this.currentBBox.x>=e.x+e.width&&this.currentBBox.height+this.currentBBox.y>=e.y+e.height},HShapeElement.prototype.renderInnerContent=function(){if(this._renderShapeFrame(),!this.hidden&&(this._isFirstFrame||this._mdf)){var e=this.tempBoundingBox,t=999999;if(e.x=t,e.xMax=-t,e.y=t,e.yMax=-t,this.calculateBoundingBox(this.itemsData,e),e.width=e.xMax<e.x?0:e.xMax-e.x,e.height=e.yMax<e.y?0:e.yMax-e.y,this.currentBoxContains(e))return;var i=!1;if(this.currentBBox.w!==e.width&&(this.currentBBox.w=e.width,this.shapeCont.setAttribute("width",e.width),i=!0),this.currentBBox.h!==e.height&&(this.currentBBox.h=e.height,this.shapeCont.setAttribute("height",e.height),i=!0),i||this.currentBBox.x!==e.x||this.currentBBox.y!==e.y){this.currentBBox.w=e.width,this.currentBBox.h=e.height,this.currentBBox.x=e.x,this.currentBBox.y=e.y,this.shapeCont.setAttribute("viewBox",this.currentBBox.x+" "+this.currentBBox.y+" "+this.currentBBox.w+" "+this.currentBBox.h);var r=this.shapeCont.style,n="translate("+this.currentBBox.x+"px,"+this.currentBBox.y+"px)";r.transform=n,r.webkitTransform=n}}},extendPrototype([BaseElement,TransformElement,HBaseElement,HierarchyElement,FrameElement,RenderableDOMElement,ITextElement],HTextElement),HTextElement.prototype.createContent=function(){if(this.isMasked=this.checkMasks(),this.isMasked){this.renderType="svg",this.compW=this.comp.data.w,this.compH=this.comp.data.h,this.svgElement.setAttribute("width",this.compW),this.svgElement.setAttribute("height",this.compH);var e=createNS("g");this.maskedElement.appendChild(e),this.innerElem=e}else this.renderType="html",this.innerElem=this.layerElement;this.checkParenting()},HTextElement.prototype.buildNewText=function(){var e=this.textProperty.currentData;this.renderedLetters=createSizedArray(e.l?e.l.length:0);var t=this.innerElem.style,i=e.fc?this.buildColor(e.fc):"rgba(0,0,0,0)";t.fill=i,t.color=i,e.sc&&(t.stroke=this.buildColor(e.sc),t.strokeWidth=e.sw+"px");var r,n,o=this.globalData.fontManager.getFontByName(e.f);if(!this.globalData.fontManager.chars)if(t.fontSize=e.finalSize+"px",t.lineHeight=e.finalSize+"px",o.fClass)this.innerElem.className=o.fClass;else{t.fontFamily=o.fFamily;var a=e.fWeight,s=e.fStyle;t.fontStyle=s,t.fontWeight=a}var l,c,d,p=e.l;n=p.length;var g,u=this.mHelper,m="",h=0;for(r=0;r<n;r+=1){if(this.globalData.fontManager.chars?(this.textPaths[h]?l=this.textPaths[h]:((l=createNS("path")).setAttribute("stroke-linecap",lineCapEnum[1]),l.setAttribute("stroke-linejoin",lineJoinEnum[2]),l.setAttribute("stroke-miterlimit","4")),this.isMasked||(this.textSpans[h]?d=(c=this.textSpans[h]).children[0]:((c=createTag("div")).style.lineHeight=0,(d=createNS("svg")).appendChild(l),styleDiv(c)))):this.isMasked?l=this.textPaths[h]?this.textPaths[h]:createNS("text"):this.textSpans[h]?(c=this.textSpans[h],l=this.textPaths[h]):(styleDiv(c=createTag("span")),styleDiv(l=createTag("span")),c.appendChild(l)),this.globalData.fontManager.chars){var f,y=this.globalData.fontManager.getCharData(e.finalText[r],o.fStyle,this.globalData.fontManager.getFontByName(e.f).fFamily);if(f=y?y.data:null,u.reset(),f&&f.shapes&&f.shapes.length&&(g=f.shapes[0].it,u.scale(e.finalSize/100,e.finalSize/100),m=this.createPathShape(u,g),l.setAttribute("d",m)),this.isMasked)this.innerElem.appendChild(l);else{if(this.innerElem.appendChild(c),f&&f.shapes){document.body.appendChild(d);var b=d.getBBox();d.setAttribute("width",b.width+2),d.setAttribute("height",b.height+2),d.setAttribute("viewBox",b.x-1+" "+(b.y-1)+" "+(b.width+2)+" "+(b.height+2));var C=d.style,x="translate("+(b.x-1)+"px,"+(b.y-1)+"px)";C.transform=x,C.webkitTransform=x,p[r].yOffset=b.y-1}else d.setAttribute("width",1),d.setAttribute("height",1);c.appendChild(d)}}else if(l.textContent=p[r].val,l.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),this.isMasked)this.innerElem.appendChild(l);else{this.innerElem.appendChild(c);var v=l.style,S="translate3d(0,"+-e.finalSize/1.2+"px,0)";v.transform=S,v.webkitTransform=S}this.isMasked?this.textSpans[h]=l:this.textSpans[h]=c,this.textSpans[h].style.display="block",this.textPaths[h]=l,h+=1}for(;h<this.textSpans.length;)this.textSpans[h].style.display="none",h+=1},HTextElement.prototype.renderInnerContent=function(){var e;if(this.validateText(),this.data.singleShape){if(!this._isFirstFrame&&!this.lettersChangedFlag)return;if(this.isMasked&&this.finalTransform._matMdf){this.svgElement.setAttribute("viewBox",-this.finalTransform.mProp.p.v[0]+" "+-this.finalTransform.mProp.p.v[1]+" "+this.compW+" "+this.compH),e=this.svgElement.style;var t="translate("+-this.finalTransform.mProp.p.v[0]+"px,"+-this.finalTransform.mProp.p.v[1]+"px)";e.transform=t,e.webkitTransform=t}}if(this.textAnimator.getMeasures(this.textProperty.currentData,this.lettersChangedFlag),this.lettersChangedFlag||this.textAnimator.lettersChangedFlag){var i,r,n,o,a,s=0,l=this.textAnimator.renderedLetters,c=this.textProperty.currentData.l;for(r=c.length,i=0;i<r;i+=1)c[i].n?s+=1:(o=this.textSpans[i],a=this.textPaths[i],n=l[s],s+=1,n._mdf.m&&(this.isMasked?o.setAttribute("transform",n.m):(o.style.webkitTransform=n.m,o.style.transform=n.m)),o.style.opacity=n.o,n.sw&&n._mdf.sw&&a.setAttribute("stroke-width",n.sw),n.sc&&n._mdf.sc&&a.setAttribute("stroke",n.sc),n.fc&&n._mdf.fc&&(a.setAttribute("fill",n.fc),a.style.color=n.fc));if(this.innerElem.getBBox&&!this.hidden&&(this._isFirstFrame||this._mdf)){var d=this.innerElem.getBBox();if(this.currentBBox.w!==d.width&&(this.currentBBox.w=d.width,this.svgElement.setAttribute("width",d.width)),this.currentBBox.h!==d.height&&(this.currentBBox.h=d.height,this.svgElement.setAttribute("height",d.height)),this.currentBBox.w!==d.width+2||this.currentBBox.h!==d.height+2||this.currentBBox.x!==d.x-1||this.currentBBox.y!==d.y-1){this.currentBBox.w=d.width+2,this.currentBBox.h=d.height+2,this.currentBBox.x=d.x-1,this.currentBBox.y=d.y-1,this.svgElement.setAttribute("viewBox",this.currentBBox.x+" "+this.currentBBox.y+" "+this.currentBBox.w+" "+this.currentBBox.h),e=this.svgElement.style;var p="translate("+this.currentBBox.x+"px,"+this.currentBBox.y+"px)";e.transform=p,e.webkitTransform=p}}}},extendPrototype([BaseElement,FrameElement,HierarchyElement],HCameraElement),HCameraElement.prototype.setup=function(){var e,t,i,r,n=this.comp.threeDElements.length;for(e=0;e<n;e+=1)if("3d"===(t=this.comp.threeDElements[e]).type){i=t.perspectiveElem.style,r=t.container.style;var o=this.pe.v+"px",a="0px 0px 0px",s="matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)";i.perspective=o,i.webkitPerspective=o,r.transformOrigin=a,r.mozTransformOrigin=a,r.webkitTransformOrigin=a,i.transform=s,i.webkitTransform=s}},HCameraElement.prototype.createElements=function(){},HCameraElement.prototype.hide=function(){},HCameraElement.prototype.renderFrame=function(){var e,t,i=this._isFirstFrame;if(this.hierarchy)for(t=this.hierarchy.length,e=0;e<t;e+=1)i=this.hierarchy[e].finalTransform.mProp._mdf||i;if(i||this.pe._mdf||this.p&&this.p._mdf||this.px&&(this.px._mdf||this.py._mdf||this.pz._mdf)||this.rx._mdf||this.ry._mdf||this.rz._mdf||this.or._mdf||this.a&&this.a._mdf){if(this.mat.reset(),this.hierarchy)for(e=t=this.hierarchy.length-1;e>=0;e-=1){var r=this.hierarchy[e].finalTransform.mProp;this.mat.translate(-r.p.v[0],-r.p.v[1],r.p.v[2]),this.mat.rotateX(-r.or.v[0]).rotateY(-r.or.v[1]).rotateZ(r.or.v[2]),this.mat.rotateX(-r.rx.v).rotateY(-r.ry.v).rotateZ(r.rz.v),this.mat.scale(1/r.s.v[0],1/r.s.v[1],1/r.s.v[2]),this.mat.translate(r.a.v[0],r.a.v[1],r.a.v[2])}if(this.p?this.mat.translate(-this.p.v[0],-this.p.v[1],this.p.v[2]):this.mat.translate(-this.px.v,-this.py.v,this.pz.v),this.a){var n;n=this.p?[this.p.v[0]-this.a.v[0],this.p.v[1]-this.a.v[1],this.p.v[2]-this.a.v[2]]:[this.px.v-this.a.v[0],this.py.v-this.a.v[1],this.pz.v-this.a.v[2]];var o=Math.sqrt(Math.pow(n[0],2)+Math.pow(n[1],2)+Math.pow(n[2],2)),a=[n[0]/o,n[1]/o,n[2]/o],s=Math.sqrt(a[2]*a[2]+a[0]*a[0]),l=Math.atan2(a[1],s),c=Math.atan2(a[0],-a[2]);this.mat.rotateY(c).rotateX(-l)}this.mat.rotateX(-this.rx.v).rotateY(-this.ry.v).rotateZ(this.rz.v),this.mat.rotateX(-this.or.v[0]).rotateY(-this.or.v[1]).rotateZ(this.or.v[2]),this.mat.translate(this.globalData.compSize.w/2,this.globalData.compSize.h/2,0),this.mat.translate(0,0,this.pe.v);var d=!this._prevMat.equals(this.mat);if((d||this.pe._mdf)&&this.comp.threeDElements){var p,g,u;for(t=this.comp.threeDElements.length,e=0;e<t;e+=1)if("3d"===(p=this.comp.threeDElements[e]).type){if(d){var m=this.mat.toCSS();(u=p.container.style).transform=m,u.webkitTransform=m}this.pe._mdf&&((g=p.perspectiveElem.style).perspective=this.pe.v+"px",g.webkitPerspective=this.pe.v+"px")}this.mat.clone(this._prevMat)}}this._isFirstFrame=!1},HCameraElement.prototype.prepareFrame=function(e){this.prepareProperties(e,!0)},HCameraElement.prototype.destroy=function(){},HCameraElement.prototype.getBaseElement=function(){return null},extendPrototype([BaseElement,TransformElement,HBaseElement,HSolidElement,HierarchyElement,FrameElement,RenderableElement],HImageElement),HImageElement.prototype.createContent=function(){var e=this.globalData.getAssetsPath(this.assetData),t=new Image;this.data.hasMask?(this.imageElem=createNS("image"),this.imageElem.setAttribute("width",this.assetData.w+"px"),this.imageElem.setAttribute("height",this.assetData.h+"px"),this.imageElem.setAttributeNS("http://www.w3.org/1999/xlink","href",e),this.layerElement.appendChild(this.imageElem),this.baseElement.setAttribute("width",this.assetData.w),this.baseElement.setAttribute("height",this.assetData.h)):this.layerElement.appendChild(t),t.crossOrigin="anonymous",t.src=e,this.data.ln&&this.baseElement.setAttribute("id",this.data.ln)},extendPrototype([BaseRenderer],HybridRendererBase),HybridRendererBase.prototype.buildItem=SVGRenderer.prototype.buildItem,HybridRendererBase.prototype.checkPendingElements=function(){for(;this.pendingElements.length;)this.pendingElements.pop().checkParenting()},HybridRendererBase.prototype.appendElementInPos=function(e,t){var i=e.getBaseElement();if(i){var r=this.layers[t];if(r.ddd&&this.supports3d)this.addTo3dContainer(i,t);else if(this.threeDElements)this.addTo3dContainer(i,t);else{for(var n,o,a=0;a<t;)this.elements[a]&&!0!==this.elements[a]&&this.elements[a].getBaseElement&&(o=this.elements[a],n=(this.layers[a].ddd?this.getThreeDContainerByPos(a):o.getBaseElement())||n),a+=1;n?r.ddd&&this.supports3d||this.layerElement.insertBefore(i,n):r.ddd&&this.supports3d||this.layerElement.appendChild(i)}}},HybridRendererBase.prototype.createShape=function(e){return this.supports3d?new HShapeElement(e,this.globalData,this):new SVGShapeElement(e,this.globalData,this)},HybridRendererBase.prototype.createText=function(e){return this.supports3d?new HTextElement(e,this.globalData,this):new SVGTextLottieElement(e,this.globalData,this)},HybridRendererBase.prototype.createCamera=function(e){return this.camera=new HCameraElement(e,this.globalData,this),this.camera},HybridRendererBase.prototype.createImage=function(e){return this.supports3d?new HImageElement(e,this.globalData,this):new IImageElement(e,this.globalData,this)},HybridRendererBase.prototype.createSolid=function(e){return this.supports3d?new HSolidElement(e,this.globalData,this):new ISolidElement(e,this.globalData,this)},HybridRendererBase.prototype.createNull=SVGRenderer.prototype.createNull,HybridRendererBase.prototype.getThreeDContainerByPos=function(e){for(var t=0,i=this.threeDElements.length;t<i;){if(this.threeDElements[t].startPos<=e&&this.threeDElements[t].endPos>=e)return this.threeDElements[t].perspectiveElem;t+=1}return null},HybridRendererBase.prototype.createThreeDContainer=function(e,t){var i,r,n=createTag("div");styleDiv(n);var o=createTag("div");if(styleDiv(o),"3d"===t){(i=n.style).width=this.globalData.compSize.w+"px",i.height=this.globalData.compSize.h+"px";var a="50% 50%";i.webkitTransformOrigin=a,i.mozTransformOrigin=a,i.transformOrigin=a;var s="matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)";(r=o.style).transform=s,r.webkitTransform=s}n.appendChild(o);var l={container:o,perspectiveElem:n,startPos:e,endPos:e,type:t};return this.threeDElements.push(l),l},HybridRendererBase.prototype.build3dContainers=function(){var e,t,i=this.layers.length,r="";for(e=0;e<i;e+=1)this.layers[e].ddd&&3!==this.layers[e].ty?("3d"!==r&&(r="3d",t=this.createThreeDContainer(e,"3d")),t.endPos=Math.max(t.endPos,e)):("2d"!==r&&(r="2d",t=this.createThreeDContainer(e,"2d")),t.endPos=Math.max(t.endPos,e));for(e=(i=this.threeDElements.length)-1;e>=0;e-=1)this.resizerElem.appendChild(this.threeDElements[e].perspectiveElem)},HybridRendererBase.prototype.addTo3dContainer=function(e,t){for(var i=0,r=this.threeDElements.length;i<r;){if(t<=this.threeDElements[i].endPos){for(var n,o=this.threeDElements[i].startPos;o<t;)this.elements[o]&&this.elements[o].getBaseElement&&(n=this.elements[o].getBaseElement()),o+=1;n?this.threeDElements[i].container.insertBefore(e,n):this.threeDElements[i].container.appendChild(e);break}i+=1}},HybridRendererBase.prototype.configAnimation=function(e){var t=createTag("div"),i=this.animationItem.wrapper,r=t.style;r.width=e.w+"px",r.height=e.h+"px",this.resizerElem=t,styleDiv(t),r.transformStyle="flat",r.mozTransformStyle="flat",r.webkitTransformStyle="flat",this.renderConfig.className&&t.setAttribute("class",this.renderConfig.className),i.appendChild(t),r.overflow="hidden";var n=createNS("svg");n.setAttribute("width","1"),n.setAttribute("height","1"),styleDiv(n),this.resizerElem.appendChild(n);var o=createNS("defs");n.appendChild(o),this.data=e,this.setupGlobalData(e,n),this.globalData.defs=o,this.layers=e.layers,this.layerElement=this.resizerElem,this.build3dContainers(),this.updateContainerSize()},HybridRendererBase.prototype.destroy=function(){var e;this.animationItem.wrapper&&(this.animationItem.wrapper.innerText=""),this.animationItem.container=null,this.globalData.defs=null;var t=this.layers?this.layers.length:0;for(e=0;e<t;e+=1)this.elements[e]&&this.elements[e].destroy&&this.elements[e].destroy();this.elements.length=0,this.destroyed=!0,this.animationItem=null},HybridRendererBase.prototype.updateContainerSize=function(){var e,t,i,r,n=this.animationItem.wrapper.offsetWidth,o=this.animationItem.wrapper.offsetHeight,a=n/o;this.globalData.compSize.w/this.globalData.compSize.h>a?(e=n/this.globalData.compSize.w,t=n/this.globalData.compSize.w,i=0,r=(o-this.globalData.compSize.h*(n/this.globalData.compSize.w))/2):(e=o/this.globalData.compSize.h,t=o/this.globalData.compSize.h,i=(n-this.globalData.compSize.w*(o/this.globalData.compSize.h))/2,r=0);var s=this.resizerElem.style;s.webkitTransform="matrix3d("+e+",0,0,0,0,"+t+",0,0,0,0,1,0,"+i+","+r+",0,1)",s.transform=s.webkitTransform},HybridRendererBase.prototype.renderFrame=SVGRenderer.prototype.renderFrame,HybridRendererBase.prototype.hide=function(){this.resizerElem.style.display="none"},HybridRendererBase.prototype.show=function(){this.resizerElem.style.display="block"},HybridRendererBase.prototype.initItems=function(){if(this.buildAllItems(),this.camera)this.camera.setup();else{var e,t=this.globalData.compSize.w,i=this.globalData.compSize.h,r=this.threeDElements.length;for(e=0;e<r;e+=1){var n=this.threeDElements[e].perspectiveElem.style;n.webkitPerspective=Math.sqrt(Math.pow(t,2)+Math.pow(i,2))+"px",n.perspective=n.webkitPerspective}}},HybridRendererBase.prototype.searchExtraCompositions=function(e){var t,i=e.length,r=createTag("div");for(t=0;t<i;t+=1)if(e[t].xt){var n=this.createComp(e[t],r,this.globalData.comp,null);n.initExpressions(),this.globalData.projectInterface.registerComposition(n)}},extendPrototype([HybridRendererBase,ICompElement,HBaseElement],HCompElement),HCompElement.prototype._createBaseContainerElements=HCompElement.prototype.createContainerElements,HCompElement.prototype.createContainerElements=function(){this._createBaseContainerElements(),this.data.hasMask?(this.svgElement.setAttribute("width",this.data.w),this.svgElement.setAttribute("height",this.data.h),this.transformedElement=this.baseElement):this.transformedElement=this.layerElement},HCompElement.prototype.addTo3dContainer=function(e,t){for(var i,r=0;r<t;)this.elements[r]&&this.elements[r].getBaseElement&&(i=this.elements[r].getBaseElement()),r+=1;i?this.layerElement.insertBefore(e,i):this.layerElement.appendChild(e)},HCompElement.prototype.createComp=function(e){return this.supports3d?new HCompElement(e,this.globalData,this):new SVGCompElement(e,this.globalData,this)},extendPrototype([HybridRendererBase],HybridRenderer),HybridRenderer.prototype.createComp=function(e){return this.supports3d?new HCompElement(e,this.globalData,this):new SVGCompElement(e,this.globalData,this)};var CompExpressionInterface=function(e){function t(t){for(var i=0,r=e.layers.length;i<r;){if(e.layers[i].nm===t||e.layers[i].ind===t)return e.elements[i].layerInterface;i+=1}return null}return Object.defineProperty(t,"_name",{value:e.data.nm}),t.layer=t,t.pixelAspect=1,t.height=e.data.h||e.globalData.compSize.h,t.width=e.data.w||e.globalData.compSize.w,t.pixelAspect=1,t.frameDuration=1/e.globalData.frameRate,t.displayStartTime=0,t.numLayers=e.layers.length,t};function _typeof$2(e){return _typeof$2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$2(e)}function seedRandom(e,t){var i=this,r=256,n="random",o=t.pow(r,6),a=t.pow(2,52),s=2*a,l=255;function c(e){var t,i=e.length,n=this,o=0,a=n.i=n.j=0,s=n.S=[];for(i||(e=[i++]);o<r;)s[o]=o++;for(o=0;o<r;o++)s[o]=s[a=l&a+e[o%i]+(t=s[o])],s[a]=t;n.g=function(e){for(var t,i=0,o=n.i,a=n.j,s=n.S;e--;)t=s[o=l&o+1],i=i*r+s[l&(s[o]=s[a=l&a+t])+(s[a]=t)];return n.i=o,n.j=a,i}}function d(e,t){return t.i=e.i,t.j=e.j,t.S=e.S.slice(),t}function p(e,t){var i,r=[],n=_typeof$2(e);if(t&&"object"==n)for(i in e)try{r.push(p(e[i],t-1))}catch(e){}return r.length?r:"string"==n?e:e+"\0"}function g(e,t){for(var i,r=e+"",n=0;n<r.length;)t[l&n]=l&(i^=19*t[l&n])+r.charCodeAt(n++);return u(t)}function u(e){return String.fromCharCode.apply(0,e)}t["seed"+n]=function(l,m,h){var f=[],y=g(p((m=!0===m?{entropy:!0}:m||{}).entropy?[l,u(e)]:null===l?function(){try{var t=new Uint8Array(r);return(i.crypto||i.msCrypto).getRandomValues(t),u(t)}catch(t){var n=i.navigator,o=n&&n.plugins;return[+new Date,i,o,i.screen,u(e)]}}():l,3),f),b=new c(f),C=function(){for(var e=b.g(6),t=o,i=0;e<a;)e=(e+i)*r,t*=r,i=b.g(1);for(;e>=s;)e/=2,t/=2,i>>>=1;return(e+i)/t};return C.int32=function(){return 0|b.g(4)},C.quick=function(){return b.g(4)/4294967296},C.double=C,g(u(b.S),e),(m.pass||h||function(e,i,r,o){return o&&(o.S&&d(o,b),e.state=function(){return d(b,{})}),r?(t[n]=e,i):e})(C,y,"global"in m?m.global:this==t,m.state)},g(t.random(),e)}function initialize$2(e){seedRandom([],e)}var propTypes={SHAPE:"shape"};function _typeof$1(e){return _typeof$1="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$1(e)}var ExpressionManager=function(){var ob={},Math=BMMath,window=null,document=null,XMLHttpRequest=null,fetch=null,frames=null,_lottieGlobal={};function resetFrame(){_lottieGlobal={}}function $bm_isInstanceOfArray(e){return e.constructor===Array||e.constructor===Float32Array}function isNumerable(e,t){return"number"===e||t instanceof Number||"boolean"===e||"string"===e}function $bm_neg(e){var t=_typeof$1(e);if("number"===t||e instanceof Number||"boolean"===t)return-e;if($bm_isInstanceOfArray(e)){var i,r=e.length,n=[];for(i=0;i<r;i+=1)n[i]=-e[i];return n}return e.propType?e.v:-e}initialize$2(BMMath);var easeInBez=BezierFactory.getBezierEasing(.333,0,.833,.833,"easeIn").get,easeOutBez=BezierFactory.getBezierEasing(.167,.167,.667,1,"easeOut").get,easeInOutBez=BezierFactory.getBezierEasing(.33,0,.667,1,"easeInOut").get;function sum(e,t){var i=_typeof$1(e),r=_typeof$1(t);if(isNumerable(i,e)&&isNumerable(r,t)||"string"===i||"string"===r)return e+t;if($bm_isInstanceOfArray(e)&&isNumerable(r,t))return(e=e.slice(0))[0]+=t,e;if(isNumerable(i,e)&&$bm_isInstanceOfArray(t))return(t=t.slice(0))[0]=e+t[0],t;if($bm_isInstanceOfArray(e)&&$bm_isInstanceOfArray(t)){for(var n=0,o=e.length,a=t.length,s=[];n<o||n<a;)("number"==typeof e[n]||e[n]instanceof Number)&&("number"==typeof t[n]||t[n]instanceof Number)?s[n]=e[n]+t[n]:s[n]=void 0===t[n]?e[n]:e[n]||t[n],n+=1;return s}return 0}var add=sum;function sub(e,t){var i=_typeof$1(e),r=_typeof$1(t);if(isNumerable(i,e)&&isNumerable(r,t))return"string"===i&&(e=parseInt(e,10)),"string"===r&&(t=parseInt(t,10)),e-t;if($bm_isInstanceOfArray(e)&&isNumerable(r,t))return(e=e.slice(0))[0]-=t,e;if(isNumerable(i,e)&&$bm_isInstanceOfArray(t))return(t=t.slice(0))[0]=e-t[0],t;if($bm_isInstanceOfArray(e)&&$bm_isInstanceOfArray(t)){for(var n=0,o=e.length,a=t.length,s=[];n<o||n<a;)("number"==typeof e[n]||e[n]instanceof Number)&&("number"==typeof t[n]||t[n]instanceof Number)?s[n]=e[n]-t[n]:s[n]=void 0===t[n]?e[n]:e[n]||t[n],n+=1;return s}return 0}function mul(e,t){var i,r,n,o=_typeof$1(e),a=_typeof$1(t);if(isNumerable(o,e)&&isNumerable(a,t))return e*t;if($bm_isInstanceOfArray(e)&&isNumerable(a,t)){for(n=e.length,i=createTypedArray("float32",n),r=0;r<n;r+=1)i[r]=e[r]*t;return i}if(isNumerable(o,e)&&$bm_isInstanceOfArray(t)){for(n=t.length,i=createTypedArray("float32",n),r=0;r<n;r+=1)i[r]=e*t[r];return i}return 0}function div(e,t){var i,r,n,o=_typeof$1(e),a=_typeof$1(t);if(isNumerable(o,e)&&isNumerable(a,t))return e/t;if($bm_isInstanceOfArray(e)&&isNumerable(a,t)){for(n=e.length,i=createTypedArray("float32",n),r=0;r<n;r+=1)i[r]=e[r]/t;return i}if(isNumerable(o,e)&&$bm_isInstanceOfArray(t)){for(n=t.length,i=createTypedArray("float32",n),r=0;r<n;r+=1)i[r]=e/t[r];return i}return 0}function mod(e,t){return"string"==typeof e&&(e=parseInt(e,10)),"string"==typeof t&&(t=parseInt(t,10)),e%t}var $bm_sum=sum,$bm_sub=sub,$bm_mul=mul,$bm_div=div,$bm_mod=mod;function clamp(e,t,i){if(t>i){var r=i;i=t,t=r}return Math.min(Math.max(e,t),i)}function radiansToDegrees(e){return e/degToRads}var radians_to_degrees=radiansToDegrees;function degreesToRadians(e){return e*degToRads}var degrees_to_radians=radiansToDegrees,helperLengthArray=[0,0,0,0,0,0];function length(e,t){if("number"==typeof e||e instanceof Number)return t=t||0,Math.abs(e-t);var i;t||(t=helperLengthArray);var r=Math.min(e.length,t.length),n=0;for(i=0;i<r;i+=1)n+=Math.pow(t[i]-e[i],2);return Math.sqrt(n)}function normalize(e){return div(e,length(e))}function rgbToHsl(e){var t,i,r=e[0],n=e[1],o=e[2],a=Math.max(r,n,o),s=Math.min(r,n,o),l=(a+s)/2;if(a===s)t=0,i=0;else{var c=a-s;switch(i=l>.5?c/(2-a-s):c/(a+s),a){case r:t=(n-o)/c+(n<o?6:0);break;case n:t=(o-r)/c+2;break;case o:t=(r-n)/c+4}t/=6}return[t,i,l,e[3]]}function hue2rgb(e,t,i){return i<0&&(i+=1),i>1&&(i-=1),i<1/6?e+6*(t-e)*i:i<.5?t:i<2/3?e+(t-e)*(2/3-i)*6:e}function hslToRgb(e){var t,i,r,n=e[0],o=e[1],a=e[2];if(0===o)t=a,r=a,i=a;else{var s=a<.5?a*(1+o):a+o-a*o,l=2*a-s;t=hue2rgb(l,s,n+1/3),i=hue2rgb(l,s,n),r=hue2rgb(l,s,n-1/3)}return[t,i,r,e[3]]}function linear(e,t,i,r,n){if(void 0!==r&&void 0!==n||(r=t,n=i,t=0,i=1),i<t){var o=i;i=t,t=o}if(e<=t)return r;if(e>=i)return n;var a,s=i===t?0:(e-t)/(i-t);if(!r.length)return r+(n-r)*s;var l=r.length,c=createTypedArray("float32",l);for(a=0;a<l;a+=1)c[a]=r[a]+(n[a]-r[a])*s;return c}function random(e,t){if(void 0===t&&(void 0===e?(e=0,t=1):(t=e,e=void 0)),t.length){var i,r=t.length;e||(e=createTypedArray("float32",r));var n=createTypedArray("float32",r),o=BMMath.random();for(i=0;i<r;i+=1)n[i]=e[i]+o*(t[i]-e[i]);return n}return void 0===e&&(e=0),e+BMMath.random()*(t-e)}function createPath(e,t,i,r){var n,o=e.length,a=shapePool.newElement();a.setPathData(!!r,o);var s,l,c=[0,0];for(n=0;n<o;n+=1)s=t&&t[n]?t[n]:c,l=i&&i[n]?i[n]:c,a.setTripleAt(e[n][0],e[n][1],l[0]+e[n][0],l[1]+e[n][1],s[0]+e[n][0],s[1]+e[n][1],n,!0);return a}function initiateExpression(elem,data,property){function noOp(e){return e}if(!elem.globalData.renderConfig.runExpressions)return noOp;var val=data.x,needsVelocity=/velocity(?![\w\d])/.test(val),_needsRandom=-1!==val.indexOf("random"),elemType=elem.data.ty,transform,$bm_transform,content,effect,thisProperty=property;thisProperty._name=elem.data.nm,thisProperty.valueAtTime=thisProperty.getValueAtTime,Object.defineProperty(thisProperty,"value",{get:function(){return thisProperty.v}}),elem.comp.frameDuration=1/elem.comp.globalData.frameRate,elem.comp.displayStartTime=0;var inPoint=elem.data.ip/elem.comp.globalData.frameRate,outPoint=elem.data.op/elem.comp.globalData.frameRate,width=elem.data.sw?elem.data.sw:0,height=elem.data.sh?elem.data.sh:0,name=elem.data.nm,loopIn,loop_in,loopOut,loop_out,smooth,toWorld,fromWorld,fromComp,toComp,fromCompToSurface,position,rotation,anchorPoint,scale,thisLayer,thisComp,mask,valueAtTime,velocityAtTime,scoped_bm_rt,expression_function=eval("[function _expression_function(){"+val+";scoped_bm_rt=$bm_rt}]")[0],numKeys=property.kf?data.k.length:0,active=!this.data||!0!==this.data.hd,wiggle=function(e,t){var i,r,n=this.pv.length?this.pv.length:1,o=createTypedArray("float32",n),a=Math.floor(5*time);for(i=0,r=0;i<a;){for(r=0;r<n;r+=1)o[r]+=-t+2*t*BMMath.random();i+=1}var s=5*time,l=s-Math.floor(s),c=createTypedArray("float32",n);if(n>1){for(r=0;r<n;r+=1)c[r]=this.pv[r]+o[r]+(-t+2*t*BMMath.random())*l;return c}return this.pv+o[0]+(-t+2*t*BMMath.random())*l}.bind(this);function loopInDuration(e,t){return loopIn(e,t,!0)}function loopOutDuration(e,t){return loopOut(e,t,!0)}thisProperty.loopIn&&(loopIn=thisProperty.loopIn.bind(thisProperty),loop_in=loopIn),thisProperty.loopOut&&(loopOut=thisProperty.loopOut.bind(thisProperty),loop_out=loopOut),thisProperty.smooth&&(smooth=thisProperty.smooth.bind(thisProperty)),this.getValueAtTime&&(valueAtTime=this.getValueAtTime.bind(this)),this.getVelocityAtTime&&(velocityAtTime=this.getVelocityAtTime.bind(this));var comp=elem.comp.globalData.projectInterface.bind(elem.comp.globalData.projectInterface),time,velocity,value,text,textIndex,textTotal,selectorValue;function lookAt(e,t){var i=[t[0]-e[0],t[1]-e[1],t[2]-e[2]],r=Math.atan2(i[0],Math.sqrt(i[1]*i[1]+i[2]*i[2]))/degToRads;return[-Math.atan2(i[1],i[2])/degToRads,r,0]}function easeOut(e,t,i,r,n){return applyEase(easeOutBez,e,t,i,r,n)}function easeIn(e,t,i,r,n){return applyEase(easeInBez,e,t,i,r,n)}function ease(e,t,i,r,n){return applyEase(easeInOutBez,e,t,i,r,n)}function applyEase(e,t,i,r,n,o){void 0===n?(n=i,o=r):t=(t-i)/(r-i),t>1?t=1:t<0&&(t=0);var a=e(t);if($bm_isInstanceOfArray(n)){var s,l=n.length,c=createTypedArray("float32",l);for(s=0;s<l;s+=1)c[s]=(o[s]-n[s])*a+n[s];return c}return(o-n)*a+n}function nearestKey(e){var t,i,r,n=data.k.length;if(data.k.length&&"number"!=typeof data.k[0])if(i=-1,(e*=elem.comp.globalData.frameRate)<data.k[0].t)i=1,r=data.k[0].t;else{for(t=0;t<n-1;t+=1){if(e===data.k[t].t){i=t+1,r=data.k[t].t;break}if(e>data.k[t].t&&e<data.k[t+1].t){e-data.k[t].t>data.k[t+1].t-e?(i=t+2,r=data.k[t+1].t):(i=t+1,r=data.k[t].t);break}}-1===i&&(i=t+1,r=data.k[t].t)}else i=0,r=0;var o={};return o.index=i,o.time=r/elem.comp.globalData.frameRate,o}function key(e){var t,i,r;if(!data.k.length||"number"==typeof data.k[0])throw new Error("The property has no keyframe at index "+e);e-=1,t={time:data.k[e].t/elem.comp.globalData.frameRate,value:[]};var n=Object.prototype.hasOwnProperty.call(data.k[e],"s")?data.k[e].s:data.k[e-1].e;for(r=n.length,i=0;i<r;i+=1)t[i]=n[i],t.value[i]=n[i];return t}function framesToTime(e,t){return t||(t=elem.comp.globalData.frameRate),e/t}function timeToFrames(e,t){return e||0===e||(e=time),t||(t=elem.comp.globalData.frameRate),e*t}function seedRandom(e){BMMath.seedrandom(randSeed+e)}function sourceRectAtTime(){return elem.sourceRectAtTime()}function substring(e,t){return"string"==typeof value?void 0===t?value.substring(e):value.substring(e,t):""}function substr(e,t){return"string"==typeof value?void 0===t?value.substr(e):value.substr(e,t):""}function posterizeTime(e){time=0===e?0:Math.floor(time*e)/e,value=valueAtTime(time)}var index=elem.data.ind,hasParent=!(!elem.hierarchy||!elem.hierarchy.length),parent,randSeed=Math.floor(1e6*Math.random()),globalData=elem.globalData;function executeExpression(e){return value=e,this.frameExpressionId===elem.globalData.frameId&&"textSelector"!==this.propType?value:("textSelector"===this.propType&&(textIndex=this.textIndex,textTotal=this.textTotal,selectorValue=this.selectorValue),thisLayer||(text=elem.layerInterface.text,thisLayer=elem.layerInterface,thisComp=elem.comp.compInterface,toWorld=thisLayer.toWorld.bind(thisLayer),fromWorld=thisLayer.fromWorld.bind(thisLayer),fromComp=thisLayer.fromComp.bind(thisLayer),toComp=thisLayer.toComp.bind(thisLayer),mask=thisLayer.mask?thisLayer.mask.bind(thisLayer):null,fromCompToSurface=fromComp),transform||(transform=elem.layerInterface("ADBE Transform Group"),$bm_transform=transform,transform&&(anchorPoint=transform.anchorPoint)),4!==elemType||content||(content=thisLayer("ADBE Root Vectors Group")),effect||(effect=thisLayer(4)),(hasParent=!(!elem.hierarchy||!elem.hierarchy.length))&&!parent&&(parent=elem.hierarchy[0].layerInterface),time=this.comp.renderedFrame/this.comp.globalData.frameRate,_needsRandom&&seedRandom(randSeed+time),needsVelocity&&(velocity=velocityAtTime(time)),expression_function(),this.frameExpressionId=elem.globalData.frameId,scoped_bm_rt=scoped_bm_rt.propType===propTypes.SHAPE?scoped_bm_rt.v:scoped_bm_rt)}return executeExpression.__preventDeadCodeRemoval=[$bm_transform,anchorPoint,time,velocity,inPoint,outPoint,width,height,name,loop_in,loop_out,smooth,toComp,fromCompToSurface,toWorld,fromWorld,mask,position,rotation,scale,thisComp,numKeys,active,wiggle,loopInDuration,loopOutDuration,comp,lookAt,easeOut,easeIn,ease,nearestKey,key,text,textIndex,textTotal,selectorValue,framesToTime,timeToFrames,sourceRectAtTime,substring,substr,posterizeTime,index,globalData],executeExpression}return ob.initiateExpression=initiateExpression,ob.__preventDeadCodeRemoval=[window,document,XMLHttpRequest,fetch,frames,$bm_neg,add,$bm_sum,$bm_sub,$bm_mul,$bm_div,$bm_mod,clamp,radians_to_degrees,degreesToRadians,degrees_to_radians,normalize,rgbToHsl,hslToRgb,linear,random,createPath,_lottieGlobal],ob.resetFrame=resetFrame,ob}(),Expressions=function(){var e={initExpressions:function(e){var t=0,i=[];e.renderer.compInterface=CompExpressionInterface(e.renderer),e.renderer.globalData.projectInterface.registerComposition(e.renderer),e.renderer.globalData.pushExpression=function(){t+=1},e.renderer.globalData.popExpression=function(){0==(t-=1)&&function(){var e,t=i.length;for(e=0;e<t;e+=1)i[e].release();i.length=0}()},e.renderer.globalData.registerExpressionProperty=function(e){-1===i.indexOf(e)&&i.push(e)}}};return e.resetFrame=ExpressionManager.resetFrame,e}(),MaskManagerInterface=function(){function e(e,t){this._mask=e,this._data=t}return Object.defineProperty(e.prototype,"maskPath",{get:function(){return this._mask.prop.k&&this._mask.prop.getValue(),this._mask.prop}}),Object.defineProperty(e.prototype,"maskOpacity",{get:function(){return this._mask.op.k&&this._mask.op.getValue(),100*this._mask.op.v}}),function(t){var i,r=createSizedArray(t.viewData.length),n=t.viewData.length;for(i=0;i<n;i+=1)r[i]=new e(t.viewData[i],t.masksProperties[i]);return function(e){for(i=0;i<n;){if(t.masksProperties[i].nm===e)return r[i];i+=1}return null}}}(),ExpressionPropertyInterface=function(){var e={pv:0,v:0,mult:1},t={pv:[0,0,0],v:[0,0,0],mult:1};function i(e,t,i){Object.defineProperty(e,"velocity",{get:function(){return t.getVelocityAtTime(t.comp.currentFrame)}}),e.numKeys=t.keyframes?t.keyframes.length:0,e.key=function(r){if(!e.numKeys)return 0;var n="";n="s"in t.keyframes[r-1]?t.keyframes[r-1].s:"e"in t.keyframes[r-2]?t.keyframes[r-2].e:t.keyframes[r-2].s;var o="unidimensional"===i?new Number(n):Object.assign({},n);return o.time=t.keyframes[r-1].t/t.elem.comp.globalData.frameRate,o.value="unidimensional"===i?n[0]:n,o},e.valueAtTime=t.getValueAtTime,e.speedAtTime=t.getSpeedAtTime,e.velocityAtTime=t.getVelocityAtTime,e.propertyGroup=t.propertyGroup}function r(){return e}return function(n){return n?"unidimensional"===n.propType?function(t){t&&"pv"in t||(t=e);var r=1/t.mult,n=t.pv*r,o=new Number(n);return o.value=n,i(o,t,"unidimensional"),function(){return t.k&&t.getValue(),n=t.v*r,o.value!==n&&((o=new Number(n)).value=n,o[0]=n,i(o,t,"unidimensional")),o}}(n):function(e){e&&"pv"in e||(e=t);var r=1/e.mult,n=e.data&&e.data.l||e.pv.length,o=createTypedArray("float32",n),a=createTypedArray("float32",n);return o.value=a,i(o,e,"multidimensional"),function(){e.k&&e.getValue();for(var t=0;t<n;t+=1)a[t]=e.v[t]*r,o[t]=a[t];return o}}(n):r}}(),TransformExpressionInterface=function(e){function t(e){switch(e){case"scale":case"Scale":case"ADBE Scale":case 6:return t.scale;case"rotation":case"Rotation":case"ADBE Rotation":case"ADBE Rotate Z":case 10:return t.rotation;case"ADBE Rotate X":return t.xRotation;case"ADBE Rotate Y":return t.yRotation;case"position":case"Position":case"ADBE Position":case 2:return t.position;case"ADBE Position_0":return t.xPosition;case"ADBE Position_1":return t.yPosition;case"ADBE Position_2":return t.zPosition;case"anchorPoint":case"AnchorPoint":case"Anchor Point":case"ADBE AnchorPoint":case 1:return t.anchorPoint;case"opacity":case"Opacity":case 11:return t.opacity;default:return null}}var i,r,n,o;return Object.defineProperty(t,"rotation",{get:ExpressionPropertyInterface(e.r||e.rz)}),Object.defineProperty(t,"zRotation",{get:ExpressionPropertyInterface(e.rz||e.r)}),Object.defineProperty(t,"xRotation",{get:ExpressionPropertyInterface(e.rx)}),Object.defineProperty(t,"yRotation",{get:ExpressionPropertyInterface(e.ry)}),Object.defineProperty(t,"scale",{get:ExpressionPropertyInterface(e.s)}),e.p?o=ExpressionPropertyInterface(e.p):(i=ExpressionPropertyInterface(e.px),r=ExpressionPropertyInterface(e.py),e.pz&&(n=ExpressionPropertyInterface(e.pz))),Object.defineProperty(t,"position",{get:function(){return e.p?o():[i(),r(),n?n():0]}}),Object.defineProperty(t,"xPosition",{get:ExpressionPropertyInterface(e.px)}),Object.defineProperty(t,"yPosition",{get:ExpressionPropertyInterface(e.py)}),Object.defineProperty(t,"zPosition",{get:ExpressionPropertyInterface(e.pz)}),Object.defineProperty(t,"anchorPoint",{get:ExpressionPropertyInterface(e.a)}),Object.defineProperty(t,"opacity",{get:ExpressionPropertyInterface(e.o)}),Object.defineProperty(t,"skew",{get:ExpressionPropertyInterface(e.sk)}),Object.defineProperty(t,"skewAxis",{get:ExpressionPropertyInterface(e.sa)}),Object.defineProperty(t,"orientation",{get:ExpressionPropertyInterface(e.or)}),t},LayerExpressionInterface=function(){function e(e){var t=new Matrix;return void 0!==e?this._elem.finalTransform.mProp.getValueAtTime(e).clone(t):this._elem.finalTransform.mProp.applyToMatrix(t),t}function t(e,t){var i=this.getMatrix(t);return i.props[12]=0,i.props[13]=0,i.props[14]=0,this.applyPoint(i,e)}function i(e,t){var i=this.getMatrix(t);return this.applyPoint(i,e)}function r(e,t){var i=this.getMatrix(t);return i.props[12]=0,i.props[13]=0,i.props[14]=0,this.invertPoint(i,e)}function n(e,t){var i=this.getMatrix(t);return this.invertPoint(i,e)}function o(e,t){if(this._elem.hierarchy&&this._elem.hierarchy.length){var i,r=this._elem.hierarchy.length;for(i=0;i<r;i+=1)this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(e)}return e.applyToPointArray(t[0],t[1],t[2]||0)}function a(e,t){if(this._elem.hierarchy&&this._elem.hierarchy.length){var i,r=this._elem.hierarchy.length;for(i=0;i<r;i+=1)this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(e)}return e.inversePoint(t)}function s(e){var t=new Matrix;if(t.reset(),this._elem.finalTransform.mProp.applyToMatrix(t),this._elem.hierarchy&&this._elem.hierarchy.length){var i,r=this._elem.hierarchy.length;for(i=0;i<r;i+=1)this._elem.hierarchy[i].finalTransform.mProp.applyToMatrix(t);return t.inversePoint(e)}return t.inversePoint(e)}function l(){return[1,1,1,1]}return function(c){var d;function p(e){switch(e){case"ADBE Root Vectors Group":case"Contents":case 2:return p.shapeInterface;case 1:case 6:case"Transform":case"transform":case"ADBE Transform Group":return d;case 4:case"ADBE Effect Parade":case"effects":case"Effects":return p.effect;case"ADBE Text Properties":return p.textInterface;default:return null}}p.getMatrix=e,p.invertPoint=a,p.applyPoint=o,p.toWorld=i,p.toWorldVec=t,p.fromWorld=n,p.fromWorldVec=r,p.toComp=i,p.fromComp=s,p.sampleImage=l,p.sourceRectAtTime=c.sourceRectAtTime.bind(c),p._elem=c;var g=getDescriptor(d=TransformExpressionInterface(c.finalTransform.mProp),"anchorPoint");return Object.defineProperties(p,{hasParent:{get:function(){return c.hierarchy.length}},parent:{get:function(){return c.hierarchy[0].layerInterface}},rotation:getDescriptor(d,"rotation"),scale:getDescriptor(d,"scale"),position:getDescriptor(d,"position"),opacity:getDescriptor(d,"opacity"),anchorPoint:g,anchor_point:g,transform:{get:function(){return d}},active:{get:function(){return c.isInRange}}}),p.startTime=c.data.st,p.index=c.data.ind,p.source=c.data.refId,p.height=0===c.data.ty?c.data.h:100,p.width=0===c.data.ty?c.data.w:100,p.inPoint=c.data.ip/c.comp.globalData.frameRate,p.outPoint=c.data.op/c.comp.globalData.frameRate,p._name=c.data.nm,p.registerMaskInterface=function(e){p.mask=new MaskManagerInterface(e,c)},p.registerEffectsInterface=function(e){p.effect=e},p}}(),propertyGroupFactory=function(e,t){return function(i){return(i=void 0===i?1:i)<=0?e:t(i-1)}},PropertyInterface=function(e,t){var i={_name:e};return function(e){return(e=void 0===e?1:e)<=0?i:t(e-1)}},EffectsExpressionInterface=function(){var e={createEffectsInterface:function(e,i){if(e.effectsManager){var r,n=[],o=e.data.ef,a=e.effectsManager.effectElements.length;for(r=0;r<a;r+=1)n.push(t(o[r],e.effectsManager.effectElements[r],i,e));var s=e.data.ef||[],l=function(e){for(r=0,a=s.length;r<a;){if(e===s[r].nm||e===s[r].mn||e===s[r].ix)return n[r];r+=1}return null};return Object.defineProperty(l,"numProperties",{get:function(){return s.length}}),l}return null}};function t(e,r,n,o){function a(t){for(var i=e.ef,r=0,n=i.length;r<n;){if(t===i[r].nm||t===i[r].mn||t===i[r].ix)return 5===i[r].ty?c[r]:c[r]();r+=1}throw new Error}var s,l=propertyGroupFactory(a,n),c=[],d=e.ef.length;for(s=0;s<d;s+=1)5===e.ef[s].ty?c.push(t(e.ef[s],r.effectElements[s],r.effectElements[s].propertyGroup,o)):c.push(i(r.effectElements[s],e.ef[s].ty,o,l));return"ADBE Color Control"===e.mn&&Object.defineProperty(a,"color",{get:function(){return c[0]()}}),Object.defineProperties(a,{numProperties:{get:function(){return e.np}},_name:{value:e.nm},propertyGroup:{value:l}}),a.enabled=0!==e.en,a.active=a.enabled,a}function i(e,t,i,r){var n=ExpressionPropertyInterface(e.p);return e.p.setGroupProperty&&e.p.setGroupProperty(PropertyInterface("",r)),function(){return 10===t?i.comp.compInterface(e.p.v):n()}}return e}(),ShapePathInterface=function(e,t,i){var r=t.sh;function n(e){return"Shape"===e||"shape"===e||"Path"===e||"path"===e||"ADBE Vector Shape"===e||2===e?n.path:null}var o=propertyGroupFactory(n,i);return r.setGroupProperty(PropertyInterface("Path",o)),Object.defineProperties(n,{path:{get:function(){return r.k&&r.getValue(),r}},shape:{get:function(){return r.k&&r.getValue(),r}},_name:{value:e.nm},ix:{value:e.ix},propertyIndex:{value:e.ix},mn:{value:e.mn},propertyGroup:{value:i}}),n},ShapeExpressionInterface=function(){function e(e,s,u){var m,h=[],f=e?e.length:0;for(m=0;m<f;m+=1)"gr"===e[m].ty?h.push(t(e[m],s[m],u)):"fl"===e[m].ty?h.push(i(e[m],s[m],u)):"st"===e[m].ty?h.push(o(e[m],s[m],u)):"tm"===e[m].ty?h.push(a(e[m],s[m],u)):"tr"===e[m].ty||("el"===e[m].ty?h.push(l(e[m],s[m],u)):"sr"===e[m].ty?h.push(c(e[m],s[m],u)):"sh"===e[m].ty?h.push(ShapePathInterface(e[m],s[m],u)):"rc"===e[m].ty?h.push(d(e[m],s[m],u)):"rd"===e[m].ty?h.push(p(e[m],s[m],u)):"rp"===e[m].ty?h.push(g(e[m],s[m],u)):"gf"===e[m].ty?h.push(r(e[m],s[m],u)):h.push(n(e[m],s[m])));return h}function t(t,i,r){var n=function(e){switch(e){case"ADBE Vectors Group":case"Contents":case 2:return n.content;default:return n.transform}};n.propertyGroup=propertyGroupFactory(n,r);var o=function(t,i,r){var n,o=function(e){for(var t=0,i=n.length;t<i;){if(n[t]._name===e||n[t].mn===e||n[t].propertyIndex===e||n[t].ix===e||n[t].ind===e)return n[t];t+=1}return"number"==typeof e?n[e-1]:null};o.propertyGroup=propertyGroupFactory(o,r),n=e(t.it,i.it,o.propertyGroup),o.numProperties=n.length;var a=s(t.it[t.it.length-1],i.it[i.it.length-1],o.propertyGroup);return o.transform=a,o.propertyIndex=t.cix,o._name=t.nm,o}(t,i,n.propertyGroup),a=s(t.it[t.it.length-1],i.it[i.it.length-1],n.propertyGroup);return n.content=o,n.transform=a,Object.defineProperty(n,"_name",{get:function(){return t.nm}}),n.numProperties=t.np,n.propertyIndex=t.ix,n.nm=t.nm,n.mn=t.mn,n}function i(e,t,i){function r(e){return"Color"===e||"color"===e?r.color:"Opacity"===e||"opacity"===e?r.opacity:null}return Object.defineProperties(r,{color:{get:ExpressionPropertyInterface(t.c)},opacity:{get:ExpressionPropertyInterface(t.o)},_name:{value:e.nm},mn:{value:e.mn}}),t.c.setGroupProperty(PropertyInterface("Color",i)),t.o.setGroupProperty(PropertyInterface("Opacity",i)),r}function r(e,t,i){function r(e){return"Start Point"===e||"start point"===e?r.startPoint:"End Point"===e||"end point"===e?r.endPoint:"Opacity"===e||"opacity"===e?r.opacity:null}return Object.defineProperties(r,{startPoint:{get:ExpressionPropertyInterface(t.s)},endPoint:{get:ExpressionPropertyInterface(t.e)},opacity:{get:ExpressionPropertyInterface(t.o)},type:{get:function(){return"a"}},_name:{value:e.nm},mn:{value:e.mn}}),t.s.setGroupProperty(PropertyInterface("Start Point",i)),t.e.setGroupProperty(PropertyInterface("End Point",i)),t.o.setGroupProperty(PropertyInterface("Opacity",i)),r}function n(){return function(){return null}}function o(e,t,i){var r,n=propertyGroupFactory(c,i),o=propertyGroupFactory(l,n);function a(i){Object.defineProperty(l,e.d[i].nm,{get:ExpressionPropertyInterface(t.d.dataProps[i].p)})}var s=e.d?e.d.length:0,l={};for(r=0;r<s;r+=1)a(r),t.d.dataProps[r].p.setGroupProperty(o);function c(e){return"Color"===e||"color"===e?c.color:"Opacity"===e||"opacity"===e?c.opacity:"Stroke Width"===e||"stroke width"===e?c.strokeWidth:null}return Object.defineProperties(c,{color:{get:ExpressionPropertyInterface(t.c)},opacity:{get:ExpressionPropertyInterface(t.o)},strokeWidth:{get:ExpressionPropertyInterface(t.w)},dash:{get:function(){return l}},_name:{value:e.nm},mn:{value:e.mn}}),t.c.setGroupProperty(PropertyInterface("Color",n)),t.o.setGroupProperty(PropertyInterface("Opacity",n)),t.w.setGroupProperty(PropertyInterface("Stroke Width",n)),c}function a(e,t,i){function r(t){return t===e.e.ix||"End"===t||"end"===t?r.end:t===e.s.ix?r.start:t===e.o.ix?r.offset:null}var n=propertyGroupFactory(r,i);return r.propertyIndex=e.ix,t.s.setGroupProperty(PropertyInterface("Start",n)),t.e.setGroupProperty(PropertyInterface("End",n)),t.o.setGroupProperty(PropertyInterface("Offset",n)),r.propertyIndex=e.ix,r.propertyGroup=i,Object.defineProperties(r,{start:{get:ExpressionPropertyInterface(t.s)},end:{get:ExpressionPropertyInterface(t.e)},offset:{get:ExpressionPropertyInterface(t.o)},_name:{value:e.nm}}),r.mn=e.mn,r}function s(e,t,i){function r(t){return e.a.ix===t||"Anchor Point"===t?r.anchorPoint:e.o.ix===t||"Opacity"===t?r.opacity:e.p.ix===t||"Position"===t?r.position:e.r.ix===t||"Rotation"===t||"ADBE Vector Rotation"===t?r.rotation:e.s.ix===t||"Scale"===t?r.scale:e.sk&&e.sk.ix===t||"Skew"===t?r.skew:e.sa&&e.sa.ix===t||"Skew Axis"===t?r.skewAxis:null}var n=propertyGroupFactory(r,i);return t.transform.mProps.o.setGroupProperty(PropertyInterface("Opacity",n)),t.transform.mProps.p.setGroupProperty(PropertyInterface("Position",n)),t.transform.mProps.a.setGroupProperty(PropertyInterface("Anchor Point",n)),t.transform.mProps.s.setGroupProperty(PropertyInterface("Scale",n)),t.transform.mProps.r.setGroupProperty(PropertyInterface("Rotation",n)),t.transform.mProps.sk&&(t.transform.mProps.sk.setGroupProperty(PropertyInterface("Skew",n)),t.transform.mProps.sa.setGroupProperty(PropertyInterface("Skew Angle",n))),t.transform.op.setGroupProperty(PropertyInterface("Opacity",n)),Object.defineProperties(r,{opacity:{get:ExpressionPropertyInterface(t.transform.mProps.o)},position:{get:ExpressionPropertyInterface(t.transform.mProps.p)},anchorPoint:{get:ExpressionPropertyInterface(t.transform.mProps.a)},scale:{get:ExpressionPropertyInterface(t.transform.mProps.s)},rotation:{get:ExpressionPropertyInterface(t.transform.mProps.r)},skew:{get:ExpressionPropertyInterface(t.transform.mProps.sk)},skewAxis:{get:ExpressionPropertyInterface(t.transform.mProps.sa)},_name:{value:e.nm}}),r.ty="tr",r.mn=e.mn,r.propertyGroup=i,r}function l(e,t,i){function r(t){return e.p.ix===t?r.position:e.s.ix===t?r.size:null}var n=propertyGroupFactory(r,i);r.propertyIndex=e.ix;var o="tm"===t.sh.ty?t.sh.prop:t.sh;return o.s.setGroupProperty(PropertyInterface("Size",n)),o.p.setGroupProperty(PropertyInterface("Position",n)),Object.defineProperties(r,{size:{get:ExpressionPropertyInterface(o.s)},position:{get:ExpressionPropertyInterface(o.p)},_name:{value:e.nm}}),r.mn=e.mn,r}function c(e,t,i){function r(t){return e.p.ix===t?r.position:e.r.ix===t?r.rotation:e.pt.ix===t?r.points:e.or.ix===t||"ADBE Vector Star Outer Radius"===t?r.outerRadius:e.os.ix===t?r.outerRoundness:!e.ir||e.ir.ix!==t&&"ADBE Vector Star Inner Radius"!==t?e.is&&e.is.ix===t?r.innerRoundness:null:r.innerRadius}var n=propertyGroupFactory(r,i),o="tm"===t.sh.ty?t.sh.prop:t.sh;return r.propertyIndex=e.ix,o.or.setGroupProperty(PropertyInterface("Outer Radius",n)),o.os.setGroupProperty(PropertyInterface("Outer Roundness",n)),o.pt.setGroupProperty(PropertyInterface("Points",n)),o.p.setGroupProperty(PropertyInterface("Position",n)),o.r.setGroupProperty(PropertyInterface("Rotation",n)),e.ir&&(o.ir.setGroupProperty(PropertyInterface("Inner Radius",n)),o.is.setGroupProperty(PropertyInterface("Inner Roundness",n))),Object.defineProperties(r,{position:{get:ExpressionPropertyInterface(o.p)},rotation:{get:ExpressionPropertyInterface(o.r)},points:{get:ExpressionPropertyInterface(o.pt)},outerRadius:{get:ExpressionPropertyInterface(o.or)},outerRoundness:{get:ExpressionPropertyInterface(o.os)},innerRadius:{get:ExpressionPropertyInterface(o.ir)},innerRoundness:{get:ExpressionPropertyInterface(o.is)},_name:{value:e.nm}}),r.mn=e.mn,r}function d(e,t,i){function r(t){return e.p.ix===t?r.position:e.r.ix===t?r.roundness:e.s.ix===t||"Size"===t||"ADBE Vector Rect Size"===t?r.size:null}var n=propertyGroupFactory(r,i),o="tm"===t.sh.ty?t.sh.prop:t.sh;return r.propertyIndex=e.ix,o.p.setGroupProperty(PropertyInterface("Position",n)),o.s.setGroupProperty(PropertyInterface("Size",n)),o.r.setGroupProperty(PropertyInterface("Rotation",n)),Object.defineProperties(r,{position:{get:ExpressionPropertyInterface(o.p)},roundness:{get:ExpressionPropertyInterface(o.r)},size:{get:ExpressionPropertyInterface(o.s)},_name:{value:e.nm}}),r.mn=e.mn,r}function p(e,t,i){function r(t){return e.r.ix===t||"Round Corners 1"===t?r.radius:null}var n=propertyGroupFactory(r,i),o=t;return r.propertyIndex=e.ix,o.rd.setGroupProperty(PropertyInterface("Radius",n)),Object.defineProperties(r,{radius:{get:ExpressionPropertyInterface(o.rd)},_name:{value:e.nm}}),r.mn=e.mn,r}function g(e,t,i){function r(t){return e.c.ix===t||"Copies"===t?r.copies:e.o.ix===t||"Offset"===t?r.offset:null}var n=propertyGroupFactory(r,i),o=t;return r.propertyIndex=e.ix,o.c.setGroupProperty(PropertyInterface("Copies",n)),o.o.setGroupProperty(PropertyInterface("Offset",n)),Object.defineProperties(r,{copies:{get:ExpressionPropertyInterface(o.c)},offset:{get:ExpressionPropertyInterface(o.o)},_name:{value:e.nm}}),r.mn=e.mn,r}return function(t,i,r){var n;function o(e){if("number"==typeof e)return 0===(e=void 0===e?1:e)?r:n[e-1];for(var t=0,i=n.length;t<i;){if(n[t]._name===e)return n[t];t+=1}return null}return o.propertyGroup=propertyGroupFactory(o,function(){return r}),n=e(t,i,o.propertyGroup),o.numProperties=n.length,o._name="Contents",o}}(),TextExpressionInterface=function(e){var t;function i(e){return"ADBE Text Document"===e?i.sourceText:null}return Object.defineProperty(i,"sourceText",{get:function(){e.textProperty.getValue();var i=e.textProperty.currentData.t;return t&&i===t.value||((t=new String(i)).value=i||new String(i),Object.defineProperty(t,"style",{get:function(){return{fillColor:e.textProperty.currentData.fc}}})),t}}),i};function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}var FootageInterface=(dataInterfaceFactory=function(e){function t(e){return"Outline"===e?t.outlineInterface():null}return t._name="Outline",t.outlineInterface=function(e){var t="",i=e.getFootageData();function r(e){if(i[e])return t=e,"object"===_typeof(i=i[e])?r:i;var n=e.indexOf(t);if(-1!==n){var o=parseInt(e.substr(n+t.length),10);return"object"===_typeof(i=i[o])?r:i}return""}return function(){return t="",i=e.getFootageData(),r}}(e),t},function(e){function t(e){return"Data"===e?t.dataInterface:null}return t._name="Data",t.dataInterface=dataInterfaceFactory(e),t}),dataInterfaceFactory,interfaces={layer:LayerExpressionInterface,effects:EffectsExpressionInterface,comp:CompExpressionInterface,shape:ShapeExpressionInterface,text:TextExpressionInterface,footage:FootageInterface};function getInterface(e){return interfaces[e]||null}var expressionHelpers={searchExpressions:function(e,t,i){t.x&&(i.k=!0,i.x=!0,i.initiateExpression=ExpressionManager.initiateExpression,i.effectsSequence.push(i.initiateExpression(e,t,i).bind(i)))},getSpeedAtTime:function(e){var t=this.getValueAtTime(e),i=this.getValueAtTime(e+-.01),r=0;if(t.length){var n;for(n=0;n<t.length;n+=1)r+=Math.pow(i[n]-t[n],2);r=100*Math.sqrt(r)}else r=0;return r},getVelocityAtTime:function(e){if(void 0!==this.vel)return this.vel;var t,i,r=-.001,n=this.getValueAtTime(e),o=this.getValueAtTime(e+r);if(n.length)for(t=createTypedArray("float32",n.length),i=0;i<n.length;i+=1)t[i]=(o[i]-n[i])/r;else t=(o-n)/r;return t},getValueAtTime:function(e){return e*=this.elem.globalData.frameRate,(e-=this.offsetTime)!==this._cachingAtTime.lastFrame&&(this._cachingAtTime.lastIndex=this._cachingAtTime.lastFrame<e?this._cachingAtTime.lastIndex:0,this._cachingAtTime.value=this.interpolateValue(e,this._cachingAtTime),this._cachingAtTime.lastFrame=e),this._cachingAtTime.value},getStaticValueAtTime:function(){return this.pv},setGroupProperty:function(e){this.propertyGroup=e}};function addPropertyDecorator(){function e(e,t,i){if(!this.k||!this.keyframes)return this.pv;e=e?e.toLowerCase():"";var r,n,o,a,s,l=this.comp.renderedFrame,c=this.keyframes,d=c[c.length-1].t;if(l<=d)return this.pv;if(i?n=d-(r=t?Math.abs(d-this.elem.comp.globalData.frameRate*t):Math.max(0,d-this.elem.data.ip)):((!t||t>c.length-1)&&(t=c.length-1),r=d-(n=c[c.length-1-t].t)),"pingpong"===e){if(Math.floor((l-n)/r)%2!=0)return this.getValueAtTime((r-(l-n)%r+n)/this.comp.globalData.frameRate,0)}else{if("offset"===e){var p=this.getValueAtTime(n/this.comp.globalData.frameRate,0),g=this.getValueAtTime(d/this.comp.globalData.frameRate,0),u=this.getValueAtTime(((l-n)%r+n)/this.comp.globalData.frameRate,0),m=Math.floor((l-n)/r);if(this.pv.length){for(a=(s=new Array(p.length)).length,o=0;o<a;o+=1)s[o]=(g[o]-p[o])*m+u[o];return s}return(g-p)*m+u}if("continue"===e){var h=this.getValueAtTime(d/this.comp.globalData.frameRate,0),f=this.getValueAtTime((d-.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(a=(s=new Array(h.length)).length,o=0;o<a;o+=1)s[o]=h[o]+(h[o]-f[o])*((l-d)/this.comp.globalData.frameRate)/5e-4;return s}return h+(l-d)/.001*(h-f)}}return this.getValueAtTime(((l-n)%r+n)/this.comp.globalData.frameRate,0)}function t(e,t,i){if(!this.k)return this.pv;e=e?e.toLowerCase():"";var r,n,o,a,s,l=this.comp.renderedFrame,c=this.keyframes,d=c[0].t;if(l>=d)return this.pv;if(i?n=d+(r=t?Math.abs(this.elem.comp.globalData.frameRate*t):Math.max(0,this.elem.data.op-d)):((!t||t>c.length-1)&&(t=c.length-1),r=(n=c[t].t)-d),"pingpong"===e){if(Math.floor((d-l)/r)%2==0)return this.getValueAtTime(((d-l)%r+d)/this.comp.globalData.frameRate,0)}else{if("offset"===e){var p=this.getValueAtTime(d/this.comp.globalData.frameRate,0),g=this.getValueAtTime(n/this.comp.globalData.frameRate,0),u=this.getValueAtTime((r-(d-l)%r+d)/this.comp.globalData.frameRate,0),m=Math.floor((d-l)/r)+1;if(this.pv.length){for(a=(s=new Array(p.length)).length,o=0;o<a;o+=1)s[o]=u[o]-(g[o]-p[o])*m;return s}return u-(g-p)*m}if("continue"===e){var h=this.getValueAtTime(d/this.comp.globalData.frameRate,0),f=this.getValueAtTime((d+.001)/this.comp.globalData.frameRate,0);if(this.pv.length){for(a=(s=new Array(h.length)).length,o=0;o<a;o+=1)s[o]=h[o]+(h[o]-f[o])*(d-l)/.001;return s}return h+(h-f)*(d-l)/.001}}return this.getValueAtTime((r-((d-l)%r+d))/this.comp.globalData.frameRate,0)}function i(e,t){if(!this.k)return this.pv;if(e=.5*(e||.4),(t=Math.floor(t||5))<=1)return this.pv;var i,r,n=this.comp.renderedFrame/this.comp.globalData.frameRate,o=n-e,a=t>1?(n+e-o)/(t-1):1,s=0,l=0;for(i=this.pv.length?createTypedArray("float32",this.pv.length):0;s<t;){if(r=this.getValueAtTime(o+s*a),this.pv.length)for(l=0;l<this.pv.length;l+=1)i[l]+=r[l];else i+=r;s+=1}if(this.pv.length)for(l=0;l<this.pv.length;l+=1)i[l]/=t;else i/=t;return i}function r(e){this._transformCachingAtTime||(this._transformCachingAtTime={v:new Matrix});var t=this._transformCachingAtTime.v;if(t.cloneFromProps(this.pre.props),this.appliedTransformations<1){var i=this.a.getValueAtTime(e);t.translate(-i[0]*this.a.mult,-i[1]*this.a.mult,i[2]*this.a.mult)}if(this.appliedTransformations<2){var r=this.s.getValueAtTime(e);t.scale(r[0]*this.s.mult,r[1]*this.s.mult,r[2]*this.s.mult)}if(this.sk&&this.appliedTransformations<3){var n=this.sk.getValueAtTime(e),o=this.sa.getValueAtTime(e);t.skewFromAxis(-n*this.sk.mult,o*this.sa.mult)}if(this.r&&this.appliedTransformations<4){var a=this.r.getValueAtTime(e);t.rotate(-a*this.r.mult)}else if(!this.r&&this.appliedTransformations<4){var s=this.rz.getValueAtTime(e),l=this.ry.getValueAtTime(e),c=this.rx.getValueAtTime(e),d=this.or.getValueAtTime(e);t.rotateZ(-s*this.rz.mult).rotateY(l*this.ry.mult).rotateX(c*this.rx.mult).rotateZ(-d[2]*this.or.mult).rotateY(d[1]*this.or.mult).rotateX(d[0]*this.or.mult)}if(this.data.p&&this.data.p.s){var p=this.px.getValueAtTime(e),g=this.py.getValueAtTime(e);if(this.data.p.z){var u=this.pz.getValueAtTime(e);t.translate(p*this.px.mult,g*this.py.mult,-u*this.pz.mult)}else t.translate(p*this.px.mult,g*this.py.mult,0)}else{var m=this.p.getValueAtTime(e);t.translate(m[0]*this.p.mult,m[1]*this.p.mult,-m[2]*this.p.mult)}return t}function n(){return this.v.clone(new Matrix)}var o=TransformPropertyFactory.getTransformProperty;TransformPropertyFactory.getTransformProperty=function(e,t,i){var a=o(e,t,i);return a.dynamicProperties.length?a.getValueAtTime=r.bind(a):a.getValueAtTime=n.bind(a),a.setGroupProperty=expressionHelpers.setGroupProperty,a};var a=PropertyFactory.getProp;PropertyFactory.getProp=function(r,n,o,s,l){var c=a(r,n,o,s,l);c.kf?c.getValueAtTime=expressionHelpers.getValueAtTime.bind(c):c.getValueAtTime=expressionHelpers.getStaticValueAtTime.bind(c),c.setGroupProperty=expressionHelpers.setGroupProperty,c.loopOut=e,c.loopIn=t,c.smooth=i,c.getVelocityAtTime=expressionHelpers.getVelocityAtTime.bind(c),c.getSpeedAtTime=expressionHelpers.getSpeedAtTime.bind(c),c.numKeys=1===n.a?n.k.length:0,c.propertyIndex=n.ix;var d=0;return 0!==o&&(d=createTypedArray("float32",1===n.a?n.k[0].s.length:n.k.length)),c._cachingAtTime={lastFrame:initialDefaultFrame,lastIndex:0,value:d},expressionHelpers.searchExpressions(r,n,c),c.k&&l.addDynamicProperty(c),c};var s=ShapePropertyFactory.getConstructorFunction(),l=ShapePropertyFactory.getKeyframedConstructorFunction();function c(){}c.prototype={vertices:function(e,t){this.k&&this.getValue();var i,r=this.v;void 0!==t&&(r=this.getValueAtTime(t,0));var n=r._length,o=r[e],a=r.v,s=createSizedArray(n);for(i=0;i<n;i+=1)s[i]="i"===e||"o"===e?[o[i][0]-a[i][0],o[i][1]-a[i][1]]:[o[i][0],o[i][1]];return s},points:function(e){return this.vertices("v",e)},inTangents:function(e){return this.vertices("i",e)},outTangents:function(e){return this.vertices("o",e)},isClosed:function(){return this.v.c},pointOnPath:function(e,t){var i=this.v;void 0!==t&&(i=this.getValueAtTime(t,0)),this._segmentsLength||(this._segmentsLength=bez.getSegmentsLength(i));for(var r,n=this._segmentsLength,o=n.lengths,a=n.totalLength*e,s=0,l=o.length,c=0;s<l;){if(c+o[s].addedLength>a){var d=s,p=i.c&&s===l-1?0:s+1,g=(a-c)/o[s].addedLength;r=bez.getPointInSegment(i.v[d],i.v[p],i.o[d],i.i[p],g,o[s]);break}c+=o[s].addedLength,s+=1}return r||(r=i.c?[i.v[0][0],i.v[0][1]]:[i.v[i._length-1][0],i.v[i._length-1][1]]),r},vectorOnPath:function(e,t,i){1==e?e=this.v.c:0==e&&(e=.999);var r=this.pointOnPath(e,t),n=this.pointOnPath(e+.001,t),o=n[0]-r[0],a=n[1]-r[1],s=Math.sqrt(Math.pow(o,2)+Math.pow(a,2));return 0===s?[0,0]:"tangent"===i?[o/s,a/s]:[-a/s,o/s]},tangentOnPath:function(e,t){return this.vectorOnPath(e,t,"tangent")},normalOnPath:function(e,t){return this.vectorOnPath(e,t,"normal")},setGroupProperty:expressionHelpers.setGroupProperty,getValueAtTime:expressionHelpers.getStaticValueAtTime},extendPrototype([c],s),extendPrototype([c],l),l.prototype.getValueAtTime=function(e){return this._cachingAtTime||(this._cachingAtTime={shapeValue:shapePool.clone(this.pv),lastIndex:0,lastTime:initialDefaultFrame}),e*=this.elem.globalData.frameRate,(e-=this.offsetTime)!==this._cachingAtTime.lastTime&&(this._cachingAtTime.lastIndex=this._cachingAtTime.lastTime<e?this._caching.lastIndex:0,this._cachingAtTime.lastTime=e,this.interpolateShape(e,this._cachingAtTime.shapeValue,this._cachingAtTime)),this._cachingAtTime.shapeValue},l.prototype.initiateExpression=ExpressionManager.initiateExpression;var d=ShapePropertyFactory.getShapeProp;ShapePropertyFactory.getShapeProp=function(e,t,i,r,n){var o=d(e,t,i,r,n);return o.propertyIndex=t.ix,o.lock=!1,3===i?expressionHelpers.searchExpressions(e,t.pt,o):4===i&&expressionHelpers.searchExpressions(e,t.ks,o),o.k&&e.addDynamicProperty(o),o}}function initialize$1(){addPropertyDecorator()}function addDecorator(){TextProperty.prototype.getExpressionValue=function(e,t){var i=this.calculateExpression(t);if(e.t!==i){var r={};return this.copyData(r,e),r.t=i.toString(),r.__complete=!1,r}return e},TextProperty.prototype.searchProperty=function(){var e=this.searchKeyframes(),t=this.searchExpressions();return this.kf=e||t,this.kf},TextProperty.prototype.searchExpressions=function(){return this.data.d.x?(this.calculateExpression=ExpressionManager.initiateExpression.bind(this)(this.elem,this.data.d,this),this.addEffect(this.getExpressionValue.bind(this)),!0):null}}function initialize(){addDecorator()}function SVGComposableEffect(){}SVGComposableEffect.prototype={createMergeNode:function(e,t){var i,r,n=createNS("feMerge");for(n.setAttribute("result",e),r=0;r<t.length;r+=1)(i=createNS("feMergeNode")).setAttribute("in",t[r]),n.appendChild(i),n.appendChild(i);return n}};var linearFilterValue="0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0";function SVGTintFilter(e,t,i,r,n){this.filterManager=t;var o=createNS("feColorMatrix");o.setAttribute("type","matrix"),o.setAttribute("color-interpolation-filters","linearRGB"),o.setAttribute("values",linearFilterValue+" 1 0"),this.linearFilter=o,o.setAttribute("result",r+"_tint_1"),e.appendChild(o),(o=createNS("feColorMatrix")).setAttribute("type","matrix"),o.setAttribute("color-interpolation-filters","sRGB"),o.setAttribute("values","1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"),o.setAttribute("result",r+"_tint_2"),e.appendChild(o),this.matrixFilter=o;var a=this.createMergeNode(r,[n,r+"_tint_1",r+"_tint_2"]);e.appendChild(a)}function SVGFillFilter(e,t,i,r){this.filterManager=t;var n=createNS("feColorMatrix");n.setAttribute("type","matrix"),n.setAttribute("color-interpolation-filters","sRGB"),n.setAttribute("values","1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0"),n.setAttribute("result",r),e.appendChild(n),this.matrixFilter=n}function SVGStrokeEffect(e,t,i){this.initialized=!1,this.filterManager=t,this.elem=i,this.paths=[]}function SVGTritoneFilter(e,t,i,r){this.filterManager=t;var n=createNS("feColorMatrix");n.setAttribute("type","matrix"),n.setAttribute("color-interpolation-filters","linearRGB"),n.setAttribute("values","0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0"),e.appendChild(n);var o=createNS("feComponentTransfer");o.setAttribute("color-interpolation-filters","sRGB"),o.setAttribute("result",r),this.matrixFilter=o;var a=createNS("feFuncR");a.setAttribute("type","table"),o.appendChild(a),this.feFuncR=a;var s=createNS("feFuncG");s.setAttribute("type","table"),o.appendChild(s),this.feFuncG=s;var l=createNS("feFuncB");l.setAttribute("type","table"),o.appendChild(l),this.feFuncB=l,e.appendChild(o)}function SVGProLevelsFilter(e,t,i,r){this.filterManager=t;var n=this.filterManager.effectElements,o=createNS("feComponentTransfer");(n[10].p.k||0!==n[10].p.v||n[11].p.k||1!==n[11].p.v||n[12].p.k||1!==n[12].p.v||n[13].p.k||0!==n[13].p.v||n[14].p.k||1!==n[14].p.v)&&(this.feFuncR=this.createFeFunc("feFuncR",o)),(n[17].p.k||0!==n[17].p.v||n[18].p.k||1!==n[18].p.v||n[19].p.k||1!==n[19].p.v||n[20].p.k||0!==n[20].p.v||n[21].p.k||1!==n[21].p.v)&&(this.feFuncG=this.createFeFunc("feFuncG",o)),(n[24].p.k||0!==n[24].p.v||n[25].p.k||1!==n[25].p.v||n[26].p.k||1!==n[26].p.v||n[27].p.k||0!==n[27].p.v||n[28].p.k||1!==n[28].p.v)&&(this.feFuncB=this.createFeFunc("feFuncB",o)),(n[31].p.k||0!==n[31].p.v||n[32].p.k||1!==n[32].p.v||n[33].p.k||1!==n[33].p.v||n[34].p.k||0!==n[34].p.v||n[35].p.k||1!==n[35].p.v)&&(this.feFuncA=this.createFeFunc("feFuncA",o)),(this.feFuncR||this.feFuncG||this.feFuncB||this.feFuncA)&&(o.setAttribute("color-interpolation-filters","sRGB"),e.appendChild(o)),(n[3].p.k||0!==n[3].p.v||n[4].p.k||1!==n[4].p.v||n[5].p.k||1!==n[5].p.v||n[6].p.k||0!==n[6].p.v||n[7].p.k||1!==n[7].p.v)&&((o=createNS("feComponentTransfer")).setAttribute("color-interpolation-filters","sRGB"),o.setAttribute("result",r),e.appendChild(o),this.feFuncRComposed=this.createFeFunc("feFuncR",o),this.feFuncGComposed=this.createFeFunc("feFuncG",o),this.feFuncBComposed=this.createFeFunc("feFuncB",o))}function SVGDropShadowEffect(e,t,i,r,n){var o=t.container.globalData.renderConfig.filterSize,a=t.data.fs||o;e.setAttribute("x",a.x||o.x),e.setAttribute("y",a.y||o.y),e.setAttribute("width",a.width||o.width),e.setAttribute("height",a.height||o.height),this.filterManager=t;var s=createNS("feGaussianBlur");s.setAttribute("in","SourceAlpha"),s.setAttribute("result",r+"_drop_shadow_1"),s.setAttribute("stdDeviation","0"),this.feGaussianBlur=s,e.appendChild(s);var l=createNS("feOffset");l.setAttribute("dx","25"),l.setAttribute("dy","0"),l.setAttribute("in",r+"_drop_shadow_1"),l.setAttribute("result",r+"_drop_shadow_2"),this.feOffset=l,e.appendChild(l);var c=createNS("feFlood");c.setAttribute("flood-color","#00ff00"),c.setAttribute("flood-opacity","1"),c.setAttribute("result",r+"_drop_shadow_3"),this.feFlood=c,e.appendChild(c);var d=createNS("feComposite");d.setAttribute("in",r+"_drop_shadow_3"),d.setAttribute("in2",r+"_drop_shadow_2"),d.setAttribute("operator","in"),d.setAttribute("result",r+"_drop_shadow_4"),e.appendChild(d);var p=this.createMergeNode(r,[r+"_drop_shadow_4",n]);e.appendChild(p)}extendPrototype([SVGComposableEffect],SVGTintFilter),SVGTintFilter.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){var t=this.filterManager.effectElements[0].p.v,i=this.filterManager.effectElements[1].p.v,r=this.filterManager.effectElements[2].p.v/100;this.linearFilter.setAttribute("values",linearFilterValue+" "+r+" 0"),this.matrixFilter.setAttribute("values",i[0]-t[0]+" 0 0 0 "+t[0]+" "+(i[1]-t[1])+" 0 0 0 "+t[1]+" "+(i[2]-t[2])+" 0 0 0 "+t[2]+" 0 0 0 1 0")}},SVGFillFilter.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){var t=this.filterManager.effectElements[2].p.v,i=this.filterManager.effectElements[6].p.v;this.matrixFilter.setAttribute("values","0 0 0 0 "+t[0]+" 0 0 0 0 "+t[1]+" 0 0 0 0 "+t[2]+" 0 0 0 "+i+" 0")}},SVGStrokeEffect.prototype.initialize=function(){var e,t,i,r,n=this.elem.layerElement.children||this.elem.layerElement.childNodes;for(1===this.filterManager.effectElements[1].p.v?(r=this.elem.maskManager.masksProperties.length,i=0):r=1+(i=this.filterManager.effectElements[0].p.v-1),(t=createNS("g")).setAttribute("fill","none"),t.setAttribute("stroke-linecap","round"),t.setAttribute("stroke-dashoffset",1);i<r;i+=1)e=createNS("path"),t.appendChild(e),this.paths.push({p:e,m:i});if(3===this.filterManager.effectElements[10].p.v){var o=createNS("mask"),a=createElementID();o.setAttribute("id",a),o.setAttribute("mask-type","alpha"),o.appendChild(t),this.elem.globalData.defs.appendChild(o);var s=createNS("g");for(s.setAttribute("mask","url("+getLocationHref()+"#"+a+")");n[0];)s.appendChild(n[0]);this.elem.layerElement.appendChild(s),this.masker=o,t.setAttribute("stroke","#fff")}else if(1===this.filterManager.effectElements[10].p.v||2===this.filterManager.effectElements[10].p.v){if(2===this.filterManager.effectElements[10].p.v)for(n=this.elem.layerElement.children||this.elem.layerElement.childNodes;n.length;)this.elem.layerElement.removeChild(n[0]);this.elem.layerElement.appendChild(t),this.elem.layerElement.removeAttribute("mask"),t.setAttribute("stroke","#fff")}this.initialized=!0,this.pathMasker=t},SVGStrokeEffect.prototype.renderFrame=function(e){var t;this.initialized||this.initialize();var i,r,n=this.paths.length;for(t=0;t<n;t+=1)if(-1!==this.paths[t].m&&(i=this.elem.maskManager.viewData[this.paths[t].m],r=this.paths[t].p,(e||this.filterManager._mdf||i.prop._mdf)&&r.setAttribute("d",i.lastPath),e||this.filterManager.effectElements[9].p._mdf||this.filterManager.effectElements[4].p._mdf||this.filterManager.effectElements[7].p._mdf||this.filterManager.effectElements[8].p._mdf||i.prop._mdf)){var o;if(0!==this.filterManager.effectElements[7].p.v||100!==this.filterManager.effectElements[8].p.v){var a=.01*Math.min(this.filterManager.effectElements[7].p.v,this.filterManager.effectElements[8].p.v),s=.01*Math.max(this.filterManager.effectElements[7].p.v,this.filterManager.effectElements[8].p.v),l=r.getTotalLength();o="0 0 0 "+l*a+" ";var c,d=l*(s-a),p=1+2*this.filterManager.effectElements[4].p.v*this.filterManager.effectElements[9].p.v*.01,g=Math.floor(d/p);for(c=0;c<g;c+=1)o+="1 "+2*this.filterManager.effectElements[4].p.v*this.filterManager.effectElements[9].p.v*.01+" ";o+="0 "+10*l+" 0 0"}else o="1 "+2*this.filterManager.effectElements[4].p.v*this.filterManager.effectElements[9].p.v*.01;r.setAttribute("stroke-dasharray",o)}if((e||this.filterManager.effectElements[4].p._mdf)&&this.pathMasker.setAttribute("stroke-width",2*this.filterManager.effectElements[4].p.v),(e||this.filterManager.effectElements[6].p._mdf)&&this.pathMasker.setAttribute("opacity",this.filterManager.effectElements[6].p.v),(1===this.filterManager.effectElements[10].p.v||2===this.filterManager.effectElements[10].p.v)&&(e||this.filterManager.effectElements[3].p._mdf)){var u=this.filterManager.effectElements[3].p.v;this.pathMasker.setAttribute("stroke","rgb("+bmFloor(255*u[0])+","+bmFloor(255*u[1])+","+bmFloor(255*u[2])+")")}},SVGTritoneFilter.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){var t=this.filterManager.effectElements[0].p.v,i=this.filterManager.effectElements[1].p.v,r=this.filterManager.effectElements[2].p.v,n=r[0]+" "+i[0]+" "+t[0],o=r[1]+" "+i[1]+" "+t[1],a=r[2]+" "+i[2]+" "+t[2];this.feFuncR.setAttribute("tableValues",n),this.feFuncG.setAttribute("tableValues",o),this.feFuncB.setAttribute("tableValues",a)}},SVGProLevelsFilter.prototype.createFeFunc=function(e,t){var i=createNS(e);return i.setAttribute("type","table"),t.appendChild(i),i},SVGProLevelsFilter.prototype.getTableValue=function(e,t,i,r,n){for(var o,a,s=0,l=Math.min(e,t),c=Math.max(e,t),d=Array.call(null,{length:256}),p=0,g=n-r,u=t-e;s<=256;)a=(o=s/256)<=l?u<0?n:r:o>=c?u<0?r:n:r+g*Math.pow((o-e)/u,1/i),d[p]=a,p+=1,s+=256/255;return d.join(" ")},SVGProLevelsFilter.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){var t,i=this.filterManager.effectElements;this.feFuncRComposed&&(e||i[3].p._mdf||i[4].p._mdf||i[5].p._mdf||i[6].p._mdf||i[7].p._mdf)&&(t=this.getTableValue(i[3].p.v,i[4].p.v,i[5].p.v,i[6].p.v,i[7].p.v),this.feFuncRComposed.setAttribute("tableValues",t),this.feFuncGComposed.setAttribute("tableValues",t),this.feFuncBComposed.setAttribute("tableValues",t)),this.feFuncR&&(e||i[10].p._mdf||i[11].p._mdf||i[12].p._mdf||i[13].p._mdf||i[14].p._mdf)&&(t=this.getTableValue(i[10].p.v,i[11].p.v,i[12].p.v,i[13].p.v,i[14].p.v),this.feFuncR.setAttribute("tableValues",t)),this.feFuncG&&(e||i[17].p._mdf||i[18].p._mdf||i[19].p._mdf||i[20].p._mdf||i[21].p._mdf)&&(t=this.getTableValue(i[17].p.v,i[18].p.v,i[19].p.v,i[20].p.v,i[21].p.v),this.feFuncG.setAttribute("tableValues",t)),this.feFuncB&&(e||i[24].p._mdf||i[25].p._mdf||i[26].p._mdf||i[27].p._mdf||i[28].p._mdf)&&(t=this.getTableValue(i[24].p.v,i[25].p.v,i[26].p.v,i[27].p.v,i[28].p.v),this.feFuncB.setAttribute("tableValues",t)),this.feFuncA&&(e||i[31].p._mdf||i[32].p._mdf||i[33].p._mdf||i[34].p._mdf||i[35].p._mdf)&&(t=this.getTableValue(i[31].p.v,i[32].p.v,i[33].p.v,i[34].p.v,i[35].p.v),this.feFuncA.setAttribute("tableValues",t))}},extendPrototype([SVGComposableEffect],SVGDropShadowEffect),SVGDropShadowEffect.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){if((e||this.filterManager.effectElements[4].p._mdf)&&this.feGaussianBlur.setAttribute("stdDeviation",this.filterManager.effectElements[4].p.v/4),e||this.filterManager.effectElements[0].p._mdf){var t=this.filterManager.effectElements[0].p.v;this.feFlood.setAttribute("flood-color",rgbToHex(Math.round(255*t[0]),Math.round(255*t[1]),Math.round(255*t[2])))}if((e||this.filterManager.effectElements[1].p._mdf)&&this.feFlood.setAttribute("flood-opacity",this.filterManager.effectElements[1].p.v/255),e||this.filterManager.effectElements[2].p._mdf||this.filterManager.effectElements[3].p._mdf){var i=this.filterManager.effectElements[3].p.v,r=(this.filterManager.effectElements[2].p.v-90)*degToRads,n=i*Math.cos(r),o=i*Math.sin(r);this.feOffset.setAttribute("dx",n),this.feOffset.setAttribute("dy",o)}}};var _svgMatteSymbols=[];function SVGMatte3Effect(e,t,i){this.initialized=!1,this.filterManager=t,this.filterElem=e,this.elem=i,i.matteElement=createNS("g"),i.matteElement.appendChild(i.layerElement),i.matteElement.appendChild(i.transformedElement),i.baseElement=i.matteElement}function SVGGaussianBlurEffect(e,t,i,r){e.setAttribute("x","-100%"),e.setAttribute("y","-100%"),e.setAttribute("width","300%"),e.setAttribute("height","300%"),this.filterManager=t;var n=createNS("feGaussianBlur");n.setAttribute("result",r),e.appendChild(n),this.feGaussianBlur=n}function TransformEffect(){}function SVGTransformEffect(e,t){this.init(t)}function CVTransformEffect(e){this.init(e)}return SVGMatte3Effect.prototype.findSymbol=function(e){for(var t=0,i=_svgMatteSymbols.length;t<i;){if(_svgMatteSymbols[t]===e)return _svgMatteSymbols[t];t+=1}return null},SVGMatte3Effect.prototype.replaceInParent=function(e,t){var i=e.layerElement.parentNode;if(i){for(var r,n=i.children,o=0,a=n.length;o<a&&n[o]!==e.layerElement;)o+=1;o<=a-2&&(r=n[o+1]);var s=createNS("use");s.setAttribute("href","#"+t),r?i.insertBefore(s,r):i.appendChild(s)}},SVGMatte3Effect.prototype.setElementAsMask=function(e,t){if(!this.findSymbol(t)){var i=createElementID(),r=createNS("mask");r.setAttribute("id",t.layerId),r.setAttribute("mask-type","alpha"),_svgMatteSymbols.push(t);var n=e.globalData.defs;n.appendChild(r);var o=createNS("symbol");o.setAttribute("id",i),this.replaceInParent(t,i),o.appendChild(t.layerElement),n.appendChild(o);var a=createNS("use");a.setAttribute("href","#"+i),r.appendChild(a),t.data.hd=!1,t.show()}e.setMatte(t.layerId)},SVGMatte3Effect.prototype.initialize=function(){for(var e=this.filterManager.effectElements[0].p.v,t=this.elem.comp.elements,i=0,r=t.length;i<r;)t[i]&&t[i].data.ind===e&&this.setElementAsMask(this.elem,t[i]),i+=1;this.initialized=!0},SVGMatte3Effect.prototype.renderFrame=function(){this.initialized||this.initialize()},SVGGaussianBlurEffect.prototype.renderFrame=function(e){if(e||this.filterManager._mdf){var t=.3*this.filterManager.effectElements[0].p.v,i=this.filterManager.effectElements[1].p.v,r=3==i?0:t,n=2==i?0:t;this.feGaussianBlur.setAttribute("stdDeviation",r+" "+n);var o=1==this.filterManager.effectElements[2].p.v?"wrap":"duplicate";this.feGaussianBlur.setAttribute("edgeMode",o)}},TransformEffect.prototype.init=function(e){this.effectsManager=e,this.type=effectTypes.TRANSFORM_EFFECT,this.matrix=new Matrix,this.opacity=-1,this._mdf=!1,this._opMdf=!1},TransformEffect.prototype.renderFrame=function(e){if(this._opMdf=!1,this._mdf=!1,e||this.effectsManager._mdf){var t=this.effectsManager.effectElements,i=t[0].p.v,r=t[1].p.v,n=1===t[2].p.v,o=t[3].p.v,a=n?o:t[4].p.v,s=t[5].p.v,l=t[6].p.v,c=t[7].p.v;this.matrix.reset(),this.matrix.translate(-i[0],-i[1],i[2]),this.matrix.scale(.01*a,.01*o,1),this.matrix.rotate(-c*degToRads),this.matrix.skewFromAxis(-s*degToRads,(l+90)*degToRads),this.matrix.translate(r[0],r[1],0),this._mdf=!0,this.opacity!==t[8].p.v&&(this.opacity=t[8].p.v,this._opMdf=!0)}},extendPrototype([TransformEffect],SVGTransformEffect),extendPrototype([TransformEffect],CVTransformEffect),registerRenderer("canvas",CanvasRenderer),registerRenderer("html",HybridRenderer),registerRenderer("svg",SVGRenderer),ShapeModifiers.registerModifier("tm",TrimModifier),ShapeModifiers.registerModifier("pb",PuckerAndBloatModifier),ShapeModifiers.registerModifier("rp",RepeaterModifier),ShapeModifiers.registerModifier("rd",RoundCornersModifier),ShapeModifiers.registerModifier("zz",ZigZagModifier),ShapeModifiers.registerModifier("op",OffsetPathModifier),setExpressionsPlugin(Expressions),setExpressionInterfaces(getInterface),initialize$1(),initialize(),registerEffect$1(20,SVGTintFilter,!0),registerEffect$1(21,SVGFillFilter,!0),registerEffect$1(22,SVGStrokeEffect,!1),registerEffect$1(23,SVGTritoneFilter,!0),registerEffect$1(24,SVGProLevelsFilter,!0),registerEffect$1(25,SVGDropShadowEffect,!0),registerEffect$1(28,SVGMatte3Effect,!1),registerEffect$1(29,SVGGaussianBlurEffect,!0),registerEffect$1(35,SVGTransformEffect,!1),registerEffect(35,CVTransformEffect),lottie},module.exports=factory())}(lottie$2,lottie$2.exports)),lottie$2.exports}var lottieExports=requireLottie(),lottie=getDefaultExportFromCjs(lottieExports);function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,r=Array(t);i<t;i++)r[i]=e[i];return r}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _defineProperty(e,t,i){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}function _iterableToArrayLimit(e,t){var i=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var r,n,o,a,s=[],l=!0,c=!1;try{if(o=(i=i.call(e)).next,0===t);else for(;!(l=(r=o.call(i)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,n=e}finally{try{if(!l&&null!=i.return&&(a=i.return(),Object(a)!==a))return}finally{if(c)throw n}}return s}}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function ownKeys(e,t){var i=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),i.push.apply(i,r)}return i}function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var i=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(i),!0).forEach(function(t){_defineProperty(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):ownKeys(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}function _objectWithoutProperties(e,t){if(null==e)return{};var i,r,n=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)i=o[r],t.includes(i)||{}.propertyIsEnumerable.call(e,i)&&(n[i]=e[i])}return n}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var i={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;i[r]=e[r]}return i}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _toPrimitive(e,t){if("object"!=typeof e||!e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var r=i.call(e,t);if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}function _toPropertyKey(e){var t=_toPrimitive(e,"string");return"symbol"==typeof t?t:t+""}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var i={}.toString.call(e).slice(8,-1);return"Object"===i&&e.constructor&&(i=e.constructor.name),"Map"===i||"Set"===i?Array.from(e):"Arguments"===i||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(i)?_arrayLikeToArray(e,t):void 0}}var _excluded$1=["animationData","loop","autoplay","initialSegment","onComplete","onLoopComplete","onEnterFrame","onSegmentStart","onConfigReady","onDataReady","onDataFailed","onLoadedImages","onDOMLoaded","onDestroy","lottieRef","renderer","name","assetsPath","rendererSettings"],useLottie=function(e,t){var i=e.animationData,r=e.loop,n=e.autoplay,o=e.initialSegment,a=e.onComplete,s=e.onLoopComplete,l=e.onEnterFrame,c=e.onSegmentStart,d=e.onConfigReady,p=e.onDataReady,g=e.onDataFailed,u=e.onLoadedImages,m=e.onDOMLoaded,h=e.onDestroy;e.lottieRef,e.renderer,e.name,e.assetsPath,e.rendererSettings;var f=_objectWithoutProperties(e,_excluded$1),y=_slicedToArray(React.useState(!1),2),b=y[0],C=y[1],x=React.useRef(),v=React.useRef(null);return React.useEffect(function(){var t=function(){var t,i=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(v.current){null===(t=x.current)||void 0===t||t.destroy();var r=_objectSpread2(_objectSpread2(_objectSpread2({},e),i),{},{container:v.current});return x.current=lottie.loadAnimation(r),C(!!x.current),function(){var e;null===(e=x.current)||void 0===e||e.destroy(),x.current=void 0}}}();return function(){return null==t?void 0:t()}},[i,r]),React.useEffect(function(){x.current&&(x.current.autoplay=!!n)},[n]),React.useEffect(function(){x.current&&(o?Array.isArray(o)&&o.length&&((x.current.currentRawFrame<o[0]||x.current.currentRawFrame>o[1])&&(x.current.currentRawFrame=o[0]),x.current.setSegment(o[0],o[1])):x.current.resetSegments(!0))},[o]),React.useEffect(function(){var e=[{name:"complete",handler:a},{name:"loopComplete",handler:s},{name:"enterFrame",handler:l},{name:"segmentStart",handler:c},{name:"config_ready",handler:d},{name:"data_ready",handler:p},{name:"data_failed",handler:g},{name:"loaded_images",handler:u},{name:"DOMLoaded",handler:m},{name:"destroy",handler:h}].filter(function(e){return null!=e.handler});if(e.length){var t=e.map(function(e){var t;return null===(t=x.current)||void 0===t||t.addEventListener(e.name,e.handler),function(){var t;null===(t=x.current)||void 0===t||t.removeEventListener(e.name,e.handler)}});return function(){t.forEach(function(e){return e()})}}},[a,s,l,c,d,p,g,u,m,h]),{View:React.createElement("div",_objectSpread2({style:t,ref:v},f)),play:function(){var e;null===(e=x.current)||void 0===e||e.play()},stop:function(){var e;null===(e=x.current)||void 0===e||e.stop()},pause:function(){var e;null===(e=x.current)||void 0===e||e.pause()},setSpeed:function(e){var t;null===(t=x.current)||void 0===t||t.setSpeed(e)},goToAndStop:function(e,t){var i;null===(i=x.current)||void 0===i||i.goToAndStop(e,t)},goToAndPlay:function(e,t){var i;null===(i=x.current)||void 0===i||i.goToAndPlay(e,t)},setDirection:function(e){var t;null===(t=x.current)||void 0===t||t.setDirection(e)},playSegments:function(e,t){var i;null===(i=x.current)||void 0===i||i.playSegments(e,t)},setSubframe:function(e){var t;null===(t=x.current)||void 0===t||t.setSubframe(e)},getDuration:function(e){var t;return null===(t=x.current)||void 0===t?void 0:t.getDuration(e)},destroy:function(){var e;null===(e=x.current)||void 0===e||e.destroy(),x.current=void 0},animationContainerRef:v,animationLoaded:b,animationItem:x.current}};function getContainerVisibility(e){var t=e.getBoundingClientRect(),i=t.top,r=t.height;return(window.innerHeight-i)/(window.innerHeight+r)}function getContainerCursorPosition(e,t,i){var r=e.getBoundingClientRect(),n=r.top;return{x:(t-r.left)/r.width,y:(i-n)/r.height}}var useInitInteractivity=function(e){var t=e.wrapperRef,i=e.animationItem,r=e.mode,n=e.actions;React.useEffect(function(){var e=t.current;if(e&&i&&n.length){i.stop();var o,a,s,l,c;switch(r){case"scroll":return l=null,c=function(){var t=getContainerVisibility(e),r=n.find(function(e){var i=e.visibility;return i&&t>=i[0]&&t<=i[1]});if(r){if("seek"===r.type&&r.visibility&&2===r.frames.length){var o=r.frames[0]+Math.ceil((t-r.visibility[0])/(r.visibility[1]-r.visibility[0])*r.frames[1]);
31
31
  //! goToAndStop must be relative to the start of the current segment
32
- i.goToAndStop(o-i.firstFrame-1,!0)}"loop"===r.type&&(null===l||l!==r.frames||i.isPaused)&&(i.playSegments(r.frames,!0),l=r.frames),"play"===r.type&&i.isPaused&&(i.resetSegments(!0),i.play()),"stop"===r.type&&i.goToAndStop(r.frames[0]-i.firstFrame-1,!0)}},document.addEventListener("scroll",c),function(){document.removeEventListener("scroll",c)};case"cursor":return o=function(t,r){var o=t,a=r;if(-1!==o&&-1!==a){var s=getContainerCursorPosition(e,o,a);o=s.x,a=s.y}var l=n.find(function(e){var t=e.position;return t&&Array.isArray(t.x)&&Array.isArray(t.y)?o>=t.x[0]&&o<=t.x[1]&&a>=t.y[0]&&a<=t.y[1]:!(!t||Number.isNaN(t.x)||Number.isNaN(t.y))&&o===t.x&&a===t.y});if(l){if("seek"===l.type&&l.position&&Array.isArray(l.position.x)&&Array.isArray(l.position.y)&&2===l.frames.length){var c=(o-l.position.x[0])/(l.position.x[1]-l.position.x[0]),d=(a-l.position.y[0])/(l.position.y[1]-l.position.y[0]);i.playSegments(l.frames,!0),i.goToAndStop(Math.ceil((c+d)/2*(l.frames[1]-l.frames[0])),!0)}"loop"===l.type&&i.playSegments(l.frames,!0),"play"===l.type&&(i.isPaused&&i.resetSegments(!1),i.playSegments(l.frames)),"stop"===l.type&&i.goToAndStop(l.frames[0],!0)}},a=function(e){o(e.clientX,e.clientY)},s=function(){o(-1,-1)},e.addEventListener("mousemove",a),e.addEventListener("mouseout",s),function(){e.removeEventListener("mousemove",a),e.removeEventListener("mouseout",s)}}}},[r,i])},useLottieInteractivity=function(e){var t=e.actions,i=e.mode,r=e.lottieObj,n=r.animationItem,o=r.View,a=r.animationContainerRef;return useInitInteractivity({actions:t,animationItem:n,mode:i,wrapperRef:a}),o},_excluded=["style","interactivity"],Lottie=function(e){var t,i,r,n=e.style,o=e.interactivity,a=_objectWithoutProperties(e,_excluded),s=useLottie(a,n),l=s.View,c=s.play,d=s.stop,p=s.pause,g=s.setSpeed,u=s.goToAndStop,m=s.goToAndPlay,h=s.setDirection,f=s.playSegments,y=s.setSubframe,b=s.getDuration,C=s.destroy,x=s.animationContainerRef,v=s.animationLoaded,S=s.animationItem;return React.useEffect(function(){e.lottieRef&&(e.lottieRef.current={play:c,stop:d,pause:p,setSpeed:g,goToAndPlay:m,goToAndStop:u,setDirection:h,playSegments:f,setSubframe:y,getDuration:b,destroy:C,animationContainerRef:x,animationLoaded:v,animationItem:S})},[null===(t=e.lottieRef)||void 0===t?void 0:t.current]),useLottieInteractivity({lottieObj:{View:l,play:c,stop:d,pause:p,setSpeed:g,goToAndStop:u,goToAndPlay:m,setDirection:h,playSegments:f,setSubframe:y,getDuration:b,destroy:C,animationContainerRef:x,animationLoaded:v,animationItem:S},actions:null!==(i=null==o?void 0:o.actions)&&void 0!==i?i:[],mode:null!==(r=null==o?void 0:o.mode)&&void 0!==r?r:"scroll"})};function OnboardImage({node:e}){useLogRender("OnboardImage"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"OnboardImage",r=e.key??t,[n,o]=React.useState(null),a=useExtractViewStyle$1(e),s=e.attributes;return React.useEffect(()=>{s?.lottie&&fetch(s?.lottie).then(e=>e.json()).then(e=>o(e))},[s?.lottie]),s?.video_url?jsxRuntime.jsx("video",{"attribute-name":i,"attribute-key":r,autoPlay:!0,muted:!0,loop:!0,src:s?.video_url,style:a}):s?.lottie?n?jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:jsxRuntime.jsx(Lottie,{animationData:n})}):jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:"Loading..."}):jsxRuntime.jsx(Image$2,{node:{...e,type:"image",sourceType:i}})}var OnboardImage$1=React.memo(OnboardImage);function OnboardItem({node:e}){useLogRender("OnboardItem"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"OnboardItem",r=e.key??t,n=useExtractViewStyle$1(e);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,className:"embla__slide",style:n,children:e.children&&jsxRuntime.jsx(RenderNode$1,{node:e.children})})}var OnboardItem$1=React.memo(OnboardItem);function OnboardSubtitle({node:e}){return useLogRender("OnboardSubtitle"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var OnboardSubtitle$1=React.memo(OnboardSubtitle);function OnboardTitle({node:e}){return useLogRender("OnboardTitle"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var OnboardTitle$1=React.memo(OnboardTitle);function PaywallBackground({node:e}){return useLogRender("PaywallBackground"),jsxRuntime.jsx(BackgroundImage$1,{node:e})}var PaywallBackground$1=React.memo(PaywallBackground);function PaywallCloseButton({node:e}){useLogRender("PaywallCloseButton"),e=useNode(e);const{onClose:t,isBackAllowed:i}=usePaywallContext(),r=React.useId(),n=e.sourceType??e.type??"PaywallCloseButton",o=e.key??r,{previewMode:a,selectedKey:s}=useBuilderParams(),l=useExtractViewStyle$1(e),c=useExtractTextStyle$1(e),d=useMergedStyle(l,isNodeSelected({previewMode:!!a,current:s?{key:s}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);if(!i)return null;const p=e.attributes,g=p?.styles,u=p?.iconType??"close",m=p?.size??c.fontSize??24,h=c.color??g?.color;return jsxRuntime.jsx("a",{"attribute-name":n,"attribute-key":o,href:"#",onClick:e=>{e.preventDefault(),t?.()},"aria-label":"Close",style:{...d,cursor:"pointer",textDecoration:"none"},children:jsxRuntime.jsx(Icon,{iconType:u,size:m,color:h,alt:""})})}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function buildSegments(e,t){const i=[];for(const r of t){if(!r.value)continue;const t=new RegExp(escapeRegExp(r.value),"gi");for(const n of e.matchAll(t)){if(null==n.index)continue;const e=n[0];e&&i.push({start:n.index,end:n.index+e.length,value:e,color:r.color,page:r.page})}}if(0===i.length)return{segments:[{type:"text",value:e}],matchCount:0};i.sort((e,t)=>{if(e.start!==t.start)return e.start-t.start;const i=e.end-e.start;return t.end-t.start-i});const r=[];let n=-1;for(const e of i)e.start>=n&&(r.push(e),n=e.end);const o=[];let a=0;for(const{start:t,end:i,value:n,color:s,page:l}of r)t>a&&o.push({type:"text",value:e.slice(a,t)}),o.push({type:"match",value:n,color:s,page:l}),a=i;return a<e.length&&o.push({type:"text",value:e.slice(a)}),{segments:o,matchCount:r.length}}function PaywallFooter({node:e}){useLogRender("PaywallFooter");const t=(e=useNode(e)).sourceType??e.type??"PaywallFooter",{selectedTheme:i,previewMode:r,selectedKey:n,projectColors:o}=useBuilderParams(),a=o,s=useLocalize(),l=e=>e?s(e):"",c=e?.attributes,d=toAttributeRecord(c),p=l(c?.textLocalizationKey),g=useExtractTextStyle$1(e,!0),u=useExtractViewStyle$1(e),m=d.linkedWordSecondColor,h=d.linkedWordFirstColor,f=React.useMemo(()=>parseColor(m,{projectColors:a,theme:i}),[m,a,i]),y=React.useMemo(()=>parseColor(h,{projectColors:a,theme:i}),[h,a,i]),b=useMergedStyle(g,{cursor:"pointer"}),C=useMergedStyle(u,isNodeSelected({previewMode:!!r,current:n?{key:n}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),x=React.useId(),v=e.key??x;return jsxRuntime.jsx("div",{"attribute-name":t,"attribute-key":v,style:C,children:!!p&&(()=>{const e=l(c?.linkedWordFirstLocalizationKey),t=l(c?.linkedWordSecondLocalizationKey),{segments:i,matchCount:r}=buildSegments(p,[{value:e,color:f??void 0,page:c?.linkedWordFirstPage},{value:t,color:y??void 0,page:c?.linkedWordSecondPage}]);return jsxRuntime.jsxs("span",{style:{...b,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:[i.map((e,t)=>"text"===e.type?jsxRuntime.jsx(React.Fragment,{children:e.value},t):jsxRuntime.jsx("span",{style:{...e.color?{color:e.color}:{},cursor:"pointer"},onClick:()=>{e.page},children:e.value},t)),0===r&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" ",c?.linkedWordFirstLocalizationKey&&jsxRuntime.jsx("span",{style:{...f?{color:f}:{},cursor:"pointer"},onClick:()=>{},children:e})," ",c?.linkedWordSecondLocalizationKey&&jsxRuntime.jsx("span",{style:{...y?{color:y}:{},cursor:"pointer"},onClick:()=>{},children:t})]})]})})()})}var PaywallFooter$1=React.memo(PaywallFooter);function PaywallOptionButton({product:e,onPress:t,node:i}){const r=React.useId(),n=(e.productId??"").trim(),{previewMode:o,selectedKey:a}=useBuilderParams(),s=useMergedStyle(useExtractViewStyle$1(i),isNodeSelected({previewMode:!!o,current:a?{key:a}:void 0,node:i})?SELECTED_OUTLINE_STYLE:void 0),l=i.sourceType??i.type??"text",c=i.key??r,d=n?`${c}:${n}`:c;return jsxRuntime.jsx("div",{"attribute-name":l,"attribute-key":d,role:"button",tabIndex:0,onClick:()=>t(n),style:{...s,cursor:"pointer"},children:jsxRuntime.jsx(RenderNode$1,{node:i.children})})}function extractPrice(e){return e?e.replace(/[^0-9.]/g,""):""}function calculateDiscount(e,t){if(!t||!e)return"";const i=parseFloat(e),r=parseFloat(t);if(isNaN(i)||isNaN(r)||i<=0)return"";const n=Math.round((i-r)/i*100);return String(Math.max(0,n))}function calculatePricePerMonth(e,t){return isNaN(e)?"":"month"===t?e.toFixed(2):"year"===t?(e/12).toFixed(2):"week"===t?(52*e/12).toFixed(2):"day"===t?(365*e/12).toFixed(2):e.toFixed(2)}function calculatePricePerYear(e,t){return isNaN(e)?"":"year"===t?e.toFixed(2):"month"===t?(12*e).toFixed(2):"week"===t?(52*e).toFixed(2):"day"===t?(365*e).toFixed(2):e.toFixed(2)}const PERIOD_LOCALIZATION_KEYS={monthly:"base.builder.paywall.period.monthly",annual:"base.builder.paywall.period.annual",weekly:"base.builder.paywall.period.weekly",daily:"base.builder.paywall.period.daily",monthlyPromo:"base.builder.paywall.period.monthlyPromo",annualPromo:"base.builder.paywall.period.annualPromo"},PAYWALL_TEXT_KEYS={pricingDefault:"base.builder.paywall.pricing.default.text",pricingFreeTrial:"base.builder.paywall.pricing.freeTrial.text",pricingRegular:"base.builder.paywall.pricing.regular.text",promoDefault:"base.builder.paywall.promo.default.text",promoFreeTrial:"base.builder.paywall.promo.freeTrial.text",promoRegular:"base.builder.paywall.promo.regular.text"};function getPeriodLocalizationKey(e,t){switch(e){case"month":return t?PERIOD_LOCALIZATION_KEYS.monthlyPromo:PERIOD_LOCALIZATION_KEYS.monthly;case"year":return t?PERIOD_LOCALIZATION_KEYS.annualPromo:PERIOD_LOCALIZATION_KEYS.annual;case"week":return PERIOD_LOCALIZATION_KEYS.weekly;case"day":return PERIOD_LOCALIZATION_KEYS.daily;default:return PERIOD_LOCALIZATION_KEYS.monthly}}function parseBillingPeriod(e){const t=e.match(/P(\d+)([DWMY])/);if(!t||!t[1]||!t[2])return{value:1,unit:"month"};const i=parseInt(t[1],10),r={D:"day",W:"week",M:"month",Y:"year"}[t[2]];return r?{value:i,unit:r}:{value:1,unit:"month"}}function convertIOSPeriodUnit(e){if(!e)return"month";return{DAY:"day",WEEK:"week",MONTH:"month",YEAR:"year"}[e.toUpperCase()]||"month"}function normalizeIOSPeriod(e,t){const i=convertIOSPeriodUnit(e),r=t||1;if("day"===i){if(r%365==0)return{unit:"year",value:r/365};if(366===r)return{unit:"year",value:1};if(r%30==0)return{unit:"month",value:r/30};if(31===r)return{unit:"month",value:1};if(r%7==0)return{unit:"week",value:r/7}}return"month"===i&&r%12==0?{unit:"year",value:r/12}:{unit:i,value:r}}function noop(){}const iapLogger={error(e,t,i){console.error(`[iap] ${t}`,i)},warn(e,t,i){console.warn(`[iap] ${t}`,i)},info(e,t,i){console.info(`[iap] ${t}`,i)},debug:noop};function findOffer(e,t){return e.find(e=>e.id===t||e.basePlanIdAndroid===t)}function extractAndroidParams(e,t){try{const i=e.subscriptionOffers??[];let r=i[0];if(t&&i.length>0){const n=findOffer(i,t);n?r=n:iapLogger.error(["extractAndroidParams"],"Requested offer not found, using default",{productId:e.id||e.productId,requestedOfferId:t,availableOffers:i.map(e=>e.id)})}if(!r)return iapLogger.warn(["extractAndroidParams"],"No offers found in product",{productId:e.id||e.productId}),getFallbackParams(e);const n=r.pricingPhasesAndroid?.pricingPhaseList??[];if(0===n.length)return iapLogger.warn(["extractAndroidParams"],"No pricing phases found",{productId:e.id||e.productId,offerId:r.id}),getFallbackParams(e);const o=n.find(e=>"0"===e.priceAmountMicros),a=n.find(e=>2===e.recurrenceMode&&"0"!==e.priceAmountMicros),s=n.find(e=>1===e.recurrenceMode)??n[n.length-1];if(!s)return iapLogger.error(["extractAndroidParams"],"No regular phase found",{productId:e.id||e.productId,pricingPhasesCount:n.length}),getFallbackParams(e);const l=parseBillingPeriod(s.billingPeriod),c=`${l.value} ${l.unit}${l.value>1?"s":""}`,d=extractPrice(s.formattedPrice),p=s.priceCurrencyCode||"",g=s.formattedPrice||"";let u="",m="",h="",f="";if(a){u=extractPrice(a.formattedPrice);const e=a.billingCycleCount||0,t=parseBillingPeriod(a.billingPeriod),i=e*t.value;m=`${i} ${t.unit}${i>1?"s":""}`,h=String(e),f=t.unit}let y="false",b="",C="";if(o){y="true";const e=parseBillingPeriod(o.billingPeriod);b=String(e.value),C=e.unit}const x=calculateDiscount(d,u),v="string"==typeof e.price&&""!==e.price?e.price:d,S="string"==typeof e.currency&&""!==e.currency?e.currency:p,w="string"==typeof e.localizedPrice&&""!==e.localizedPrice?e.localizedPrice:g,k=parseFloat(v),T=calculatePricePerMonth(k,l.unit),_=calculatePricePerYear(k,l.unit);return{price:v,promoPrice:u,currency:S,localizedPrice:w,period:l.unit,periodValue:String(l.value),periodType:c,promoPeriod:m,promoCycles:h,promoPeriodUnit:f,hasTrial:y,trialPeriod:b,trialPeriodUnit:C,discountPercentage:x,pricePerMonth:T,pricePerYear:_}}catch(t){return iapLogger.error(["extractAndroidParams"],"Failed to extract Android params",{productId:e?.id||e?.productId,error:t instanceof Error?t.message:String(t)}),getFallbackParams(e)}}function getFallbackParams(e){const t=String(e.price||e.localizedPrice||"").replace(/[^0-9.]/g,"");return{...getEmptyParams$1(),price:t,currency:e.currency||e.currencyCode||"",localizedPrice:e.localizedPrice||""}}function getEmptyParams$1(){return{price:"",promoPrice:"",currency:"",localizedPrice:"",period:"month",periodValue:"1",periodType:"1 month",promoPeriod:"",promoCycles:"",promoPeriodUnit:"",hasTrial:"false",trialPeriod:"",trialPeriodUnit:"",discountPercentage:"",pricePerMonth:"",pricePerYear:""}}function isFreeTrialIntro(e){return"free_trial"===e.type||0===parseFloat(e.price||e.priceIOS||"0")}function extractPromoCyclesAndPeriod(e,t){return{promoPeriod:`${e} ${t}${e>1?"s":""}`,promoCycles:String(e),promoPeriodUnit:t}}function extractIOSParams(e,t){try{const i=String(e.price||e.localizedPrice||"").replace(/[^0-9.]/g,""),r=e.currency||e.currencyCode||"",n=e.localizedPrice||"",o=normalizeIOSPeriod(e.subscriptionPeriodUnitIOS,e.subscriptionPeriodNumberIOS),a=o.unit,s=String(o.value),l=`${s} ${a}${parseInt(s,10)>1?"s":""}`,c=e.introductoryPrice||e.introductoryPriceIOS,d=!!c,p=d&&isFreeTrialIntro(c);let g="false",u="",m="",h="",f="",y="",b="";if(p)g="true",u=String(c.subscriptionPeriodNumberIOS||c.numberOfPeriods||7),m=convertIOSPeriodUnit(c.subscriptionPeriodUnitIOS||c.subscriptionPeriod||"DAY");else if(d){h=String(c.price||c.priceIOS||"").replace(/[^0-9.]/g,"");const e=c.numberOfPeriods||1,t=extractPromoCyclesAndPeriod(e,convertIOSPeriodUnit(c.subscriptionPeriodUnitIOS||c.subscriptionPeriod||"MONTH"));f=t.promoPeriod,y=t.promoCycles,b=t.promoPeriodUnit}if(t&&e.discounts){const i=e.discounts.find(e=>e.identifier===t);if(i){h=String(i.price||"").replace(/[^0-9.]/g,"");const e=i.numberOfPeriods||1,t=extractPromoCyclesAndPeriod(e,convertIOSPeriodUnit(i.subscriptionPeriod||"MONTH"));f=t.promoPeriod,y=t.promoCycles,b=t.promoPeriodUnit}else iapLogger.error(["extractIOSParams"],"Requested offer not found in discounts",{productId:e.id||e.productId,requestedOfferId:t,availableDiscounts:e.discounts.map(e=>e.identifier)})}const C=calculateDiscount(i,h),x=parseFloat(i),v=calculatePricePerMonth(x,a);return{price:i,promoPrice:h,currency:r,localizedPrice:n,period:a,periodValue:s,periodType:l,promoPeriod:f,promoCycles:y,promoPeriodUnit:b,hasTrial:g,trialPeriod:u,trialPeriodUnit:m,discountPercentage:C,pricePerMonth:v,pricePerYear:calculatePricePerYear(x,a)}}catch(t){return iapLogger.error(["extractIOSParams"],"Failed to extract iOS params",{productId:e?.id||e?.productId,error:t instanceof Error?t.message:String(t)}),getEmptyParams()}}function getEmptyParams(){return{price:"",promoPrice:"",currency:"",localizedPrice:"",period:"month",periodValue:"1",periodType:"1 month",promoPeriod:"",promoCycles:"",promoPeriodUnit:"",hasTrial:"false",trialPeriod:"",trialPeriodUnit:"",discountPercentage:"",pricePerMonth:"",pricePerYear:""}}function buildPaywallLocalizationParams(e,t,i,r){const n=r??(e=>e),o="android"===t?extractAndroidParams(e,i):extractIOSParams(e,i),a=o.period||"month",s=!!o.promoPrice,l="true"===o.hasTrial,c=getPeriodLocalizationKey(a,!1),d=s?getPeriodLocalizationKey(a,!0):"";let p="";if(s)try{p=new Intl.NumberFormat(void 0,{style:"currency",currency:o.currency}).format(Number(o.promoPrice))}catch{p=`${o.promoPrice} ${o.currency}`.trim()}const g=n(c),u=s?n(d):"",m=p||o.localizedPrice,h=u||g;let f,y;return s?(f=PAYWALL_TEXT_KEYS.pricingDefault,y=PAYWALL_TEXT_KEYS.promoDefault):l?(f=PAYWALL_TEXT_KEYS.pricingFreeTrial,y=PAYWALL_TEXT_KEYS.promoFreeTrial):(f=PAYWALL_TEXT_KEYS.pricingRegular,y=PAYWALL_TEXT_KEYS.promoRegular),{price:o.price,promoPrice:o.promoPrice,currency:o.currency,localizedPrice:o.localizedPrice,period:o.period,promoPeriod:o.promoPeriod,promoPeriodUnit:o.promoPeriodUnit,hasTrial:o.hasTrial,trialPeriod:o.trialPeriod,trialPeriodUnit:o.trialPeriodUnit,discountPercentage:o.discountPercentage,localizedPeriod:g,localizedPromoPeriod:u,localizedPromoPrice:p,localizedCalculatedPrice:m,localizedCalculatedPeriod:h,baseLocalizedPricingText:n(f),baseLocalizedPromoText:n(y),productTitle:String(e.title??""),productDescription:String(e.description??""),productCurreny:o.currency,productId:String(e.productId??""),productSelected:"true",subscribe:n(l?"base.builder.paywall.button.subscribe-free":"base.builder.paywall.button.subscribe")}}function usePaywallLocalizationParams(e,t,i){return React.useMemo(()=>{if(!e||!i?.platform)return{};try{const r=i.builderProducts?.find(e=>e.store_package_id===t),n=r?.offer_id;return buildPaywallLocalizationParams(e,i.platform,n,i.localize)}catch(e){return console.error("[usePaywallLocalizationParams] Error:",e),{}}},[e,t,i])}var presetsJson$1={"preset-1":[{productId:"com.app.monthly",id:"com.app.monthly",title:"Monthly",description:"Unlock all features for a month.",type:"subs",displayName:"Monthly Subscription",displayPrice:"$4.99",localizedPrice:"$4.99",currency:"USD",price:"4.99",platform:"android",subscriptionOffers:[{id:"monthly-trial-offer",displayPrice:"Free → $4.99",price:0,type:"promotional",currency:"USD",basePlanIdAndroid:"monthly-base",offerTokenAndroid:"mock_token_monthly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P3D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"$4.99",priceAmountMicros:"4990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:3,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:3},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.yearly",id:"com.app.yearly",title:"Yearly (Save 33%)",description:"Best value: full access for a year.",type:"subs",displayName:"Yearly Subscription",displayPrice:"$29.99",localizedPrice:"$29.99",currency:"USD",price:"29.99",platform:"android",subscriptionOffers:[{id:"yearly-promo-offer",displayPrice:"$19.99",price:19.99,type:"promotional",currency:"USD",basePlanIdAndroid:"yearly-base",offerTokenAndroid:"mock_token_yearly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P1Y",formattedPrice:"$19.99",priceAmountMicros:"19990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"$29.99",priceAmountMicros:"29990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"19.99",priceIOS:"19.99",type:"pay_as_you_go",numberOfPeriods:1,subscriptionPeriod:"YEAR",subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},discounts:[{identifier:"yearly-promo-offer",price:"19.99",numberOfPeriods:1,subscriptionPeriod:"YEAR"}],subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},{productId:"com.app.weekly",id:"com.app.weekly",title:"Weekly",description:"Try with a flexible weekly plan.",type:"subs",displayName:"Weekly Subscription",displayPrice:"$1.99",localizedPrice:"$1.99",currency:"USD",price:"1.99",platform:"android",subscriptionOffers:[{id:"weekly-base",displayPrice:"$0.99",price:.99,type:"promotional",currency:"USD",basePlanIdAndroid:"weekly-base",offerTokenAndroid:"mock_token_weekly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:4,billingPeriod:"P1W",formattedPrice:"$0.99",priceAmountMicros:"990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1W",formattedPrice:"$1.99",priceAmountMicros:"1990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.99",priceIOS:"0.99",type:"pay_as_you_go",numberOfPeriods:4,subscriptionPeriod:"WEEK",subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1},subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1}],"preset-2":[{productId:"com.app.premium.monthly",id:"com.app.premium.monthly",title:"Premium Monthly",description:"Premium tier with all features.",type:"subs",displayName:"Premium Monthly",displayPrice:"$9.99",localizedPrice:"$9.99",currency:"USD",price:"9.99",platform:"android",subscriptionOffers:[{id:"premium-monthly-trial-offer",displayPrice:"Free → $9.99",price:0,type:"promotional",currency:"USD",basePlanIdAndroid:"premium-monthly-base",offerTokenAndroid:"mock_token_premium_monthly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P7D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"$9.99",priceAmountMicros:"9990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:7,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:7},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.premium.yearly",id:"com.app.premium.yearly",title:"Premium Yearly (Save 50%)",description:"7-day free trial, then $29.99 first year, $59.99/yr after.",type:"subs",displayName:"Premium Yearly",displayPrice:"$59.99",localizedPrice:"$59.99",currency:"USD",price:"59.99",platform:"android",subscriptionOffers:[{id:"premium-yearly-full-offer",displayPrice:"$29.99",price:29.99,type:"promotional",currency:"USD",basePlanIdAndroid:"premium-yearly-base",offerTokenAndroid:"mock_token_premium_yearly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P7D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:1,billingPeriod:"P1Y",formattedPrice:"$29.99",priceAmountMicros:"29990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"$59.99",priceAmountMicros:"59990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:7,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:7},discounts:[{identifier:"premium-yearly-full-offer",price:"29.99",numberOfPeriods:1,subscriptionPeriod:"YEAR"}],subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},{productId:"com.app.lifetime",id:"com.app.lifetime",title:"Lifetime",description:"One-time purchase for lifetime access.",type:"in-app",displayName:"Lifetime Access",displayPrice:"$99.99",localizedPrice:"$99.99",currency:"USD",price:"99.99",platform:"android",subscriptionOffers:[]}],"preset-3":[{productId:"com.app.budget.weekly",id:"com.app.budget.weekly",title:"Budget Weekly",description:"Affordable weekly plan.",type:"subs",displayName:"Budget Weekly",displayPrice:"€2.99",localizedPrice:"€2.99",currency:"EUR",price:"2.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"budget-weekly-trial-offer",displayPrice:"Free → €2.99",price:0,type:"promotional",currency:"EUR",basePlanIdAndroid:"budget-weekly-base",offerTokenAndroid:"mock_token_budget_weekly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P3D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"EUR",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1W",formattedPrice:"€2.99",priceAmountMicros:"2990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:3,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:3},subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1},{productId:"com.app.monthly.promo",id:"com.app.monthly.promo",title:"Monthly (70% off first 3 months)",description:"€2.99/mo for 3 months, then €9.99/mo.",type:"subs",displayName:"Monthly with Promo",displayPrice:"€9.99",localizedPrice:"€9.99",currency:"EUR",price:"9.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"monthly-promo-offer",displayPrice:"€2.99",price:2.99,type:"promotional",currency:"EUR",basePlanIdAndroid:"monthly-promo",offerTokenAndroid:"mock_token_monthly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:3,billingPeriod:"P1M",formattedPrice:"€2.99",priceAmountMicros:"2990000",priceCurrencyCode:"EUR",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"€9.99",priceAmountMicros:"9990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"2.99",priceIOS:"2.99",type:"pay_as_you_go",numberOfPeriods:3,subscriptionPeriod:"MONTH",subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.yearly.trial",id:"com.app.yearly.trial",title:"Yearly (14-day free trial)",description:"Try free for 14 days, then €29.99/yr.",type:"subs",displayName:"Yearly with Trial",displayPrice:"€29.99",localizedPrice:"€29.99",currency:"EUR",price:"29.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"yearly-trial-offer",displayPrice:"Free → €29.99",price:0,type:"promotional",currency:"EUR",basePlanIdAndroid:"yearly-trial",offerTokenAndroid:"mock_token_yearly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P14D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"EUR",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"€29.99",priceAmountMicros:"29990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:14,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:14},subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1}]};function getMockProducts(){return JSON.parse(JSON.stringify(presetsJson$1))}function getMockProductsByPreset(e){return getMockProducts()[e]??[]}function usePaywallOptionParamsFactory(){const{localizationParams:e,otherParams:t}=useParams(),i=useRenderStore(e=>e.device),r=useLocalize(),n="ios"===i.platform?"ios":"android";return React.useCallback((i,{isSelected:o})=>{const a=buildPaywallLocalizationParams(i,n,void 0,r);return{localizationParams:{...e,...a,productSelected:o?"true":"false"},otherParams:{...t,singleProductIsSelected:o}}},[e,t,n,r])}function parseNumberLike$1(e){if(null==e)return;if("number"==typeof e&&Number.isFinite(e))return e;if("string"!=typeof e)return;const t=e.trim();if(!t)return;const i=t.replace(",","."),r=Number.parseFloat(i);return Number.isFinite(r)?r:void 0}function compareProducts(e,t,i,r){const n=parseNumberLike$1(e.price),o=parseNumberLike$1(t.price);if(void 0!==n&&void 0!==o&&n!==o)return n-o;const a=(e.title??"").trim(),s=(t.title??"").trim();if(a&&s&&a!==s)return a.localeCompare(s);if(a&&!s)return-1;if(!a&&s)return 1;const l=(e.productId??"").trim(),c=(t.productId??"").trim();return l!==c?l.localeCompare(c):i-r}function PaywallOptions({node:e}){useLogRender("PaywallOptions"),e=useNode(e);const{mockProducts:t}=useBuilderParams(),{selectedProduct:i,setSelectedProductId:r}=usePaywallContext(),n=usePaywallOptionParamsFactory(),o=React.useMemo(()=>(Array.isArray(t)?t:[]).map((e,t)=>({p:e,idx:t})).sort((e,t)=>compareProducts(e.p,t.p,e.idx,t.idx)).map(({p:e})=>e),[t]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:o.map((t,o)=>{const a=t.productId||`${o}`,s=i?.productId===a,{localizationParams:l,otherParams:c}=n(t,{isSelected:s});return jsxRuntime.jsx(ParamsProvider,{localizationParams:l,otherParams:c,children:jsxRuntime.jsx(PaywallOptionButton,{node:e,product:t,selected:s,onPress:r})},a)})})}var PaywallOptions$1=React.memo(PaywallOptions);function LocalizationParamsProvider({params:e,children:t}){return jsxRuntime.jsx(ParamsProvider,{localizationParams:e,nestedLocalizationParams:{},children:t})}function useChangeDelayByPaywall(e,t){const i=React.useMemo(()=>e?.attributes?.delay?parseInt(String(e?.attributes?.delay),10):1e3,[e?.attributes?.delay]);React.useEffect(()=>{if(!i||i<=0)return void t(!0);const e=setTimeout(()=>{t(!0)},i);return()=>clearTimeout(e)},[i,t])}function useMockOSBackHandler(e){React.useEffect(()=>registerMockOSBackHandler(()=>e),[e])}function PaywallProvider({node:e}){useLogRender("PaywallProvider"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"PaywallProvider",r=e.key??t,{mockBenefits:n,mockProducts:o,onPaywallSubscribe:a,previewMode:s,selectedKey:l}=useBuilderParams(),c=useMockOSContext(),d=React.useMemo(()=>{const e=n&&"object"==typeof n&&!Array.isArray(n)?n:{},t=Object.entries(e).filter(([e])=>e.trim().length>0),i=Object.fromEntries(t.map(([e,t])=>[e.trim(),String(t)]));for(let e=0;e<t.length;e+=1){const[,r]=t[e],n=String(r);i[`benefit${e+1}`]=n}return i},[n]),p=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!s,current:l?{key:l}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),[g,u]=React.useState(""),[m,h]=React.useState(!1);useChangeDelayByPaywall(e,h),useMockOSBackHandler(m),React.useEffect(()=>{const e=Array.isArray(o)?o:[];if(0===e.length)return void(g&&u(""));const t=e.some(e=>e?.productId===g);g&&t||u(e[0]?.productId??"")},[o,g]);const f=React.useMemo(()=>{const e=Array.isArray(o)?o:[];return e.find(e=>e?.productId===g)??(e.length>0?e[0]:void 0)},[o,g]),y=useRenderStore(e=>e.device),b=useLocalize(),C="ios"===y.platform?"ios":"android",x=usePaywallLocalizationParams(f,g,{platform:C,localize:b}),v=React.useCallback(()=>{if(m&&c?.isEnabled){c.goBack()||c.navigation("launchscreen")}},[c,m]),S=React.useCallback(async e=>{if(a){const t=a(e),i=t instanceof Promise?await t:!0===t;return i&&c?.isEnabled&&c.goBack?.(),i}const t=e?.productId;if(c?.isEnabled&&t&&c.requestSubscriptionPurchase){const e=await c.requestSubscriptionPurchase(t);return e&&c.goBack?.(),e}return!1},[c,a]),w=React.useCallback(()=>{if(m&&c?.isEnabled){c.goBack()||c.navigation("launchscreen")}},[m,c]),k=React.useMemo(()=>({products:Array.isArray(o)?o:[],setSelectedProductId:u,selectedProduct:f,onClose:v,onSubscribe:S,onCounterDown:w,isBackAllowed:m}),[o,f,v,S,w,m]);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:p,children:jsxRuntime.jsx(PaywallContext.Provider,{value:k,children:jsxRuntime.jsx(LocalizationParamsProvider,{params:{...d,...x,platform:C},children:jsxRuntime.jsx(RenderNode$1,{node:e.children})})})})}var PaywallProvider$1=React.memo(PaywallProvider);function PaywallSubscribeButton({node:e}){useLogRender("PaywallSubscribeButton"),e=useNode(e);const{onSubscribe:t,selectedProduct:i}=usePaywallContext(),r=React.useId(),n=e.sourceType??e.type??"PaywallSubscribeButton",o=e.key??r,{previewMode:a,selectedKey:s}=useBuilderParams(),l=useMergedStyle(useExtractTextStyle$1(e),isNodeSelected({previewMode:!!a,current:s?{key:s}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),c=useLocalize(),d="string"==typeof e.children&&e.children.trim().length>0?e.children:"Subscribe";return jsxRuntime.jsx("a",{type:"button","attribute-name":n,"attribute-key":o,href:"#",onClick:e=>{e.preventDefault(),t?.(i)},style:{...l,cursor:"pointer"},children:c(d)})}var PaywallSubscribeButton$1=React.memo(PaywallSubscribeButton);function PriceTag({node:e}){useLogRender("PriceTag"),e=useNode(e);const t=useLocalizationParams(),i=!!t?.promoPrice;return(e.attributes?.hideIfItsNotDiscount??!1)&&!i?null:jsxRuntime.jsx(Text$1,{node:e})}var PriceTag$1=React.memo(PriceTag);function Pricing({node:e}){return useLogRender("Pricing"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var Pricing$1=React.memo(Pricing);function Promo({node:e}){return useLogRender("Promo"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var Promo$1=React.memo(Promo);function parseNumberLike(e){if(null==e)return;if("number"==typeof e&&Number.isFinite(e))return e;if("string"!=typeof e)return;const t=e.trim();if(!t)return;const i=t.replace(",","."),r=Number.parseFloat(i);return Number.isFinite(r)?r:void 0}function RadioButtonBase({selected:e,color:t,size:i=24}){const r=Math.round(.1*i),n=Math.round(.5*i),{projectColors:o}=useBuilderParams(),a=t??o?.STATIC_COLORS?.RADIO_BUTTON_COLOR??"#A6A6A6",s=React.useContext(ParamsContext),{singleProductIsSelected:l}=s?.otherParams??{},c=l??e;return jsxRuntime.jsx("div",{style:{marginLeft:8,marginRight:16},children:jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",borderWidth:r,borderStyle:"solid",borderColor:a,width:i,height:i,borderRadius:n,boxSizing:"border-box",flex:"0 0 auto"},children:c?jsxRuntime.jsx("div",{style:{width:n,height:n,borderRadius:2*n,backgroundColor:a}}):jsxRuntime.jsx("div",{style:{width:i,height:i,borderRadius:n}})})})}function RadioButton({node:e}){useLogRender("RadioButton"),e=useNode(e);const t=React.useId(),i=e.type??"RadioButton",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),s=e.attributes,l=Boolean(s?.selected),c=s?.color,d=parseNumberLike(s?.size);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:jsxRuntime.jsx(RadioButtonBase,{selected:l,color:c,size:d})})}var RadioButton$1=React.memo(RadioButton);function Separator({node:e}){useLogRender("Separator"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"Separator",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a})}var Separator$1=React.memo(Separator);function StatusBarColor({node:e}){useLogRender("StatusBarColor"),e=useNode(e);const{selectedTheme:t,projectColors:i}=useBuilderParams(),r=useRenderStore(e=>e.setStatusBarOverrideColor),n=useRenderStore(e=>e.setStatusBarOverrideTranslucent),o=getStyleBag(e.attributes)?.backgroundColor,a=parseColor(o,{projectColors:i,theme:t}),s=e.attributes?.translucent;return React.useEffect(()=>(a&&r(a),void 0!==s&&n(s),()=>{r(null),n(null)}),[a,r,s,n]),null}var StatusBarColor$1=React.memo(StatusBarColor);function View({node:e}){useLogRender("View"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"View",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:e.children&&jsxRuntime.jsx(RenderNode$1,{node:e.children})})}var View$1=React.memo(View);function WebView({node:e}){useLogRender("WebView");const t=(e=useNode(e)).attributes,i=useExtractViewStyle$1(e),{selectedTheme:r,projectColors:n,device:o}=useBuilderParams(),a=React.useRef(null),[s,l]=React.useState(!0),c="ios"===(o?.platform||"ios")?t?.iosUrl:t?.androidUrl,d=r??"dark",p={projectColors:n,theme:r},g=parseColor("THEME_COLORS.BACKGROUND",p)??parseColor("STATIC_COLORS.WHITE",p)??void 0,u=parseColor("THEME_COLORS.TEXT",p)??parseColor("STATIC_COLORS.BLACK",p)??void 0,m=parseColor(t?.styles?.loaderColor,p)??u,h=t?.styles?.loaderSize??30,f=t?.styles?.loaderBorderWidth??3,y=t?.styles?.loaderAnimationDuration??1,b=useMergedStyle(null!=g?{backgroundColor:g}:void 0,null!=u?{color:u}:void 0),C=useMergedStyle(i,b,{"--rb-webview-loader-size":`${h}px`,"--rb-webview-loader-border-width":`${f}px`,"--rb-webview-loader-duration":`${y}s`}),x=useMergedStyle(b),v=useMergedStyle(b,{flex:1,minHeight:0}),S=React.useCallback(()=>{if(null==g||null==u)return;const e=a.current?.contentDocument;if(!e?.head)return void(c&&console.debug("[WebView] Theme styles not injected: contentDocument not accessible (cross-origin).","URL:",c,"— Use same-origin URL or rely on the wrapper filter for dark mode."));const t=e.querySelector("style[data-rb-webview-theme]"),i=[`body{background-color:${g};color:${u}}`,`*{color:${u}}`,`span{background-color:${g}}`].join(" ");if(t)t.textContent=i;else{const t=e.createElement("style");t.setAttribute("data-rb-webview-theme",""),t.textContent=i,e.head.appendChild(t)}},[g,u,c]),w=React.useCallback(()=>{l(!1),S()},[S]);React.useEffect(()=>{s||S()},[r,g,u,s,S]);const k="dark"===d;return jsxRuntime.jsxs("div",{className:"rb-webview",style:C,"data-testid":t?.testID,children:[s&&jsxRuntime.jsx("div",{className:"rb-webview__overlay",style:x,children:jsxRuntime.jsx("div",{className:"rb-webview__loader",style:{borderColor:null!=m?`${m}40`:void 0,borderTopColor:m??void 0}})}),jsxRuntime.jsx("div",{className:"rb-webview__frame-wrapper",style:v,children:jsxRuntime.jsx("div",{className:"rb-webview__frame-inner",style:k?{width:"100%",height:"100%",filter:"invert(1) hue-rotate(180deg)"}:{width:"100%",height:"100%"},children:jsxRuntime.jsx("iframe",{ref:a,src:c,className:"rb-webview__frame",style:{opacity:s?0:1,backgroundColor:"transparent"},onLoad:w,title:"WebView Content"})})})]})}function RenderNode({node:e}){if(isNodeNullOrUndefined(e))return null;if(isNodeString(e))return jsxRuntime.jsx(Text,{node:{children:e,type:"Text"}});if(isNodeArray(e))return jsxRuntime.jsx(jsxRuntime.Fragment,{children:e.map((e,t)=>jsxRuntime.jsx(RenderNode,{node:e},t))});const t="string"==typeof e?.type?e.type:"unknown",i=normalizeComponentType(t)??t,r={...e,type:i};switch(r.type){case"BIcon":return jsxRuntime.jsx(BIcon,{node:r});case"BackgroundImage":return jsxRuntime.jsx(BackgroundImage,{node:r});case"Button":return jsxRuntime.jsx(Button,{node:r});case"Carousel":return jsxRuntime.jsx(Carousel$1,{node:r});case"CarouselButtons":return jsxRuntime.jsx(CarouselButtons$1,{node:r});case"CarouselDots":return jsxRuntime.jsx(CarouselDots$1,{node:r});case"CarouselItem":return jsxRuntime.jsx(CarouselItem,{node:r});case"CarouselProvider":return jsxRuntime.jsx(CarouselProvider$1,{node:r});case"Checkbox":return jsxRuntime.jsx(Checkbox$1,{node:r});case"CountDown":return jsxRuntime.jsx(CountDown,{node:r});case"FormCheckbox":return jsxRuntime.jsx(FormCheckbox,{node:r});case"FormErrorText":return jsxRuntime.jsx(FormErrorText,{node:r});case"FormProvider":return jsxRuntime.jsx(FormProvider,{node:r});case"FormSubmitButton":return jsxRuntime.jsx(FormSubmitButton,{node:r});case"Image":return jsxRuntime.jsx(Image$2,{node:r});case"Main":return jsxRuntime.jsx(Main$1,{node:r});case"NavigationBarColor":return jsxRuntime.jsx(NavigationBarColor$1,{node:r});case"Onboard":return jsxRuntime.jsx(Onboard$1,{node:r});case"OnboardButton":return jsxRuntime.jsx(OnboardButton,{node:r});case"OnboardButtons":return jsxRuntime.jsx(OnboardButtons$1,{node:r});case"OnboardDot":return jsxRuntime.jsx(OnboardDot,{node:r});case"OnboardFooter":return jsxRuntime.jsx(OnboardFooter$1,{node:r});case"OnboardImage":return jsxRuntime.jsx(OnboardImage$1,{node:r});case"OnboardItem":return jsxRuntime.jsx(OnboardItem$1,{node:r});case"OnboardProvider":return jsxRuntime.jsx(OnboardProvider$1,{node:r});case"OnboardSubtitle":return jsxRuntime.jsx(OnboardSubtitle$1,{node:r});case"OnboardTitle":return jsxRuntime.jsx(OnboardTitle$1,{node:r});case"PaywallBackground":return jsxRuntime.jsx(PaywallBackground$1,{node:r});case"PaywallCloseButton":return jsxRuntime.jsx(PaywallCloseButton,{node:r});case"PaywallFooter":return jsxRuntime.jsx(PaywallFooter$1,{node:r});case"PaywallOptions":return jsxRuntime.jsx(PaywallOptions$1,{node:r});case"PaywallProvider":return jsxRuntime.jsx(PaywallProvider$1,{node:r});case"PaywallSubscribeButton":return jsxRuntime.jsx(PaywallSubscribeButton$1,{node:r});case"PriceTag":return jsxRuntime.jsx(PriceTag$1,{node:r});case"Pricing":return jsxRuntime.jsx(Pricing$1,{node:r});case"Promo":return jsxRuntime.jsx(Promo$1,{node:r});case"RadioButton":return jsxRuntime.jsx(RadioButton$1,{node:r});case"Separator":return jsxRuntime.jsx(Separator$1,{node:r});case"StatusBarColor":return jsxRuntime.jsx(StatusBarColor$1,{node:r});case"SystemButton":return jsxRuntime.jsx(SystemButton,{node:r});case"Text":return jsxRuntime.jsx(Text,{node:r});case"View":return jsxRuntime.jsx(View$1,{node:r});case"WebView":return jsxRuntime.jsx(WebView,{node:r});default:return other(t,e)}}var RenderNode$1=React.memo(RenderNode);const allcomponentNames=["BIcon","BackgroundImage","Button","Carousel","CarouselButtons","CarouselDots","CarouselItem","CarouselProvider","Checkbox","CountDown","FormCheckbox","FormErrorText","FormProvider","FormSubmitButton","Image","Main","NavigationBarColor","Onboard","OnboardButton","OnboardButtons","OnboardDot","OnboardFooter","OnboardImage","OnboardItem","OnboardProvider","OnboardSubtitle","OnboardTitle","PaywallBackground","PaywallCloseButton","PaywallFooter","PaywallOptions","PaywallProvider","PaywallSubscribeButton","PriceTag","Pricing","Promo","RadioButton","Separator","StatusBarColor","SystemButton","Text","View","WebView"];class RenderErrorBoundary extends React.Component{constructor(){super(...arguments),this.state={error:null,errorStack:void 0,componentStack:void 0,copied:!1,copyError:null},this.copyDetails=async()=>{const e=this.buildDetails();try{if("undefined"!=typeof navigator&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),this.setState({copied:!0,copyError:null}),void window.setTimeout(()=>this.setState({copied:!1}),900)}catch{}try{if("undefined"==typeof document)return void this.setState({copied:!1,copyError:"Copy failed"});const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly","true"),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();const i=document.execCommand("copy");if(document.body.removeChild(t),!i)return void this.setState({copied:!1,copyError:"Copy failed"});this.setState({copied:!0,copyError:null}),window.setTimeout(()=>this.setState({copied:!1}),900)}catch(e){this.setState({copied:!1,copyError:e instanceof Error?e.message:"Copy failed"})}},this.reset=()=>{this.setState({error:null,errorStack:void 0,componentStack:void 0,copied:!1,copyError:null})}}static getDerivedStateFromError(e){return{error:e,errorStack:e?.stack,copied:!1,copyError:null}}componentDidCatch(e,t){const i=t.componentStack??void 0;this.setState({error:e,errorStack:e?.stack,componentStack:i}),this.props.onError?.(e,i)}buildDetails(){const{error:e,errorStack:t,componentStack:i}=this.state;return[`Error: ${e?.message??""}`,"",t?`Stack:\n${t}`:"Stack: (missing)","",i?`React component stack:\n${i}`:"React component stack: (missing)"].join("\n")}render(){const{error:e,copied:t,copyError:i}=this.state;if(!e)return this.props.children;const r=this.buildDetails();return jsxRuntime.jsxs("div",{role:"alert",style:{padding:16,borderRadius:12,background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",color:"hsl(var(--card-foreground, var(--rb-card-foreground, 220.9 39.3% 11%)))",border:"1px solid hsl(var(--border, var(--rb-border, 220 13% 91%)) / 0.9)"},children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("div",{style:{fontWeight:700},children:"Preview crashed"}),this.props.subtitle&&jsxRuntime.jsxs("div",{style:{opacity:.8,fontSize:12},children:["(",this.props.subtitle,")"]}),jsxRuntime.jsxs("div",{style:{marginLeft:"auto",display:"flex",gap:8},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:this.copyDetails,children:t?"Copied":"Copy details"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:this.reset,children:"Try again"})]})]}),i&&jsxRuntime.jsx("div",{style:{marginTop:8,color:"hsl(var(--destructive, var(--rb-destructive, 0 84.2% 60.2%)))",fontSize:12},children:i}),jsxRuntime.jsx("pre",{style:{marginTop:12,whiteSpace:"pre-wrap",wordBreak:"break-word",fontSize:12,lineHeight:1.4,background:"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)))",padding:12,borderRadius:10,overflow:"auto",maxHeight:360},children:r})]})}}function findNodeByKeyNested(e,t){if(null==e)return null;if("string"==typeof e)return null;if(Array.isArray(e)){for(const i of e){const e=findNodeByKeyNested(i,t);if(e)return e}return null}const i=e;return i.key===t?i:i.children?findNodeByKeyNested(i.children,t):null}function usePreviewSelection({previewMode:e,data:t,rootRef:i,onSelectNode:r,setCurrent:n,forceRender:o}){React.useEffect(()=>{if(!e)return;const o=i.current;if(!o)return;const a=e=>{const i=e.target;if(!i)return;if(i.closest(".embla__dot"))return;let o=i.closest("[attribute-key]");for(;o;){const e=o.getAttribute("attribute-key");if(e){const i=findNodeByKeyNested(t,e);if(i)return n(i),void r?.(i)}o=o.parentElement?.closest("[attribute-key]")??null}};return o.addEventListener("click",a),()=>{o.removeEventListener("click",a)}},[e,t,r,n,o,i])}function isNullish(e){return null==e}function RenderPage({data:e,name:t,onSelectNode:i,params:r}){useLogRender("RenderPage");const{products:n,benefits:o,selectedTheme:a,selectedLanguage:s,overrideLocalization:l,overrideBaseSize:c,overrideProjectColors:d,overrideFonts:p,appFont:g,previewMode:u,current:m,forceRender:h,device:f,setCurrent:y}=useRenderStore(e=>({products:e.products,benefits:e.benefits,selectedTheme:e.theme,selectedLanguage:e.defaultLanguage,overrideLocalization:e.localization,overrideBaseSize:e.baseSize,device:e.device,overrideProjectColors:e.projectColors,overrideFonts:e.fonts,appFont:e.appFont,previewMode:e.previewMode,current:e.current,forceRender:e.forceRender,setCurrent:e.setCurrent})),b=React.useRef(null),C=React.useRef(!1),x=isNullish(e);return usePreviewSelection({previewMode:!!u,data:e,rootRef:b,onSelectNode:i,setCurrent:y,forceRender:h}),React.useEffect(()=>{if(C.current)return;const e=l?Object.keys(l):[],t=!l||0===e.length||JSON.stringify(l)===JSON.stringify(defaultLocalization),i=!d||JSON.stringify(d)===JSON.stringify(defaultProjectColors);if(t||i){const e=[];t&&e.push("localization"),i&&e.push("projectColors"),C.current=!0,console.warn(`[RenderPage] ⚠️ Using default ${e.join(" & ")}. Provide overrides via the store or params to avoid fallback values.`)}},[l,d]),jsxRuntime.jsx(RenderErrorBoundary,{subtitle:"caught by RenderPage",children:jsxRuntime.jsx(BuilderProvider,{params:{selectedTheme:a,selectedLanguage:s,localization:l,baseSize:c,mockProducts:n,mockBenefits:o,projectColors:d??void 0,fonts:p,previewMode:u,selectedKey:m&&"object"==typeof m&&"key"in m?m.key:void 0,device:f,...r},children:jsxRuntime.jsx(DeviceMockFrame,{appName:t,children:jsxRuntime.jsxs("div",{className:"screen-preview",ref:b,style:{fontFamily:g?`"${g}"`:void 0},children:[isNullish(e)?null:jsxRuntime.jsx(RenderNode$1,{node:e}),x&&jsxRuntime.jsx("div",{className:"rb-empty-preview","aria-hidden":"true",children:jsxRuntime.jsxs("div",{className:"rb-empty-preview__card",children:[jsxRuntime.jsx("div",{className:"rb-empty-preview__title",children:"Empty screen"}),jsxRuntime.jsx("div",{className:"rb-empty-preview__hint",children:"Add a component to start"})]})})]})})})})}function copyNode(e){const{setCopiedNode:t}=useRenderStore.getState();t(e)}function isNodeDataLike(e){if("object"!=typeof e||null===e||Array.isArray(e))return!1;return"type"in e&&"children"in e}function normalizeKey(e){if("string"!=typeof e)return;const t=e.trim();return t.length>0?t:void 0}function collectNodeKeysInto(e,t){if(null==e)return;if("string"==typeof e)return;if(Array.isArray(e))return void e.forEach(e=>collectNodeKeysInto(e,t));if(!isNodeDataLike(e))return;const i=normalizeKey(e.key);i&&t.add(i),collectNodeKeysInto(e.children,t)}function collectNodeKeys(e){const t=new Set;return collectNodeKeysInto(e,t),t}function generateUniqueKey(e,t){let i="";do{i=generateRandomKeyForNode(e||"Node")}while(t.has(i));return i}function repairNodeKeys(e,t=new Set){if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let i=!1;const r=e.map(e=>{const r=repairNodeKeys(e,t);return r!==e&&(i=!0),r});return i?r:e}if(!isNodeDataLike(e))return e;const i=e,r=normalizeKey(i.key),n=!r||t.has(r)?generateUniqueKey(i.type,t):r;t.add(n);const o=i.children,a=repairNodeKeys(o,t);return n!==r||a!==o?{...i,key:n,children:a}:e}const platformIcons={android:getImage(exports.TribeAssetName.Android),ios:getImage(exports.TribeAssetName.Apple)};function DeviceButton({device:e,selectedDevice:t,onSelect:i,isFavorite:r,onToggleFavorite:n,onEdit:o}){const a=platformIcons[e.platform],s=e.aspect??(()=>{const t=e.height/e.width;return t>=2.05?"tall":t<=1.75?"wide":"regular"})();return jsxRuntime.jsxs("button",{type:"button",className:"editor-device-button"+(t===e?" editor-device-button--selected":""),onClick:()=>i(e),children:[n&&jsxRuntime.jsx("span",{className:"editor-device-button__favorite",onClick:t=>{t.stopPropagation(),n(e,t)},title:r?"Remove from favorites":"Add to favorites",style:{position:"absolute",top:4,right:4,cursor:"pointer",opacity:r?1:.3,color:r?"#ecc538":"currentColor"},children:jsxRuntime.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:r?"currentColor":"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsxRuntime.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"})})}),e.name," ",jsxRuntime.jsx("br",{}),e.width,"×",e.height," (",s,")",a&&jsxRuntime.jsx("span",{className:"editor-device-button__platform",children:jsxRuntime.jsx("img",{src:a,alt:"","aria-hidden":"true"})}),o&&jsxRuntime.jsx("span",{className:"editor-device-button__edit",onClick:t=>{t.stopPropagation(),o(e,t)},title:"Edit device",style:{position:"absolute",bottom:4,left:4,cursor:"pointer",opacity:.5},children:jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsxRuntime.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),jsxRuntime.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})})]})}function Modal({onClose:e,ariaLabelledBy:t,children:i,className:r,contentClassName:n,closeOnOverlayClick:o=!0,closeOnEsc:a=!0}){React.useEffect(()=>{if(!a)return;if("undefined"==typeof window)return;const t=t=>{"Escape"===t.key&&e()};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[a,e]);const s=jsxRuntime.jsxs("div",{className:"modal"+(r?` ${r}`:""),role:"dialog","aria-modal":"true","aria-labelledby":t,children:[jsxRuntime.jsx("div",{className:"modal__overlay",onClick:o?t=>{t.target===t.currentTarget&&e()}:void 0}),jsxRuntime.jsx("div",{className:"modal__content"+(n?` ${n}`:""),role:"document",children:i})]});return"undefined"==typeof document?s:reactDom.createPortal(s,document.body)}const identity=e=>e;function useStore(e,t=identity){const i=React.useSyncExternalStore(e.subscribe,React.useCallback(()=>t(e.getState()),[e,t]),React.useCallback(()=>t(e.getInitialState()),[e,t]));return React.useDebugValue(i),i}const createImpl=e=>{const t=createStore(e),i=e=>useStore(t,e);return Object.assign(i,t),i},create=e=>createImpl,useCustomDeviceStore=create()(persist(e=>({customDevices:[],addCustomDevice:t=>e(e=>({customDevices:[t,...e.customDevices.filter(e=>e.name!==t.name)]})),removeCustomDevice:t=>e(e=>({customDevices:e.customDevices.filter(e=>e.name!==t)})),updateCustomDevice:(t,i)=>e(e=>({customDevices:e.customDevices.map(e=>e.name===t?i:e)}))}),{name:"custom-devices-storage"}));function CreateDeviceModal({onClose:e,onSuccess:t,deviceToEdit:i}){const{addCustomDevice:r,updateCustomDevice:n}=useCustomDeviceStore(),{register:o,handleSubmit:a,watch:s,formState:{errors:l}}=useForm({defaultValues:i?{name:i.name,platform:i.platform,type:i.type,width:i.width,height:i.height,insetTop:i.insets?.[0]??0,insetRight:i.insets?.[1]??0,insetBottom:i.insets?.[2]??0,insetLeft:i.insets?.[3]??0,navigationBarType:i.navigationBarType,radius:i.radius,importance:i.importance,multiplier:i.multiplier}:{platform:"ios",type:"phone",navigationBarType:"homeIndicator",width:375,height:812,insetTop:44,insetBottom:34,insetLeft:0,insetRight:0,radius:40,importance:10,multiplier:1}}),c=s("platform");return jsxRuntime.jsxs(Modal,{onClose:e,ariaLabelledBy:"create-device-title",contentClassName:"create-device-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"create-device-title",className:"modal__title",children:i?"Edit Custom Device":"Create Custom Device"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:e,children:"Cancel"})]}),jsxRuntime.jsxs("form",{onSubmit:a(o=>{const a={name:o.name,platform:o.platform,width:Number(o.width),height:Number(o.height),type:o.type,radius:Number(o.radius),insets:[Number(o.insetTop),Number(o.insetRight),Number(o.insetBottom),Number(o.insetLeft)],navigationBarType:o.navigationBarType,aspect:(()=>{const e=Number(o.height)/Number(o.width);return e>=2.05?"tall":e<=1.75?"wide":"regular"})(),importance:Number(o.importance),multiplier:Number(o.multiplier)};i?n(i.name,a):r(a),t(a),e()}),className:"modal__body create-device-form",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Device Name"}),jsxRuntime.jsx("input",{...o("name",{required:"Name is required"}),className:"editor-input",placeholder:"e.g. My Custom iPhone"}),l.name&&jsxRuntime.jsx("span",{className:"create-device-form__error",children:l.name.message})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Platform"}),jsxRuntime.jsxs("select",{...o("platform"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"ios",children:"iOS"}),jsxRuntime.jsx("option",{value:"android",children:"Android"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Type"}),jsxRuntime.jsxs("select",{...o("type"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"phone",children:"Phone"}),jsxRuntime.jsx("option",{value:"tablet",children:"Tablet"})]})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Width (px)"}),jsxRuntime.jsx("input",{type:"number",...o("width",{required:!0,min:1}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Height (px)"}),jsxRuntime.jsx("input",{type:"number",...o("height",{required:!0,min:1}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Safe Area Top"}),jsxRuntime.jsx("input",{type:"number",...o("insetTop",{min:0}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Safe Area Bottom"}),jsxRuntime.jsx("input",{type:"number",...o("insetBottom",{min:0}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Navigation Bar"}),jsxRuntime.jsxs("select",{...o("navigationBarType"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"none",children:"None"}),"ios"===c?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("option",{value:"homeIndicator",children:"Home Indicator"}),jsxRuntime.jsx("option",{value:"tabBar",children:"Tab Bar"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("option",{value:"threeButtons",children:"Three Buttons"}),jsxRuntime.jsx("option",{value:"gesture",children:"Gesture"})]})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Corner Radius"}),jsxRuntime.jsx("input",{type:"number",...o("radius",{min:0}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Scale Multiplier"}),jsxRuntime.jsx("input",{type:"number",step:"0.01",...o("multiplier",{min:.1,max:2}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Importance (1-100)"}),jsxRuntime.jsx("input",{type:"number",...o("importance",{min:1,max:100}),className:"editor-input"})]})]}),jsxRuntime.jsx("div",{className:"create-device-modal__footer",children:jsxRuntime.jsx("button",{type:"submit",className:"editor-button editor-button--primary",style:{width:"100%"},children:i?"Update Device":"Save Device"})})]})]})}function DeviceSelectorModal({devices:e,selectedDevice:t,onSelect:i,onClose:r}){const[n,o]=React.useState(""),[a,s]=React.useState(!1),[l,c]=React.useState(null),{favoriteDevices:d,toggleFavoriteDevice:p}=useRenderStore(e=>({favoriteDevices:e.favoriteDevices||[],toggleFavoriteDevice:e.toggleFavoriteDevice})),{customDevices:g,removeCustomDevice:u}=useCustomDeviceStore(),m=React.useMemo(()=>[...g,...e],[g,e]),h=e=>{i(e),r()},f=React.useMemo(()=>m.filter(e=>e.name.toLowerCase().includes(n.toLowerCase())),[m,n]),{favorites:y,others:b}=React.useMemo(()=>{const e=[],t=[];return f.forEach(i=>{d.includes(i.name)?e.push(i):t.push(i)}),{favorites:e,others:t}},[f,d]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"device-selector-title",contentClassName:"device-selector-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"device-selector-title",className:"modal__title",children:"Select a device"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button","aria-label":"Close device selector",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"device-selector-modal__search-container",children:[jsxRuntime.jsx("input",{type:"text",placeholder:"Search devices...",value:n,onChange:e=>o(e.target.value),className:"editor-input"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button editor-button--primary",onClick:()=>s(!0),children:"Add New"})]}),jsxRuntime.jsxs("div",{className:"device-selector-modal__body",style:{display:"flex",flexDirection:"column",gap:"16px"},children:[y.length>0&&jsxRuntime.jsxs("section",{children:[jsxRuntime.jsx("h4",{style:{margin:"0 16px 8px",fontSize:"14px",fontWeight:"bold"},children:"Favorites"}),jsxRuntime.jsx("div",{className:"device-selector-modal__grid",role:"list",children:y.map(e=>jsxRuntime.jsx(DeviceButton,{device:e,selectedDevice:t,onSelect:h,isFavorite:!0,onToggleFavorite:e=>p(e.name),onEdit:e=>c(e)},`fav-${e.name}`))})]}),jsxRuntime.jsxs("section",{children:[y.length>0&&jsxRuntime.jsx("h4",{style:{margin:"0 16px 8px",fontSize:"14px",fontWeight:"bold"},children:"All Devices"}),jsxRuntime.jsx("div",{className:"device-selector-modal__grid",role:"list",children:b.map(e=>jsxRuntime.jsx(DeviceButton,{device:e,selectedDevice:t,onSelect:h,isFavorite:!1,onToggleFavorite:e=>p(e.name),onEdit:g.some(t=>t.name===e.name)?e=>c(e):void 0},`other-${e.name}`))})]})]}),a&&jsxRuntime.jsx(CreateDeviceModal,{onClose:()=>s(!1),onSuccess:e=>{i(e),r()}}),l&&jsxRuntime.jsx(CreateDeviceModal,{deviceToEdit:l,onClose:()=>c(null),onSuccess:e=>{i(e),r()}})]})}var name$m="hello-world",version$m="1.1.2",type$m="other",data$m={type:"View",attributes:{scrollable:!0,description:"View element 1 in sample.",title:"View 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:16,backgroundColor:"#F5F7FA"},testID:"View-test-id-1"},children:[{type:"Text",children:"hello-world",attributes:{description:"Text element 1 in sample.",title:"Text 1",styles:{color:"#111827",fontSize:24,fontWeight:"600"},testID:"Text-test-id-1"}},{type:"Text",children:"Welcome to react-native-builder",attributes:{description:"Text element 2 in sample.",title:"Text 2",styles:{color:"#6B7280",fontSize:14,fontWeight:"400"},testID:"Text-test-id-2"}}]},attributes$k={testID:"other-test-id-1"},simple1={name:name$m,version:version$m,type:type$m,data:data$m,attributes:attributes$k},name$l="hello-world-2-advanced",version$l="1.1.2",type$l="other",data$l={type:"view",attributes:{scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",gap:16,padding:16,backgroundColor:"#F3F4F6"},testID:"view-test-id-1"},children:[{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#111827",borderRadius:12},testID:"view-test-id-2"},children:[{type:"text",children:"Dashboard",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{color:"#FFFFFF",fontSize:20,fontWeight:"600"},testID:"text-test-id-1"}},{type:"view",attributes:{description:"view element 3 in sample.",title:"view 3",styles:{flexDirection:"row",gap:8},testID:"view-test-id-3"},children:[{type:"text",children:"Help",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{color:"#D1D5DB",fontSize:14},testID:"text-test-id-2"}},{type:"text",children:"Profile",attributes:{description:"text element 3 in sample.",title:"text 3",styles:{color:"#D1D5DB",fontSize:14},testID:"text-test-id-3"}}]}]},{type:"image",attributes:{src:"https://picsum.photos/720/320",description:"image element 1 in sample.",title:"image 1",styles:{width:358,height:160,borderRadius:12},testID:"image-test-id-1"},children:null},{type:"view",attributes:{description:"view element 4 in sample.",title:"view 4",styles:{flexDirection:"column",gap:8,padding:12,backgroundColor:"#FFFFFF",borderRadius:12},testID:"view-test-id-4"},children:[{type:"text",children:"Welcome back!",attributes:{description:"text element 4 in sample.",title:"text 4",styles:{color:"#111827",fontSize:18,fontWeight:"600"},testID:"text-test-id-4"}},{type:"text",children:"Here's what's new today.",attributes:{description:"text element 5 in sample.",title:"text 5",styles:{color:"#6B7280",fontSize:14},testID:"text-test-id-5"}}]},{type:"view",attributes:{description:"view element 5 in sample.",title:"view 5",styles:{flexDirection:"column",gap:12},testID:"view-test-id-5"},children:[{type:"view",attributes:{description:"view element 6 in sample.",title:"view 6",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-6"},children:[{type:"text",children:"Task 1",attributes:{description:"text element 6 in sample.",title:"text 6",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-6"}},{type:"text",children:"Due today",attributes:{description:"text element 7 in sample.",title:"text 7",styles:{color:"#059669",fontSize:12,fontWeight:"600"},testID:"text-test-id-7"}}]},{type:"view",attributes:{description:"view element 7 in sample.",title:"view 7",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-7"},children:[{type:"text",children:"Task 2",attributes:{description:"text element 8 in sample.",title:"text 8",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-8"}},{type:"text",children:"2 days left",attributes:{description:"text element 9 in sample.",title:"text 9",styles:{color:"#D97706",fontSize:12,fontWeight:"600"},testID:"text-test-id-9"}}]},{type:"view",attributes:{description:"view element 8 in sample.",title:"view 8",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-8"},children:[{type:"text",children:"Task 3",attributes:{description:"text element 10 in sample.",title:"text 10",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-10"}},{type:"text",children:"Completed",attributes:{description:"text element 11 in sample.",title:"text 11",styles:{color:"#6B7280",fontSize:12,fontWeight:"600"},testID:"text-test-id-11"}}]}]},{type:"view",attributes:{description:"view element 9 in sample.",title:"view 9",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-around",padding:12,backgroundColor:"#111827",borderRadius:12},testID:"view-test-id-9"},children:[{type:"text",children:"Home",attributes:{description:"text element 12 in sample.",title:"text 12",styles:{color:"#FFFFFF",fontSize:14},testID:"text-test-id-12"}},{type:"text",children:"Search",attributes:{description:"text element 13 in sample.",title:"text 13",styles:{color:"#9CA3AF",fontSize:14},testID:"text-test-id-13"}},{type:"text",children:"Settings",attributes:{description:"text element 14 in sample.",title:"text 14",styles:{color:"#9CA3AF",fontSize:14},testID:"text-test-id-14"}}]}]},attributes$j={testID:"other-test-id-1"},simple2={name:name$l,version:version$l,type:type$l,data:data$l,attributes:attributes$j},name$k="carousel-sample",version$k="1.1.2",type$k="other",data$k={type:"Main",isMain:!0,attributes:{styles:{backgroundColor:"#f8fafc",minHeight:"100vh",padding:"24px"},testID:"Main-test-id-1"},children:{type:"carouselProvider",children:[{type:"carousel",attributes:{loop:!0,align:"center",dragFree:!0,description:"carousel element 1 in sample.",title:"carousel 1",testID:"carousel-test-id-1"},children:[{type:"carouselItem",attributes:{description:"carouselItem element 1 in sample.",title:"carouselItem 1",styles:{minWidth:0},testID:"carouselItem-test-id-1"},children:{type:"view",attributes:{description:"view element 1 in sample.",title:"view 1",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #eef2ff 0%, #ffffff 55%, #ecfeff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-1"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-1"},key:"image-49ojfyhl4d7"},{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-1"},children:"Welcome aboard",key:"text-3ougfj4mxnh"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-2"},children:"Swipe through a beautiful, validated carousel sample with images.",key:"text-2dol8grshke"}],key:"view-a8hfkdvfy7"},key:"carouselItem-5bw9x33s7ie"},{type:"carouselItem",attributes:{description:"carouselItem element 2 in sample.",title:"carouselItem 2",styles:{minWidth:0},testID:"carouselItem-test-id-2"},children:{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #f0fdf4 0%, #ffffff 55%, #eff6ff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-2"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1553877522-43269d4ea984?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-2"},key:"image-riwntk91k9"},{type:"text",attributes:{description:"text element 3 in sample.",title:"text 3",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-3"},children:"Discover features",key:"text-hmuk6f7ml4v"},{type:"text",attributes:{description:"text element 4 in sample.",title:"text 4",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-4"},children:"Dots + buttons are included, and slide sizing comes from the carousel CSS.",key:"text-dnhhoqiiri"}],key:"view-9hyw3wys30w"},key:"carouselItem-lyq2hr0qh8h"},{type:"carouselItem",attributes:{description:"carouselItem element 3 in sample.",title:"carouselItem 3",styles:{minWidth:0},testID:"carouselItem-test-id-3"},children:{type:"view",attributes:{description:"view element 3 in sample.",title:"view 3",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #fff7ed 0%, #ffffff 55%, #f5f3ff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-3"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1551434678-e076c223a692?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-3"},key:"image-j9ru3r8g7km"},{type:"text",attributes:{description:"text element 5 in sample.",title:"text 5",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-5"},children:"Get started",key:"text-01u3fwwtkd8p"},{type:"text",attributes:{description:"text element 6 in sample.",title:"text 6",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-6"},children:"This sample stays within validation rules (no string flex shorthand).",key:"text-w8rwg9y1hj"}],key:"view-tsjfbzn8kdj"},key:"carouselItem-6r53yswjyee"}],key:"carousel-2qa4gn0ms32"},{type:"view",attributes:{title:"Carousel Controls",description:"carousel controls view element in sample.",styles:{flex:1,gap:24,alignItems:"center",paddingTop:32},testID:"view-test-id-4"},children:[{type:"carouselDots",attributes:{dotType:"expanding_dot",testID:"carouselDots-test-id-1"},key:"carouselDots-r5ji67uoxxg"},{type:"view",attributes:{title:"Nav Buttons",description:"navigation buttons wrapper",styles:{flexDirection:"row",gap:12,alignItems:"center",justifyContent:"center"},testID:"view-test-id-5"},children:[{type:"carouselButtons",attributes:{buttonType:["previous_button"],styles:{backgroundColor:"#6366f1",borderRadius:12,padding:"12px 24px",minWidth:100},testID:"carouselButtons-test-id-1"},key:"carouselButtons-prev"},{type:"carouselButtons",attributes:{buttonType:["next_button"],styles:{backgroundColor:"#8b5cf6",borderRadius:12,padding:"12px 24px",minWidth:100},testID:"carouselButtons-test-id-2"},key:"carouselButtons-next"}],key:"view-nav-buttons"}],key:"view-controls-wrapper"}],attributes:{description:"carouselProvider element 1 in sample.",title:"carouselProvider 1",styles:{backgroundColor:"#ffffff",borderRadius:24,padding:"32px",boxShadow:"0 4px 20px rgba(0, 0, 0, 0.08)",maxWidth:"600px",margin:"0 auto"},testID:"carouselProvider-test-id-1"},key:"carouselProvider-152n4dkqvam"},key:"Main-u1cavjag9sr"},attributes$i={testID:"other-test-id-1"},carouselSample={name:name$k,version:version$k,type:type$k,data:data$k,attributes:attributes$i},name$j="unvalidated-builder1",version$j="1.1.2",type$j="other",data$j={type:"view",attributes:{foo:1,scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA"},testID:"view-test-id-1"},children:[{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center"},testID:"text-test-id-1"},children:"Intentionally unvalidated sample"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8},testID:"text-test-id-2"},children:"This project should fail validation (unknown attribute: foo). In the UI, choose “Continue without validation” to load it anyway."}]},attributes$h={testID:"other-test-id-1"},unvalidatedBuilder1={name:name$j,version:version$j,type:type$j,data:data$j,attributes:attributes$h},name$i="unvalidated-crash1",version$i="1.1.2",type$i="other",data$i={type:"OnboardFooter",attributes:{textLocalizationKey:123,description:"OnboardFooter element 1 in sample.",title:"OnboardFooter 1",styles:{paddingHorizontal:24,paddingVertical:16},testID:"OnboardFooter-test-id-1"},children:null},attributes$g={testID:"other-test-id-1"},unvalidatedCrash1={name:name$i,version:version$i,type:type$i,data:data$i,attributes:attributes$g},name$h="unvalidated-crashcomponent1",version$h="1.1.2",type$h="other",data$h={type:"CrashComponent",attributes:{reason:"Intentional crash for GUI testing",note:"This component is not in the Add Component modal; it only exists via JSON.",description:"CrashComponent element 1 in sample.",title:"CrashComponent 1",testID:"CrashComponent-test-id-1"},children:null},attributes$f={testID:"other-test-id-1"},unvalidatedCrashComponent1={name:name$h,version:version$h,type:type$h,data:data$h,attributes:attributes$f},name$g="unmigrated-builder1",version$g="1.0.0",type$g="other",data$g={type:"view",attributes:{scrollable:!0,flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA",description:"view element 1 in sample.",title:"view 1",testID:"view-test-id-1"},children:[{type:"text",attributes:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center",description:"text element 1 in sample.",title:"text 1",testID:"text-test-id-1"},children:"Intentionally unmigrated sample"},{type:"text",attributes:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8,description:"text element 2 in sample.",title:"text 2",testID:"text-test-id-2"},children:"This project has version 1.0.0 so the Migration page should appear. Click “Migrate now” to normalize legacy flat style keys into attributes.style and move misplaced props out of style (combined 1.1.2)."}]},attributes$e={testID:"other-test-id-1"},unmigratedBuilder1={name:name$g,version:version$g,type:type$g,data:data$g,attributes:attributes$e},name$f="unmigrated-builder-1.1.1",version$f="1.1.1",type$f="other",data$f={type:"view",attributes:{scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA"},testID:"view-test-id-1"},children:[{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center"},testID:"text-test-id-1"},children:"Intentionally unmigrated sample (for combined 1.1.2)"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8},testID:"text-test-id-2"},children:"This project has version 1.1.1 so the Migration page should appear. Click “Migrate now” to move component props and non-style flags out of attributes.style (combined 1.1.2)."},{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:12,marginTop:16},testID:"view-test-id-2"},children:[{type:"BIcon",attributes:{description:"BIcon element 1 in sample.",title:"BIcon 1",styles:{iconType:"check",strokeWidth:3,color:"#22c55e",fontSize:"18"},testID:"BIcon-test-id-1"},children:null},{type:"image",attributes:{src:"https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1200&q=80",width:48,height:48,description:"image element 1 in sample.",title:"image 1",styles:{resizeMode:"contain",borderRadius:12},testID:"image-test-id-1"},children:null}]}]},attributes$d={testID:"other-test-id-1"},unmigratedBuilder1_1_1={name:name$f,version:version$f,type:type$f,data:data$f,attributes:attributes$d},name$e="Simple Paywall",version$e="1.1.2",type$e="paywall",data$e={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall ana sağlayıcısı. (#1)",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",title:"Paywall Background",attributes:{src:"https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",description:"Paywall arka planı. (#1)",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",title:"Paywall Inner",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:12,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#2)",title:"Benefits",styles:{flexDirection:"column",gap:0,marginTop:"4%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#3)",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#1)",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#1)",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-1"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#4)",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#2)",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#2)",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-2"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#5)",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#3)",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#3)",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-3"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Abonelik seçenekleri alanı. (#1)",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Seçim satırı öğesi. (#1)",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#4)",title:"Product Desc(s)",styles:{flex:6},testID:"Text-test-id-4"},children:"@productDescription"},{type:"View",attributes:{title:"Price Column",styles:{flexDirection:"column",flex:2,alignItems:"flex-end"},testID:"View-test-id-6"},children:[{type:"PriceTag",attributes:{title:"Promo Price",styles:{textAlign:"right",fontWeight:"700"},testID:"PriceTag-test-id-1"},children:"@localizedCalculatedPrice"},{type:"PriceTag",attributes:{title:"Original Price",hideIfItsNotDiscount:!0,styles:{textAlign:"right",textDecorationLine:"line-through",fontSize:"12@fs",fontWeight:"400",color:"#999999"},testID:"PriceTag-test-id-2"},children:"@localizedPrice"}]},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"İkon öğesi. (#4)",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"View",attributes:{description:"Subscription butonu kapsayıcısı. (#1)",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",gap:8,paddingBottom:"50px"},testID:"View-test-id-7"},children:[{type:"Pricing",attributes:{description:"Pricing breakdown for promo/trial.",title:"Pricing Detail",testID:"Pricing-test-id-1"},children:"@baseLocalizedPricingText"},{type:"Text",attributes:{description:"Trial detayı.",title:"Trial Full",styles:{textAlign:"center",fontSize:12,color:"rgba(255,255,255,0.6)"},testID:"Text-test-id-5"},children:"@trialPeriod days free, then @price/@period"},{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}},{type:"Promo",attributes:{description:"Discount badge / promo text.",title:"Promo Badge",testID:"Promo-test-id-1"},children:"@baseLocalizedPromoText"},{type:"PaywallFooter",attributes:{textLocalizationKey:"base.builder.paywall.footer.description",linkedWordFirstLocalizationKey:"base.builder.paywall.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.builder.paywall.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"PaywallFooter-test-id-1"}}]}]}]}]},attributes$c={testID:"paywall-test-id-1"},paywall1={name:name$e,version:version$e,type:type$e,data:data$e,attributes:attributes$c},name$d="Paywall With Counter",version$d="1.1.2",type$d="paywall",data$d={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Paywall 2.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1482192596544-9eb780fc7f66?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-1"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-2"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-3"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"Text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"Text-test-id-4"},children:"@productDescription — Unlock all premium features for a month."},{type:"Text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"Text-test-id-5"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$b={testID:"paywall-test-id-1"},paywall2={name:name$d,version:version$d,type:type$d,data:data$d,attributes:attributes$b},name$c="Paywall Back Offer",version$c="1.1.2",type$c="paywall",data$c={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Back Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1470770903676-69b98201ea1c?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"Back Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Subscription confirm button.",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$a={testID:"paywall-test-id-1"},paywallBackOffer={name:name$c,version:version$c,type:type$c,data:data$c,attributes:attributes$a},name$b="Paywall Notification Offer",version$b="1.1.2",type$b="paywall",data$b={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Notification Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1469474968028-56623f02e42e?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"Notification Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Subscription confirm button.",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$9={testID:"paywall-test-id-1"},paywallNotificationOffer={name:name$b,version:version$b,type:type$b,data:data$b,attributes:attributes$9},name$a="Paywall App Open Offer",version$a="1.1.2",type$a="paywall",data$a={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for App Open Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1501785888041-af3ef285b470?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"App Open Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$8={testID:"paywall-test-id-1"},paywallAppOpenOffer={name:name$a,version:version$a,type:type$a,data:data$a,attributes:attributes$8},name$9="Paywall App Delete Offer",version$9="1.1.2",type$9="paywall",data$9={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for App Delete Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1496307042754-b4aa456c4a2d?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"App Delete Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$7={testID:"paywall-test-id-1"},paywallAppDeleteOffer={name:name$9,version:version$9,type:type$9,data:data$9,attributes:attributes$7},name$8="vpn-onboard-1",version$8="1.1.2",type$8="onboard",data$8={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$6={testID:"onboard-test-id-1"},vpnOnboard1={name:name$8,version:version$8,type:type$8,data:data$8,attributes:attributes$6},name$7="vpn-onboard-2",version$7="1.1.2",type$7="onboard",data$7={type:"Main",isMain:!0,key:"ckcw0WXRY8sNR2SF",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/0c65cbe8e0c2e1242146e15dfd50a486.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/e8bbdde825cd23bdc44a9b2b32af22dc.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/3f312b38faf844746250cd54f27f91da.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/f4db2a32a43239c3bbbe742cb0f18b61.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",animation:"line-animation",animation_color:"STATIC_COLORS.WHITE",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",animation:"simple-animation",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"light",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$5={testID:"onboard-test-id-1"},vpnOnboard2={name:name$7,version:version$7,type:type$7,data:data$7,attributes:attributes$5},name$6="vpn-onboard-3",version$6="1.1.2",type$6="onboard",data$6={type:"Main",isMain:!0,key:"ckcw0WXRY8sNR2SF",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page2"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/c68cca84580d6920c883c220e57346c0.jpg",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page2"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page2"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page2"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"light",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$4={testID:"onboard-test-id-1"},vpnOnboard3={name:name$6,version:version$6,type:type$6,data:data$6,attributes:attributes$4},name$5="vpn-onboard-4",version$5="1.1.2",type$5="onboard",data$5={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page2"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/aadf6191a8f1091831647b3a01e1a1aa.jpg",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page2"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page2"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page2"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page2"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$3={testID:"onboard-test-id-1"},vpnOnboard4={name:name$5,version:version$5,type:type$5,data:data$5,attributes:attributes$3},name$4="vpn-onboard-5",version$4="1.1.2",type$4="onboard",data$4={type:"Main",isMain:!0,key:"cJVVSS7q9Qe1trnb",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/d237d6cde8bc9126cee7b47e30cd19f0.png",resizeMode:"contain",lottie:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/lottie/0be045f9fe44c790a4525a1a6bc4b837.json",styles:{height:400},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/820dc32b8252555058e7014a7fd1652f.png",resizeMode:"contain",video_url:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/video/440346112d02e65be3767c39b96cd7c0.mp4",styles:{height:400},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/fbb8677cd23cba79eef0ebef181e3b57.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/18cdd5cc478389df8ff362f95b7173ea.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.five-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.five-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}},{type:"OnboardItem",key:"app_onboard-page6",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/3c1225f83f5a5c934926fab3cb0e65d5.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-5",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#5)",title:"OnboardTitle 5",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-5"},children:"base.onboard.title.six-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#5)",title:"OnboardSubtitle 5",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-5"},children:"base.onboard.subtitle.six-page"}],attributes:{description:"Onboarding sayfası. (#5)",title:"OnboardItem 5",testID:"OnboardItem-test-id-5"}},{type:"OnboardItem",key:"app_onboard-page5",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ff07e162b2a63d38f07909e87848d46f.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-6",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#6)",title:"OnboardTitle 6",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-6"},children:"base.onboard.title.four-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#6)",title:"OnboardSubtitle 6",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-6"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#6)",title:"OnboardItem 6",testID:"OnboardItem-test-id-6"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.five-page",events:[{type:"Navigate",navigate_to:null,targetIndex:4}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.five-page",events:[{type:"Permission",permission:"GDPR"},{type:"Navigate",navigate_to:null,targetIndex:4}],styles:{flex:1,color:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:4,description:"Sayfa buton grubu. (#5)",title:"OnboardButtons 5",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-5"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.five-page",events:[{type:"Navigate",navigate_to:null,targetIndex:5}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.five-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:5}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:5,description:"Sayfa buton grubu. (#6)",title:"OnboardButtons 6",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-6"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"subscriptions"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"all",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$2={testID:"onboard-test-id-1"},vpnOnboard5={name:name$4,version:version$4,type:type$4,data:data$4,attributes:attributes$2},name$3="vpn-onboard-6",version$3="1.1.2",type$3="onboard",data$3={type:"Main",isMain:!0,key:"cJVVSS7q9Qe1trnb",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/9cb1d668b3724655f93a91e5eee771c5.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/f8d0c64bf89cc5f2f14126d0544ba174.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ad823809885c1a2a8e4632039f35a94e.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ede1705c51f3434ae9053ed5f29bf5dd.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"subscriptions"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$1={testID:"onboard-test-id-1"},vpnOnboard6={name:name$3,version:version$3,type:type$3,data:data$3,attributes:attributes$1},name$2="vpn-onboard-7",version$2="1.1.2",type$2="onboard",data$2={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null,key:"StatusBarColor-sxj19suwkrn"},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null,key:"NavigationBarColor-rhzn570dc5o"},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page",key:"OnboardTitle-5t0p86nj13m"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page",key:"OnboardSubtitle-0max8wno7l5b"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page",key:"OnboardTitle-ne9iihu925k"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page",key:"OnboardSubtitle-jq9469r7c2"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page",key:"OnboardTitle-hczvlbg7gqj"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page",key:"OnboardSubtitle-rufjwid9yug"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page",key:"OnboardTitle-f2ekfc0wcbl"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page",key:"OnboardSubtitle-qkw2jn84xem"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"},key:"Onboard-dg1zmwdawmg"},{type:"OnboardDot",attributes:{dotType:"expanding_dot",inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12,dot_thickness:"10@s"},testID:"OnboardDot-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-92fw2wn62h"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-mu7r8a5qx4"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-rulfu6b5w5"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-yru5emc0zcs"},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT",fontSize:"12@fs"},testID:"OnboardFooter-test-id-1"}}],key:"View-c5vb7865vto"}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"},key:"OnboardProvider-pvc5b6o5gu"}]},attributes={testID:"onboard-test-id-1"},vpnOnboard7={name:name$2,version:version$2,type:type$2,data:data$2,attributes:attributes},name$1="Terms and Privacy",version$1="1.1.2",type$1="terms",data$1={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Terms and Privacy screen container",title:"Terms & Privacy",styles:{backgroundColor:"THEME_COLORS.BACKGROUND",flex:1},testID:"TermsPrivacy-Main"},children:[{type:"View",attributes:{description:"Header section",styles:{padding:16,alignItems:"center",borderBottomWidth:1,borderBottomColor:"THEME_COLORS.LINE",backgroundColor:"THEME_COLORS.BACKGROUND"}},children:[{type:"Text",children:"view.terms.header.title",attributes:{styles:{fontSize:20,fontWeight:"700",color:"THEME_COLORS.TEXT"}}}]},{type:"WebView",attributes:{iosUrl:"https://stage.vpn111.net/page/ios/privacy",androidUrl:"https://stage.vpn111.net/page/android/privacy",styles:{flex:1,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"TermsPrivacy-WebView"}},{type:"View",attributes:{description:"Footer section",styles:{padding:20,backgroundColor:"THEME_COLORS.BACKGROUND",borderTopWidth:1,borderTopColor:"THEME_COLORS.LINE",gap:16}},children:[{type:"FormProvider",attributes:{defaultValues:'{"termsAccepted": false}',validationErrorMessageKey:"view.terms.error.must_accept"},children:[{type:"FormCheckbox",attributes:{name:"termsAccepted",validation:["required"],checked:!1,label:"view.terms.checkbox.label",checkedColor:"THEME_COLORS.CHECKBOX_ACTIVE_COLOR",styles:{marginBottom:8},testID:"TermsPrivacy-Checkbox"}},{type:"FormErrorText",attributes:{styles:{marginBottom:8},testID:"TermsPrivacy-FormErrorText"}},{type:"FormSubmitButton",attributes:{labelKey:"view.terms.accept.button",validationRequired:!0,disableIfUnvalidated:!0,events:[{type:"Navigate",placementKey:"onboard"}],styles:{backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND",color:"#FFFFFF",height:48,borderRadius:8,alignItems:"center",justifyContent:"center",fontWeight:"600"},testID:"TermsPrivacy-AcceptButton"}}]}]}]},termsAndPrivacy={name:name$1,version:version$1,type:type$1,data:data$1},name="Terms and Privacy (no form)",version="1.1.2",type="terms",data={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Terms and Privacy screen without FormProvider; plain Checkbox and SystemButton.",title:"Terms & Privacy",styles:{backgroundColor:"THEME_COLORS.BACKGROUND",flex:1},testID:"TermsPrivacyNoForm-Main"},children:[{type:"View",attributes:{description:"Header section",styles:{padding:16,alignItems:"center",borderBottomWidth:1,borderBottomColor:"THEME_COLORS.LINE",backgroundColor:"THEME_COLORS.BACKGROUND"}},children:[{type:"Text",children:"view.terms.header.title",attributes:{styles:{fontSize:20,fontWeight:"700",color:"THEME_COLORS.TEXT"}}}]},{type:"WebView",attributes:{iosUrl:"https://stage.vpn111.net/page/ios/privacy",androidUrl:"https://stage.vpn111.net/page/android/privacy",styles:{flex:1,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"TermsPrivacyNoForm-WebView"}},{type:"View",attributes:{description:"Footer section",styles:{padding:20,backgroundColor:"THEME_COLORS.BACKGROUND",borderTopWidth:1,borderTopColor:"THEME_COLORS.LINE",gap:16}},children:[{type:"Checkbox",attributes:{checked:!1,label:"view.terms.checkbox.label",checkedColor:"THEME_COLORS.CHECKBOX_ACTIVE_COLOR",styles:{marginBottom:8},testID:"TermsPrivacyNoForm-Checkbox"}},{type:"SystemButton",attributes:{labelKey:"view.terms.accept.button",events:[{type:"Navigate",placementKey:"onboard"}],styles:{backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND",color:"#FFFFFF",height:48,borderRadius:8,alignItems:"center",justifyContent:"center",fontWeight:"600"},testID:"TermsPrivacyNoForm-AcceptButton"}}]}]},termsAndPrivacyNoForm={name:name,version:version,type:type,data:data};function normalizeSample(e){const t=e.appConfig||{},i={...e,baseSize:t.baseSize||e.baseSize||defaultBaseSize,localization:t.localization||e.localization||defaultLocalization};return delete i.appConfig,i}function getSamples(){return[simple1,simple2,carouselSample,unvalidatedBuilder1,unvalidatedCrash1,unvalidatedCrashComponent1,unmigratedBuilder1,unmigratedBuilder1_1_1,paywall1,paywall2,paywallBackOffer,paywallNotificationOffer,paywallAppOpenOffer,paywallAppDeleteOffer,vpnOnboard1,vpnOnboard2,vpnOnboard3,vpnOnboard4,vpnOnboard5,vpnOnboard6,vpnOnboard7,termsAndPrivacy,termsAndPrivacyNoForm].map(normalizeSample)}const devices=getDevices();function EditorHeader({onSaveProject:e,onRestoreProject:t,current:i,editorData:r,setEditorData:n}){useLogRender("EditorHeader");const[o,a]=React.useState(!1),[s,l]=React.useState(!1),c=React.useRef(null),d=useRenderStore(e=>e.copiedNode),{device:p,setDevice:g,setCurrent:u,setLocalization:m,setBaseSize:h,setProjectColors:f,favoriteDevices:b,toggleFavoriteDevice:C}=useRenderStore(e=>({device:e.device,setDevice:e.setDevice,setCurrent:e.setCurrent,setLocalization:e.setLocalization,setBaseSize:e.setBaseSize,setProjectColors:e.setProjectColors,favoriteDevices:e.favoriteDevices||[],toggleFavoriteDevice:e.toggleFavoriteDevice})),{customDevices:x}=useCustomDeviceStore(),v=React.useMemo(()=>{const e=[...x,...devices],t=b.map(t=>e.find(e=>e.name===t)).filter(e=>void 0!==e),i=[...t,...e.filter(e=>!b.includes(e.name))].slice(0,5);return p&&!i.some(e=>e.name===p.name)?[...i,p]:i},[b,x,p]),S=React.useMemo(()=>{const e=e=>"paywall"===e?0:"onboard"===e?1:2;return getSamples().slice().sort((t,i)=>{const r=e(t.type)-e(i.type);return 0!==r?r:t.name.localeCompare(i.name)})},[]),w=React.useMemo(()=>`editor-actions-menu-${Math.random().toString(36).slice(2,9)}`,[]);function k(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=k(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>k(e,t,i)):k(e,t,i);if(n!==e)return{...r,children:n}}return e}React.useEffect(()=>{if(!s)return;const e=e=>{const t=c.current;t&&(e.target instanceof Element&&t.contains(e.target)||l(!1))},t=e=>{"Escape"===e.key&&l(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("keydown",t)}},[s]);const T=e=>JSON.parse(JSON.stringify(e)),_=e=>{if(!i||!r||!n)return;const t=T(e.data),o=collectNodeKeys(r),a=e=>(e=>"object"==typeof e&&null!==e&&!Array.isArray(e))(e)&&"type"in e&&"children"in e;if(!a(i))return void y.error("Select a component node to paste into");const s=i.children,l=(e=>{if(a(e)){if("main"===e.type||!0===e.isMain){const t=e.children;return t?Array.isArray(t)?t:[t]:[]}}return[e]})(t);if(0===l.length)return void y.error("Sample has no children to paste");const c=l.map(e=>repairNodeKeys(e,o));let d;d=s?Array.isArray(s)?[...s,...c]:[s,...c]:1===c.length?c[0]:c;const p={...i,children:d},g=k(r,i,p);n(g),u(p),y.success(`Pasted from "${e.name}"`)},R=()=>l(!1),O=!!i,I=!!(i&&r&&n&&d);return jsxRuntime.jsxs("div",{className:"editor-header",role:"region","aria-label":"Editor utility header",children:[jsxRuntime.jsxs("div",{className:"editor-header__devices",children:[v.map(e=>jsxRuntime.jsx(DeviceButton,{selectedDevice:p,onSelect:g,device:e,isFavorite:b.includes(e.name),onToggleFavorite:e=>C(e.name)},e.name)),jsxRuntime.jsx("button",{className:"editor-device-button","aria-label":"More devices",onClick:()=>a(!0),children:"More devices"})]}),jsxRuntime.jsx("div",{className:"editor-header__actions",children:jsxRuntime.jsxs("div",{className:"editor-actions-dropdown",ref:c,children:[jsxRuntime.jsxs("button",{className:"editor-button editor-actions-dropdown__trigger","aria-label":"Open actions menu","aria-haspopup":"menu","aria-expanded":s,"aria-controls":w,onClick:()=>l(e=>!e),children:["Actions",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__caret","aria-hidden":"true",children:"▾"})]}),s&&jsxRuntime.jsxs("ul",{id:w,className:"editor-actions-dropdown__menu",role:"menu","aria-label":"Editor actions",children:[jsxRuntime.jsxs("li",{role:"none",className:"editor-actions-dropdown__submenu-root",children:[jsxRuntime.jsxs("button",{className:"editor-actions-dropdown__item",role:"menuitem","aria-haspopup":"menu","aria-label":"Replace from samples",onClick:e=>e.preventDefault(),children:["Replace from samples",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__submenu-caret","aria-hidden":"true",children:"◂"})]}),jsxRuntime.jsx("ul",{className:"editor-actions-dropdown__submenu",role:"menu","aria-label":"Replace from sample",children:S.map(e=>jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-actions-dropdown__item--compact",role:"menuitem",onClick:()=>{(e=>{if(!n)return;const t=repairNodeKeys(T(e.data));n(t),u(t),e.localization&&m(e.localization),e.baseSize&&h(e.baseSize),f(e.projectColors),y.success(`Replaced with "${e.name}"`)})(e),R()},children:e.name})},`replace-${e.name}`))})]}),jsxRuntime.jsxs("li",{role:"none",className:"editor-actions-dropdown__submenu-root",children:[jsxRuntime.jsxs("button",{className:"editor-actions-dropdown__item",role:"menuitem","aria-haspopup":"menu","aria-label":"Paste from samples",onClick:e=>e.preventDefault(),disabled:!i,title:i?void 0:"Select a node first",children:["Paste from samples",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__submenu-caret","aria-hidden":"true",children:"◂"})]}),jsxRuntime.jsx("ul",{className:"editor-actions-dropdown__submenu",role:"menu","aria-label":"Paste from sample",children:S.map(e=>jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-actions-dropdown__item--compact",role:"menuitem",onClick:()=>{_(e),R()},disabled:!i,children:e.name})},`paste-${e.name}`))})]}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-save-button",role:"menuitem",onClick:()=>{e?.(),R()},disabled:!e,children:"Save"})}),t&&jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-save-previewconfig-button",role:"menuitem",onClick:()=>{try{t?.(),y.info("Restored")}catch{y.error("Restore failed")}finally{R()}},children:"Restore"})}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item",role:"menuitem",onClick:()=>{O&&(i&&copyNode(i),y.info("Copied"),R())},disabled:!O,children:"Copy"})}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item",role:"menuitem",onClick:()=>{I&&((()=>{if(!i||!r||!n)return;if(!d)return;const e=repairNodeKeys(JSON.parse(JSON.stringify(d)),collectNodeKeys(r)),t=k(r,i,e);useRenderStore.setState({copiedNode:null}),n(t),u(e)})(),y.success("Pasted"),R())},disabled:!I,children:"Paste"})})]})]})}),o&&jsxRuntime.jsx(DeviceSelectorModal,{devices:devices,selectedDevice:p,onSelect:g,onClose:()=>a(!1)})]})}const SAVED_COLORS_KEY="attributes-editor-saved-colors",formatTokenLabel$1=e=>e.split(/[_-]/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(" "),mapTokensToOptions=(e,t)=>{if(!e)return[];const i=t?.groupKey??"group";return Object.entries(e).filter(([,e])=>"string"==typeof e&&e.trim().length>0).map(([e,r])=>{const n=r.trim(),o=t?.tokenLabelPrefix?`${t.tokenLabelPrefix}.${e}`:void 0;return{id:`${i}-${e}`,label:formatTokenLabel$1(e),value:n,tokenLabel:o}})},readSavedColors=()=>{if("undefined"==typeof window)return[];try{const e=window.localStorage.getItem(SAVED_COLORS_KEY);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e).map(e=>e.trim().toLowerCase()).filter(Boolean):[]}catch{return[]}},persistSavedColors=e=>{if("undefined"!=typeof window)try{window.localStorage.setItem(SAVED_COLORS_KEY,JSON.stringify(e))}catch{}},STATIC_PREFIX="STATIC_COLORS.",THEME_PREFIX="THEME_COLORS.",resolveProjectColorValue=(e,t)=>{if(!e||"string"!=typeof e||!t)return;const i=e.trim();if(i){if(i.startsWith(STATIC_PREFIX)){const e=i.slice(STATIC_PREFIX.length),r=t.STATIC_COLORS?.[e];return"string"==typeof r&&r.trim()?r.trim():void 0}if(i.startsWith(THEME_PREFIX)){const e=i.slice(THEME_PREFIX.length);if(!e)return;const r=e.split(".");if(1===r.length){const e=r[0],i=t.THEME_COLORS;if(!i)return;for(const t of Object.values(i)){const i=t?.[e];if("string"==typeof i&&i.trim())return i.trim()}return}const[n,...o]=r,a=o.join(".");if(!n||!a)return;const s=t.THEME_COLORS?.[n],l=s?.[a];return"string"==typeof l&&l.trim()?l.trim():void 0}}};function ColorModal({value:e,projectColors:t,onSelect:i,onClose:r,onClear:n}){const[o,a]=React.useState(()=>readSavedColors()),[s,l]=React.useState(!0),c=React.useRef(null),d=React.useId(),p=React.useId(),g=React.useMemo(()=>resolveProjectColorValue(e,t)??e,[e,t]),u=React.useMemo(()=>{if(!t)return[];const e=[],i=mapTokensToOptions(t.STATIC_COLORS,{groupKey:"static",tokenLabelPrefix:"STATIC_COLORS"});i.length&&e.push({title:"Static colors",options:i,emptyMessage:"No static colors defined."});const r=t.THEME_COLORS??{};return Object.entries(r).forEach(([t,i])=>{const r=mapTokensToOptions(i,{groupKey:`theme-${t||"default"}`,tokenLabelPrefix:"THEME_COLORS"});if(!r.length)return;const n=t?.trim()?formatTokenLabel$1(t):"Theme";e.push({title:`Theme: ${n}`,options:r,emptyMessage:`No colors defined for ${n}.`})}),e},[t]),m=React.useMemo(()=>o.map((e,t)=>({id:`saved-${t}-${e}`,label:e,value:e})),[o]),h=e=>{const t=e?.trim().toLowerCase();t&&(a(e=>{if(e.includes(t))return e;const i=[...e,t];return persistSavedColors(i),i}),i(t),r())},f=()=>{const e=c.current,t=e?e.showPicker:void 0;if(e&&"function"==typeof t){try{e.focus({preventScroll:!0})}catch{}t.call(e)}else(()=>{if("undefined"==typeof document)return;const e=document.createElement("input");e.type="color",e.value=g?.toString()||"#000000",e.style.position="fixed",e.style.left="-1000px",e.style.top="0",e.style.width="40px",e.style.height="40px",e.style.opacity="0";const t=()=>{e.removeEventListener("change",i),e.removeEventListener("input",i),e.removeEventListener("blur",t),e.remove()},i=()=>{h(e.value),t()};e.addEventListener("change",i),e.addEventListener("input",i),e.addEventListener("blur",t),document.body.appendChild(e);try{e.focus({preventScroll:!0})}catch{}requestAnimationFrame(()=>e.click())})()},y=e=>{h(e.target.value),e.target.value="#000000"},b=e=>{const t=s&&e.tokenLabel?e.tokenLabel:e.value;i(t),r()};return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"color-picker-title",contentClassName:"color-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"color-picker-title",className:"modal__title",children:"Pick a color"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"color-modal__selected",children:[jsxRuntime.jsxs("div",{className:"color-modal__selected-info",children:[jsxRuntime.jsx("label",{htmlFor:p,role:"button","aria-label":"Open color picker",tabIndex:0,title:"Pick a color",className:"color-modal__selected-preview",style:{background:g??"transparent"},onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),f())}}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("p",{className:"color-modal__selected-label",children:"Selected color"}),jsxRuntime.jsx("p",{className:"color-modal__selected-value",children:e??"None"})]})]}),e?jsxRuntime.jsx("button",{type:"button",className:"color-modal__link-button",onClick:n,children:"Clear"}):null]}),jsxRuntime.jsxs("div",{className:"color-modal__toggle",children:[jsxRuntime.jsxs("label",{htmlFor:d,className:"color-modal__toggle-label",children:[jsxRuntime.jsx("input",{id:d,type:"checkbox",className:"color-modal__toggle-input",checked:s,onChange:e=>l(e.target.checked)}),"Use color names"]}),jsxRuntime.jsx("p",{className:"color-modal__toggle-description",children:"Output tokens like STATIC_COLORS.PRIMARY instead of raw values."})]}),u.length?u.map(t=>jsxRuntime.jsx(ColorSection,{title:t.title,options:t.options,emptyMessage:t.emptyMessage,activeValue:e,onSelect:b},t.title)):jsxRuntime.jsx(ColorSection,{title:"Project colors",options:[],emptyMessage:"No project colors detected yet.",activeValue:e,onSelect:b}),jsxRuntime.jsx(ColorSection,{title:"Saved colors",options:m,emptyMessage:"Add colors you use often for quick access.",action:jsxRuntime.jsxs("span",{className:"color-modal__link-button color-modal__add-color",children:["Add color",jsxRuntime.jsx("input",{type:"color",className:"color-modal__add-color-input",onChange:y,defaultValue:"#000000","aria-label":"Add color"})]}),activeValue:e,onSelect:b}),jsxRuntime.jsx("input",{ref:c,id:p,type:"color",className:"color-modal__input",onChange:y,defaultValue:"#000000",tabIndex:-1})]})}function ColorSection({title:e,options:t,emptyMessage:i,action:r,activeValue:n,onSelect:o}){return jsxRuntime.jsxs("section",{className:"color-section",children:[jsxRuntime.jsxs("div",{className:"color-section__header",children:[jsxRuntime.jsx("p",{className:"color-section__title",children:e}),r]}),t.length?jsxRuntime.jsx("div",{className:"color-section__swatches",children:t.map(e=>jsxRuntime.jsx(ColorSwatch,{option:e,isActive:e.tokenLabel&&e.tokenLabel===n||e.value===n,onSelect:()=>o(e)},e.id))}):jsxRuntime.jsx("p",{className:"color-section__empty",children:i??"No colors available."})]})}function ColorSwatch({option:e,isActive:t,onSelect:i}){const r="#ffffff"===e.value?.trim().toLowerCase()||"#fff"===e.value?.trim().toLowerCase();return jsxRuntime.jsxs("button",{type:"button",onClick:i,className:"color-modal__swatch"+(t?" color-modal__swatch--active":""),children:[jsxRuntime.jsx("span",{"aria-hidden":!0,className:"color-modal__swatch-preview"+(r?" color-modal__swatch-preview--light":""),style:{background:e.value??"transparent"}}),jsxRuntime.jsx("span",{className:"color-modal__swatch-label",children:e.label??e.value}),jsxRuntime.jsx("span",{className:"color-modal__swatch-value",children:e.tokenLabel?`${e.tokenLabel} - ${e.value}`:e.value})]})}const Checkbox=React.forwardRef(({label:e,helperText:t,className:i,inputClassName:r,onChange:n,id:o,disabled:a,...s},l)=>{const c=React.useId(),d=o??c,p=t?`${d}-helper`:void 0,g=["builder-checkbox",a?"builder-checkbox--disabled":void 0,i].filter(Boolean).join(" "),u=["builder-checkbox__native",r].filter(Boolean).join(" ");return jsxRuntime.jsxs("div",{className:g,children:[jsxRuntime.jsxs("label",{htmlFor:d,className:"builder-checkbox__label",children:[jsxRuntime.jsx("input",{...s,ref:l,id:d,type:"checkbox",className:u,onChange:e=>{n?.(e.target.checked,e)},disabled:a,"aria-describedby":p}),jsxRuntime.jsx("span",{className:"builder-checkbox__control","aria-hidden":"true"}),e?jsxRuntime.jsx("span",{className:"builder-checkbox__text",children:e}):null]}),t?jsxRuntime.jsx("span",{id:p,className:"builder-checkbox__helper",children:t}):null]})});function LayoutPreviewPicker({mode:e,options:t,value:i,onChange:r,layoutContext:n,viewAttributes:o}){if(!t.length)return null;const a="string"==typeof i?i:n?.[e];return jsxRuntime.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,paddingBottom:2},children:t.map(t=>{const i=a===t;return jsxRuntime.jsxs("button",{type:"button",onClick:()=>r(t),style:{borderRadius:8,padding:5,width:110,flex:"0 0 auto",border:i?"2px solid #222":"1px solid #d5d5d5",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",textAlign:"left",display:"flex",flexDirection:"column",gap:3,cursor:"pointer",boxShadow:i?"0 2px 4px rgba(0,0,0,0.08)":"none"},children:[jsxRuntime.jsx(LayoutPreview,{mode:e,option:t,isActive:i,layoutContext:n,viewAttributes:o}),jsxRuntime.jsx("span",{style:{fontWeight:600,fontSize:11},children:formatLayoutLabel(t)})]},t)})})}function LayoutPreview({mode:e,option:t,isActive:i,layoutContext:r,viewAttributes:n}){const o=resolvePreviewContext(e,t,r),a=o.flexDirection?.startsWith("column"),s=n?.style?.backgroundColor??(i?"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)) / 0.55)":"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)))"),l=parseNumeric(n?.style?.gap)??3,c=parseNumeric(n?.style?.borderRadius)??4,d="stretch"===o.alignItems?a?{width:"100%"}:{height:"100%"}:void 0;return jsxRuntime.jsx("div",{style:{borderRadius:c,border:"1px dashed rgba(0,0,0,0.2)",padding:5,background:s},children:jsxRuntime.jsx("div",{style:{display:"flex",flexDirection:o.flexDirection??"row",justifyContent:o.justifyContent??"flex-start",alignItems:o.alignItems??"stretch",gap:l,width:"100%",minHeight:a?52:40,transition:"all 0.2s ease"},children:Array.from({length:3}).map((t,i)=>jsxRuntime.jsx("span",{style:{width:a?22:10,height:10,borderRadius:2.5,background:"#f7a500",border:"1px solid rgba(0,0,0,0.1)",flex:"justifyContent"===e?"0 0 auto":void 0,...d??{}}},i))})})}function resolvePreviewContext(e,t,i){const r={flexDirection:i?.flexDirection??"row",alignItems:i?.alignItems??"center",justifyContent:i?.justifyContent??"flex-start"};switch(e){case"flexDirection":return{flexDirection:t,alignItems:r.alignItems,justifyContent:r.justifyContent};case"alignItems":return{flexDirection:r.flexDirection,alignItems:t,justifyContent:r.justifyContent};case"justifyContent":return{flexDirection:r.flexDirection,alignItems:r.alignItems,justifyContent:t};default:return r}}function parseNumeric(e){if(null==e)return;if("number"==typeof e)return e;const t=Number.parseFloat(e);return Number.isNaN(t)?void 0:t}function formatLayoutLabel(e){return e.replace(/[-_]/g," ").replace(/\s+/g," ").replace(/^\w|\s\w/g,e=>e.toUpperCase())}function toPreferredScale(e){if("vs"===e||"s"===e||"f"===e||"%"===e)return e;if("string"!=typeof e)return;const t=e.trim().toLowerCase();return"vs"===t||"s"===t||"f"===t||"%"===t?t:void 0}function parseSizeValue(e){const t={amount:"",unit:""};if("number"==typeof e&&Number.isFinite(e))return{amount:String(e),unit:""};if("string"!=typeof e)return t;const i=e.trim();if(!i)return t;if(i.endsWith("%"))return{amount:i.slice(0,-1),unit:"%"};const r=i.toLowerCase();return r.endsWith("@vs")?{amount:i.slice(0,-3),unit:"vs"}:r.endsWith("vs")?{amount:i.slice(0,-2),unit:"vs"}:r.endsWith("@fs")?{amount:i.slice(0,-3),unit:"f"}:r.endsWith("@f")||r.endsWith("fs")?{amount:i.slice(0,-2),unit:"f"}:r.endsWith("f")?{amount:i.slice(0,-1),unit:"f"}:r.endsWith("@s")?{amount:i.slice(0,-2),unit:"s"}:r.endsWith("s")?{amount:i.slice(0,-1),unit:"s"}:r.endsWith("px")?{amount:i.slice(0,-2),unit:""}:{amount:i,unit:""}}function composeSizeValue(e,t){const i=e.trim();if("%"===t)return`${i}%`;if(""===t){const e=Number(i);return Number.isFinite(e)?e:i}return"f"===t?`${i}@fs`:`${i}@${t}`}function normalizePreferredScale(e,t){const i=t.trim().toLowerCase(),r=i.includes("height")||i.includes("top")||i.includes("vertical")?"vs":"s";return e??r}function SizeField({value:e,onChange:t,preferredScale:i,fieldName:r}){const n=React.useMemo(()=>parseSizeValue(e),[e]),o=React.useMemo(()=>normalizePreferredScale(i,r),[i,r]),[a,s]=React.useState(n.amount),[l,c]=React.useState(()=>n.unit&&n.unit!==o?n.unit:"auto");React.useEffect(()=>{s(n.amount);const e=n.unit&&n.unit!==o?n.unit:"auto";c(e)},[n.amount,n.unit,o]);const d=React.useCallback(e=>"auto"===e?o:e,[o]),p=React.useCallback((e,i)=>{const r=e.trim();t(r?composeSizeValue(r,d(i)):void 0)},[t,d]),g=[{value:"auto",label:"auto"},...[o,...["vs","s","f","%"].filter(e=>e!==o)].map(e=>({value:e,label:e===o?`${e} (preferred)`:e}))];return jsxRuntime.jsxs("div",{className:"attributes-editor__size-field",children:[jsxRuntime.jsx("input",{type:"number",className:"input attributes-editor__size-field-input",value:a,onChange:e=>{const i=e.target.value;s(i),i.trim()?p(i,l):t(void 0)}}),jsxRuntime.jsx("select",{className:"input attributes-editor__size-field-select",value:l,onChange:e=>{const t=e.target.value;c(t),a.trim()&&p(a,t)},children:g.map(e=>jsxRuntime.jsx("option",{value:e.value,children:e.label},e.value))})]})}Checkbox.displayName="Checkbox";const BOOLEAN_ALIASES=new Set(["bool","boolean"]);function isBooleanFieldType(e){if(Array.isArray(e))return!1;if("string"!=typeof e)return!1;const t=e.trim().toLowerCase();return BOOLEAN_ALIASES.has(t)}const layoutFieldNames=["flexDirection","alignItems","justifyContent"];function isLayoutField(e){return layoutFieldNames.includes(e)}function Field({name:e,type:t,value:i,onChange:r,componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:l,preferredScale:c}){if(Array.isArray(t)){if(isLayoutField(e)){const n=t.filter(e=>"string"==typeof e&&e.length>0);return jsxRuntime.jsx(LayoutPreviewPicker,{mode:e,options:n,value:"string"==typeof i?i:void 0,onChange:r,layoutContext:a,viewAttributes:s})}return jsxRuntime.jsxs("select",{value:i??"",onChange:e=>r(e.target.value),className:"input",children:[jsxRuntime.jsx("option",{value:"",children:"(none)"}),t.map(e=>jsxRuntime.jsx("option",{value:e,children:e},e))]})}const d="string"==typeof t?getArrayItemType(t):null;if(d){const t=Array.isArray(i)?i:[];if(isPrimitiveType(d)){const i=(i,n)=>{switch(d){case"number":return jsxRuntime.jsx("input",{type:"number",value:i??"",onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:Number(e.target.value),r(i)},className:"input",style:{flex:1}});case"boolean":case"bool":return jsxRuntime.jsx(Checkbox,{checked:Boolean(i),onChange:e=>{const i=[...t];i[n]=e,r(i)},name:`${e}-${n}`});case"string":case"description":return jsxRuntime.jsx("input",{type:"text",value:i??"",onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:e.target.value,r(i)},className:"input",style:{flex:1}});case"title":return jsxRuntime.jsx("input",{type:"text",value:i??"",maxLength:20,onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:e.target.value,r(i)},className:"input",style:{flex:1}});case"color":return jsxRuntime.jsx(ColorPickerButton,{value:"string"==typeof i?i:void 0,onChange:e=>{const i=[...t];i[n]=e,r(i)},projectColors:o});default:return jsxRuntime.jsx("p",{children:"---not-implemented----"})}};return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[t.map((e,n)=>jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[i(e,n),jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=t.filter((e,t)=>t!==n);r(e.length?e:void 0)},children:"remove"})]},n)),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=[...t,"boolean"!==d&&("number"===d?0:"")];r(e)},children:"add"})})]})}const l=getTypeSchema(n,d)??{};return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[t.map((e,i)=>{const c=e??{};return jsxRuntime.jsxs("div",{style:{border:"1px solid #ddd",borderRadius:6,padding:8},children:[jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:Object.entries(l).map(([e,l])=>isBooleanFieldType(l)?jsxRuntime.jsx("div",{style:{gridColumn:"1 / -1"},children:jsxRuntime.jsx(Field,{name:e,type:l,value:c?.[e],onChange:n=>{const o=[...t],a={...c??{},[e]:n};o[i]=a,r(o)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:e})},e):jsxRuntime.jsxs(React.Fragment,{children:[jsxRuntime.jsx("div",{style:{alignSelf:"center"},children:e}),jsxRuntime.jsx(Field,{name:e,type:l,value:c?.[e],onChange:n=>{const o=[...t],a={...c??{},[e]:n};o[i]=a,r(o)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s})]},e))}),jsxRuntime.jsxs("div",{style:{marginTop:8,display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:4},children:[jsxRuntime.jsx("button",{type:"button",onClick:e=>{if(e.stopPropagation(),i<=0)return;const n=[...t],o=n[i-1];n[i-1]=n[i],n[i]=o,r(n)},disabled:i<=0,"aria-label":"Move up",children:"↑"}),jsxRuntime.jsx("button",{type:"button",onClick:e=>{if(e.stopPropagation(),i>=t.length-1)return;const n=[...t],o=n[i+1];n[i+1]=n[i],n[i]=o,r(n)},disabled:i>=t.length-1,"aria-label":"Move down",children:"↓"})]}),jsxRuntime.jsx("button",{type:"button",onClick:e=>{e.stopPropagation();const n=t.filter((e,t)=>t!==i);r(n.length?n:void 0)},children:"remove"})]})]},i)}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=[...t,{}];r(e)},children:"add"})})]})}if("string"==typeof t&&!isPrimitiveType(t)){const e=getTypeSchema(n,t);if(e){const t=i??{};return jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:Object.entries(e).map(([e,i])=>isBooleanFieldType(i)?jsxRuntime.jsx("div",{style:{gridColumn:"1 / -1"},children:jsxRuntime.jsx(Field,{name:e,type:i,value:t?.[e],onChange:i=>{const n={...t??{},[e]:i};r(n)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:e})},e):jsxRuntime.jsxs(React.Fragment,{children:[jsxRuntime.jsx("div",{style:{alignSelf:"center"},children:e}),jsxRuntime.jsx(Field,{name:e,type:i,value:t?.[e],onChange:i=>{const n={...t??{},[e]:i};r(n)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s})]},e))})}}if("string[]"===t){const e=Array.isArray(i)?i:[];return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[e.map((t,i)=>jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("input",{type:"text",value:t??"",onChange:t=>{const n=[...e];n[i]=t.target.value,r(n)},className:"input",style:{flex:1}}),jsxRuntime.jsx("button",{type:"button",onClick:()=>{const t=e.filter((e,t)=>t!==i);r(t.length?t:void 0)},children:"remove"})]},i)),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const t=[...e,""];r(t)},children:"add"})})]})}if("string"!=typeof t)return jsxRuntime.jsx("p",{children:"---not-implemented----"});switch(t){case"size":return jsxRuntime.jsx(SizeField,{value:i,onChange:r,preferredScale:c,fieldName:e});case"fontWeight":{const e=normalizeFontWeight(i);return jsxRuntime.jsxs("select",{value:e??"",onChange:e=>r(e.target.value||void 0),className:"input",children:[jsxRuntime.jsx("option",{value:"",children:"(none)"}),FONT_WEIGHT_OPTIONS.map(e=>jsxRuntime.jsx("option",{value:e,children:e},e))]})}case"number":return jsxRuntime.jsx("input",{type:"number",value:i??"",onChange:e=>r(""===e.target.value?void 0:Number(e.target.value)),className:"input"});case"boolean":case"bool":return jsxRuntime.jsx(Checkbox,{label:l??e,checked:Boolean(i),onChange:e=>r(e),name:e});case"string":case"description":return jsxRuntime.jsx("input",{type:"text",value:i??"",onChange:e=>r(""===e.target.value?void 0:e.target.value),className:"input"});case"title":return jsxRuntime.jsx("input",{type:"text",value:i??"",maxLength:20,onChange:e=>r(""===e.target.value?void 0:e.target.value),className:"input"});case"color":return jsxRuntime.jsx(ColorPickerButton,{value:"string"==typeof i?i:void 0,onChange:e=>r(e),projectColors:o});default:return jsxRuntime.jsx("p",{children:"---not-implemented----"})}}function ColorPickerButton({value:e,onChange:t,projectColors:i}){const[r,n]=React.useState(!1),o="string"==typeof e?e:void 0,a=React.useMemo(()=>resolveProjectColorValue(o,i)??o,[o,i]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>n(!0),style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,borderRadius:6,border:"1px solid #ddd",padding:"8px 10px",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",cursor:"pointer"},children:[jsxRuntime.jsx("span",{"aria-hidden":!0,style:{width:32,height:32,borderRadius:6,border:"1px solid rgba(0,0,0,0.1)",background:a??"transparent"}}),jsxRuntime.jsx("span",{style:{flex:1,textAlign:"left",fontWeight:500},children:o??"Select color"}),jsxRuntime.jsx("span",{style:{fontSize:12,color:"#666"},children:"Open"})]}),r?jsxRuntime.jsx(ColorModal,{value:o,projectColors:i,onSelect:e=>{t(e),n(!1)},onClose:()=>n(!1),onClear:()=>{t(void 0),n(!1)}}):null]})}function FieldInfoTooltip({description:e,children:t}){const[i,r]=React.useState(!1);if(!e||!e.trim())return jsxRuntime.jsx(jsxRuntime.Fragment,{children:t});const n=["field-info-tooltip__bubble",i?"field-info-tooltip__bubble--visible":""].filter(Boolean).join(" "),o=()=>r(!0),a=()=>r(!1);return jsxRuntime.jsxs("div",{className:"field-info-tooltip",children:[t,jsxRuntime.jsxs("button",{className:"field-info-tooltip__trigger",onMouseEnter:o,onMouseLeave:a,onFocus:o,onBlur:a,type:"button",children:["Show info",jsxRuntime.jsx("span",{className:n,role:"tooltip","aria-hidden":!i,children:e})]})]})}const FIELD_SLOT_MATCHERS={top:/(^|[-_])(top)$/i,bottom:/(^|[-_])(bottom)$/i,left:/(^|[-_])(left)$/i,right:/(^|[-_])(right)$/i};function SpecialCategorySection({category:e,entries:t,attributeMeta:i,getAttributeValue:r,onAttributeChange:n,componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,meta:c}){const[d,p]=React.useState(!1),g=c?.label&&c.label.trim().length>0?c.label:e&&e.length>0?e.charAt(0).toUpperCase()+e.slice(1):"Special",u=c?.description,m="padding"===e||"margin"===e||"offset"===e,h=m,f=e=>{if(!h)return;const t=e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/\s+/g,"-").toLowerCase();return Object.keys(FIELD_SLOT_MATCHERS).find(e=>FIELD_SLOT_MATCHERS[e].test(t))},y=t.filter(e=>!f(e.name)),b=m&&y.length>0;return jsxRuntime.jsxs("section",{className:"special-category-section",children:[jsxRuntime.jsxs("div",{className:"special-category-section__header",children:[jsxRuntime.jsx("p",{className:"special-category-section__title",children:g}),b?jsxRuntime.jsx("button",{type:"button",onClick:()=>p(e=>!e),className:"special-category-section__toggle","data-active":d,children:d?"Show less":"Show more"}):null]}),u?jsxRuntime.jsx("p",{className:"special-category-section__description",children:u}):null,(()=>{if(!t.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});if(!m)return(()=>{if(!t.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});const e=["special-category-section__fields",h?"special-category-section__fields--box":""].filter(Boolean).join(" ");return jsxRuntime.jsx("div",{className:e,children:t.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=f(e),h=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:h,"data-field-slot":m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})})})();const e=t.filter(e=>f(e.name)).sort((e,t)=>{const i=["top","left","right","bottom"],r=f(e.name),n=f(t.name);return(r?i.indexOf(r):999)-(n?i.indexOf(n):999)}),c=t.filter(e=>!f(e.name));if(0===e.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});const p=jsxRuntime.jsx("div",{className:"special-category-section__fields special-category-section__fields--box",children:e.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=f(e),h=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:h,"data-field-slot":m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})}),g=d&&c.length>0?jsxRuntime.jsx("div",{className:"special-category-section__fields",children:c.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})}):null;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[p,g]})})()]})}const FALLBACK_PARENT="all",EXCLUDE_PREFIX="!=";function normalizeDesiredParents(e){return Array.isArray(e)&&0!==e.length?e:[FALLBACK_PARENT]}function matchesDesiredChildToken(e,t){return e.startsWith("=")||e.startsWith(">")?e.slice(1)===t:e===t}function filterOptionsByDesiredChildren(e,t){if(!Array.isArray(t)||0===t.length)return e;const i=t.map(e=>e.trim()).filter(e=>e.length>0);return 0===i.length?e:e.filter(({type:e})=>{let t=!1,r=!1;for(const n of i)if(n.startsWith(EXCLUDE_PREFIX)){if(e===n.slice(EXCLUDE_PREFIX.length))return!1}else n!==FALLBACK_PARENT&&(t=!0,matchesDesiredChildToken(n,e)&&(r=!0));return!t||r})}function formatTokenLabel(e){return"all"===e?"Anywhere":"root"===e?"Root only":e.startsWith("!=")?`Not under ${e.slice(2)}`:e.startsWith("=")?`Direct child of ${e.slice(1)}`:e.startsWith(">")?`Inside ${e.slice(1)}`:e}function tokenMatchesParent(e,t){return"all"===e||(t&&0!==t.length?!e.startsWith("!=")&&(e.startsWith("=")||e.startsWith(">")?e.slice(1)===t:e===t):"root"===e)}function buildGroups(e,t){const i=new Map;return e.forEach(e=>{e.desiredParents.forEach(r=>{if(t&&!t(r,e))return;const n=i.get(r);n?n.some(t=>t.type===e.type)||n.push(e):i.set(r,[e])})}),Array.from(i.entries()).map(([e,t])=>({token:e,displayLabel:formatTokenLabel(e),options:t.sort((e,t)=>e.label.localeCompare(t.label))})).sort((e,t)=>e.displayLabel.localeCompare(t.displayLabel))}function AddComponentModal({allowedChildTypes:e,parentType:t,onSelect:i,onClose:r}){const[n,o]=React.useState(!1),a=React.useMemo(()=>Array.from(new Set(e)).map(e=>{const t=getPatternByType(e);return{type:e,label:t?.meta?.label?.trim()||e,desiredParents:normalizeDesiredParents(t?.meta?.desiredParent)}}).sort((e,t)=>e.label.localeCompare(t.label)),[e]),s=React.useMemo(()=>{if(!t)return;const e=getPatternByType(t)?.meta?.desiredChildren;return Array.isArray(e)&&0!==e.length?e.map(e=>e.trim()).filter(e=>e.length>0):void 0},[t]),l=React.useMemo(()=>filterOptionsByDesiredChildren(a,s),[a,s]),c=!s?.length;React.useEffect(()=>{c||o(!1)},[c]);const d=React.useMemo(()=>buildGroups(l,e=>tokenMatchesParent(e,t)),[l,t]),p=React.useMemo(()=>buildGroups(l),[l]),g=e=>jsxRuntime.jsxs("button",{type:"button",className:"add-component-modal__card",onClick:()=>(e=>{i(e)})(e.type),role:"listitem",children:[jsxRuntime.jsx("div",{className:"add-component-modal__thumbnail","aria-hidden":"true",children:jsxRuntime.jsx("span",{children:"Preview"})}),jsxRuntime.jsx("span",{className:"add-component-modal__title",children:e.label})]},e.type),u=e=>e.map(e=>jsxRuntime.jsxs("div",{className:"add-component-modal__group",children:[jsxRuntime.jsx("h5",{className:"add-component-modal__group-title",children:e.displayLabel}),jsxRuntime.jsx("div",{className:"add-component-modal__grid",role:"list",children:e.options.map(g)})]},e.token)),m=d.length>0,h=l.length>0;return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"add-component-title",contentClassName:"add-component-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"add-component-title",className:"modal__title",children:"Add component"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button","aria-label":"Close add component modal",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"add-component-modal__body",children:[jsxRuntime.jsxs("section",{className:"add-component-modal__section",children:[jsxRuntime.jsx("h4",{className:"add-component-modal__section-title",children:"Recommended Components"}),m?u(d):jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:h?"No direct recommendations for this parent.":"No components available for this node."})]}),c&&jsxRuntime.jsxs("label",{className:"add-component-modal__toggle",children:[jsxRuntime.jsx("input",{type:"checkbox",checked:n,onChange:e=>o(e.target.checked)}),jsxRuntime.jsx("span",{children:"Show rest (All Components)"})]}),c&&n&&jsxRuntime.jsxs("section",{className:"add-component-modal__section","aria-live":"polite",id:"add-component-modal-all",children:[jsxRuntime.jsx("h4",{className:"add-component-modal__section-title",children:"All Components"}),p.length?u(p):jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:"No components available."})]}),!n&&!m&&jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:c?"Nothing to suggest yet—toggle “Show rest” to browse all components.":"Nothing to suggest yet for this parent."})]})]})}const Icons=["activity","activity-heart","alert-circle","alert-triangle","anchor","archive","arrow-down","arrow-left","arrow-narrow-down-left","arrow-narrow-up-right","arrow-right","arrow-right-smooth","asterisk-01","asterisk-02","at-sign","award","battery-charging","bell-01","bell-02","bell-ringing-02","bookmark","bookmark-add","bookmark-check","bookmark-minus","bookmark-x","bubble","building-01","building-02","building-03","building-04","building-05","building-06","building-07","building-08","building-09","camera","camera-01","camera-steel","check","check-circle","check-circle-bold","check-circle-broken","check-done-01","check-done-02","check-heart","check-square","check-square-broken","check-verified-01","check-verified-02","check-verified-03","checkbox","checkv","chevron-down","chevron-down2","chevron-left","chevron-left-2","chevron-right","chevron-right-empty","chevron-right-smooth","chevron-up","circle","clock","clock-fast-forward","close","close-circle","cloud-01","cloud-blank-01","cloud-blank-02","coin","coins-02","colors","copy-01","copy-02","copy-03","copy-04","copy-05","copy-06","copy-07","corner-down-right","crypto-bold","delete-icon","diamond","dice-3","divide-01","divide-02","divide-03","document-check-bold","dots-circle","dots-grid","dots-horizontal","dots-vertical","download-01","download-02","download-03","edit-03","edit-04","edit-05","element-3","ellipse-127","exclaimation-circle","eye-off-line","face-smile","file-04","file-05","file-check-02","file-plus-01","file-shield-02","filter-funnel-01","flag-03","flash","folder","folder-plus","gallery","globe-01","globe-04","globe-bold","guard","headphones-01","headphones-02","headset-bold","heart","heart-bold","help-circle","home-2","home-line","hourglass-02","image","image-01","image-03","inbox-01","inbox-arrow-down","info-circle","keyboard-line","lamp-charge","layer","light","like-dislike","lock-03","logout","magicpen","mail","mail-01","marker","medal-star","menu","menu-04","message-circle-01","message-plus-circle","message-question-circle","message-text-circle-01","message-text-square-02","message-x-square","microphone-02","microphone-slash","mirror","moon-01","moon-bold","mouse-circle","move","notification","notification-fill","notification-text","pdf-01","pencil-01","phone","phone-01","phone-arrow-down-left","phone-arrow-up-right","phone-hang-up","phone-hangup2","phone-incoming-01","phone-outgoing-01","phone-plus","phone-x","plus","plus-circle","printer","question-mark-circle","refresh-ccw-01","refresh-cw-01","refresh-cw-04","refresh-right-square-bold","remove-circle","repeat-04","repeat-bold","ruler-pen","search","search-lg","search-md","search-refraction","send-01","send-02","send-diagonal","setting-2","settings","settings-02","settings-04","settings-2","settings-cog","share-01","share-03","share-04","share-05","share-06","share-bold","shield-01","shield-bold","solar-check","speaker","speaker-wave","speedometer-03","star","star-rounded","sun","target-03","text-input","translate","trash","trash-02","trash-03","trash-04","trush-square-bold","unlimited","user-circle","user-jogging","user-plus-01","user-square","user-x-01","user-x-02","user2","users-02","users-speaker","verify","voice-cricle","x-circle","x-close","x-sm","zap"];function IconPickerModal({value:e,onSelect:t,onClose:i,onClear:r}){const[n,o]=React.useState(""),a=React.useMemo(()=>{const e=n.trim().toLowerCase();return e?Icons.filter(t=>t.toLowerCase().includes(e)):Icons},[n]);return jsxRuntime.jsx(Modal,{onClose:i,ariaLabelledBy:"icon-picker-title",children:jsxRuntime.jsxs("div",{style:{display:"grid",gap:12},children:[jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsxRuntime.jsx("p",{id:"icon-picker-title",style:{margin:0,fontWeight:700},children:"Select Icon"}),jsxRuntime.jsx("div",{style:{flex:1}}),r?jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Clear"}):null,jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsx("input",{type:"text",className:"input",placeholder:"Search icons...",value:n,onChange:e=>o(e.target.value),autoFocus:!0}),jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#666"},children:[a.length," / ",Icons.length,e?` • Selected: ${e}`:""]}),jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(120px, 1fr))",gap:8,maxHeight:"60vh",overflow:"auto",paddingRight:4},children:a.map(i=>{const r=e===i;return jsxRuntime.jsxs("button",{type:"button",onClick:()=>t(i),style:{display:"flex",alignItems:"center",gap:8,borderRadius:8,border:r?"2px solid #222":"1px solid #ddd",padding:"8px 10px",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",cursor:"pointer"},"aria-label":`Select icon ${i}`,children:[jsxRuntime.jsx(Icon,{iconType:i,size:18}),jsxRuntime.jsx("span",{style:{fontSize:12,fontWeight:r?700:500,textAlign:"left",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:i,children:i})]},i)})})]})})}function isRecord(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function isNodeData$1(e){return isRecord(e)&&"string"==typeof e.type&&"children"in e}function isMainLike(e){const t=e.type;return"Main"===t||"main"===t}function stripNestedIsMain(e,t){if(null==e||"string"==typeof e)return e;if(Array.isArray(e)){let t=!1;const i=e.map(e=>{const i=stripNestedIsMain(e,!1);return i!==e&&(t=!0),i});return t?i:e}if(!isNodeData$1(e))return e;const i=e.children,r=stripNestedIsMain(i,!1),n=!0===e.isMain&&!t;return n||r!==i?{...e,...n?{isMain:!1}:null,children:r}:e}function wrapNodeInMain(e){if(isNodeData$1(e)&&isMainLike(e)){const t=stripNestedIsMain(e,!0);return!0!==t.isMain?{...t,isMain:!0}:t}const t=stripNestedIsMain(e,!1);return{type:"Main",isMain:!0,attributes:{},children:null==e?[]:t}}function safeStringify$1(e){try{return JSON.stringify(e,null,2)??""}catch{return String(e??"")}}function JsonTextEditor({value:e,onChange:t,rootName:i,readOnly:r=!1,className:n}){const o=React.useMemo(()=>safeStringify$1(e),[e]),[a,s]=React.useState(o),[l,c]=React.useState(null),[d,p]=React.useState(null),[g,u]=React.useState(e);React.useEffect(()=>{s(o),c(null),p(null),u(e)},[o,e]);const m=i?`${i}.json`:"data.json";return jsxRuntime.jsxs("div",{className:n,style:{height:"100%",width:"100%",display:"flex",flexDirection:"column",gap:10},children:[jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,flexWrap:"wrap"},children:[jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.75},children:m}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(a)}catch{}},children:"Copy"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=JSON.parse(a);s(JSON.stringify(e,null,2)),c(null),p(null),u(e)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},children:"Format"}),!r&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=JSON.parse(a),t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),i=t(e)&&"data"in e?{...e,data:wrapNodeInMain(e.data)}:wrapNodeInMain(e);s(JSON.stringify(i,null,2)),c(null),p(null),u(i)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},disabled:!t,title:t?"Wrap root in Main and apply":"Read only",children:"Wrap in Main"}),!r&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{if(t)try{const e=JSON.parse(a);c(null),p(null),u(e);try{t(e)}catch(e){p(e instanceof Error?e.message:"Failed to apply JSON")}}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},disabled:!t,title:t?"Apply JSON changes":"Read only",children:"Apply"})]})]}),jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:10,flex:1,minHeight:0},children:jsxRuntime.jsx("textarea",{value:a,onChange:e=>{const t=e.target.value;if(s(t),p(null),!r)try{const e=JSON.parse(t);c(null),u(e)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},readOnly:r,spellCheck:!1,style:{width:"100%",height:"100%",minHeight:320,resize:"none",border:"1px solid rgba(0,0,0,0.12)",borderRadius:10,padding:12,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',fontSize:12,lineHeight:1.5,background:"transparent",outline:"none"}})}),l?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Invalid JSON: ",l]}):d?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Could not apply: ",d]}):jsxRuntime.jsxs("div",{style:{fontSize:12,opacity:.7},children:["Valid JSON (",safeStringify$1(g).length.toLocaleString()," ","chars)"]})]})}function LocalicationModal({data:e,onChange:t,onClose:i}){const r=e??{};return jsxRuntime.jsxs(Modal,{onClose:i,ariaLabelledBy:"localication-modal-title",className:"modal--large modal--scrollable localication-modal",contentClassName:"localication-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header localication-modal__header",children:[jsxRuntime.jsxs("div",{className:"localication-modal__header-main",children:[jsxRuntime.jsx("h3",{id:"localication-modal-title",className:"modal__title",children:"Localization data"}),jsxRuntime.jsx("p",{className:"localication-modal__description",children:"Manage your translations directly from the JSON structure."})]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsx("div",{className:"localication-modal__body",children:jsxRuntime.jsx("div",{className:"localication-modal__editor",children:jsxRuntime.jsx(JsonTextEditor,{rootName:"localication",value:r,onChange:e=>t(e),className:"localication-modal__json-editor"})})})]})}function randomInt(e,t){return Math.floor(Math.random()*(t-e+1))+e}function randomChoice(e){return e[randomInt(0,e.length-1)]}function randomSku(){return`com.app.${randomChoice(["premium","pro","plus","gold","starter"])}.${randomChoice(["weekly","monthly","yearly","lifetime"])}`}function randomPrice(){const e=randomChoice(["USD","EUR","GBP","TRY"]),t=`${randomChoice([1,2,3,4,5,7,9,12,19,29,49,99])}.${randomChoice([0,49,99]).toString().padStart(2,"0")}`;return{price:t,localizedPrice:`${"USD"===e?"$":"EUR"===e?"€":"GBP"===e?"£":"₺"}${t}`,currency:e}}function ProductEditModal({product:e,index:t,onSave:i,onClose:r}){const n=React.useMemo(()=>({productId:e?.productId??"",title:e?.title??"",description:e?.description??"",localizedPrice:e?.localizedPrice??"",price:e?.price??"",currency:e?.currency??""}),[e]),[o,a]=React.useState(n),s=o.productId.trim().length>0;return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"product-edit-modal-title",contentClassName:"product-edit-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"product-edit-modal-title",className:"modal__title",children:["Edit product #",t+1]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"product-edit-modal__body",children:[jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"productId",children:"productId"}),jsxRuntime.jsx("input",{id:"productId",className:"input",value:o.productId,onChange:e=>a(t=>({...t,productId:e.target.value})),placeholder:"com.app.subscription.monthly"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"title",children:"title"}),jsxRuntime.jsx("input",{id:"title",className:"input",value:o.title,onChange:e=>a(t=>({...t,title:e.target.value})),placeholder:"Monthly Premium"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"description",children:"description"}),jsxRuntime.jsx("textarea",{id:"description",className:"input product-edit-modal__textarea",value:o.description,onChange:e=>a(t=>({...t,description:e.target.value})),placeholder:"Full access to all features..."})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"localizedPrice",children:"localizedPrice"}),jsxRuntime.jsx("input",{id:"localizedPrice",className:"input",value:o.localizedPrice,onChange:e=>a(t=>({...t,localizedPrice:e.target.value})),placeholder:"$4.99"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"price",children:"price"}),jsxRuntime.jsx("input",{id:"price",className:"input",value:o.price,onChange:e=>a(t=>({...t,price:e.target.value})),placeholder:"4.99"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"currency",children:"currency"}),jsxRuntime.jsx("input",{id:"currency",className:"input",value:o.currency,onChange:e=>a(t=>({...t,currency:e.target.value})),placeholder:"USD"})]}),jsxRuntime.jsxs("div",{className:"form-actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{const e=randomPrice(),t=randomChoice(["Premium","Pro","Plus","Gold","Starter","Unlimited"]),i=randomChoice(["Weekly","Monthly","Yearly","Lifetime"]);a({productId:randomSku(),title:`${t} ${i}`,description:randomChoice(["Unlock all features.","Full access to premium content.","Remove ads and get more features.","Best value for power users."]),localizedPrice:e.localizedPrice,price:e.price,currency:e.currency})},title:"Fill with random values",children:"Random"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>i(o),disabled:!s,title:s?"Save":"productId is required",children:"Save"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Cancel"})]})]})]})}const DEFAULT_PRESET_KEY$1="preset-1";function ensureProductId(e){return{...e,productId:e?.productId??""}}function getPresetMap$1(){const e=getMockProducts(),t={};return Object.entries(e??{}).forEach(([e,i])=>{e&&"string"==typeof e&&Array.isArray(i)&&(t[e]=i.filter(Boolean).map(e=>ensureProductId(e)).filter(e=>"string"==typeof e.productId&&e.productId.length>0))}),t}function ProductPresetsModal({current:e,onReplace:t,onAppend:i,onClose:r}){const n=React.useMemo(()=>getPresetMap$1(),[]),o=React.useMemo(()=>Object.entries(n).sort((e,t)=>{const i=e[0],r=t[0];return i===DEFAULT_PRESET_KEY$1&&r!==DEFAULT_PRESET_KEY$1?-1:r===DEFAULT_PRESET_KEY$1&&i!==DEFAULT_PRESET_KEY$1?1:i.localeCompare(r)}),[n]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"product-presets-modal-title",contentClassName:"product-presets-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"product-presets-modal-title",className:"modal__title",children:"Product presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"product-presets-modal__body",children:[jsxRuntime.jsxs("section",{className:"product-presets-modal__section",children:[jsxRuntime.jsxs("p",{className:"product-presets-modal__section-title",children:["Current (",Array.isArray(e)?e.length:0,")"]}),jsxRuntime.jsx("p",{className:"product-presets-modal__muted",children:"Pick a preset below to replace or append to the current list."})]}),jsxRuntime.jsxs("section",{className:"product-presets-modal__section",children:[jsxRuntime.jsx("p",{className:"product-presets-modal__section-title",children:"Presets"}),o.length?jsxRuntime.jsx("div",{className:"product-presets-modal__grid",children:o.map(([e,n])=>jsxRuntime.jsxs("div",{className:"product-presets-modal__card",children:[jsxRuntime.jsxs("div",{className:"product-presets-modal__card-header",children:[jsxRuntime.jsx("p",{className:"product-presets-modal__card-title",children:e}),jsxRuntime.jsxs("p",{className:"product-presets-modal__card-count",children:[n.length," products"]})]}),jsxRuntime.jsxs("ul",{className:"product-presets-modal__card-list",children:[n.slice(0,3).map(e=>jsxRuntime.jsx("li",{className:"product-presets-modal__card-item",children:e.productId},e.productId)),n.length>3?jsxRuntime.jsxs("li",{className:"product-presets-modal__card-item product-presets-modal__muted",children:["+",n.length-3," more…"]}):null]}),jsxRuntime.jsxs("div",{className:"product-presets-modal__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t(n),r()},children:"Replace"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(n),r()},children:"Append"})]})]},e))}):jsxRuntime.jsx("p",{className:"product-presets-modal__muted",children:"No presets found."})]})]})]})}function detectKind(e){return"number"==typeof e?"number":"boolean"==typeof e?"boolean":"string"}function parseValue(e,t,i){if("boolean"===e)return"true"===t;if("number"===e){const e=t.trim();if(!e)return i;const r=e.replace(",","."),n=Number.parseFloat(r);return Number.isFinite(n)?n:i}return t}function BenefitEditModal({benefitKey:e,benefitValue:t,index:i,onSave:r,onClose:n}){const o=React.useMemo(()=>{const i=(e??"").toString(),r=detectKind(t);return{key:i,kind:r,raw:"boolean"===r?t?"true":"false":"number"===r?`${t??""}`:(t??"").toString()}},[e,t]),[a,s]=React.useState(o),l=a.key.trim().length>0;return jsxRuntime.jsxs(Modal,{onClose:n,ariaLabelledBy:"benefit-edit-modal-title",contentClassName:"benefit-edit-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"benefit-edit-modal-title",className:"modal__title",children:["Edit benefit #",i+1]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:n,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"benefit-edit-modal__body",children:[jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitKey",children:"key"}),jsxRuntime.jsx("input",{id:"benefitKey",className:"input",value:a.key,onChange:e=>s(t=>({...t,key:e.target.value})),placeholder:"unlimited_access"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitType",children:"type"}),jsxRuntime.jsxs("select",{id:"benefitType",className:"input",value:a.kind,onChange:e=>s(t=>({...t,kind:e.target.value})),children:[jsxRuntime.jsx("option",{value:"string",children:"string"}),jsxRuntime.jsx("option",{value:"number",children:"number"}),jsxRuntime.jsx("option",{value:"boolean",children:"boolean"})]})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitValue",children:"value"}),"boolean"===a.kind?jsxRuntime.jsxs("select",{id:"benefitValue",className:"input",value:a.raw,onChange:e=>s(t=>({...t,raw:e.target.value})),children:[jsxRuntime.jsx("option",{value:"true",children:"true"}),jsxRuntime.jsx("option",{value:"false",children:"false"})]}):jsxRuntime.jsx("input",{id:"benefitValue",className:"input",value:a.raw,onChange:e=>s(t=>({...t,raw:e.target.value})),placeholder:"number"===a.kind?"7":"Unlock everything"})]}),jsxRuntime.jsxs("div",{className:"form-actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>r({key:a.key,value:parseValue(a.kind,a.raw,t)}),disabled:!l,title:l?"Save":"key is required",children:"Save"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:n,children:"Cancel"})]})]})]})}var basic={unlimited_access:!0,trial_days:7,headline:"Unlock everything"},vpn={secure_connection:!0,no_logs:!0,locations:120,headline:"Private & fast VPN"},pro={remove_ads:!0,priority_support:!0,devices:5,headline:"Go Pro"},presetsJson={"Embeded Paywall":{unlimited_access:!0,trial_days:7,headline:"Unlock everything"},basic:basic,vpn:vpn,pro:pro};const DEFAULT_PRESET_KEY="Embeded Paywall";function normalizeBenefits(e){if(!e||"object"!=typeof e||Array.isArray(e))return{};const t={};return Object.entries(e).forEach(([e,i])=>{const r="string"==typeof e?e.trim():"";r&&("string"!=typeof i&&"number"!=typeof i&&"boolean"!=typeof i||(t[r]=i))}),t}function getPresetMap(){const e=presetsJson,t={};return Object.entries(e??{}).forEach(([e,i])=>{const r="string"==typeof e?e.trim():"";r&&(t[r]=normalizeBenefits(i))}),t}function countBenefits(e){return e&&"object"==typeof e?Object.keys(e).length:0}function BenefitPresetsModal({current:e,onReplace:t,onMerge:i,onClose:r}){const n=React.useMemo(()=>getPresetMap(),[]),o=React.useMemo(()=>Object.entries(n).sort((e,t)=>{const i=e[0],r=t[0];return i===DEFAULT_PRESET_KEY&&r!==DEFAULT_PRESET_KEY?-1:r===DEFAULT_PRESET_KEY&&i!==DEFAULT_PRESET_KEY?1:i.localeCompare(r)}),[n]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"benefit-presets-modal-title",contentClassName:"benefit-presets-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"benefit-presets-modal-title",className:"modal__title",children:"Benefit presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"benefit-presets-modal__body",children:[jsxRuntime.jsxs("section",{className:"benefit-presets-modal__section",children:[jsxRuntime.jsxs("p",{className:"benefit-presets-modal__section-title",children:["Current (",countBenefits(e),")"]}),jsxRuntime.jsx("p",{className:"benefit-presets-modal__muted",children:"Pick a preset below to replace or merge into the current map."})]}),jsxRuntime.jsxs("section",{className:"benefit-presets-modal__section",children:[jsxRuntime.jsx("p",{className:"benefit-presets-modal__section-title",children:"Presets"}),o.length?jsxRuntime.jsx("div",{className:"benefit-presets-modal__grid",children:o.map(([e,n])=>{const o=Object.entries(n);return jsxRuntime.jsxs("div",{className:"benefit-presets-modal__card",children:[jsxRuntime.jsxs("div",{className:"benefit-presets-modal__card-header",children:[jsxRuntime.jsx("p",{className:"benefit-presets-modal__card-title",children:e}),jsxRuntime.jsxs("p",{className:"benefit-presets-modal__card-count",children:[o.length," benefits"]})]}),jsxRuntime.jsxs("ul",{className:"benefit-presets-modal__card-list",children:[o.slice(0,3).map(([e,t])=>jsxRuntime.jsxs("li",{className:"benefit-presets-modal__card-item",children:[e,": ",String(t)]},e)),o.length>3?jsxRuntime.jsxs("li",{className:"benefit-presets-modal__card-item benefit-presets-modal__muted",children:["+",o.length-3," more…"]}):null]}),jsxRuntime.jsxs("div",{className:"benefit-presets-modal__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t(n),r()},children:"Replace"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(n),r()},title:"Merges preset into current (preset values overwrite existing keys)",children:"Merge"})]})]},e)})}):jsxRuntime.jsx("p",{className:"benefit-presets-modal__muted",children:"No presets found."})]})]})]})}function MockableFeatureModal({featureKey:e,onClose:t}){const{products:i,addProduct:r,removeProduct:n,updateProduct:o,setProducts:a,clearProducts:s,benefits:l,setBenefits:c,clearBenefits:d,upsertBenefit:p,removeBenefit:g,renameBenefit:u,setLocalization:m,localization:h,setProjectColors:f,projectColors:y}=useRenderStore(e=>({products:e.products,addProduct:e.addProduct,removeProduct:e.removeProduct,updateProduct:e.updateProduct,setProducts:e.setProducts,clearProducts:e.clearProducts,benefits:e.benefits,setBenefits:e.setBenefits,clearBenefits:e.clearBenefits,upsertBenefit:e.upsertBenefit,removeBenefit:e.removeBenefit,renameBenefit:e.renameBenefit,setLocalization:e.setLocalization,localization:e.localization,setProjectColors:e.setProjectColors,projectColors:e.projectColors})),[b,C]=React.useState(null),[x,v]=React.useState(!1),[S,w]=React.useState(null),[k,T]=React.useState(!1),_=React.useRef(null),R=React.useRef(null),O=React.useRef(null),I=Object.entries(l&&"object"==typeof l&&!Array.isArray(l)?l:{});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Modal,{onClose:t,ariaLabelledBy:"mockable-feature-modal-title",contentClassName:"mockable-feature-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"mockable-feature-modal-title",className:"modal__title",children:["Mockable: ",e]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:t,children:"Close"})]}),jsxRuntime.jsx("div",{className:"mockable-feature-modal__body",children:"localization"===e?jsxRuntime.jsx(LocalizationPanel,{localization:h,defaultLoc:defaultLocalization,csvInputRef:_,onImportClick:()=>_.current?.click(),onChange:e=>{const t=e.target.files?.[0];if(!t)return;const i=new FileReader;i.onload=t=>{try{const e=t.target?.result,i=e.split(/\r?\n/).filter(Boolean);if(i.length<2)return void alert("CSV must have a header row and at least one data row.");const r=i[0].split(",").map(e=>e.trim().toLowerCase()),n=r.indexOf("key"),o=r.indexOf("en"),a=r.indexOf("tr");if(-1===n||-1===o&&-1===a)return void alert('CSV must have a "key" column and at least one of "en" or "tr" columns.');const s={};for(let e=1;e<i.length;e++){const t=i[e].split(",").map(e=>e.trim()),r=t[n]?.trim();if(!r)continue;const l={};-1!==o&&void 0!==t[o]&&(l.en=t[o]),-1!==a&&void 0!==t[a]&&(l.tr=t[a]),s[r]=l}m(s)}catch(e){alert("Failed to parse CSV: "+String(e))}finally{e.target.value=""}},i.readAsText(t)}}):"colors"===e?jsxRuntime.jsx(ColorsPanel,{projectColors:y,defaultColors:defaultProjectColors,colorsInputRef:R,onImportClick:()=>R.current?.click(),onChange:e=>{const t=e.target.files?.[0];if(!t)return;const i=new FileReader;i.onload=t=>{try{const e=JSON.parse(t.target?.result);f(e)}catch(e){alert("Failed to parse JSON: "+String(e))}finally{e.target.value=""}},i.readAsText(t)}}):"products"===e?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Add product"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>v(!0),children:"Presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:s,disabled:0===i.length,children:"Clear"})]}),jsxRuntime.jsx("div",{style:{marginTop:12},children:i.length?jsxRuntime.jsx("ul",{style:{margin:0,paddingLeft:18},children:i.map((e,t)=>jsxRuntime.jsxs("li",{style:{display:"flex",gap:8,marginBottom:8,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:{flex:1},children:e?.productId?.trim()?e.productId:"(empty productId)"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>C(t),children:"Edit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>n(t),children:"Remove"})]},`${t}-${e?.productId??""}`))}):jsxRuntime.jsx("p",{style:{margin:0,opacity:.7},children:"No products yet."})})]}):"benefits"===e?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{const e="benefit",t=new Set(I.map(([e])=>e));let i=`${e}_1`,r=1;for(;t.has(i);)r+=1,i=`${e}_${r}`;p(i,!0),w(i)},children:"Add benefit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>T(!0),children:"Presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:d,disabled:0===I.length,children:"Clear"})]}),jsxRuntime.jsx("div",{style:{marginTop:12},children:I.length?jsxRuntime.jsx("ul",{style:{margin:0,paddingLeft:18},children:I.map(([e,t],i)=>jsxRuntime.jsxs("li",{style:{display:"flex",gap:8,marginBottom:8,alignItems:"center"},children:[jsxRuntime.jsxs("span",{style:{flex:1,wordBreak:"break-word"},children:[e,": ",String(t)]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>w(e),children:"Edit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>g(e),children:"Remove"})]},`${i}-${e}`))}):jsxRuntime.jsx("p",{style:{margin:0,opacity:.7},children:"No benefits yet."})})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>O.current?.click(),children:"Import JSON"}),jsxRuntime.jsx("input",{ref:O,type:"file",accept:".json,application/json",style:{display:"none"},onChange:t=>{const i=t.target.files?.[0];if(!i)return;const r=new FileReader;r.onload=i=>{try{const t=JSON.parse(i.target?.result);"products"===e&&Array.isArray(t)?a(t):"benefits"!==e||"object"!=typeof t||Array.isArray(t)?alert("Imported JSON does not match the expected format."):c(t)}catch(e){alert("Failed to parse JSON: "+String(e))}finally{t.target.value=""}},r.readAsText(i)}})]}),jsxRuntime.jsxs("p",{style:{margin:"8px 0 0",opacity:.7,fontSize:12},children:["No mock UI yet for ",'"',e,'"'," — import via JSON."]})]})})]}),"products"===e&&null!==b?jsxRuntime.jsx(ProductEditModal,{index:b,product:i[b],onClose:()=>C(null),onSave:e=>{o(b,e),C(null)}}):null,"products"===e&&x?jsxRuntime.jsx(ProductPresetsModal,{current:i,onClose:()=>v(!1),onReplace:e=>a(e),onAppend:e=>a([...i??[],...e??[]])}):null,"benefits"===e&&null!==S?jsxRuntime.jsx(BenefitEditModal,{index:Math.max(0,I.findIndex(([e])=>e===S)),benefitKey:S,benefitValue:l?.[S]??"",onClose:()=>w(null),onSave:({key:e,value:t})=>{const i=e.trim();S!==i&&u(S,i),p(i,t),w(null)}}):null,"benefits"===e&&k?jsxRuntime.jsx(BenefitPresetsModal,{current:l,onClose:()=>T(!1),onReplace:e=>c(e),onMerge:e=>c({...l??{},...e??{}})}):null]})}const SOURCE_STYLE={default:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#3a3d4a",color:"#9ca3af",fontWeight:500,whiteSpace:"nowrap"},custom:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#14532d",color:"#86efac",fontWeight:500,whiteSpace:"nowrap"},merged:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#1e3a5f",color:"#93c5fd",fontWeight:500,whiteSpace:"nowrap"}};function SourceBadge({source:e}){return jsxRuntime.jsx("span",{style:SOURCE_STYLE[e],children:e})}function LocalizationPanel({localization:e,defaultLoc:t,csvInputRef:i,onImportClick:r,onChange:n}){const o=mergeLocalization(t,e),a=Array.from(new Set([...Object.keys(t),...Object.keys(e)])).sort(),s=Array.from(new Set(a.flatMap(i=>[...Object.keys(t[i]??{}),...Object.keys(e[i]??{})]))).sort(),l=e&&Object.keys(e).some(t=>Object.keys(e[t]??{}).length>0);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Import CSV"}),jsxRuntime.jsx("input",{ref:i,type:"file",accept:".csv,text/csv",style:{display:"none"},onChange:n}),jsxRuntime.jsx("span",{style:{fontSize:11,opacity:.6},children:"key, en, tr columns"}),jsxRuntime.jsx("span",{style:{marginLeft:"auto",fontSize:11,opacity:.5},children:l?"custom overrides active":"using defaults"})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,margin:"8px 0 4px",fontSize:11},children:[jsxRuntime.jsx(SourceBadge,{source:"default"})," default only",jsxRuntime.jsx(SourceBadge,{source:"custom"})," custom override",jsxRuntime.jsx(SourceBadge,{source:"merged"})," both (custom wins)"]}),jsxRuntime.jsx("div",{style:{overflowX:"auto",marginTop:4},children:jsxRuntime.jsxs("table",{style:{borderCollapse:"collapse",fontSize:11,width:"100%",tableLayout:"fixed"},children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"4px 6px",borderBottom:"1px solid #333",width:200,fontWeight:600},children:"key"}),a.map(e=>jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"4px 6px",borderBottom:"1px solid #333",fontWeight:600},children:e},e))]})}),jsxRuntime.jsx("tbody",{children:s.map(i=>jsxRuntime.jsxs("tr",{style:{borderBottom:"1px solid #222"},children:[jsxRuntime.jsx("td",{style:{padding:"3px 6px",fontFamily:"monospace",wordBreak:"break-all",opacity:.8},children:i}),a.map(r=>{const n=void 0!==(t[r]??{})[i],a=void 0!==(e[r]??{})[i],s=(o[r]??{})[i]??"";let l="default";return n&&a?l="merged":a&&(l="custom"),jsxRuntime.jsx("td",{style:{padding:"3px 6px",verticalAlign:"top"},children:jsxRuntime.jsxs("div",{style:{display:"flex",gap:4,alignItems:"flex-start"},children:[jsxRuntime.jsx(SourceBadge,{source:l}),jsxRuntime.jsx("span",{style:{wordBreak:"break-word",opacity:.85},children:s})]})},r)})]},i))})]})})]})}function ColorsPanel({projectColors:e,defaultColors:t,colorsInputRef:i,onImportClick:r,onChange:n}){const o=e?mergeProjectColors(t,e):t,a=!!e;function s(e={},t={},i={}){return Array.from(new Set([...Object.keys(e),...Object.keys(t)])).sort().map(r=>{const n=r in(t??{});let o="default";return r in e&&n?o="merged":n&&(o="custom"),{key:r,value:i[r]??"",src:o}})}const l=s(t.STATIC_COLORS??{},e?.STATIC_COLORS??{},o.STATIC_COLORS??{}),c=Array.from(new Set([...Object.keys(t.THEME_COLORS??{}),...Object.keys(e?.THEME_COLORS??{})])).sort();function d({k:e,value:t,src:i}){return jsxRuntime.jsxs("tr",{style:{borderBottom:"1px solid #222"},children:[jsxRuntime.jsx("td",{style:{padding:"3px 8px",fontFamily:"monospace",fontSize:11,opacity:.8},children:e}),jsxRuntime.jsx("td",{style:{padding:"3px 8px"},children:jsxRuntime.jsxs("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:{display:"inline-block",width:14,height:14,borderRadius:3,background:t,border:"1px solid #555",flexShrink:0}}),jsxRuntime.jsx("span",{style:{fontFamily:"monospace",fontSize:11},children:t})]})}),jsxRuntime.jsx("td",{style:{padding:"3px 8px"},children:jsxRuntime.jsx(SourceBadge,{source:i})})]})}function p({rows:e}){return jsxRuntime.jsxs("table",{style:{borderCollapse:"collapse",width:"100%",fontSize:11},children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsx("tr",{children:["token","value","source"].map(e=>jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"3px 8px",borderBottom:"1px solid #333",fontWeight:600},children:e},e))})}),jsxRuntime.jsx("tbody",{children:e.map(e=>jsxRuntime.jsx(d,{k:e.key,value:e.value,src:e.src},e.key))})]})}return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Import JSON"}),jsxRuntime.jsx("input",{ref:i,type:"file",accept:".json,application/json",style:{display:"none"},onChange:n}),jsxRuntime.jsx("span",{style:{marginLeft:"auto",fontSize:11,opacity:.5},children:a?"custom overrides active":"using defaults"})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,margin:"8px 0 4px",fontSize:11},children:[jsxRuntime.jsx(SourceBadge,{source:"default"})," default only",jsxRuntime.jsx(SourceBadge,{source:"custom"})," custom override",jsxRuntime.jsx(SourceBadge,{source:"merged"})," both (custom wins)"]}),jsxRuntime.jsx("div",{style:{fontWeight:600,fontSize:12,margin:"10px 0 4px"},children:"STATIC_COLORS"}),jsxRuntime.jsx(p,{rows:l}),c.map(i=>{const r=s(t.THEME_COLORS?.[i]??{},e?.THEME_COLORS?.[i]??{},o.THEME_COLORS?.[i]??{});return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsxs("div",{style:{fontWeight:600,fontSize:12,margin:"10px 0 4px"},children:["THEME_COLORS / ",i]}),jsxRuntime.jsx(p,{rows:r})]},i)})]})}function InspectModal({onClose:e}){const[t,i]=React.useState("localizations"),{localization:r,projectColors:n,theme:o,defaultLanguage:a}=useRenderStore(e=>({localization:e.localization,projectColors:e.projectColors,theme:e.theme,defaultLanguage:e.defaultLanguage})),s=React.useMemo(()=>getLastParamsSnapshot(),[]);return jsxRuntime.jsxs(Modal,{onClose:e,ariaLabelledBy:"inspect-modal-title",className:"modal--large modal--scrollable",contentClassName:"inspect-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header inspect-modal__header",children:[jsxRuntime.jsx("h3",{id:"inspect-modal-title",className:"modal__title",children:"Inspect"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:e,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"inspect-modal__tabs",children:[jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("localizations"===t?" is-active":""),onClick:()=>i("localizations"),children:"Localizations"}),jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("params"===t?" is-active":""),onClick:()=>i("params"),children:"Params"}),jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("colors"===t?" is-active":""),onClick:()=>i("colors"),children:"Colors"})]}),jsxRuntime.jsxs("div",{className:"inspect-modal__body",children:["localizations"===t&&jsxRuntime.jsx(LocalizationsTab,{localication:r??{},language:a}),"params"===t&&jsxRuntime.jsx(ParamsTab,{localizationParams:s.localizationParams,nestedLocalizationParams:s.nestedLocalizationParams}),"colors"===t&&jsxRuntime.jsx(ColorsTab,{projectColors:n,theme:o})]})]})}function LocalizationsTab({localication:e,language:t}){const i=e[t]??{},r=defaultLocalization[t]??defaultLocalization.en??{},n=Array.from(new Set([...Object.keys(r),...Object.keys(i)])).sort();if(0===n.length)return jsxRuntime.jsxs("p",{className:"inspect-modal__empty",children:['No localization keys found for "',t,'".']});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Key,Value,Source\n";n.forEach(t=>{const n=t in i,o=i[t],a=r[t],s=n&&o!==a&&void 0!==o,l=s?o:a??"",c=e=>`"${String(e).replace(/"/g,'""')}"`;e+=`${c(t)},${c(String(l))},${s?"custom":"fallback"}\n`}),downloadCSV(`localizations-${t}.csv`,e)},children:"Download CSV"})}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Key"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:n.map(e=>{const t=e in i,n=i[e],o=r[e],a=t&&n!==o&&void 0!==n,s=a?n:o??"";return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:s}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(a?" inspect-modal__badge--custom":" inspect-modal__badge--default"),children:a?"custom":jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]})})})]},e)})})]})]})}function ParamsTab({localizationParams:e,nestedLocalizationParams:t}){const i=Object.entries(e),r=Object.entries(t);if(!(i.length>0||r.length>0))return jsxRuntime.jsx("p",{className:"inspect-modal__empty",children:"No params available. Params are populated inside a PaywallProvider."});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Param,Value,Type\n";const t=e=>`"${String(e).replace(/"/g,'""')}"`;i.forEach(([i,r])=>{e+=`${t(i)},${t(formatValue(r))},Flat\n`}),r.forEach(([i,r])=>{e+=`${t(i)},${t(formatValue(r))},Nested\n`}),downloadCSV("params.csv",e)},children:"Download CSV"})}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Param"}),jsxRuntime.jsx("th",{children:"Value"})]})}),jsxRuntime.jsxs("tbody",{children:[i.map(([e,t])=>jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:formatValue(t)})]},e)),r.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("tr",{className:"inspect-modal__separator-row",children:jsxRuntime.jsx("td",{colSpan:2,children:"Nested (per-product)"})}),r.map(([e,t])=>jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsxs("td",{className:"inspect-modal__cell-key inspect-modal__cell-key--nested",children:["- ",e]}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:formatValue(t)})]},`nested-${e}`))]})]})]})]})}function ColorsTab({projectColors:e,theme:t}){const i=e?.STATIC_COLORS??{},r=e?.THEME_COLORS?.[t]??{},n=defaultProjectColors.STATIC_COLORS??{},o=defaultProjectColors.THEME_COLORS?.[t]??{},a=Object.entries(i),s=Object.entries(r);if(0===a.length&&0===s.length)return jsxRuntime.jsx("p",{className:"inspect-modal__empty",children:"No project colors defined."});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Type,Token,Value,Source\n";const i=e=>`"${String(e).replace(/"/g,'""')}"`;a.forEach(([t,r])=>{const o=n[t]===r;e+=`Static,${i(t)},${i(String(r))},${o?"fallback":"custom"}\n`}),s.forEach(([r,n])=>{const a=o[r]===n;e+=`Theme (${t}),${i(r)},${i(String(n))},${a?"fallback":"custom"}\n`}),downloadCSV("colors.csv",e)},children:"Download CSV"})}),a.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("h4",{className:"inspect-modal__section-title",children:"Static Colors"}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Token"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:a.map(([e,t])=>{const i=n[e]===t;return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsxs("td",{className:"inspect-modal__cell-value",children:[jsxRuntime.jsx("span",{className:"inspect-modal__color-swatch",style:{backgroundColor:t}}),t]}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(i?" inspect-modal__badge--default":" inspect-modal__badge--custom"),children:i?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]}):"custom"})})]},e)})})]})]}),s.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("h4",{className:"inspect-modal__section-title",children:["Theme Colors (",t,")"]}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Token"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:s.map(([e,t])=>{const i=o[e]===t;return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsxs("td",{className:"inspect-modal__cell-value",children:[jsxRuntime.jsx("span",{className:"inspect-modal__color-swatch",style:{backgroundColor:t}}),t]}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(i?" inspect-modal__badge--default":" inspect-modal__badge--custom"),children:i?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]}):"custom"})})]},e)})})]})]})]})}function formatValue(e){return void 0===e?"—":null===e?"null":"string"==typeof e?e:"number"==typeof e||"boolean"==typeof e?String(e):JSON.stringify(e)}function downloadCSV(e,t){const i=new Blob([t],{type:"text/csv;charset=utf-8;"}),r=URL.createObjectURL(i),n=document.createElement("a");n.setAttribute("href",r),n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)}function escapeXmlAttr(e,t){let i=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return i='"'===t?i.replace(/"/g,"&quot;"):i.replace(/'/g,"&apos;"),i}function attrValueToString(e){return null==e?"":"string"==typeof e?e:"number"==typeof e||"boolean"==typeof e?String(e):JSON.stringify(e)}function nodeToXmlInner(e,t){const i=" ".repeat(t);if(null==e)return"";if("string"==typeof e)return`${i}${escapeXmlAttr(e,'"').replace(/"/g,'"')}`;if(Array.isArray(e))return e.map(e=>nodeToXmlInner(e,t)).join("\n");if("object"!=typeof e)return"";const r=e,n=r.type;if(!n)return"";const o=[],a=(e,t)=>{const i=attrValueToString(t),r=i.includes('"')&&!i.includes("'")?"'":'"',n=escapeXmlAttr(i,r);o.push(`${e}=${r}${n}${r}`)};if(r.key&&a("key",r.key),r.sourceType&&a("sourceType",r.sourceType),r.isMain&&a("isMain","true"),r.attributes&&"object"==typeof r.attributes)for(const[e,t]of Object.entries(r.attributes))a(e,t);const s=o.length>0?" "+o.join(" "):"",l=r.children;if(null==l||Array.isArray(l)&&0===l.length)return`${i}<${n}${s} />`;return`${i}<${n}${s}>\n${nodeToXmlInner(l,t+1)}\n${i}</${n}>`}function nodeToXml(e){return null==e?"":nodeToXmlInner(e,0)}function unescapeXml(e){return e.replace(/&quot;/g,'"').replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/g,"&")}function parseAttrValue(e){const t=unescapeXml(e);if("true"===t)return!0;if("false"===t)return!1;if(""!==t&&!Number.isNaN(Number(t)))return Number(t);if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))try{return JSON.parse(t)}catch{}return t}function domElementToNode(e){const t={type:e.tagName,children:null},i=new Set(["key","sourceType","isMain"]),r={};for(const n of Array.from(e.attributes))i.has(n.name)?"key"===n.name?t.key=n.value:"sourceType"===n.name?t.sourceType=n.value:"isMain"===n.name&&(t.isMain="true"===n.value):r[n.name]=parseAttrValue(n.value);Object.keys(r).length>0&&(t.attributes=r);const n=[];for(const t of Array.from(e.childNodes))if(1===t.nodeType)n.push(domElementToNode(t));else if(3===t.nodeType){const e=(t.textContent??"").trim();e&&n.push(e)}return 0===n.length?t.children=null:1===n.length?t.children=n[0]:t.children=n,t}function xmlToNode(e){if(!e.trim())return null;const t=(new DOMParser).parseFromString(e,"text/xml"),i=t.querySelector("parsererror");if(i)throw new Error(i.textContent??"XML parse error");return domElementToNode(t.documentElement)}const onboardPromptScheme='You are a React Native UI builder assistant. Your goal is to generate a valid **onboard** screen node tree in XML format.\n\n## Available Components & Their Props\n\nEach component is listed as `ComponentName: {attr: TypeScriptType, styles: {prop: TypeScriptType}}`. Use ONLY these component names and attribute names. Do NOT invent new components or attributes.\n\nUnion enum values must match exactly (e.g. `"expanding_dot"` not `expandingDot`). Color values: prefer `THEME_COLORS.KEY` or `STATIC_COLORS.KEY` for theme-aware colors. Literal values like `"red"` or `"#000fff"` are also valid when a specific color is intended. Localization string values should use a localization key from the **Available Localization Keys** section. Do NOT invent new keys.\n\n```\nBIcon:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,iconType:string,size:number,strokeWidth:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nBackgroundImage:{scrollable:boolean,testID:string,src:string,resizeMode:"cover"|"contain"|"stretch"|"center",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nButton:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900"}}\nCarousel:{scrollable:boolean,testID:string,loop:boolean,dragFree:boolean,align:"start"|"center"|"end",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselDots:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselItem:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselProvider:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCheckbox:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,checkIconSize:number,checkIconStrokeWidth:number}}\nCountDown:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,count:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:obj,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:obj,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormCheckbox:{checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,name:string,validation:[string],styles:{borderRadius:string,checkIconSize:number,checkIconStrokeWidth:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormErrorText:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormProvider:{scrollable:boolean,testID:string,defaultValues:string,validationErrorMessageKey:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormSubmitButton:{labelKey:string,events:[obj],testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,disableIfUnvalidated:boolean,validationRequired:boolean,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nImage:{scrollable:boolean,testID:string,src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,resizeMode:"cover"|"contain"|"stretch"|"center"}}\nMain:{scrollable:boolean,testID:string,useSafeAreaView:boolean,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nNavigationBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nOnboard:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButton:{labelKey:string,events:[obj],testID:"onboardSkip"|"onboardNext",adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,animation:"simple-animation"|"line-animation"|"blur"|"blur-animation"|"blur-line-animation",animation_color:string,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,buttons_direction:"row"|"column",forIndex:number,seperatorColor:string,condition:"carousel-index",conditionVariable:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardDot:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardImage:{src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",scrollable:boolean,testID:string,video_url:string,lottie:string,styles:{resizeMode:"cover"|"contain"|"stretch"|"center",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardItem:{scrollable:boolean,testID:string,display:"flex"|"block",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardProvider:{scrollable:boolean,testID:string,theme:"light"|"dark"|"all",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardSubtitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardTitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallBackground:{src:string,resizeMode:"cover"|"contain"|"stretch"|"center",scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallCloseButton:{iconType:string,size:number,strokeWidth:number,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallOptions:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallProvider:{scrollable:boolean,testID:string,delay:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallSubscribeButton:{scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPriceTag:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,showOriginalPricePossible:boolean,hideIfItsNotDiscount:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,textDecorationLine:"none"|"underline"|"line-through"}}\nPricing:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPromo:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nRadioButton:{scrollable:boolean,testID:string,selected:boolean,color:string,size:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nSeparator:{testID:string,styles:{backgroundColor:string,width:string,height:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string}}\nStatusBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nSystemButton:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,labelKey:string,events:[obj],styles:{color:string,fontSize:number,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:number,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nText:{scrollable:boolean,testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string}}\nView:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nWebView:{scrollable:boolean,testID:string,iosUrl:string,androidUrl:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,loaderColor:string,loaderSize:number,loaderBorderWidth:number,loaderAnimationDuration:number}}\n```\n\n## Available Icons\n\nUse one of these values for `iconType` attributes:\n\n```\n\n```\n\n## XML Rules\n\n- Root element must always be `<Main isMain="true">`.\n- Text content (children) goes as element body text, not as an attribute.\n- `styles` value must be a JSON object string (escape inner quotes): `styles="{&quot;flex&quot;:1,&quot;color&quot;:&quot;THEME_COLORS.TEXT&quot;}"`.\n- `events` value must be a JSON array string.\n- Omit any attribute that has no value — no nulls, no empty strings.\n- Use a short unique slug for `key` when the component needs one.\n- Only use components appropriate for a onboard screen.\n\n## Component & Layout Constraints\n\n- **Mobile Limits**: When applying absolute sizes (width, height, testing dimensions), do NOT exceed typical mobile screen dimensions (e.g., max width ~360-400, max height ~800).\n- **testID**: Every component MUST have a unique `testID` attribute, **EXCEPT** `OnboardButton` (do not provide `testID` for `OnboardButton` as it handles it internally).\n- **PaywallOptions**: When using `PaywallOptions`, generate ONLY ONE layout template inside it. The app repeats this template for each product dynamically.\n- **PriceTag Placement**: If `PriceTag` is placed **inside** `PaywallOptions`, it displays the price of that specific option in the loop. If placed **outside** of `PaywallOptions`, it displays the price of the user\'s currently *selected* option.\n\n## Embla Carousel Constraints\n\n> **IMPORTANT – Web uses Embla carousel under the hood.** For `OnboardProvider` and `OnboardItem`, do **NOT** set any of the following outer layout styles via `styles`, because Embla manages them internally through its own CSS classes (`embla`, `embla__viewport`, `embla__slide`):\n>\n> `flex`, `flexGrow`, `flexShrink`, `margin`, `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, `marginHorizontal`, `marginVertical`, `height`, `minHeight`, `maxHeight`, `width`, `minWidth`, `maxWidth`, `position`, `top`, `bottom`, `left`, `right`, `zIndex`, `display`\n>\n> Only **visual** styles are safe to set on `OnboardProvider` and `OnboardItem`: `padding`, `paddingTop`, `paddingBottom`, `paddingLeft`, `paddingRight`, `paddingHorizontal`, `paddingVertical`, `backgroundColor`, `borderRadius`, `gap`, `alignItems`, `justifyContent`, `flexDirection`, `flexWrap`\n\n## Available Localization Keys\n\nUse ONLY the keys listed below for localization attributes (`labelKey`, `textLocalizationKey`, etc.). Do NOT invent new keys or use keys not in this list.\n\n```\nbase.builder.paywall.period.monthly\nbase.builder.paywall.period.annual\nbase.builder.paywall.period.weekly\nbase.builder.paywall.period.daily\nbase.builder.paywall.period.monthlyPromo\nbase.builder.paywall.period.annualPromo\nbase.builder.paywall.pricing.default.text\nbase.builder.paywall.pricing.freeTrial.text\nbase.builder.paywall.pricing.regular.text\nbase.builder.paywall.promo.default.text\nbase.builder.paywall.promo.freeTrial.text\nbase.builder.paywall.promo.regular.text\nbase.builder.paywall.button.subscribe\nbase.builder.paywall.button.subscribe-free\nbase.onboard.title.one-page\nbase.onboard.title.two-page\nbase.onboard.title.three-page\nbase.onboard.title.four-page\nbase.onboard.title.five-page\nbase.onboard.title.six-page\nbase.onboard.title.one-page2\nbase.onboard.title.two-page2\nbase.onboard.title.three-page2\nbase.onboard.title.four-page2\nbase.onboard.subtitle.one-page\nbase.onboard.subtitle.two-page\nbase.onboard.subtitle.three-page\nbase.onboard.subtitle.four-page\nbase.onboard.subtitle.five-page\nbase.onboard.subtitle.six-page\nbase.onboard.subtitle.one-page2\nbase.onboard.subtitle.two-page2\nbase.onboard.subtitle.three-page2\nbase.onboard.subtitle.four-page2\nbase.onboard.next.one-page\nbase.onboard.next.two-page\nbase.onboard.next.three-page\nbase.onboard.next.five-page\nbase.onboard.skip.one-page\nbase.onboard.skip.two-page\nbase.onboard.skip.three-page\nbase.onboard.skip.five-page\nbase.onboard.allow.four-page\nbase.onboard.footer.description\nbase.onboard.btnPrivacy\nbase.onboard.btnTerms\nbase.builder.paywall.footer.description\nbase.builder.paywall.btnPrivacy\nbase.builder.paywall.btnTerms\nview.terms.header.title\nview.terms.accept.button\nview.terms.checkbox.label\nview.terms.error.must_accept\nform.error.validation_required\n```\n\n## Default Colors\n\nReference color tokens already defined in the project. Prefer these over hard-coded hex values.\n\n```\n STATIC_COLORS.BLACK: "#000"\n STATIC_COLORS.WHITE: "#FFFFFF"\n STATIC_COLORS.TRANSPARENT: "#ffffff00"\n STATIC_COLORS.ONBOARD_DOT_INACTIVE: "#E4E5E7"\n STATIC_COLORS.ONBOARD_DOT_ACTIVE: "#007AFF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND: "#0066FF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT: "#FFFFFF"\n STATIC_COLORS.ONBOARD_LINK_COLOR: "#1778F2"\n STATIC_COLORS.ONBOARD_SEPARATOR_COLOR: "#44454D"\n STATIC_COLORS.RADIO_BUTTON_COLOR: "#A6A6A6"\n THEME_COLORS.TEXT (light): "#161827"\n THEME_COLORS.BACKGROUND (light): "#F4F5FF"\n THEME_COLORS.ICON (light): "#0450E2"\n THEME_COLORS.LINE (light): "#E9EBF9"\n THEME_COLORS.ONBOARD_TITLE (light): "#161827"\n THEME_COLORS.ONBOARD_SUBTITLE (light): "#44454D"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (light): "#81838F"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (light): "#81838F"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (light): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (light): "#B91C1C"\n THEME_COLORS.TEXT (dark): "#E9EBF9"\n THEME_COLORS.BACKGROUND (dark): "#080A17"\n THEME_COLORS.ICON (dark): "#0450E2"\n THEME_COLORS.LINE (dark): "#161827"\n THEME_COLORS.ONBOARD_TITLE (dark): "#FDFDFD"\n THEME_COLORS.ONBOARD_SUBTITLE (dark): "#C7C7C7"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (dark): "#A9AAAC"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (dark): "#A2A4B1"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (dark): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (dark): "#B91C1C"\n```\n\n## Default Localization (en)\n\n```\n{\n "base.builder.paywall.period.monthly": "per month",\n "base.builder.paywall.period.annual": "per year",\n "base.builder.paywall.period.weekly": "per week",\n "base.builder.paywall.period.daily": "per day",\n "base.builder.paywall.period.monthlyPromo": "per month",\n "base.builder.paywall.period.annualPromo": "per year",\n "base.builder.paywall.pricing.default.text": "@promoPrice for the first @promoPeriod, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.promo.default.text": "Save @discountPercentage%!",\n "base.builder.paywall.promo.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial",\n "base.builder.paywall.promo.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.button.subscribe": "Subscribe",\n "base.builder.paywall.button.subscribe-free": "Subscribe with Free Trial",\n "base.onboard.title.one-page": "Secure your connection",\n "base.onboard.title.two-page": "Access content worldwide",\n "base.onboard.title.three-page": "Fast and reliable",\n "base.onboard.title.four-page": "Stay notified and safe",\n "base.onboard.title.five-page": "Enhance your experience",\n "base.onboard.title.six-page": "You are all set!",\n "base.onboard.title.one-page2": "Secure your connection",\n "base.onboard.title.two-page2": "Access content worldwide",\n "base.onboard.title.three-page2": "Fast and reliable",\n "base.onboard.title.four-page2": "Stay notified and safe",\n "base.onboard.subtitle.one-page": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page": "Enable notifications for connection status and security tips.",\n "base.onboard.subtitle.five-page": "Get the most out of our app with premium features.",\n "base.onboard.subtitle.six-page": "Enjoy secure and fast browsing.",\n "base.onboard.subtitle.one-page2": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page2": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page2": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page2": "Enable notifications for connection status and security tips.",\n "base.onboard.next.one-page": "Next",\n "base.onboard.next.two-page": "Next",\n "base.onboard.next.three-page": "Next",\n "base.onboard.next.five-page": "Next",\n "base.onboard.skip.one-page": "Skip",\n "base.onboard.skip.two-page": "Skip",\n "base.onboard.skip.three-page": "Skip",\n "base.onboard.skip.five-page": "Skip",\n "base.onboard.allow.four-page": "Allow",\n "base.onboard.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.onboard.btnPrivacy": "Privacy Policy",\n "base.onboard.btnTerms": "Terms of Service",\n "base.builder.paywall.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.builder.paywall.btnPrivacy": "Privacy Policy",\n "base.builder.paywall.btnTerms": "Terms of Service",\n "view.terms.header.title": "Terms & Privacy",\n "view.terms.accept.button": "Accept",\n "view.terms.checkbox.label": "I accept the terms and privacy policy",\n "view.terms.error.must_accept": "You must accept to continue",\n "form.error.validation_required": "Please complete the required fields."\n}\n```\n\n## Reference Example\n\nA complete, valid onboard XML:\n\n```xml\n<Main key="c92tR8J5wbTb3fav" isMain="true" useSafeAreaView="true" description="Ekranın ana kapsayıcısı. (#1)" title="Main 1" styles=\'{"paddingBottom":16}\' testID="Main-test-id-1">\n <StatusBarColor title="Status Bar Color" description="Status bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="StatusBarColor-test-id-1" />\n <NavigationBarColor title="Navigation Bar Color" description="Navigation bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="NavigationBarColor-test-id-1" />\n <OnboardProvider theme="dark" description="Onboarding sağlayıcısı. (#1)" title="OnboardProvider 1" testID="OnboardProvider-test-id-1">\n <Onboard description="Onboarding ana yapısı. (#1)" title="Onboard 1" styles=\'{"flex":1}\' testID="Onboard-test-id-1">\n <OnboardItem key="app_onboard-page1" description="Onboarding sayfası. (#1)" title="OnboardItem 1" testID="OnboardItem-test-id-1">\n <OnboardTitle description="Sayfa başlığı. (#1)" title="OnboardTitle 1" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-1">\n base.onboard.title.one-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-1" fetchStrategy="highIfItsAppLaunch" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#1)" title="OnboardSubtitle 1" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-1">\n base.onboard.subtitle.one-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page2" description="Onboarding sayfası. (#2)" title="OnboardItem 2" testID="OnboardItem-test-id-2">\n <OnboardTitle description="Sayfa başlığı. (#2)" title="OnboardTitle 2" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-2">\n base.onboard.title.two-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-2" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#2)" title="OnboardSubtitle 2" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-2">\n base.onboard.subtitle.two-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page3" description="Onboarding sayfası. (#3)" title="OnboardItem 3" testID="OnboardItem-test-id-3">\n <OnboardTitle description="Sayfa başlığı. (#3)" title="OnboardTitle 3" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-3">\n base.onboard.title.three-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-3" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#3)" title="OnboardSubtitle 3" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-3">\n base.onboard.subtitle.three-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page4" description="Onboarding sayfası. (#4)" title="OnboardItem 4" testID="OnboardItem-test-id-4">\n <OnboardTitle description="Sayfa başlığı. (#4)" title="OnboardTitle 4" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-4">\n base.onboard.title.four-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-4" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#4)" title="OnboardSubtitle 4" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-4">\n base.onboard.subtitle.four-page\n </OnboardSubtitle>\n </OnboardItem>\n </Onboard>\n <OnboardDot dotType="expanding_dot" dot_thickness="20" inactive_dot_opacity="0.3" inactive_dot_color="STATIC_COLORS.ONBOARD_DOT_INACTIVE" active_dot_color="STATIC_COLORS.ONBOARD_DOT_ACTIVE" styles=\'{"paddingVertical":12}\' testID="OnboardDot-test-id-1" />\n <Separator title="Separator" description="Horizontal separator line" styles=\'{"width":"100%","height":2,"backgroundColor":"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"}\' testID="Separator-test-id-1" />\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="0" description="Sayfa buton grubu. (#1)" title="OnboardButtons 1" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-1">\n <OnboardButton labelKey="base.onboard.skip.one-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.one-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":1}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="1" description="Sayfa buton grubu. (#2)" title="OnboardButtons 2" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-2">\n <OnboardButton labelKey="base.onboard.skip.two-page" events=\'[{"type":"Permission","permission":"att"},{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.two-page" events=\'[{"type":"Permission","permission":"att"},{"type":"Navigate","navigate_to":null,"targetIndex":2}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="2" description="Sayfa buton grubu. (#3)" title="OnboardButtons 3" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-3">\n <OnboardButton labelKey="base.onboard.skip.three-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.three-page" events=\'[{"type":"Permission","permission":"rating"},{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="3" description="Sayfa buton grubu. (#4)" title="OnboardButtons 4" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-4">\n <OnboardButton labelKey="base.onboard.allow.four-page" events=\'[{"type":"Permission","permission":"notification"},{"type":"Navigate","navigate_to":"home"}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <View title="Onboard Footer Wrap" description="Wrapper for OnboardFooter component" styles=\'{"marginHorizontal":25,"flexShrink":0}\' testID="View-test-id-1">\n <OnboardFooter textLocalizationKey="base.onboard.footer.description" linkedWordFirstLocalizationKey="base.onboard.btnPrivacy" linkedWordFirstColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordFirstPage="privacy" linkedWordSecondLocalizationKey="base.onboard.btnTerms" linkedWordSecondColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordSecondPage="terms" styles=\'{"gap":8,"color":"THEME_COLORS.ONBOARD_FOOTER_TEXT"}\' testID="OnboardFooter-test-id-1" />\n </View>\n </OnboardProvider>\n</Main>\n```\n\n## Task\n\nGenerate a node tree XML for the user\'s request below. Output ONLY raw XML — no markdown fences, no explanation.\n',paywallPromptScheme='You are a React Native UI builder assistant. Your goal is to generate a valid **paywall** screen node tree in XML format.\n\n## Available Components & Their Props\n\nEach component is listed as `ComponentName: {attr: TypeScriptType, styles: {prop: TypeScriptType}}`. Use ONLY these component names and attribute names. Do NOT invent new components or attributes.\n\nUnion enum values must match exactly (e.g. `"expanding_dot"` not `expandingDot`). Color values: prefer `THEME_COLORS.KEY` or `STATIC_COLORS.KEY` for theme-aware colors. Literal values like `"red"` or `"#000fff"` are also valid when a specific color is intended. Localization string values should use a localization key from the **Available Localization Keys** section. Do NOT invent new keys.\n\n```\nBIcon:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,iconType:string,size:number,strokeWidth:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nBackgroundImage:{scrollable:boolean,testID:string,src:string,resizeMode:"cover"|"contain"|"stretch"|"center",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nButton:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900"}}\nCarousel:{scrollable:boolean,testID:string,loop:boolean,dragFree:boolean,align:"start"|"center"|"end",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselDots:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselItem:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselProvider:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCheckbox:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,checkIconSize:number,checkIconStrokeWidth:number}}\nCountDown:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,count:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:obj,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:obj,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormCheckbox:{checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,name:string,validation:[string],styles:{borderRadius:string,checkIconSize:number,checkIconStrokeWidth:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormErrorText:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormProvider:{scrollable:boolean,testID:string,defaultValues:string,validationErrorMessageKey:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormSubmitButton:{labelKey:string,events:[obj],testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,disableIfUnvalidated:boolean,validationRequired:boolean,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nImage:{scrollable:boolean,testID:string,src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,resizeMode:"cover"|"contain"|"stretch"|"center"}}\nMain:{scrollable:boolean,testID:string,useSafeAreaView:boolean,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nNavigationBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nOnboard:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButton:{labelKey:string,events:[obj],testID:"onboardSkip"|"onboardNext",adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,animation:"simple-animation"|"line-animation"|"blur"|"blur-animation"|"blur-line-animation",animation_color:string,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,buttons_direction:"row"|"column",forIndex:number,seperatorColor:string,condition:"carousel-index",conditionVariable:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardDot:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardImage:{src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",scrollable:boolean,testID:string,video_url:string,lottie:string,styles:{resizeMode:"cover"|"contain"|"stretch"|"center",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardItem:{scrollable:boolean,testID:string,display:"flex"|"block",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardProvider:{scrollable:boolean,testID:string,theme:"light"|"dark"|"all",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardSubtitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardTitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallBackground:{src:string,resizeMode:"cover"|"contain"|"stretch"|"center",scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallCloseButton:{iconType:string,size:number,strokeWidth:number,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallOptions:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallProvider:{scrollable:boolean,testID:string,delay:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallSubscribeButton:{scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPriceTag:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,showOriginalPricePossible:boolean,hideIfItsNotDiscount:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,textDecorationLine:"none"|"underline"|"line-through"}}\nPricing:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPromo:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nRadioButton:{scrollable:boolean,testID:string,selected:boolean,color:string,size:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nSeparator:{testID:string,styles:{backgroundColor:string,width:string,height:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string}}\nStatusBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nSystemButton:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,labelKey:string,events:[obj],styles:{color:string,fontSize:number,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:number,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nText:{scrollable:boolean,testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string}}\nView:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nWebView:{scrollable:boolean,testID:string,iosUrl:string,androidUrl:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,loaderColor:string,loaderSize:number,loaderBorderWidth:number,loaderAnimationDuration:number}}\n```\n\n## Available Icons\n\nUse one of these values for `iconType` attributes:\n\n```\n\n```\n\n## XML Rules\n\n- Root element must always be `<Main isMain="true">`.\n- Text content (children) goes as element body text, not as an attribute.\n- `styles` value must be a JSON object string (escape inner quotes): `styles="{&quot;flex&quot;:1,&quot;color&quot;:&quot;THEME_COLORS.TEXT&quot;}"`.\n- `events` value must be a JSON array string.\n- Omit any attribute that has no value — no nulls, no empty strings.\n- Use a short unique slug for `key` when the component needs one.\n- Only use components appropriate for a paywall screen.\n\n## Component & Layout Constraints\n\n- **Mobile Limits**: When applying absolute sizes (width, height, testing dimensions), do NOT exceed typical mobile screen dimensions (e.g., max width ~360-400, max height ~800).\n- **testID**: Every component MUST have a unique `testID` attribute, **EXCEPT** `OnboardButton` (do not provide `testID` for `OnboardButton` as it handles it internally).\n- **PaywallOptions**: When using `PaywallOptions`, generate ONLY ONE layout template inside it. The app repeats this template for each product dynamically.\n- **PriceTag Placement**: If `PriceTag` is placed **inside** `PaywallOptions`, it displays the price of that specific option in the loop. If placed **outside** of `PaywallOptions`, it displays the price of the user\'s currently *selected* option.\n\n## Embla Carousel Constraints\n\n> **IMPORTANT – Web uses Embla carousel under the hood.** For `OnboardProvider` and `OnboardItem`, do **NOT** set any of the following outer layout styles via `styles`, because Embla manages them internally through its own CSS classes (`embla`, `embla__viewport`, `embla__slide`):\n>\n> `flex`, `flexGrow`, `flexShrink`, `margin`, `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, `marginHorizontal`, `marginVertical`, `height`, `minHeight`, `maxHeight`, `width`, `minWidth`, `maxWidth`, `position`, `top`, `bottom`, `left`, `right`, `zIndex`, `display`\n>\n> Only **visual** styles are safe to set on `OnboardProvider` and `OnboardItem`: `padding`, `paddingTop`, `paddingBottom`, `paddingLeft`, `paddingRight`, `paddingHorizontal`, `paddingVertical`, `backgroundColor`, `borderRadius`, `gap`, `alignItems`, `justifyContent`, `flexDirection`, `flexWrap`\n\n## Available Localization Keys\n\nUse ONLY the keys listed below for localization attributes (`labelKey`, `textLocalizationKey`, etc.). Do NOT invent new keys or use keys not in this list.\n\n```\nbase.builder.paywall.period.monthly\nbase.builder.paywall.period.annual\nbase.builder.paywall.period.weekly\nbase.builder.paywall.period.daily\nbase.builder.paywall.period.monthlyPromo\nbase.builder.paywall.period.annualPromo\nbase.builder.paywall.pricing.default.text\nbase.builder.paywall.pricing.freeTrial.text\nbase.builder.paywall.pricing.regular.text\nbase.builder.paywall.promo.default.text\nbase.builder.paywall.promo.freeTrial.text\nbase.builder.paywall.promo.regular.text\nbase.builder.paywall.button.subscribe\nbase.builder.paywall.button.subscribe-free\nbase.onboard.title.one-page\nbase.onboard.title.two-page\nbase.onboard.title.three-page\nbase.onboard.title.four-page\nbase.onboard.title.five-page\nbase.onboard.title.six-page\nbase.onboard.title.one-page2\nbase.onboard.title.two-page2\nbase.onboard.title.three-page2\nbase.onboard.title.four-page2\nbase.onboard.subtitle.one-page\nbase.onboard.subtitle.two-page\nbase.onboard.subtitle.three-page\nbase.onboard.subtitle.four-page\nbase.onboard.subtitle.five-page\nbase.onboard.subtitle.six-page\nbase.onboard.subtitle.one-page2\nbase.onboard.subtitle.two-page2\nbase.onboard.subtitle.three-page2\nbase.onboard.subtitle.four-page2\nbase.onboard.next.one-page\nbase.onboard.next.two-page\nbase.onboard.next.three-page\nbase.onboard.next.five-page\nbase.onboard.skip.one-page\nbase.onboard.skip.two-page\nbase.onboard.skip.three-page\nbase.onboard.skip.five-page\nbase.onboard.allow.four-page\nbase.onboard.footer.description\nbase.onboard.btnPrivacy\nbase.onboard.btnTerms\nbase.builder.paywall.footer.description\nbase.builder.paywall.btnPrivacy\nbase.builder.paywall.btnTerms\nview.terms.header.title\nview.terms.accept.button\nview.terms.checkbox.label\nview.terms.error.must_accept\nform.error.validation_required\n```\n\n## Default Colors\n\nReference color tokens already defined in the project. Prefer these over hard-coded hex values.\n\n```\n STATIC_COLORS.BLACK: "#000"\n STATIC_COLORS.WHITE: "#FFFFFF"\n STATIC_COLORS.TRANSPARENT: "#ffffff00"\n STATIC_COLORS.ONBOARD_DOT_INACTIVE: "#E4E5E7"\n STATIC_COLORS.ONBOARD_DOT_ACTIVE: "#007AFF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND: "#0066FF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT: "#FFFFFF"\n STATIC_COLORS.ONBOARD_LINK_COLOR: "#1778F2"\n STATIC_COLORS.ONBOARD_SEPARATOR_COLOR: "#44454D"\n STATIC_COLORS.RADIO_BUTTON_COLOR: "#A6A6A6"\n THEME_COLORS.TEXT (light): "#161827"\n THEME_COLORS.BACKGROUND (light): "#F4F5FF"\n THEME_COLORS.ICON (light): "#0450E2"\n THEME_COLORS.LINE (light): "#E9EBF9"\n THEME_COLORS.ONBOARD_TITLE (light): "#161827"\n THEME_COLORS.ONBOARD_SUBTITLE (light): "#44454D"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (light): "#81838F"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (light): "#81838F"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (light): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (light): "#B91C1C"\n THEME_COLORS.TEXT (dark): "#E9EBF9"\n THEME_COLORS.BACKGROUND (dark): "#080A17"\n THEME_COLORS.ICON (dark): "#0450E2"\n THEME_COLORS.LINE (dark): "#161827"\n THEME_COLORS.ONBOARD_TITLE (dark): "#FDFDFD"\n THEME_COLORS.ONBOARD_SUBTITLE (dark): "#C7C7C7"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (dark): "#A9AAAC"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (dark): "#A2A4B1"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (dark): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (dark): "#B91C1C"\n```\n\n## Default Localization (en)\n\n```\n{\n "base.builder.paywall.period.monthly": "per month",\n "base.builder.paywall.period.annual": "per year",\n "base.builder.paywall.period.weekly": "per week",\n "base.builder.paywall.period.daily": "per day",\n "base.builder.paywall.period.monthlyPromo": "per month",\n "base.builder.paywall.period.annualPromo": "per year",\n "base.builder.paywall.pricing.default.text": "@promoPrice for the first @promoPeriod, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.promo.default.text": "Save @discountPercentage%!",\n "base.builder.paywall.promo.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial",\n "base.builder.paywall.promo.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.button.subscribe": "Subscribe",\n "base.builder.paywall.button.subscribe-free": "Subscribe with Free Trial",\n "base.onboard.title.one-page": "Secure your connection",\n "base.onboard.title.two-page": "Access content worldwide",\n "base.onboard.title.three-page": "Fast and reliable",\n "base.onboard.title.four-page": "Stay notified and safe",\n "base.onboard.title.five-page": "Enhance your experience",\n "base.onboard.title.six-page": "You are all set!",\n "base.onboard.title.one-page2": "Secure your connection",\n "base.onboard.title.two-page2": "Access content worldwide",\n "base.onboard.title.three-page2": "Fast and reliable",\n "base.onboard.title.four-page2": "Stay notified and safe",\n "base.onboard.subtitle.one-page": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page": "Enable notifications for connection status and security tips.",\n "base.onboard.subtitle.five-page": "Get the most out of our app with premium features.",\n "base.onboard.subtitle.six-page": "Enjoy secure and fast browsing.",\n "base.onboard.subtitle.one-page2": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page2": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page2": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page2": "Enable notifications for connection status and security tips.",\n "base.onboard.next.one-page": "Next",\n "base.onboard.next.two-page": "Next",\n "base.onboard.next.three-page": "Next",\n "base.onboard.next.five-page": "Next",\n "base.onboard.skip.one-page": "Skip",\n "base.onboard.skip.two-page": "Skip",\n "base.onboard.skip.three-page": "Skip",\n "base.onboard.skip.five-page": "Skip",\n "base.onboard.allow.four-page": "Allow",\n "base.onboard.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.onboard.btnPrivacy": "Privacy Policy",\n "base.onboard.btnTerms": "Terms of Service",\n "base.builder.paywall.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.builder.paywall.btnPrivacy": "Privacy Policy",\n "base.builder.paywall.btnTerms": "Terms of Service",\n "view.terms.header.title": "Terms & Privacy",\n "view.terms.accept.button": "Accept",\n "view.terms.checkbox.label": "I accept the terms and privacy policy",\n "view.terms.error.must_accept": "You must accept to continue",\n "form.error.validation_required": "Please complete the required fields."\n}\n```\n\n## Reference Example\n\nA complete, valid paywall XML:\n\n```xml\n<Main isMain="true" useSafeAreaView="true" description="Ekranın ana kapsayıcısı. (#1)" title="Main" testID="Main-test-id-1">\n <StatusBarColor title="Status Bar Color" description="Status bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="StatusBarColor-test-id-1" />\n <NavigationBarColor title="Navigation Bar Color" description="Navigation bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="NavigationBarColor-test-id-1" />\n <PaywallProvider scrollable="true" description="Paywall ana sağlayıcısı. (#1)" title="Main Paywall" styles=\'{"flexDirection":"column","alignItems":"stretch","justifyContent":"flex-start","position":"relative","backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="PaywallProvider-test-id-1">\n <PaywallBackground src="https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&amp;fit=crop&amp;w=1200&amp;q=80" resizeMode="cover" description="Paywall arka planı. (#1)" title="Paywall Background" testID="PaywallBackground-test-id-1" />\n <View styles=\'{"paddingTop":56,"paddingHorizontal":16,"paddingBottom":16,"gap":12,"flex":1}\' testID="View-test-id-1">\n <PaywallCloseButton styles=\'{"width":32,"height":32,"borderRadius":16,"backgroundColor":"STATIC_COLORS.WHITE","color":"STATIC_COLORS.BLACK","zIndex":10,"alignItems":"center","justifyContent":"center"}\' testID="PaywallCloseButton-test-id-1" />\n <View description="Düzen ve yerleşim konteyneri. (#2)" title="Benefits" styles=\'{"flexDirection":"column","gap":0,"marginTop":"4%"}\' testID="View-test-id-2">\n <View description="Düzen ve yerleşim konteyneri. (#3)" title="Benefit #1" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-3">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#1)" title="BIcon 1" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-1" />\n <Text description="Metin öğesi. (#1)" title="text 1" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-1">\n @benefit1 — Unlimited access\n </Text>\n </View>\n <View description="Düzen ve yerleşim konteyneri. (#4)" title="Benefit #2" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-4">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#2)" title="BIcon 2" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-2" />\n <Text description="Metin öğesi. (#2)" title="text 2" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-2">\n @benefit2 — 7-day free trial\n </Text>\n </View>\n <View description="Düzen ve yerleşim konteyneri. (#5)" title="Benefit #3" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-5">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#3)" title="BIcon 3" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-3" />\n <Text description="Metin öğesi. (#3)" title="text 3" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-3">\n @benefit3 — Cancel anytime\n </Text>\n </View>\n </View>\n <PaywallOptions description="Abonelik seçenekleri alanı. (#1)" title="Option(s)" styles=\'{"borderRadius":12,"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="PaywallOptions-test-id-1">\n <RadioButton description="Seçim satırı öğesi. (#1)" title="Product Radio(s)" styles=\'{"flex":1}\' testID="RadioButton-test-id-1" />\n <Text description="Metin öğesi. (#4)" title="Product Desc(s)" styles=\'{"flex":6}\' testID="Text-test-id-4">\n @productDescription\n </Text>\n <View title="Price Column" styles=\'{"flexDirection":"column","flex":2,"alignItems":"flex-end"}\' testID="View-test-id-6">\n <PriceTag title="Promo Price" styles=\'{"textAlign":"right","fontWeight":"700"}\' testID="PriceTag-test-id-1">\n @localizedCalculatedPrice\n </PriceTag>\n <PriceTag title="Original Price" hideIfItsNotDiscount="true" styles=\'{"textAlign":"right","textDecorationLine":"line-through","fontSize":"12@fs","fontWeight":"400","color":"#999999"}\' testID="PriceTag-test-id-2">\n @localizedPrice\n </PriceTag>\n </View>\n <BIcon iconType="chevron-right" size="16" description="İkon öğesi. (#4)" title="Product BIcon(s)" styles=\'{"marginRight":4,"flex":0,"width":32,"color":"STATIC_COLORS.BLACK"}\' testID="BIcon-test-id-4" />\n </PaywallOptions>\n <View description="Subscription butonu kapsayıcısı. (#1)" title="Subs Container" styles=\'{"flex":1,"flexDirection":"column","justifyContent":"flex-end","alignItems":"stretch","gap":8,"paddingBottom":"50px"}\' testID="View-test-id-7">\n <Pricing description="Pricing breakdown for promo/trial." title="Pricing Detail" testID="Pricing-test-id-1">\n @baseLocalizedPricingText\n </Pricing>\n <Text description="Trial detayı." title="Trial Full" styles=\'{"textAlign":"center","fontSize":12,"color":"rgba(255,255,255,0.6)"}\' testID="Text-test-id-5">\n @trialPeriod days free, then @price/@period\n </Text>\n <PaywallSubscribeButton description="Abonelik onay butonu. (#1)" title="Subscribe" testID="PaywallSubscribeButton-test-id-1">\n @subscribe\n </PaywallSubscribeButton>\n <Promo description="Discount badge / promo text." title="Promo Badge" testID="Promo-test-id-1">\n @baseLocalizedPromoText\n </Promo>\n <PaywallFooter textLocalizationKey="base.builder.paywall.footer.description" linkedWordFirstLocalizationKey="base.builder.paywall.btnPrivacy" linkedWordFirstColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordFirstPage="privacy" linkedWordSecondLocalizationKey="base.builder.paywall.btnTerms" linkedWordSecondColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordSecondPage="terms" styles=\'{"gap":8,"color":"THEME_COLORS.ONBOARD_FOOTER_TEXT"}\' testID="PaywallFooter-test-id-1" />\n </View>\n </View>\n </PaywallProvider>\n</Main>\n```\n\n## Task\n\nGenerate a node tree XML for the user\'s request below. Output ONLY raw XML — no markdown fences, no explanation.\n';function PromptManagerModal({data:e,setData:t,onClose:i}){const[r,n]=React.useState("xml-editor");return jsxRuntime.jsxs(Modal,{onClose:i,ariaLabelledBy:"prompt-manager-modal-title",className:"modal--large modal--scrollable",contentClassName:"prompt-manager-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header prompt-manager-modal__header",children:[jsxRuntime.jsx("h3",{id:"prompt-manager-modal-title",className:"modal__title",children:"Prompt Manager"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"prompt-manager-modal__tabs",children:[jsxRuntime.jsx("button",{type:"button",className:"prompt-manager-modal__tab"+("xml-editor"===r?" is-active":""),onClick:()=>n("xml-editor"),children:"XML Editor"}),jsxRuntime.jsx("button",{type:"button",className:"prompt-manager-modal__tab"+("prompt-schema"===r?" is-active":""),onClick:()=>n("prompt-schema"),children:"Prompt Şeması"})]}),jsxRuntime.jsxs("div",{className:"prompt-manager-modal__body",children:["xml-editor"===r&&jsxRuntime.jsx(XmlEditorTab,{data:e,setData:t}),"prompt-schema"===r&&jsxRuntime.jsx(PromptSchemaTab,{})]})]})}function XmlEditorTab({data:e,setData:t}){const i=useRenderStore(e=>e.setCurrent),r=React.useMemo(()=>{try{return nodeToXml(e)}catch{return""}},[e]),[n,o]=React.useState(r),[a,s]=React.useState(null),[l,c]=React.useState(null),[d,p]=React.useState(!1);React.useEffect(()=>{o(r),s(null),c(null),p(!1)},[r]);return jsxRuntime.jsxs("div",{className:"prompt-manager-modal__editor-wrap",children:[jsxRuntime.jsxs("div",{className:"prompt-manager-modal__toolbar",children:[jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.75},children:"node.xml"}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(n)}catch{}},children:"Copy"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=xmlToNode(n);s(null),c(null),p(!1);try{const r=analyseAndProccess(e);t(r),i(r),p(!0)}catch(e){c(e instanceof Error?e.message:"Failed to apply XML")}}catch(e){s(e instanceof Error?e.message:"Invalid XML")}},children:"Apply"})]})]}),jsxRuntime.jsx("textarea",{className:"prompt-manager-modal__editor",value:n,onChange:e=>{o(e.target.value),c(null),p(!1)},spellCheck:!1}),a?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Invalid XML: ",a]}):l?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Could not apply: ",l]}):d?jsxRuntime.jsx("div",{style:{fontSize:12,color:"#2e7d32"},children:"✓ Applied successfully"}):jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.7},children:"Edit XML and press Apply to update the node tree."})]})}function PromptSchemaTab(){const[e,t]=React.useState("onboard"),[i,r]=React.useState(!1),n="onboard"===e?onboardPromptScheme:paywallPromptScheme;return jsxRuntime.jsxs("div",{className:"prompt-manager-modal__editor-wrap",children:[jsxRuntime.jsxs("div",{className:"prompt-manager-modal__toolbar",children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:4},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t("onboard"),r(!1)},style:"onboard"===e?{background:"#1565c0",color:"#fff",borderColor:"#1565c0"}:void 0,children:"Onboard"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t("paywall"),r(!1)},style:"paywall"===e?{background:"#6a1b9a",color:"#fff",borderColor:"#6a1b9a"}:void 0,children:"Paywall"})]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(n),r(!0),setTimeout(()=>r(!1),1500)}catch{}},children:i?"✓ Copied":"Copy"})]}),jsxRuntime.jsx("textarea",{className:"prompt-manager-modal__editor",value:n,readOnly:!0,spellCheck:!1}),jsxRuntime.jsxs("div",{style:{fontSize:12,opacity:.7},children:[n.length.toLocaleString()," chars · read-only (auto-generated)"]})]})}function IconTypePickerField({value:e,onChange:t}){const[i,r]=React.useState(!1),n="string"==typeof e?e:void 0;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>r(!0),className:"attributes-editor__picker-button",children:[jsxRuntime.jsxs("span",{className:"attributes-editor__picker-button-left",children:[n?jsxRuntime.jsx(Icon,{iconType:n,size:18}):null,jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-label",children:n??"Select icon"})]}),jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-open",children:"Open"})]}),i?jsxRuntime.jsx(IconPickerModal,{value:n,onSelect:e=>{t(e),r(!1)},onClose:()=>r(!1),onClear:()=>{t(void 0),r(!1)}}):null]})}function FontFamilyPickerField({name:e,value:t,onChange:i,fonts:r,loadedFonts:n,markFontLoaded:o,addError:a}){const[s,l]=React.useState(!1),[c,d]=React.useState(!1),[p,g]=React.useState(null),u="string"==typeof t&&t.trim().length>0?t.trim():void 0,m=Array.isArray(r)?r:[],h=Array.isArray(n)?n:[],f=React.useMemo(()=>`${m.length} fonts`,[m.length]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>{g(null),l(!0)},className:"attributes-editor__picker-button",children:[jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-label attributes-editor__picker-button-label--fill",children:u??"Select font"}),jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-open",children:"Open"})]}),s?jsxRuntime.jsx(Modal,{ariaLabelledBy:"font-family-picker-title",onClose:()=>{c||l(!1)},closeOnOverlayClick:!c,closeOnEsc:!c,children:jsxRuntime.jsxs("div",{className:"attributes-editor__font-modal",children:[jsxRuntime.jsxs("div",{className:"attributes-editor__font-modal-header",children:[jsxRuntime.jsx("p",{id:"font-family-picker-title",className:"attributes-editor__font-modal-title",children:"Select Font"}),jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-spacer"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(void 0),g(null),l(!1)},disabled:c,children:"Clear"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>l(!1),disabled:c,children:"Close"})]}),c?jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-note",children:"Loading font…"}):null,p?jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-error",children:p}):null,jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-note",children:f}),jsxRuntime.jsx("div",{className:"attributes-editor__font-grid",children:m.map(e=>{const t=e?.name;if("string"!=typeof t||!t.trim())return null;const r=t.trim(),n=u===r,s=h.includes(r),l=["attributes-editor__font-option",n?"attributes-editor__font-option--active":""].filter(Boolean).join(" ");return jsxRuntime.jsxs("button",{type:"button",disabled:c,onClick:async()=>{if(g(null),i(r),!s){d(!0);try{fontsDebug.info("AttributesEditor: loadFontFamily start",{familyName:r}),await loadFontFamily(m,r,{forceFetch:!0}),o(r),fontsDebug.info("AttributesEditor: loadFontFamily success",{familyName:r})}catch(e){const t=e instanceof Error?e.message:String(e);g(`Failed to load "${r}": ${t}`),a(`Failed to load font "${r}": ${t}`)}finally{d(!1)}}},className:l,"aria-label":`Select font ${r}`,children:[jsxRuntime.jsx("span",{className:"attributes-editor__font-option-name",title:r,children:r}),jsxRuntime.jsx("span",{className:"attributes-editor__font-option-status",children:s?"Loaded":"Not loaded"})]},r)})})]})}):null]})}const cache={},rk=(e,t,i)=>`${e}|${t??""}|${i}`,lk=(e,t)=>`lang|${e}|${t??""}`;function FallbackLocalizationField({value:e,onChange:t}){const i=useRenderStore(e=>e.localizationApiConfig),r=useRenderStore(e=>e.languageColumns),[n,o]=React.useState(!1),[a,s]=React.useState(""),[l,c]=React.useState("ios"),[d,p]=React.useState([]),[g,u]=React.useState(!1),[m,h]=React.useState([]),[f,y]=React.useState(!1),b=React.useRef(0),[C,x]=React.useState(!1),[v,w]=React.useState(""),[k,T]=React.useState(""),[_,R]=React.useState(""),[O,I]=React.useState(!1),[M,j]=React.useState(null),P=!!i?.forgeUrl&&!!i?.forgeToken,E=m.length>0?m:r??[],L=React.useCallback(()=>i?{"Content-Type":"application/json",Accept:"application/json","X-Authorization":i.forgeToken}:{},[i]),z=React.useCallback(async(e=!1)=>{if(!i||!P)return;const t=rk(i.forgeUrl,i.forgeAppId,l);if(!e&&cache[t]?.records?.length)return p(cache[t].records),void y(!0);const r=++b.current;u(!0);try{const e=[];let n=1,o=!0;for(;o;){const t=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization/${l}`,a=new URLSearchParams({per_page:"1000",page:String(n)});i.forgeAppId&&a.append("app_id",String(i.forgeAppId));const s=await fetch(`${t}?${a}`,{headers:L()});if(!s.ok||r!==b.current)break;const c=await s.json();e.push(...c.data??[]);const d=c.pagination;o=d&&d.current_page<d.last_page,n++}r===b.current&&(p(e),y(!0),cache[t]={...cache[t],records:e})}catch{}finally{r===b.current&&u(!1)}},[i,P,l,L]),D=React.useCallback(async()=>{if(!i||!P)return;const e=lk(i.forgeUrl,i.forgeAppId);if(cache[e]?.languages?.length)h(cache[e].languages);else try{const t=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization-languages`,r=new URLSearchParams;i.forgeAppId&&r.append("app_id",String(i.forgeAppId));const n=await fetch(`${t}?${r}`,{headers:L()});if(!n.ok)return;const o=await n.json(),a=Array.isArray(o)?o:[];h(a),cache[e]={...cache[e],languages:a,records:cache[e]?.records??[]}}catch{}},[i,P,L]);React.useEffect(()=>{P&&(D(),z())},[P,z,D]);const B=React.useMemo(()=>{if(!f)return[];const e=a.trim().toLowerCase();return e?d.filter(t=>!!t.key.toLowerCase().includes(e)||Object.values(t.translations).some(t=>t?.value&&t.value.toLowerCase().includes(e))):d},[a,d,f]),A=React.useMemo(()=>e?d.find(t=>t.key===e)??null:null,[e,d]),V=(e,t)=>e&&e.translations[t.toUpperCase()]?.value?.trim()||"",N=E[0]??{code:"EN",title:"English"},F=E[1]??{code:"TR",title:"Türkçe"},H=V(A,N.code),W=V(A,F.code),$=e=>{t(e.key),o(!1)},U=()=>{i&&(delete cache[rk(i.forgeUrl,i.forgeAppId,l)],delete cache[lk(i.forgeUrl,i.forgeAppId)]),y(!1),p([]),h([]),D(),z(!0)};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[e?jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>P&&o(!0),onKeyDown:e=>"Enter"===e.key&&P&&o(!0),style:S.compactCard,children:[jsxRuntime.jsxs("div",{style:S.compactHeader,children:[jsxRuntime.jsx("span",{style:S.compactLabel,children:"Text"}),jsxRuntime.jsx("span",{style:S.badgeSmall,children:l.toUpperCase()}),jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),t("")},onKeyDown:e=>{"Enter"===e.key&&(e.stopPropagation(),t(""))},title:"Temizle",style:S.clearBtn,children:"✕"})]}),jsxRuntime.jsxs("div",{style:S.keyRow,children:[jsxRuntime.jsx("span",{style:S.keyText,children:e}),jsxRuntime.jsx("span",{style:{fontSize:12,color:"#555"},children:"🔍"})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:N.title||N.code}),jsxRuntime.jsx("span",{style:H?S.transVal:S.transMissing,children:H||"Eksik"})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:F.title||F.code}),jsxRuntime.jsx("span",{style:W?S.transVal:S.transMissing,children:W||"Eksik"})]})]}):jsxRuntime.jsxs("div",{style:S.emptyWrap,children:[jsxRuntime.jsx("span",{style:S.compactLabel,children:"Text"}),jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>P&&o(!0),onKeyDown:e=>"Enter"===e.key&&P&&o(!0),style:S.emptyBtn,children:[jsxRuntime.jsx("span",{style:{opacity:.5},children:"Localization anahtarı seçilmedi"}),P&&jsxRuntime.jsx("span",{children:"🔍"})]}),!P&&jsxRuntime.jsx("div",{style:S.configWarn,children:"Localization API yapılandırılmadı"})]}),n&&jsxRuntime.jsx("div",{onClick:()=>o(!1),style:S.overlay,children:jsxRuntime.jsxs("div",{onClick:e=>e.stopPropagation(),style:S.modal,children:[jsxRuntime.jsxs("div",{style:S.modalHeader,children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("div",{style:{fontWeight:600,fontSize:15},children:"Localization Anahtarı Seç"}),jsxRuntime.jsx("div",{style:{fontSize:12,color:"#888",marginTop:2},children:"Arama, seçim veya yeni anahtar oluşturma."})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexShrink:0},children:[jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:U,title:"Yenile",style:S.refreshBtn,children:"↻"}),jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:()=>o(!1),style:S.closeBtn,children:"✕"})]})]}),jsxRuntime.jsx("div",{style:S.platformBar,children:["ios","android"].map(e=>jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:()=>(e=>{e!==l&&(c(e),y(!1),p([]))})(e),style:{...S.pBtn,...l===e?S.pBtnActive:{}},children:"ios"===e?"iOS":"Android"},e))}),jsxRuntime.jsxs("div",{style:{padding:"10px 16px 8px",display:"flex",gap:8},children:[jsxRuntime.jsx("input",{autoFocus:!0,type:"text",value:a,onChange:e=>s(e.target.value),placeholder:"Anahtar veya çeviri ara…",style:{...S.searchInput,flex:1}}),jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:()=>x(!C),style:S.createToggle,children:C?"← Ara":"+ Yeni"})]}),C?jsxRuntime.jsxs("div",{style:S.createForm,children:[jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"Anahtar"}),jsxRuntime.jsx("input",{type:"text",value:v,onChange:e=>w(e.target.value),placeholder:"örn: faq.category.general",style:S.searchInput})]}),jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"English"}),jsxRuntime.jsx("input",{type:"text",value:k,onChange:e=>T(e.target.value),placeholder:"English translation",style:S.searchInput})]}),jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"Türkçe"}),jsxRuntime.jsx("input",{type:"text",value:_,onChange:e=>R(e.target.value),placeholder:"Türkçe çeviri",style:S.searchInput})]}),M&&jsxRuntime.jsx("div",{style:S.errorMsg,children:M}),jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:async()=>{if(i&&P&&v.trim()){I(!0),j(null);try{const e={};k.trim()&&(e.EN={value:k.trim()}),_.trim()&&(e.TR={value:_.trim()});const r={key:v.trim(),translations:e},n=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization/${l}`,a=new URLSearchParams;i.forgeAppId&&a.append("app_id",String(i.forgeAppId));const s=await fetch(`${n}?${a}`,{method:"POST",headers:L(),body:JSON.stringify(r)});if(!s.ok){const e=await s.json().catch(()=>({}));throw new Error(e.message||`HTTP ${s.status}`)}t(v.trim()),x(!1),w(""),T(""),R(""),U(),o(!1)}catch(e){j(e instanceof Error?e.message:"Oluşturulamadı")}finally{I(!1)}}},style:{...S.saveBtn,opacity:O||!v.trim()?.5:1,pointerEvents:O||!v.trim()?"none":"auto"},children:O?"Kaydediliyor…":"Oluştur ve Seç"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[f&&jsxRuntime.jsxs("div",{style:S.infoBar,children:[B.length," / ",d.length," anahtar"]}),jsxRuntime.jsxs("div",{style:S.resultsList,children:[g&&jsxRuntime.jsx("div",{style:S.emptyMsg,children:"Yükleniyor…"}),!g&&f&&0===B.length&&jsxRuntime.jsx("div",{style:S.emptyMsg,children:"Kayıt bulunamadı."}),B.map(t=>{const i=t.key===e,r=(n=t,E.filter(e=>{const t=n.translations[e.code];return!t?.value||!t.value.trim()}).length);var n;const o=V(t,N.code);return jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>$(t),onKeyDown:e=>"Enter"===e.key&&$(t),style:{...S.resultCard,...i?S.resultCardActive:{}},onMouseEnter:e=>{i||(e.currentTarget.style.background="#272730")},onMouseLeave:e=>{i||(e.currentTarget.style.background=i?"rgba(99,102,241,0.12)":"transparent")},children:[jsxRuntime.jsxs("div",{style:S.resultKeyRow,children:[jsxRuntime.jsx("span",{style:S.resultKey,children:t.key}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:5,flexShrink:0,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:S.badgeSmall,children:l.toUpperCase()}),r>0&&jsxRuntime.jsxs("span",{style:S.missingBadge,children:["Eksik ",r]}),i&&jsxRuntime.jsx("span",{style:S.selectedBadge,children:"✔"})]})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:N.title||N.code}),jsxRuntime.jsx("span",{style:o?S.transVal:S.transMissing,children:o?o.length>100?o.slice(0,100)+"…":o:"Eksik"})]})]},t.key)})]})]})]})})]})}const S={compactCard:{display:"block",width:"100%",textAlign:"left",background:"transparent",border:"1px solid hsl(0 0% 30%)",borderRadius:8,padding:"8px 10px",cursor:"pointer"},compactHeader:{display:"flex",alignItems:"center",gap:6,marginBottom:4},compactLabel:{fontSize:10,fontWeight:600,textTransform:"uppercase",color:"#888",letterSpacing:"0.05em"},clearBtn:{cursor:"pointer",fontSize:12,color:"#666",padding:"0 2px",marginLeft:"auto",userSelect:"none"},keyRow:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,marginBottom:4},keyText:{fontSize:12,color:"#ccc",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},transRow:{display:"flex",alignItems:"center",gap:6,marginTop:3},transVal:{fontSize:11,color:"#bbb",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",flex:1},transMissing:{fontSize:11,color:"#ef4444",flex:1},emptyWrap:{display:"flex",flexDirection:"column",gap:4},emptyBtn:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"7px 10px",border:"1px solid hsl(0 0% 30%)",borderRadius:6,background:"transparent",color:"#ccc",fontSize:12,cursor:"pointer",textAlign:"left"},configWarn:{fontSize:10,color:"#ef4444",marginTop:2},overlay:{position:"fixed",inset:0,background:"rgba(0,0,0,0.6)",zIndex:9999,display:"flex",alignItems:"center",justifyContent:"center"},modal:{background:"#1a1a22",borderRadius:12,width:560,maxHeight:"80vh",display:"flex",flexDirection:"column",boxShadow:"0 16px 48px rgba(0,0,0,0.6)",color:"#e0e0e0",border:"1px solid #2a2a35",overflow:"hidden"},modalHeader:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",padding:"16px 18px",borderBottom:"1px solid #2a2a35",gap:12},closeBtn:{cursor:"pointer",fontSize:18,color:"#999",padding:4,userSelect:"none"},refreshBtn:{cursor:"pointer",fontSize:18,color:"#6366f1",padding:4,userSelect:"none"},platformBar:{display:"flex",gap:8,padding:"10px 16px 8px",borderBottom:"1px solid #2a2a35"},pBtn:{padding:"5px 14px",borderRadius:6,border:"1px solid #3a3a45",background:"transparent",color:"#999",fontSize:12,fontWeight:600,cursor:"pointer",userSelect:"none"},pBtnActive:{background:"#6366f1",borderColor:"#6366f1",color:"#fff"},searchInput:{width:"100%",padding:"8px 12px",border:"1px solid #3a3a45",borderRadius:6,background:"#22222a",color:"#e0e0e0",fontSize:13,outline:"none",boxSizing:"border-box"},createToggle:{padding:"6px 14px",borderRadius:6,border:"1px solid #6366f1",background:"transparent",color:"#6366f1",fontSize:12,fontWeight:600,cursor:"pointer",whiteSpace:"nowrap",userSelect:"none"},infoBar:{padding:"2px 18px 6px",fontSize:11,color:"#555",textAlign:"right"},resultsList:{overflowY:"auto",flex:1,padding:"4px 10px 10px"},emptyMsg:{padding:28,textAlign:"center",color:"#666",fontSize:13},resultCard:{display:"block",width:"100%",textAlign:"left",borderRadius:8,padding:"10px 12px",cursor:"pointer",marginBottom:4,border:"1px solid #2a2a35",background:"transparent"},resultCardActive:{background:"rgba(99,102,241,0.12)",borderColor:"#6366f1"},resultKeyRow:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},resultKey:{fontWeight:600,fontSize:13,color:"#e0e0e0",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},langBadge:{display:"inline-block",background:"#2a2a35",border:"1px solid #3a3a45",borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,color:"#aaa",flexShrink:0},badgeSmall:{display:"inline-block",background:"#2a2a35",border:"1px solid #3a3a45",borderRadius:4,padding:"1px 5px",fontSize:9,fontWeight:600,color:"#888",textTransform:"uppercase"},missingBadge:{display:"inline-block",background:"rgba(239,68,68,0.15)",border:"1px solid rgba(239,68,68,0.3)",borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,color:"#ef4444"},selectedBadge:{fontSize:10,color:"#6366f1",fontWeight:600},createForm:{padding:"12px 16px",display:"flex",flexDirection:"column",gap:10},createField:{display:"flex",flexDirection:"column",gap:4},createLabel:{fontSize:11,fontWeight:600,color:"#888",textTransform:"uppercase"},errorMsg:{fontSize:12,color:"#ef4444",padding:"4px 0"},saveBtn:{padding:"8px 16px",borderRadius:6,background:"#6366f1",color:"#fff",fontSize:13,fontWeight:600,cursor:"pointer",textAlign:"center",userSelect:"none",border:"none",marginTop:4}};function getPreferredOrderedSizeEntries(e){const t=["width","height","minWidth","minHeight","maxWidth","maxHeight"];return[...e].sort((e,i)=>{const r=t.indexOf(e.name),n=t.indexOf(i.name),o=-1===r?Number.MAX_SAFE_INTEGER:r,a=-1===n?Number.MAX_SAFE_INTEGER:n;return o!==a?o-a:e.name.localeCompare(i.name)})}function getSpecialSectionTitle(e){const t=e.key,i=e.meta;return{title:i?.label&&i.label.trim().length>0?i.label:t.charAt(0).toUpperCase()+t.slice(1),description:i?.description}}function AttributesEditorView(e){const{isInvalidNode:t,componentTitle:i,componentDescription:r,mockableFeatureKeys:n,activeMockableFeature:o,setActiveMockableFeature:a,tabs:s,tabContentInfo:l,activeTab:c,setActiveTab:d,firstAvailableTab:p,activeEntries:g,activeSpecialSections:u,hasTitleField:m,hasDescriptionField:h,hasStringChildren:f,childrenValue:y,handleChildrenChange:b,attributeMeta:C,data:x,getAttributeValue:v,handleAttributeChange:S,projectColorsForPicker:w,layoutContext:k,viewAttributes:T,attributes:_,projectFonts:R,loadedFonts:O,markFontLoaded:I,addError:M}=e,j=jsxRuntime.jsxs("div",{className:"attributes-editor__component-meta",children:[jsxRuntime.jsx("p",{className:"attributes-editor__component-title",children:i}),r?jsxRuntime.jsx("p",{className:"attributes-editor__component-description",children:r}):null]}),P=v("title"),E=v("description"),L=!t&&(m||h)?jsxRuntime.jsxs("section",{className:"attributes-editor__top-fields",children:[m?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper",children:[jsxRuntime.jsx("label",{className:"attributes-editor__field-label",htmlFor:"title",children:"Title (max 20 characters for display purposes)"}),jsxRuntime.jsx("input",{id:"title",className:"input",type:"text",maxLength:20,value:"string"==typeof P?P:"",onChange:e=>S("title",e.target.value)})]}):null,h?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper",children:[jsxRuntime.jsx("label",{className:"attributes-editor__field-label",htmlFor:"description",children:"Description (for display purposes)"}),jsxRuntime.jsx("input",{id:"description",className:"input",type:"text",value:"string"==typeof E?E:"",onChange:e=>S("description",e.target.value)})]}):null]}):null,z=n.length>0?jsxRuntime.jsxs("section",{className:"attributes-editor__mockable",children:[jsxRuntime.jsx("p",{className:"attributes-editor__mockable-title",children:"Mockable"}),jsxRuntime.jsx("table",{className:"attributes-editor__mockable-table",children:jsxRuntime.jsx("tbody",{children:n.map(e=>jsxRuntime.jsxs("tr",{className:"attributes-editor__mockable-row",children:[jsxRuntime.jsx("td",{className:"attributes-editor__mockable-name",children:e}),jsxRuntime.jsx("td",{className:"attributes-editor__mockable-action",children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>a(e),children:e})})]},e))})})]}):null,D=jsxRuntime.jsx("div",{className:"attributes-editor__tabs",children:s.map(e=>{const t=e.id===c,i=l[e.id],r=i.baseCount+i.specialCount,n=0===r,o=["attributes-editor__tab-button",t?"attributes-editor__tab-button--active":""].filter(Boolean).join(" ");return jsxRuntime.jsxs("button",{type:"button",onClick:()=>!n&&d(e.id),disabled:n,className:o,children:[e.label,r>0?` (${r})`:""]},e.id)})}),B=useRenderStore(e=>e.renderStringChildrenField),A=f?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper attributes-editor__field-wrapper--children",children:[jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:"Text"}),B?jsxRuntime.jsx(B,{value:y,onChange:b}):jsxRuntime.jsx(FallbackLocalizationField,{value:y,onChange:b})]}):null,V=React.useMemo(()=>{const e=l[p];return(e?.baseCount??0)+(e?.specialCount??0)>0||f&&void 0!==y},[y,p,f,l]);return t?null:jsxRuntime.jsxs("div",{className:"attributes-editor",children:[j,L,z,D,A,u.map(function(e){if("size"===e.key){const{title:t,description:i}=getSpecialSectionTitle(e),r=getPreferredOrderedSizeEntries(e.entries);return jsxRuntime.jsxs("section",{className:"special-category-section",children:[jsxRuntime.jsx("div",{className:"special-category-section__header",children:jsxRuntime.jsx("p",{className:"special-category-section__title",children:t})}),i?jsxRuntime.jsx("p",{className:"special-category-section__description",children:i}):null,jsxRuntime.jsx("div",{className:"attributes-editor__size-grid",children:r.map(e=>{const t=C?.[e.name]?.label??e.name,i=C?.[e.name]?.description,r=toPreferredScale(C?.[e.name]?.preferedScale),n=v(e.name),o=isBooleanFieldType(e.type),a=["attributes-editor__field-wrapper",o?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:i,children:jsxRuntime.jsxs("div",{className:`${a} attributes-editor__size-grid-item`,children:[o?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:t}),"iconType"===e.type?jsxRuntime.jsx(IconTypePickerField,{name:e.name,value:n,onChange:t=>S(e.name,t)}):"fontFamily"===e.type?jsxRuntime.jsx(FontFamilyPickerField,{name:e.name,value:n,onChange:t=>S(e.name,t),fonts:R,loadedFonts:O,markFontLoaded:I,addError:M}):jsxRuntime.jsx(Field,{name:e.name,type:e.type,value:n,onChange:t=>S(e.name,t),componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,label:o?t:void 0,preferredScale:r})]})},e.name)})})]},e.key)}return jsxRuntime.jsx(SpecialCategorySection,{category:e.key,entries:e.entries,attributeMeta:C,attributes:_,getAttributeValue:v,onAttributeChange:S,componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,meta:e.meta},e.key)}),g.map(function(e){const t=e.name,i=e.type,r=C?.[t]?.label??t,n=C?.[t]?.description,o=toPreferredScale(C?.[t]?.preferredScale??C?.[t]?.preferedScale),a=isBooleanFieldType(i),s=["attributes-editor__field-wrapper",a?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" "),l=v(t);return jsxRuntime.jsx(FieldInfoTooltip,{description:n,children:jsxRuntime.jsxs("div",{className:s,children:[a?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:r}),"iconType"===i?jsxRuntime.jsx(IconTypePickerField,{name:t,value:l,onChange:e=>S(t,e)}):"fontFamily"===i?jsxRuntime.jsx(FontFamilyPickerField,{name:t,value:l,onChange:e=>S(t,e),fonts:R,loadedFonts:O,markFontLoaded:I,addError:M}):jsxRuntime.jsx(Field,{name:t,type:i,value:l,onChange:e=>S(t,e),componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,label:a?r:void 0,preferredScale:o})]})},t)}),V?null:jsxRuntime.jsx("div",{className:"attributes-editor__empty-state",children:"No editable attributes"}),o?jsxRuntime.jsx(MockableFeatureModal,{featureKey:o,onClose:()=>a(null)}):null]})}function isPlainObject$2(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function getStyleBagSourceAndValue(e){const t=e??{},i=t.styles;if(isPlainObject$2(i))return{source:"styles",styleBag:i};const r=t.style;return isPlainObject$2(r)?{source:"style",styleBag:r}:{source:"none",styleBag:void 0}}function isAttributeTypeSpec(e){return"string"==typeof e||Array.isArray(e)}function getNestedStyleSchema(e){const t=e.styles??e.style;if(!isPlainObject$2(t))return;const i={};for(const[e,r]of Object.entries(t))isAttributeTypeSpec(r)&&(i[e]=r);return Object.keys(i).length?i:void 0}function buildAttributesEditorEntries(e,t){const i=getNestedStyleSchema(e),r=Object.keys(t??{}),n=Object.keys(e).filter(e=>"style"!==e&&"styles"!==e),o=Object.keys(i??{}),a=new Set([...r,...n,...o]),s=Array.from(a).filter(e=>"style"!==e&&"styles"!==e),l=[];return s.forEach(t=>{const r=e[t],n=i?.[t],o=isAttributeTypeSpec(r)?r:n;o&&l.push({name:t,type:o})}),l}function isValidStyleBagValue(e){const t=e,i=t?.styles,r=t?.style;return!(null!=i&&!isPlainObject$2(i)||null!=r&&!isPlainObject$2(r))}function findLegacyFlatStyleKeys(e,t){return isPlainObject$2(e)?Object.keys(e).filter(e=>"style"!==e&&"styles"!==e&&t(e)):[]}function isPlainObject$1(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function useAttributesEditorModel({node:e,onChange:t,projectColors:i}){const r=!e||isNodeString(e),n=React.useMemo(()=>r?{type:"View",children:null,attributes:{}}:e,[r,e]),o=useNode(n),{fonts:a,loadedFonts:s,markFontLoaded:l,addError:c}=useRenderStore(e=>({fonts:e.fonts,loadedFonts:e.loadedFonts,markFontLoaded:e.markFontLoaded,addError:e.addError})),d=React.useMemo(()=>getAttributeSchema(o?.type)??{},[o?.type]),p=getAttributeMeta(o?.type),g=React.useMemo(()=>o?.attributes??{},[o?.attributes]),u=React.useMemo(()=>getStyleAttributeKeySet(),[]),m=React.useMemo(()=>getStyleBagSourceAndValue(g),[g]),h=m.styleBag,f=React.useCallback(e=>{const t=d.styles;return!(!isPlainObject$1(t)||!(e in t))||u.has(e)},[d,u]),y=React.useMemo(()=>findLegacyFlatStyleKeys(g,f),[g,f]),b=React.useMemo(()=>!isValidStyleBagValue(g),[g]);React.useEffect(()=>{const e="style"===m.source;(0!==y.length||b||e)&&logger.warn("AttributesEditor","Legacy/unmigrated attributes detected. This editor expects schemaVersion=2 (style nested under attributes.styles). Please run migrations.",{componentType:o?.type,nodeKey:n.key,legacyFlatStyleKeys:y,hasInvalidStyleBag:b,styleBagSource:m.source})},[n,o?.type,b,y,m.source]);const C=React.useCallback(e=>f(e)?h?.[e]:g?.[e],[g,f,h]),x=React.useMemo(()=>i,[i]),v=React.useMemo(()=>"View"===o?.type?g:void 0,[g,o?.type]),S=React.useMemo(()=>({flexDirection:h?.flexDirection,alignItems:h?.alignItems,justifyContent:h?.justifyContent}),[h?.flexDirection,h?.alignItems,h?.justifyContent]),w=React.useMemo(()=>o?.type?getPatternByType(o.type):void 0,[o?.type]),k=w?.meta,T=k?.label??o?.type??"Component",_=k?.description,R="title"===w?.pattern?.title,O="description"===w?.pattern?.description,I=React.useMemo(()=>buildAttributesEditorEntries(d,p).filter(({type:e})=>"string"!=typeof e||"never"!==e),[p,d]),M=React.useMemo(()=>k?.hideAllAttributes?I.filter(({name:e})=>{const t=p?.[e];return!0===t?.forceVisible||!0===t?.override}):I,[p,k?.hideAllAttributes,I]),j=React.useMemo(()=>{const e=k?.mockableFeatures;return e&&"object"==typeof e?Object.entries(e).filter(([,e])=>!0===e).map(([e])=>e).filter(e=>"string"==typeof e&&e.trim().length>0).sort((e,t)=>e.localeCompare(t)):[]},[k?.mockableFeatures]),[P,E]=React.useState(null),L=React.useMemo(()=>{const e={style:[],container:[],other:[]},t={},i=e=>p?.[e]?.sort??Number.MAX_SAFE_INTEGER,r=(e,t)=>{const r=i(e.name)-i(t.name);return 0!==r?r:e.name.localeCompare(t.name)};return M.forEach(({name:i,type:r})=>{const n=p?.[i],o=n?.specialCategory;if("string"==typeof o){const e=o.trim();if(e)return t[e]||(t[e]=[]),void t[e].push({name:i,type:r})}const a=n?.category;e["style"===a?"style":"container"===a?"container":"other"].push({name:i,type:r})}),Object.values(e).forEach(e=>e.sort(r)),Object.values(t).forEach(e=>e.sort(r)),{grouped:e,specialGroups:t}},[p,M]),{grouped:z,specialGroups:D}=L,B=React.useMemo(()=>{const e={style:[],container:[],other:[]},t=(e,t)=>{const i=(e.meta?.sort??Number.MAX_SAFE_INTEGER)-(t.meta?.sort??Number.MAX_SAFE_INTEGER);return 0!==i?i:e.key.localeCompare(t.key)};return Object.entries(D).forEach(([t,i])=>{if(!i.length)return;const r=k?.specialCategories?.[t];e["style"===r?.category?"style":"container"===r?.category?"container":"other"].push({key:t,entries:i,meta:r})}),Object.keys(e).forEach(i=>{e[i].sort(t)}),e},[k?.specialCategories,D]),A=React.useMemo(()=>[{id:"container",label:"Container",entries:z.container},{id:"style",label:"Styles",entries:z.style},{id:"other",label:"Others",entries:z.other}],[z]),V=React.useMemo(()=>{const e={style:{baseCount:0,specialCount:0},container:{baseCount:0,specialCount:0},other:{baseCount:0,specialCount:0}};return A.forEach(t=>{e[t.id].baseCount=t.entries.length}),Object.keys(B).forEach(t=>{e[t].specialCount=B[t].reduce((e,t)=>e+t.entries.length,0)}),e},[B,A]),N=React.useMemo(()=>A.find(e=>{const t=V[e.id];return t.baseCount+t.specialCount>0})?.id??"other",[V,A]),[F,H]=React.useState(N);React.useEffect(()=>{H(e=>{const t=V[e];return t&&t.baseCount+t.specialCount>0?e:N})},[N,V]);const W=A.find(e=>e.id===F)?.entries??A.find(e=>e.id===N)?.entries??[],$=B[F]??[],U=React.useCallback((e,i)=>{const r={...n?.attributes??{}??{}};if(f(e)){const t={...isPlainObject$1(r.styles)?r.styles:isPlainObject$1(r.style)?r.style:{},[e]:i};r.styles=t,delete r.style,e in r&&delete r[e]}else if(r[e]=i,isPlainObject$1(r.styles)&&e in r.styles){const t={...r.styles};delete t[e],r.styles=Object.keys(t).length?t:void 0}const o={...n,attributes:r};t(o)},[n,f,t]),G=React.useCallback(e=>{const i={...n,children:e};t(i)},[n,t]),K=!!w?.pattern&&"string"===w.pattern.children,Y="string"==typeof n.children?n.children:"";return{isInvalidNode:r,baseData:n,data:o,projectFonts:a,loadedFonts:s,markFontLoaded:l,addError:c,schema:d,attributeMeta:p,componentTitle:T,componentDescription:_,patternForType:w,componentMeta:k,attributes:g,styleBag:h,projectColorsForPicker:x,viewAttributes:v,layoutContext:S,getAttributeValue:C,handleAttributeChange:U,handleChildrenChange:G,tabs:A,tabContentInfo:V,firstAvailableTab:N,activeTab:F,setActiveTab:H,activeEntries:W,specialSectionsByTab:B,activeSpecialSections:$,mockableFeatureKeys:j,activeMockableFeature:P,setActiveMockableFeature:E,hasTitleField:R,hasDescriptionField:O,hasStringChildren:K,childrenValue:Y}}function AttributesEditor(e){useLogRender("AttributesEditor");const t=useAttributesEditorModel(e),i=t.attributes?.title,r=t.hasTitleField,n=React.useRef(t.handleAttributeChange);return n.current=t.handleAttributeChange,React.useEffect(()=>{r&&"string"==typeof i&&i.length>20&&n.current("title",i.slice(0,20))},[r,i]),jsxRuntime.jsx(AttributesEditorView,{...t})}function deleteNodeFromTree(e,t){if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let i=!1;const r=[];for(const n of e){if(n===t){i=!0;continue}const e=deleteNodeFromTree(n,t);e!==n&&(i=!0),r.push(e)}return i?r:e}const i=e;if("children"in i){const r=i.children;if(!r)return e;if(Array.isArray(r)){let n=!1;const o=[];for(const e of r){if(e===t){n=!0;continue}const i=deleteNodeFromTree(e,t);i!==e&&(n=!0),o.push(i)}return n?{...i,children:o}:e}if(r===t)return{...i,children:""};const n=deleteNodeFromTree(r,t);if(n!==r)return{...i,children:n}}return e}function isNodeRecord(e){return null!=e&&"object"==typeof e&&!Array.isArray(e)}function findNodeByKey(e,t){if(!t)return null;if(null==e)return null;if("string"==typeof e)return null;if(Array.isArray(e)){for(const i of e){const e=findNodeByKey(i,t);if(e)return e}return null}const i=e;return i.key===t?i:i.children?findNodeByKey(i.children,t):null}function replaceNode(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=replaceNode(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>replaceNode(e,t,i)):replaceNode(e,t,i);if(n!==e)return{...r,children:n}}return e}function AttributesEditorPanel({attributes:e,onChange:t,projectColors:i}){useLogRender("AttributesEditorPanel");const{current:r,setCurrent:n}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent})),o=React.useRef(e);o.current=e;const a=React.useRef(r);a.current=r;const s=React.useRef(t);s.current=t;const l=React.useCallback(e=>{const t=o.current,i=a.current;if(!i)return;const r=replaceNode(t,i,e);s.current(r),n(e)},[n]);if(!r)return null;const c="object"==typeof r&&!Array.isArray(r)&&"key"in r?r.key:void 0,d=(c&&e?findNodeByKey(e,c):null)??r;return jsxRuntime.jsx("div",{className:"attributes-editor-panel",children:jsxRuntime.jsx(AttributesEditor,{node:d,onChange:l,projectColors:i},c??void 0)})}function Breadcrumb({items:e,separator:t="/",ariaLabel:i="Breadcrumb",onBack:r,backLabel:n="Back"}){return useLogRender("Breadcrumb"),jsxRuntime.jsxs("nav",{className:"breadcrumb","aria-label":i,children:[r&&jsxRuntime.jsxs("button",{type:"button",className:"breadcrumb__back",onClick:r,"aria-label":"Go back",children:[jsxRuntime.jsx("span",{className:"breadcrumb__back-icon","aria-hidden":!0,children:"←"}),jsxRuntime.jsx("span",{children:n})]}),jsxRuntime.jsx("ol",{className:"breadcrumb__list",children:e.map((i,r)=>{const n=r===e.length-1,o=!n&&(i.to||i.onClick);return jsxRuntime.jsxs("li",{className:"breadcrumb__item "+(o?"breadcrumb__item--clickable":""),onClick:o?i.onClick:void 0,role:o?"button":void 0,tabIndex:o?0:void 0,onKeyDown:o&&i.onClick?e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),i.onClick?.())}:void 0,children:[r>0&&jsxRuntime.jsx("span",{className:"breadcrumb__separator","aria-hidden":!0,children:t}),n||!i.to&&!i.onClick?jsxRuntime.jsx("span",{className:"breadcrumb__current","aria-current":"page",children:i.label}):jsxRuntime.jsx("span",{className:"breadcrumb__link",children:i.label})]},`${i.label}-${r}`)})})]})}function BuilderButton({node:e,onClick:t,onDelete:i,onMoveUp:r,onMoveDown:n,childrenCount:o,onMore:a}){const[s,l]=React.useState(!1),c=React.useRef(null),d=React.useMemo(()=>`builder-node-actions-${Math.random().toString(36).slice(2,9)}`,[]);if(React.useEffect(()=>{if(!s)return;const e=e=>{const t=c.current;t&&(e.target instanceof Element&&t.contains(e.target)||l(!1))},t=e=>{"Escape"===e.key&&l(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("keydown",t)}},[s]),isNodeNullOrUndefined(e))return jsxRuntime.jsx("div",{className:"builder__placeholder",children:"Null or undefined"});if(isNodeString(e))return jsxRuntime.jsx("div",{className:"builder__text",children:e});const p=e;let g="";p.attributes?.condition&&(g=`${p.attributes.condition} ${p.attributes.conditionVariable??""}`.trim());const u=getPatternByType(p.type)?.meta?.label?.trim(),m=u&&u.length>0?u:p.type,h=g.trim()?g:"",f="string"==typeof p.attributes?.title?p.attributes.title.trim():"",y=f.length>0,b=y?f:m,C=y||h.length>0||"number"==typeof o;return jsxRuntime.jsxs("div",{className:"builder__button",children:[(r||n)&&jsxRuntime.jsxs("div",{className:"builder__sort-controls",children:[jsxRuntime.jsx("button",{type:"button",className:"builder__sort-button",onClick:e=>{e.stopPropagation(),r?.()},disabled:!r,"aria-label":"Move up",children:"↑"}),jsxRuntime.jsx("button",{type:"button",className:"builder__sort-button",onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":"Move down",children:"↓"})]}),jsxRuntime.jsx("button",{type:"button",className:"builder__button-link",onClick:t,children:b}),jsxRuntime.jsxs("div",{className:"builder__button-actions",ref:c,children:[jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-trigger","aria-label":"Open node actions","aria-haspopup":"menu","aria-expanded":s,"aria-controls":d,onClick:e=>{e.stopPropagation(),l(e=>!e)},children:jsxRuntime.jsx(Icon,{iconType:"chevron-right",size:16})}),s&&jsxRuntime.jsxs("ul",{id:d,className:"builder__button-actions-menu",role:"menu","aria-label":"Node actions",children:[a?jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-item",role:"menuitem",onClick:e=>{e.stopPropagation(),a(),l(!1)},children:"More"})}):null,jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-item builder__button-actions-item--danger",role:"menuitem",disabled:!i,onClick:t=>{if(t.stopPropagation(),!i)return;window.confirm("Do you want to delete?")&&(i&&(isNodeNullOrUndefined(e)||isNodeString(e)||i(e)),l(!1))},children:"Delete"})})]})]}),C&&jsxRuntime.jsxs("span",{className:"builder__button-condition",children:[y||h.length>0?jsxRuntime.jsx("span",{className:"builder__button-condition-text",children:y?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("small",{children:m}),h?` · ${h}`:""]}):h}):jsxRuntime.jsx("span",{className:"builder__button-condition-text"}),"number"==typeof o?jsxRuntime.jsxs("span",{className:"builder__button-children-count",children:[o," children"]}):null]})]})}function BuilderTreeNode({node:e,depthRemaining:t,onClick:i,onDelete:r,onMoveUp:n,onMoveDown:o}){const a=getNodeChildren(e),s=a.length>0,l=s&&t<=0?a.length:void 0,c=s&&t<=0?()=>i(e):void 0,d=jsxRuntime.jsx(BuilderButton,{onClick:()=>{i(e)},node:e,onDelete:r,onMoveUp:n,onMoveDown:o,childrenCount:l,onMore:c});return s?t<=0?jsxRuntime.jsx("div",{className:"builder__children",children:d}):jsxRuntime.jsxs("div",{className:"builder__children",children:[d,a.map((e,n)=>jsxRuntime.jsx(BuilderTreeNode,{node:e,depthRemaining:t-1,onClick:i,onDelete:r},n))]}):d}function BuilderComponent({node:e,onClick:t,onAdd:i,onDelete:r,onReorder:n,onMoveChildUp:o,onMoveChildDown:a,maxNestedDepth:s}){if(isNodeString(e))return jsxRuntime.jsxs("div",{className:"builder__text",children:[e," (Please define a node)"]});const l=i&&jsxRuntime.jsxs("button",{type:"button",className:"editor-button builder__add-button",onClick:i,children:[jsxRuntime.jsx("span",{className:"builder__add-button-icon","aria-hidden":"true",children:"+"}),jsxRuntime.jsx("span",{children:"Add component"})]});if(isNodeArray(e)){const i=e,o=Math.max(0,Number.isFinite(s)&&(s??0)>0?Math.floor(s??1)-1:4),a=(e,t)=>{if(!n)return;const r=e+t;if(r<0||r>=i.length)return;const o=[...i],[a]=o.splice(e,1);o.splice(r,0,a),n(i,o)};return jsxRuntime.jsxs("div",{className:"builder__list",children:[i.map((e,s)=>jsxRuntime.jsx("div",{className:"builder__list-item",children:jsxRuntime.jsx(BuilderTreeNode,{node:e,depthRemaining:o,onClick:t,onDelete:r,onMoveUp:n&&s>0?()=>a(s,-1):void 0,onMoveDown:n&&s<i.length-1?()=>a(s,1):void 0})},s)),l]})}const c=e,d=c?.children,p=isNodeArray(d),g=d?p?d:[d]:null,u=Math.max(0,Number.isFinite(s)&&(s??0)>0?Math.floor(s??1)-1:4);return jsxRuntime.jsxs("div",{className:"builder__node",children:[jsxRuntime.jsxs("div",{className:"builder__children",children:[jsxRuntime.jsx(BuilderButton,{onClick:()=>{t(e)},node:e,onDelete:r}),g&&g.map((i,n)=>jsxRuntime.jsx(BuilderTreeNode,{node:i,depthRemaining:u,onClick:t,onDelete:r,onMoveUp:o&&p&&n>0?()=>o(e,n):void 0,onMoveDown:a&&p&&n<g.length-1?()=>a(e,n):void 0},n))]}),l]})}function Builder({data:e,setData:t,current:i,setCurrent:r,onDeleteNode:n}){useLogRender("Builder");const[o,a]=React.useState(!1),s=useRenderStore(e=>e.listMaxNested),l=React.useMemo(()=>collectNodeKeys(e),[e]),c=Number.isFinite(s)&&s>0?Math.floor(s):5,d=React.useMemo(()=>{const t=findNodePath(e,i);return t.length?t:isNodeNullOrUndefined(i)?isNodeNullOrUndefined(e)?[]:[e]:[i]},[e,i]),p=React.useCallback(e=>{r(e)},[r]),g=React.useMemo(()=>d.map((e,t)=>({label:getNodeLabel(e),onClick:t===d.length-1?void 0:()=>p(e)})),[d,p]),u=React.useCallback(()=>{d.length<2||p(d[d.length-2])},[d,p]),m=React.useCallback(n=>{const o=T(n,new Set(l));if(isNodeNullOrUndefined(i)){if(isNodeNullOrUndefined(e)||isNodeString(e))return t(o),void r(o);if(Array.isArray(e)){const i=[...e,o];return t(i),void r(i)}const i=e,n={...i,children:appendChild(i.children,o)};return t(n),void r(n)}if(isNodeArray(i)){const n=[...i,o],a=k(e,i,n);return t(a),void r(n)}if(isNodeString(i))return void(i===e&&(t(o),r(o)));const a=i,s={...a,children:appendChild(a.children,o)},c=k(e,i,s);t(c),r(s)},[i,e,t,r,l]),h=React.useMemo(()=>function(t){if(isNodeNullOrUndefined(t))return[...allcomponentNames];if(isNodeArray(t)&&0===t.length)return[...allcomponentNames];if(isNodeString(t))return t===e?[...allcomponentNames]:[];const i=t.type;if("OnboardButtons"===i)return["OnboardButton"];const r=getPatternByType(i)?.pattern?.children;if(!r)return[];if("never"===r||"string"===r)return[];if("node"===r||Array.isArray(r)&&r.includes("node"))return[...allcomponentNames];if("string"==typeof r)return[r];return[]}(i),[i]),f=React.useMemo(()=>isNodeNullOrUndefined(i)||isNodeString(i)||isNodeArray(i)?null:i.type??null,[i]),y=h.length>0||null==e||Array.isArray(e)&&0===e.length,b=React.useCallback(()=>{y&&a(!0)},[y]),C=React.useCallback(()=>{a(!1)},[]),x=React.useCallback(e=>{m(e),a(!1)},[m]),v=React.useCallback((n,o)=>{const a=k(e,n,o);t(a),i===n&&r(o)},[i,e,r,t]),S=React.useCallback((n,o)=>{if(isNodeNullOrUndefined(n)||isNodeString(n)||isNodeArray(n))return;const a=n,s=a.children;if(!Array.isArray(s))return;if(o<=0||o>=s.length)return;const l=[...s],[c]=l.splice(o,1);l.splice(o-1,0,c);const d={...a,children:l},p=k(e,n,d);t(p),i===n&&r(d)},[i,e,r,t]),w=React.useCallback((n,o)=>{if(isNodeNullOrUndefined(n)||isNodeString(n)||isNodeArray(n))return;const a=n,s=a.children;if(!Array.isArray(s))return;if(o<0||o>=s.length-1)return;const l=[...s],[c]=l.splice(o,1);l.splice(o+1,0,c);const d={...a,children:l},p=k(e,n,d);t(p),i===n&&r(d)},[i,e,r,t]);function k(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=k(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>k(e,t,i)):k(e,t,i);if(n!==e)return{...r,children:n}}return e}function T(e,t){const i=getPatternByType(e)?.pattern,r=getDefaultsForType(e)??{},n=i?.children;let o="";do{o=generateRandomKeyForNode(e)}while(t.has(o));if(t.add(o),"CarouselProvider"===e)return{type:e,key:o,children:T("Carousel",t),attributes:{...r}};let a=null;return a="never"===n?null:"string"===n?"":"node"===n||Array.isArray(n)&&n.includes("node")?null:"string"==typeof n?[T(n,t)]:null,{type:e,key:o,children:a,attributes:{...r}}}return jsxRuntime.jsxs("div",{className:"builder",children:[jsxRuntime.jsx(Breadcrumb,{items:g,onBack:d.length>1?u:void 0}),jsxRuntime.jsx(BuilderComponent,{onClick:p,onAdd:y?b:void 0,onDelete:n,onReorder:v,onMoveChildUp:S,onMoveChildDown:w,maxNestedDepth:c,node:i}),o&&jsxRuntime.jsx(AddComponentModal,{allowedChildTypes:h,parentType:f,onSelect:x,onClose:C})]})}function appendChild(e,t){return Array.isArray(e)?[...e,t]:null==e||"string"==typeof e?[t]:[e,t]}function getNodeChildren(e){if(isNodeNullOrUndefined(e)||isNodeString(e)||isNodeArray(e))return[];const t=e.children;return t?Array.isArray(t)?t:[t]:[]}function getNodeLabel(e){if(isNodeNullOrUndefined(e))return"Empty";if(isNodeString(e))return e;if(isNodeArray(e))return"Collection";const t=e,i=t.attributes?.title;return"string"==typeof i&&i.trim().length>0?i:t.type??"Node"}function findNodePath(e,t){if(null==e)return[];if(e===t)return[e];if("string"==typeof e)return[];if(Array.isArray(e)){for(const i of e){const e=findNodePath(i,t);if(e.length)return e}return[]}const i=e.children;if(!i)return[];const r=Array.isArray(i)?i:[i];for(const i of r){const r=findNodePath(i,t);if(r.length)return[e,...r]}return[]}function BuilderPanel({data:e,setData:t,onDeleteNode:i}){useLogRender("BuilderPanel");const{current:r,setCurrent:n}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent}));return jsxRuntime.jsx("div",{role:"region",className:"editor-panel-builder editor-panel editor-panel--active","aria-hidden":!1,children:jsxRuntime.jsx(Builder,{data:e,setData:t,current:r,setCurrent:n,onDeleteNode:i})})}function isFn(e){return"function"==typeof e}function safeStringify(e){try{const t=new WeakSet;return JSON.stringify(e,(e,i)=>{if("function"==typeof i){const e=i.name;return`[Function${e?`: ${e}`:""}]`}if("bigint"==typeof i)return i.toString();if(i instanceof Error)return{name:i.name,message:i.message,stack:i.stack};if(i instanceof Map)return{__type:"Map",entries:Array.from(i.entries())};if(i instanceof Set)return{__type:"Set",values:Array.from(i.values())};if("object"==typeof i&&null!==i){if(t.has(i))return"[Circular]";t.add(i)}return i},2)}catch(e){return`<< Unable to stringify value: ${String(e)} >>`}}function safeParseJson(e){if("string"!=typeof e||!e.trim())return null;try{return JSON.parse(e)}catch{return null}}function safeGetPersistedRenderStore(){try{return"undefined"==typeof localStorage?null:localStorage.getItem("render-store")}catch(e){return{error:String(e)}}}function logRenderStore(e={}){const{label:t,includeLocalStorage:i=!0,extra:r}=e,n=useRenderStore.getState(),o=Object.keys(n).sort(),a={},s=[];for(const e of o){const t=n[e];isFn(t)?s.push(e):a[e]=t}const l="[RB Debug] Render store"+(t?` (${t})`:""),c=console.groupCollapsed,d=console.groupEnd;isFn(c)?c(l):console.info(l);const p=i?safeGetPersistedRenderStore():null,g=i?safeParseJson(p):null,u=safeStringify({snapshot:a,actions:s,extra:r??null,persisted:i?{raw:p,parsed:g}:null});console.info("json",u),console.info("state",a),console.info("actions",s),i&&console.info("localStorage.render-store (raw)",p),r&&console.info("extra",r),isFn(d)&&d()}function DebugJsonPage({data:e,setData:t,project:i,onClose:r,title:n="Debug JSON",description:o,previewMode:a,setPreviewMode:s,logLabel:l}){const c=useRenderStore(e=>e.setCurrent),d=useRenderStore(e=>e.listMaxNested),p=useRenderStore(e=>e.setListMaxNested),g=useRenderStore(e=>e.theme),u=useRenderStore(e=>e.setTheme),m=useRenderStore(e=>e.isRtl),h=useRenderStore(e=>e.setIsRtl),[f,y]=React.useState(String(d)),b="function"==typeof s,C=e=>(e=>"object"==typeof e&&null!==e&&!Array.isArray(e))(e)&&"data"in e?e.data:e;function x(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function v(e){if(isNodeNullOrUndefined(e)||isNodeString(e))return e;if(isNodeArray(e)){return e.map(e=>v(e))}if(!x(e))return e;const t=e,i=v(t.children);if(!x(t.attributes))return{...t,children:i};const r={...t.attributes};return"style"in r&&x(r.style)&&(r.styles=r.style,delete r.style),{...t,children:i,attributes:r}}const S=React.useMemo(()=>function e(t){if(isNodeNullOrUndefined(t)||isNodeString(t))return!1;if(isNodeArray(t)){return t.some(e)}if(!x(t))return!1;const i=t;return!(!x(i.attributes)||!("style"in i.attributes))||e(i.children)}(e),[e]);React.useEffect(()=>{y(String(d))},[d]),React.useEffect(()=>{const e=window.setTimeout(()=>{const e=Number.parseInt(f,10);!Number.isFinite(e)||e<=0||p(e)},300);return()=>window.clearTimeout(e)},[f,p]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"modal__header localication-modal__header",children:[jsxRuntime.jsxs("div",{className:"localication-modal__header-main",children:[jsxRuntime.jsx("h3",{id:"debug-json-editor-title",className:"modal__title",children:n}),o?jsxRuntime.jsx("p",{className:"localication-modal__description",children:o}):null]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",title:"Log render store to console",onClick:()=>logRenderStore({label:l,extra:{project:i??null,projectData:e??null}}),children:"Log store"}),S?jsxRuntime.jsx("button",{type:"button",className:"editor-button",title:"Migrate attributes.style to attributes.styles (schemaVersion=2)",onClick:()=>{if(!e)return;const i=v(e);t(i),c(i)},children:"Fix style → styles"}):null,r?jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>r(),children:"Close"}):null]}),jsxRuntime.jsxs("div",{className:"localication-modal__body",children:[jsxRuntime.jsxs("div",{className:"localication-modal__controls",children:[b?jsxRuntime.jsx(Checkbox,{label:"Preview mode",checked:Boolean(a),onChange:s}):null,jsxRuntime.jsx(Checkbox,{label:"Dark Mode",checked:"dark"===g,onChange:e=>u(e?"dark":"light")}),jsxRuntime.jsx(Checkbox,{label:"Is RTL",checked:m,onChange:h})]}),jsxRuntime.jsxs("div",{className:"localication-modal__controls",children:[jsxRuntime.jsx("label",{children:"List max nested depth"}),jsxRuntime.jsx("input",{type:"number",min:1,className:"input",value:f,onChange:e=>y(e.target.value)})]}),jsxRuntime.jsx("div",{className:"localication-modal__editor",children:jsxRuntime.jsx(JsonTextEditor,{rootName:"node",value:e??{},onChange:e=>{const i=analyseAndProccess(C(e));t(i),c(i)},className:"localication-modal__json-editor"})})]})]})}function BottomBar({className:e,data:t,setData:i,project:r}){const{localization:n,setLocalization:o,theme:a,setTheme:s,defaultLanguage:l,setDefaultLanguage:c,previewMode:d,setPreviewMode:p,setIsRtl:g,languageColumns:u}=useRenderStore(e=>({localization:e.localization,setLocalization:e.setLocalization,theme:e.theme,setTheme:e.setTheme,defaultLanguage:e.defaultLanguage,setDefaultLanguage:e.setDefaultLanguage,previewMode:e.previewMode,setPreviewMode:e.setPreviewMode,setIsRtl:e.setIsRtl,languageColumns:e.languageColumns})),[m,h]=React.useState(!1),[f,y]=React.useState(!1),[b,C]=React.useState(!1),[x,v]=React.useState(!1),[S,w]=React.useState(!1),k=React.useRef(),T=React.useMemo(()=>{if(u.length>0)return u;return Object.keys(n??{}).map(e=>({id:0,code:e.toUpperCase(),title:e,iso_code:e.toUpperCase(),is_right_alignment:!1}))},[u,n]),_=l,R=React.useCallback(e=>{const t=e.code.toLowerCase();c(t),g(e.is_right_alignment),w(!1)},[c,g]),O="dark"===a,I=d,M=O?"moon-bold":"sun";return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:["rb-bottom-bar",e].filter(Boolean).join(" "),children:[jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(O?" is-active":""),"aria-label":"Theme","aria-pressed":O,onClick:()=>s("dark"===a?"light":"dark"),children:jsxRuntime.jsx(Icon,{iconType:M,size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button rb-bottom-bar__button--preview"+(I?" is-active":""),"aria-label":"Magic cursor tool","aria-pressed":I,onClick:()=>p(!d),children:jsxRuntime.jsx(Icon,{iconType:"magicpen",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(m?" is-active":""),"aria-label":"Debug","aria-pressed":m,onClick:()=>h(!0),children:jsxRuntime.jsx(Icon,{iconType:"speedometer-03",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(f?" is-active":""),"aria-label":"Localization","aria-pressed":f,onClick:()=>y(!0),children:jsxRuntime.jsx(Icon,{iconType:"globe-01",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(b?" is-active":""),"aria-label":"Inspect","aria-pressed":b,onClick:()=>C(!0),children:jsxRuntime.jsx(Icon,{iconType:"info-circle",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(x?" is-active":""),"aria-label":"Prompt Manager","aria-pressed":x,onClick:()=>v(!0),children:jsxRuntime.jsx(Icon,{iconType:"star",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("div",{className:"rb-bottom-bar__spacer"}),jsxRuntime.jsxs("div",{className:"rb-bottom-bar__lang-selector",onMouseEnter:()=>{k.current&&clearTimeout(k.current),w(!0)},onMouseLeave:()=>{k.current=setTimeout(()=>w(!1),200)},style:{position:"relative"},children:[jsxRuntime.jsxs("button",{type:"button",className:"rb-bottom-bar__lang is-active",style:{display:"flex",alignItems:"center",gap:4},children:[_.toUpperCase(),jsxRuntime.jsx("span",{style:{fontSize:8,opacity:.6},children:"▲"})]}),S&&T.length>0&&jsxRuntime.jsx("div",{className:"rb-bottom-bar__lang-dropdown",style:{position:"absolute",bottom:"100%",right:0,marginBottom:4,background:"var(--rb-bg-secondary, #2a2a2a)",border:"1px solid var(--rb-border, #444)",borderRadius:6,padding:"4px 0",minWidth:150,maxHeight:260,overflowY:"auto",boxShadow:"0 -4px 16px rgba(0,0,0,0.3)",zIndex:100},children:T.map(e=>{const t=e.code.toLowerCase()===_.toLowerCase();return jsxRuntime.jsxs("button",{type:"button",onClick:()=>R(e),style:{display:"flex",alignItems:"center",gap:6,width:"100%",padding:"5px 10px",border:"none",background:t?"var(--rb-accent, #6366f1)":"transparent",color:t?"#fff":"var(--rb-text-primary, #e0e0e0)",cursor:"pointer",fontSize:12,textAlign:"left"},onMouseEnter:e=>{t||(e.currentTarget.style.background="var(--rb-bg-hover, #333)")},onMouseLeave:e=>{t||(e.currentTarget.style.background="transparent")},children:[jsxRuntime.jsx("span",{style:{fontWeight:600,width:24,flexShrink:0},children:e.code}),jsxRuntime.jsx("span",{style:{opacity:.7,flex:1},children:e.title}),e.is_right_alignment&&jsxRuntime.jsx("span",{style:{fontSize:9,opacity:.5,flexShrink:0},children:"RTL"})]},e.code)})})]})]}),f&&jsxRuntime.jsx(LocalicationModal,{data:n??{},onChange:e=>{o(e)},onClose:()=>y(!1)}),m&&jsxRuntime.jsx(Modal,{onClose:()=>h(!1),ariaLabelledBy:"debug-json-editor-title",className:"modal--large modal--scrollable",contentClassName:"localication-modal__content",children:jsxRuntime.jsx(DebugJsonPage,{project:r,data:t,setData:i,onClose:()=>h(!1),description:"Inspect and edit raw node JSON.",previewMode:d,setPreviewMode:p,logLabel:"BottomBar Debug JSON"})}),b&&jsxRuntime.jsx(InspectModal,{onClose:()=>C(!1)}),x&&jsxRuntime.jsx(PromptManagerModal,{data:t,setData:i,onClose:()=>v(!1)})]})}var v="5.6.10",fr=30,ip=30,op=210,w=800,h=600,nm="合成 1",ddd=0,assets=[{id:"comp_0",layers:[{ddd:0,ind:1,ty:4,nm:"形状图层 18",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:340,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:30,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"形状图层 17",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:320,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:10,s:[0]},{t:40,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:10,bm:0},{ddd:0,ind:3,ty:4,nm:"形状图层 16",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:300,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:20,s:[0]},{t:50,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:20,bm:0},{ddd:0,ind:4,ty:4,nm:"形状图层 15",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:280,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:30,s:[0]},{t:60,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:30,bm:0},{ddd:0,ind:5,ty:4,nm:"形状图层 14",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:260,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:40,s:[0]},{t:70,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:40,bm:0},{ddd:0,ind:6,ty:4,nm:"形状图层 13",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:240,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:50,s:[0]},{t:80,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:50,bm:0},{ddd:0,ind:7,ty:4,nm:"形状图层 12",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:220,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:60,s:[0]},{t:90,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:60,bm:0},{ddd:0,ind:8,ty:4,nm:"形状图层 11",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:200,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:70,s:[0]},{t:100,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:70,bm:0},{ddd:0,ind:9,ty:4,nm:"形状图层 10",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:180,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:80,s:[0]},{t:110,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:80,bm:0},{ddd:0,ind:10,ty:4,nm:"形状图层 9",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:160,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:90,s:[0]},{t:120,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:90,bm:0},{ddd:0,ind:11,ty:4,nm:"形状图层 8",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:140,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:100,s:[0]},{t:130,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:100,bm:0},{ddd:0,ind:12,ty:4,nm:"形状图层 7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:120,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:110,s:[0]},{t:140,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:110,bm:0},{ddd:0,ind:13,ty:4,nm:"形状图层 6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:100,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:120,s:[0]},{t:150,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:420,st:120,bm:0},{ddd:0,ind:14,ty:4,nm:"形状图层 5",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:80,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:130,s:[0]},{t:160,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:430,st:130,bm:0},{ddd:0,ind:15,ty:4,nm:"形状图层 4",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:60,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:140,s:[0]},{t:170,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:440,st:140,bm:0},{ddd:0,ind:16,ty:4,nm:"形状图层 3",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:40,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:150,s:[0]},{t:180,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:450,st:150,bm:0},{ddd:0,ind:17,ty:4,nm:"形状图层 2",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:20,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:160,s:[0]},{t:190,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:460,st:160,bm:0},{ddd:0,ind:18,ty:4,nm:"形状图层 1",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:170,s:[0]},{t:200,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:470,st:170,bm:0},{ddd:0,ind:19,ty:4,nm:"形状图层 24",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:340,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:180,s:[0]},{t:210,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:180,bm:0},{ddd:0,ind:20,ty:4,nm:"形状图层 23",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:320,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:190,s:[0]},{t:220,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:190,bm:0},{ddd:0,ind:21,ty:4,nm:"形状图层 22",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:300,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:200,s:[0]},{t:230,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:200,bm:0},{ddd:0,ind:22,ty:4,nm:"形状图层 21",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:280,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:210,s:[0]},{t:240,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:210,bm:0},{ddd:0,ind:23,ty:4,nm:"形状图层 20",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:260,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:220,s:[0]},{t:250,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:220,bm:0},{ddd:0,ind:24,ty:4,nm:"形状图层 19",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:240,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:230,s:[0]},{t:260,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:230,bm:0}]}],layers=[{ddd:0,ind:1,ty:0,nm:"预合成 1",refId:"comp_0",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[400,300,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,ef:[{ty:5,nm:"简单阻塞工具",np:4,mn:"ADBE Simple Choker",ix:1,en:1,ef:[{ty:7,nm:"视图",mn:"ADBE Simple Choker-0001",ix:1,v:{a:0,k:1,ix:1}},{ty:0,nm:"阻塞遮罩",mn:"ADBE Simple Choker-0002",ix:2,v:{a:0,k:14,ix:2}}]},{ty:5,nm:"梯度渐变",np:10,mn:"ADBE Ramp",ix:2,en:1,ef:[{ty:3,nm:"渐变起点",mn:"ADBE Ramp-0001",ix:1,v:{a:0,k:[400,0],ix:1}},{ty:2,nm:"起始颜色",mn:"ADBE Ramp-0002",ix:2,v:{a:0,k:[.263066768646,1,.867243647575,1],ix:2}},{ty:3,nm:"渐变终点",mn:"ADBE Ramp-0003",ix:3,v:{a:0,k:[400,600],ix:3}},{ty:2,nm:"结束颜色",mn:"ADBE Ramp-0004",ix:4,v:{a:0,k:[.354580283165,1,.820018112659,1],ix:4}},{ty:7,nm:"渐变形状",mn:"ADBE Ramp-0005",ix:5,v:{a:0,k:1,ix:5}},{ty:0,nm:"渐变散射",mn:"ADBE Ramp-0006",ix:6,v:{a:0,k:0,ix:6}},{ty:0,nm:"与原始图像混合",mn:"ADBE Ramp-0007",ix:7,v:{a:0,k:0,ix:7}},{ty:6,nm:"",mn:"ADBE Ramp-0008",ix:8,v:0}]}],w:800,h:600,ip:0,op:300,st:0,bm:0},{ddd:0,ind:2,ty:0,nm:"预合成 1",refId:"comp_0",sr:1,ks:{o:{a:0,k:56,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,320,0],ix:2},a:{a:0,k:[400,300,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,ef:[{ty:5,nm:"简单阻塞工具",np:4,mn:"ADBE Simple Choker",ix:1,en:1,ef:[{ty:7,nm:"视图",mn:"ADBE Simple Choker-0001",ix:1,v:{a:0,k:1,ix:1}},{ty:0,nm:"阻塞遮罩",mn:"ADBE Simple Choker-0002",ix:2,v:{a:0,k:14,ix:2}}]},{ty:5,nm:"梯度渐变",np:10,mn:"ADBE Ramp",ix:2,en:1,ef:[{ty:3,nm:"渐变起点",mn:"ADBE Ramp-0001",ix:1,v:{a:0,k:[400,0],ix:1}},{ty:2,nm:"起始颜色",mn:"ADBE Ramp-0002",ix:2,v:{a:0,k:[.263066768646,1,.867243647575,1],ix:2}},{ty:3,nm:"渐变终点",mn:"ADBE Ramp-0003",ix:3,v:{a:0,k:[400,600],ix:3}},{ty:2,nm:"结束颜色",mn:"ADBE Ramp-0004",ix:4,v:{a:0,k:[.354580283165,1,.820018112659,1],ix:4}},{ty:7,nm:"渐变形状",mn:"ADBE Ramp-0005",ix:5,v:{a:0,k:1,ix:5}},{ty:0,nm:"渐变散射",mn:"ADBE Ramp-0006",ix:6,v:{a:0,k:0,ix:6}},{ty:0,nm:"与原始图像混合",mn:"ADBE Ramp-0007",ix:7,v:{a:0,k:0,ix:7}},{ty:6,nm:"",mn:"ADBE Ramp-0008",ix:8,v:0}]},{ty:29,nm:"高斯模糊",np:5,mn:"ADBE Gaussian Blur 2",ix:3,en:1,ef:[{ty:0,nm:"模糊度",mn:"ADBE Gaussian Blur 2-0001",ix:1,v:{a:0,k:41.3,ix:1}},{ty:7,nm:"模糊方向",mn:"ADBE Gaussian Blur 2-0002",ix:2,v:{a:0,k:1,ix:2}},{ty:7,nm:"重复边缘像素",mn:"ADBE Gaussian Blur 2-0003",ix:3,v:{a:0,k:0,ix:3}}]}],w:800,h:600,ip:0,op:300,st:0,bm:0}],markers=[],loadingAnimation={v:v,fr:fr,ip:ip,op:op,w:w,h:h,nm:nm,ddd:ddd,assets:assets,layers:layers,markers:markers};function LoadingComponent(){return jsxRuntime.jsx("div",{className:"rb-loading",children:jsxRuntime.jsx(Lottie,{animationData:loadingAnimation,loop:!0,autoplay:!0})})}function useSyncHtmlThemeClass(){const e=useRenderStore(e=>e.theme);React.useEffect(()=>{if("undefined"==typeof document)return;const t=document.documentElement;t.classList.toggle("dark","dark"===e),t.classList.toggle("light","light"===e)},[e])}function safeJsonStringify(e){try{const t=new WeakSet;return JSON.stringify(e,(e,i)=>{if("object"==typeof i&&null!==i){if(t.has(i))return"[Circular]";t.add(i)}return i},2)}catch(e){return`<< Unable to stringify value: ${String(e)} >>`}}async function copyTextToClipboard(e){try{if("undefined"!=typeof navigator&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}try{if("undefined"==typeof document)return!1;const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly","true"),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();const i=document.execCommand("copy");return document.body.removeChild(t),i}catch{return!1}}function parseValidationPrefix(e){const t=e.indexOf(": ");if(t<=0)return{reason:e};const i=e.slice(0,t),r=e.slice(t+2);return i.startsWith("root")?{path:i,reason:r}:{reason:e}}function isObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function extractNodeFromRawData(e){if(isObject(e)){if("string"==typeof e.type&&e.type.trim())return e;const t=e.data;if(isObject(t)&&"string"==typeof t.type&&t.type.trim())return t}return e}function getNodeType(e){if(!isObject(e))return null;const t=e.type;return"string"==typeof t&&t?t:null}function getFirstComponentFromReactStack(e){if(!e)return null;const t=e.match(/\bat\s+([A-Za-z0-9_$]+)/);return t?.[1]??null}function resolveNodeTypeAtPath(e,t){if(!t||!t.startsWith("root"))return{};let i=e,r=getNodeType(i),n=r?"root":null;const o="root"===t?"":t.replace(/^root\.?/,""),a=/([A-Za-z0-9_$]+)|\[(\d+)\]/g;let s,l="root";for(;s=a.exec(o);){const e=s[1],t=s[2];e?(l=`${l}.${e}`,i=isObject(i)?i[e]:void 0):null!=t&&(l=`${l}[${t}]`,i=Array.isArray(i)?i[Number(t)]:void 0);const o=getNodeType(i);o&&(r=o,n=l)}return r?{nodeType:r,nodePath:n??void 0}:{}}function ProjectDebug({name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,belowName:s,jsonEditor:l}){useSyncHtmlThemeClass();const[c,d]=React.useState(null),[p,g]=React.useState("idle"),[u,m]=React.useState("idle"),h=React.useMemo(()=>safeJsonStringify(t),[t]),f=l?l.value:h,y=React.useMemo(()=>extractNodeFromRawData(t),[t]),b=y,C=React.useMemo(()=>getNodeType(y),[y]),x=React.useMemo(()=>parseValidationPrefix(i),[i]),v=React.useMemo(()=>resolveNodeTypeAtPath(y,x.path),[y,x.path]),S=React.useMemo(()=>{const e=[];return e.push(x.reason),C&&e.push(`Root component: ${C}`),x.path&&e.push(`Path: ${x.path}`),v.nodeType&&e.push(`Component at path: ${v.nodeType}${v.nodePath?` (${v.nodePath})`:""}`),e.join("\n")},[x.reason,x.path,C,v.nodeType,v.nodePath]),w=React.useMemo(()=>{if(!c)return null;const e=[];return e.push(c.message),C&&e.push(`Root component: ${C}`),c.componentStack&&e.push(`Component (from React stack): ${getFirstComponentFromReactStack(c.componentStack)??"unknown"}`),e.join("\n")},[c,C]),k=React.useMemo(()=>{const e=[];return e.push("=== Validation ==="),e.push(S),r&&(e.push(""),e.push(r)),c&&(e.push(""),e.push("=== Render ==="),w&&e.push(w),c.stack&&(e.push(""),e.push(c.stack)),c.componentStack&&(e.push(""),e.push(c.componentStack))),e.join("\n")},[c,w,r,S]);return jsxRuntime.jsxs("div",{className:"rb-project-debug",children:[jsxRuntime.jsxs("section",{className:"rb-project-debug__json","aria-label":"Debug JSON",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__meta",children:jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("span",{className:"rb-project-debug__meta-label",children:"Name:"})," ",e]})}),jsxRuntime.jsxs("div",{className:"rb-project-debug__toolbar",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{await copyTextToClipboard(f)&&(g("copied"),window.setTimeout(()=>g("idle"),900))},children:"copied"===p?"Copied JSON":"Copy JSON"}),l?.onSave&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:l.saveDisabled,onClick:()=>l.onSave?.(),children:l.saveLabel??"Save"})]}),s&&jsxRuntime.jsx("div",{className:"rb-project-debug__below-name",children:s}),l?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("textarea",{className:"rb-project-debug__code-editor",value:l.value,onChange:e=>l.onChange(e.target.value),spellCheck:!1,"aria-label":"Edit JSON"}),l.error?jsxRuntime.jsx("div",{className:"rb-project-debug__json-error",role:"alert",children:l.error}):null]}):jsxRuntime.jsx("pre",{className:"rb-project-debug__code",tabIndex:0,children:h})]}),jsxRuntime.jsx("section",{className:"rb-project-debug__preview","aria-label":"Preview",style:{"--rb-canvas-bg":a??"none"},children:jsxRuntime.jsx(RenderErrorBoundary,{subtitle:"caught by ProjectDebug preview",onError:(e,t)=>d({message:e?.message??String(e),stack:e?.stack,componentStack:t}),children:jsxRuntime.jsx(RenderPage,{data:b,name:e,params:{mockProducts:n,mockBenefits:o}})})}),jsxRuntime.jsxs("section",{className:"rb-project-debug__error","aria-label":"Errors",children:[jsxRuntime.jsxs("div",{className:"rb-project-debug__error-head",children:[jsxRuntime.jsx("h2",{className:"rb-project-debug__title",children:"Errors"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{await copyTextToClipboard(k)&&(m("copied"),window.setTimeout(()=>m("idle"),900))},children:"copied"===u?"Copied":"Copy"})]}),jsxRuntime.jsxs("div",{className:"rb-project-debug__error-block",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__error-label",children:"Validation"}),jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:S}),r&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:r})]}),c&&jsxRuntime.jsxs("div",{className:"rb-project-debug__error-block",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__error-label",children:"Render"}),jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:w}),c.stack&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:c.stack}),c.componentStack&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:c.componentStack})]})]})]})}function ProjectValidationPage({name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,belowName:s,onContinueWithoutValidation:l,onSaveEditedRawData:c}){const[d,p]=React.useState(()=>safeJsonStringify(t)),[g,u]=React.useState(null);return React.useEffect(()=>{p(safeJsonStringify(t)),u(null)},[t]),jsxRuntime.jsx(ProjectDebug,{name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,jsonEditor:{value:d,onChange:e=>{p(e),u(null)},error:g,onSave:()=>{try{const e=JSON.parse(d);u(null),c?.(e)}catch(e){u(e instanceof Error?e.message:String(e))}},saveDisabled:!c,saveLabel:"Save JSON"},belowName:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"rb-project-validation__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>l?.(),children:"Continue without validation"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>(()=>{try{const e=JSON.parse(d),t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),i=wrapNodeInMain(t(e)&&"data"in e?e.data:e),r=t(e)&&"data"in e?{...e,data:i}:i;p(JSON.stringify(r,null,2)),u(null)}catch(e){u(e instanceof Error?e.message:String(e))}})(),children:"Wrap in Main"})]}),s]})})}function ProjectMigrationPage({name:e,rawData:t,projectVersion:i,requiredVersion:r,showFixVersionMeta:n,pendingMigrations:o,products:a,benefits:s,canvasBg:l,belowName:c,migrating:d,onContinueWithoutValidation:p,onMigrateNow:g,onFixVersionMeta:u}){const m=`Migration required: project version ${i} is lower than ${r}.`,h=[`Required: ${r}`,`Current: ${i}`,"","Pending migrations:",...o.length?o.map(e=>`- ${e.id} (${e.fromVersion} -> ${e.toVersion}): ${e.title}`):["- (none)"]].join("\n");return jsxRuntime.jsx(ProjectDebug,{name:e,rawData:t,validationError:m,validationErrorStack:h,products:a,benefits:s,canvasBg:l,belowName:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"rb-project-validation__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:!!d,onClick:()=>{g?.()},children:d?"Migrating…":"Migrate now"}),n&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:!!d,onClick:()=>u?.(),children:"Fix version meta"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>p?.(),children:"Continue without migration"})]}),c]})})}var supportedProjectVersion="1.1.2",reactBuilderVersion="1.2.44",metaJson={supportedProjectVersion:supportedProjectVersion,reactBuilderVersion:reactBuilderVersion};function parseSemver(e){const t="string"==typeof e?e.trim():"",[i,r,n]=t.split(".").slice(0,3),o=e=>{const t=Number(String(e??"").replace(/[^\d].*$/,""));return Number.isFinite(t)?t:0};return{major:o(i),minor:o(r),patch:o(n)}}function compareSemver(e,t){const i=parseSemver(e),r=parseSemver(t);return i.major!==r.major?i.major<r.major?-1:1:i.minor!==r.minor?i.minor<r.minor?-1:1:i.patch!==r.patch?i.patch<r.patch?-1:1:0}function isSemverLess(e,t){return compareSemver(e,t)<0}function isPlainObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function buildStyleKeySet(){return getStyleAttributeKeySet()}function normalizeStyleAttributes(e,t){if(isNodeNullOrUndefined(e)||isNodeString(e)||isEmptyObject$1(e))return e;if(isNodeArray(e))return e.map(e=>normalizeStyleAttributes(e,t));const i=e,r=normalizeStyleAttributes(i.children,t);if(!isPlainObject(i.attributes))return{...i,children:r};const n={...i.attributes??{}},o={...isPlainObject(n.style)?n.style:{},...isPlainObject(n.styles)?n.styles:{}};for(const[e,i]of Object.entries(n))"style"!==e&&"styles"!==e&&t.has(e)&&(e in o||(o[e]=i),delete n[e]);return delete n.style,Object.keys(o).length>0&&(n.styles=o),{...i,children:r,attributes:n}}function getStyleSubSchemaKeys(e){if(!e)return new Set;const t=e.styles;return isPlainObject(t)?new Set(Object.keys(t)):new Set}function getTopLevelAttributeKeys(e){if(!e)return new Set;const t=Object.keys(e).filter(e=>"styles"!==e);return new Set(t)}function buildKeyInfo(e){const t=getTopLevelAttributeKeys(e);return{moveableKeys:new Set([...Array.from(t),...Array.from(NON_STYLE_ATTRIBUTE_KEYS)]),styleKeys:getStyleSubSchemaKeys(e)}}function extractAttributesFromStyle(e,t){if(isNodeNullOrUndefined(e)||isNodeString(e)||isEmptyObject$1(e))return e;if(isNodeArray(e))return e.map(e=>extractAttributesFromStyle(e,t));const i=e,r=extractAttributesFromStyle(i.children,t);if(!isPlainObject(i.attributes))return{...i,children:r};const n={...i.attributes??{}},o=n.style,a=n.styles,s=isPlainObject(a)?a:isPlainObject(o)?o:void 0;if(!s)return{...i,children:r,attributes:n};if(!isPlainObject(s))return{...i,children:r,attributes:n};const l="string"==typeof i.type?i.type:"",c=normalizeComponentType(l)??l;if(!c)return{...i,children:r,attributes:n};if(!t.has(c)){const e=getAttributeSchema(c);t.set(c,buildKeyInfo(e))}const d=t.get(c),p=d?.styleKeys??new Set,g=d?.moveableKeys??NON_STYLE_ATTRIBUTE_KEYS,u={...s};let m=!1;for(const e of g)e in u&&(p.has(e)||(e in n||(n[e]=u[e]),delete u[e],m=!0));return m?(0===Object.keys(u).length?(delete n.style,delete n.styles):(delete n.style,n.styles=u),{...i,children:r,attributes:n}):{...i,children:r,attributes:n}}const migration_1_1_2_extract_component_attributes_from_style={id:"1.1.2-extract-attrs-from-style",title:"Normalize style keys then extract non-style + component props out of attributes.style",fromVersion:"0.0.0",toVersion:"1.1.2",run:e=>{const t=buildStyleKeySet(),i=extractAttributesFromStyle(normalizeStyleAttributes(e.data,t),new Map);return{...e,version:"1.1.2",data:i}}},CURRENT_PROJECT_VERSION=metaJson.supportedProjectVersion,MIGRATIONS=[migration_1_1_2_extract_component_attributes_from_style];function getMigrationPipe(e){const t="string"==typeof e?.version&&e.version.trim()?e.version:"0.0.0",i=isSemverLess(t,CURRENT_PROJECT_VERSION),r=i?MIGRATIONS.filter(e=>isSemverLess(t,e.toVersion)):[];return{projectVersion:t,requiredVersion:CURRENT_PROJECT_VERSION,required:i,pending:r}}function runProjectMigrations(e){const t=getMigrationPipe(e);let i=e;const r=[];for(const e of t.pending)isSemverLess(i.version,e.toVersion)&&(i=e.run(i),r.push(e));return isSemverLess(i.version,CURRENT_PROJECT_VERSION)&&(i={...i,version:CURRENT_PROJECT_VERSION}),{project:i,applied:r}}function sleep(e){return new Promise(t=>setTimeout(t,e))}async function loadWithDeadline(e,t){return!Number.isFinite(t)||t<=0?await e:await Promise.race([e,sleep(t).then(()=>{throw new Error("timeout")})])}function useProjectFonts({fonts:e,appFont:t}){React.useEffect(()=>{fontsDebug.info("useProjectFonts: effect start",{appFont:t,fontsCount:Array.isArray(e)?e.length:"not-array"});const{setFonts:i,setAppFont:r,setErrors:n,addError:o,loadedFonts:a,markFontLoaded:s}=useRenderStore.getState();fontsDebug.info("useProjectFonts: storing fonts/appFont in store",{appFont:t,fontsCount:Array.isArray(e)?e.length:"not-array"}),i(e),r(t),n([]);let l=!1;return(async()=>{const i="string"==typeof t?t.trim():"";if(!i)return void n(["appFont is undefined"]);if(l)return;Array.isArray(e)&&e.some(e=>e?.name===i&&e?.family&&"object"==typeof e.family&&Object.keys(e.family).length>0)?Array.isArray(a)&&a.includes(i)||(await loadWithDeadline(loadFontFamily(e,i,{forceFetch:!0}),1e4),l||s(i)):n([`appFont "${i}" not found in fonts`])})().catch(e=>{l||o(`Failed to initialize fonts: ${e instanceof Error?e.message:String(e)}`)}),()=>{l=!0}},[e,t])}function getDefaultProject(e={}){const t=metaJson.supportedProjectVersion.trim()?metaJson.supportedProjectVersion.trim():"0.0.0",i="string"==typeof e.version&&e.version.trim()?e.version.trim():t;return{name:"string"==typeof e.name&&e.name.trim()?e.name.trim():"project",version:i,data:e.data??null,projectColors:e.projectColors,type:e.type}}function resolveProjectForSave(e){return getDefaultProject({...e.overrideProject??e.project,data:e.data})}function toProjectMeta(e){return{name:e.name,version:e.version,...e.type?{type:e.type}:{},data:e.data}}const MOBILE_BREAKPOINT=1e3;function ProjectPage({project:e,localization:t,onSaveProject:i,logLevel:r,projectColors:n,onSaveProjectColors:o,name:a,typography:s,appFont:l}){useLogRender("ProjectPage"),useSyncHtmlThemeClass();const c=l??s.fonts.find(e=>e?.isMain)?.name??s.fonts[0]?.name;useProjectFonts({fonts:s.fonts,appFont:c});const{current:d,setCurrent:p,setProjectColors:g,setProjectName:u,setLocalization:m,products:h,benefits:f}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent,setProjectColors:e.setProjectColors,setProjectName:e.setProjectName,setLocalization:e.setLocalization,products:e.products,benefits:e.benefits})),[b,C]=React.useState(null),x=b??e,v=a??x.name,S=n??x.projectColors,w=isNodeNullOrUndefined(x.data)||isEmptyObject$1(x.data),[k,T]=React.useState(()=>null),[_,R]=React.useState(null),[O,I]=React.useState(null),[M,j]=React.useState(!1),[P,E]=React.useState(null),[L,z]=React.useState(!1),[D,B]=React.useState(()=>w),[A,V]=React.useState(null),[N,F]=React.useState(()=>"undefined"!=typeof window&&window.innerWidth<=MOBILE_BREAKPOINT),H=React.useCallback(e=>{if(e===k){if(!window.confirm("You are about to delete the root component. This will clear the entire screen. Continue?"))return;return T(null),void p(null)}const t=deleteNodeFromTree(k,e);if(T(t),d!==e)if(isNodeRecord(d)&&d.key){const e=findNodeByKey(t,d.key);p(e??t)}else p(t);else p(t)},[k,d]);React.useEffect(()=>(logger.info("ProjectPage","mount",{projectName:e.name}),C(null),()=>{logger.info("ProjectPage","unmount")}),[e.name]),React.useEffect(()=>{t&&m(t)},[t,m]),React.useEffect(()=>{u(v)},[v,u]),React.useEffect(()=>(g(S),()=>g(void 0)),[S,g]),React.useEffect(()=>{r&&logger.setLevel(r)},[r]),React.useEffect(()=>{function e(){F(window.innerWidth<=MOBILE_BREAKPOINT)}return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),React.useEffect(()=>{V(null)},[N]);const W=e=>{V(t=>t===e?null:e)},$=()=>{V(null)},U=!N||"builder"===A,G=!N||"attributes"===A;React.useEffect(()=>{if(w)return void B(!0);B(!1);const e=setTimeout(()=>B(!0),1e3);return()=>clearTimeout(e)},[x.data]);const K=React.useRef(x);K.current=x;const Y=React.useRef(k);Y.current=k,React.useEffect(()=>{try{const e=K.current,t=e.data;if(null!=t&&t===Y.current)return;w||(T(null),p(null)),R(null),I(null);const i=getMigrationPipe(e);if(!M&&i.required)return E(i),T(null),void p(null);if(E(null),M)return T(e.data),void p(e.data);if(w)return T(null),void p(null);const r=analyseAndProccess(e.data);if(!r)return;T(r),p(r)}catch(e){logger.error("ProjectPage","Failed to process node",e),R(e instanceof Error?e.message:"Node is not valid"),I(e instanceof Error?e.stack??null:null),T(null),p(null)}},[x.data,w,M,p]);const Z=!(w||null!==k&&D);return jsxRuntime.jsxs("div",{className:"container-full",children:[jsxRuntime.jsx(Lt,{position:"bottom-right",autoClose:2500,hideProgressBar:!1,newestOnTop:!0,closeOnClick:!0,pauseOnFocusLoss:!0,draggable:!0,pauseOnHover:!0,theme:"colored"}),jsxRuntime.jsx(EditorHeader,{onSaveProject:()=>{try{logger.info("ProjectPage","save project",{name:e.name}),o&&S&&o(S);const t=toProjectMeta(resolveProjectForSave({project:e,overrideProject:b,data:k}));logger.info("ProjectPage","saving project meta",t),i(t),y.success("Saved")}catch(e){logger.error("ProjectPage","save project failed",e),y.error("Save failed")}},onRestoreProject:()=>{logger.info("ProjectPage","restore project",{name:e.name}),C(null),R(null),I(null),j(!1),T(e.data),p(e.data)},current:d,editorData:k,setEditorData:T}),P?jsxRuntime.jsx(ProjectMigrationPage,{name:v,rawData:x,projectVersion:P.projectVersion,requiredVersion:P.requiredVersion,showFixVersionMeta:"0.0.0"===P.projectVersion,pendingMigrations:P.pending.map(e=>({id:e.id,title:e.title,fromVersion:e.fromVersion,toVersion:e.toVersion})),products:h,benefits:f,canvasBg:`url(${getImage(exports.TribeAssetName.Background)})`,migrating:L,onContinueWithoutValidation:()=>{j(!0),E(null),T(x.data),p(x.data),B(!0)},onMigrateNow:()=>{try{z(!0);const e=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),t=t=>e(t)&&"string"==typeof t.type&&t.type.trim().length>0,r=!t(x)||e(x)&&"string"==typeof x.version?x:getDefaultProject({name:`imported-${Math.random().toString(36).slice(2,8)}`,version:CURRENT_PROJECT_VERSION,data:x}),{project:n}=runProjectMigrations(r);i(toProjectMeta(n)),C(n),j(!0),E(null),T(n.data),p(n.data),B(!0)}finally{z(!1)}},onFixVersionMeta:()=>{const e=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),t=e(x)?x:null,r="string"==typeof t?.name&&String(t.name).trim()?String(t.name).trim():`imported-${Math.random().toString(36).slice(2,8)}`,n=t&&"data"in t?t.data:(t=>e(t)&&"string"==typeof t.type&&t.type.trim().length>0)(x)?x:null,o=getDefaultProject({name:r,version:CURRENT_PROJECT_VERSION,data:n,projectColors:{},type:(e=>"paywall"===e||"onboard"===e||"other"===e)(t?.type)?t.type:void 0});i(toProjectMeta(o)),C(o),j(!1),E(null),R(null),I(null),y.success("Fixed version meta")}}):_?jsxRuntime.jsx(ProjectValidationPage,{name:v,rawData:x,validationError:_,validationErrorStack:O??void 0,products:h,benefits:f,canvasBg:`url(${getImage(exports.TribeAssetName.Background)})`,onContinueWithoutValidation:()=>{j(!0),R(null),I(null),T(x.data),p(x.data),B(!0)},onSaveEditedRawData:e=>{try{const t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),r=e;let n,o,a=r;if(t(r)&&"data"in r){a=r.data;const e=r.name,t=r.version;"string"==typeof e&&(n=e),"string"==typeof t&&(o=t)}const s=analyseAndProccess(a);if(!s)throw new Error("Node is not valid");const l={...x,...n?{name:n}:null,...o?{version:o}:null,data:a};i(toProjectMeta(l)),C(l),j(!1),R(null),I(null),T(s),p(s),B(!0),y.success("Saved")}catch(e){logger.error("ProjectPage","save JSON from validation failed",e),R(e instanceof Error?e.message:"Node is not valid"),I(e instanceof Error?e.stack??null:null),y.error("Save failed")}}}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[N&&jsxRuntime.jsxs("div",{className:"mobile-panel-toggle",role:"group","aria-label":"Editor panels",children:[jsxRuntime.jsxs("button",{type:"button",className:"mobile-panel-toggle__button"+("builder"===A?" mobile-panel-toggle__button--active":""),"aria-label":"Toggle builder panel","aria-expanded":"builder"===A,"aria-controls":"split-left-panel",onClick:()=>W("builder"),children:[jsxRuntime.jsx("span",{className:"mobile-panel-toggle__icon","aria-hidden":"true",children:jsxRuntime.jsx("svg",{viewBox:"0 0 16 12",role:"presentation",focusable:"false",children:jsxRuntime.jsx("path",{d:"M1 1h14M1 6h14M1 11h14",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",fill:"none"})})}),jsxRuntime.jsx("span",{className:"mobile-panel-toggle__label",children:"Builder"})]}),jsxRuntime.jsxs("button",{type:"button",className:"mobile-panel-toggle__button"+("attributes"===A?" mobile-panel-toggle__button--active":""),"aria-label":"Toggle attributes panel","aria-expanded":"attributes"===A,"aria-controls":"split-attributes-panel",onClick:()=>W("attributes"),children:[jsxRuntime.jsx("span",{className:"mobile-panel-toggle__icon","aria-hidden":"true",children:jsxRuntime.jsx("svg",{viewBox:"0 0 16 12",role:"presentation",focusable:"false",children:jsxRuntime.jsx("path",{d:"M1 1h14M1 6h14M1 11h14",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",fill:"none"})})}),jsxRuntime.jsx("span",{className:"mobile-panel-toggle__label",children:"Attributes"})]})]}),jsxRuntime.jsxs("div",{className:"editor-container",children:[jsxRuntime.jsxs("div",{id:"split-left-panel",className:"split-left"+(U?" is-open":""),"aria-hidden":N&&!U,children:[N&&jsxRuntime.jsx("button",{type:"button",className:"split-panel__close","aria-label":"Close builder panel",onClick:$,children:"Close"}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx(BuilderPanel,{data:k,setData:T,onDeleteNode:H})})]}),jsxRuntime.jsxs("div",{style:{"--rb-canvas-bg":`url(${getImage(exports.TribeAssetName.Background)})`},className:"split-right",children:[Z&&jsxRuntime.jsx("div",{className:"rb-loading-overlay","aria-busy":"true",children:jsxRuntime.jsx(LoadingComponent,{})}),!Z&&jsxRuntime.jsx(RenderPage,{data:k,name:v})]}),jsxRuntime.jsx(BottomBar,{project:e,data:k,setData:T}),jsxRuntime.jsxs("div",{id:"split-attributes-panel",className:"split-third"+(G?" is-open":""),"aria-hidden":N&&!G,children:[N&&jsxRuntime.jsx("button",{type:"button",className:"split-panel__close","aria-label":"Close attributes panel",onClick:$,children:"Close"}),jsxRuntime.jsx(AttributesEditorPanel,{attributes:k,projectColors:S,onChange:e=>{let t;T(e),e&&"object"==typeof e&&!Array.isArray(e)&&"key"in e&&(t=e.key),logger.verbose("ProjectPage","attributes change",t?{nodeKey:t}:void 0)}})]}),N&&A&&jsxRuntime.jsx("button",{type:"button",className:"editor-container__overlay","aria-label":"Close active panel",onClick:$})]})]})]})}function useCalculateLocalizedPrice(e){return e?extractPrice(e):""}function useDiscountRate(e,t){if(!e||!t)return 0;const i=calculateDiscount(e,t);return i?parseInt(i,10):0}function useExtractTextStyle(e){const{selectedTheme:t,projectColors:i,fonts:r,baseSize:n}=useBuilderParams();return React.useMemo(()=>{const o=extractTextStyleNative(e,{theme:t,projectColors:i,fonts:r,baseSize:n}),a=e.attributes,s=stripStyleKeys(toAttributeRecord(a)),l=getStyleBag(a);return{style:o,other:{...s,adjustsFontSizeToFit:s.adjustsFontSizeToFit??l?.adjustsFontSizeToFit,showEllipsis:s.showEllipsis??l?.showEllipsis}}},[e,t,i,r,n])}function useExtractViewStyle(e){const{selectedTheme:t,projectColors:i,baseSize:r}=useBuilderParams();return React.useMemo(()=>{const n=extractViewStyleNative(e,{theme:t,projectColors:i,baseSize:r}),o=e.attributes,a=stripStyleKeys(toAttributeRecord(o)),s=getStyleBag(o);return{style:n,other:{...a,scrollable:a.scrollable??s?.scrollable}}},[e,t,i,r])}function useExtractImageStyle(e){const{selectedTheme:t,projectColors:i,baseSize:r}=useBuilderParams();return React.useMemo(()=>{const{resizeMode:n,...o}=extractImageStyleNative(e,{theme:t,projectColors:i,baseSize:r}),a=e.attributes,s=stripStyleKeys(toAttributeRecord(a)),l=getStyleBag(a);return{style:o,other:{...s,resizeMode:l?.resizeMode??n}}},[e,t,i,r])}const meta={supportedProjectVersion:metaJson.supportedProjectVersion,reactBuilderVersion:metaJson.reactBuilderVersion};function getMeta(){return{...meta}}function novaToJson(e){const t=e.data.data?.layout;return"onboard-layout"===t?onboardNovaToJson(e):null}function onboardNovaToJson(e){const t=e?.data?.data?.attributes||e?.data?.attributes||{},i=t?.general_components||[],r=t?.data||[],n=mapDotsFromGeneralComponents(i),o=mapFooterFromGeneralComponents(i),{carouselNode:a,providerLevelButtons:s}=buildCarouselFromPages(r),l={type:"OnboardProvider",key:e?.data?.data?.key,children:[a,...n?[n]:[],...s.length?s:[],...o?[o]:[]],attributes:{theme:e?.data?.theme}},c={type:"Main",isMain:!0,key:e?.data?.data?.key,children:[l],attributes:{useSafeAreaView:!0}};return delete l.key,c}function buildCarouselFromPages(e){const t=e.filter(e=>"simple-onboard-layout"===e?.layout),i=new Map;t.forEach((e,t)=>{const r=e?.attributes?.key;"string"==typeof r&&i.set(r,t)});const r=[];return{carouselNode:{type:"Onboard",children:t.map(e=>buildCarouselItem(e,i,r))},providerLevelButtons:r}}function buildCarouselItem(e,t,i){const r=e?.attributes?.components||[],n=[],o=e?.attributes?.key,a="string"==typeof o&&t.has(o)?t.get(o):void 0;for(const e of r)if("title-layout"===e?.layout){const t=e?.attributes?.title_localization_key||"",i=e?.attributes?.title_color||void 0,{fontSize:r,textAlign:o,marginTop:a,fontWeight:s}=extractTextStyleAttributesFromComponent(e);n.push({type:"OnboardTitle",attributes:i||r||o||a||s?{...i?{color:i}:{},..."number"==typeof r?{fontSize:r}:{},...o?{textAlign:o}:{},..."number"==typeof a?{marginTop:a}:{},...s?{fontWeight:s}:{}}:void 0,children:t})}else if("subtitle-layout"===e?.layout){const t=e?.attributes?.subtitle_localization_key||"",i=e?.attributes?.subtitle_color||void 0,{fontSize:r,textAlign:o,marginTop:a,fontWeight:s}=extractTextStyleAttributesFromComponent(e);n.push({type:"OnboardSubtitle",attributes:i||r||o||a||s?{...i?{color:i}:{},..."number"==typeof r?{fontSize:r}:{},...o?{textAlign:o}:{},..."number"==typeof a?{marginTop:a}:{},...s?{fontWeight:s}:{}}:void 0,children:t})}else if("image-layout"===e?.layout){const t=e?.attributes?.image||e?.attributes?.src||"",i=e?.attributes?.height??e?.attributes?.ios_height??e?.attributes?.android_height,r="string"==typeof i?Number.parseInt(i,10):"number"==typeof i?i:void 0,o=Boolean(e?.attributes?.is_bg_image),a=extractViewStyleAttributesFromComponent(e),s=e?.attributes?.lottie,l=e?.attributes?.video_url;t&&n.push({type:"OnboardImage",attributes:{src:t,...r?{height:r}:{},resizeMode:o?"cover":"contain",..."number"==typeof a.borderRadius?{borderRadius:a.borderRadius}:{},..."string"==typeof s?{lottie:s}:{},..."string"==typeof l?{video_url:l}:{}},children:void 0})}else if("Buttons"===e?.layout){const r=e?.attributes?.buttons_direction,n=e?.attributes?.buttons||[],o=[];for(const e of n){const i=e?.attributes||{},r=i?.button_text_localization_key||"",n=i?.button_text_color,a=i?.button_background_color,s=i?.animation,l=i?.animation_color,c=i?.flex?Number(i.flex):void 0,d=i?.actions||[],p=[];for(const e of d){const i=e?.attributes?.events||[];for(const e of i)if("Permission"===e?.layout){const t=e?.attributes?.permission;p.push({type:"Permission",permission:t})}else if("Navigate"===e?.layout){const i=e?.attributes?.next_page_key,r="string"==typeof i&&t.has(i),n=r?null:"string"==typeof i?i:null;p.push({type:"Navigate",navigate_to:n,...r?{targetIndex:t.get(i)}:{}})}}o.push({type:"OnboardButton",attributes:{labelKey:r,..."string"==typeof n?{button_text_color:n}:{},..."string"==typeof s?{animation:s}:{},..."string"==typeof l?{animation_color:l}:{},..."string"==typeof a?{button_background_color:a}:{},..."number"==typeof c?{flex:c}:{},...p.length?{events:p}:{}},children:void 0})}o.length>0&&i.push({type:"OnboardButtons",attributes:{...r?{buttons_direction:r}:{},..."number"==typeof a?{condition:"carousel-index",conditionVariable:a}:{}},children:o})}const s=e?.attributes?.key,l="string"==typeof s&&s||("string"==typeof e?.key?e.key:void 0);return{type:"OnboardItem",...l?{key:l}:{},children:n}}function extractTextStyleAttributesFromComponent(e){const t={},i=e?.attributes?.styles||[];if(!Array.isArray(i)||0===i.length)return t;const r=new Set(["left","center","right","justify"]),n=new Set(["normal","bold","100","200","300","400","500","600","700","800","900"]);for(const e of i){if("style-layout"!==e?.layout)continue;const i=e?.attributes?.styles||[];if(Array.isArray(i))for(const e of i){if("Styles"!==e?.layout)continue;const i=e?.attributes?.type;if("textStyle"!==i)continue;const o=e?.attributes?.style||{},a=o?.fontSize;if("number"==typeof a&&Number.isFinite(a))t.fontSize=a;else if("string"==typeof a){const e=Number.parseInt(a,10);Number.isFinite(e)&&(t.fontSize=e)}const s=o?.textAlign;"string"==typeof s&&r.has(s)&&(t.textAlign=s);const l=o?.marginTop;if("number"==typeof l&&Number.isFinite(l))t.marginTop=l;else if("string"==typeof l){const e=Number.parseInt(l,10);Number.isFinite(e)&&(t.marginTop=e)}const c=o?.fontWeight;let d;"number"==typeof c&&Number.isFinite(c)?d=String(c):"string"==typeof c&&(d=c),d&&n.has(d)&&(t.fontWeight=d)}}return t}function extractViewStyleAttributesFromComponent(e){const t={},i=e?.attributes?.styles||[];if(!Array.isArray(i)||0===i.length)return t;for(const e of i){if("style-layout"!==e?.layout)continue;const i=e?.attributes?.styles||[];if(Array.isArray(i))for(const e of i){if("Styles"!==e?.layout)continue;const i=e?.attributes?.style||{},r=i?.borderRadius;if("number"==typeof r&&Number.isFinite(r))t.borderRadius=r;else if("string"==typeof r){const e=Number.parseInt(r,10);Number.isFinite(e)&&(t.borderRadius=e)}}}return t}function mapDotsFromGeneralComponents(e){const t=e.find(e=>"dots-layout"===e?.layout);if(!t)return null;const i=t?.attributes?.dot||[],r=i?.[0],n=r?.layout,o=r?.attributes||{},a=e=>{if("number"==typeof e)return e;if("string"==typeof e&&e.trim().length>0){const t=Number(e);return Number.isFinite(t)?t:void 0}},s=a(o?.inactive_dot_opacity),l=a(o?.dot_thickness),c="string"==typeof o?.dot_style?o.dot_style:void 0,d="string"==typeof o?.container_style?o.container_style:void 0,p="string"==typeof o?.active_dot_color?o.active_dot_color:void 0,g="string"==typeof o?.inactive_dot_color?o.inactive_dot_color:void 0,u={};return n&&(u.dotType=n),void 0!==s&&(u.inactive_dot_opacity=s),void 0!==l&&(u.dot_thickness=l),c&&(u.dot_style=c),d&&(u.container_style=d),p&&(u.active_dot_color=p),g&&(u.inactive_dot_color=g),{type:"OnboardDot",attributes:Object.keys(u).length?u:void 0,children:void 0}}function mapFooterFromGeneralComponents(e){const t=e.find(e=>"footer-layout"===e?.layout);if(!t)return null;const i=t?.attributes?.texts||[],r=[];let n,o;for(const e of i)if("Text"===e?.layout){const t=e?.attributes?.text_localization_key||"",i=e?.attributes?.text_color||void 0;n||(n=t),o||"string"!=typeof i||(o=i);const a=e?.attributes?.linkedwords||[];for(const e of a)if("LinkedWords"===e?.layout){const t=e?.attributes?.linked_word_localization_key,i=e?.attributes?.linked_word_color,n=e?.attributes?.page;r.push({text_key:t,color:i,page:n})}}const a={gap:8};n&&(a.textLocalizationKey=n),o&&(a.color=o);const s=r[0],l=r[1];return s&&(s.text_key&&(a.linkedWordFirstLocalizationKey=s.text_key),s.color&&(a.linkedWordFirstColor=s.color),s.page&&(a.linkedWordFirstPage=s.page)),l&&(l.text_key&&(a.linkedWordSecondLocalizationKey=l.text_key),l.color&&(a.linkedWordSecondColor=l.color),l.page&&(a.linkedWordSecondPage=l.page)),{type:"OnboardFooter",attributes:a,children:void 0}}function isNodeData(e){return null!=e&&(!Array.isArray(e)&&("string"!=typeof e&&("object"==typeof e&&("type"in e&&"children"in e))))}function querySelector(e,t){if(null==e)return[];if(!t)return[];const i=t.startsWith("#"),r=i?t.slice(1):void 0,n=[],o=e=>{var a;if(null!=e)if(Array.isArray(e))for(const t of e)o(t);else"string"!=typeof e&&isNodeData(e)&&(a=e,(i?a.key===r:a.type===t)&&n.push(e),o(e.children))};return o(e),n}function setBuilderStringChildrenField(e){useRenderStore.getState().setRenderStringChildrenField(e)}function setBuilderLocalizationConfig(e){useRenderStore.getState().setLocalizationApiConfig(e)}function setBuilderLanguageColumns(e){useRenderStore.getState().setLanguageColumns(e)}exports.BuilderProvider=BuilderProvider,exports.DebugJsonPage=DebugJsonPage,exports.LocalizationParamsProvider=LocalizationParamsProvider,exports.PERIOD_LOCALIZATION_KEYS=PERIOD_LOCALIZATION_KEYS,exports.ParamsProvider=ParamsProvider,exports.ProjectPage=ProjectPage,exports.RenderNode=RenderNode$1,exports.TRIBE_ASSETS_BASE_URL=TRIBE_ASSETS_BASE_URL,exports.allcomponentNames=allcomponentNames,exports.analyseAndProccess=analyseAndProccess,exports.analyseNode=analyseNode,exports.buildPaywallLocalizationParams=buildPaywallLocalizationParams,exports.calculateDiscount=calculateDiscount,exports.calculatePricePerMonth=calculatePricePerMonth,exports.calculatePricePerYear=calculatePricePerYear,exports.convertIOSPeriodUnit=convertIOSPeriodUnit,exports.defaultLocalization=defaultLocalization,exports.defaultProjectColors=defaultProjectColors,exports.defaultTheme=defaultTheme,exports.extractAndroidParams=extractAndroidParams,exports.extractIOSParams=extractIOSParams,exports.extractPrice=extractPrice,exports.getArrayItemType=getArrayItemType,exports.getAttributeMeta=getAttributeMeta,exports.getAttributeSchema=getAttributeSchema,exports.getDefaultDevice=getDefaultDevice,exports.getDefaultProject=getDefaultProject,exports.getDefaultsForType=getDefaultsForType,exports.getDevices=getDevices,exports.getImage=getImage,exports.getMeta=getMeta,exports.getMockProducts=getMockProducts,exports.getMockProductsByPreset=getMockProductsByPreset,exports.getPatternByType=getPatternByType,exports.getPeriodLocalizationKey=getPeriodLocalizationKey,exports.getSamples=getSamples,exports.getTypeSchema=getTypeSchema,exports.isEmptyObject=isEmptyObject$1,exports.isNodeArray=isNodeArray,exports.isNodeNullOrUndefined=isNodeNullOrUndefined,exports.isNodeString=isNodeString,exports.isPrimitiveType=isPrimitiveType,exports.mergeLocalization=mergeLocalization,exports.mergeProjectColors=mergeProjectColors,exports.novaToJson=novaToJson,exports.parseBillingPeriod=parseBillingPeriod,exports.parseColor=parseColor,exports.parseTribeAssetName=parseTribeAssetName,exports.patterns=patterns$1,exports.querySelector=querySelector,exports.resolveImageSrc=resolveImageSrc,exports.setBuilderLanguageColumns=setBuilderLanguageColumns,exports.setBuilderLocalizationConfig=setBuilderLocalizationConfig,exports.setBuilderStringChildrenField=setBuilderStringChildrenField,exports.useBuilderParams=useBuilderParams,exports.useCalculateLocalizedPrice=useCalculateLocalizedPrice,exports.useChangeDelayByPaywall=useChangeDelayByPaywall,exports.useDiscountRate=useDiscountRate,exports.useExtractImageStyle=useExtractImageStyle,exports.useExtractTextStyle=useExtractTextStyle,exports.useExtractViewStyle=useExtractViewStyle,exports.useLocalizationParams=useLocalizationParams,exports.useLocalize=useLocalize,exports.useNode=useNode,exports.useParams=useParams,exports.usePaywallLocalizationParams=usePaywallLocalizationParams,exports.useRenderStore=useRenderStore;
32
+ i.goToAndStop(o-i.firstFrame-1,!0)}"loop"===r.type&&(null===l||l!==r.frames||i.isPaused)&&(i.playSegments(r.frames,!0),l=r.frames),"play"===r.type&&i.isPaused&&(i.resetSegments(!0),i.play()),"stop"===r.type&&i.goToAndStop(r.frames[0]-i.firstFrame-1,!0)}},document.addEventListener("scroll",c),function(){document.removeEventListener("scroll",c)};case"cursor":return o=function(t,r){var o=t,a=r;if(-1!==o&&-1!==a){var s=getContainerCursorPosition(e,o,a);o=s.x,a=s.y}var l=n.find(function(e){var t=e.position;return t&&Array.isArray(t.x)&&Array.isArray(t.y)?o>=t.x[0]&&o<=t.x[1]&&a>=t.y[0]&&a<=t.y[1]:!(!t||Number.isNaN(t.x)||Number.isNaN(t.y))&&o===t.x&&a===t.y});if(l){if("seek"===l.type&&l.position&&Array.isArray(l.position.x)&&Array.isArray(l.position.y)&&2===l.frames.length){var c=(o-l.position.x[0])/(l.position.x[1]-l.position.x[0]),d=(a-l.position.y[0])/(l.position.y[1]-l.position.y[0]);i.playSegments(l.frames,!0),i.goToAndStop(Math.ceil((c+d)/2*(l.frames[1]-l.frames[0])),!0)}"loop"===l.type&&i.playSegments(l.frames,!0),"play"===l.type&&(i.isPaused&&i.resetSegments(!1),i.playSegments(l.frames)),"stop"===l.type&&i.goToAndStop(l.frames[0],!0)}},a=function(e){o(e.clientX,e.clientY)},s=function(){o(-1,-1)},e.addEventListener("mousemove",a),e.addEventListener("mouseout",s),function(){e.removeEventListener("mousemove",a),e.removeEventListener("mouseout",s)}}}},[r,i])},useLottieInteractivity=function(e){var t=e.actions,i=e.mode,r=e.lottieObj,n=r.animationItem,o=r.View,a=r.animationContainerRef;return useInitInteractivity({actions:t,animationItem:n,mode:i,wrapperRef:a}),o},_excluded=["style","interactivity"],Lottie=function(e){var t,i,r,n=e.style,o=e.interactivity,a=_objectWithoutProperties(e,_excluded),s=useLottie(a,n),l=s.View,c=s.play,d=s.stop,p=s.pause,g=s.setSpeed,u=s.goToAndStop,m=s.goToAndPlay,h=s.setDirection,f=s.playSegments,y=s.setSubframe,b=s.getDuration,C=s.destroy,x=s.animationContainerRef,v=s.animationLoaded,S=s.animationItem;return React.useEffect(function(){e.lottieRef&&(e.lottieRef.current={play:c,stop:d,pause:p,setSpeed:g,goToAndPlay:m,goToAndStop:u,setDirection:h,playSegments:f,setSubframe:y,getDuration:b,destroy:C,animationContainerRef:x,animationLoaded:v,animationItem:S})},[null===(t=e.lottieRef)||void 0===t?void 0:t.current]),useLottieInteractivity({lottieObj:{View:l,play:c,stop:d,pause:p,setSpeed:g,goToAndStop:u,goToAndPlay:m,setDirection:h,playSegments:f,setSubframe:y,getDuration:b,destroy:C,animationContainerRef:x,animationLoaded:v,animationItem:S},actions:null!==(i=null==o?void 0:o.actions)&&void 0!==i?i:[],mode:null!==(r=null==o?void 0:o.mode)&&void 0!==r?r:"scroll"})};function OnboardImage({node:e}){useLogRender("OnboardImage"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"OnboardImage",r=e.key??t,[n,o]=React.useState(null),a=useExtractViewStyle$1(e),s=e.attributes;return React.useEffect(()=>{s?.lottie&&fetch(s?.lottie).then(e=>e.json()).then(e=>o(e))},[s?.lottie]),s?.video_url?jsxRuntime.jsx("video",{"attribute-name":i,"attribute-key":r,autoPlay:!0,muted:!0,loop:!0,src:s?.video_url,style:a}):s?.lottie?n?jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:jsxRuntime.jsx(Lottie,{animationData:n})}):jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:"Loading..."}):jsxRuntime.jsx(Image$2,{node:{...e,type:"image",sourceType:i}})}var OnboardImage$1=React.memo(OnboardImage);function OnboardItem({node:e}){useLogRender("OnboardItem"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"OnboardItem",r=e.key??t,n=useExtractViewStyle$1(e);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,className:"embla__slide",style:n,children:e.children&&jsxRuntime.jsx(RenderNode$1,{node:e.children})})}var OnboardItem$1=React.memo(OnboardItem);function OnboardSubtitle({node:e}){return useLogRender("OnboardSubtitle"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var OnboardSubtitle$1=React.memo(OnboardSubtitle);function OnboardTitle({node:e}){return useLogRender("OnboardTitle"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var OnboardTitle$1=React.memo(OnboardTitle);function PaywallBackground({node:e}){return useLogRender("PaywallBackground"),jsxRuntime.jsx(BackgroundImage$1,{node:e})}var PaywallBackground$1=React.memo(PaywallBackground);function PaywallCloseButton({node:e}){useLogRender("PaywallCloseButton"),e=useNode(e);const{onClose:t,isBackAllowed:i}=usePaywallContext(),r=React.useId(),n=e.sourceType??e.type??"PaywallCloseButton",o=e.key??r,{previewMode:a,selectedKey:s}=useBuilderParams(),l=useExtractViewStyle$1(e),c=useExtractTextStyle$1(e),d=useMergedStyle(l,isNodeSelected({previewMode:!!a,current:s?{key:s}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);if(!i)return null;const p=e.attributes,g=p?.styles,u=p?.iconType??"close",m=p?.size??c.fontSize??24,h=c.color??g?.color;return jsxRuntime.jsx("a",{"attribute-name":n,"attribute-key":o,href:"#",onClick:e=>{e.preventDefault(),t?.()},"aria-label":"Close",style:{...d,cursor:"pointer",textDecoration:"none"},children:jsxRuntime.jsx(Icon,{iconType:u,size:m,color:h,alt:""})})}function escapeRegExp(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function buildSegments(e,t){const i=[];for(const r of t){if(!r.value)continue;const t=new RegExp(escapeRegExp(r.value),"gi");for(const n of e.matchAll(t)){if(null==n.index)continue;const e=n[0];e&&i.push({start:n.index,end:n.index+e.length,value:e,color:r.color,page:r.page})}}if(0===i.length)return{segments:[{type:"text",value:e}],matchCount:0};i.sort((e,t)=>{if(e.start!==t.start)return e.start-t.start;const i=e.end-e.start;return t.end-t.start-i});const r=[];let n=-1;for(const e of i)e.start>=n&&(r.push(e),n=e.end);const o=[];let a=0;for(const{start:t,end:i,value:n,color:s,page:l}of r)t>a&&o.push({type:"text",value:e.slice(a,t)}),o.push({type:"match",value:n,color:s,page:l}),a=i;return a<e.length&&o.push({type:"text",value:e.slice(a)}),{segments:o,matchCount:r.length}}function PaywallFooter({node:e}){useLogRender("PaywallFooter");const t=(e=useNode(e)).sourceType??e.type??"PaywallFooter",{selectedTheme:i,previewMode:r,selectedKey:n,projectColors:o}=useBuilderParams(),a=o,s=useLocalize(),l=e=>e?s(e):"",c=e?.attributes,d=toAttributeRecord(c),p=l(c?.textLocalizationKey),g=useExtractTextStyle$1(e,!0),u=useExtractViewStyle$1(e),m=d.linkedWordSecondColor,h=d.linkedWordFirstColor,f=React.useMemo(()=>parseColor(m,{projectColors:a,theme:i}),[m,a,i]),y=React.useMemo(()=>parseColor(h,{projectColors:a,theme:i}),[h,a,i]),b=useMergedStyle(g,{cursor:"pointer"}),C=useMergedStyle(u,isNodeSelected({previewMode:!!r,current:n?{key:n}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),x=React.useId(),v=e.key??x;return jsxRuntime.jsx("div",{"attribute-name":t,"attribute-key":v,style:C,children:!!p&&(()=>{const e=l(c?.linkedWordFirstLocalizationKey),t=l(c?.linkedWordSecondLocalizationKey),{segments:i,matchCount:r}=buildSegments(p,[{value:e,color:f??void 0,page:c?.linkedWordFirstPage},{value:t,color:y??void 0,page:c?.linkedWordSecondPage}]);return jsxRuntime.jsxs("span",{style:{...b,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden",textOverflow:"ellipsis"},children:[i.map((e,t)=>"text"===e.type?jsxRuntime.jsx(React.Fragment,{children:e.value},t):jsxRuntime.jsx("span",{style:{...e.color?{color:e.color}:{},cursor:"pointer"},onClick:()=>{e.page},children:e.value},t)),0===r&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[" ",c?.linkedWordFirstLocalizationKey&&jsxRuntime.jsx("span",{style:{...f?{color:f}:{},cursor:"pointer"},onClick:()=>{},children:e})," ",c?.linkedWordSecondLocalizationKey&&jsxRuntime.jsx("span",{style:{...y?{color:y}:{},cursor:"pointer"},onClick:()=>{},children:t})]})]})})()})}var PaywallFooter$1=React.memo(PaywallFooter);function PaywallOptionButton({product:e,onPress:t,node:i}){const r=React.useId(),n=(e.productId??"").trim(),{previewMode:o,selectedKey:a}=useBuilderParams(),s=useMergedStyle(useExtractViewStyle$1(i),isNodeSelected({previewMode:!!o,current:a?{key:a}:void 0,node:i})?SELECTED_OUTLINE_STYLE:void 0),l=i.sourceType??i.type??"text",c=i.key??r,d=n?`${c}:${n}`:c;return jsxRuntime.jsx("div",{"attribute-name":l,"attribute-key":d,role:"button",tabIndex:0,onClick:()=>t(n),style:{...s,cursor:"pointer"},children:jsxRuntime.jsx(RenderNode$1,{node:i.children})})}function extractPrice(e){if(!e)return"";const t=e.replace(/[^0-9.,]/g,"");let i;if(t.includes(",")&&t.includes("."))i=t.replace(/\./g,"").replace(",",".");else if(t.includes(","))i=t.replace(",",".");else{i=(t.match(/\./g)||[]).length>1?t.replace(/\./g,""):t}const r=parseFloat(i);return isNaN(r)?"":String(Math.round(100*r)/100)}function calculateDiscount(e,t){if(!t||!e)return"";const i=parseFloat(e),r=parseFloat(t);if(isNaN(i)||isNaN(r)||i<=0)return"";const n=Math.round((i-r)/i*100);return String(Math.max(0,n))}function calculatePricePerMonth(e,t){return isNaN(e)?"":"month"===t?e.toFixed(2):"year"===t?(e/12).toFixed(2):"week"===t?(52*e/12).toFixed(2):"day"===t?(365*e/12).toFixed(2):e.toFixed(2)}function calculatePricePerYear(e,t){return isNaN(e)?"":"year"===t?e.toFixed(2):"month"===t?(12*e).toFixed(2):"week"===t?(52*e).toFixed(2):"day"===t?(365*e).toFixed(2):e.toFixed(2)}const PERIOD_LOCALIZATION_KEYS={monthly:"base.builder.paywall.period.monthly",annual:"base.builder.paywall.period.annual",weekly:"base.builder.paywall.period.weekly",daily:"base.builder.paywall.period.daily",monthlyPromo:"base.builder.paywall.period.monthlyPromo",annualPromo:"base.builder.paywall.period.annualPromo"},PAYWALL_TEXT_KEYS={pricingDefault:"base.builder.paywall.pricing.default.text",pricingFreeTrial:"base.builder.paywall.pricing.freeTrial.text",pricingRegular:"base.builder.paywall.pricing.regular.text",promoDefault:"base.builder.paywall.promo.default.text",promoFreeTrial:"base.builder.paywall.promo.freeTrial.text",promoRegular:"base.builder.paywall.promo.regular.text"};function getPeriodLocalizationKey(e,t){switch(e){case"month":return t?PERIOD_LOCALIZATION_KEYS.monthlyPromo:PERIOD_LOCALIZATION_KEYS.monthly;case"year":return t?PERIOD_LOCALIZATION_KEYS.annualPromo:PERIOD_LOCALIZATION_KEYS.annual;case"week":return PERIOD_LOCALIZATION_KEYS.weekly;case"day":return PERIOD_LOCALIZATION_KEYS.daily;default:return PERIOD_LOCALIZATION_KEYS.monthly}}function parseBillingPeriod(e){const t=e.match(/P(\d+)([DWMY])/);if(!t||!t[1]||!t[2])return{value:1,unit:"month"};const i=parseInt(t[1],10),r={D:"day",W:"week",M:"month",Y:"year"}[t[2]];return r?{value:i,unit:r}:{value:1,unit:"month"}}function convertIOSPeriodUnit(e){if(!e)return"month";return{DAY:"day",WEEK:"week",MONTH:"month",YEAR:"year"}[e.toUpperCase()]||"month"}function normalizeIOSPeriod(e,t){const i=convertIOSPeriodUnit(e),r=t||1;if("day"===i){if(r%365==0)return{unit:"year",value:r/365};if(366===r)return{unit:"year",value:1};if(r%30==0)return{unit:"month",value:r/30};if(31===r)return{unit:"month",value:1};if(r%7==0)return{unit:"week",value:r/7}}return"month"===i&&r%12==0?{unit:"year",value:r/12}:{unit:i,value:r}}function noop(){}const iapLogger={error(e,t,i){console.error(`[iap] ${t}`,i)},warn(e,t,i){console.warn(`[iap] ${t}`,i)},info(e,t,i){console.info(`[iap] ${t}`,i)},debug:noop};function findOffer(e,t){return e.find(e=>e.id===t||e.basePlanIdAndroid===t)}function extractAndroidParams(e,t){try{const i=e.subscriptionOffers??[];let r=i[0];if(t&&i.length>0){const n=findOffer(i,t);n?r=n:iapLogger.error(["extractAndroidParams"],"Requested offer not found, using default",{productId:e.id||e.productId,requestedOfferId:t,availableOffers:i.map(e=>e.id)})}if(!r)return iapLogger.warn(["extractAndroidParams"],"No offers found in product",{productId:e.id||e.productId}),getFallbackParams(e);const n=r.pricingPhasesAndroid?.pricingPhaseList??[];if(0===n.length)return iapLogger.warn(["extractAndroidParams"],"No pricing phases found",{productId:e.id||e.productId,offerId:r.id}),getFallbackParams(e);const o=n.find(e=>"0"===e.priceAmountMicros),a=n.find(e=>2===e.recurrenceMode&&"0"!==e.priceAmountMicros),s=n.find(e=>1===e.recurrenceMode)??n[n.length-1];if(!s)return iapLogger.error(["extractAndroidParams"],"No regular phase found",{productId:e.id||e.productId,pricingPhasesCount:n.length}),getFallbackParams(e);const l=parseBillingPeriod(s.billingPeriod),c=`${l.value} ${l.unit}${l.value>1?"s":""}`,d=extractPrice(s.formattedPrice),p=s.priceCurrencyCode||"",g=s.formattedPrice||"";let u="",m="",h="",f="";if(a){u=extractPrice(a.formattedPrice);const e=a.billingCycleCount||0,t=parseBillingPeriod(a.billingPeriod),i=e*t.value;m=`${i} ${t.unit}${i>1?"s":""}`,h=String(e),f=t.unit}let y="false",b="",C="";if(o){y="true";const e=parseBillingPeriod(o.billingPeriod);b=String(e.value),C=e.unit}const x=calculateDiscount(d,u),v="string"==typeof e.price&&""!==e.price?e.price:d,S="string"==typeof e.currency&&""!==e.currency?e.currency:p,w="string"==typeof e.localizedPrice&&""!==e.localizedPrice?e.localizedPrice:g,k=parseFloat(v),T=calculatePricePerMonth(k,l.unit),_=calculatePricePerYear(k,l.unit);return{price:v,promoPrice:u,currency:S,localizedPrice:w,period:l.unit,periodValue:String(l.value),periodType:c,promoPeriod:m,promoCycles:h,promoPeriodUnit:f,hasTrial:y,trialPeriod:b,trialPeriodUnit:C,discountPercentage:x,pricePerMonth:T,pricePerYear:_}}catch(t){return iapLogger.error(["extractAndroidParams"],"Failed to extract Android params",{productId:e?.id||e?.productId,error:t instanceof Error?t.message:String(t)}),getFallbackParams(e)}}function getFallbackParams(e){const t=extractPrice(String(e.price||e.localizedPrice||""));return{...getEmptyParams$1(),price:t,currency:e.currency||e.currencyCode||"",localizedPrice:e.localizedPrice||""}}function getEmptyParams$1(){return{price:"",promoPrice:"",currency:"",localizedPrice:"",period:"month",periodValue:"1",periodType:"1 month",promoPeriod:"",promoCycles:"",promoPeriodUnit:"",hasTrial:"false",trialPeriod:"",trialPeriodUnit:"",discountPercentage:"",pricePerMonth:"",pricePerYear:""}}function isFreeTrialIntro(e){return"free_trial"===e.type||0===parseFloat(e.price||e.priceIOS||"0")}function extractPromoCyclesAndPeriod(e,t){return{promoPeriod:`${e} ${t}${e>1?"s":""}`,promoCycles:String(e),promoPeriodUnit:t}}function extractIOSParams(e,t){try{const i=extractPrice(String(e.price||e.localizedPrice||"")),r=e.currency||e.currencyCode||"",n=e.localizedPrice||"",o=normalizeIOSPeriod(e.subscriptionPeriodUnitIOS,e.subscriptionPeriodNumberIOS),a=o.unit,s=String(o.value),l=`${s} ${a}${parseInt(s,10)>1?"s":""}`,c=e.introductoryPrice||e.introductoryPriceIOS,d=!!c,p=d&&isFreeTrialIntro(c);let g="false",u="",m="",h="",f="",y="",b="";if(p)g="true",u=String(c.subscriptionPeriodNumberIOS||c.numberOfPeriods||7),m=convertIOSPeriodUnit(c.subscriptionPeriodUnitIOS||c.subscriptionPeriod||"DAY");else if(d){h=String(c.price||c.priceIOS||"").replace(/[^0-9.]/g,"");const e=c.numberOfPeriods||1,t=extractPromoCyclesAndPeriod(e,convertIOSPeriodUnit(c.subscriptionPeriodUnitIOS||c.subscriptionPeriod||"MONTH"));f=t.promoPeriod,y=t.promoCycles,b=t.promoPeriodUnit}if(t&&e.discounts){const i=e.discounts.find(e=>e.identifier===t);if(i){h=extractPrice(String(i.price||""));const e=i.numberOfPeriods||1,t=extractPromoCyclesAndPeriod(e,convertIOSPeriodUnit(i.subscriptionPeriod||"MONTH"));f=t.promoPeriod,y=t.promoCycles,b=t.promoPeriodUnit}else iapLogger.error(["extractIOSParams"],"Requested offer not found in discounts",{productId:e.id||e.productId,requestedOfferId:t,availableDiscounts:e.discounts.map(e=>e.identifier)})}const C=calculateDiscount(i,h),x=parseFloat(i),v=calculatePricePerMonth(x,a);return{price:i,promoPrice:h,currency:r,localizedPrice:n,period:a,periodValue:s,periodType:l,promoPeriod:f,promoCycles:y,promoPeriodUnit:b,hasTrial:g,trialPeriod:u,trialPeriodUnit:m,discountPercentage:C,pricePerMonth:v,pricePerYear:calculatePricePerYear(x,a)}}catch(t){return iapLogger.error(["extractIOSParams"],"Failed to extract iOS params",{productId:e?.id||e?.productId,error:t instanceof Error?t.message:String(t)}),getEmptyParams()}}function getEmptyParams(){return{price:"",promoPrice:"",currency:"",localizedPrice:"",period:"month",periodValue:"1",periodType:"1 month",promoPeriod:"",promoCycles:"",promoPeriodUnit:"",hasTrial:"false",trialPeriod:"",trialPeriodUnit:"",discountPercentage:"",pricePerMonth:"",pricePerYear:""}}function buildPaywallLocalizationParams(e,t,i,r){const n=r??(e=>e),o="android"===t?extractAndroidParams(e,i):extractIOSParams(e,i),a=o.period||"month",s=!!o.promoPrice,l="true"===o.hasTrial,c=getPeriodLocalizationKey(a,!1),d=s?getPeriodLocalizationKey(a,!0):"";let p="";if(s)try{p=new Intl.NumberFormat(void 0,{style:"currency",currency:o.currency}).format(Number(o.promoPrice))}catch{p=`${o.promoPrice} ${o.currency}`.trim()}const g=n(c),u=s?n(d):"",m=p||o.localizedPrice,h=u||g;let f,y;return s?(f=PAYWALL_TEXT_KEYS.pricingDefault,y=PAYWALL_TEXT_KEYS.promoDefault):l?(f=PAYWALL_TEXT_KEYS.pricingFreeTrial,y=PAYWALL_TEXT_KEYS.promoFreeTrial):(f=PAYWALL_TEXT_KEYS.pricingRegular,y=PAYWALL_TEXT_KEYS.promoRegular),{price:o.price,promoPrice:o.promoPrice,currency:o.currency,localizedPrice:o.localizedPrice,period:o.period,promoPeriod:o.promoPeriod,promoPeriodUnit:o.promoPeriodUnit,hasTrial:o.hasTrial,trialPeriod:o.trialPeriod,trialPeriodUnit:o.trialPeriodUnit,discountPercentage:o.discountPercentage,localizedPeriod:g,localizedPromoPeriod:u,localizedPromoPrice:p,localizedCalculatedPrice:m,localizedCalculatedPeriod:h,baseLocalizedPricingText:n(f),baseLocalizedPromoText:n(y),productTitle:String(e.title??""),productDescription:String(e.description??""),productCurreny:o.currency,productId:String(e.productId??""),productSelected:"true",subscribe:n(l?"base.builder.paywall.button.subscribe-free":"base.builder.paywall.button.subscribe")}}function usePaywallLocalizationParams(e,t,i){return React.useMemo(()=>{if(!e||!i?.platform)return{};try{const r=i.builderProducts?.find(e=>e.store_package_id===t),n=r?.offer_id;return buildPaywallLocalizationParams(e,i.platform,n,i.localize)}catch(e){return console.error("[usePaywallLocalizationParams] Error:",e),{}}},[e,t,i])}var presetsJson$1={"preset-1":[{productId:"com.app.monthly",id:"com.app.monthly",title:"Monthly",description:"Unlock all features for a month.",type:"subs",displayName:"Monthly Subscription",displayPrice:"$4.99",localizedPrice:"$4.99",currency:"USD",price:"4.99",platform:"android",subscriptionOffers:[{id:"monthly-trial-offer",displayPrice:"Free → $4.99",price:0,type:"promotional",currency:"USD",basePlanIdAndroid:"monthly-base",offerTokenAndroid:"mock_token_monthly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P3D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"$4.99",priceAmountMicros:"4990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:3,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:3},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.yearly",id:"com.app.yearly",title:"Yearly (Save 33%)",description:"Best value: full access for a year.",type:"subs",displayName:"Yearly Subscription",displayPrice:"$29.99",localizedPrice:"$29.99",currency:"USD",price:"29.99",platform:"android",subscriptionOffers:[{id:"yearly-promo-offer",displayPrice:"$19.99",price:19.99,type:"promotional",currency:"USD",basePlanIdAndroid:"yearly-base",offerTokenAndroid:"mock_token_yearly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P1Y",formattedPrice:"$19.99",priceAmountMicros:"19990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"$29.99",priceAmountMicros:"29990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"19.99",priceIOS:"19.99",type:"pay_as_you_go",numberOfPeriods:1,subscriptionPeriod:"YEAR",subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},discounts:[{identifier:"yearly-promo-offer",price:"19.99",numberOfPeriods:1,subscriptionPeriod:"YEAR"}],subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},{productId:"com.app.weekly",id:"com.app.weekly",title:"Weekly",description:"Try with a flexible weekly plan.",type:"subs",displayName:"Weekly Subscription",displayPrice:"$1.99",localizedPrice:"$1.99",currency:"USD",price:"1.99",platform:"android",subscriptionOffers:[{id:"weekly-base",displayPrice:"$0.99",price:.99,type:"promotional",currency:"USD",basePlanIdAndroid:"weekly-base",offerTokenAndroid:"mock_token_weekly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:4,billingPeriod:"P1W",formattedPrice:"$0.99",priceAmountMicros:"990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1W",formattedPrice:"$1.99",priceAmountMicros:"1990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.99",priceIOS:"0.99",type:"pay_as_you_go",numberOfPeriods:4,subscriptionPeriod:"WEEK",subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1},subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1}],"preset-2":[{productId:"com.app.premium.monthly",id:"com.app.premium.monthly",title:"Premium Monthly",description:"Premium tier with all features.",type:"subs",displayName:"Premium Monthly",displayPrice:"$9.99",localizedPrice:"$9.99",currency:"USD",price:"9.99",platform:"android",subscriptionOffers:[{id:"premium-monthly-trial-offer",displayPrice:"Free → $9.99",price:0,type:"promotional",currency:"USD",basePlanIdAndroid:"premium-monthly-base",offerTokenAndroid:"mock_token_premium_monthly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P7D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"$9.99",priceAmountMicros:"9990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:7,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:7},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.premium.yearly",id:"com.app.premium.yearly",title:"Premium Yearly (Save 50%)",description:"7-day free trial, then $29.99 first year, $59.99/yr after.",type:"subs",displayName:"Premium Yearly",displayPrice:"$59.99",localizedPrice:"$59.99",currency:"USD",price:"59.99",platform:"android",subscriptionOffers:[{id:"premium-yearly-full-offer",displayPrice:"$29.99",price:29.99,type:"promotional",currency:"USD",basePlanIdAndroid:"premium-yearly-base",offerTokenAndroid:"mock_token_premium_yearly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P7D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"USD",recurrenceMode:3},{billingCycleCount:1,billingPeriod:"P1Y",formattedPrice:"$29.99",priceAmountMicros:"29990000",priceCurrencyCode:"USD",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"$59.99",priceAmountMicros:"59990000",priceCurrencyCode:"USD",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:7,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:7},discounts:[{identifier:"premium-yearly-full-offer",price:"29.99",numberOfPeriods:1,subscriptionPeriod:"YEAR"}],subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1},{productId:"com.app.lifetime",id:"com.app.lifetime",title:"Lifetime",description:"One-time purchase for lifetime access.",type:"in-app",displayName:"Lifetime Access",displayPrice:"$99.99",localizedPrice:"$99.99",currency:"USD",price:"99.99",platform:"android",subscriptionOffers:[]}],"preset-3":[{productId:"com.app.budget.weekly",id:"com.app.budget.weekly",title:"Budget Weekly",description:"Affordable weekly plan.",type:"subs",displayName:"Budget Weekly",displayPrice:"€2.99",localizedPrice:"€2.99",currency:"EUR",price:"2.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"budget-weekly-trial-offer",displayPrice:"Free → €2.99",price:0,type:"promotional",currency:"EUR",basePlanIdAndroid:"budget-weekly-base",offerTokenAndroid:"mock_token_budget_weekly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P3D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"EUR",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1W",formattedPrice:"€2.99",priceAmountMicros:"2990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:3,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:3},subscriptionPeriodUnitIOS:"WEEK",subscriptionPeriodNumberIOS:1},{productId:"com.app.monthly.promo",id:"com.app.monthly.promo",title:"Monthly (70% off first 3 months)",description:"€2.99/mo for 3 months, then €9.99/mo.",type:"subs",displayName:"Monthly with Promo",displayPrice:"€9.99",localizedPrice:"€9.99",currency:"EUR",price:"9.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"monthly-promo-offer",displayPrice:"€2.99",price:2.99,type:"promotional",currency:"EUR",basePlanIdAndroid:"monthly-promo",offerTokenAndroid:"mock_token_monthly_promo",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:3,billingPeriod:"P1M",formattedPrice:"€2.99",priceAmountMicros:"2990000",priceCurrencyCode:"EUR",recurrenceMode:2},{billingCycleCount:0,billingPeriod:"P1M",formattedPrice:"€9.99",priceAmountMicros:"9990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"2.99",priceIOS:"2.99",type:"pay_as_you_go",numberOfPeriods:3,subscriptionPeriod:"MONTH",subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},subscriptionPeriodUnitIOS:"MONTH",subscriptionPeriodNumberIOS:1},{productId:"com.app.yearly.trial",id:"com.app.yearly.trial",title:"Yearly (14-day free trial)",description:"Try free for 14 days, then €29.99/yr.",type:"subs",displayName:"Yearly with Trial",displayPrice:"€29.99",localizedPrice:"€29.99",currency:"EUR",price:"29.99",currencyCode:"EUR",platform:"android",subscriptionOffers:[{id:"yearly-trial-offer",displayPrice:"Free → €29.99",price:0,type:"promotional",currency:"EUR",basePlanIdAndroid:"yearly-trial",offerTokenAndroid:"mock_token_yearly_trial",pricingPhasesAndroid:{pricingPhaseList:[{billingCycleCount:1,billingPeriod:"P14D",formattedPrice:"Free",priceAmountMicros:"0",priceCurrencyCode:"EUR",recurrenceMode:3},{billingCycleCount:0,billingPeriod:"P1Y",formattedPrice:"€29.99",priceAmountMicros:"29990000",priceCurrencyCode:"EUR",recurrenceMode:1}]}}],introductoryPrice:{price:"0.00",priceIOS:"0.00",type:"free_trial",numberOfPeriods:14,subscriptionPeriod:"DAY",subscriptionPeriodUnitIOS:"DAY",subscriptionPeriodNumberIOS:14},subscriptionPeriodUnitIOS:"YEAR",subscriptionPeriodNumberIOS:1}],"vpn-pro":[{productId:"com.vpn111.pro.weekly",title:"Pro Subscription (Weekly)",description:"Pro Subscription (Weekly)",localizedPrice:"₺179,99",price:"179.99",currency:"TRY",type:"subs",subscriptionOffers:[],discounts:[],subscriptionPeriodNumberIOS:7,subscriptionPeriodUnitIOS:"DAY",isConsumable:!1},{productId:"com.vpn111.pro.monthly",title:"Pro Subscription (Monthly)",description:"Pro Subscription (Monthly)",localizedPrice:"₺399,99",price:"399.99",currency:"TRY",type:"subs",subscriptionOffers:[],discounts:[],subscriptionPeriodNumberIOS:1,subscriptionPeriodUnitIOS:"MONTH",isConsumable:!1},{productId:"com.vpn111.pro.annual",title:"Pro Subscription (Annual)",description:"Pro Subscription (Annual)",localizedPrice:"₺1.999,99",price:"1999.99",currency:"TRY",type:"subs",subscriptionOffers:[{numberOfPeriodsIOS:1,paymentMode:"pay-up-front",type:"promotional",period:{value:1,unit:"year"},id:"one.year.discount.annual.offer",price:999.99,periodCount:1,displayPrice:"₺999,99",localizedPriceIOS:"₺999,99",offerId:"one.year.discount.annual.offer",localizedPrice:"₺999,99"},{numberOfPeriodsIOS:1,localizedPriceIOS:"₺149,99",displayPrice:"₺149,99",period:{value:1,unit:"month"},periodCount:1,id:"one.month.discount.annual.offer",type:"promotional",paymentMode:"pay-up-front",price:149.99,offerId:"one.month.discount.annual.offer",localizedPrice:"₺149,99"}],discounts:[{paymentMode:"pay-up-front",priceAmount:999.99,localizedPrice:"₺999,99",type:"promotional",subscriptionPeriod:"YEAR",numberOfPeriods:1,price:"999.99",identifier:"one.year.discount.annual.offer"},{numberOfPeriods:1,priceAmount:149.99,localizedPrice:"₺149,99",identifier:"one.month.discount.annual.offer",subscriptionPeriod:"MONTH",type:"promotional",paymentMode:"pay-up-front",price:"149.99"},{numberOfPeriods:1,type:"promotional",subscriptionPeriod:"YEAR",priceAmount:999.99,paymentMode:"pay-up-front",price:"999.99",localizedPrice:"₺999,99",identifier:"one.year.50discount.annual.offer"}],subscriptionPeriodNumberIOS:1,subscriptionPeriodUnitIOS:"YEAR",isConsumable:!1}]};function getMockProducts(){return JSON.parse(JSON.stringify(presetsJson$1))}function getMockProductsByPreset(e){return getMockProducts()[e]??[]}function usePaywallOptionParamsFactory(){const{localizationParams:e,otherParams:t}=useParams(),i=useRenderStore(e=>e.device),r=useLocalize(),n="ios"===i.platform?"ios":"android";return React.useCallback((i,{isSelected:o})=>{const a=buildPaywallLocalizationParams(i,n,void 0,r);return{localizationParams:{...e,...a,productSelected:o?"true":"false"},otherParams:{...t,singleProductIsSelected:o}}},[e,t,n,r])}function parseNumberLike$1(e){if(null==e)return;if("number"==typeof e&&Number.isFinite(e))return e;if("string"!=typeof e)return;const t=e.trim();if(!t)return;const i=t.replace(",","."),r=Number.parseFloat(i);return Number.isFinite(r)?r:void 0}function compareProducts(e,t,i,r){const n=parseNumberLike$1(e.price),o=parseNumberLike$1(t.price);if(void 0!==n&&void 0!==o&&n!==o)return n-o;const a=(e.title??"").trim(),s=(t.title??"").trim();if(a&&s&&a!==s)return a.localeCompare(s);if(a&&!s)return-1;if(!a&&s)return 1;const l=(e.productId??"").trim(),c=(t.productId??"").trim();return l!==c?l.localeCompare(c):i-r}function PaywallOptions({node:e}){useLogRender("PaywallOptions"),e=useNode(e);const{mockProducts:t}=useBuilderParams(),{selectedProduct:i,setSelectedProductId:r}=usePaywallContext(),n=usePaywallOptionParamsFactory(),o=React.useMemo(()=>(Array.isArray(t)?t:[]).map((e,t)=>({p:e,idx:t})).sort((e,t)=>compareProducts(e.p,t.p,e.idx,t.idx)).map(({p:e})=>e),[t]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:o.map((t,o)=>{const a=t.productId||`${o}`,s=i?.productId===a,{localizationParams:l,otherParams:c}=n(t,{isSelected:s});return jsxRuntime.jsx(ParamsProvider,{localizationParams:l,otherParams:c,children:jsxRuntime.jsx(PaywallOptionButton,{node:e,product:t,selected:s,onPress:r})},a)})})}var PaywallOptions$1=React.memo(PaywallOptions);function LocalizationParamsProvider({params:e,children:t}){return jsxRuntime.jsx(ParamsProvider,{localizationParams:e,nestedLocalizationParams:{},children:t})}function useChangeDelayByPaywall(e,t){const i=React.useMemo(()=>e?.attributes?.delay?parseInt(String(e?.attributes?.delay),10):1e3,[e?.attributes?.delay]);React.useEffect(()=>{if(!i||i<=0)return void t(!0);const e=setTimeout(()=>{t(!0)},i);return()=>clearTimeout(e)},[i,t])}function useMockOSBackHandler(e){React.useEffect(()=>registerMockOSBackHandler(()=>e),[e])}function PaywallProvider({node:e}){useLogRender("PaywallProvider"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"PaywallProvider",r=e.key??t,{mockBenefits:n,mockProducts:o,onPaywallSubscribe:a,previewMode:s,selectedKey:l}=useBuilderParams(),c=useMockOSContext(),d=React.useMemo(()=>{const e=n&&"object"==typeof n&&!Array.isArray(n)?n:{},t=Object.entries(e).filter(([e])=>e.trim().length>0),i=Object.fromEntries(t.map(([e,t])=>[e.trim(),String(t)]));for(let e=0;e<t.length;e+=1){const[,r]=t[e],n=String(r);i[`benefit${e+1}`]=n}return i},[n]),p=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!s,current:l?{key:l}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),[g,u]=React.useState(""),[m,h]=React.useState(!1);useChangeDelayByPaywall(e,h),useMockOSBackHandler(m),React.useEffect(()=>{const e=Array.isArray(o)?o:[];if(0===e.length)return void(g&&u(""));const t=e.some(e=>e?.productId===g);g&&t||u(e[0]?.productId??"")},[o,g]);const f=React.useMemo(()=>{const e=Array.isArray(o)?o:[];return e.find(e=>e?.productId===g)??(e.length>0?e[0]:void 0)},[o,g]),y=useRenderStore(e=>e.device),b=useLocalize(),C="ios"===y.platform?"ios":"android",x=usePaywallLocalizationParams(f,g,{platform:C,localize:b}),v=React.useCallback(()=>{if(m&&c?.isEnabled){c.goBack()||c.navigation("launchscreen")}},[c,m]),S=React.useCallback(async e=>{if(a){const t=a(e),i=t instanceof Promise?await t:!0===t;return i&&c?.isEnabled&&c.goBack?.(),i}const t=e?.productId;if(c?.isEnabled&&t&&c.requestSubscriptionPurchase){const e=await c.requestSubscriptionPurchase(t);return e&&c.goBack?.(),e}return!1},[c,a]),w=React.useCallback(()=>{if(m&&c?.isEnabled){c.goBack()||c.navigation("launchscreen")}},[m,c]),k=React.useMemo(()=>({products:Array.isArray(o)?o:[],setSelectedProductId:u,selectedProduct:f,onClose:v,onSubscribe:S,onCounterDown:w,isBackAllowed:m}),[o,f,v,S,w,m]);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:p,children:jsxRuntime.jsx(PaywallContext.Provider,{value:k,children:jsxRuntime.jsx(LocalizationParamsProvider,{params:{...d,...x,platform:C},children:jsxRuntime.jsx(RenderNode$1,{node:e.children})})})})}var PaywallProvider$1=React.memo(PaywallProvider);function PaywallSubscribeButton({node:e}){useLogRender("PaywallSubscribeButton"),e=useNode(e);const{onSubscribe:t,selectedProduct:i}=usePaywallContext(),r=React.useId(),n=e.sourceType??e.type??"PaywallSubscribeButton",o=e.key??r,{previewMode:a,selectedKey:s}=useBuilderParams(),l=useMergedStyle(useExtractTextStyle$1(e),isNodeSelected({previewMode:!!a,current:s?{key:s}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),c=useLocalize(),d="string"==typeof e.children&&e.children.trim().length>0?e.children:"Subscribe";return jsxRuntime.jsx("a",{type:"button","attribute-name":n,"attribute-key":o,href:"#",onClick:e=>{e.preventDefault(),t?.(i)},style:{...l,cursor:"pointer"},children:c(d)})}var PaywallSubscribeButton$1=React.memo(PaywallSubscribeButton);function PriceTag({node:e}){useLogRender("PriceTag"),e=useNode(e);const t=useLocalizationParams(),i=!!t?.promoPrice;return(e.attributes?.hideIfItsNotDiscount??!1)&&!i?null:jsxRuntime.jsx(Text$1,{node:e})}var PriceTag$1=React.memo(PriceTag);function Pricing({node:e}){return useLogRender("Pricing"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var Pricing$1=React.memo(Pricing);function Promo({node:e}){return useLogRender("Promo"),e=useNode(e),jsxRuntime.jsx(Text$1,{node:e})}var Promo$1=React.memo(Promo);function parseNumberLike(e){if(null==e)return;if("number"==typeof e&&Number.isFinite(e))return e;if("string"!=typeof e)return;const t=e.trim();if(!t)return;const i=t.replace(",","."),r=Number.parseFloat(i);return Number.isFinite(r)?r:void 0}function RadioButtonBase({selected:e,color:t,size:i=24}){const r=Math.round(.1*i),n=Math.round(.5*i),{projectColors:o}=useBuilderParams(),a=t??o?.STATIC_COLORS?.RADIO_BUTTON_COLOR??"#A6A6A6",s=React.useContext(ParamsContext),{singleProductIsSelected:l}=s?.otherParams??{},c=l??e;return jsxRuntime.jsx("div",{style:{marginLeft:8,marginRight:16},children:jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",borderWidth:r,borderStyle:"solid",borderColor:a,width:i,height:i,borderRadius:n,boxSizing:"border-box",flex:"0 0 auto"},children:c?jsxRuntime.jsx("div",{style:{width:n,height:n,borderRadius:2*n,backgroundColor:a}}):jsxRuntime.jsx("div",{style:{width:i,height:i,borderRadius:n}})})})}function RadioButton({node:e}){useLogRender("RadioButton"),e=useNode(e);const t=React.useId(),i=e.type??"RadioButton",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0),s=e.attributes,l=Boolean(s?.selected),c=s?.color,d=parseNumberLike(s?.size);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:jsxRuntime.jsx(RadioButtonBase,{selected:l,color:c,size:d})})}var RadioButton$1=React.memo(RadioButton);function Separator({node:e}){useLogRender("Separator"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"Separator",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a})}var Separator$1=React.memo(Separator);function StatusBarColor({node:e}){useLogRender("StatusBarColor"),e=useNode(e);const{selectedTheme:t,projectColors:i}=useBuilderParams(),r=useRenderStore(e=>e.setStatusBarOverrideColor),n=useRenderStore(e=>e.setStatusBarOverrideTranslucent),o=getStyleBag(e.attributes)?.backgroundColor,a=parseColor(o,{projectColors:i,theme:t}),s=e.attributes?.translucent;return React.useEffect(()=>(a&&r(a),void 0!==s&&n(s),()=>{r(null),n(null)}),[a,r,s,n]),null}var StatusBarColor$1=React.memo(StatusBarColor);function View({node:e}){useLogRender("View"),e=useNode(e);const t=React.useId(),i=e.sourceType??e.type??"View",r=e.key??t,{previewMode:n,selectedKey:o}=useBuilderParams(),a=useMergedStyle(useExtractViewStyle$1(e),isNodeSelected({previewMode:!!n,current:o?{key:o}:void 0,node:e})?SELECTED_OUTLINE_STYLE:void 0);return jsxRuntime.jsx("div",{"attribute-name":i,"attribute-key":r,style:a,children:e.children&&jsxRuntime.jsx(RenderNode$1,{node:e.children})})}var View$1=React.memo(View);function WebView({node:e}){useLogRender("WebView");const t=(e=useNode(e)).attributes,i=useExtractViewStyle$1(e),{selectedTheme:r,projectColors:n,device:o}=useBuilderParams(),a=React.useRef(null),[s,l]=React.useState(!0),c="ios"===(o?.platform||"ios")?t?.iosUrl:t?.androidUrl,d=r??"dark",p={projectColors:n,theme:r},g=parseColor("THEME_COLORS.BACKGROUND",p)??parseColor("STATIC_COLORS.WHITE",p)??void 0,u=parseColor("THEME_COLORS.TEXT",p)??parseColor("STATIC_COLORS.BLACK",p)??void 0,m=parseColor(t?.styles?.loaderColor,p)??u,h=t?.styles?.loaderSize??30,f=t?.styles?.loaderBorderWidth??3,y=t?.styles?.loaderAnimationDuration??1,b=useMergedStyle(null!=g?{backgroundColor:g}:void 0,null!=u?{color:u}:void 0),C=useMergedStyle(i,b,{"--rb-webview-loader-size":`${h}px`,"--rb-webview-loader-border-width":`${f}px`,"--rb-webview-loader-duration":`${y}s`}),x=useMergedStyle(b),v=useMergedStyle(b,{flex:1,minHeight:0}),S=React.useCallback(()=>{if(null==g||null==u)return;const e=a.current?.contentDocument;if(!e?.head)return void(c&&console.debug("[WebView] Theme styles not injected: contentDocument not accessible (cross-origin).","URL:",c,"— Use same-origin URL or rely on the wrapper filter for dark mode."));const t=e.querySelector("style[data-rb-webview-theme]"),i=[`body{background-color:${g};color:${u}}`,`*{color:${u}}`,`span{background-color:${g}}`].join(" ");if(t)t.textContent=i;else{const t=e.createElement("style");t.setAttribute("data-rb-webview-theme",""),t.textContent=i,e.head.appendChild(t)}},[g,u,c]),w=React.useCallback(()=>{l(!1),S()},[S]);React.useEffect(()=>{s||S()},[r,g,u,s,S]);const k="dark"===d;return jsxRuntime.jsxs("div",{className:"rb-webview",style:C,"data-testid":t?.testID,children:[s&&jsxRuntime.jsx("div",{className:"rb-webview__overlay",style:x,children:jsxRuntime.jsx("div",{className:"rb-webview__loader",style:{borderColor:null!=m?`${m}40`:void 0,borderTopColor:m??void 0}})}),jsxRuntime.jsx("div",{className:"rb-webview__frame-wrapper",style:v,children:jsxRuntime.jsx("div",{className:"rb-webview__frame-inner",style:k?{width:"100%",height:"100%",filter:"invert(1) hue-rotate(180deg)"}:{width:"100%",height:"100%"},children:jsxRuntime.jsx("iframe",{ref:a,src:c,className:"rb-webview__frame",style:{opacity:s?0:1,backgroundColor:"transparent"},onLoad:w,title:"WebView Content"})})})]})}function RenderNode({node:e}){if(isNodeNullOrUndefined(e))return null;if(isNodeString(e))return jsxRuntime.jsx(Text,{node:{children:e,type:"Text"}});if(isNodeArray(e))return jsxRuntime.jsx(jsxRuntime.Fragment,{children:e.map((e,t)=>jsxRuntime.jsx(RenderNode,{node:e},t))});const t="string"==typeof e?.type?e.type:"unknown",i=normalizeComponentType(t)??t,r={...e,type:i};switch(r.type){case"BIcon":return jsxRuntime.jsx(BIcon,{node:r});case"BackgroundImage":return jsxRuntime.jsx(BackgroundImage,{node:r});case"Button":return jsxRuntime.jsx(Button,{node:r});case"Carousel":return jsxRuntime.jsx(Carousel$1,{node:r});case"CarouselButtons":return jsxRuntime.jsx(CarouselButtons$1,{node:r});case"CarouselDots":return jsxRuntime.jsx(CarouselDots$1,{node:r});case"CarouselItem":return jsxRuntime.jsx(CarouselItem,{node:r});case"CarouselProvider":return jsxRuntime.jsx(CarouselProvider$1,{node:r});case"Checkbox":return jsxRuntime.jsx(Checkbox$1,{node:r});case"CountDown":return jsxRuntime.jsx(CountDown,{node:r});case"FormCheckbox":return jsxRuntime.jsx(FormCheckbox,{node:r});case"FormErrorText":return jsxRuntime.jsx(FormErrorText,{node:r});case"FormProvider":return jsxRuntime.jsx(FormProvider,{node:r});case"FormSubmitButton":return jsxRuntime.jsx(FormSubmitButton,{node:r});case"Image":return jsxRuntime.jsx(Image$2,{node:r});case"Main":return jsxRuntime.jsx(Main$1,{node:r});case"NavigationBarColor":return jsxRuntime.jsx(NavigationBarColor$1,{node:r});case"Onboard":return jsxRuntime.jsx(Onboard$1,{node:r});case"OnboardButton":return jsxRuntime.jsx(OnboardButton,{node:r});case"OnboardButtons":return jsxRuntime.jsx(OnboardButtons$1,{node:r});case"OnboardDot":return jsxRuntime.jsx(OnboardDot,{node:r});case"OnboardFooter":return jsxRuntime.jsx(OnboardFooter$1,{node:r});case"OnboardImage":return jsxRuntime.jsx(OnboardImage$1,{node:r});case"OnboardItem":return jsxRuntime.jsx(OnboardItem$1,{node:r});case"OnboardProvider":return jsxRuntime.jsx(OnboardProvider$1,{node:r});case"OnboardSubtitle":return jsxRuntime.jsx(OnboardSubtitle$1,{node:r});case"OnboardTitle":return jsxRuntime.jsx(OnboardTitle$1,{node:r});case"PaywallBackground":return jsxRuntime.jsx(PaywallBackground$1,{node:r});case"PaywallCloseButton":return jsxRuntime.jsx(PaywallCloseButton,{node:r});case"PaywallFooter":return jsxRuntime.jsx(PaywallFooter$1,{node:r});case"PaywallOptions":return jsxRuntime.jsx(PaywallOptions$1,{node:r});case"PaywallProvider":return jsxRuntime.jsx(PaywallProvider$1,{node:r});case"PaywallSubscribeButton":return jsxRuntime.jsx(PaywallSubscribeButton$1,{node:r});case"PriceTag":return jsxRuntime.jsx(PriceTag$1,{node:r});case"Pricing":return jsxRuntime.jsx(Pricing$1,{node:r});case"Promo":return jsxRuntime.jsx(Promo$1,{node:r});case"RadioButton":return jsxRuntime.jsx(RadioButton$1,{node:r});case"Separator":return jsxRuntime.jsx(Separator$1,{node:r});case"StatusBarColor":return jsxRuntime.jsx(StatusBarColor$1,{node:r});case"SystemButton":return jsxRuntime.jsx(SystemButton,{node:r});case"Text":return jsxRuntime.jsx(Text,{node:r});case"View":return jsxRuntime.jsx(View$1,{node:r});case"WebView":return jsxRuntime.jsx(WebView,{node:r});default:return other(t,e)}}var RenderNode$1=React.memo(RenderNode);const allcomponentNames=["BIcon","BackgroundImage","Button","Carousel","CarouselButtons","CarouselDots","CarouselItem","CarouselProvider","Checkbox","CountDown","FormCheckbox","FormErrorText","FormProvider","FormSubmitButton","Image","Main","NavigationBarColor","Onboard","OnboardButton","OnboardButtons","OnboardDot","OnboardFooter","OnboardImage","OnboardItem","OnboardProvider","OnboardSubtitle","OnboardTitle","PaywallBackground","PaywallCloseButton","PaywallFooter","PaywallOptions","PaywallProvider","PaywallSubscribeButton","PriceTag","Pricing","Promo","RadioButton","Separator","StatusBarColor","SystemButton","Text","View","WebView"];class RenderErrorBoundary extends React.Component{constructor(){super(...arguments),this.state={error:null,errorStack:void 0,componentStack:void 0,copied:!1,copyError:null},this.copyDetails=async()=>{const e=this.buildDetails();try{if("undefined"!=typeof navigator&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),this.setState({copied:!0,copyError:null}),void window.setTimeout(()=>this.setState({copied:!1}),900)}catch{}try{if("undefined"==typeof document)return void this.setState({copied:!1,copyError:"Copy failed"});const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly","true"),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();const i=document.execCommand("copy");if(document.body.removeChild(t),!i)return void this.setState({copied:!1,copyError:"Copy failed"});this.setState({copied:!0,copyError:null}),window.setTimeout(()=>this.setState({copied:!1}),900)}catch(e){this.setState({copied:!1,copyError:e instanceof Error?e.message:"Copy failed"})}},this.reset=()=>{this.setState({error:null,errorStack:void 0,componentStack:void 0,copied:!1,copyError:null})}}static getDerivedStateFromError(e){return{error:e,errorStack:e?.stack,copied:!1,copyError:null}}componentDidCatch(e,t){const i=t.componentStack??void 0;this.setState({error:e,errorStack:e?.stack,componentStack:i}),this.props.onError?.(e,i)}buildDetails(){const{error:e,errorStack:t,componentStack:i}=this.state;return[`Error: ${e?.message??""}`,"",t?`Stack:\n${t}`:"Stack: (missing)","",i?`React component stack:\n${i}`:"React component stack: (missing)"].join("\n")}render(){const{error:e,copied:t,copyError:i}=this.state;if(!e)return this.props.children;const r=this.buildDetails();return jsxRuntime.jsxs("div",{role:"alert",style:{padding:16,borderRadius:12,background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",color:"hsl(var(--card-foreground, var(--rb-card-foreground, 220.9 39.3% 11%)))",border:"1px solid hsl(var(--border, var(--rb-border, 220 13% 91%)) / 0.9)"},children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("div",{style:{fontWeight:700},children:"Preview crashed"}),this.props.subtitle&&jsxRuntime.jsxs("div",{style:{opacity:.8,fontSize:12},children:["(",this.props.subtitle,")"]}),jsxRuntime.jsxs("div",{style:{marginLeft:"auto",display:"flex",gap:8},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:this.copyDetails,children:t?"Copied":"Copy details"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:this.reset,children:"Try again"})]})]}),i&&jsxRuntime.jsx("div",{style:{marginTop:8,color:"hsl(var(--destructive, var(--rb-destructive, 0 84.2% 60.2%)))",fontSize:12},children:i}),jsxRuntime.jsx("pre",{style:{marginTop:12,whiteSpace:"pre-wrap",wordBreak:"break-word",fontSize:12,lineHeight:1.4,background:"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)))",padding:12,borderRadius:10,overflow:"auto",maxHeight:360},children:r})]})}}function findNodeByKeyNested(e,t){if(null==e)return null;if("string"==typeof e)return null;if(Array.isArray(e)){for(const i of e){const e=findNodeByKeyNested(i,t);if(e)return e}return null}const i=e;return i.key===t?i:i.children?findNodeByKeyNested(i.children,t):null}function usePreviewSelection({previewMode:e,data:t,rootRef:i,onSelectNode:r,setCurrent:n,forceRender:o}){React.useEffect(()=>{if(!e)return;const o=i.current;if(!o)return;const a=e=>{const i=e.target;if(!i)return;if(i.closest(".embla__dot"))return;let o=i.closest("[attribute-key]");for(;o;){const e=o.getAttribute("attribute-key");if(e){const i=findNodeByKeyNested(t,e);if(i)return n(i),void r?.(i)}o=o.parentElement?.closest("[attribute-key]")??null}};return o.addEventListener("click",a),()=>{o.removeEventListener("click",a)}},[e,t,r,n,o,i])}function isNullish(e){return null==e}function RenderPage({data:e,name:t,onSelectNode:i,params:r}){useLogRender("RenderPage");const{products:n,benefits:o,selectedTheme:a,selectedLanguage:s,overrideLocalization:l,overrideBaseSize:c,overrideProjectColors:d,overrideFonts:p,appFont:g,previewMode:u,current:m,forceRender:h,device:f,setCurrent:y}=useRenderStore(e=>({products:e.products,benefits:e.benefits,selectedTheme:e.theme,selectedLanguage:e.defaultLanguage,overrideLocalization:e.localization,overrideBaseSize:e.baseSize,device:e.device,overrideProjectColors:e.projectColors,overrideFonts:e.fonts,appFont:e.appFont,previewMode:e.previewMode,current:e.current,forceRender:e.forceRender,setCurrent:e.setCurrent})),b=React.useRef(null),C=React.useRef(!1),x=isNullish(e);return usePreviewSelection({previewMode:!!u,data:e,rootRef:b,onSelectNode:i,setCurrent:y,forceRender:h}),React.useEffect(()=>{if(C.current)return;const e=l?Object.keys(l):[],t=!l||0===e.length||JSON.stringify(l)===JSON.stringify(defaultLocalization),i=!d||JSON.stringify(d)===JSON.stringify(defaultProjectColors);if(t||i){const e=[];t&&e.push("localization"),i&&e.push("projectColors"),C.current=!0,console.warn(`[RenderPage] ⚠️ Using default ${e.join(" & ")}. Provide overrides via the store or params to avoid fallback values.`)}},[l,d]),jsxRuntime.jsx(RenderErrorBoundary,{subtitle:"caught by RenderPage",children:jsxRuntime.jsx(BuilderProvider,{params:{selectedTheme:a,selectedLanguage:s,localization:l,baseSize:c,mockProducts:n,mockBenefits:o,projectColors:d??void 0,fonts:p,previewMode:u,selectedKey:m&&"object"==typeof m&&"key"in m?m.key:void 0,device:f,...r},children:jsxRuntime.jsx(DeviceMockFrame,{appName:t,children:jsxRuntime.jsxs("div",{className:"screen-preview",ref:b,style:{fontFamily:g?`"${g}"`:void 0},children:[isNullish(e)?null:jsxRuntime.jsx(RenderNode$1,{node:e}),x&&jsxRuntime.jsx("div",{className:"rb-empty-preview","aria-hidden":"true",children:jsxRuntime.jsxs("div",{className:"rb-empty-preview__card",children:[jsxRuntime.jsx("div",{className:"rb-empty-preview__title",children:"Empty screen"}),jsxRuntime.jsx("div",{className:"rb-empty-preview__hint",children:"Add a component to start"})]})})]})})})})}function copyNode(e){const{setCopiedNode:t}=useRenderStore.getState();t(e)}function isNodeDataLike(e){if("object"!=typeof e||null===e||Array.isArray(e))return!1;return"type"in e&&"children"in e}function normalizeKey(e){if("string"!=typeof e)return;const t=e.trim();return t.length>0?t:void 0}function collectNodeKeysInto(e,t){if(null==e)return;if("string"==typeof e)return;if(Array.isArray(e))return void e.forEach(e=>collectNodeKeysInto(e,t));if(!isNodeDataLike(e))return;const i=normalizeKey(e.key);i&&t.add(i),collectNodeKeysInto(e.children,t)}function collectNodeKeys(e){const t=new Set;return collectNodeKeysInto(e,t),t}function generateUniqueKey(e,t){let i="";do{i=generateRandomKeyForNode(e||"Node")}while(t.has(i));return i}function repairNodeKeys(e,t=new Set){if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let i=!1;const r=e.map(e=>{const r=repairNodeKeys(e,t);return r!==e&&(i=!0),r});return i?r:e}if(!isNodeDataLike(e))return e;const i=e,r=normalizeKey(i.key),n=!r||t.has(r)?generateUniqueKey(i.type,t):r;t.add(n);const o=i.children,a=repairNodeKeys(o,t);return n!==r||a!==o?{...i,key:n,children:a}:e}const platformIcons={android:getImage(exports.TribeAssetName.Android),ios:getImage(exports.TribeAssetName.Apple)};function DeviceButton({device:e,selectedDevice:t,onSelect:i,isFavorite:r,onToggleFavorite:n,onEdit:o}){const a=platformIcons[e.platform],s=e.aspect??(()=>{const t=e.height/e.width;return t>=2.05?"tall":t<=1.75?"wide":"regular"})();return jsxRuntime.jsxs("button",{type:"button",className:"editor-device-button"+(t===e?" editor-device-button--selected":""),onClick:()=>i(e),children:[n&&jsxRuntime.jsx("span",{className:"editor-device-button__favorite",onClick:t=>{t.stopPropagation(),n(e,t)},title:r?"Remove from favorites":"Add to favorites",style:{position:"absolute",top:4,right:4,cursor:"pointer",opacity:r?1:.3,color:r?"#ecc538":"currentColor"},children:jsxRuntime.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:r?"currentColor":"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsxRuntime.jsx("polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"})})}),e.name," ",jsxRuntime.jsx("br",{}),e.width,"×",e.height," (",s,")",a&&jsxRuntime.jsx("span",{className:"editor-device-button__platform",children:jsxRuntime.jsx("img",{src:a,alt:"","aria-hidden":"true"})}),o&&jsxRuntime.jsx("span",{className:"editor-device-button__edit",onClick:t=>{t.stopPropagation(),o(e,t)},title:"Edit device",style:{position:"absolute",bottom:4,left:4,cursor:"pointer",opacity:.5},children:jsxRuntime.jsxs("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsxRuntime.jsx("path",{d:"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"}),jsxRuntime.jsx("path",{d:"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"})]})})]})}function Modal({onClose:e,ariaLabelledBy:t,children:i,className:r,contentClassName:n,closeOnOverlayClick:o=!0,closeOnEsc:a=!0}){React.useEffect(()=>{if(!a)return;if("undefined"==typeof window)return;const t=t=>{"Escape"===t.key&&e()};return window.addEventListener("keydown",t),()=>window.removeEventListener("keydown",t)},[a,e]);const s=jsxRuntime.jsxs("div",{className:"modal"+(r?` ${r}`:""),role:"dialog","aria-modal":"true","aria-labelledby":t,children:[jsxRuntime.jsx("div",{className:"modal__overlay",onClick:o?t=>{t.target===t.currentTarget&&e()}:void 0}),jsxRuntime.jsx("div",{className:"modal__content"+(n?` ${n}`:""),role:"document",children:i})]});return"undefined"==typeof document?s:reactDom.createPortal(s,document.body)}const identity=e=>e;function useStore(e,t=identity){const i=React.useSyncExternalStore(e.subscribe,React.useCallback(()=>t(e.getState()),[e,t]),React.useCallback(()=>t(e.getInitialState()),[e,t]));return React.useDebugValue(i),i}const createImpl=e=>{const t=createStore(e),i=e=>useStore(t,e);return Object.assign(i,t),i},create=e=>createImpl,useCustomDeviceStore=create()(persist(e=>({customDevices:[],addCustomDevice:t=>e(e=>({customDevices:[t,...e.customDevices.filter(e=>e.name!==t.name)]})),removeCustomDevice:t=>e(e=>({customDevices:e.customDevices.filter(e=>e.name!==t)})),updateCustomDevice:(t,i)=>e(e=>({customDevices:e.customDevices.map(e=>e.name===t?i:e)}))}),{name:"custom-devices-storage"}));function CreateDeviceModal({onClose:e,onSuccess:t,deviceToEdit:i}){const{addCustomDevice:r,updateCustomDevice:n}=useCustomDeviceStore(),{register:o,handleSubmit:a,watch:s,formState:{errors:l}}=useForm({defaultValues:i?{name:i.name,platform:i.platform,type:i.type,width:i.width,height:i.height,insetTop:i.insets?.[0]??0,insetRight:i.insets?.[1]??0,insetBottom:i.insets?.[2]??0,insetLeft:i.insets?.[3]??0,navigationBarType:i.navigationBarType,radius:i.radius,importance:i.importance,multiplier:i.multiplier}:{platform:"ios",type:"phone",navigationBarType:"homeIndicator",width:375,height:812,insetTop:44,insetBottom:34,insetLeft:0,insetRight:0,radius:40,importance:10,multiplier:1}}),c=s("platform");return jsxRuntime.jsxs(Modal,{onClose:e,ariaLabelledBy:"create-device-title",contentClassName:"create-device-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"create-device-title",className:"modal__title",children:i?"Edit Custom Device":"Create Custom Device"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:e,children:"Cancel"})]}),jsxRuntime.jsxs("form",{onSubmit:a(o=>{const a={name:o.name,platform:o.platform,width:Number(o.width),height:Number(o.height),type:o.type,radius:Number(o.radius),insets:[Number(o.insetTop),Number(o.insetRight),Number(o.insetBottom),Number(o.insetLeft)],navigationBarType:o.navigationBarType,aspect:(()=>{const e=Number(o.height)/Number(o.width);return e>=2.05?"tall":e<=1.75?"wide":"regular"})(),importance:Number(o.importance),multiplier:Number(o.multiplier)};i?n(i.name,a):r(a),t(a),e()}),className:"modal__body create-device-form",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Device Name"}),jsxRuntime.jsx("input",{...o("name",{required:"Name is required"}),className:"editor-input",placeholder:"e.g. My Custom iPhone"}),l.name&&jsxRuntime.jsx("span",{className:"create-device-form__error",children:l.name.message})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Platform"}),jsxRuntime.jsxs("select",{...o("platform"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"ios",children:"iOS"}),jsxRuntime.jsx("option",{value:"android",children:"Android"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Type"}),jsxRuntime.jsxs("select",{...o("type"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"phone",children:"Phone"}),jsxRuntime.jsx("option",{value:"tablet",children:"Tablet"})]})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Width (px)"}),jsxRuntime.jsx("input",{type:"number",...o("width",{required:!0,min:1}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Height (px)"}),jsxRuntime.jsx("input",{type:"number",...o("height",{required:!0,min:1}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Safe Area Top"}),jsxRuntime.jsx("input",{type:"number",...o("insetTop",{min:0}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Safe Area Bottom"}),jsxRuntime.jsx("input",{type:"number",...o("insetBottom",{min:0}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Navigation Bar"}),jsxRuntime.jsxs("select",{...o("navigationBarType"),className:"editor-input",children:[jsxRuntime.jsx("option",{value:"none",children:"None"}),"ios"===c?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("option",{value:"homeIndicator",children:"Home Indicator"}),jsxRuntime.jsx("option",{value:"tabBar",children:"Tab Bar"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("option",{value:"threeButtons",children:"Three Buttons"}),jsxRuntime.jsx("option",{value:"gesture",children:"Gesture"})]})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Corner Radius"}),jsxRuntime.jsx("input",{type:"number",...o("radius",{min:0}),className:"editor-input"})]})]}),jsxRuntime.jsxs("div",{className:"create-device-form__row",children:[jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Scale Multiplier"}),jsxRuntime.jsx("input",{type:"number",step:"0.01",...o("multiplier",{min:.1,max:2}),className:"editor-input"})]}),jsxRuntime.jsxs("div",{className:"create-device-form__group",children:[jsxRuntime.jsx("label",{className:"create-device-form__label",children:"Importance (1-100)"}),jsxRuntime.jsx("input",{type:"number",...o("importance",{min:1,max:100}),className:"editor-input"})]})]}),jsxRuntime.jsx("div",{className:"create-device-modal__footer",children:jsxRuntime.jsx("button",{type:"submit",className:"editor-button editor-button--primary",style:{width:"100%"},children:i?"Update Device":"Save Device"})})]})]})}function DeviceSelectorModal({devices:e,selectedDevice:t,onSelect:i,onClose:r}){const[n,o]=React.useState(""),[a,s]=React.useState(!1),[l,c]=React.useState(null),{favoriteDevices:d,toggleFavoriteDevice:p}=useRenderStore(e=>({favoriteDevices:e.favoriteDevices||[],toggleFavoriteDevice:e.toggleFavoriteDevice})),{customDevices:g,removeCustomDevice:u}=useCustomDeviceStore(),m=React.useMemo(()=>[...g,...e],[g,e]),h=e=>{i(e),r()},f=React.useMemo(()=>m.filter(e=>e.name.toLowerCase().includes(n.toLowerCase())),[m,n]),{favorites:y,others:b}=React.useMemo(()=>{const e=[],t=[];return f.forEach(i=>{d.includes(i.name)?e.push(i):t.push(i)}),{favorites:e,others:t}},[f,d]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"device-selector-title",contentClassName:"device-selector-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"device-selector-title",className:"modal__title",children:"Select a device"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button","aria-label":"Close device selector",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"device-selector-modal__search-container",children:[jsxRuntime.jsx("input",{type:"text",placeholder:"Search devices...",value:n,onChange:e=>o(e.target.value),className:"editor-input"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button editor-button--primary",onClick:()=>s(!0),children:"Add New"})]}),jsxRuntime.jsxs("div",{className:"device-selector-modal__body",style:{display:"flex",flexDirection:"column",gap:"16px"},children:[y.length>0&&jsxRuntime.jsxs("section",{children:[jsxRuntime.jsx("h4",{style:{margin:"0 16px 8px",fontSize:"14px",fontWeight:"bold"},children:"Favorites"}),jsxRuntime.jsx("div",{className:"device-selector-modal__grid",role:"list",children:y.map(e=>jsxRuntime.jsx(DeviceButton,{device:e,selectedDevice:t,onSelect:h,isFavorite:!0,onToggleFavorite:e=>p(e.name),onEdit:e=>c(e)},`fav-${e.name}`))})]}),jsxRuntime.jsxs("section",{children:[y.length>0&&jsxRuntime.jsx("h4",{style:{margin:"0 16px 8px",fontSize:"14px",fontWeight:"bold"},children:"All Devices"}),jsxRuntime.jsx("div",{className:"device-selector-modal__grid",role:"list",children:b.map(e=>jsxRuntime.jsx(DeviceButton,{device:e,selectedDevice:t,onSelect:h,isFavorite:!1,onToggleFavorite:e=>p(e.name),onEdit:g.some(t=>t.name===e.name)?e=>c(e):void 0},`other-${e.name}`))})]})]}),a&&jsxRuntime.jsx(CreateDeviceModal,{onClose:()=>s(!1),onSuccess:e=>{i(e),r()}}),l&&jsxRuntime.jsx(CreateDeviceModal,{deviceToEdit:l,onClose:()=>c(null),onSuccess:e=>{i(e),r()}})]})}var name$m="hello-world",version$m="1.1.2",type$m="other",data$m={type:"View",attributes:{scrollable:!0,description:"View element 1 in sample.",title:"View 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:16,backgroundColor:"#F5F7FA"},testID:"View-test-id-1"},children:[{type:"Text",children:"hello-world",attributes:{description:"Text element 1 in sample.",title:"Text 1",styles:{color:"#111827",fontSize:24,fontWeight:"600"},testID:"Text-test-id-1"}},{type:"Text",children:"Welcome to react-native-builder",attributes:{description:"Text element 2 in sample.",title:"Text 2",styles:{color:"#6B7280",fontSize:14,fontWeight:"400"},testID:"Text-test-id-2"}}]},attributes$k={testID:"other-test-id-1"},simple1={name:name$m,version:version$m,type:type$m,data:data$m,attributes:attributes$k},name$l="hello-world-2-advanced",version$l="1.1.2",type$l="other",data$l={type:"view",attributes:{scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",gap:16,padding:16,backgroundColor:"#F3F4F6"},testID:"view-test-id-1"},children:[{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#111827",borderRadius:12},testID:"view-test-id-2"},children:[{type:"text",children:"Dashboard",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{color:"#FFFFFF",fontSize:20,fontWeight:"600"},testID:"text-test-id-1"}},{type:"view",attributes:{description:"view element 3 in sample.",title:"view 3",styles:{flexDirection:"row",gap:8},testID:"view-test-id-3"},children:[{type:"text",children:"Help",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{color:"#D1D5DB",fontSize:14},testID:"text-test-id-2"}},{type:"text",children:"Profile",attributes:{description:"text element 3 in sample.",title:"text 3",styles:{color:"#D1D5DB",fontSize:14},testID:"text-test-id-3"}}]}]},{type:"image",attributes:{src:"https://picsum.photos/720/320",description:"image element 1 in sample.",title:"image 1",styles:{width:358,height:160,borderRadius:12},testID:"image-test-id-1"},children:null},{type:"view",attributes:{description:"view element 4 in sample.",title:"view 4",styles:{flexDirection:"column",gap:8,padding:12,backgroundColor:"#FFFFFF",borderRadius:12},testID:"view-test-id-4"},children:[{type:"text",children:"Welcome back!",attributes:{description:"text element 4 in sample.",title:"text 4",styles:{color:"#111827",fontSize:18,fontWeight:"600"},testID:"text-test-id-4"}},{type:"text",children:"Here's what's new today.",attributes:{description:"text element 5 in sample.",title:"text 5",styles:{color:"#6B7280",fontSize:14},testID:"text-test-id-5"}}]},{type:"view",attributes:{description:"view element 5 in sample.",title:"view 5",styles:{flexDirection:"column",gap:12},testID:"view-test-id-5"},children:[{type:"view",attributes:{description:"view element 6 in sample.",title:"view 6",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-6"},children:[{type:"text",children:"Task 1",attributes:{description:"text element 6 in sample.",title:"text 6",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-6"}},{type:"text",children:"Due today",attributes:{description:"text element 7 in sample.",title:"text 7",styles:{color:"#059669",fontSize:12,fontWeight:"600"},testID:"text-test-id-7"}}]},{type:"view",attributes:{description:"view element 7 in sample.",title:"view 7",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-7"},children:[{type:"text",children:"Task 2",attributes:{description:"text element 8 in sample.",title:"text 8",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-8"}},{type:"text",children:"2 days left",attributes:{description:"text element 9 in sample.",title:"text 9",styles:{color:"#D97706",fontSize:12,fontWeight:"600"},testID:"text-test-id-9"}}]},{type:"view",attributes:{description:"view element 8 in sample.",title:"view 8",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-between",padding:12,backgroundColor:"#FFFFFF",borderRadius:8},testID:"view-test-id-8"},children:[{type:"text",children:"Task 3",attributes:{description:"text element 10 in sample.",title:"text 10",styles:{color:"#111827",fontSize:16,fontWeight:"500"},testID:"text-test-id-10"}},{type:"text",children:"Completed",attributes:{description:"text element 11 in sample.",title:"text 11",styles:{color:"#6B7280",fontSize:12,fontWeight:"600"},testID:"text-test-id-11"}}]}]},{type:"view",attributes:{description:"view element 9 in sample.",title:"view 9",styles:{flexDirection:"row",alignItems:"center",justifyContent:"space-around",padding:12,backgroundColor:"#111827",borderRadius:12},testID:"view-test-id-9"},children:[{type:"text",children:"Home",attributes:{description:"text element 12 in sample.",title:"text 12",styles:{color:"#FFFFFF",fontSize:14},testID:"text-test-id-12"}},{type:"text",children:"Search",attributes:{description:"text element 13 in sample.",title:"text 13",styles:{color:"#9CA3AF",fontSize:14},testID:"text-test-id-13"}},{type:"text",children:"Settings",attributes:{description:"text element 14 in sample.",title:"text 14",styles:{color:"#9CA3AF",fontSize:14},testID:"text-test-id-14"}}]}]},attributes$j={testID:"other-test-id-1"},simple2={name:name$l,version:version$l,type:type$l,data:data$l,attributes:attributes$j},name$k="carousel-sample",version$k="1.1.2",type$k="other",data$k={type:"Main",isMain:!0,attributes:{styles:{backgroundColor:"#f8fafc",minHeight:"100vh",padding:"24px"},testID:"Main-test-id-1"},children:{type:"carouselProvider",children:[{type:"carousel",attributes:{loop:!0,align:"center",dragFree:!0,description:"carousel element 1 in sample.",title:"carousel 1",testID:"carousel-test-id-1"},children:[{type:"carouselItem",attributes:{description:"carouselItem element 1 in sample.",title:"carouselItem 1",styles:{minWidth:0},testID:"carouselItem-test-id-1"},children:{type:"view",attributes:{description:"view element 1 in sample.",title:"view 1",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #eef2ff 0%, #ffffff 55%, #ecfeff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-1"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-1"},key:"image-49ojfyhl4d7"},{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-1"},children:"Welcome aboard",key:"text-3ougfj4mxnh"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-2"},children:"Swipe through a beautiful, validated carousel sample with images.",key:"text-2dol8grshke"}],key:"view-a8hfkdvfy7"},key:"carouselItem-5bw9x33s7ie"},{type:"carouselItem",attributes:{description:"carouselItem element 2 in sample.",title:"carouselItem 2",styles:{minWidth:0},testID:"carouselItem-test-id-2"},children:{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #f0fdf4 0%, #ffffff 55%, #eff6ff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-2"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1553877522-43269d4ea984?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-2"},key:"image-riwntk91k9"},{type:"text",attributes:{description:"text element 3 in sample.",title:"text 3",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-3"},children:"Discover features",key:"text-hmuk6f7ml4v"},{type:"text",attributes:{description:"text element 4 in sample.",title:"text 4",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-4"},children:"Dots + buttons are included, and slide sizing comes from the carousel CSS.",key:"text-dnhhoqiiri"}],key:"view-9hyw3wys30w"},key:"carouselItem-lyq2hr0qh8h"},{type:"carouselItem",attributes:{description:"carouselItem element 3 in sample.",title:"carouselItem 3",styles:{minWidth:0},testID:"carouselItem-test-id-3"},children:{type:"view",attributes:{description:"view element 3 in sample.",title:"view 3",styles:{padding:"22px",borderRadius:18,backgroundImage:"linear-gradient(135deg, #fff7ed 0%, #ffffff 55%, #f5f3ff 100%)",boxShadow:"0 10px 30px rgba(15, 23, 42, 0.10)",gap:14,height:"100%"},testID:"view-test-id-3"},children:[{type:"image",attributes:{src:"https://images.unsplash.com/photo-1551434678-e076c223a692?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",styles:{width:"auto",maxWidth:"100%",borderRadius:14},testID:"image-test-id-3"},key:"image-j9ru3r8g7km"},{type:"text",attributes:{description:"text element 5 in sample.",title:"text 5",styles:{fontSize:28,fontWeight:"700",textAlign:"center",color:"#0f172a"},testID:"text-test-id-5"},children:"Get started",key:"text-01u3fwwtkd8p"},{type:"text",attributes:{description:"text element 6 in sample.",title:"text 6",styles:{fontSize:16,textAlign:"center",color:"#334155",paddingHorizontal:8},testID:"text-test-id-6"},children:"This sample stays within validation rules (no string flex shorthand).",key:"text-w8rwg9y1hj"}],key:"view-tsjfbzn8kdj"},key:"carouselItem-6r53yswjyee"}],key:"carousel-2qa4gn0ms32"},{type:"view",attributes:{title:"Carousel Controls",description:"carousel controls view element in sample.",styles:{flex:1,gap:24,alignItems:"center",paddingTop:32},testID:"view-test-id-4"},children:[{type:"carouselDots",attributes:{dotType:"expanding_dot",testID:"carouselDots-test-id-1"},key:"carouselDots-r5ji67uoxxg"},{type:"view",attributes:{title:"Nav Buttons",description:"navigation buttons wrapper",styles:{flexDirection:"row",gap:12,alignItems:"center",justifyContent:"center"},testID:"view-test-id-5"},children:[{type:"carouselButtons",attributes:{buttonType:["previous_button"],styles:{backgroundColor:"#6366f1",borderRadius:12,padding:"12px 24px",minWidth:100},testID:"carouselButtons-test-id-1"},key:"carouselButtons-prev"},{type:"carouselButtons",attributes:{buttonType:["next_button"],styles:{backgroundColor:"#8b5cf6",borderRadius:12,padding:"12px 24px",minWidth:100},testID:"carouselButtons-test-id-2"},key:"carouselButtons-next"}],key:"view-nav-buttons"}],key:"view-controls-wrapper"}],attributes:{description:"carouselProvider element 1 in sample.",title:"carouselProvider 1",styles:{backgroundColor:"#ffffff",borderRadius:24,padding:"32px",boxShadow:"0 4px 20px rgba(0, 0, 0, 0.08)",maxWidth:"600px",margin:"0 auto"},testID:"carouselProvider-test-id-1"},key:"carouselProvider-152n4dkqvam"},key:"Main-u1cavjag9sr"},attributes$i={testID:"other-test-id-1"},carouselSample={name:name$k,version:version$k,type:type$k,data:data$k,attributes:attributes$i},name$j="unvalidated-builder1",version$j="1.1.2",type$j="other",data$j={type:"view",attributes:{foo:1,scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA"},testID:"view-test-id-1"},children:[{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center"},testID:"text-test-id-1"},children:"Intentionally unvalidated sample"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8},testID:"text-test-id-2"},children:"This project should fail validation (unknown attribute: foo). In the UI, choose “Continue without validation” to load it anyway."}]},attributes$h={testID:"other-test-id-1"},unvalidatedBuilder1={name:name$j,version:version$j,type:type$j,data:data$j,attributes:attributes$h},name$i="unvalidated-crash1",version$i="1.1.2",type$i="other",data$i={type:"OnboardFooter",attributes:{textLocalizationKey:123,description:"OnboardFooter element 1 in sample.",title:"OnboardFooter 1",styles:{paddingHorizontal:24,paddingVertical:16},testID:"OnboardFooter-test-id-1"},children:null},attributes$g={testID:"other-test-id-1"},unvalidatedCrash1={name:name$i,version:version$i,type:type$i,data:data$i,attributes:attributes$g},name$h="unvalidated-crashcomponent1",version$h="1.1.2",type$h="other",data$h={type:"CrashComponent",attributes:{reason:"Intentional crash for GUI testing",note:"This component is not in the Add Component modal; it only exists via JSON.",description:"CrashComponent element 1 in sample.",title:"CrashComponent 1",testID:"CrashComponent-test-id-1"},children:null},attributes$f={testID:"other-test-id-1"},unvalidatedCrashComponent1={name:name$h,version:version$h,type:type$h,data:data$h,attributes:attributes$f},name$g="unmigrated-builder1",version$g="1.0.0",type$g="other",data$g={type:"view",attributes:{scrollable:!0,flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA",description:"view element 1 in sample.",title:"view 1",testID:"view-test-id-1"},children:[{type:"text",attributes:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center",description:"text element 1 in sample.",title:"text 1",testID:"text-test-id-1"},children:"Intentionally unmigrated sample"},{type:"text",attributes:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8,description:"text element 2 in sample.",title:"text 2",testID:"text-test-id-2"},children:"This project has version 1.0.0 so the Migration page should appear. Click “Migrate now” to normalize legacy flat style keys into attributes.style and move misplaced props out of style (combined 1.1.2)."}]},attributes$e={testID:"other-test-id-1"},unmigratedBuilder1={name:name$g,version:version$g,type:type$g,data:data$g,attributes:attributes$e},name$f="unmigrated-builder-1.1.1",version$f="1.1.1",type$f="other",data$f={type:"view",attributes:{scrollable:!0,description:"view element 1 in sample.",title:"view 1",styles:{flexDirection:"column",alignItems:"center",justifyContent:"center",gap:12,padding:24,backgroundColor:"#F5F7FA"},testID:"view-test-id-1"},children:[{type:"text",attributes:{description:"text element 1 in sample.",title:"text 1",styles:{fontSize:22,fontWeight:"700",color:"#111827",textAlign:"center"},testID:"text-test-id-1"},children:"Intentionally unmigrated sample (for combined 1.1.2)"},{type:"text",attributes:{description:"text element 2 in sample.",title:"text 2",styles:{fontSize:14,color:"#6B7280",textAlign:"center",paddingHorizontal:8},testID:"text-test-id-2"},children:"This project has version 1.1.1 so the Migration page should appear. Click “Migrate now” to move component props and non-style flags out of attributes.style (combined 1.1.2)."},{type:"view",attributes:{description:"view element 2 in sample.",title:"view 2",styles:{flexDirection:"row",alignItems:"center",justifyContent:"center",gap:12,marginTop:16},testID:"view-test-id-2"},children:[{type:"BIcon",attributes:{description:"BIcon element 1 in sample.",title:"BIcon 1",styles:{iconType:"check",strokeWidth:3,color:"#22c55e",fontSize:"18"},testID:"BIcon-test-id-1"},children:null},{type:"image",attributes:{src:"https://images.unsplash.com/photo-1521737604893-d14cc237f11d?auto=format&fit=crop&w=1200&q=80",width:48,height:48,description:"image element 1 in sample.",title:"image 1",styles:{resizeMode:"contain",borderRadius:12},testID:"image-test-id-1"},children:null}]}]},attributes$d={testID:"other-test-id-1"},unmigratedBuilder1_1_1={name:name$f,version:version$f,type:type$f,data:data$f,attributes:attributes$d},name$e="Simple Paywall",version$e="1.1.2",type$e="paywall",data$e={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall ana sağlayıcısı. (#1)",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",title:"Paywall Background",attributes:{src:"https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",description:"Paywall arka planı. (#1)",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",title:"Paywall Inner",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:12,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#2)",title:"Benefits",styles:{flexDirection:"column",gap:0,marginTop:"4%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#3)",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#1)",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#1)",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-1"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#4)",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#2)",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#2)",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-2"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Düzen ve yerleşim konteyneri. (#5)",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"İkon öğesi. (#3)",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#3)",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-3"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Abonelik seçenekleri alanı. (#1)",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Seçim satırı öğesi. (#1)",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"Text",attributes:{description:"Metin öğesi. (#4)",title:"Product Desc(s)",styles:{flex:6},testID:"Text-test-id-4"},children:"@productDescription"},{type:"View",attributes:{title:"Price Column",styles:{flexDirection:"column",flex:2,alignItems:"flex-end"},testID:"View-test-id-6"},children:[{type:"PriceTag",attributes:{title:"Promo Price",styles:{textAlign:"right",fontWeight:"700"},testID:"PriceTag-test-id-1"},children:"@localizedCalculatedPrice"},{type:"PriceTag",attributes:{title:"Original Price",hideIfItsNotDiscount:!0,styles:{textAlign:"right",textDecorationLine:"line-through",fontSize:"12@fs",fontWeight:"400",color:"#999999"},testID:"PriceTag-test-id-2"},children:"@localizedPrice"}]},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"İkon öğesi. (#4)",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"View",attributes:{description:"Subscription butonu kapsayıcısı. (#1)",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",gap:8,paddingBottom:"50px"},testID:"View-test-id-7"},children:[{type:"Pricing",attributes:{description:"Pricing breakdown for promo/trial.",title:"Pricing Detail",testID:"Pricing-test-id-1"},children:"@baseLocalizedPricingText"},{type:"Text",attributes:{description:"Trial detayı.",title:"Trial Full",styles:{textAlign:"center",fontSize:12,color:"rgba(255,255,255,0.6)"},testID:"Text-test-id-5"},children:"@trialPeriod days free, then @price/@period"},{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}},{type:"Promo",attributes:{description:"Discount badge / promo text.",title:"Promo Badge",testID:"Promo-test-id-1"},children:"@baseLocalizedPromoText"},{type:"PaywallFooter",attributes:{textLocalizationKey:"base.builder.paywall.footer.description",linkedWordFirstLocalizationKey:"base.builder.paywall.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.builder.paywall.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"PaywallFooter-test-id-1"}}]}]}]}]},attributes$c={testID:"paywall-test-id-1"},paywall1={name:name$e,version:version$e,type:type$e,data:data$e,attributes:attributes$c},name$d="Paywall With Counter",version$d="1.1.2",type$d="paywall",data$d={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Paywall 2.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1482192596544-9eb780fc7f66?auto=format&fit=crop&w=1200&q=80",resizeMode:"cover",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-1"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-2"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"Text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"Text-test-id-3"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"Text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"Text-test-id-4"},children:"@productDescription — Unlock all premium features for a month."},{type:"Text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"Text-test-id-5"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$b={testID:"paywall-test-id-1"},paywall2={name:name$d,version:version$d,type:type$d,data:data$d,attributes:attributes$b},name$c="Paywall Back Offer",version$c="1.1.2",type$c="paywall",data$c={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Back Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1470770903676-69b98201ea1c?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"Back Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Subscription confirm button.",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$a={testID:"paywall-test-id-1"},paywallBackOffer={name:name$c,version:version$c,type:type$c,data:data$c,attributes:attributes$a},name$b="Paywall Notification Offer",version$b="1.1.2",type$b="paywall",data$b={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for Notification Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1469474968028-56623f02e42e?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"Notification Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Subscription confirm button.",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$9={testID:"paywall-test-id-1"},paywallNotificationOffer={name:name$b,version:version$b,type:type$b,data:data$b,attributes:attributes$9},name$a="Paywall App Open Offer",version$a="1.1.2",type$a="paywall",data$a={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for App Open Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1501785888041-af3ef285b470?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"App Open Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$8={testID:"paywall-test-id-1"},paywallAppOpenOffer={name:name$a,version:version$a,type:type$a,data:data$a,attributes:attributes$8},name$9="Paywall App Delete Offer",version$9="1.1.2",type$9="paywall",data$9={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Main container for App Delete Offer.",title:"Main",testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"PaywallProvider",attributes:{scrollable:!0,description:"Paywall provider container.",title:"Main Paywall",styles:{flexDirection:"column",alignItems:"stretch",justifyContent:"flex-start",position:"relative",backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallProvider-test-id-1"},children:[{type:"PaywallBackground",attributes:{src:"https://images.unsplash.com/photo-1496307042754-b4aa456c4a2d?auto=format&fit=crop&w=1200&q=80",description:"Paywall background.",title:"Paywall Background",testID:"PaywallBackground-test-id-1"},children:null},{type:"View",attributes:{styles:{paddingTop:56,paddingHorizontal:16,paddingBottom:16,gap:16,flex:1},testID:"View-test-id-1"},children:[{type:"PaywallCloseButton",attributes:{styles:{width:32,height:32,borderRadius:16,backgroundColor:"STATIC_COLORS.WHITE",color:"STATIC_COLORS.BLACK",zIndex:10,alignItems:"center",justifyContent:"center"},testID:"PaywallCloseButton-test-id-1"},children:null},{type:"text",attributes:{description:"Title text.",title:"Paywall Title",styles:{color:"STATIC_COLORS.WHITE",fontWeight:"700",fontSize:28,textAlign:"center"},testID:"text-test-id-1"},children:"App Delete Offer"},{type:"View",attributes:{description:"Benefits container.",title:"Benefits",styles:{flexDirection:"column",gap:4,marginTop:"12%"},testID:"View-test-id-2"},children:[{type:"View",attributes:{description:"Benefit container #1.",title:"Benefit #1",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-3"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 1",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-1"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 1",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-2"},children:"@benefit1 — Unlimited access"}]},{type:"View",attributes:{description:"Benefit container #2.",title:"Benefit #2",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-4"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 2",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-2"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 2",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-3"},children:"@benefit2 — 7-day free trial"}]},{type:"View",attributes:{description:"Benefit container #3.",title:"Benefit #3",styles:{flexDirection:"row",alignItems:"center",gap:8,paddingVertical:8,paddingHorizontal:12},testID:"View-test-id-5"},children:[{type:"BIcon",attributes:{iconType:"check",strokeWidth:3,description:"Icon item.",title:"BIcon 3",styles:{color:"THEME_COLORS.ICON",fontSize:"16",flex:0},testID:"BIcon-test-id-3"},children:null},{type:"text",attributes:{description:"Text item.",title:"text 3",styles:{flex:1,color:"STATIC_COLORS.WHITE",fontWeight:"700"},testID:"text-test-id-4"},children:"@benefit3 — Cancel anytime"}]}]},{type:"PaywallOptions",attributes:{description:"Subscription options area.",title:"Option(s)",styles:{borderRadius:12,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"PaywallOptions-test-id-1"},children:[{type:"RadioButton",attributes:{description:"Radio item.",title:"Product Radio(s)",styles:{flex:1},testID:"RadioButton-test-id-1"},children:null},{type:"text",attributes:{description:"Product description.",title:"Product Desc(s)",styles:{flex:4},testID:"text-test-id-5"},children:"@productDescription — Unlock all premium features for a month."},{type:"text",attributes:{description:"Product price.",title:"Product Price(s)",styles:{flex:1,textAlign:"right"},testID:"text-test-id-6"},children:"@localizedPrice"},{type:"BIcon",attributes:{iconType:"chevron-right",size:16,description:"Chevron icon.",title:"Product BIcon(s)",styles:{marginRight:4,flex:0,width:32,color:"STATIC_COLORS.BLACK"},testID:"BIcon-test-id-4"},children:null}]},{type:"CountDown",attributes:{count:3e4,description:"Countdown timer (30 seconds).",title:"Countdown",styles:{fontWeight:"700",fontSize:40,textAlign:"center"},testID:"CountDown-test-id-1"},children:null},{type:"View",attributes:{description:"Subscribe button container.",title:"Subs Container",styles:{flex:1,flexDirection:"column",justifyContent:"flex-end",alignItems:"stretch",paddingBottom:"50px"},testID:"View-test-id-6"},children:[{type:"PaywallSubscribeButton",children:"@subscribe",attributes:{description:"Abonelik onay butonu. (#1)",title:"Subscribe",testID:"PaywallSubscribeButton-test-id-1"}}]}]}]}]},attributes$7={testID:"paywall-test-id-1"},paywallAppDeleteOffer={name:name$9,version:version$9,type:type$9,data:data$9,attributes:attributes$7},name$8="vpn-onboard-1",version$8="1.1.2",type$8="onboard",data$8={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$6={testID:"onboard-test-id-1"},vpnOnboard1={name:name$8,version:version$8,type:type$8,data:data$8,attributes:attributes$6},name$7="vpn-onboard-2",version$7="1.1.2",type$7="onboard",data$7={type:"Main",isMain:!0,key:"ckcw0WXRY8sNR2SF",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/0c65cbe8e0c2e1242146e15dfd50a486.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/e8bbdde825cd23bdc44a9b2b32af22dc.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/3f312b38faf844746250cd54f27f91da.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/f4db2a32a43239c3bbbe742cb0f18b61.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",animation:"line-animation",animation_color:"STATIC_COLORS.WHITE",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",animation:"simple-animation",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"light",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$5={testID:"onboard-test-id-1"},vpnOnboard2={name:name$7,version:version$7,type:type$7,data:data$7,attributes:attributes$5},name$6="vpn-onboard-3",version$6="1.1.2",type$6="onboard",data$6={type:"Main",isMain:!0,key:"ckcw0WXRY8sNR2SF",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page2"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/c68cca84580d6920c883c220e57346c0.jpg",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page2"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page2"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page2"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"light",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$4={testID:"onboard-test-id-1"},vpnOnboard3={name:name$6,version:version$6,type:type$6,data:data$6,attributes:attributes$4},name$5="vpn-onboard-4",version$5="1.1.2",type$5="onboard",data$5={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page2"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/aadf6191a8f1091831647b3a01e1a1aa.jpg",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page2"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page2"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page2"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page2"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page2"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$3={testID:"onboard-test-id-1"},vpnOnboard4={name:name$5,version:version$5,type:type$5,data:data$5,attributes:attributes$3},name$4="vpn-onboard-5",version$4="1.1.2",type$4="onboard",data$4={type:"Main",isMain:!0,key:"cJVVSS7q9Qe1trnb",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/d237d6cde8bc9126cee7b47e30cd19f0.png",resizeMode:"contain",lottie:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/lottie/0be045f9fe44c790a4525a1a6bc4b837.json",styles:{height:400},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/820dc32b8252555058e7014a7fd1652f.png",resizeMode:"contain",video_url:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/video/440346112d02e65be3767c39b96cd7c0.mp4",styles:{height:400},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/fbb8677cd23cba79eef0ebef181e3b57.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/18cdd5cc478389df8ff362f95b7173ea.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.five-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.five-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}},{type:"OnboardItem",key:"app_onboard-page6",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/3c1225f83f5a5c934926fab3cb0e65d5.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-5",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#5)",title:"OnboardTitle 5",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-5"},children:"base.onboard.title.six-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#5)",title:"OnboardSubtitle 5",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-5"},children:"base.onboard.subtitle.six-page"}],attributes:{description:"Onboarding sayfası. (#5)",title:"OnboardItem 5",testID:"OnboardItem-test-id-5"}},{type:"OnboardItem",key:"app_onboard-page5",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ff07e162b2a63d38f07909e87848d46f.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-6",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#6)",title:"OnboardTitle 6",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-6"},children:"base.onboard.title.four-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#6)",title:"OnboardSubtitle 6",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-6"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#6)",title:"OnboardItem 6",testID:"OnboardItem-test-id-6"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.five-page",events:[{type:"Navigate",navigate_to:null,targetIndex:4}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.five-page",events:[{type:"Permission",permission:"GDPR"},{type:"Navigate",navigate_to:null,targetIndex:4}],styles:{flex:1,color:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:4,description:"Sayfa buton grubu. (#5)",title:"OnboardButtons 5",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-5"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.five-page",events:[{type:"Navigate",navigate_to:null,targetIndex:5}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.LINE"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.five-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:5}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:5,description:"Sayfa buton grubu. (#6)",title:"OnboardButtons 6",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-6"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"subscriptions"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"all",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$2={testID:"onboard-test-id-1"},vpnOnboard5={name:name$4,version:version$4,type:type$4,data:data$4,attributes:attributes$2},name$3="vpn-onboard-6",version$3="1.1.2",type$3="onboard",data$3={type:"Main",isMain:!0,key:"cJVVSS7q9Qe1trnb",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/9cb1d668b3724655f93a91e5eee771c5.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/f8d0c64bf89cc5f2f14126d0544ba174.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ad823809885c1a2a8e4632039f35a94e.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardImage",attributes:{src:"https://vpn111-stage.s3.eu-central-1.amazonaws.com/onboard/high/ede1705c51f3434ae9053ed5f29bf5dd.png",resizeMode:"contain",styles:{height:400},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page"},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"}},{type:"OnboardDot",attributes:{dotType:"expanding_dot",dot_thickness:20,inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12},testID:"OnboardDot-test-id-1"}},{type:"Separator",attributes:{title:"Separator",description:"Horizontal separator line",styles:{width:"100%",height:2,backgroundColor:"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"},testID:"Separator-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"THEME_COLORS.TEXT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"subscriptions"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}]},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT"},testID:"OnboardFooter-test-id-1"}}]}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"}}]},attributes$1={testID:"onboard-test-id-1"},vpnOnboard6={name:name$3,version:version$3,type:type$3,data:data$3,attributes:attributes$1},name$2="vpn-onboard-7",version$2="1.1.2",type$2="onboard",data$2={type:"Main",isMain:!0,key:"c92tR8J5wbTb3fav",attributes:{useSafeAreaView:!0,description:"Ekranın ana kapsayıcısı. (#1)",title:"Main 1",styles:{paddingBottom:16},testID:"Main-test-id-1"},children:[{type:"StatusBarColor",attributes:{title:"Status Bar Color",description:"Status bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"StatusBarColor-test-id-1"},children:null,key:"StatusBarColor-sxj19suwkrn"},{type:"NavigationBarColor",attributes:{title:"Navigation Bar Color",description:"Navigation bar background color.",styles:{backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"NavigationBarColor-test-id-1"},children:null,key:"NavigationBarColor-rhzn570dc5o"},{type:"OnboardProvider",children:[{type:"Onboard",children:[{type:"OnboardItem",key:"app_onboard-page1",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#1)",title:"OnboardTitle 1",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-1"},children:"base.onboard.title.one-page",key:"OnboardTitle-5t0p86nj13m"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-1",fetchStrategy:"highIfItsAppLaunch"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#1)",title:"OnboardSubtitle 1",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-1"},children:"base.onboard.subtitle.one-page",key:"OnboardSubtitle-0max8wno7l5b"}],attributes:{description:"Onboarding sayfası. (#1)",title:"OnboardItem 1",testID:"OnboardItem-test-id-1"}},{type:"OnboardItem",key:"app_onboard-page2",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#2)",title:"OnboardTitle 2",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-2"},children:"base.onboard.title.two-page",key:"OnboardTitle-ne9iihu925k"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-2",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#2)",title:"OnboardSubtitle 2",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-2"},children:"base.onboard.subtitle.two-page",key:"OnboardSubtitle-jq9469r7c2"}],attributes:{description:"Onboarding sayfası. (#2)",title:"OnboardItem 2",testID:"OnboardItem-test-id-2"}},{type:"OnboardItem",key:"app_onboard-page3",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#3)",title:"OnboardTitle 3",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-3"},children:"base.onboard.title.three-page",key:"OnboardTitle-hczvlbg7gqj"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-3",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#3)",title:"OnboardSubtitle 3",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-3"},children:"base.onboard.subtitle.three-page",key:"OnboardSubtitle-rufjwid9yug"}],attributes:{description:"Onboarding sayfası. (#3)",title:"OnboardItem 3",testID:"OnboardItem-test-id-3"}},{type:"OnboardItem",key:"app_onboard-page4",children:[{type:"OnboardTitle",attributes:{description:"Sayfa başlığı. (#4)",title:"OnboardTitle 4",styles:{color:"THEME_COLORS.ONBOARD_TITLE",textAlign:"center",marginTop:40,fontSize:"28@fs"},testID:"OnboardTitle-test-id-4"},children:"base.onboard.title.four-page",key:"OnboardTitle-f2ekfc0wcbl"},{type:"OnboardImage",attributes:{src:"https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png",resizeMode:"contain",styles:{height:350},testID:"OnboardImage-test-id-4",fetchStrategy:"normal"}},{type:"OnboardSubtitle",attributes:{description:"Sayfa alt başlığı. (#4)",title:"OnboardSubtitle 4",styles:{color:"THEME_COLORS.ONBOARD_SUBTITLE",fontSize:16,textAlign:"center",paddingTop:"30@vs"},testID:"OnboardSubtitle-test-id-4"},children:"base.onboard.subtitle.four-page",key:"OnboardSubtitle-qkw2jn84xem"}],attributes:{description:"Onboarding sayfası. (#4)",title:"OnboardItem 4",testID:"OnboardItem-test-id-4"}}],attributes:{description:"Onboarding ana yapısı. (#1)",title:"Onboard 1",styles:{flex:1},testID:"Onboard-test-id-1"},key:"Onboard-dg1zmwdawmg"},{type:"OnboardDot",attributes:{dotType:"expanding_dot",inactive_dot_opacity:.3,inactive_dot_color:"STATIC_COLORS.ONBOARD_DOT_INACTIVE",active_dot_color:"STATIC_COLORS.ONBOARD_DOT_ACTIVE",styles:{paddingVertical:12,dot_thickness:"10@s"},testID:"OnboardDot-test-id-1"}},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:0,description:"Sayfa buton grubu. (#1)",title:"OnboardButtons 1",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-1"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.one-page",events:[{type:"Navigate",navigate_to:null,targetIndex:1}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-92fw2wn62h"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:1,description:"Sayfa buton grubu. (#2)",title:"OnboardButtons 2",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-2"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.two-page",events:[{type:"Permission",permission:"att"},{type:"Navigate",navigate_to:null,targetIndex:2}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-mu7r8a5qx4"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:2,description:"Sayfa buton grubu. (#3)",title:"OnboardButtons 3",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-3"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.skip.three-page",events:[{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT",backgroundColor:"STATIC_COLORS.TRANSPARENT"},testID:"onboardNext"}},{type:"OnboardButton",attributes:{labelKey:"base.onboard.next.three-page",events:[{type:"Permission",permission:"rating"},{type:"Navigate",navigate_to:null,targetIndex:3}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-rulfu6b5w5"},{type:"OnboardButtons",attributes:{buttons_direction:"row",condition:"carousel-index",conditionVariable:3,description:"Sayfa buton grubu. (#4)",title:"OnboardButtons 4",styles:{height:40,marginVertical:12,flexShrink:0,paddingBottom:"5@s"},testID:"OnboardButtons-test-id-4"},children:[{type:"OnboardButton",attributes:{labelKey:"base.onboard.allow.four-page",events:[{type:"Permission",permission:"notification"},{type:"Navigate",navigate_to:"home"}],styles:{flex:1,color:"STATIC_COLORS.WHITE",backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"},testID:"onboardNext"}}],key:"OnboardButtons-yru5emc0zcs"},{type:"View",attributes:{title:"Onboard Footer Wrap",description:"Wrapper for OnboardFooter component",styles:{marginHorizontal:25,flexShrink:0},testID:"View-test-id-1"},children:[{type:"OnboardFooter",attributes:{textLocalizationKey:"base.onboard.footer.description",linkedWordFirstLocalizationKey:"base.onboard.btnPrivacy",linkedWordFirstColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordFirstPage:"privacy",linkedWordSecondLocalizationKey:"base.onboard.btnTerms",linkedWordSecondColor:"STATIC_COLORS.ONBOARD_LINK_COLOR",linkedWordSecondPage:"terms",styles:{gap:8,color:"THEME_COLORS.ONBOARD_FOOTER_TEXT",fontSize:"12@fs"},testID:"OnboardFooter-test-id-1"}}],key:"View-c5vb7865vto"}],attributes:{theme:"dark",description:"Onboarding sağlayıcısı. (#1)",title:"OnboardProvider 1",testID:"OnboardProvider-test-id-1"},key:"OnboardProvider-pvc5b6o5gu"}]},attributes={testID:"onboard-test-id-1"},vpnOnboard7={name:name$2,version:version$2,type:type$2,data:data$2,attributes:attributes},name$1="Terms and Privacy",version$1="1.1.2",type$1="terms",data$1={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Terms and Privacy screen container",title:"Terms & Privacy",styles:{backgroundColor:"THEME_COLORS.BACKGROUND",flex:1},testID:"TermsPrivacy-Main"},children:[{type:"View",attributes:{description:"Header section",styles:{padding:16,alignItems:"center",borderBottomWidth:1,borderBottomColor:"THEME_COLORS.LINE",backgroundColor:"THEME_COLORS.BACKGROUND"}},children:[{type:"Text",children:"view.terms.header.title",attributes:{styles:{fontSize:20,fontWeight:"700",color:"THEME_COLORS.TEXT"}}}]},{type:"WebView",attributes:{iosUrl:"https://stage.vpn111.net/page/ios/privacy",androidUrl:"https://stage.vpn111.net/page/android/privacy",styles:{flex:1,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"TermsPrivacy-WebView"}},{type:"View",attributes:{description:"Footer section",styles:{padding:20,backgroundColor:"THEME_COLORS.BACKGROUND",borderTopWidth:1,borderTopColor:"THEME_COLORS.LINE",gap:16}},children:[{type:"FormProvider",attributes:{defaultValues:'{"termsAccepted": false}',validationErrorMessageKey:"view.terms.error.must_accept"},children:[{type:"FormCheckbox",attributes:{name:"termsAccepted",validation:["required"],checked:!1,label:"view.terms.checkbox.label",checkedColor:"THEME_COLORS.CHECKBOX_ACTIVE_COLOR",styles:{marginBottom:8},testID:"TermsPrivacy-Checkbox"}},{type:"FormErrorText",attributes:{styles:{marginBottom:8},testID:"TermsPrivacy-FormErrorText"}},{type:"FormSubmitButton",attributes:{labelKey:"view.terms.accept.button",validationRequired:!0,disableIfUnvalidated:!0,events:[{type:"Navigate",placementKey:"onboard"}],styles:{backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND",color:"#FFFFFF",height:48,borderRadius:8,alignItems:"center",justifyContent:"center",fontWeight:"600"},testID:"TermsPrivacy-AcceptButton"}}]}]}]},termsAndPrivacy={name:name$1,version:version$1,type:type$1,data:data$1},name="Terms and Privacy (no form)",version="1.1.2",type="terms",data={type:"Main",isMain:!0,attributes:{useSafeAreaView:!0,description:"Terms and Privacy screen without FormProvider; plain Checkbox and SystemButton.",title:"Terms & Privacy",styles:{backgroundColor:"THEME_COLORS.BACKGROUND",flex:1},testID:"TermsPrivacyNoForm-Main"},children:[{type:"View",attributes:{description:"Header section",styles:{padding:16,alignItems:"center",borderBottomWidth:1,borderBottomColor:"THEME_COLORS.LINE",backgroundColor:"THEME_COLORS.BACKGROUND"}},children:[{type:"Text",children:"view.terms.header.title",attributes:{styles:{fontSize:20,fontWeight:"700",color:"THEME_COLORS.TEXT"}}}]},{type:"WebView",attributes:{iosUrl:"https://stage.vpn111.net/page/ios/privacy",androidUrl:"https://stage.vpn111.net/page/android/privacy",styles:{flex:1,backgroundColor:"THEME_COLORS.BACKGROUND"},testID:"TermsPrivacyNoForm-WebView"}},{type:"View",attributes:{description:"Footer section",styles:{padding:20,backgroundColor:"THEME_COLORS.BACKGROUND",borderTopWidth:1,borderTopColor:"THEME_COLORS.LINE",gap:16}},children:[{type:"Checkbox",attributes:{checked:!1,label:"view.terms.checkbox.label",checkedColor:"THEME_COLORS.CHECKBOX_ACTIVE_COLOR",styles:{marginBottom:8},testID:"TermsPrivacyNoForm-Checkbox"}},{type:"SystemButton",attributes:{labelKey:"view.terms.accept.button",events:[{type:"Navigate",placementKey:"onboard"}],styles:{backgroundColor:"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND",color:"#FFFFFF",height:48,borderRadius:8,alignItems:"center",justifyContent:"center",fontWeight:"600"},testID:"TermsPrivacyNoForm-AcceptButton"}}]}]},termsAndPrivacyNoForm={name:name,version:version,type:type,data:data};function normalizeSample(e){const t=e.appConfig||{},i={...e,baseSize:t.baseSize||e.baseSize||defaultBaseSize,localization:t.localization||e.localization||defaultLocalization};return delete i.appConfig,i}function getSamples(){return[simple1,simple2,carouselSample,unvalidatedBuilder1,unvalidatedCrash1,unvalidatedCrashComponent1,unmigratedBuilder1,unmigratedBuilder1_1_1,paywall1,paywall2,paywallBackOffer,paywallNotificationOffer,paywallAppOpenOffer,paywallAppDeleteOffer,vpnOnboard1,vpnOnboard2,vpnOnboard3,vpnOnboard4,vpnOnboard5,vpnOnboard6,vpnOnboard7,termsAndPrivacy,termsAndPrivacyNoForm].map(normalizeSample)}const devices=getDevices();function EditorHeader({onSaveProject:e,onRestoreProject:t,current:i,editorData:r,setEditorData:n}){useLogRender("EditorHeader");const[o,a]=React.useState(!1),[s,l]=React.useState(!1),c=React.useRef(null),d=useRenderStore(e=>e.copiedNode),{device:p,setDevice:g,setCurrent:u,setLocalization:m,setBaseSize:h,setProjectColors:f,favoriteDevices:b,toggleFavoriteDevice:C}=useRenderStore(e=>({device:e.device,setDevice:e.setDevice,setCurrent:e.setCurrent,setLocalization:e.setLocalization,setBaseSize:e.setBaseSize,setProjectColors:e.setProjectColors,favoriteDevices:e.favoriteDevices||[],toggleFavoriteDevice:e.toggleFavoriteDevice})),{customDevices:x}=useCustomDeviceStore(),v=React.useMemo(()=>{const e=[...x,...devices],t=b.map(t=>e.find(e=>e.name===t)).filter(e=>void 0!==e),i=[...t,...e.filter(e=>!b.includes(e.name))].slice(0,5);return p&&!i.some(e=>e.name===p.name)?[...i,p]:i},[b,x,p]),S=React.useMemo(()=>{const e=e=>"paywall"===e?0:"onboard"===e?1:2;return getSamples().slice().sort((t,i)=>{const r=e(t.type)-e(i.type);return 0!==r?r:t.name.localeCompare(i.name)})},[]),w=React.useMemo(()=>`editor-actions-menu-${Math.random().toString(36).slice(2,9)}`,[]);function k(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=k(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>k(e,t,i)):k(e,t,i);if(n!==e)return{...r,children:n}}return e}React.useEffect(()=>{if(!s)return;const e=e=>{const t=c.current;t&&(e.target instanceof Element&&t.contains(e.target)||l(!1))},t=e=>{"Escape"===e.key&&l(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("keydown",t)}},[s]);const T=e=>JSON.parse(JSON.stringify(e)),_=e=>{if(!i||!r||!n)return;const t=T(e.data),o=collectNodeKeys(r),a=e=>(e=>"object"==typeof e&&null!==e&&!Array.isArray(e))(e)&&"type"in e&&"children"in e;if(!a(i))return void y.error("Select a component node to paste into");const s=i.children,l=(e=>{if(a(e)){if("main"===e.type||!0===e.isMain){const t=e.children;return t?Array.isArray(t)?t:[t]:[]}}return[e]})(t);if(0===l.length)return void y.error("Sample has no children to paste");const c=l.map(e=>repairNodeKeys(e,o));let d;d=s?Array.isArray(s)?[...s,...c]:[s,...c]:1===c.length?c[0]:c;const p={...i,children:d},g=k(r,i,p);n(g),u(p),y.success(`Pasted from "${e.name}"`)},R=()=>l(!1),O=!!i,I=!!(i&&r&&n&&d);return jsxRuntime.jsxs("div",{className:"editor-header",role:"region","aria-label":"Editor utility header",children:[jsxRuntime.jsxs("div",{className:"editor-header__devices",children:[v.map(e=>jsxRuntime.jsx(DeviceButton,{selectedDevice:p,onSelect:g,device:e,isFavorite:b.includes(e.name),onToggleFavorite:e=>C(e.name)},e.name)),jsxRuntime.jsx("button",{className:"editor-device-button","aria-label":"More devices",onClick:()=>a(!0),children:"More devices"})]}),jsxRuntime.jsx("div",{className:"editor-header__actions",children:jsxRuntime.jsxs("div",{className:"editor-actions-dropdown",ref:c,children:[jsxRuntime.jsxs("button",{className:"editor-button editor-actions-dropdown__trigger","aria-label":"Open actions menu","aria-haspopup":"menu","aria-expanded":s,"aria-controls":w,onClick:()=>l(e=>!e),children:["Actions",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__caret","aria-hidden":"true",children:"▾"})]}),s&&jsxRuntime.jsxs("ul",{id:w,className:"editor-actions-dropdown__menu",role:"menu","aria-label":"Editor actions",children:[jsxRuntime.jsxs("li",{role:"none",className:"editor-actions-dropdown__submenu-root",children:[jsxRuntime.jsxs("button",{className:"editor-actions-dropdown__item",role:"menuitem","aria-haspopup":"menu","aria-label":"Replace from samples",onClick:e=>e.preventDefault(),children:["Replace from samples",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__submenu-caret","aria-hidden":"true",children:"◂"})]}),jsxRuntime.jsx("ul",{className:"editor-actions-dropdown__submenu",role:"menu","aria-label":"Replace from sample",children:S.map(e=>jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-actions-dropdown__item--compact",role:"menuitem",onClick:()=>{(e=>{if(!n)return;const t=repairNodeKeys(T(e.data));n(t),u(t),e.localization&&m(e.localization),e.baseSize&&h(e.baseSize),f(e.projectColors),y.success(`Replaced with "${e.name}"`)})(e),R()},children:e.name})},`replace-${e.name}`))})]}),jsxRuntime.jsxs("li",{role:"none",className:"editor-actions-dropdown__submenu-root",children:[jsxRuntime.jsxs("button",{className:"editor-actions-dropdown__item",role:"menuitem","aria-haspopup":"menu","aria-label":"Paste from samples",onClick:e=>e.preventDefault(),disabled:!i,title:i?void 0:"Select a node first",children:["Paste from samples",jsxRuntime.jsx("span",{className:"editor-actions-dropdown__submenu-caret","aria-hidden":"true",children:"◂"})]}),jsxRuntime.jsx("ul",{className:"editor-actions-dropdown__submenu",role:"menu","aria-label":"Paste from sample",children:S.map(e=>jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-actions-dropdown__item--compact",role:"menuitem",onClick:()=>{_(e),R()},disabled:!i,children:e.name})},`paste-${e.name}`))})]}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-save-button",role:"menuitem",onClick:()=>{e?.(),R()},disabled:!e,children:"Save"})}),t&&jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item editor-save-previewconfig-button",role:"menuitem",onClick:()=>{try{t?.(),y.info("Restored")}catch{y.error("Restore failed")}finally{R()}},children:"Restore"})}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item",role:"menuitem",onClick:()=>{O&&(i&&copyNode(i),y.info("Copied"),R())},disabled:!O,children:"Copy"})}),jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{className:"editor-actions-dropdown__item",role:"menuitem",onClick:()=>{I&&((()=>{if(!i||!r||!n)return;if(!d)return;const e=repairNodeKeys(JSON.parse(JSON.stringify(d)),collectNodeKeys(r)),t=k(r,i,e);useRenderStore.setState({copiedNode:null}),n(t),u(e)})(),y.success("Pasted"),R())},disabled:!I,children:"Paste"})})]})]})}),o&&jsxRuntime.jsx(DeviceSelectorModal,{devices:devices,selectedDevice:p,onSelect:g,onClose:()=>a(!1)})]})}const SAVED_COLORS_KEY="attributes-editor-saved-colors",formatTokenLabel$1=e=>e.split(/[_-]/g).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()).join(" "),mapTokensToOptions=(e,t)=>{if(!e)return[];const i=t?.groupKey??"group";return Object.entries(e).filter(([,e])=>"string"==typeof e&&e.trim().length>0).map(([e,r])=>{const n=r.trim(),o=t?.tokenLabelPrefix?`${t.tokenLabelPrefix}.${e}`:void 0;return{id:`${i}-${e}`,label:formatTokenLabel$1(e),value:n,tokenLabel:o}})},readSavedColors=()=>{if("undefined"==typeof window)return[];try{const e=window.localStorage.getItem(SAVED_COLORS_KEY);if(!e)return[];const t=JSON.parse(e);return Array.isArray(t)?t.filter(e=>"string"==typeof e).map(e=>e.trim().toLowerCase()).filter(Boolean):[]}catch{return[]}},persistSavedColors=e=>{if("undefined"!=typeof window)try{window.localStorage.setItem(SAVED_COLORS_KEY,JSON.stringify(e))}catch{}},STATIC_PREFIX="STATIC_COLORS.",THEME_PREFIX="THEME_COLORS.",resolveProjectColorValue=(e,t)=>{if(!e||"string"!=typeof e||!t)return;const i=e.trim();if(i){if(i.startsWith(STATIC_PREFIX)){const e=i.slice(STATIC_PREFIX.length),r=t.STATIC_COLORS?.[e];return"string"==typeof r&&r.trim()?r.trim():void 0}if(i.startsWith(THEME_PREFIX)){const e=i.slice(THEME_PREFIX.length);if(!e)return;const r=e.split(".");if(1===r.length){const e=r[0],i=t.THEME_COLORS;if(!i)return;for(const t of Object.values(i)){const i=t?.[e];if("string"==typeof i&&i.trim())return i.trim()}return}const[n,...o]=r,a=o.join(".");if(!n||!a)return;const s=t.THEME_COLORS?.[n],l=s?.[a];return"string"==typeof l&&l.trim()?l.trim():void 0}}};function ColorModal({value:e,projectColors:t,onSelect:i,onClose:r,onClear:n}){const[o,a]=React.useState(()=>readSavedColors()),[s,l]=React.useState(!0),c=React.useRef(null),d=React.useId(),p=React.useId(),g=React.useMemo(()=>resolveProjectColorValue(e,t)??e,[e,t]),u=React.useMemo(()=>{if(!t)return[];const e=[],i=mapTokensToOptions(t.STATIC_COLORS,{groupKey:"static",tokenLabelPrefix:"STATIC_COLORS"});i.length&&e.push({title:"Static colors",options:i,emptyMessage:"No static colors defined."});const r=t.THEME_COLORS??{};return Object.entries(r).forEach(([t,i])=>{const r=mapTokensToOptions(i,{groupKey:`theme-${t||"default"}`,tokenLabelPrefix:"THEME_COLORS"});if(!r.length)return;const n=t?.trim()?formatTokenLabel$1(t):"Theme";e.push({title:`Theme: ${n}`,options:r,emptyMessage:`No colors defined for ${n}.`})}),e},[t]),m=React.useMemo(()=>o.map((e,t)=>({id:`saved-${t}-${e}`,label:e,value:e})),[o]),h=e=>{const t=e?.trim().toLowerCase();t&&(a(e=>{if(e.includes(t))return e;const i=[...e,t];return persistSavedColors(i),i}),i(t),r())},f=()=>{const e=c.current,t=e?e.showPicker:void 0;if(e&&"function"==typeof t){try{e.focus({preventScroll:!0})}catch{}t.call(e)}else(()=>{if("undefined"==typeof document)return;const e=document.createElement("input");e.type="color",e.value=g?.toString()||"#000000",e.style.position="fixed",e.style.left="-1000px",e.style.top="0",e.style.width="40px",e.style.height="40px",e.style.opacity="0";const t=()=>{e.removeEventListener("change",i),e.removeEventListener("input",i),e.removeEventListener("blur",t),e.remove()},i=()=>{h(e.value),t()};e.addEventListener("change",i),e.addEventListener("input",i),e.addEventListener("blur",t),document.body.appendChild(e);try{e.focus({preventScroll:!0})}catch{}requestAnimationFrame(()=>e.click())})()},y=e=>{h(e.target.value),e.target.value="#000000"},b=e=>{const t=s&&e.tokenLabel?e.tokenLabel:e.value;i(t),r()};return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"color-picker-title",contentClassName:"color-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"color-picker-title",className:"modal__title",children:"Pick a color"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"color-modal__selected",children:[jsxRuntime.jsxs("div",{className:"color-modal__selected-info",children:[jsxRuntime.jsx("label",{htmlFor:p,role:"button","aria-label":"Open color picker",tabIndex:0,title:"Pick a color",className:"color-modal__selected-preview",style:{background:g??"transparent"},onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),f())}}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("p",{className:"color-modal__selected-label",children:"Selected color"}),jsxRuntime.jsx("p",{className:"color-modal__selected-value",children:e??"None"})]})]}),e?jsxRuntime.jsx("button",{type:"button",className:"color-modal__link-button",onClick:n,children:"Clear"}):null]}),jsxRuntime.jsxs("div",{className:"color-modal__toggle",children:[jsxRuntime.jsxs("label",{htmlFor:d,className:"color-modal__toggle-label",children:[jsxRuntime.jsx("input",{id:d,type:"checkbox",className:"color-modal__toggle-input",checked:s,onChange:e=>l(e.target.checked)}),"Use color names"]}),jsxRuntime.jsx("p",{className:"color-modal__toggle-description",children:"Output tokens like STATIC_COLORS.PRIMARY instead of raw values."})]}),u.length?u.map(t=>jsxRuntime.jsx(ColorSection,{title:t.title,options:t.options,emptyMessage:t.emptyMessage,activeValue:e,onSelect:b},t.title)):jsxRuntime.jsx(ColorSection,{title:"Project colors",options:[],emptyMessage:"No project colors detected yet.",activeValue:e,onSelect:b}),jsxRuntime.jsx(ColorSection,{title:"Saved colors",options:m,emptyMessage:"Add colors you use often for quick access.",action:jsxRuntime.jsxs("span",{className:"color-modal__link-button color-modal__add-color",children:["Add color",jsxRuntime.jsx("input",{type:"color",className:"color-modal__add-color-input",onChange:y,defaultValue:"#000000","aria-label":"Add color"})]}),activeValue:e,onSelect:b}),jsxRuntime.jsx("input",{ref:c,id:p,type:"color",className:"color-modal__input",onChange:y,defaultValue:"#000000",tabIndex:-1})]})}function ColorSection({title:e,options:t,emptyMessage:i,action:r,activeValue:n,onSelect:o}){return jsxRuntime.jsxs("section",{className:"color-section",children:[jsxRuntime.jsxs("div",{className:"color-section__header",children:[jsxRuntime.jsx("p",{className:"color-section__title",children:e}),r]}),t.length?jsxRuntime.jsx("div",{className:"color-section__swatches",children:t.map(e=>jsxRuntime.jsx(ColorSwatch,{option:e,isActive:e.tokenLabel&&e.tokenLabel===n||e.value===n,onSelect:()=>o(e)},e.id))}):jsxRuntime.jsx("p",{className:"color-section__empty",children:i??"No colors available."})]})}function ColorSwatch({option:e,isActive:t,onSelect:i}){const r="#ffffff"===e.value?.trim().toLowerCase()||"#fff"===e.value?.trim().toLowerCase();return jsxRuntime.jsxs("button",{type:"button",onClick:i,className:"color-modal__swatch"+(t?" color-modal__swatch--active":""),children:[jsxRuntime.jsx("span",{"aria-hidden":!0,className:"color-modal__swatch-preview"+(r?" color-modal__swatch-preview--light":""),style:{background:e.value??"transparent"}}),jsxRuntime.jsx("span",{className:"color-modal__swatch-label",children:e.label??e.value}),jsxRuntime.jsx("span",{className:"color-modal__swatch-value",children:e.tokenLabel?`${e.tokenLabel} - ${e.value}`:e.value})]})}const Checkbox=React.forwardRef(({label:e,helperText:t,className:i,inputClassName:r,onChange:n,id:o,disabled:a,...s},l)=>{const c=React.useId(),d=o??c,p=t?`${d}-helper`:void 0,g=["builder-checkbox",a?"builder-checkbox--disabled":void 0,i].filter(Boolean).join(" "),u=["builder-checkbox__native",r].filter(Boolean).join(" ");return jsxRuntime.jsxs("div",{className:g,children:[jsxRuntime.jsxs("label",{htmlFor:d,className:"builder-checkbox__label",children:[jsxRuntime.jsx("input",{...s,ref:l,id:d,type:"checkbox",className:u,onChange:e=>{n?.(e.target.checked,e)},disabled:a,"aria-describedby":p}),jsxRuntime.jsx("span",{className:"builder-checkbox__control","aria-hidden":"true"}),e?jsxRuntime.jsx("span",{className:"builder-checkbox__text",children:e}):null]}),t?jsxRuntime.jsx("span",{id:p,className:"builder-checkbox__helper",children:t}):null]})});function LayoutPreviewPicker({mode:e,options:t,value:i,onChange:r,layoutContext:n,viewAttributes:o}){if(!t.length)return null;const a="string"==typeof i?i:n?.[e];return jsxRuntime.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,paddingBottom:2},children:t.map(t=>{const i=a===t;return jsxRuntime.jsxs("button",{type:"button",onClick:()=>r(t),style:{borderRadius:8,padding:5,width:110,flex:"0 0 auto",border:i?"2px solid #222":"1px solid #d5d5d5",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",textAlign:"left",display:"flex",flexDirection:"column",gap:3,cursor:"pointer",boxShadow:i?"0 2px 4px rgba(0,0,0,0.08)":"none"},children:[jsxRuntime.jsx(LayoutPreview,{mode:e,option:t,isActive:i,layoutContext:n,viewAttributes:o}),jsxRuntime.jsx("span",{style:{fontWeight:600,fontSize:11},children:formatLayoutLabel(t)})]},t)})})}function LayoutPreview({mode:e,option:t,isActive:i,layoutContext:r,viewAttributes:n}){const o=resolvePreviewContext(e,t,r),a=o.flexDirection?.startsWith("column"),s=n?.style?.backgroundColor??(i?"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)) / 0.55)":"hsl(var(--muted, var(--rb-muted, 220 14.3% 95.9%)))"),l=parseNumeric(n?.style?.gap)??3,c=parseNumeric(n?.style?.borderRadius)??4,d="stretch"===o.alignItems?a?{width:"100%"}:{height:"100%"}:void 0;return jsxRuntime.jsx("div",{style:{borderRadius:c,border:"1px dashed rgba(0,0,0,0.2)",padding:5,background:s},children:jsxRuntime.jsx("div",{style:{display:"flex",flexDirection:o.flexDirection??"row",justifyContent:o.justifyContent??"flex-start",alignItems:o.alignItems??"stretch",gap:l,width:"100%",minHeight:a?52:40,transition:"all 0.2s ease"},children:Array.from({length:3}).map((t,i)=>jsxRuntime.jsx("span",{style:{width:a?22:10,height:10,borderRadius:2.5,background:"#f7a500",border:"1px solid rgba(0,0,0,0.1)",flex:"justifyContent"===e?"0 0 auto":void 0,...d??{}}},i))})})}function resolvePreviewContext(e,t,i){const r={flexDirection:i?.flexDirection??"row",alignItems:i?.alignItems??"center",justifyContent:i?.justifyContent??"flex-start"};switch(e){case"flexDirection":return{flexDirection:t,alignItems:r.alignItems,justifyContent:r.justifyContent};case"alignItems":return{flexDirection:r.flexDirection,alignItems:t,justifyContent:r.justifyContent};case"justifyContent":return{flexDirection:r.flexDirection,alignItems:r.alignItems,justifyContent:t};default:return r}}function parseNumeric(e){if(null==e)return;if("number"==typeof e)return e;const t=Number.parseFloat(e);return Number.isNaN(t)?void 0:t}function formatLayoutLabel(e){return e.replace(/[-_]/g," ").replace(/\s+/g," ").replace(/^\w|\s\w/g,e=>e.toUpperCase())}function toPreferredScale(e){if("vs"===e||"s"===e||"f"===e||"%"===e)return e;if("string"!=typeof e)return;const t=e.trim().toLowerCase();return"vs"===t||"s"===t||"f"===t||"%"===t?t:void 0}function parseSizeValue(e){const t={amount:"",unit:""};if("number"==typeof e&&Number.isFinite(e))return{amount:String(e),unit:""};if("string"!=typeof e)return t;const i=e.trim();if(!i)return t;if(i.endsWith("%"))return{amount:i.slice(0,-1),unit:"%"};const r=i.toLowerCase();return r.endsWith("@vs")?{amount:i.slice(0,-3),unit:"vs"}:r.endsWith("vs")?{amount:i.slice(0,-2),unit:"vs"}:r.endsWith("@fs")?{amount:i.slice(0,-3),unit:"f"}:r.endsWith("@f")||r.endsWith("fs")?{amount:i.slice(0,-2),unit:"f"}:r.endsWith("f")?{amount:i.slice(0,-1),unit:"f"}:r.endsWith("@s")?{amount:i.slice(0,-2),unit:"s"}:r.endsWith("s")?{amount:i.slice(0,-1),unit:"s"}:r.endsWith("px")?{amount:i.slice(0,-2),unit:""}:{amount:i,unit:""}}function composeSizeValue(e,t){const i=e.trim();if("%"===t)return`${i}%`;if(""===t){const e=Number(i);return Number.isFinite(e)?e:i}return"f"===t?`${i}@fs`:`${i}@${t}`}function normalizePreferredScale(e,t){const i=t.trim().toLowerCase(),r=i.includes("height")||i.includes("top")||i.includes("vertical")?"vs":"s";return e??r}function SizeField({value:e,onChange:t,preferredScale:i,fieldName:r}){const n=React.useMemo(()=>parseSizeValue(e),[e]),o=React.useMemo(()=>normalizePreferredScale(i,r),[i,r]),[a,s]=React.useState(n.amount),[l,c]=React.useState(()=>n.unit&&n.unit!==o?n.unit:"auto");React.useEffect(()=>{s(n.amount);const e=n.unit&&n.unit!==o?n.unit:"auto";c(e)},[n.amount,n.unit,o]);const d=React.useCallback(e=>"auto"===e?o:e,[o]),p=React.useCallback((e,i)=>{const r=e.trim();t(r?composeSizeValue(r,d(i)):void 0)},[t,d]),g=[{value:"auto",label:"auto"},...[o,...["vs","s","f","%"].filter(e=>e!==o)].map(e=>({value:e,label:e===o?`${e} (preferred)`:e}))];return jsxRuntime.jsxs("div",{className:"attributes-editor__size-field",children:[jsxRuntime.jsx("input",{type:"number",className:"input attributes-editor__size-field-input",value:a,onChange:e=>{const i=e.target.value;s(i),i.trim()?p(i,l):t(void 0)}}),jsxRuntime.jsx("select",{className:"input attributes-editor__size-field-select",value:l,onChange:e=>{const t=e.target.value;c(t),a.trim()&&p(a,t)},children:g.map(e=>jsxRuntime.jsx("option",{value:e.value,children:e.label},e.value))})]})}Checkbox.displayName="Checkbox";const BOOLEAN_ALIASES=new Set(["bool","boolean"]);function isBooleanFieldType(e){if(Array.isArray(e))return!1;if("string"!=typeof e)return!1;const t=e.trim().toLowerCase();return BOOLEAN_ALIASES.has(t)}const layoutFieldNames=["flexDirection","alignItems","justifyContent"];function isLayoutField(e){return layoutFieldNames.includes(e)}function Field({name:e,type:t,value:i,onChange:r,componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:l,preferredScale:c}){if(Array.isArray(t)){if(isLayoutField(e)){const n=t.filter(e=>"string"==typeof e&&e.length>0);return jsxRuntime.jsx(LayoutPreviewPicker,{mode:e,options:n,value:"string"==typeof i?i:void 0,onChange:r,layoutContext:a,viewAttributes:s})}return jsxRuntime.jsxs("select",{value:i??"",onChange:e=>r(e.target.value),className:"input",children:[jsxRuntime.jsx("option",{value:"",children:"(none)"}),t.map(e=>jsxRuntime.jsx("option",{value:e,children:e},e))]})}const d="string"==typeof t?getArrayItemType(t):null;if(d){const t=Array.isArray(i)?i:[];if(isPrimitiveType(d)){const i=(i,n)=>{switch(d){case"number":return jsxRuntime.jsx("input",{type:"number",value:i??"",onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:Number(e.target.value),r(i)},className:"input",style:{flex:1}});case"boolean":case"bool":return jsxRuntime.jsx(Checkbox,{checked:Boolean(i),onChange:e=>{const i=[...t];i[n]=e,r(i)},name:`${e}-${n}`});case"string":case"description":return jsxRuntime.jsx("input",{type:"text",value:i??"",onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:e.target.value,r(i)},className:"input",style:{flex:1}});case"title":return jsxRuntime.jsx("input",{type:"text",value:i??"",maxLength:20,onChange:e=>{const i=[...t];i[n]=""===e.target.value?void 0:e.target.value,r(i)},className:"input",style:{flex:1}});case"color":return jsxRuntime.jsx(ColorPickerButton,{value:"string"==typeof i?i:void 0,onChange:e=>{const i=[...t];i[n]=e,r(i)},projectColors:o});default:return jsxRuntime.jsx("p",{children:"---not-implemented----"})}};return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[t.map((e,n)=>jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[i(e,n),jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=t.filter((e,t)=>t!==n);r(e.length?e:void 0)},children:"remove"})]},n)),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=[...t,"boolean"!==d&&("number"===d?0:"")];r(e)},children:"add"})})]})}const l=getTypeSchema(n,d)??{};return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[t.map((e,i)=>{const c=e??{};return jsxRuntime.jsxs("div",{style:{border:"1px solid #ddd",borderRadius:6,padding:8},children:[jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:Object.entries(l).map(([e,l])=>isBooleanFieldType(l)?jsxRuntime.jsx("div",{style:{gridColumn:"1 / -1"},children:jsxRuntime.jsx(Field,{name:e,type:l,value:c?.[e],onChange:n=>{const o=[...t],a={...c??{},[e]:n};o[i]=a,r(o)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:e})},e):jsxRuntime.jsxs(React.Fragment,{children:[jsxRuntime.jsx("div",{style:{alignSelf:"center"},children:e}),jsxRuntime.jsx(Field,{name:e,type:l,value:c?.[e],onChange:n=>{const o=[...t],a={...c??{},[e]:n};o[i]=a,r(o)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s})]},e))}),jsxRuntime.jsxs("div",{style:{marginTop:8,display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:4},children:[jsxRuntime.jsx("button",{type:"button",onClick:e=>{if(e.stopPropagation(),i<=0)return;const n=[...t],o=n[i-1];n[i-1]=n[i],n[i]=o,r(n)},disabled:i<=0,"aria-label":"Move up",children:"↑"}),jsxRuntime.jsx("button",{type:"button",onClick:e=>{if(e.stopPropagation(),i>=t.length-1)return;const n=[...t],o=n[i+1];n[i+1]=n[i],n[i]=o,r(n)},disabled:i>=t.length-1,"aria-label":"Move down",children:"↓"})]}),jsxRuntime.jsx("button",{type:"button",onClick:e=>{e.stopPropagation();const n=t.filter((e,t)=>t!==i);r(n.length?n:void 0)},children:"remove"})]})]},i)}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const e=[...t,{}];r(e)},children:"add"})})]})}if("string"==typeof t&&!isPrimitiveType(t)){const e=getTypeSchema(n,t);if(e){const t=i??{};return jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8},children:Object.entries(e).map(([e,i])=>isBooleanFieldType(i)?jsxRuntime.jsx("div",{style:{gridColumn:"1 / -1"},children:jsxRuntime.jsx(Field,{name:e,type:i,value:t?.[e],onChange:i=>{const n={...t??{},[e]:i};r(n)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s,label:e})},e):jsxRuntime.jsxs(React.Fragment,{children:[jsxRuntime.jsx("div",{style:{alignSelf:"center"},children:e}),jsxRuntime.jsx(Field,{name:e,type:i,value:t?.[e],onChange:i=>{const n={...t??{},[e]:i};r(n)},componentType:n,projectColors:o,layoutContext:a,viewAttributes:s})]},e))})}}if("string[]"===t){const e=Array.isArray(i)?i:[];return jsxRuntime.jsxs("div",{style:{display:"grid",gap:8},children:[e.map((t,i)=>jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("input",{type:"text",value:t??"",onChange:t=>{const n=[...e];n[i]=t.target.value,r(n)},className:"input",style:{flex:1}}),jsxRuntime.jsx("button",{type:"button",onClick:()=>{const t=e.filter((e,t)=>t!==i);r(t.length?t:void 0)},children:"remove"})]},i)),jsxRuntime.jsx("div",{children:jsxRuntime.jsx("button",{type:"button",onClick:()=>{const t=[...e,""];r(t)},children:"add"})})]})}if("string"!=typeof t)return jsxRuntime.jsx("p",{children:"---not-implemented----"});switch(t){case"size":return jsxRuntime.jsx(SizeField,{value:i,onChange:r,preferredScale:c,fieldName:e});case"fontWeight":{const e=normalizeFontWeight(i);return jsxRuntime.jsxs("select",{value:e??"",onChange:e=>r(e.target.value||void 0),className:"input",children:[jsxRuntime.jsx("option",{value:"",children:"(none)"}),FONT_WEIGHT_OPTIONS.map(e=>jsxRuntime.jsx("option",{value:e,children:e},e))]})}case"number":return jsxRuntime.jsx("input",{type:"number",value:i??"",onChange:e=>r(""===e.target.value?void 0:Number(e.target.value)),className:"input"});case"boolean":case"bool":return jsxRuntime.jsx(Checkbox,{label:l??e,checked:Boolean(i),onChange:e=>r(e),name:e});case"string":case"description":return jsxRuntime.jsx("input",{type:"text",value:i??"",onChange:e=>r(""===e.target.value?void 0:e.target.value),className:"input"});case"title":return jsxRuntime.jsx("input",{type:"text",value:i??"",maxLength:20,onChange:e=>r(""===e.target.value?void 0:e.target.value),className:"input"});case"color":return jsxRuntime.jsx(ColorPickerButton,{value:"string"==typeof i?i:void 0,onChange:e=>r(e),projectColors:o});default:return jsxRuntime.jsx("p",{children:"---not-implemented----"})}}function ColorPickerButton({value:e,onChange:t,projectColors:i}){const[r,n]=React.useState(!1),o="string"==typeof e?e:void 0,a=React.useMemo(()=>resolveProjectColorValue(o,i)??o,[o,i]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>n(!0),style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,borderRadius:6,border:"1px solid #ddd",padding:"8px 10px",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",cursor:"pointer"},children:[jsxRuntime.jsx("span",{"aria-hidden":!0,style:{width:32,height:32,borderRadius:6,border:"1px solid rgba(0,0,0,0.1)",background:a??"transparent"}}),jsxRuntime.jsx("span",{style:{flex:1,textAlign:"left",fontWeight:500},children:o??"Select color"}),jsxRuntime.jsx("span",{style:{fontSize:12,color:"#666"},children:"Open"})]}),r?jsxRuntime.jsx(ColorModal,{value:o,projectColors:i,onSelect:e=>{t(e),n(!1)},onClose:()=>n(!1),onClear:()=>{t(void 0),n(!1)}}):null]})}function FieldInfoTooltip({description:e,children:t}){const[i,r]=React.useState(!1);if(!e||!e.trim())return jsxRuntime.jsx(jsxRuntime.Fragment,{children:t});const n=["field-info-tooltip__bubble",i?"field-info-tooltip__bubble--visible":""].filter(Boolean).join(" "),o=()=>r(!0),a=()=>r(!1);return jsxRuntime.jsxs("div",{className:"field-info-tooltip",children:[t,jsxRuntime.jsxs("button",{className:"field-info-tooltip__trigger",onMouseEnter:o,onMouseLeave:a,onFocus:o,onBlur:a,type:"button",children:["Show info",jsxRuntime.jsx("span",{className:n,role:"tooltip","aria-hidden":!i,children:e})]})]})}const FIELD_SLOT_MATCHERS={top:/(^|[-_])(top)$/i,bottom:/(^|[-_])(bottom)$/i,left:/(^|[-_])(left)$/i,right:/(^|[-_])(right)$/i};function SpecialCategorySection({category:e,entries:t,attributeMeta:i,getAttributeValue:r,onAttributeChange:n,componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,meta:c}){const[d,p]=React.useState(!1),g=c?.label&&c.label.trim().length>0?c.label:e&&e.length>0?e.charAt(0).toUpperCase()+e.slice(1):"Special",u=c?.description,m="padding"===e||"margin"===e||"offset"===e,h=m,f=e=>{if(!h)return;const t=e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").replace(/\s+/g,"-").toLowerCase();return Object.keys(FIELD_SLOT_MATCHERS).find(e=>FIELD_SLOT_MATCHERS[e].test(t))},y=t.filter(e=>!f(e.name)),b=m&&y.length>0;return jsxRuntime.jsxs("section",{className:"special-category-section",children:[jsxRuntime.jsxs("div",{className:"special-category-section__header",children:[jsxRuntime.jsx("p",{className:"special-category-section__title",children:g}),b?jsxRuntime.jsx("button",{type:"button",onClick:()=>p(e=>!e),className:"special-category-section__toggle","data-active":d,children:d?"Show less":"Show more"}):null]}),u?jsxRuntime.jsx("p",{className:"special-category-section__description",children:u}):null,(()=>{if(!t.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});if(!m)return(()=>{if(!t.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});const e=["special-category-section__fields",h?"special-category-section__fields--box":""].filter(Boolean).join(" ");return jsxRuntime.jsx("div",{className:e,children:t.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=f(e),h=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:h,"data-field-slot":m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})})})();const e=t.filter(e=>f(e.name)).sort((e,t)=>{const i=["top","left","right","bottom"],r=f(e.name),n=f(t.name);return(r?i.indexOf(r):999)-(n?i.indexOf(n):999)}),c=t.filter(e=>!f(e.name));if(0===e.length)return jsxRuntime.jsx("p",{className:"special-category-section__placeholder",children:"-- not defined --"});const p=jsxRuntime.jsx("div",{className:"special-category-section__fields special-category-section__fields--box",children:e.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=f(e),h=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:h,"data-field-slot":m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})}),g=d&&c.length>0?jsxRuntime.jsx("div",{className:"special-category-section__fields",children:c.map(({name:e,type:t})=>{const c=i?.[e]?.label??e,d=i?.[e]?.description,p=toPreferredScale(i?.[e]?.preferedScale),g=r(e),u=isBooleanFieldType(t),m=["attributes-editor__field-wrapper","special-category-section__field",u?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:d,children:jsxRuntime.jsxs("div",{className:m,children:[u?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:c}),jsxRuntime.jsx(Field,{name:e,type:t,value:g,onChange:t=>n(e,t),componentType:o,projectColors:a,layoutContext:s,viewAttributes:l,label:u?c:void 0,preferredScale:p})]})},e)})}):null;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[p,g]})})()]})}const FALLBACK_PARENT="all",EXCLUDE_PREFIX="!=";function normalizeDesiredParents(e){return Array.isArray(e)&&0!==e.length?e:[FALLBACK_PARENT]}function matchesDesiredChildToken(e,t){return e.startsWith("=")||e.startsWith(">")?e.slice(1)===t:e===t}function filterOptionsByDesiredChildren(e,t){if(!Array.isArray(t)||0===t.length)return e;const i=t.map(e=>e.trim()).filter(e=>e.length>0);return 0===i.length?e:e.filter(({type:e})=>{let t=!1,r=!1;for(const n of i)if(n.startsWith(EXCLUDE_PREFIX)){if(e===n.slice(EXCLUDE_PREFIX.length))return!1}else n!==FALLBACK_PARENT&&(t=!0,matchesDesiredChildToken(n,e)&&(r=!0));return!t||r})}function formatTokenLabel(e){return"all"===e?"Anywhere":"root"===e?"Root only":e.startsWith("!=")?`Not under ${e.slice(2)}`:e.startsWith("=")?`Direct child of ${e.slice(1)}`:e.startsWith(">")?`Inside ${e.slice(1)}`:e}function tokenMatchesParent(e,t){return"all"===e||(t&&0!==t.length?!e.startsWith("!=")&&(e.startsWith("=")||e.startsWith(">")?e.slice(1)===t:e===t):"root"===e)}function buildGroups(e,t){const i=new Map;return e.forEach(e=>{e.desiredParents.forEach(r=>{if(t&&!t(r,e))return;const n=i.get(r);n?n.some(t=>t.type===e.type)||n.push(e):i.set(r,[e])})}),Array.from(i.entries()).map(([e,t])=>({token:e,displayLabel:formatTokenLabel(e),options:t.sort((e,t)=>e.label.localeCompare(t.label))})).sort((e,t)=>e.displayLabel.localeCompare(t.displayLabel))}function AddComponentModal({allowedChildTypes:e,parentType:t,onSelect:i,onClose:r}){const[n,o]=React.useState(!1),a=React.useMemo(()=>Array.from(new Set(e)).map(e=>{const t=getPatternByType(e);return{type:e,label:t?.meta?.label?.trim()||e,desiredParents:normalizeDesiredParents(t?.meta?.desiredParent)}}).sort((e,t)=>e.label.localeCompare(t.label)),[e]),s=React.useMemo(()=>{if(!t)return;const e=getPatternByType(t)?.meta?.desiredChildren;return Array.isArray(e)&&0!==e.length?e.map(e=>e.trim()).filter(e=>e.length>0):void 0},[t]),l=React.useMemo(()=>filterOptionsByDesiredChildren(a,s),[a,s]),c=!s?.length;React.useEffect(()=>{c||o(!1)},[c]);const d=React.useMemo(()=>buildGroups(l,e=>tokenMatchesParent(e,t)),[l,t]),p=React.useMemo(()=>buildGroups(l),[l]),g=e=>jsxRuntime.jsxs("button",{type:"button",className:"add-component-modal__card",onClick:()=>(e=>{i(e)})(e.type),role:"listitem",children:[jsxRuntime.jsx("div",{className:"add-component-modal__thumbnail","aria-hidden":"true",children:jsxRuntime.jsx("span",{children:"Preview"})}),jsxRuntime.jsx("span",{className:"add-component-modal__title",children:e.label})]},e.type),u=e=>e.map(e=>jsxRuntime.jsxs("div",{className:"add-component-modal__group",children:[jsxRuntime.jsx("h5",{className:"add-component-modal__group-title",children:e.displayLabel}),jsxRuntime.jsx("div",{className:"add-component-modal__grid",role:"list",children:e.options.map(g)})]},e.token)),m=d.length>0,h=l.length>0;return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"add-component-title",contentClassName:"add-component-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"add-component-title",className:"modal__title",children:"Add component"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button","aria-label":"Close add component modal",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"add-component-modal__body",children:[jsxRuntime.jsxs("section",{className:"add-component-modal__section",children:[jsxRuntime.jsx("h4",{className:"add-component-modal__section-title",children:"Recommended Components"}),m?u(d):jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:h?"No direct recommendations for this parent.":"No components available for this node."})]}),c&&jsxRuntime.jsxs("label",{className:"add-component-modal__toggle",children:[jsxRuntime.jsx("input",{type:"checkbox",checked:n,onChange:e=>o(e.target.checked)}),jsxRuntime.jsx("span",{children:"Show rest (All Components)"})]}),c&&n&&jsxRuntime.jsxs("section",{className:"add-component-modal__section","aria-live":"polite",id:"add-component-modal-all",children:[jsxRuntime.jsx("h4",{className:"add-component-modal__section-title",children:"All Components"}),p.length?u(p):jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:"No components available."})]}),!n&&!m&&jsxRuntime.jsx("p",{className:"add-component-modal__empty",children:c?"Nothing to suggest yet—toggle “Show rest” to browse all components.":"Nothing to suggest yet for this parent."})]})]})}const Icons=["activity","activity-heart","alert-circle","alert-triangle","anchor","archive","arrow-down","arrow-left","arrow-narrow-down-left","arrow-narrow-up-right","arrow-right","arrow-right-smooth","asterisk-01","asterisk-02","at-sign","award","battery-charging","bell-01","bell-02","bell-ringing-02","bookmark","bookmark-add","bookmark-check","bookmark-minus","bookmark-x","bubble","building-01","building-02","building-03","building-04","building-05","building-06","building-07","building-08","building-09","camera","camera-01","camera-steel","check","check-circle","check-circle-bold","check-circle-broken","check-done-01","check-done-02","check-heart","check-square","check-square-broken","check-verified-01","check-verified-02","check-verified-03","checkbox","checkv","chevron-down","chevron-down2","chevron-left","chevron-left-2","chevron-right","chevron-right-empty","chevron-right-smooth","chevron-up","circle","clock","clock-fast-forward","close","close-circle","cloud-01","cloud-blank-01","cloud-blank-02","coin","coins-02","colors","copy-01","copy-02","copy-03","copy-04","copy-05","copy-06","copy-07","corner-down-right","crypto-bold","delete-icon","diamond","dice-3","divide-01","divide-02","divide-03","document-check-bold","dots-circle","dots-grid","dots-horizontal","dots-vertical","download-01","download-02","download-03","edit-03","edit-04","edit-05","element-3","ellipse-127","exclaimation-circle","eye-off-line","face-smile","file-04","file-05","file-check-02","file-plus-01","file-shield-02","filter-funnel-01","flag-03","flash","folder","folder-plus","gallery","globe-01","globe-04","globe-bold","guard","headphones-01","headphones-02","headset-bold","heart","heart-bold","help-circle","home-2","home-line","hourglass-02","image","image-01","image-03","inbox-01","inbox-arrow-down","info-circle","keyboard-line","lamp-charge","layer","light","like-dislike","lock-03","logout","magicpen","mail","mail-01","marker","medal-star","menu","menu-04","message-circle-01","message-plus-circle","message-question-circle","message-text-circle-01","message-text-square-02","message-x-square","microphone-02","microphone-slash","mirror","moon-01","moon-bold","mouse-circle","move","notification","notification-fill","notification-text","pdf-01","pencil-01","phone","phone-01","phone-arrow-down-left","phone-arrow-up-right","phone-hang-up","phone-hangup2","phone-incoming-01","phone-outgoing-01","phone-plus","phone-x","plus","plus-circle","printer","question-mark-circle","refresh-ccw-01","refresh-cw-01","refresh-cw-04","refresh-right-square-bold","remove-circle","repeat-04","repeat-bold","ruler-pen","search","search-lg","search-md","search-refraction","send-01","send-02","send-diagonal","setting-2","settings","settings-02","settings-04","settings-2","settings-cog","share-01","share-03","share-04","share-05","share-06","share-bold","shield-01","shield-bold","solar-check","speaker","speaker-wave","speedometer-03","star","star-rounded","sun","target-03","text-input","translate","trash","trash-02","trash-03","trash-04","trush-square-bold","unlimited","user-circle","user-jogging","user-plus-01","user-square","user-x-01","user-x-02","user2","users-02","users-speaker","verify","voice-cricle","x-circle","x-close","x-sm","zap"];function IconPickerModal({value:e,onSelect:t,onClose:i,onClear:r}){const[n,o]=React.useState(""),a=React.useMemo(()=>{const e=n.trim().toLowerCase();return e?Icons.filter(t=>t.toLowerCase().includes(e)):Icons},[n]);return jsxRuntime.jsx(Modal,{onClose:i,ariaLabelledBy:"icon-picker-title",children:jsxRuntime.jsxs("div",{style:{display:"grid",gap:12},children:[jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsxRuntime.jsx("p",{id:"icon-picker-title",style:{margin:0,fontWeight:700},children:"Select Icon"}),jsxRuntime.jsx("div",{style:{flex:1}}),r?jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Clear"}):null,jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsx("input",{type:"text",className:"input",placeholder:"Search icons...",value:n,onChange:e=>o(e.target.value),autoFocus:!0}),jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#666"},children:[a.length," / ",Icons.length,e?` • Selected: ${e}`:""]}),jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(120px, 1fr))",gap:8,maxHeight:"60vh",overflow:"auto",paddingRight:4},children:a.map(i=>{const r=e===i;return jsxRuntime.jsxs("button",{type:"button",onClick:()=>t(i),style:{display:"flex",alignItems:"center",gap:8,borderRadius:8,border:r?"2px solid #222":"1px solid #ddd",padding:"8px 10px",background:"hsl(var(--card, var(--rb-card, 0 0% 100%)))",cursor:"pointer"},"aria-label":`Select icon ${i}`,children:[jsxRuntime.jsx(Icon,{iconType:i,size:18}),jsxRuntime.jsx("span",{style:{fontSize:12,fontWeight:r?700:500,textAlign:"left",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:i,children:i})]},i)})})]})})}function isRecord(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function isNodeData$1(e){return isRecord(e)&&"string"==typeof e.type&&"children"in e}function isMainLike(e){const t=e.type;return"Main"===t||"main"===t}function stripNestedIsMain(e,t){if(null==e||"string"==typeof e)return e;if(Array.isArray(e)){let t=!1;const i=e.map(e=>{const i=stripNestedIsMain(e,!1);return i!==e&&(t=!0),i});return t?i:e}if(!isNodeData$1(e))return e;const i=e.children,r=stripNestedIsMain(i,!1),n=!0===e.isMain&&!t;return n||r!==i?{...e,...n?{isMain:!1}:null,children:r}:e}function wrapNodeInMain(e){if(isNodeData$1(e)&&isMainLike(e)){const t=stripNestedIsMain(e,!0);return!0!==t.isMain?{...t,isMain:!0}:t}const t=stripNestedIsMain(e,!1);return{type:"Main",isMain:!0,attributes:{},children:null==e?[]:t}}function safeStringify$1(e){try{return JSON.stringify(e,null,2)??""}catch{return String(e??"")}}function JsonTextEditor({value:e,onChange:t,rootName:i,readOnly:r=!1,className:n}){const o=React.useMemo(()=>safeStringify$1(e),[e]),[a,s]=React.useState(o),[l,c]=React.useState(null),[d,p]=React.useState(null),[g,u]=React.useState(e);React.useEffect(()=>{s(o),c(null),p(null),u(e)},[o,e]);const m=i?`${i}.json`:"data.json";return jsxRuntime.jsxs("div",{className:n,style:{height:"100%",width:"100%",display:"flex",flexDirection:"column",gap:10},children:[jsxRuntime.jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,flexWrap:"wrap"},children:[jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.75},children:m}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(a)}catch{}},children:"Copy"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=JSON.parse(a);s(JSON.stringify(e,null,2)),c(null),p(null),u(e)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},children:"Format"}),!r&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=JSON.parse(a),t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),i=t(e)&&"data"in e?{...e,data:wrapNodeInMain(e.data)}:wrapNodeInMain(e);s(JSON.stringify(i,null,2)),c(null),p(null),u(i)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},disabled:!t,title:t?"Wrap root in Main and apply":"Read only",children:"Wrap in Main"}),!r&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{if(t)try{const e=JSON.parse(a);c(null),p(null),u(e);try{t(e)}catch(e){p(e instanceof Error?e.message:"Failed to apply JSON")}}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},disabled:!t,title:t?"Apply JSON changes":"Read only",children:"Apply"})]})]}),jsxRuntime.jsx("div",{style:{display:"grid",gridTemplateColumns:"minmax(0, 1fr)",gap:10,flex:1,minHeight:0},children:jsxRuntime.jsx("textarea",{value:a,onChange:e=>{const t=e.target.value;if(s(t),p(null),!r)try{const e=JSON.parse(t);c(null),u(e)}catch(e){c(e instanceof Error?e.message:"Invalid JSON")}},readOnly:r,spellCheck:!1,style:{width:"100%",height:"100%",minHeight:320,resize:"none",border:"1px solid rgba(0,0,0,0.12)",borderRadius:10,padding:12,fontFamily:'ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace',fontSize:12,lineHeight:1.5,background:"transparent",outline:"none"}})}),l?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Invalid JSON: ",l]}):d?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Could not apply: ",d]}):jsxRuntime.jsxs("div",{style:{fontSize:12,opacity:.7},children:["Valid JSON (",safeStringify$1(g).length.toLocaleString()," ","chars)"]})]})}function LocalicationModal({data:e,onChange:t,onClose:i}){const r=e??{};return jsxRuntime.jsxs(Modal,{onClose:i,ariaLabelledBy:"localication-modal-title",className:"modal--large modal--scrollable localication-modal",contentClassName:"localication-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header localication-modal__header",children:[jsxRuntime.jsxs("div",{className:"localication-modal__header-main",children:[jsxRuntime.jsx("h3",{id:"localication-modal-title",className:"modal__title",children:"Localization data"}),jsxRuntime.jsx("p",{className:"localication-modal__description",children:"Manage your translations directly from the JSON structure."})]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsx("div",{className:"localication-modal__body",children:jsxRuntime.jsx("div",{className:"localication-modal__editor",children:jsxRuntime.jsx(JsonTextEditor,{rootName:"localication",value:r,onChange:e=>t(e),className:"localication-modal__json-editor"})})})]})}function randomInt(e,t){return Math.floor(Math.random()*(t-e+1))+e}function randomChoice(e){return e[randomInt(0,e.length-1)]}function randomSku(){return`com.app.${randomChoice(["premium","pro","plus","gold","starter"])}.${randomChoice(["weekly","monthly","yearly","lifetime"])}`}function randomPrice(){const e=randomChoice(["USD","EUR","GBP","TRY"]),t=`${randomChoice([1,2,3,4,5,7,9,12,19,29,49,99])}.${randomChoice([0,49,99]).toString().padStart(2,"0")}`;return{price:t,localizedPrice:`${"USD"===e?"$":"EUR"===e?"€":"GBP"===e?"£":"₺"}${t}`,currency:e}}function ProductEditModal({product:e,index:t,onSave:i,onClose:r}){const n=React.useMemo(()=>({productId:e?.productId??"",title:e?.title??"",description:e?.description??"",localizedPrice:e?.localizedPrice??"",price:e?.price??"",currency:e?.currency??""}),[e]),[o,a]=React.useState(n),s=o.productId.trim().length>0;return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"product-edit-modal-title",contentClassName:"product-edit-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"product-edit-modal-title",className:"modal__title",children:["Edit product #",t+1]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"product-edit-modal__body",children:[jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"productId",children:"productId"}),jsxRuntime.jsx("input",{id:"productId",className:"input",value:o.productId,onChange:e=>a(t=>({...t,productId:e.target.value})),placeholder:"com.app.subscription.monthly"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"title",children:"title"}),jsxRuntime.jsx("input",{id:"title",className:"input",value:o.title,onChange:e=>a(t=>({...t,title:e.target.value})),placeholder:"Monthly Premium"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"description",children:"description"}),jsxRuntime.jsx("textarea",{id:"description",className:"input product-edit-modal__textarea",value:o.description,onChange:e=>a(t=>({...t,description:e.target.value})),placeholder:"Full access to all features..."})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"localizedPrice",children:"localizedPrice"}),jsxRuntime.jsx("input",{id:"localizedPrice",className:"input",value:o.localizedPrice,onChange:e=>a(t=>({...t,localizedPrice:e.target.value})),placeholder:"$4.99"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"price",children:"price"}),jsxRuntime.jsx("input",{id:"price",className:"input",value:o.price,onChange:e=>a(t=>({...t,price:e.target.value})),placeholder:"4.99"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"currency",children:"currency"}),jsxRuntime.jsx("input",{id:"currency",className:"input",value:o.currency,onChange:e=>a(t=>({...t,currency:e.target.value})),placeholder:"USD"})]}),jsxRuntime.jsxs("div",{className:"form-actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{const e=randomPrice(),t=randomChoice(["Premium","Pro","Plus","Gold","Starter","Unlimited"]),i=randomChoice(["Weekly","Monthly","Yearly","Lifetime"]);a({productId:randomSku(),title:`${t} ${i}`,description:randomChoice(["Unlock all features.","Full access to premium content.","Remove ads and get more features.","Best value for power users."]),localizedPrice:e.localizedPrice,price:e.price,currency:e.currency})},title:"Fill with random values",children:"Random"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>i(o),disabled:!s,title:s?"Save":"productId is required",children:"Save"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Cancel"})]})]})]})}const DEFAULT_PRESET_KEY$1="preset-1";function ensureProductId(e){return{...e,productId:e?.productId??""}}function getPresetMap$1(){const e=getMockProducts(),t={};return Object.entries(e??{}).forEach(([e,i])=>{e&&"string"==typeof e&&Array.isArray(i)&&(t[e]=i.filter(Boolean).map(e=>ensureProductId(e)).filter(e=>"string"==typeof e.productId&&e.productId.length>0))}),t}function ProductPresetsModal({current:e,onReplace:t,onAppend:i,onClose:r}){const n=React.useMemo(()=>getPresetMap$1(),[]),o=React.useMemo(()=>Object.entries(n).sort((e,t)=>{const i=e[0],r=t[0];return i===DEFAULT_PRESET_KEY$1&&r!==DEFAULT_PRESET_KEY$1?-1:r===DEFAULT_PRESET_KEY$1&&i!==DEFAULT_PRESET_KEY$1?1:i.localeCompare(r)}),[n]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"product-presets-modal-title",contentClassName:"product-presets-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"product-presets-modal-title",className:"modal__title",children:"Product presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"product-presets-modal__body",children:[jsxRuntime.jsxs("section",{className:"product-presets-modal__section",children:[jsxRuntime.jsxs("p",{className:"product-presets-modal__section-title",children:["Current (",Array.isArray(e)?e.length:0,")"]}),jsxRuntime.jsx("p",{className:"product-presets-modal__muted",children:"Pick a preset below to replace or append to the current list."})]}),jsxRuntime.jsxs("section",{className:"product-presets-modal__section",children:[jsxRuntime.jsx("p",{className:"product-presets-modal__section-title",children:"Presets"}),o.length?jsxRuntime.jsx("div",{className:"product-presets-modal__grid",children:o.map(([e,n])=>jsxRuntime.jsxs("div",{className:"product-presets-modal__card",children:[jsxRuntime.jsxs("div",{className:"product-presets-modal__card-header",children:[jsxRuntime.jsx("p",{className:"product-presets-modal__card-title",children:e}),jsxRuntime.jsxs("p",{className:"product-presets-modal__card-count",children:[n.length," products"]})]}),jsxRuntime.jsxs("ul",{className:"product-presets-modal__card-list",children:[n.slice(0,3).map(e=>jsxRuntime.jsx("li",{className:"product-presets-modal__card-item",children:e.productId},e.productId)),n.length>3?jsxRuntime.jsxs("li",{className:"product-presets-modal__card-item product-presets-modal__muted",children:["+",n.length-3," more…"]}):null]}),jsxRuntime.jsxs("div",{className:"product-presets-modal__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t(n),r()},children:"Replace"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(n),r()},children:"Append"})]})]},e))}):jsxRuntime.jsx("p",{className:"product-presets-modal__muted",children:"No presets found."})]})]})]})}function detectKind(e){return"number"==typeof e?"number":"boolean"==typeof e?"boolean":"string"}function parseValue(e,t,i){if("boolean"===e)return"true"===t;if("number"===e){const e=t.trim();if(!e)return i;const r=e.replace(",","."),n=Number.parseFloat(r);return Number.isFinite(n)?n:i}return t}function BenefitEditModal({benefitKey:e,benefitValue:t,index:i,onSave:r,onClose:n}){const o=React.useMemo(()=>{const i=(e??"").toString(),r=detectKind(t);return{key:i,kind:r,raw:"boolean"===r?t?"true":"false":"number"===r?`${t??""}`:(t??"").toString()}},[e,t]),[a,s]=React.useState(o),l=a.key.trim().length>0;return jsxRuntime.jsxs(Modal,{onClose:n,ariaLabelledBy:"benefit-edit-modal-title",contentClassName:"benefit-edit-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"benefit-edit-modal-title",className:"modal__title",children:["Edit benefit #",i+1]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:n,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"benefit-edit-modal__body",children:[jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitKey",children:"key"}),jsxRuntime.jsx("input",{id:"benefitKey",className:"input",value:a.key,onChange:e=>s(t=>({...t,key:e.target.value})),placeholder:"unlimited_access"})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitType",children:"type"}),jsxRuntime.jsxs("select",{id:"benefitType",className:"input",value:a.kind,onChange:e=>s(t=>({...t,kind:e.target.value})),children:[jsxRuntime.jsx("option",{value:"string",children:"string"}),jsxRuntime.jsx("option",{value:"number",children:"number"}),jsxRuntime.jsx("option",{value:"boolean",children:"boolean"})]})]}),jsxRuntime.jsxs("div",{className:"form-row",children:[jsxRuntime.jsx("label",{htmlFor:"benefitValue",children:"value"}),"boolean"===a.kind?jsxRuntime.jsxs("select",{id:"benefitValue",className:"input",value:a.raw,onChange:e=>s(t=>({...t,raw:e.target.value})),children:[jsxRuntime.jsx("option",{value:"true",children:"true"}),jsxRuntime.jsx("option",{value:"false",children:"false"})]}):jsxRuntime.jsx("input",{id:"benefitValue",className:"input",value:a.raw,onChange:e=>s(t=>({...t,raw:e.target.value})),placeholder:"number"===a.kind?"7":"Unlock everything"})]}),jsxRuntime.jsxs("div",{className:"form-actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>r({key:a.key,value:parseValue(a.kind,a.raw,t)}),disabled:!l,title:l?"Save":"key is required",children:"Save"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:n,children:"Cancel"})]})]})]})}var basic={unlimited_access:!0,trial_days:7,headline:"Unlock everything"},vpn={secure_connection:!0,no_logs:!0,locations:120,headline:"Private & fast VPN"},pro={remove_ads:!0,priority_support:!0,devices:5,headline:"Go Pro"},presetsJson={"Embeded Paywall":{unlimited_access:!0,trial_days:7,headline:"Unlock everything"},basic:basic,vpn:vpn,pro:pro};const DEFAULT_PRESET_KEY="Embeded Paywall";function normalizeBenefits(e){if(!e||"object"!=typeof e||Array.isArray(e))return{};const t={};return Object.entries(e).forEach(([e,i])=>{const r="string"==typeof e?e.trim():"";r&&("string"!=typeof i&&"number"!=typeof i&&"boolean"!=typeof i||(t[r]=i))}),t}function getPresetMap(){const e=presetsJson,t={};return Object.entries(e??{}).forEach(([e,i])=>{const r="string"==typeof e?e.trim():"";r&&(t[r]=normalizeBenefits(i))}),t}function countBenefits(e){return e&&"object"==typeof e?Object.keys(e).length:0}function BenefitPresetsModal({current:e,onReplace:t,onMerge:i,onClose:r}){const n=React.useMemo(()=>getPresetMap(),[]),o=React.useMemo(()=>Object.entries(n).sort((e,t)=>{const i=e[0],r=t[0];return i===DEFAULT_PRESET_KEY&&r!==DEFAULT_PRESET_KEY?-1:r===DEFAULT_PRESET_KEY&&i!==DEFAULT_PRESET_KEY?1:i.localeCompare(r)}),[n]);return jsxRuntime.jsxs(Modal,{onClose:r,ariaLabelledBy:"benefit-presets-modal-title",contentClassName:"benefit-presets-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsx("h3",{id:"benefit-presets-modal-title",className:"modal__title",children:"Benefit presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"benefit-presets-modal__body",children:[jsxRuntime.jsxs("section",{className:"benefit-presets-modal__section",children:[jsxRuntime.jsxs("p",{className:"benefit-presets-modal__section-title",children:["Current (",countBenefits(e),")"]}),jsxRuntime.jsx("p",{className:"benefit-presets-modal__muted",children:"Pick a preset below to replace or merge into the current map."})]}),jsxRuntime.jsxs("section",{className:"benefit-presets-modal__section",children:[jsxRuntime.jsx("p",{className:"benefit-presets-modal__section-title",children:"Presets"}),o.length?jsxRuntime.jsx("div",{className:"benefit-presets-modal__grid",children:o.map(([e,n])=>{const o=Object.entries(n);return jsxRuntime.jsxs("div",{className:"benefit-presets-modal__card",children:[jsxRuntime.jsxs("div",{className:"benefit-presets-modal__card-header",children:[jsxRuntime.jsx("p",{className:"benefit-presets-modal__card-title",children:e}),jsxRuntime.jsxs("p",{className:"benefit-presets-modal__card-count",children:[o.length," benefits"]})]}),jsxRuntime.jsxs("ul",{className:"benefit-presets-modal__card-list",children:[o.slice(0,3).map(([e,t])=>jsxRuntime.jsxs("li",{className:"benefit-presets-modal__card-item",children:[e,": ",String(t)]},e)),o.length>3?jsxRuntime.jsxs("li",{className:"benefit-presets-modal__card-item benefit-presets-modal__muted",children:["+",o.length-3," more…"]}):null]}),jsxRuntime.jsxs("div",{className:"benefit-presets-modal__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t(n),r()},children:"Replace"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(n),r()},title:"Merges preset into current (preset values overwrite existing keys)",children:"Merge"})]})]},e)})}):jsxRuntime.jsx("p",{className:"benefit-presets-modal__muted",children:"No presets found."})]})]})]})}function MockableFeatureModal({featureKey:e,onClose:t}){const{products:i,addProduct:r,removeProduct:n,updateProduct:o,setProducts:a,clearProducts:s,benefits:l,setBenefits:c,clearBenefits:d,upsertBenefit:p,removeBenefit:g,renameBenefit:u,setLocalization:m,localization:h,setProjectColors:f,projectColors:y}=useRenderStore(e=>({products:e.products,addProduct:e.addProduct,removeProduct:e.removeProduct,updateProduct:e.updateProduct,setProducts:e.setProducts,clearProducts:e.clearProducts,benefits:e.benefits,setBenefits:e.setBenefits,clearBenefits:e.clearBenefits,upsertBenefit:e.upsertBenefit,removeBenefit:e.removeBenefit,renameBenefit:e.renameBenefit,setLocalization:e.setLocalization,localization:e.localization,setProjectColors:e.setProjectColors,projectColors:e.projectColors})),[b,C]=React.useState(null),[x,v]=React.useState(!1),[S,w]=React.useState(null),[k,T]=React.useState(!1),_=React.useRef(null),R=React.useRef(null),O=React.useRef(null),I=Object.entries(l&&"object"==typeof l&&!Array.isArray(l)?l:{});return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Modal,{onClose:t,ariaLabelledBy:"mockable-feature-modal-title",contentClassName:"mockable-feature-modal",children:[jsxRuntime.jsxs("div",{className:"modal__header",children:[jsxRuntime.jsxs("h3",{id:"mockable-feature-modal-title",className:"modal__title",children:["Mockable: ",e]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:t,children:"Close"})]}),jsxRuntime.jsx("div",{className:"mockable-feature-modal__body",children:"localization"===e?jsxRuntime.jsx(LocalizationPanel,{localization:h,defaultLoc:defaultLocalization,csvInputRef:_,onImportClick:()=>_.current?.click(),onChange:e=>{const t=e.target.files?.[0];if(!t)return;const i=new FileReader;i.onload=t=>{try{const e=t.target?.result,i=e.split(/\r?\n/).filter(Boolean);if(i.length<2)return void alert("CSV must have a header row and at least one data row.");const r=i[0].split(",").map(e=>e.trim().toLowerCase()),n=r.indexOf("key"),o=r.indexOf("en"),a=r.indexOf("tr");if(-1===n||-1===o&&-1===a)return void alert('CSV must have a "key" column and at least one of "en" or "tr" columns.');const s={};for(let e=1;e<i.length;e++){const t=i[e].split(",").map(e=>e.trim()),r=t[n]?.trim();if(!r)continue;const l={};-1!==o&&void 0!==t[o]&&(l.en=t[o]),-1!==a&&void 0!==t[a]&&(l.tr=t[a]),s[r]=l}m(s)}catch(e){alert("Failed to parse CSV: "+String(e))}finally{e.target.value=""}},i.readAsText(t)}}):"colors"===e?jsxRuntime.jsx(ColorsPanel,{projectColors:y,defaultColors:defaultProjectColors,colorsInputRef:R,onImportClick:()=>R.current?.click(),onChange:e=>{const t=e.target.files?.[0];if(!t)return;const i=new FileReader;i.onload=t=>{try{const e=JSON.parse(t.target?.result);f(e)}catch(e){alert("Failed to parse JSON: "+String(e))}finally{e.target.value=""}},i.readAsText(t)}}):"products"===e?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Add product"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>v(!0),children:"Presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:s,disabled:0===i.length,children:"Clear"})]}),jsxRuntime.jsx("div",{style:{marginTop:12},children:i.length?jsxRuntime.jsx("ul",{style:{margin:0,paddingLeft:18},children:i.map((e,t)=>jsxRuntime.jsxs("li",{style:{display:"flex",gap:8,marginBottom:8,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:{flex:1},children:e?.productId?.trim()?e.productId:"(empty productId)"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>C(t),children:"Edit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>n(t),children:"Remove"})]},`${t}-${e?.productId??""}`))}):jsxRuntime.jsx("p",{style:{margin:0,opacity:.7},children:"No products yet."})})]}):"benefits"===e?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{const e="benefit",t=new Set(I.map(([e])=>e));let i=`${e}_1`,r=1;for(;t.has(i);)r+=1,i=`${e}_${r}`;p(i,!0),w(i)},children:"Add benefit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>T(!0),children:"Presets"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:d,disabled:0===I.length,children:"Clear"})]}),jsxRuntime.jsx("div",{style:{marginTop:12},children:I.length?jsxRuntime.jsx("ul",{style:{margin:0,paddingLeft:18},children:I.map(([e,t],i)=>jsxRuntime.jsxs("li",{style:{display:"flex",gap:8,marginBottom:8,alignItems:"center"},children:[jsxRuntime.jsxs("span",{style:{flex:1,wordBreak:"break-word"},children:[e,": ",String(t)]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>w(e),children:"Edit"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>g(e),children:"Remove"})]},`${i}-${e}`))}):jsxRuntime.jsx("p",{style:{margin:0,opacity:.7},children:"No benefits yet."})})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>O.current?.click(),children:"Import JSON"}),jsxRuntime.jsx("input",{ref:O,type:"file",accept:".json,application/json",style:{display:"none"},onChange:t=>{const i=t.target.files?.[0];if(!i)return;const r=new FileReader;r.onload=i=>{try{const t=JSON.parse(i.target?.result);"products"===e&&Array.isArray(t)?a(t):"benefits"!==e||"object"!=typeof t||Array.isArray(t)?alert("Imported JSON does not match the expected format."):c(t)}catch(e){alert("Failed to parse JSON: "+String(e))}finally{t.target.value=""}},r.readAsText(i)}})]}),jsxRuntime.jsxs("p",{style:{margin:"8px 0 0",opacity:.7,fontSize:12},children:["No mock UI yet for ",'"',e,'"'," — import via JSON."]})]})})]}),"products"===e&&null!==b?jsxRuntime.jsx(ProductEditModal,{index:b,product:i[b],onClose:()=>C(null),onSave:e=>{o(b,e),C(null)}}):null,"products"===e&&x?jsxRuntime.jsx(ProductPresetsModal,{current:i,onClose:()=>v(!1),onReplace:e=>a(e),onAppend:e=>a([...i??[],...e??[]])}):null,"benefits"===e&&null!==S?jsxRuntime.jsx(BenefitEditModal,{index:Math.max(0,I.findIndex(([e])=>e===S)),benefitKey:S,benefitValue:l?.[S]??"",onClose:()=>w(null),onSave:({key:e,value:t})=>{const i=e.trim();S!==i&&u(S,i),p(i,t),w(null)}}):null,"benefits"===e&&k?jsxRuntime.jsx(BenefitPresetsModal,{current:l,onClose:()=>T(!1),onReplace:e=>c(e),onMerge:e=>c({...l??{},...e??{}})}):null]})}const SOURCE_STYLE={default:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#3a3d4a",color:"#9ca3af",fontWeight:500,whiteSpace:"nowrap"},custom:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#14532d",color:"#86efac",fontWeight:500,whiteSpace:"nowrap"},merged:{fontSize:10,padding:"1px 5px",borderRadius:3,background:"#1e3a5f",color:"#93c5fd",fontWeight:500,whiteSpace:"nowrap"}};function SourceBadge({source:e}){return jsxRuntime.jsx("span",{style:SOURCE_STYLE[e],children:e})}function LocalizationPanel({localization:e,defaultLoc:t,csvInputRef:i,onImportClick:r,onChange:n}){const o=mergeLocalization(t,e),a=Array.from(new Set([...Object.keys(t),...Object.keys(e)])).sort(),s=Array.from(new Set(a.flatMap(i=>[...Object.keys(t[i]??{}),...Object.keys(e[i]??{})]))).sort(),l=e&&Object.keys(e).some(t=>Object.keys(e[t]??{}).length>0);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Import CSV"}),jsxRuntime.jsx("input",{ref:i,type:"file",accept:".csv,text/csv",style:{display:"none"},onChange:n}),jsxRuntime.jsx("span",{style:{fontSize:11,opacity:.6},children:"key, en, tr columns"}),jsxRuntime.jsx("span",{style:{marginLeft:"auto",fontSize:11,opacity:.5},children:l?"custom overrides active":"using defaults"})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,margin:"8px 0 4px",fontSize:11},children:[jsxRuntime.jsx(SourceBadge,{source:"default"})," default only",jsxRuntime.jsx(SourceBadge,{source:"custom"})," custom override",jsxRuntime.jsx(SourceBadge,{source:"merged"})," both (custom wins)"]}),jsxRuntime.jsx("div",{style:{overflowX:"auto",marginTop:4},children:jsxRuntime.jsxs("table",{style:{borderCollapse:"collapse",fontSize:11,width:"100%",tableLayout:"fixed"},children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"4px 6px",borderBottom:"1px solid #333",width:200,fontWeight:600},children:"key"}),a.map(e=>jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"4px 6px",borderBottom:"1px solid #333",fontWeight:600},children:e},e))]})}),jsxRuntime.jsx("tbody",{children:s.map(i=>jsxRuntime.jsxs("tr",{style:{borderBottom:"1px solid #222"},children:[jsxRuntime.jsx("td",{style:{padding:"3px 6px",fontFamily:"monospace",wordBreak:"break-all",opacity:.8},children:i}),a.map(r=>{const n=void 0!==(t[r]??{})[i],a=void 0!==(e[r]??{})[i],s=(o[r]??{})[i]??"";let l="default";return n&&a?l="merged":a&&(l="custom"),jsxRuntime.jsx("td",{style:{padding:"3px 6px",verticalAlign:"top"},children:jsxRuntime.jsxs("div",{style:{display:"flex",gap:4,alignItems:"flex-start"},children:[jsxRuntime.jsx(SourceBadge,{source:l}),jsxRuntime.jsx("span",{style:{wordBreak:"break-word",opacity:.85},children:s})]})},r)})]},i))})]})})]})}function ColorsPanel({projectColors:e,defaultColors:t,colorsInputRef:i,onImportClick:r,onChange:n}){const o=e?mergeProjectColors(t,e):t,a=!!e;function s(e={},t={},i={}){return Array.from(new Set([...Object.keys(e),...Object.keys(t)])).sort().map(r=>{const n=r in(t??{});let o="default";return r in e&&n?o="merged":n&&(o="custom"),{key:r,value:i[r]??"",src:o}})}const l=s(t.STATIC_COLORS??{},e?.STATIC_COLORS??{},o.STATIC_COLORS??{}),c=Array.from(new Set([...Object.keys(t.THEME_COLORS??{}),...Object.keys(e?.THEME_COLORS??{})])).sort();function d({k:e,value:t,src:i}){return jsxRuntime.jsxs("tr",{style:{borderBottom:"1px solid #222"},children:[jsxRuntime.jsx("td",{style:{padding:"3px 8px",fontFamily:"monospace",fontSize:11,opacity:.8},children:e}),jsxRuntime.jsx("td",{style:{padding:"3px 8px"},children:jsxRuntime.jsxs("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:{display:"inline-block",width:14,height:14,borderRadius:3,background:t,border:"1px solid #555",flexShrink:0}}),jsxRuntime.jsx("span",{style:{fontFamily:"monospace",fontSize:11},children:t})]})}),jsxRuntime.jsx("td",{style:{padding:"3px 8px"},children:jsxRuntime.jsx(SourceBadge,{source:i})})]})}function p({rows:e}){return jsxRuntime.jsxs("table",{style:{borderCollapse:"collapse",width:"100%",fontSize:11},children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsx("tr",{children:["token","value","source"].map(e=>jsxRuntime.jsx("th",{style:{textAlign:"left",padding:"3px 8px",borderBottom:"1px solid #333",fontWeight:600},children:e},e))})}),jsxRuntime.jsx("tbody",{children:e.map(e=>jsxRuntime.jsx(d,{k:e.key,value:e.value,src:e.src},e.key))})]})}return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexWrap:"wrap"},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:r,children:"Import JSON"}),jsxRuntime.jsx("input",{ref:i,type:"file",accept:".json,application/json",style:{display:"none"},onChange:n}),jsxRuntime.jsx("span",{style:{marginLeft:"auto",fontSize:11,opacity:.5},children:a?"custom overrides active":"using defaults"})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,margin:"8px 0 4px",fontSize:11},children:[jsxRuntime.jsx(SourceBadge,{source:"default"})," default only",jsxRuntime.jsx(SourceBadge,{source:"custom"})," custom override",jsxRuntime.jsx(SourceBadge,{source:"merged"})," both (custom wins)"]}),jsxRuntime.jsx("div",{style:{fontWeight:600,fontSize:12,margin:"10px 0 4px"},children:"STATIC_COLORS"}),jsxRuntime.jsx(p,{rows:l}),c.map(i=>{const r=s(t.THEME_COLORS?.[i]??{},e?.THEME_COLORS?.[i]??{},o.THEME_COLORS?.[i]??{});return jsxRuntime.jsxs("div",{children:[jsxRuntime.jsxs("div",{style:{fontWeight:600,fontSize:12,margin:"10px 0 4px"},children:["THEME_COLORS / ",i]}),jsxRuntime.jsx(p,{rows:r})]},i)})]})}function InspectModal({onClose:e}){const[t,i]=React.useState("localizations"),{localization:r,projectColors:n,theme:o,defaultLanguage:a}=useRenderStore(e=>({localization:e.localization,projectColors:e.projectColors,theme:e.theme,defaultLanguage:e.defaultLanguage})),s=React.useMemo(()=>getLastParamsSnapshot(),[]);return jsxRuntime.jsxs(Modal,{onClose:e,ariaLabelledBy:"inspect-modal-title",className:"modal--large modal--scrollable",contentClassName:"inspect-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header inspect-modal__header",children:[jsxRuntime.jsx("h3",{id:"inspect-modal-title",className:"modal__title",children:"Inspect"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:e,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"inspect-modal__tabs",children:[jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("localizations"===t?" is-active":""),onClick:()=>i("localizations"),children:"Localizations"}),jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("params"===t?" is-active":""),onClick:()=>i("params"),children:"Params"}),jsxRuntime.jsx("button",{type:"button",className:"inspect-modal__tab"+("colors"===t?" is-active":""),onClick:()=>i("colors"),children:"Colors"})]}),jsxRuntime.jsxs("div",{className:"inspect-modal__body",children:["localizations"===t&&jsxRuntime.jsx(LocalizationsTab,{localication:r??{},language:a}),"params"===t&&jsxRuntime.jsx(ParamsTab,{localizationParams:s.localizationParams,nestedLocalizationParams:s.nestedLocalizationParams}),"colors"===t&&jsxRuntime.jsx(ColorsTab,{projectColors:n,theme:o})]})]})}function LocalizationsTab({localication:e,language:t}){const i=e[t]??{},r=defaultLocalization[t]??defaultLocalization.en??{},n=Array.from(new Set([...Object.keys(r),...Object.keys(i)])).sort();if(0===n.length)return jsxRuntime.jsxs("p",{className:"inspect-modal__empty",children:['No localization keys found for "',t,'".']});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Key,Value,Source\n";n.forEach(t=>{const n=t in i,o=i[t],a=r[t],s=n&&o!==a&&void 0!==o,l=s?o:a??"",c=e=>`"${String(e).replace(/"/g,'""')}"`;e+=`${c(t)},${c(String(l))},${s?"custom":"fallback"}\n`}),downloadCSV(`localizations-${t}.csv`,e)},children:"Download CSV"})}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Key"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:n.map(e=>{const t=e in i,n=i[e],o=r[e],a=t&&n!==o&&void 0!==n,s=a?n:o??"";return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:s}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(a?" inspect-modal__badge--custom":" inspect-modal__badge--default"),children:a?"custom":jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]})})})]},e)})})]})]})}function ParamsTab({localizationParams:e,nestedLocalizationParams:t}){const i=Object.entries(e),r=Object.entries(t);if(!(i.length>0||r.length>0))return jsxRuntime.jsx("p",{className:"inspect-modal__empty",children:"No params available. Params are populated inside a PaywallProvider."});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Param,Value,Type\n";const t=e=>`"${String(e).replace(/"/g,'""')}"`;i.forEach(([i,r])=>{e+=`${t(i)},${t(formatValue(r))},Flat\n`}),r.forEach(([i,r])=>{e+=`${t(i)},${t(formatValue(r))},Nested\n`}),downloadCSV("params.csv",e)},children:"Download CSV"})}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Param"}),jsxRuntime.jsx("th",{children:"Value"})]})}),jsxRuntime.jsxs("tbody",{children:[i.map(([e,t])=>jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:formatValue(t)})]},e)),r.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("tr",{className:"inspect-modal__separator-row",children:jsxRuntime.jsx("td",{colSpan:2,children:"Nested (per-product)"})}),r.map(([e,t])=>jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsxs("td",{className:"inspect-modal__cell-key inspect-modal__cell-key--nested",children:["- ",e]}),jsxRuntime.jsx("td",{className:"inspect-modal__cell-value",children:formatValue(t)})]},`nested-${e}`))]})]})]})]})}function ColorsTab({projectColors:e,theme:t}){const i=e?.STATIC_COLORS??{},r=e?.THEME_COLORS?.[t]??{},n=defaultProjectColors.STATIC_COLORS??{},o=defaultProjectColors.THEME_COLORS?.[t]??{},a=Object.entries(i),s=Object.entries(r);if(0===a.length&&0===s.length)return jsxRuntime.jsx("p",{className:"inspect-modal__empty",children:"No project colors defined."});return jsxRuntime.jsxs("div",{className:"inspect-modal__table-wrap",children:[jsxRuntime.jsx("div",{style:{display:"flex",justifyContent:"flex-end",marginBottom:"8px"},children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{let e="Type,Token,Value,Source\n";const i=e=>`"${String(e).replace(/"/g,'""')}"`;a.forEach(([t,r])=>{const o=n[t]===r;e+=`Static,${i(t)},${i(String(r))},${o?"fallback":"custom"}\n`}),s.forEach(([r,n])=>{const a=o[r]===n;e+=`Theme (${t}),${i(r)},${i(String(n))},${a?"fallback":"custom"}\n`}),downloadCSV("colors.csv",e)},children:"Download CSV"})}),a.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("h4",{className:"inspect-modal__section-title",children:"Static Colors"}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Token"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:a.map(([e,t])=>{const i=n[e]===t;return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsxs("td",{className:"inspect-modal__cell-value",children:[jsxRuntime.jsx("span",{className:"inspect-modal__color-swatch",style:{backgroundColor:t}}),t]}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(i?" inspect-modal__badge--default":" inspect-modal__badge--custom"),children:i?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]}):"custom"})})]},e)})})]})]}),s.length>0&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("h4",{className:"inspect-modal__section-title",children:["Theme Colors (",t,")"]}),jsxRuntime.jsxs("table",{className:"inspect-modal__table",children:[jsxRuntime.jsx("thead",{children:jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("th",{children:"Token"}),jsxRuntime.jsx("th",{children:"Value"}),jsxRuntime.jsx("th",{children:"Source"})]})}),jsxRuntime.jsx("tbody",{children:s.map(([e,t])=>{const i=o[e]===t;return jsxRuntime.jsxs("tr",{children:[jsxRuntime.jsx("td",{className:"inspect-modal__cell-key",children:e}),jsxRuntime.jsxs("td",{className:"inspect-modal__cell-value",children:[jsxRuntime.jsx("span",{className:"inspect-modal__color-swatch",style:{backgroundColor:t}}),t]}),jsxRuntime.jsx("td",{children:jsxRuntime.jsx("span",{className:"inspect-modal__badge"+(i?" inspect-modal__badge--default":" inspect-modal__badge--custom"),children:i?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("span",{style:{color:"red"},children:"!"})," fallback"]}):"custom"})})]},e)})})]})]})]})}function formatValue(e){return void 0===e?"—":null===e?"null":"string"==typeof e?e:"number"==typeof e||"boolean"==typeof e?String(e):JSON.stringify(e)}function downloadCSV(e,t){const i=new Blob([t],{type:"text/csv;charset=utf-8;"}),r=URL.createObjectURL(i),n=document.createElement("a");n.setAttribute("href",r),n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n)}function escapeXmlAttr(e,t){let i=e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return i='"'===t?i.replace(/"/g,"&quot;"):i.replace(/'/g,"&apos;"),i}function attrValueToString(e){return null==e?"":"string"==typeof e?e:"number"==typeof e||"boolean"==typeof e?String(e):JSON.stringify(e)}function nodeToXmlInner(e,t){const i=" ".repeat(t);if(null==e)return"";if("string"==typeof e)return`${i}${escapeXmlAttr(e,'"').replace(/"/g,'"')}`;if(Array.isArray(e))return e.map(e=>nodeToXmlInner(e,t)).join("\n");if("object"!=typeof e)return"";const r=e,n=r.type;if(!n)return"";const o=[],a=(e,t)=>{const i=attrValueToString(t),r=i.includes('"')&&!i.includes("'")?"'":'"',n=escapeXmlAttr(i,r);o.push(`${e}=${r}${n}${r}`)};if(r.key&&a("key",r.key),r.sourceType&&a("sourceType",r.sourceType),r.isMain&&a("isMain","true"),r.attributes&&"object"==typeof r.attributes)for(const[e,t]of Object.entries(r.attributes))a(e,t);const s=o.length>0?" "+o.join(" "):"",l=r.children;if(null==l||Array.isArray(l)&&0===l.length)return`${i}<${n}${s} />`;return`${i}<${n}${s}>\n${nodeToXmlInner(l,t+1)}\n${i}</${n}>`}function nodeToXml(e){return null==e?"":nodeToXmlInner(e,0)}function unescapeXml(e){return e.replace(/&quot;/g,'"').replace(/&gt;/g,">").replace(/&lt;/g,"<").replace(/&amp;/g,"&")}function parseAttrValue(e){const t=unescapeXml(e);if("true"===t)return!0;if("false"===t)return!1;if(""!==t&&!Number.isNaN(Number(t)))return Number(t);if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))try{return JSON.parse(t)}catch{}return t}function domElementToNode(e){const t={type:e.tagName,children:null},i=new Set(["key","sourceType","isMain"]),r={};for(const n of Array.from(e.attributes))i.has(n.name)?"key"===n.name?t.key=n.value:"sourceType"===n.name?t.sourceType=n.value:"isMain"===n.name&&(t.isMain="true"===n.value):r[n.name]=parseAttrValue(n.value);Object.keys(r).length>0&&(t.attributes=r);const n=[];for(const t of Array.from(e.childNodes))if(1===t.nodeType)n.push(domElementToNode(t));else if(3===t.nodeType){const e=(t.textContent??"").trim();e&&n.push(e)}return 0===n.length?t.children=null:1===n.length?t.children=n[0]:t.children=n,t}function xmlToNode(e){if(!e.trim())return null;const t=(new DOMParser).parseFromString(e,"text/xml"),i=t.querySelector("parsererror");if(i)throw new Error(i.textContent??"XML parse error");return domElementToNode(t.documentElement)}const onboardPromptScheme='You are a React Native UI builder assistant. Your goal is to generate a valid **onboard** screen node tree in XML format.\n\n## Available Components & Their Props\n\nEach component is listed as `ComponentName: {attr: TypeScriptType, styles: {prop: TypeScriptType}}`. Use ONLY these component names and attribute names. Do NOT invent new components or attributes.\n\nUnion enum values must match exactly (e.g. `"expanding_dot"` not `expandingDot`). Color values: prefer `THEME_COLORS.KEY` or `STATIC_COLORS.KEY` for theme-aware colors. Literal values like `"red"` or `"#000fff"` are also valid when a specific color is intended. Localization string values should use a localization key from the **Available Localization Keys** section. Do NOT invent new keys.\n\n```\nBIcon:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,iconType:string,size:number,strokeWidth:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nBackgroundImage:{scrollable:boolean,testID:string,src:string,resizeMode:"cover"|"contain"|"stretch"|"center",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nButton:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900"}}\nCarousel:{scrollable:boolean,testID:string,loop:boolean,dragFree:boolean,align:"start"|"center"|"end",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselDots:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselItem:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselProvider:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCheckbox:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,checkIconSize:number,checkIconStrokeWidth:number}}\nCountDown:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,count:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:obj,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:obj,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormCheckbox:{checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,name:string,validation:[string],styles:{borderRadius:string,checkIconSize:number,checkIconStrokeWidth:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormErrorText:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormProvider:{scrollable:boolean,testID:string,defaultValues:string,validationErrorMessageKey:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormSubmitButton:{labelKey:string,events:[obj],testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,disableIfUnvalidated:boolean,validationRequired:boolean,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nImage:{scrollable:boolean,testID:string,src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,resizeMode:"cover"|"contain"|"stretch"|"center"}}\nMain:{scrollable:boolean,testID:string,useSafeAreaView:boolean,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nNavigationBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nOnboard:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButton:{labelKey:string,events:[obj],testID:"onboardSkip"|"onboardNext",adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,animation:"simple-animation"|"line-animation"|"blur"|"blur-animation"|"blur-line-animation",animation_color:string,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,buttons_direction:"row"|"column",forIndex:number,seperatorColor:string,condition:"carousel-index",conditionVariable:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardDot:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardImage:{src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",scrollable:boolean,testID:string,video_url:string,lottie:string,styles:{resizeMode:"cover"|"contain"|"stretch"|"center",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardItem:{scrollable:boolean,testID:string,display:"flex"|"block",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardProvider:{scrollable:boolean,testID:string,theme:"light"|"dark"|"all",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardSubtitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardTitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallBackground:{src:string,resizeMode:"cover"|"contain"|"stretch"|"center",scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallCloseButton:{iconType:string,size:number,strokeWidth:number,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallOptions:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallProvider:{scrollable:boolean,testID:string,delay:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallSubscribeButton:{scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPriceTag:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,showOriginalPricePossible:boolean,hideIfItsNotDiscount:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,textDecorationLine:"none"|"underline"|"line-through"}}\nPricing:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPromo:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nRadioButton:{scrollable:boolean,testID:string,selected:boolean,color:string,size:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nSeparator:{testID:string,styles:{backgroundColor:string,width:string,height:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string}}\nStatusBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nSystemButton:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,labelKey:string,events:[obj],styles:{color:string,fontSize:number,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:number,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nText:{scrollable:boolean,testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string}}\nView:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nWebView:{scrollable:boolean,testID:string,iosUrl:string,androidUrl:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,loaderColor:string,loaderSize:number,loaderBorderWidth:number,loaderAnimationDuration:number}}\n```\n\n## Available Icons\n\nUse one of these values for `iconType` attributes:\n\n```\n\n```\n\n## XML Rules\n\n- Root element must always be `<Main isMain="true">`.\n- Text content (children) goes as element body text, not as an attribute.\n- `styles` value must be a JSON object string (escape inner quotes): `styles="{&quot;flex&quot;:1,&quot;color&quot;:&quot;THEME_COLORS.TEXT&quot;}"`.\n- `events` value must be a JSON array string.\n- Omit any attribute that has no value — no nulls, no empty strings.\n- Use a short unique slug for `key` when the component needs one.\n- Only use components appropriate for a onboard screen.\n\n## Component & Layout Constraints\n\n- **Mobile Limits**: When applying absolute sizes (width, height, testing dimensions), do NOT exceed typical mobile screen dimensions (e.g., max width ~360-400, max height ~800).\n- **testID**: Every component MUST have a unique `testID` attribute, **EXCEPT** `OnboardButton` (do not provide `testID` for `OnboardButton` as it handles it internally).\n- **PaywallOptions**: When using `PaywallOptions`, generate ONLY ONE layout template inside it. The app repeats this template for each product dynamically.\n- **PriceTag Placement**: If `PriceTag` is placed **inside** `PaywallOptions`, it displays the price of that specific option in the loop. If placed **outside** of `PaywallOptions`, it displays the price of the user\'s currently *selected* option.\n\n## Embla Carousel Constraints\n\n> **IMPORTANT – Web uses Embla carousel under the hood.** For `OnboardProvider` and `OnboardItem`, do **NOT** set any of the following outer layout styles via `styles`, because Embla manages them internally through its own CSS classes (`embla`, `embla__viewport`, `embla__slide`):\n>\n> `flex`, `flexGrow`, `flexShrink`, `margin`, `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, `marginHorizontal`, `marginVertical`, `height`, `minHeight`, `maxHeight`, `width`, `minWidth`, `maxWidth`, `position`, `top`, `bottom`, `left`, `right`, `zIndex`, `display`\n>\n> Only **visual** styles are safe to set on `OnboardProvider` and `OnboardItem`: `padding`, `paddingTop`, `paddingBottom`, `paddingLeft`, `paddingRight`, `paddingHorizontal`, `paddingVertical`, `backgroundColor`, `borderRadius`, `gap`, `alignItems`, `justifyContent`, `flexDirection`, `flexWrap`\n\n## Available Localization Keys\n\nUse ONLY the keys listed below for localization attributes (`labelKey`, `textLocalizationKey`, etc.). Do NOT invent new keys or use keys not in this list.\n\n```\nbase.builder.paywall.period.monthly\nbase.builder.paywall.period.annual\nbase.builder.paywall.period.weekly\nbase.builder.paywall.period.daily\nbase.builder.paywall.period.monthlyPromo\nbase.builder.paywall.period.annualPromo\nbase.builder.paywall.pricing.default.text\nbase.builder.paywall.pricing.freeTrial.text\nbase.builder.paywall.pricing.regular.text\nbase.builder.paywall.promo.default.text\nbase.builder.paywall.promo.freeTrial.text\nbase.builder.paywall.promo.regular.text\nbase.builder.paywall.button.subscribe\nbase.builder.paywall.button.subscribe-free\nbase.onboard.title.one-page\nbase.onboard.title.two-page\nbase.onboard.title.three-page\nbase.onboard.title.four-page\nbase.onboard.title.five-page\nbase.onboard.title.six-page\nbase.onboard.title.one-page2\nbase.onboard.title.two-page2\nbase.onboard.title.three-page2\nbase.onboard.title.four-page2\nbase.onboard.subtitle.one-page\nbase.onboard.subtitle.two-page\nbase.onboard.subtitle.three-page\nbase.onboard.subtitle.four-page\nbase.onboard.subtitle.five-page\nbase.onboard.subtitle.six-page\nbase.onboard.subtitle.one-page2\nbase.onboard.subtitle.two-page2\nbase.onboard.subtitle.three-page2\nbase.onboard.subtitle.four-page2\nbase.onboard.next.one-page\nbase.onboard.next.two-page\nbase.onboard.next.three-page\nbase.onboard.next.five-page\nbase.onboard.skip.one-page\nbase.onboard.skip.two-page\nbase.onboard.skip.three-page\nbase.onboard.skip.five-page\nbase.onboard.allow.four-page\nbase.onboard.footer.description\nbase.onboard.btnPrivacy\nbase.onboard.btnTerms\nbase.builder.paywall.footer.description\nbase.builder.paywall.btnPrivacy\nbase.builder.paywall.btnTerms\nview.terms.header.title\nview.terms.accept.button\nview.terms.checkbox.label\nview.terms.error.must_accept\nform.error.validation_required\n```\n\n## Default Colors\n\nReference color tokens already defined in the project. Prefer these over hard-coded hex values.\n\n```\n STATIC_COLORS.BLACK: "#000"\n STATIC_COLORS.WHITE: "#FFFFFF"\n STATIC_COLORS.TRANSPARENT: "#ffffff00"\n STATIC_COLORS.ONBOARD_DOT_INACTIVE: "#E4E5E7"\n STATIC_COLORS.ONBOARD_DOT_ACTIVE: "#007AFF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND: "#0066FF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT: "#FFFFFF"\n STATIC_COLORS.ONBOARD_LINK_COLOR: "#1778F2"\n STATIC_COLORS.ONBOARD_SEPARATOR_COLOR: "#44454D"\n STATIC_COLORS.RADIO_BUTTON_COLOR: "#A6A6A6"\n THEME_COLORS.TEXT (light): "#161827"\n THEME_COLORS.BACKGROUND (light): "#F4F5FF"\n THEME_COLORS.ICON (light): "#0450E2"\n THEME_COLORS.LINE (light): "#E9EBF9"\n THEME_COLORS.ONBOARD_TITLE (light): "#161827"\n THEME_COLORS.ONBOARD_SUBTITLE (light): "#44454D"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (light): "#81838F"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (light): "#81838F"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (light): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (light): "#B91C1C"\n THEME_COLORS.TEXT (dark): "#E9EBF9"\n THEME_COLORS.BACKGROUND (dark): "#080A17"\n THEME_COLORS.ICON (dark): "#0450E2"\n THEME_COLORS.LINE (dark): "#161827"\n THEME_COLORS.ONBOARD_TITLE (dark): "#FDFDFD"\n THEME_COLORS.ONBOARD_SUBTITLE (dark): "#C7C7C7"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (dark): "#A9AAAC"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (dark): "#A2A4B1"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (dark): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (dark): "#B91C1C"\n```\n\n## Default Localization (en)\n\n```\n{\n "base.builder.paywall.period.monthly": "per month",\n "base.builder.paywall.period.annual": "per year",\n "base.builder.paywall.period.weekly": "per week",\n "base.builder.paywall.period.daily": "per day",\n "base.builder.paywall.period.monthlyPromo": "per month",\n "base.builder.paywall.period.annualPromo": "per year",\n "base.builder.paywall.pricing.default.text": "@promoPrice for the first @promoPeriod, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.promo.default.text": "Save @discountPercentage%!",\n "base.builder.paywall.promo.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial",\n "base.builder.paywall.promo.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.button.subscribe": "Subscribe",\n "base.builder.paywall.button.subscribe-free": "Subscribe with Free Trial",\n "base.onboard.title.one-page": "Secure your connection",\n "base.onboard.title.two-page": "Access content worldwide",\n "base.onboard.title.three-page": "Fast and reliable",\n "base.onboard.title.four-page": "Stay notified and safe",\n "base.onboard.title.five-page": "Enhance your experience",\n "base.onboard.title.six-page": "You are all set!",\n "base.onboard.title.one-page2": "Secure your connection",\n "base.onboard.title.two-page2": "Access content worldwide",\n "base.onboard.title.three-page2": "Fast and reliable",\n "base.onboard.title.four-page2": "Stay notified and safe",\n "base.onboard.subtitle.one-page": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page": "Enable notifications for connection status and security tips.",\n "base.onboard.subtitle.five-page": "Get the most out of our app with premium features.",\n "base.onboard.subtitle.six-page": "Enjoy secure and fast browsing.",\n "base.onboard.subtitle.one-page2": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page2": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page2": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page2": "Enable notifications for connection status and security tips.",\n "base.onboard.next.one-page": "Next",\n "base.onboard.next.two-page": "Next",\n "base.onboard.next.three-page": "Next",\n "base.onboard.next.five-page": "Next",\n "base.onboard.skip.one-page": "Skip",\n "base.onboard.skip.two-page": "Skip",\n "base.onboard.skip.three-page": "Skip",\n "base.onboard.skip.five-page": "Skip",\n "base.onboard.allow.four-page": "Allow",\n "base.onboard.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.onboard.btnPrivacy": "Privacy Policy",\n "base.onboard.btnTerms": "Terms of Service",\n "base.builder.paywall.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.builder.paywall.btnPrivacy": "Privacy Policy",\n "base.builder.paywall.btnTerms": "Terms of Service",\n "view.terms.header.title": "Terms & Privacy",\n "view.terms.accept.button": "Accept",\n "view.terms.checkbox.label": "I accept the terms and privacy policy",\n "view.terms.error.must_accept": "You must accept to continue",\n "form.error.validation_required": "Please complete the required fields."\n}\n```\n\n## Reference Example\n\nA complete, valid onboard XML:\n\n```xml\n<Main key="c92tR8J5wbTb3fav" isMain="true" useSafeAreaView="true" description="Ekranın ana kapsayıcısı. (#1)" title="Main 1" styles=\'{"paddingBottom":16}\' testID="Main-test-id-1">\n <StatusBarColor title="Status Bar Color" description="Status bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="StatusBarColor-test-id-1" />\n <NavigationBarColor title="Navigation Bar Color" description="Navigation bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="NavigationBarColor-test-id-1" />\n <OnboardProvider theme="dark" description="Onboarding sağlayıcısı. (#1)" title="OnboardProvider 1" testID="OnboardProvider-test-id-1">\n <Onboard description="Onboarding ana yapısı. (#1)" title="Onboard 1" styles=\'{"flex":1}\' testID="Onboard-test-id-1">\n <OnboardItem key="app_onboard-page1" description="Onboarding sayfası. (#1)" title="OnboardItem 1" testID="OnboardItem-test-id-1">\n <OnboardTitle description="Sayfa başlığı. (#1)" title="OnboardTitle 1" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-1">\n base.onboard.title.one-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/6c89e0da17a2d6fe2997e97a2b8a00a1.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-1" fetchStrategy="highIfItsAppLaunch" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#1)" title="OnboardSubtitle 1" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-1">\n base.onboard.subtitle.one-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page2" description="Onboarding sayfası. (#2)" title="OnboardItem 2" testID="OnboardItem-test-id-2">\n <OnboardTitle description="Sayfa başlığı. (#2)" title="OnboardTitle 2" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-2">\n base.onboard.title.two-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/497a627b30ab4a0daaafa3d648a26b07.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-2" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#2)" title="OnboardSubtitle 2" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-2">\n base.onboard.subtitle.two-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page3" description="Onboarding sayfası. (#3)" title="OnboardItem 3" testID="OnboardItem-test-id-3">\n <OnboardTitle description="Sayfa başlığı. (#3)" title="OnboardTitle 3" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-3">\n base.onboard.title.three-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/6e2bc370d38695f6845007fd302034c2.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-3" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#3)" title="OnboardSubtitle 3" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-3">\n base.onboard.subtitle.three-page\n </OnboardSubtitle>\n </OnboardItem>\n <OnboardItem key="app_onboard-page4" description="Onboarding sayfası. (#4)" title="OnboardItem 4" testID="OnboardItem-test-id-4">\n <OnboardTitle description="Sayfa başlığı. (#4)" title="OnboardTitle 4" styles=\'{"color":"THEME_COLORS.ONBOARD_TITLE","textAlign":"center","marginTop":40}\' testID="OnboardTitle-test-id-4">\n base.onboard.title.four-page\n </OnboardTitle>\n <OnboardImage src="https://textcall-dev.s3.amazonaws.com/onboard/high/b6e978fe3362e857212163486c22cc7c.png" resizeMode="contain" styles=\'{"height":350}\' testID="OnboardImage-test-id-4" fetchStrategy="normal" />\n <OnboardSubtitle description="Sayfa alt başlığı. (#4)" title="OnboardSubtitle 4" styles=\'{"color":"THEME_COLORS.ONBOARD_SUBTITLE","fontSize":16,"textAlign":"center"}\' testID="OnboardSubtitle-test-id-4">\n base.onboard.subtitle.four-page\n </OnboardSubtitle>\n </OnboardItem>\n </Onboard>\n <OnboardDot dotType="expanding_dot" dot_thickness="20" inactive_dot_opacity="0.3" inactive_dot_color="STATIC_COLORS.ONBOARD_DOT_INACTIVE" active_dot_color="STATIC_COLORS.ONBOARD_DOT_ACTIVE" styles=\'{"paddingVertical":12}\' testID="OnboardDot-test-id-1" />\n <Separator title="Separator" description="Horizontal separator line" styles=\'{"width":"100%","height":2,"backgroundColor":"STATIC_COLORS.ONBOARD_SEPARATOR_COLOR"}\' testID="Separator-test-id-1" />\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="0" description="Sayfa buton grubu. (#1)" title="OnboardButtons 1" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-1">\n <OnboardButton labelKey="base.onboard.skip.one-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.one-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":1}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="1" description="Sayfa buton grubu. (#2)" title="OnboardButtons 2" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-2">\n <OnboardButton labelKey="base.onboard.skip.two-page" events=\'[{"type":"Permission","permission":"att"},{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.two-page" events=\'[{"type":"Permission","permission":"att"},{"type":"Navigate","navigate_to":null,"targetIndex":2}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="2" description="Sayfa buton grubu. (#3)" title="OnboardButtons 3" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-3">\n <OnboardButton labelKey="base.onboard.skip.three-page" events=\'[{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT","backgroundColor":"STATIC_COLORS.TRANSPARENT"}\' testID="onboardNext" />\n <OnboardButton labelKey="base.onboard.next.three-page" events=\'[{"type":"Permission","permission":"rating"},{"type":"Navigate","navigate_to":null,"targetIndex":3}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <OnboardButtons buttons_direction="row" condition="carousel-index" conditionVariable="3" description="Sayfa buton grubu. (#4)" title="OnboardButtons 4" styles=\'{"height":40,"marginVertical":12,"flexShrink":0}\' testID="OnboardButtons-test-id-4">\n <OnboardButton labelKey="base.onboard.allow.four-page" events=\'[{"type":"Permission","permission":"notification"},{"type":"Navigate","navigate_to":"home"}]\' styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","backgroundColor":"STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND"}\' testID="onboardNext" />\n </OnboardButtons>\n <View title="Onboard Footer Wrap" description="Wrapper for OnboardFooter component" styles=\'{"marginHorizontal":25,"flexShrink":0}\' testID="View-test-id-1">\n <OnboardFooter textLocalizationKey="base.onboard.footer.description" linkedWordFirstLocalizationKey="base.onboard.btnPrivacy" linkedWordFirstColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordFirstPage="privacy" linkedWordSecondLocalizationKey="base.onboard.btnTerms" linkedWordSecondColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordSecondPage="terms" styles=\'{"gap":8,"color":"THEME_COLORS.ONBOARD_FOOTER_TEXT"}\' testID="OnboardFooter-test-id-1" />\n </View>\n </OnboardProvider>\n</Main>\n```\n\n## Task\n\nGenerate a node tree XML for the user\'s request below. Output ONLY raw XML — no markdown fences, no explanation.\n',paywallPromptScheme='You are a React Native UI builder assistant. Your goal is to generate a valid **paywall** screen node tree in XML format.\n\n## Available Components & Their Props\n\nEach component is listed as `ComponentName: {attr: TypeScriptType, styles: {prop: TypeScriptType}}`. Use ONLY these component names and attribute names. Do NOT invent new components or attributes.\n\nUnion enum values must match exactly (e.g. `"expanding_dot"` not `expandingDot`). Color values: prefer `THEME_COLORS.KEY` or `STATIC_COLORS.KEY` for theme-aware colors. Literal values like `"red"` or `"#000fff"` are also valid when a specific color is intended. Localization string values should use a localization key from the **Available Localization Keys** section. Do NOT invent new keys.\n\n```\nBIcon:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,iconType:string,size:number,strokeWidth:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nBackgroundImage:{scrollable:boolean,testID:string,src:string,resizeMode:"cover"|"contain"|"stretch"|"center",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nButton:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900"}}\nCarousel:{scrollable:boolean,testID:string,loop:boolean,dragFree:boolean,align:"start"|"center"|"end",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselDots:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselItem:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCarouselProvider:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nCheckbox:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,checkIconSize:number,checkIconStrokeWidth:number}}\nCountDown:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,count:number,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:obj,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:obj,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormCheckbox:{checked:boolean,label:string,checkedColor:string,syncTermsAccepted:boolean,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,name:string,validation:[string],styles:{borderRadius:string,checkIconSize:number,checkIconStrokeWidth:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormErrorText:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormProvider:{scrollable:boolean,testID:string,defaultValues:string,validationErrorMessageKey:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nFormSubmitButton:{labelKey:string,events:[obj],testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,disableIfUnvalidated:boolean,validationRequired:boolean,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nImage:{scrollable:boolean,testID:string,src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,resizeMode:"cover"|"contain"|"stretch"|"center"}}\nMain:{scrollable:boolean,testID:string,useSafeAreaView:boolean,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nNavigationBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nOnboard:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButton:{labelKey:string,events:[obj],testID:"onboardSkip"|"onboardNext",adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,animation:"simple-animation"|"line-animation"|"blur"|"blur-animation"|"blur-line-animation",animation_color:string,styles:{color:string,backgroundColor:string,height:string,borderRadius:string,fontSize:string,fontWeight:string,fontFamily:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,width:string,minWidth:string,maxWidth:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardButtons:{scrollable:boolean,testID:string,buttonType:"previous_button"|"next_button"|"skip_button",skipNumber:number,buttons_direction:"row"|"column",forIndex:number,seperatorColor:string,condition:"carousel-index",conditionVariable:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardDot:{scrollable:boolean,testID:string,dotType:"expanding_dot"|"normal_dot"|"scaling_dot"|"sliding_border"|"sliding_dot"|"liquid_like",dot_thickness:string,inactive_dot_opacity:number,inactive_dot_color:string,active_dot_color:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardImage:{src:string,fetchStrategy:"highIfItsAppLaunch"|"normal"|"lazy"|"none",scrollable:boolean,testID:string,video_url:string,lottie:string,styles:{resizeMode:"cover"|"contain"|"stretch"|"center",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardItem:{scrollable:boolean,testID:string,display:"flex"|"block",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardProvider:{scrollable:boolean,testID:string,theme:"light"|"dark"|"all",styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardSubtitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nOnboardTitle:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallBackground:{src:string,resizeMode:"cover"|"contain"|"stretch"|"center",scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallCloseButton:{iconType:string,size:number,strokeWidth:number,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallFooter:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,textLocalizationKey:string,linkedWordFirstLocalizationKey:string,linkedWordFirstColor:string,linkedWordFirstPage:string,linkedWordSecondLocalizationKey:string,linkedWordSecondColor:string,linkedWordSecondPage:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallOptions:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallProvider:{scrollable:boolean,testID:string,delay:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPaywallSubscribeButton:{scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontWeight:"normal"|"bold"|"100"|"200"|"300"|"400"|"500"|"600"|"700"|"800"|"900",flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPriceTag:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,showOriginalPricePossible:boolean,hideIfItsNotDiscount:boolean,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,textDecorationLine:"none"|"underline"|"line-through"}}\nPricing:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nPromo:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,styles:{color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nRadioButton:{scrollable:boolean,testID:string,selected:boolean,color:string,size:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nSeparator:{testID:string,styles:{backgroundColor:string,width:string,height:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string}}\nStatusBarColor:{translucent:boolean,styles:{backgroundColor:string}}\nSystemButton:{adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,scrollable:boolean,testID:string,labelKey:string,events:[obj],styles:{color:string,fontSize:number,fontFamily:string,fontWeight:string,textAlign:string,flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:number,width:string,minWidth:string,maxWidth:string,height:number,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nText:{scrollable:boolean,testID:string,adjustsFontSizeToFit:boolean,numberOfLines:number,translateCounter:number,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,color:string,fontSize:string,fontFamily:string,fontWeight:string,textAlign:string}}\nView:{scrollable:boolean,testID:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number}}\nWebView:{scrollable:boolean,testID:string,iosUrl:string,androidUrl:string,styles:{flexDirection:"row"|"column",flexWrap:"nowrap"|"wrap"|"wrap-reverse",alignItems:"flex-start"|"center"|"flex-end"|"stretch"|"baseline",justifyContent:"flex-start"|"center"|"flex-end"|"space-between"|"space-around"|"space-evenly",gap:string,padding:string,paddingHorizontal:string,paddingVertical:string,paddingTop:string,paddingBottom:string,paddingLeft:string,paddingRight:string,margin:string,marginHorizontal:string,marginVertical:string,marginTop:string,marginBottom:string,marginLeft:string,marginRight:string,backgroundColor:string,borderRadius:string,width:string,minWidth:string,maxWidth:string,height:string,minHeight:string,maxHeight:string,flex:number,position:"relative"|"absolute",top:string,bottom:string,left:string,right:string,zIndex:number,loaderColor:string,loaderSize:number,loaderBorderWidth:number,loaderAnimationDuration:number}}\n```\n\n## Available Icons\n\nUse one of these values for `iconType` attributes:\n\n```\n\n```\n\n## XML Rules\n\n- Root element must always be `<Main isMain="true">`.\n- Text content (children) goes as element body text, not as an attribute.\n- `styles` value must be a JSON object string (escape inner quotes): `styles="{&quot;flex&quot;:1,&quot;color&quot;:&quot;THEME_COLORS.TEXT&quot;}"`.\n- `events` value must be a JSON array string.\n- Omit any attribute that has no value — no nulls, no empty strings.\n- Use a short unique slug for `key` when the component needs one.\n- Only use components appropriate for a paywall screen.\n\n## Component & Layout Constraints\n\n- **Mobile Limits**: When applying absolute sizes (width, height, testing dimensions), do NOT exceed typical mobile screen dimensions (e.g., max width ~360-400, max height ~800).\n- **testID**: Every component MUST have a unique `testID` attribute, **EXCEPT** `OnboardButton` (do not provide `testID` for `OnboardButton` as it handles it internally).\n- **PaywallOptions**: When using `PaywallOptions`, generate ONLY ONE layout template inside it. The app repeats this template for each product dynamically.\n- **PriceTag Placement**: If `PriceTag` is placed **inside** `PaywallOptions`, it displays the price of that specific option in the loop. If placed **outside** of `PaywallOptions`, it displays the price of the user\'s currently *selected* option.\n\n## Embla Carousel Constraints\n\n> **IMPORTANT – Web uses Embla carousel under the hood.** For `OnboardProvider` and `OnboardItem`, do **NOT** set any of the following outer layout styles via `styles`, because Embla manages them internally through its own CSS classes (`embla`, `embla__viewport`, `embla__slide`):\n>\n> `flex`, `flexGrow`, `flexShrink`, `margin`, `marginTop`, `marginBottom`, `marginLeft`, `marginRight`, `marginHorizontal`, `marginVertical`, `height`, `minHeight`, `maxHeight`, `width`, `minWidth`, `maxWidth`, `position`, `top`, `bottom`, `left`, `right`, `zIndex`, `display`\n>\n> Only **visual** styles are safe to set on `OnboardProvider` and `OnboardItem`: `padding`, `paddingTop`, `paddingBottom`, `paddingLeft`, `paddingRight`, `paddingHorizontal`, `paddingVertical`, `backgroundColor`, `borderRadius`, `gap`, `alignItems`, `justifyContent`, `flexDirection`, `flexWrap`\n\n## Available Localization Keys\n\nUse ONLY the keys listed below for localization attributes (`labelKey`, `textLocalizationKey`, etc.). Do NOT invent new keys or use keys not in this list.\n\n```\nbase.builder.paywall.period.monthly\nbase.builder.paywall.period.annual\nbase.builder.paywall.period.weekly\nbase.builder.paywall.period.daily\nbase.builder.paywall.period.monthlyPromo\nbase.builder.paywall.period.annualPromo\nbase.builder.paywall.pricing.default.text\nbase.builder.paywall.pricing.freeTrial.text\nbase.builder.paywall.pricing.regular.text\nbase.builder.paywall.promo.default.text\nbase.builder.paywall.promo.freeTrial.text\nbase.builder.paywall.promo.regular.text\nbase.builder.paywall.button.subscribe\nbase.builder.paywall.button.subscribe-free\nbase.onboard.title.one-page\nbase.onboard.title.two-page\nbase.onboard.title.three-page\nbase.onboard.title.four-page\nbase.onboard.title.five-page\nbase.onboard.title.six-page\nbase.onboard.title.one-page2\nbase.onboard.title.two-page2\nbase.onboard.title.three-page2\nbase.onboard.title.four-page2\nbase.onboard.subtitle.one-page\nbase.onboard.subtitle.two-page\nbase.onboard.subtitle.three-page\nbase.onboard.subtitle.four-page\nbase.onboard.subtitle.five-page\nbase.onboard.subtitle.six-page\nbase.onboard.subtitle.one-page2\nbase.onboard.subtitle.two-page2\nbase.onboard.subtitle.three-page2\nbase.onboard.subtitle.four-page2\nbase.onboard.next.one-page\nbase.onboard.next.two-page\nbase.onboard.next.three-page\nbase.onboard.next.five-page\nbase.onboard.skip.one-page\nbase.onboard.skip.two-page\nbase.onboard.skip.three-page\nbase.onboard.skip.five-page\nbase.onboard.allow.four-page\nbase.onboard.footer.description\nbase.onboard.btnPrivacy\nbase.onboard.btnTerms\nbase.builder.paywall.footer.description\nbase.builder.paywall.btnPrivacy\nbase.builder.paywall.btnTerms\nview.terms.header.title\nview.terms.accept.button\nview.terms.checkbox.label\nview.terms.error.must_accept\nform.error.validation_required\n```\n\n## Default Colors\n\nReference color tokens already defined in the project. Prefer these over hard-coded hex values.\n\n```\n STATIC_COLORS.BLACK: "#000"\n STATIC_COLORS.WHITE: "#FFFFFF"\n STATIC_COLORS.TRANSPARENT: "#ffffff00"\n STATIC_COLORS.ONBOARD_DOT_INACTIVE: "#E4E5E7"\n STATIC_COLORS.ONBOARD_DOT_ACTIVE: "#007AFF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_BACKGROUND: "#0066FF"\n STATIC_COLORS.ONBOARD_BUTTON_PRIMARY_TEXT: "#FFFFFF"\n STATIC_COLORS.ONBOARD_LINK_COLOR: "#1778F2"\n STATIC_COLORS.ONBOARD_SEPARATOR_COLOR: "#44454D"\n STATIC_COLORS.RADIO_BUTTON_COLOR: "#A6A6A6"\n THEME_COLORS.TEXT (light): "#161827"\n THEME_COLORS.BACKGROUND (light): "#F4F5FF"\n THEME_COLORS.ICON (light): "#0450E2"\n THEME_COLORS.LINE (light): "#E9EBF9"\n THEME_COLORS.ONBOARD_TITLE (light): "#161827"\n THEME_COLORS.ONBOARD_SUBTITLE (light): "#44454D"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (light): "#81838F"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (light): "#81838F"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (light): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (light): "#B91C1C"\n THEME_COLORS.TEXT (dark): "#E9EBF9"\n THEME_COLORS.BACKGROUND (dark): "#080A17"\n THEME_COLORS.ICON (dark): "#0450E2"\n THEME_COLORS.LINE (dark): "#161827"\n THEME_COLORS.ONBOARD_TITLE (dark): "#FDFDFD"\n THEME_COLORS.ONBOARD_SUBTITLE (dark): "#C7C7C7"\n THEME_COLORS.ONBOARD_BUTTON_SECONDARY_TEXT (dark): "#A9AAAC"\n THEME_COLORS.ONBOARD_FOOTER_TEXT (dark): "#A2A4B1"\n THEME_COLORS.CHECKBOX_ACTIVE_COLOR (dark): "#0066FF"\n THEME_COLORS.FORM_ERROR_TEXT_COLOR (dark): "#B91C1C"\n```\n\n## Default Localization (en)\n\n```\n{\n "base.builder.paywall.period.monthly": "per month",\n "base.builder.paywall.period.annual": "per year",\n "base.builder.paywall.period.weekly": "per week",\n "base.builder.paywall.period.daily": "per day",\n "base.builder.paywall.period.monthlyPromo": "per month",\n "base.builder.paywall.period.annualPromo": "per year",\n "base.builder.paywall.pricing.default.text": "@promoPrice for the first @promoPeriod, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial, then @localizedPrice @localizedPeriod",\n "base.builder.paywall.pricing.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.promo.default.text": "Save @discountPercentage%!",\n "base.builder.paywall.promo.freeTrial.text": "@trialPeriod-@trialPeriodUnit free trial",\n "base.builder.paywall.promo.regular.text": "@localizedPrice @localizedPeriod",\n "base.builder.paywall.button.subscribe": "Subscribe",\n "base.builder.paywall.button.subscribe-free": "Subscribe with Free Trial",\n "base.onboard.title.one-page": "Secure your connection",\n "base.onboard.title.two-page": "Access content worldwide",\n "base.onboard.title.three-page": "Fast and reliable",\n "base.onboard.title.four-page": "Stay notified and safe",\n "base.onboard.title.five-page": "Enhance your experience",\n "base.onboard.title.six-page": "You are all set!",\n "base.onboard.title.one-page2": "Secure your connection",\n "base.onboard.title.two-page2": "Access content worldwide",\n "base.onboard.title.three-page2": "Fast and reliable",\n "base.onboard.title.four-page2": "Stay notified and safe",\n "base.onboard.subtitle.one-page": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page": "Enable notifications for connection status and security tips.",\n "base.onboard.subtitle.five-page": "Get the most out of our app with premium features.",\n "base.onboard.subtitle.six-page": "Enjoy secure and fast browsing.",\n "base.onboard.subtitle.one-page2": "Encrypt your traffic and protect your privacy on public Wi\\u2011Fi.",\n "base.onboard.subtitle.two-page2": "Connect to high\\u2011speed servers in many countries with one tap.",\n "base.onboard.subtitle.three-page2": "Auto\\u2011connect to the best server for speed and stability.",\n "base.onboard.subtitle.four-page2": "Enable notifications for connection status and security tips.",\n "base.onboard.next.one-page": "Next",\n "base.onboard.next.two-page": "Next",\n "base.onboard.next.three-page": "Next",\n "base.onboard.next.five-page": "Next",\n "base.onboard.skip.one-page": "Skip",\n "base.onboard.skip.two-page": "Skip",\n "base.onboard.skip.three-page": "Skip",\n "base.onboard.skip.five-page": "Skip",\n "base.onboard.allow.four-page": "Allow",\n "base.onboard.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.onboard.btnPrivacy": "Privacy Policy",\n "base.onboard.btnTerms": "Terms of Service",\n "base.builder.paywall.footer.description": "By clicking continue, you will be accepting the Terms of service and privacy policy",\n "base.builder.paywall.btnPrivacy": "Privacy Policy",\n "base.builder.paywall.btnTerms": "Terms of Service",\n "view.terms.header.title": "Terms & Privacy",\n "view.terms.accept.button": "Accept",\n "view.terms.checkbox.label": "I accept the terms and privacy policy",\n "view.terms.error.must_accept": "You must accept to continue",\n "form.error.validation_required": "Please complete the required fields."\n}\n```\n\n## Reference Example\n\nA complete, valid paywall XML:\n\n```xml\n<Main isMain="true" useSafeAreaView="true" description="Ekranın ana kapsayıcısı. (#1)" title="Main" testID="Main-test-id-1">\n <StatusBarColor title="Status Bar Color" description="Status bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="StatusBarColor-test-id-1" />\n <NavigationBarColor title="Navigation Bar Color" description="Navigation bar background color." styles=\'{"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="NavigationBarColor-test-id-1" />\n <PaywallProvider scrollable="true" description="Paywall ana sağlayıcısı. (#1)" title="Main Paywall" styles=\'{"flexDirection":"column","alignItems":"stretch","justifyContent":"flex-start","position":"relative","backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="PaywallProvider-test-id-1">\n <PaywallBackground src="https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&amp;fit=crop&amp;w=1200&amp;q=80" resizeMode="cover" description="Paywall arka planı. (#1)" title="Paywall Background" testID="PaywallBackground-test-id-1" />\n <View styles=\'{"paddingTop":56,"paddingHorizontal":16,"paddingBottom":16,"gap":12,"flex":1}\' testID="View-test-id-1">\n <PaywallCloseButton styles=\'{"width":32,"height":32,"borderRadius":16,"backgroundColor":"STATIC_COLORS.WHITE","color":"STATIC_COLORS.BLACK","zIndex":10,"alignItems":"center","justifyContent":"center"}\' testID="PaywallCloseButton-test-id-1" />\n <View description="Düzen ve yerleşim konteyneri. (#2)" title="Benefits" styles=\'{"flexDirection":"column","gap":0,"marginTop":"4%"}\' testID="View-test-id-2">\n <View description="Düzen ve yerleşim konteyneri. (#3)" title="Benefit #1" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-3">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#1)" title="BIcon 1" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-1" />\n <Text description="Metin öğesi. (#1)" title="text 1" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-1">\n @benefit1 — Unlimited access\n </Text>\n </View>\n <View description="Düzen ve yerleşim konteyneri. (#4)" title="Benefit #2" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-4">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#2)" title="BIcon 2" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-2" />\n <Text description="Metin öğesi. (#2)" title="text 2" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-2">\n @benefit2 — 7-day free trial\n </Text>\n </View>\n <View description="Düzen ve yerleşim konteyneri. (#5)" title="Benefit #3" styles=\'{"flexDirection":"row","alignItems":"center","gap":8,"paddingVertical":8,"paddingHorizontal":12}\' testID="View-test-id-5">\n <BIcon iconType="check" strokeWidth="3" description="İkon öğesi. (#3)" title="BIcon 3" styles=\'{"color":"THEME_COLORS.ICON","fontSize":"16","flex":0}\' testID="BIcon-test-id-3" />\n <Text description="Metin öğesi. (#3)" title="text 3" styles=\'{"flex":1,"color":"STATIC_COLORS.WHITE","fontWeight":"700"}\' testID="Text-test-id-3">\n @benefit3 — Cancel anytime\n </Text>\n </View>\n </View>\n <PaywallOptions description="Abonelik seçenekleri alanı. (#1)" title="Option(s)" styles=\'{"borderRadius":12,"backgroundColor":"THEME_COLORS.BACKGROUND"}\' testID="PaywallOptions-test-id-1">\n <RadioButton description="Seçim satırı öğesi. (#1)" title="Product Radio(s)" styles=\'{"flex":1}\' testID="RadioButton-test-id-1" />\n <Text description="Metin öğesi. (#4)" title="Product Desc(s)" styles=\'{"flex":6}\' testID="Text-test-id-4">\n @productDescription\n </Text>\n <View title="Price Column" styles=\'{"flexDirection":"column","flex":2,"alignItems":"flex-end"}\' testID="View-test-id-6">\n <PriceTag title="Promo Price" styles=\'{"textAlign":"right","fontWeight":"700"}\' testID="PriceTag-test-id-1">\n @localizedCalculatedPrice\n </PriceTag>\n <PriceTag title="Original Price" hideIfItsNotDiscount="true" styles=\'{"textAlign":"right","textDecorationLine":"line-through","fontSize":"12@fs","fontWeight":"400","color":"#999999"}\' testID="PriceTag-test-id-2">\n @localizedPrice\n </PriceTag>\n </View>\n <BIcon iconType="chevron-right" size="16" description="İkon öğesi. (#4)" title="Product BIcon(s)" styles=\'{"marginRight":4,"flex":0,"width":32,"color":"STATIC_COLORS.BLACK"}\' testID="BIcon-test-id-4" />\n </PaywallOptions>\n <View description="Subscription butonu kapsayıcısı. (#1)" title="Subs Container" styles=\'{"flex":1,"flexDirection":"column","justifyContent":"flex-end","alignItems":"stretch","gap":8,"paddingBottom":"50px"}\' testID="View-test-id-7">\n <Pricing description="Pricing breakdown for promo/trial." title="Pricing Detail" testID="Pricing-test-id-1">\n @baseLocalizedPricingText\n </Pricing>\n <Text description="Trial detayı." title="Trial Full" styles=\'{"textAlign":"center","fontSize":12,"color":"rgba(255,255,255,0.6)"}\' testID="Text-test-id-5">\n @trialPeriod days free, then @price/@period\n </Text>\n <PaywallSubscribeButton description="Abonelik onay butonu. (#1)" title="Subscribe" testID="PaywallSubscribeButton-test-id-1">\n @subscribe\n </PaywallSubscribeButton>\n <Promo description="Discount badge / promo text." title="Promo Badge" testID="Promo-test-id-1">\n @baseLocalizedPromoText\n </Promo>\n <PaywallFooter textLocalizationKey="base.builder.paywall.footer.description" linkedWordFirstLocalizationKey="base.builder.paywall.btnPrivacy" linkedWordFirstColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordFirstPage="privacy" linkedWordSecondLocalizationKey="base.builder.paywall.btnTerms" linkedWordSecondColor="STATIC_COLORS.ONBOARD_LINK_COLOR" linkedWordSecondPage="terms" styles=\'{"gap":8,"color":"THEME_COLORS.ONBOARD_FOOTER_TEXT"}\' testID="PaywallFooter-test-id-1" />\n </View>\n </View>\n </PaywallProvider>\n</Main>\n```\n\n## Task\n\nGenerate a node tree XML for the user\'s request below. Output ONLY raw XML — no markdown fences, no explanation.\n';function PromptManagerModal({data:e,setData:t,onClose:i}){const[r,n]=React.useState("xml-editor");return jsxRuntime.jsxs(Modal,{onClose:i,ariaLabelledBy:"prompt-manager-modal-title",className:"modal--large modal--scrollable",contentClassName:"prompt-manager-modal__content",children:[jsxRuntime.jsxs("div",{className:"modal__header prompt-manager-modal__header",children:[jsxRuntime.jsx("h3",{id:"prompt-manager-modal-title",className:"modal__title",children:"Prompt Manager"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:i,children:"Close"})]}),jsxRuntime.jsxs("div",{className:"prompt-manager-modal__tabs",children:[jsxRuntime.jsx("button",{type:"button",className:"prompt-manager-modal__tab"+("xml-editor"===r?" is-active":""),onClick:()=>n("xml-editor"),children:"XML Editor"}),jsxRuntime.jsx("button",{type:"button",className:"prompt-manager-modal__tab"+("prompt-schema"===r?" is-active":""),onClick:()=>n("prompt-schema"),children:"Prompt Şeması"})]}),jsxRuntime.jsxs("div",{className:"prompt-manager-modal__body",children:["xml-editor"===r&&jsxRuntime.jsx(XmlEditorTab,{data:e,setData:t}),"prompt-schema"===r&&jsxRuntime.jsx(PromptSchemaTab,{})]})]})}function XmlEditorTab({data:e,setData:t}){const i=useRenderStore(e=>e.setCurrent),r=React.useMemo(()=>{try{return nodeToXml(e)}catch{return""}},[e]),[n,o]=React.useState(r),[a,s]=React.useState(null),[l,c]=React.useState(null),[d,p]=React.useState(!1);React.useEffect(()=>{o(r),s(null),c(null),p(!1)},[r]);return jsxRuntime.jsxs("div",{className:"prompt-manager-modal__editor-wrap",children:[jsxRuntime.jsxs("div",{className:"prompt-manager-modal__toolbar",children:[jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.75},children:"node.xml"}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(n)}catch{}},children:"Copy"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{try{const e=xmlToNode(n);s(null),c(null),p(!1);try{const r=analyseAndProccess(e);t(r),i(r),p(!0)}catch(e){c(e instanceof Error?e.message:"Failed to apply XML")}}catch(e){s(e instanceof Error?e.message:"Invalid XML")}},children:"Apply"})]})]}),jsxRuntime.jsx("textarea",{className:"prompt-manager-modal__editor",value:n,onChange:e=>{o(e.target.value),c(null),p(!1)},spellCheck:!1}),a?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Invalid XML: ",a]}):l?jsxRuntime.jsxs("div",{style:{fontSize:12,color:"#d12f2f"},children:["Could not apply: ",l]}):d?jsxRuntime.jsx("div",{style:{fontSize:12,color:"#2e7d32"},children:"✓ Applied successfully"}):jsxRuntime.jsx("div",{style:{fontSize:12,opacity:.7},children:"Edit XML and press Apply to update the node tree."})]})}function PromptSchemaTab(){const[e,t]=React.useState("onboard"),[i,r]=React.useState(!1),n="onboard"===e?onboardPromptScheme:paywallPromptScheme;return jsxRuntime.jsxs("div",{className:"prompt-manager-modal__editor-wrap",children:[jsxRuntime.jsxs("div",{className:"prompt-manager-modal__toolbar",children:[jsxRuntime.jsxs("div",{style:{display:"flex",gap:4},children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t("onboard"),r(!1)},style:"onboard"===e?{background:"#1565c0",color:"#fff",borderColor:"#1565c0"}:void 0,children:"Onboard"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{t("paywall"),r(!1)},style:"paywall"===e?{background:"#6a1b9a",color:"#fff",borderColor:"#6a1b9a"}:void 0,children:"Paywall"})]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{try{await navigator.clipboard.writeText(n),r(!0),setTimeout(()=>r(!1),1500)}catch{}},children:i?"✓ Copied":"Copy"})]}),jsxRuntime.jsx("textarea",{className:"prompt-manager-modal__editor",value:n,readOnly:!0,spellCheck:!1}),jsxRuntime.jsxs("div",{style:{fontSize:12,opacity:.7},children:[n.length.toLocaleString()," chars · read-only (auto-generated)"]})]})}function IconTypePickerField({value:e,onChange:t}){const[i,r]=React.useState(!1),n="string"==typeof e?e:void 0;return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>r(!0),className:"attributes-editor__picker-button",children:[jsxRuntime.jsxs("span",{className:"attributes-editor__picker-button-left",children:[n?jsxRuntime.jsx(Icon,{iconType:n,size:18}):null,jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-label",children:n??"Select icon"})]}),jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-open",children:"Open"})]}),i?jsxRuntime.jsx(IconPickerModal,{value:n,onSelect:e=>{t(e),r(!1)},onClose:()=>r(!1),onClear:()=>{t(void 0),r(!1)}}):null]})}function FontFamilyPickerField({name:e,value:t,onChange:i,fonts:r,loadedFonts:n,markFontLoaded:o,addError:a}){const[s,l]=React.useState(!1),[c,d]=React.useState(!1),[p,g]=React.useState(null),u="string"==typeof t&&t.trim().length>0?t.trim():void 0,m=Array.isArray(r)?r:[],h=Array.isArray(n)?n:[],f=React.useMemo(()=>`${m.length} fonts`,[m.length]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("button",{type:"button",onClick:()=>{g(null),l(!0)},className:"attributes-editor__picker-button",children:[jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-label attributes-editor__picker-button-label--fill",children:u??"Select font"}),jsxRuntime.jsx("span",{className:"attributes-editor__picker-button-open",children:"Open"})]}),s?jsxRuntime.jsx(Modal,{ariaLabelledBy:"font-family-picker-title",onClose:()=>{c||l(!1)},closeOnOverlayClick:!c,closeOnEsc:!c,children:jsxRuntime.jsxs("div",{className:"attributes-editor__font-modal",children:[jsxRuntime.jsxs("div",{className:"attributes-editor__font-modal-header",children:[jsxRuntime.jsx("p",{id:"font-family-picker-title",className:"attributes-editor__font-modal-title",children:"Select Font"}),jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-spacer"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>{i(void 0),g(null),l(!1)},disabled:c,children:"Clear"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>l(!1),disabled:c,children:"Close"})]}),c?jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-note",children:"Loading font…"}):null,p?jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-error",children:p}):null,jsxRuntime.jsx("div",{className:"attributes-editor__font-modal-note",children:f}),jsxRuntime.jsx("div",{className:"attributes-editor__font-grid",children:m.map(e=>{const t=e?.name;if("string"!=typeof t||!t.trim())return null;const r=t.trim(),n=u===r,s=h.includes(r),l=["attributes-editor__font-option",n?"attributes-editor__font-option--active":""].filter(Boolean).join(" ");return jsxRuntime.jsxs("button",{type:"button",disabled:c,onClick:async()=>{if(g(null),i(r),!s){d(!0);try{fontsDebug.info("AttributesEditor: loadFontFamily start",{familyName:r}),await loadFontFamily(m,r,{forceFetch:!0}),o(r),fontsDebug.info("AttributesEditor: loadFontFamily success",{familyName:r})}catch(e){const t=e instanceof Error?e.message:String(e);g(`Failed to load "${r}": ${t}`),a(`Failed to load font "${r}": ${t}`)}finally{d(!1)}}},className:l,"aria-label":`Select font ${r}`,children:[jsxRuntime.jsx("span",{className:"attributes-editor__font-option-name",title:r,children:r}),jsxRuntime.jsx("span",{className:"attributes-editor__font-option-status",children:s?"Loaded":"Not loaded"})]},r)})})]})}):null]})}const cache={},rk=(e,t,i)=>`${e}|${t??""}|${i}`,lk=(e,t)=>`lang|${e}|${t??""}`;function FallbackLocalizationField({value:e,onChange:t}){const i=useRenderStore(e=>e.localizationApiConfig),r=useRenderStore(e=>e.languageColumns),[n,o]=React.useState(!1),[a,s]=React.useState(""),[l,c]=React.useState("ios"),[d,p]=React.useState([]),[g,u]=React.useState(!1),[m,h]=React.useState([]),[f,y]=React.useState(!1),b=React.useRef(0),[C,x]=React.useState(!1),[v,w]=React.useState(""),[k,T]=React.useState(""),[_,R]=React.useState(""),[O,I]=React.useState(!1),[M,j]=React.useState(null),P=!!i?.forgeUrl&&!!i?.forgeToken,E=m.length>0?m:r??[],L=React.useCallback(()=>i?{"Content-Type":"application/json",Accept:"application/json","X-Authorization":i.forgeToken}:{},[i]),z=React.useCallback(async(e=!1)=>{if(!i||!P)return;const t=rk(i.forgeUrl,i.forgeAppId,l);if(!e&&cache[t]?.records?.length)return p(cache[t].records),void y(!0);const r=++b.current;u(!0);try{const e=[];let n=1,o=!0;for(;o;){const t=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization/${l}`,a=new URLSearchParams({per_page:"1000",page:String(n)});i.forgeAppId&&a.append("app_id",String(i.forgeAppId));const s=await fetch(`${t}?${a}`,{headers:L()});if(!s.ok||r!==b.current)break;const c=await s.json();e.push(...c.data??[]);const d=c.pagination;o=d&&d.current_page<d.last_page,n++}r===b.current&&(p(e),y(!0),cache[t]={...cache[t],records:e})}catch{}finally{r===b.current&&u(!1)}},[i,P,l,L]),D=React.useCallback(async()=>{if(!i||!P)return;const e=lk(i.forgeUrl,i.forgeAppId);if(cache[e]?.languages?.length)h(cache[e].languages);else try{const t=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization-languages`,r=new URLSearchParams;i.forgeAppId&&r.append("app_id",String(i.forgeAppId));const n=await fetch(`${t}?${r}`,{headers:L()});if(!n.ok)return;const o=await n.json(),a=Array.isArray(o)?o:[];h(a),cache[e]={...cache[e],languages:a,records:cache[e]?.records??[]}}catch{}},[i,P,L]);React.useEffect(()=>{P&&(D(),z())},[P,z,D]);const B=React.useMemo(()=>{if(!f)return[];const e=a.trim().toLowerCase();return e?d.filter(t=>!!t.key.toLowerCase().includes(e)||Object.values(t.translations).some(t=>t?.value&&t.value.toLowerCase().includes(e))):d},[a,d,f]),A=React.useMemo(()=>e?d.find(t=>t.key===e)??null:null,[e,d]),V=(e,t)=>e&&e.translations[t.toUpperCase()]?.value?.trim()||"",N=E[0]??{code:"EN",title:"English"},F=E[1]??{code:"TR",title:"Türkçe"},H=V(A,N.code),W=V(A,F.code),$=e=>{t(e.key),o(!1)},U=()=>{i&&(delete cache[rk(i.forgeUrl,i.forgeAppId,l)],delete cache[lk(i.forgeUrl,i.forgeAppId)]),y(!1),p([]),h([]),D(),z(!0)};return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[e?jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>P&&o(!0),onKeyDown:e=>"Enter"===e.key&&P&&o(!0),style:S.compactCard,children:[jsxRuntime.jsxs("div",{style:S.compactHeader,children:[jsxRuntime.jsx("span",{style:S.compactLabel,children:"Text"}),jsxRuntime.jsx("span",{style:S.badgeSmall,children:l.toUpperCase()}),jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:e=>{e.stopPropagation(),t("")},onKeyDown:e=>{"Enter"===e.key&&(e.stopPropagation(),t(""))},title:"Temizle",style:S.clearBtn,children:"✕"})]}),jsxRuntime.jsxs("div",{style:S.keyRow,children:[jsxRuntime.jsx("span",{style:S.keyText,children:e}),jsxRuntime.jsx("span",{style:{fontSize:12,color:"#555"},children:"🔍"})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:N.title||N.code}),jsxRuntime.jsx("span",{style:H?S.transVal:S.transMissing,children:H||"Eksik"})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:F.title||F.code}),jsxRuntime.jsx("span",{style:W?S.transVal:S.transMissing,children:W||"Eksik"})]})]}):jsxRuntime.jsxs("div",{style:S.emptyWrap,children:[jsxRuntime.jsx("span",{style:S.compactLabel,children:"Text"}),jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>P&&o(!0),onKeyDown:e=>"Enter"===e.key&&P&&o(!0),style:S.emptyBtn,children:[jsxRuntime.jsx("span",{style:{opacity:.5},children:"Localization anahtarı seçilmedi"}),P&&jsxRuntime.jsx("span",{children:"🔍"})]}),!P&&jsxRuntime.jsx("div",{style:S.configWarn,children:"Localization API yapılandırılmadı"})]}),n&&jsxRuntime.jsx("div",{onClick:()=>o(!1),style:S.overlay,children:jsxRuntime.jsxs("div",{onClick:e=>e.stopPropagation(),style:S.modal,children:[jsxRuntime.jsxs("div",{style:S.modalHeader,children:[jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("div",{style:{fontWeight:600,fontSize:15},children:"Localization Anahtarı Seç"}),jsxRuntime.jsx("div",{style:{fontSize:12,color:"#888",marginTop:2},children:"Arama, seçim veya yeni anahtar oluşturma."})]}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",flexShrink:0},children:[jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:U,title:"Yenile",style:S.refreshBtn,children:"↻"}),jsxRuntime.jsx("span",{role:"button",tabIndex:0,onClick:()=>o(!1),style:S.closeBtn,children:"✕"})]})]}),jsxRuntime.jsx("div",{style:S.platformBar,children:["ios","android"].map(e=>jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:()=>(e=>{e!==l&&(c(e),y(!1),p([]))})(e),style:{...S.pBtn,...l===e?S.pBtnActive:{}},children:"ios"===e?"iOS":"Android"},e))}),jsxRuntime.jsxs("div",{style:{padding:"10px 16px 8px",display:"flex",gap:8},children:[jsxRuntime.jsx("input",{autoFocus:!0,type:"text",value:a,onChange:e=>s(e.target.value),placeholder:"Anahtar veya çeviri ara…",style:{...S.searchInput,flex:1}}),jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:()=>x(!C),style:S.createToggle,children:C?"← Ara":"+ Yeni"})]}),C?jsxRuntime.jsxs("div",{style:S.createForm,children:[jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"Anahtar"}),jsxRuntime.jsx("input",{type:"text",value:v,onChange:e=>w(e.target.value),placeholder:"örn: faq.category.general",style:S.searchInput})]}),jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"English"}),jsxRuntime.jsx("input",{type:"text",value:k,onChange:e=>T(e.target.value),placeholder:"English translation",style:S.searchInput})]}),jsxRuntime.jsxs("div",{style:S.createField,children:[jsxRuntime.jsx("label",{style:S.createLabel,children:"Türkçe"}),jsxRuntime.jsx("input",{type:"text",value:_,onChange:e=>R(e.target.value),placeholder:"Türkçe çeviri",style:S.searchInput})]}),M&&jsxRuntime.jsx("div",{style:S.errorMsg,children:M}),jsxRuntime.jsx("div",{role:"button",tabIndex:0,onClick:async()=>{if(i&&P&&v.trim()){I(!0),j(null);try{const e={};k.trim()&&(e.EN={value:k.trim()}),_.trim()&&(e.TR={value:_.trim()});const r={key:v.trim(),translations:e},n=`${i.forgeUrl.replace(/\/$/,"")}/api/manage/localization/${l}`,a=new URLSearchParams;i.forgeAppId&&a.append("app_id",String(i.forgeAppId));const s=await fetch(`${n}?${a}`,{method:"POST",headers:L(),body:JSON.stringify(r)});if(!s.ok){const e=await s.json().catch(()=>({}));throw new Error(e.message||`HTTP ${s.status}`)}t(v.trim()),x(!1),w(""),T(""),R(""),U(),o(!1)}catch(e){j(e instanceof Error?e.message:"Oluşturulamadı")}finally{I(!1)}}},style:{...S.saveBtn,opacity:O||!v.trim()?.5:1,pointerEvents:O||!v.trim()?"none":"auto"},children:O?"Kaydediliyor…":"Oluştur ve Seç"})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[f&&jsxRuntime.jsxs("div",{style:S.infoBar,children:[B.length," / ",d.length," anahtar"]}),jsxRuntime.jsxs("div",{style:S.resultsList,children:[g&&jsxRuntime.jsx("div",{style:S.emptyMsg,children:"Yükleniyor…"}),!g&&f&&0===B.length&&jsxRuntime.jsx("div",{style:S.emptyMsg,children:"Kayıt bulunamadı."}),B.map(t=>{const i=t.key===e,r=(n=t,E.filter(e=>{const t=n.translations[e.code];return!t?.value||!t.value.trim()}).length);var n;const o=V(t,N.code);return jsxRuntime.jsxs("div",{role:"button",tabIndex:0,onClick:()=>$(t),onKeyDown:e=>"Enter"===e.key&&$(t),style:{...S.resultCard,...i?S.resultCardActive:{}},onMouseEnter:e=>{i||(e.currentTarget.style.background="#272730")},onMouseLeave:e=>{i||(e.currentTarget.style.background=i?"rgba(99,102,241,0.12)":"transparent")},children:[jsxRuntime.jsxs("div",{style:S.resultKeyRow,children:[jsxRuntime.jsx("span",{style:S.resultKey,children:t.key}),jsxRuntime.jsxs("div",{style:{display:"flex",gap:5,flexShrink:0,alignItems:"center"},children:[jsxRuntime.jsx("span",{style:S.badgeSmall,children:l.toUpperCase()}),r>0&&jsxRuntime.jsxs("span",{style:S.missingBadge,children:["Eksik ",r]}),i&&jsxRuntime.jsx("span",{style:S.selectedBadge,children:"✔"})]})]}),jsxRuntime.jsxs("div",{style:S.transRow,children:[jsxRuntime.jsx("span",{style:S.langBadge,children:N.title||N.code}),jsxRuntime.jsx("span",{style:o?S.transVal:S.transMissing,children:o?o.length>100?o.slice(0,100)+"…":o:"Eksik"})]})]},t.key)})]})]})]})})]})}const S={compactCard:{display:"block",width:"100%",textAlign:"left",background:"transparent",border:"1px solid hsl(0 0% 30%)",borderRadius:8,padding:"8px 10px",cursor:"pointer"},compactHeader:{display:"flex",alignItems:"center",gap:6,marginBottom:4},compactLabel:{fontSize:10,fontWeight:600,textTransform:"uppercase",color:"#888",letterSpacing:"0.05em"},clearBtn:{cursor:"pointer",fontSize:12,color:"#666",padding:"0 2px",marginLeft:"auto",userSelect:"none"},keyRow:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,marginBottom:4},keyText:{fontSize:12,color:"#ccc",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},transRow:{display:"flex",alignItems:"center",gap:6,marginTop:3},transVal:{fontSize:11,color:"#bbb",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",flex:1},transMissing:{fontSize:11,color:"#ef4444",flex:1},emptyWrap:{display:"flex",flexDirection:"column",gap:4},emptyBtn:{display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:"7px 10px",border:"1px solid hsl(0 0% 30%)",borderRadius:6,background:"transparent",color:"#ccc",fontSize:12,cursor:"pointer",textAlign:"left"},configWarn:{fontSize:10,color:"#ef4444",marginTop:2},overlay:{position:"fixed",inset:0,background:"rgba(0,0,0,0.6)",zIndex:9999,display:"flex",alignItems:"center",justifyContent:"center"},modal:{background:"#1a1a22",borderRadius:12,width:560,maxHeight:"80vh",display:"flex",flexDirection:"column",boxShadow:"0 16px 48px rgba(0,0,0,0.6)",color:"#e0e0e0",border:"1px solid #2a2a35",overflow:"hidden"},modalHeader:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",padding:"16px 18px",borderBottom:"1px solid #2a2a35",gap:12},closeBtn:{cursor:"pointer",fontSize:18,color:"#999",padding:4,userSelect:"none"},refreshBtn:{cursor:"pointer",fontSize:18,color:"#6366f1",padding:4,userSelect:"none"},platformBar:{display:"flex",gap:8,padding:"10px 16px 8px",borderBottom:"1px solid #2a2a35"},pBtn:{padding:"5px 14px",borderRadius:6,border:"1px solid #3a3a45",background:"transparent",color:"#999",fontSize:12,fontWeight:600,cursor:"pointer",userSelect:"none"},pBtnActive:{background:"#6366f1",borderColor:"#6366f1",color:"#fff"},searchInput:{width:"100%",padding:"8px 12px",border:"1px solid #3a3a45",borderRadius:6,background:"#22222a",color:"#e0e0e0",fontSize:13,outline:"none",boxSizing:"border-box"},createToggle:{padding:"6px 14px",borderRadius:6,border:"1px solid #6366f1",background:"transparent",color:"#6366f1",fontSize:12,fontWeight:600,cursor:"pointer",whiteSpace:"nowrap",userSelect:"none"},infoBar:{padding:"2px 18px 6px",fontSize:11,color:"#555",textAlign:"right"},resultsList:{overflowY:"auto",flex:1,padding:"4px 10px 10px"},emptyMsg:{padding:28,textAlign:"center",color:"#666",fontSize:13},resultCard:{display:"block",width:"100%",textAlign:"left",borderRadius:8,padding:"10px 12px",cursor:"pointer",marginBottom:4,border:"1px solid #2a2a35",background:"transparent"},resultCardActive:{background:"rgba(99,102,241,0.12)",borderColor:"#6366f1"},resultKeyRow:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},resultKey:{fontWeight:600,fontSize:13,color:"#e0e0e0",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",flex:1},langBadge:{display:"inline-block",background:"#2a2a35",border:"1px solid #3a3a45",borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,color:"#aaa",flexShrink:0},badgeSmall:{display:"inline-block",background:"#2a2a35",border:"1px solid #3a3a45",borderRadius:4,padding:"1px 5px",fontSize:9,fontWeight:600,color:"#888",textTransform:"uppercase"},missingBadge:{display:"inline-block",background:"rgba(239,68,68,0.15)",border:"1px solid rgba(239,68,68,0.3)",borderRadius:4,padding:"1px 6px",fontSize:10,fontWeight:600,color:"#ef4444"},selectedBadge:{fontSize:10,color:"#6366f1",fontWeight:600},createForm:{padding:"12px 16px",display:"flex",flexDirection:"column",gap:10},createField:{display:"flex",flexDirection:"column",gap:4},createLabel:{fontSize:11,fontWeight:600,color:"#888",textTransform:"uppercase"},errorMsg:{fontSize:12,color:"#ef4444",padding:"4px 0"},saveBtn:{padding:"8px 16px",borderRadius:6,background:"#6366f1",color:"#fff",fontSize:13,fontWeight:600,cursor:"pointer",textAlign:"center",userSelect:"none",border:"none",marginTop:4}};function getPreferredOrderedSizeEntries(e){const t=["width","height","minWidth","minHeight","maxWidth","maxHeight"];return[...e].sort((e,i)=>{const r=t.indexOf(e.name),n=t.indexOf(i.name),o=-1===r?Number.MAX_SAFE_INTEGER:r,a=-1===n?Number.MAX_SAFE_INTEGER:n;return o!==a?o-a:e.name.localeCompare(i.name)})}function getSpecialSectionTitle(e){const t=e.key,i=e.meta;return{title:i?.label&&i.label.trim().length>0?i.label:t.charAt(0).toUpperCase()+t.slice(1),description:i?.description}}function AttributesEditorView(e){const{isInvalidNode:t,componentTitle:i,componentDescription:r,mockableFeatureKeys:n,activeMockableFeature:o,setActiveMockableFeature:a,tabs:s,tabContentInfo:l,activeTab:c,setActiveTab:d,firstAvailableTab:p,activeEntries:g,activeSpecialSections:u,hasTitleField:m,hasDescriptionField:h,hasStringChildren:f,childrenValue:y,handleChildrenChange:b,attributeMeta:C,data:x,getAttributeValue:v,handleAttributeChange:S,projectColorsForPicker:w,layoutContext:k,viewAttributes:T,attributes:_,projectFonts:R,loadedFonts:O,markFontLoaded:I,addError:M}=e,j=jsxRuntime.jsxs("div",{className:"attributes-editor__component-meta",children:[jsxRuntime.jsx("p",{className:"attributes-editor__component-title",children:i}),r?jsxRuntime.jsx("p",{className:"attributes-editor__component-description",children:r}):null]}),P=v("title"),E=v("description"),L=!t&&(m||h)?jsxRuntime.jsxs("section",{className:"attributes-editor__top-fields",children:[m?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper",children:[jsxRuntime.jsx("label",{className:"attributes-editor__field-label",htmlFor:"title",children:"Title (max 20 characters for display purposes)"}),jsxRuntime.jsx("input",{id:"title",className:"input",type:"text",maxLength:20,value:"string"==typeof P?P:"",onChange:e=>S("title",e.target.value)})]}):null,h?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper",children:[jsxRuntime.jsx("label",{className:"attributes-editor__field-label",htmlFor:"description",children:"Description (for display purposes)"}),jsxRuntime.jsx("input",{id:"description",className:"input",type:"text",value:"string"==typeof E?E:"",onChange:e=>S("description",e.target.value)})]}):null]}):null,z=n.length>0?jsxRuntime.jsxs("section",{className:"attributes-editor__mockable",children:[jsxRuntime.jsx("p",{className:"attributes-editor__mockable-title",children:"Mockable"}),jsxRuntime.jsx("table",{className:"attributes-editor__mockable-table",children:jsxRuntime.jsx("tbody",{children:n.map(e=>jsxRuntime.jsxs("tr",{className:"attributes-editor__mockable-row",children:[jsxRuntime.jsx("td",{className:"attributes-editor__mockable-name",children:e}),jsxRuntime.jsx("td",{className:"attributes-editor__mockable-action",children:jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>a(e),children:e})})]},e))})})]}):null,D=jsxRuntime.jsx("div",{className:"attributes-editor__tabs",children:s.map(e=>{const t=e.id===c,i=l[e.id],r=i.baseCount+i.specialCount,n=0===r,o=["attributes-editor__tab-button",t?"attributes-editor__tab-button--active":""].filter(Boolean).join(" ");return jsxRuntime.jsxs("button",{type:"button",onClick:()=>!n&&d(e.id),disabled:n,className:o,children:[e.label,r>0?` (${r})`:""]},e.id)})}),B=useRenderStore(e=>e.renderStringChildrenField),A=f?jsxRuntime.jsxs("div",{className:"attributes-editor__field-wrapper attributes-editor__field-wrapper--children",children:[jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:"Text"}),B?jsxRuntime.jsx(B,{value:y,onChange:b}):jsxRuntime.jsx(FallbackLocalizationField,{value:y,onChange:b})]}):null,V=React.useMemo(()=>{const e=l[p];return(e?.baseCount??0)+(e?.specialCount??0)>0||f&&void 0!==y},[y,p,f,l]);return t?null:jsxRuntime.jsxs("div",{className:"attributes-editor",children:[j,L,z,D,A,u.map(function(e){if("size"===e.key){const{title:t,description:i}=getSpecialSectionTitle(e),r=getPreferredOrderedSizeEntries(e.entries);return jsxRuntime.jsxs("section",{className:"special-category-section",children:[jsxRuntime.jsx("div",{className:"special-category-section__header",children:jsxRuntime.jsx("p",{className:"special-category-section__title",children:t})}),i?jsxRuntime.jsx("p",{className:"special-category-section__description",children:i}):null,jsxRuntime.jsx("div",{className:"attributes-editor__size-grid",children:r.map(e=>{const t=C?.[e.name]?.label??e.name,i=C?.[e.name]?.description,r=toPreferredScale(C?.[e.name]?.preferedScale),n=v(e.name),o=isBooleanFieldType(e.type),a=["attributes-editor__field-wrapper",o?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" ");return jsxRuntime.jsx(FieldInfoTooltip,{description:i,children:jsxRuntime.jsxs("div",{className:`${a} attributes-editor__size-grid-item`,children:[o?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:t}),"iconType"===e.type?jsxRuntime.jsx(IconTypePickerField,{name:e.name,value:n,onChange:t=>S(e.name,t)}):"fontFamily"===e.type?jsxRuntime.jsx(FontFamilyPickerField,{name:e.name,value:n,onChange:t=>S(e.name,t),fonts:R,loadedFonts:O,markFontLoaded:I,addError:M}):jsxRuntime.jsx(Field,{name:e.name,type:e.type,value:n,onChange:t=>S(e.name,t),componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,label:o?t:void 0,preferredScale:r})]})},e.name)})})]},e.key)}return jsxRuntime.jsx(SpecialCategorySection,{category:e.key,entries:e.entries,attributeMeta:C,attributes:_,getAttributeValue:v,onAttributeChange:S,componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,meta:e.meta},e.key)}),g.map(function(e){const t=e.name,i=e.type,r=C?.[t]?.label??t,n=C?.[t]?.description,o=toPreferredScale(C?.[t]?.preferredScale??C?.[t]?.preferedScale),a=isBooleanFieldType(i),s=["attributes-editor__field-wrapper",a?"attributes-editor__field-wrapper--boolean":""].filter(Boolean).join(" "),l=v(t);return jsxRuntime.jsx(FieldInfoTooltip,{description:n,children:jsxRuntime.jsxs("div",{className:s,children:[a?null:jsxRuntime.jsx("p",{className:"attributes-editor__field-label",children:r}),"iconType"===i?jsxRuntime.jsx(IconTypePickerField,{name:t,value:l,onChange:e=>S(t,e)}):"fontFamily"===i?jsxRuntime.jsx(FontFamilyPickerField,{name:t,value:l,onChange:e=>S(t,e),fonts:R,loadedFonts:O,markFontLoaded:I,addError:M}):jsxRuntime.jsx(Field,{name:t,type:i,value:l,onChange:e=>S(t,e),componentType:x?.type,projectColors:w,layoutContext:k,viewAttributes:T,label:a?r:void 0,preferredScale:o})]})},t)}),V?null:jsxRuntime.jsx("div",{className:"attributes-editor__empty-state",children:"No editable attributes"}),o?jsxRuntime.jsx(MockableFeatureModal,{featureKey:o,onClose:()=>a(null)}):null]})}function isPlainObject$2(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function getStyleBagSourceAndValue(e){const t=e??{},i=t.styles;if(isPlainObject$2(i))return{source:"styles",styleBag:i};const r=t.style;return isPlainObject$2(r)?{source:"style",styleBag:r}:{source:"none",styleBag:void 0}}function isAttributeTypeSpec(e){return"string"==typeof e||Array.isArray(e)}function getNestedStyleSchema(e){const t=e.styles??e.style;if(!isPlainObject$2(t))return;const i={};for(const[e,r]of Object.entries(t))isAttributeTypeSpec(r)&&(i[e]=r);return Object.keys(i).length?i:void 0}function buildAttributesEditorEntries(e,t){const i=getNestedStyleSchema(e),r=Object.keys(t??{}),n=Object.keys(e).filter(e=>"style"!==e&&"styles"!==e),o=Object.keys(i??{}),a=new Set([...r,...n,...o]),s=Array.from(a).filter(e=>"style"!==e&&"styles"!==e),l=[];return s.forEach(t=>{const r=e[t],n=i?.[t],o=isAttributeTypeSpec(r)?r:n;o&&l.push({name:t,type:o})}),l}function isValidStyleBagValue(e){const t=e,i=t?.styles,r=t?.style;return!(null!=i&&!isPlainObject$2(i)||null!=r&&!isPlainObject$2(r))}function findLegacyFlatStyleKeys(e,t){return isPlainObject$2(e)?Object.keys(e).filter(e=>"style"!==e&&"styles"!==e&&t(e)):[]}function isPlainObject$1(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function useAttributesEditorModel({node:e,onChange:t,projectColors:i}){const r=!e||isNodeString(e),n=React.useMemo(()=>r?{type:"View",children:null,attributes:{}}:e,[r,e]),o=useNode(n),{fonts:a,loadedFonts:s,markFontLoaded:l,addError:c}=useRenderStore(e=>({fonts:e.fonts,loadedFonts:e.loadedFonts,markFontLoaded:e.markFontLoaded,addError:e.addError})),d=React.useMemo(()=>getAttributeSchema(o?.type)??{},[o?.type]),p=getAttributeMeta(o?.type),g=React.useMemo(()=>o?.attributes??{},[o?.attributes]),u=React.useMemo(()=>getStyleAttributeKeySet(),[]),m=React.useMemo(()=>getStyleBagSourceAndValue(g),[g]),h=m.styleBag,f=React.useCallback(e=>{const t=d.styles;return!(!isPlainObject$1(t)||!(e in t))||u.has(e)},[d,u]),y=React.useMemo(()=>findLegacyFlatStyleKeys(g,f),[g,f]),b=React.useMemo(()=>!isValidStyleBagValue(g),[g]);React.useEffect(()=>{const e="style"===m.source;(0!==y.length||b||e)&&logger.warn("AttributesEditor","Legacy/unmigrated attributes detected. This editor expects schemaVersion=2 (style nested under attributes.styles). Please run migrations.",{componentType:o?.type,nodeKey:n.key,legacyFlatStyleKeys:y,hasInvalidStyleBag:b,styleBagSource:m.source})},[n,o?.type,b,y,m.source]);const C=React.useCallback(e=>f(e)?h?.[e]:g?.[e],[g,f,h]),x=React.useMemo(()=>i,[i]),v=React.useMemo(()=>"View"===o?.type?g:void 0,[g,o?.type]),S=React.useMemo(()=>({flexDirection:h?.flexDirection,alignItems:h?.alignItems,justifyContent:h?.justifyContent}),[h?.flexDirection,h?.alignItems,h?.justifyContent]),w=React.useMemo(()=>o?.type?getPatternByType(o.type):void 0,[o?.type]),k=w?.meta,T=k?.label??o?.type??"Component",_=k?.description,R="title"===w?.pattern?.title,O="description"===w?.pattern?.description,I=React.useMemo(()=>buildAttributesEditorEntries(d,p).filter(({type:e})=>"string"!=typeof e||"never"!==e),[p,d]),M=React.useMemo(()=>k?.hideAllAttributes?I.filter(({name:e})=>{const t=p?.[e];return!0===t?.forceVisible||!0===t?.override}):I,[p,k?.hideAllAttributes,I]),j=React.useMemo(()=>{const e=k?.mockableFeatures;return e&&"object"==typeof e?Object.entries(e).filter(([,e])=>!0===e).map(([e])=>e).filter(e=>"string"==typeof e&&e.trim().length>0).sort((e,t)=>e.localeCompare(t)):[]},[k?.mockableFeatures]),[P,E]=React.useState(null),L=React.useMemo(()=>{const e={style:[],container:[],other:[]},t={},i=e=>p?.[e]?.sort??Number.MAX_SAFE_INTEGER,r=(e,t)=>{const r=i(e.name)-i(t.name);return 0!==r?r:e.name.localeCompare(t.name)};return M.forEach(({name:i,type:r})=>{const n=p?.[i],o=n?.specialCategory;if("string"==typeof o){const e=o.trim();if(e)return t[e]||(t[e]=[]),void t[e].push({name:i,type:r})}const a=n?.category;e["style"===a?"style":"container"===a?"container":"other"].push({name:i,type:r})}),Object.values(e).forEach(e=>e.sort(r)),Object.values(t).forEach(e=>e.sort(r)),{grouped:e,specialGroups:t}},[p,M]),{grouped:z,specialGroups:D}=L,B=React.useMemo(()=>{const e={style:[],container:[],other:[]},t=(e,t)=>{const i=(e.meta?.sort??Number.MAX_SAFE_INTEGER)-(t.meta?.sort??Number.MAX_SAFE_INTEGER);return 0!==i?i:e.key.localeCompare(t.key)};return Object.entries(D).forEach(([t,i])=>{if(!i.length)return;const r=k?.specialCategories?.[t];e["style"===r?.category?"style":"container"===r?.category?"container":"other"].push({key:t,entries:i,meta:r})}),Object.keys(e).forEach(i=>{e[i].sort(t)}),e},[k?.specialCategories,D]),A=React.useMemo(()=>[{id:"container",label:"Container",entries:z.container},{id:"style",label:"Styles",entries:z.style},{id:"other",label:"Others",entries:z.other}],[z]),V=React.useMemo(()=>{const e={style:{baseCount:0,specialCount:0},container:{baseCount:0,specialCount:0},other:{baseCount:0,specialCount:0}};return A.forEach(t=>{e[t.id].baseCount=t.entries.length}),Object.keys(B).forEach(t=>{e[t].specialCount=B[t].reduce((e,t)=>e+t.entries.length,0)}),e},[B,A]),N=React.useMemo(()=>A.find(e=>{const t=V[e.id];return t.baseCount+t.specialCount>0})?.id??"other",[V,A]),[F,H]=React.useState(N);React.useEffect(()=>{H(e=>{const t=V[e];return t&&t.baseCount+t.specialCount>0?e:N})},[N,V]);const W=A.find(e=>e.id===F)?.entries??A.find(e=>e.id===N)?.entries??[],$=B[F]??[],U=React.useCallback((e,i)=>{const r={...n?.attributes??{}??{}};if(f(e)){const t={...isPlainObject$1(r.styles)?r.styles:isPlainObject$1(r.style)?r.style:{},[e]:i};r.styles=t,delete r.style,e in r&&delete r[e]}else if(r[e]=i,isPlainObject$1(r.styles)&&e in r.styles){const t={...r.styles};delete t[e],r.styles=Object.keys(t).length?t:void 0}const o={...n,attributes:r};t(o)},[n,f,t]),G=React.useCallback(e=>{const i={...n,children:e};t(i)},[n,t]),K=!!w?.pattern&&"string"===w.pattern.children,Y="string"==typeof n.children?n.children:"";return{isInvalidNode:r,baseData:n,data:o,projectFonts:a,loadedFonts:s,markFontLoaded:l,addError:c,schema:d,attributeMeta:p,componentTitle:T,componentDescription:_,patternForType:w,componentMeta:k,attributes:g,styleBag:h,projectColorsForPicker:x,viewAttributes:v,layoutContext:S,getAttributeValue:C,handleAttributeChange:U,handleChildrenChange:G,tabs:A,tabContentInfo:V,firstAvailableTab:N,activeTab:F,setActiveTab:H,activeEntries:W,specialSectionsByTab:B,activeSpecialSections:$,mockableFeatureKeys:j,activeMockableFeature:P,setActiveMockableFeature:E,hasTitleField:R,hasDescriptionField:O,hasStringChildren:K,childrenValue:Y}}function AttributesEditor(e){useLogRender("AttributesEditor");const t=useAttributesEditorModel(e),i=t.attributes?.title,r=t.hasTitleField,n=React.useRef(t.handleAttributeChange);return n.current=t.handleAttributeChange,React.useEffect(()=>{r&&"string"==typeof i&&i.length>20&&n.current("title",i.slice(0,20))},[r,i]),jsxRuntime.jsx(AttributesEditorView,{...t})}function deleteNodeFromTree(e,t){if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let i=!1;const r=[];for(const n of e){if(n===t){i=!0;continue}const e=deleteNodeFromTree(n,t);e!==n&&(i=!0),r.push(e)}return i?r:e}const i=e;if("children"in i){const r=i.children;if(!r)return e;if(Array.isArray(r)){let n=!1;const o=[];for(const e of r){if(e===t){n=!0;continue}const i=deleteNodeFromTree(e,t);i!==e&&(n=!0),o.push(i)}return n?{...i,children:o}:e}if(r===t)return{...i,children:""};const n=deleteNodeFromTree(r,t);if(n!==r)return{...i,children:n}}return e}function isNodeRecord(e){return null!=e&&"object"==typeof e&&!Array.isArray(e)}function findNodeByKey(e,t){if(!t)return null;if(null==e)return null;if("string"==typeof e)return null;if(Array.isArray(e)){for(const i of e){const e=findNodeByKey(i,t);if(e)return e}return null}const i=e;return i.key===t?i:i.children?findNodeByKey(i.children,t):null}function replaceNode(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=replaceNode(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>replaceNode(e,t,i)):replaceNode(e,t,i);if(n!==e)return{...r,children:n}}return e}function AttributesEditorPanel({attributes:e,onChange:t,projectColors:i}){useLogRender("AttributesEditorPanel");const{current:r,setCurrent:n}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent})),o=React.useRef(e);o.current=e;const a=React.useRef(r);a.current=r;const s=React.useRef(t);s.current=t;const l=React.useCallback(e=>{const t=o.current,i=a.current;if(!i)return;const r=replaceNode(t,i,e);s.current(r),n(e)},[n]);if(!r)return null;const c="object"==typeof r&&!Array.isArray(r)&&"key"in r?r.key:void 0,d=(c&&e?findNodeByKey(e,c):null)??r;return jsxRuntime.jsx("div",{className:"attributes-editor-panel",children:jsxRuntime.jsx(AttributesEditor,{node:d,onChange:l,projectColors:i},c??void 0)})}function Breadcrumb({items:e,separator:t="/",ariaLabel:i="Breadcrumb",onBack:r,backLabel:n="Back"}){return useLogRender("Breadcrumb"),jsxRuntime.jsxs("nav",{className:"breadcrumb","aria-label":i,children:[r&&jsxRuntime.jsxs("button",{type:"button",className:"breadcrumb__back",onClick:r,"aria-label":"Go back",children:[jsxRuntime.jsx("span",{className:"breadcrumb__back-icon","aria-hidden":!0,children:"←"}),jsxRuntime.jsx("span",{children:n})]}),jsxRuntime.jsx("ol",{className:"breadcrumb__list",children:e.map((i,r)=>{const n=r===e.length-1,o=!n&&(i.to||i.onClick);return jsxRuntime.jsxs("li",{className:"breadcrumb__item "+(o?"breadcrumb__item--clickable":""),onClick:o?i.onClick:void 0,role:o?"button":void 0,tabIndex:o?0:void 0,onKeyDown:o&&i.onClick?e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),i.onClick?.())}:void 0,children:[r>0&&jsxRuntime.jsx("span",{className:"breadcrumb__separator","aria-hidden":!0,children:t}),n||!i.to&&!i.onClick?jsxRuntime.jsx("span",{className:"breadcrumb__current","aria-current":"page",children:i.label}):jsxRuntime.jsx("span",{className:"breadcrumb__link",children:i.label})]},`${i.label}-${r}`)})})]})}function BuilderButton({node:e,onClick:t,onDelete:i,onMoveUp:r,onMoveDown:n,childrenCount:o,onMore:a}){const[s,l]=React.useState(!1),c=React.useRef(null),d=React.useMemo(()=>`builder-node-actions-${Math.random().toString(36).slice(2,9)}`,[]);if(React.useEffect(()=>{if(!s)return;const e=e=>{const t=c.current;t&&(e.target instanceof Element&&t.contains(e.target)||l(!1))},t=e=>{"Escape"===e.key&&l(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("keydown",t),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("keydown",t)}},[s]),isNodeNullOrUndefined(e))return jsxRuntime.jsx("div",{className:"builder__placeholder",children:"Null or undefined"});if(isNodeString(e))return jsxRuntime.jsx("div",{className:"builder__text",children:e});const p=e;let g="";p.attributes?.condition&&(g=`${p.attributes.condition} ${p.attributes.conditionVariable??""}`.trim());const u=getPatternByType(p.type)?.meta?.label?.trim(),m=u&&u.length>0?u:p.type,h=g.trim()?g:"",f="string"==typeof p.attributes?.title?p.attributes.title.trim():"",y=f.length>0,b=y?f:m,C=y||h.length>0||"number"==typeof o;return jsxRuntime.jsxs("div",{className:"builder__button",children:[(r||n)&&jsxRuntime.jsxs("div",{className:"builder__sort-controls",children:[jsxRuntime.jsx("button",{type:"button",className:"builder__sort-button",onClick:e=>{e.stopPropagation(),r?.()},disabled:!r,"aria-label":"Move up",children:"↑"}),jsxRuntime.jsx("button",{type:"button",className:"builder__sort-button",onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":"Move down",children:"↓"})]}),jsxRuntime.jsx("button",{type:"button",className:"builder__button-link",onClick:t,children:b}),jsxRuntime.jsxs("div",{className:"builder__button-actions",ref:c,children:[jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-trigger","aria-label":"Open node actions","aria-haspopup":"menu","aria-expanded":s,"aria-controls":d,onClick:e=>{e.stopPropagation(),l(e=>!e)},children:jsxRuntime.jsx(Icon,{iconType:"chevron-right",size:16})}),s&&jsxRuntime.jsxs("ul",{id:d,className:"builder__button-actions-menu",role:"menu","aria-label":"Node actions",children:[a?jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-item",role:"menuitem",onClick:e=>{e.stopPropagation(),a(),l(!1)},children:"More"})}):null,jsxRuntime.jsx("li",{role:"none",children:jsxRuntime.jsx("button",{type:"button",className:"builder__button-actions-item builder__button-actions-item--danger",role:"menuitem",disabled:!i,onClick:t=>{if(t.stopPropagation(),!i)return;window.confirm("Do you want to delete?")&&(i&&(isNodeNullOrUndefined(e)||isNodeString(e)||i(e)),l(!1))},children:"Delete"})})]})]}),C&&jsxRuntime.jsxs("span",{className:"builder__button-condition",children:[y||h.length>0?jsxRuntime.jsx("span",{className:"builder__button-condition-text",children:y?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("small",{children:m}),h?` · ${h}`:""]}):h}):jsxRuntime.jsx("span",{className:"builder__button-condition-text"}),"number"==typeof o?jsxRuntime.jsxs("span",{className:"builder__button-children-count",children:[o," children"]}):null]})]})}function BuilderTreeNode({node:e,depthRemaining:t,onClick:i,onDelete:r,onMoveUp:n,onMoveDown:o}){const a=getNodeChildren(e),s=a.length>0,l=s&&t<=0?a.length:void 0,c=s&&t<=0?()=>i(e):void 0,d=jsxRuntime.jsx(BuilderButton,{onClick:()=>{i(e)},node:e,onDelete:r,onMoveUp:n,onMoveDown:o,childrenCount:l,onMore:c});return s?t<=0?jsxRuntime.jsx("div",{className:"builder__children",children:d}):jsxRuntime.jsxs("div",{className:"builder__children",children:[d,a.map((e,n)=>jsxRuntime.jsx(BuilderTreeNode,{node:e,depthRemaining:t-1,onClick:i,onDelete:r},n))]}):d}function BuilderComponent({node:e,onClick:t,onAdd:i,onDelete:r,onReorder:n,onMoveChildUp:o,onMoveChildDown:a,maxNestedDepth:s}){if(isNodeString(e))return jsxRuntime.jsxs("div",{className:"builder__text",children:[e," (Please define a node)"]});const l=i&&jsxRuntime.jsxs("button",{type:"button",className:"editor-button builder__add-button",onClick:i,children:[jsxRuntime.jsx("span",{className:"builder__add-button-icon","aria-hidden":"true",children:"+"}),jsxRuntime.jsx("span",{children:"Add component"})]});if(isNodeArray(e)){const i=e,o=Math.max(0,Number.isFinite(s)&&(s??0)>0?Math.floor(s??1)-1:4),a=(e,t)=>{if(!n)return;const r=e+t;if(r<0||r>=i.length)return;const o=[...i],[a]=o.splice(e,1);o.splice(r,0,a),n(i,o)};return jsxRuntime.jsxs("div",{className:"builder__list",children:[i.map((e,s)=>jsxRuntime.jsx("div",{className:"builder__list-item",children:jsxRuntime.jsx(BuilderTreeNode,{node:e,depthRemaining:o,onClick:t,onDelete:r,onMoveUp:n&&s>0?()=>a(s,-1):void 0,onMoveDown:n&&s<i.length-1?()=>a(s,1):void 0})},s)),l]})}const c=e,d=c?.children,p=isNodeArray(d),g=d?p?d:[d]:null,u=Math.max(0,Number.isFinite(s)&&(s??0)>0?Math.floor(s??1)-1:4);return jsxRuntime.jsxs("div",{className:"builder__node",children:[jsxRuntime.jsxs("div",{className:"builder__children",children:[jsxRuntime.jsx(BuilderButton,{onClick:()=>{t(e)},node:e,onDelete:r}),g&&g.map((i,n)=>jsxRuntime.jsx(BuilderTreeNode,{node:i,depthRemaining:u,onClick:t,onDelete:r,onMoveUp:o&&p&&n>0?()=>o(e,n):void 0,onMoveDown:a&&p&&n<g.length-1?()=>a(e,n):void 0},n))]}),l]})}function Builder({data:e,setData:t,current:i,setCurrent:r,onDeleteNode:n}){useLogRender("Builder");const[o,a]=React.useState(!1),s=useRenderStore(e=>e.listMaxNested),l=React.useMemo(()=>collectNodeKeys(e),[e]),c=Number.isFinite(s)&&s>0?Math.floor(s):5,d=React.useMemo(()=>{const t=findNodePath(e,i);return t.length?t:isNodeNullOrUndefined(i)?isNodeNullOrUndefined(e)?[]:[e]:[i]},[e,i]),p=React.useCallback(e=>{r(e)},[r]),g=React.useMemo(()=>d.map((e,t)=>({label:getNodeLabel(e),onClick:t===d.length-1?void 0:()=>p(e)})),[d,p]),u=React.useCallback(()=>{d.length<2||p(d[d.length-2])},[d,p]),m=React.useCallback(n=>{const o=T(n,new Set(l));if(isNodeNullOrUndefined(i)){if(isNodeNullOrUndefined(e)||isNodeString(e))return t(o),void r(o);if(Array.isArray(e)){const i=[...e,o];return t(i),void r(i)}const i=e,n={...i,children:appendChild(i.children,o)};return t(n),void r(n)}if(isNodeArray(i)){const n=[...i,o],a=k(e,i,n);return t(a),void r(n)}if(isNodeString(i))return void(i===e&&(t(o),r(o)));const a=i,s={...a,children:appendChild(a.children,o)},c=k(e,i,s);t(c),r(s)},[i,e,t,r,l]),h=React.useMemo(()=>function(t){if(isNodeNullOrUndefined(t))return[...allcomponentNames];if(isNodeArray(t)&&0===t.length)return[...allcomponentNames];if(isNodeString(t))return t===e?[...allcomponentNames]:[];const i=t.type;if("OnboardButtons"===i)return["OnboardButton"];const r=getPatternByType(i)?.pattern?.children;if(!r)return[];if("never"===r||"string"===r)return[];if("node"===r||Array.isArray(r)&&r.includes("node"))return[...allcomponentNames];if("string"==typeof r)return[r];return[]}(i),[i]),f=React.useMemo(()=>isNodeNullOrUndefined(i)||isNodeString(i)||isNodeArray(i)?null:i.type??null,[i]),y=h.length>0||null==e||Array.isArray(e)&&0===e.length,b=React.useCallback(()=>{y&&a(!0)},[y]),C=React.useCallback(()=>{a(!1)},[]),x=React.useCallback(e=>{m(e),a(!1)},[m]),v=React.useCallback((n,o)=>{const a=k(e,n,o);t(a),i===n&&r(o)},[i,e,r,t]),S=React.useCallback((n,o)=>{if(isNodeNullOrUndefined(n)||isNodeString(n)||isNodeArray(n))return;const a=n,s=a.children;if(!Array.isArray(s))return;if(o<=0||o>=s.length)return;const l=[...s],[c]=l.splice(o,1);l.splice(o-1,0,c);const d={...a,children:l},p=k(e,n,d);t(p),i===n&&r(d)},[i,e,r,t]),w=React.useCallback((n,o)=>{if(isNodeNullOrUndefined(n)||isNodeString(n)||isNodeArray(n))return;const a=n,s=a.children;if(!Array.isArray(s))return;if(o<0||o>=s.length-1)return;const l=[...s],[c]=l.splice(o,1);l.splice(o+1,0,c);const d={...a,children:l},p=k(e,n,d);t(p),i===n&&r(d)},[i,e,r,t]);function k(e,t,i){if(e===t)return i;if(null==e)return e;if("string"==typeof e)return e;if(Array.isArray(e)){let r=!1;const n=e.map(e=>{const n=k(e,t,i);return n!==e&&(r=!0),n});return r?n:e}const r=e;if("children"in r){const e=r.children,n=Array.isArray(e)?e.map(e=>k(e,t,i)):k(e,t,i);if(n!==e)return{...r,children:n}}return e}function T(e,t){const i=getPatternByType(e)?.pattern,r=getDefaultsForType(e)??{},n=i?.children;let o="";do{o=generateRandomKeyForNode(e)}while(t.has(o));if(t.add(o),"CarouselProvider"===e)return{type:e,key:o,children:T("Carousel",t),attributes:{...r}};let a=null;return a="never"===n?null:"string"===n?"":"node"===n||Array.isArray(n)&&n.includes("node")?null:"string"==typeof n?[T(n,t)]:null,{type:e,key:o,children:a,attributes:{...r}}}return jsxRuntime.jsxs("div",{className:"builder",children:[jsxRuntime.jsx(Breadcrumb,{items:g,onBack:d.length>1?u:void 0}),jsxRuntime.jsx(BuilderComponent,{onClick:p,onAdd:y?b:void 0,onDelete:n,onReorder:v,onMoveChildUp:S,onMoveChildDown:w,maxNestedDepth:c,node:i}),o&&jsxRuntime.jsx(AddComponentModal,{allowedChildTypes:h,parentType:f,onSelect:x,onClose:C})]})}function appendChild(e,t){return Array.isArray(e)?[...e,t]:null==e||"string"==typeof e?[t]:[e,t]}function getNodeChildren(e){if(isNodeNullOrUndefined(e)||isNodeString(e)||isNodeArray(e))return[];const t=e.children;return t?Array.isArray(t)?t:[t]:[]}function getNodeLabel(e){if(isNodeNullOrUndefined(e))return"Empty";if(isNodeString(e))return e;if(isNodeArray(e))return"Collection";const t=e,i=t.attributes?.title;return"string"==typeof i&&i.trim().length>0?i:t.type??"Node"}function findNodePath(e,t){if(null==e)return[];if(e===t)return[e];if("string"==typeof e)return[];if(Array.isArray(e)){for(const i of e){const e=findNodePath(i,t);if(e.length)return e}return[]}const i=e.children;if(!i)return[];const r=Array.isArray(i)?i:[i];for(const i of r){const r=findNodePath(i,t);if(r.length)return[e,...r]}return[]}function BuilderPanel({data:e,setData:t,onDeleteNode:i}){useLogRender("BuilderPanel");const{current:r,setCurrent:n}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent}));return jsxRuntime.jsx("div",{role:"region",className:"editor-panel-builder editor-panel editor-panel--active","aria-hidden":!1,children:jsxRuntime.jsx(Builder,{data:e,setData:t,current:r,setCurrent:n,onDeleteNode:i})})}function isFn(e){return"function"==typeof e}function safeStringify(e){try{const t=new WeakSet;return JSON.stringify(e,(e,i)=>{if("function"==typeof i){const e=i.name;return`[Function${e?`: ${e}`:""}]`}if("bigint"==typeof i)return i.toString();if(i instanceof Error)return{name:i.name,message:i.message,stack:i.stack};if(i instanceof Map)return{__type:"Map",entries:Array.from(i.entries())};if(i instanceof Set)return{__type:"Set",values:Array.from(i.values())};if("object"==typeof i&&null!==i){if(t.has(i))return"[Circular]";t.add(i)}return i},2)}catch(e){return`<< Unable to stringify value: ${String(e)} >>`}}function safeParseJson(e){if("string"!=typeof e||!e.trim())return null;try{return JSON.parse(e)}catch{return null}}function safeGetPersistedRenderStore(){try{return"undefined"==typeof localStorage?null:localStorage.getItem("render-store")}catch(e){return{error:String(e)}}}function logRenderStore(e={}){const{label:t,includeLocalStorage:i=!0,extra:r}=e,n=useRenderStore.getState(),o=Object.keys(n).sort(),a={},s=[];for(const e of o){const t=n[e];isFn(t)?s.push(e):a[e]=t}const l="[RB Debug] Render store"+(t?` (${t})`:""),c=console.groupCollapsed,d=console.groupEnd;isFn(c)?c(l):console.info(l);const p=i?safeGetPersistedRenderStore():null,g=i?safeParseJson(p):null,u=safeStringify({snapshot:a,actions:s,extra:r??null,persisted:i?{raw:p,parsed:g}:null});console.info("json",u),console.info("state",a),console.info("actions",s),i&&console.info("localStorage.render-store (raw)",p),r&&console.info("extra",r),isFn(d)&&d()}function DebugJsonPage({data:e,setData:t,project:i,onClose:r,title:n="Debug JSON",description:o,previewMode:a,setPreviewMode:s,logLabel:l}){const c=useRenderStore(e=>e.setCurrent),d=useRenderStore(e=>e.listMaxNested),p=useRenderStore(e=>e.setListMaxNested),g=useRenderStore(e=>e.theme),u=useRenderStore(e=>e.setTheme),m=useRenderStore(e=>e.isRtl),h=useRenderStore(e=>e.setIsRtl),[f,y]=React.useState(String(d)),b="function"==typeof s,C=e=>(e=>"object"==typeof e&&null!==e&&!Array.isArray(e))(e)&&"data"in e?e.data:e;function x(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function v(e){if(isNodeNullOrUndefined(e)||isNodeString(e))return e;if(isNodeArray(e)){return e.map(e=>v(e))}if(!x(e))return e;const t=e,i=v(t.children);if(!x(t.attributes))return{...t,children:i};const r={...t.attributes};return"style"in r&&x(r.style)&&(r.styles=r.style,delete r.style),{...t,children:i,attributes:r}}const S=React.useMemo(()=>function e(t){if(isNodeNullOrUndefined(t)||isNodeString(t))return!1;if(isNodeArray(t)){return t.some(e)}if(!x(t))return!1;const i=t;return!(!x(i.attributes)||!("style"in i.attributes))||e(i.children)}(e),[e]);React.useEffect(()=>{y(String(d))},[d]),React.useEffect(()=>{const e=window.setTimeout(()=>{const e=Number.parseInt(f,10);!Number.isFinite(e)||e<=0||p(e)},300);return()=>window.clearTimeout(e)},[f,p]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"modal__header localication-modal__header",children:[jsxRuntime.jsxs("div",{className:"localication-modal__header-main",children:[jsxRuntime.jsx("h3",{id:"debug-json-editor-title",className:"modal__title",children:n}),o?jsxRuntime.jsx("p",{className:"localication-modal__description",children:o}):null]}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",title:"Log render store to console",onClick:()=>logRenderStore({label:l,extra:{project:i??null,projectData:e??null}}),children:"Log store"}),S?jsxRuntime.jsx("button",{type:"button",className:"editor-button",title:"Migrate attributes.style to attributes.styles (schemaVersion=2)",onClick:()=>{if(!e)return;const i=v(e);t(i),c(i)},children:"Fix style → styles"}):null,r?jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>r(),children:"Close"}):null]}),jsxRuntime.jsxs("div",{className:"localication-modal__body",children:[jsxRuntime.jsxs("div",{className:"localication-modal__controls",children:[b?jsxRuntime.jsx(Checkbox,{label:"Preview mode",checked:Boolean(a),onChange:s}):null,jsxRuntime.jsx(Checkbox,{label:"Dark Mode",checked:"dark"===g,onChange:e=>u(e?"dark":"light")}),jsxRuntime.jsx(Checkbox,{label:"Is RTL",checked:m,onChange:h})]}),jsxRuntime.jsxs("div",{className:"localication-modal__controls",children:[jsxRuntime.jsx("label",{children:"List max nested depth"}),jsxRuntime.jsx("input",{type:"number",min:1,className:"input",value:f,onChange:e=>y(e.target.value)})]}),jsxRuntime.jsx("div",{className:"localication-modal__editor",children:jsxRuntime.jsx(JsonTextEditor,{rootName:"node",value:e??{},onChange:e=>{const i=analyseAndProccess(C(e));t(i),c(i)},className:"localication-modal__json-editor"})})]})]})}function BottomBar({className:e,data:t,setData:i,project:r}){const{localization:n,setLocalization:o,theme:a,setTheme:s,defaultLanguage:l,setDefaultLanguage:c,previewMode:d,setPreviewMode:p,setIsRtl:g,languageColumns:u}=useRenderStore(e=>({localization:e.localization,setLocalization:e.setLocalization,theme:e.theme,setTheme:e.setTheme,defaultLanguage:e.defaultLanguage,setDefaultLanguage:e.setDefaultLanguage,previewMode:e.previewMode,setPreviewMode:e.setPreviewMode,setIsRtl:e.setIsRtl,languageColumns:e.languageColumns})),[m,h]=React.useState(!1),[f,y]=React.useState(!1),[b,C]=React.useState(!1),[x,v]=React.useState(!1),[S,w]=React.useState(!1),k=React.useRef(),T=React.useMemo(()=>{if(u.length>0)return u;return Object.keys(n??{}).map(e=>({id:0,code:e.toUpperCase(),title:e,iso_code:e.toUpperCase(),is_right_alignment:!1}))},[u,n]),_=l,R=React.useCallback(e=>{const t=e.code.toLowerCase();c(t),g(e.is_right_alignment),w(!1)},[c,g]),O="dark"===a,I=d,M=O?"moon-bold":"sun";return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:["rb-bottom-bar",e].filter(Boolean).join(" "),children:[jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(O?" is-active":""),"aria-label":"Theme","aria-pressed":O,onClick:()=>s("dark"===a?"light":"dark"),children:jsxRuntime.jsx(Icon,{iconType:M,size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button rb-bottom-bar__button--preview"+(I?" is-active":""),"aria-label":"Magic cursor tool","aria-pressed":I,onClick:()=>p(!d),children:jsxRuntime.jsx(Icon,{iconType:"magicpen",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(m?" is-active":""),"aria-label":"Debug","aria-pressed":m,onClick:()=>h(!0),children:jsxRuntime.jsx(Icon,{iconType:"speedometer-03",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(f?" is-active":""),"aria-label":"Localization","aria-pressed":f,onClick:()=>y(!0),children:jsxRuntime.jsx(Icon,{iconType:"globe-01",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(b?" is-active":""),"aria-label":"Inspect","aria-pressed":b,onClick:()=>C(!0),children:jsxRuntime.jsx(Icon,{iconType:"info-circle",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("button",{type:"button",className:"rb-bottom-bar__button"+(x?" is-active":""),"aria-label":"Prompt Manager","aria-pressed":x,onClick:()=>v(!0),children:jsxRuntime.jsx(Icon,{iconType:"star",size:20,color:"currentColor",alt:""})}),jsxRuntime.jsx("div",{className:"rb-bottom-bar__spacer"}),jsxRuntime.jsxs("div",{className:"rb-bottom-bar__lang-selector",onMouseEnter:()=>{k.current&&clearTimeout(k.current),w(!0)},onMouseLeave:()=>{k.current=setTimeout(()=>w(!1),200)},style:{position:"relative"},children:[jsxRuntime.jsxs("button",{type:"button",className:"rb-bottom-bar__lang is-active",style:{display:"flex",alignItems:"center",gap:4},children:[_.toUpperCase(),jsxRuntime.jsx("span",{style:{fontSize:8,opacity:.6},children:"▲"})]}),S&&T.length>0&&jsxRuntime.jsx("div",{className:"rb-bottom-bar__lang-dropdown",style:{position:"absolute",bottom:"100%",right:0,marginBottom:4,background:"var(--rb-bg-secondary, #2a2a2a)",border:"1px solid var(--rb-border, #444)",borderRadius:6,padding:"4px 0",minWidth:150,maxHeight:260,overflowY:"auto",boxShadow:"0 -4px 16px rgba(0,0,0,0.3)",zIndex:100},children:T.map(e=>{const t=e.code.toLowerCase()===_.toLowerCase();return jsxRuntime.jsxs("button",{type:"button",onClick:()=>R(e),style:{display:"flex",alignItems:"center",gap:6,width:"100%",padding:"5px 10px",border:"none",background:t?"var(--rb-accent, #6366f1)":"transparent",color:t?"#fff":"var(--rb-text-primary, #e0e0e0)",cursor:"pointer",fontSize:12,textAlign:"left"},onMouseEnter:e=>{t||(e.currentTarget.style.background="var(--rb-bg-hover, #333)")},onMouseLeave:e=>{t||(e.currentTarget.style.background="transparent")},children:[jsxRuntime.jsx("span",{style:{fontWeight:600,width:24,flexShrink:0},children:e.code}),jsxRuntime.jsx("span",{style:{opacity:.7,flex:1},children:e.title}),e.is_right_alignment&&jsxRuntime.jsx("span",{style:{fontSize:9,opacity:.5,flexShrink:0},children:"RTL"})]},e.code)})})]})]}),f&&jsxRuntime.jsx(LocalicationModal,{data:n??{},onChange:e=>{o(e)},onClose:()=>y(!1)}),m&&jsxRuntime.jsx(Modal,{onClose:()=>h(!1),ariaLabelledBy:"debug-json-editor-title",className:"modal--large modal--scrollable",contentClassName:"localication-modal__content",children:jsxRuntime.jsx(DebugJsonPage,{project:r,data:t,setData:i,onClose:()=>h(!1),description:"Inspect and edit raw node JSON.",previewMode:d,setPreviewMode:p,logLabel:"BottomBar Debug JSON"})}),b&&jsxRuntime.jsx(InspectModal,{onClose:()=>C(!1)}),x&&jsxRuntime.jsx(PromptManagerModal,{data:t,setData:i,onClose:()=>v(!1)})]})}var v="5.6.10",fr=30,ip=30,op=210,w=800,h=600,nm="合成 1",ddd=0,assets=[{id:"comp_0",layers:[{ddd:0,ind:1,ty:4,nm:"形状图层 18",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:340,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:0,s:[0]},{t:30,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:0,bm:0},{ddd:0,ind:2,ty:4,nm:"形状图层 17",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:320,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:10,s:[0]},{t:40,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:10,bm:0},{ddd:0,ind:3,ty:4,nm:"形状图层 16",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:300,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:20,s:[0]},{t:50,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:20,bm:0},{ddd:0,ind:4,ty:4,nm:"形状图层 15",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:280,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:30,s:[0]},{t:60,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:30,bm:0},{ddd:0,ind:5,ty:4,nm:"形状图层 14",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:260,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:40,s:[0]},{t:70,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:40,bm:0},{ddd:0,ind:6,ty:4,nm:"形状图层 13",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:240,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:50,s:[0]},{t:80,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:121,st:50,bm:0},{ddd:0,ind:7,ty:4,nm:"形状图层 12",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:220,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:60,s:[0]},{t:90,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:60,bm:0},{ddd:0,ind:8,ty:4,nm:"形状图层 11",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:200,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:70,s:[0]},{t:100,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:70,bm:0},{ddd:0,ind:9,ty:4,nm:"形状图层 10",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:180,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:80,s:[0]},{t:110,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:80,bm:0},{ddd:0,ind:10,ty:4,nm:"形状图层 9",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:160,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:90,s:[0]},{t:120,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:90,bm:0},{ddd:0,ind:11,ty:4,nm:"形状图层 8",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:140,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:100,s:[0]},{t:130,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:100,bm:0},{ddd:0,ind:12,ty:4,nm:"形状图层 7",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:120,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:110,s:[0]},{t:140,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:0,op:181,st:110,bm:0},{ddd:0,ind:13,ty:4,nm:"形状图层 6",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:100,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:120,s:[0]},{t:150,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:420,st:120,bm:0},{ddd:0,ind:14,ty:4,nm:"形状图层 5",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:80,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:130,s:[0]},{t:160,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:430,st:130,bm:0},{ddd:0,ind:15,ty:4,nm:"形状图层 4",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:60,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:140,s:[0]},{t:170,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:440,st:140,bm:0},{ddd:0,ind:16,ty:4,nm:"形状图层 3",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:40,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:150,s:[0]},{t:180,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:450,st:150,bm:0},{ddd:0,ind:17,ty:4,nm:"形状图层 2",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:20,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:160,s:[0]},{t:190,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:460,st:160,bm:0},{ddd:0,ind:18,ty:4,nm:"形状图层 1",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:170,s:[0]},{t:200,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:78,op:470,st:170,bm:0},{ddd:0,ind:19,ty:4,nm:"形状图层 24",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:340,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:180,s:[0]},{t:210,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:180,bm:0},{ddd:0,ind:20,ty:4,nm:"形状图层 23",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:320,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:190,s:[0]},{t:220,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:190,bm:0},{ddd:0,ind:21,ty:4,nm:"形状图层 22",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:300,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:200,s:[0]},{t:230,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:200,bm:0},{ddd:0,ind:22,ty:4,nm:"形状图层 21",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:280,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:210,s:[0]},{t:240,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:210,bm:0},{ddd:0,ind:23,ty:4,nm:"形状图层 20",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:260,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:220,s:[0]},{t:250,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:220,bm:0},{ddd:0,ind:24,ty:4,nm:"形状图层 19",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:240,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[1.258,2.078,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,shapes:[{ty:"gr",it:[{d:1,ty:"el",s:{a:0,k:[200,200],ix:2},p:{a:0,k:[0,0],ix:3},nm:"椭圆路径 1",mn:"ADBE Vector Shape - Ellipse",hd:!1},{ty:"tm",s:{a:0,k:0,ix:1},e:{a:0,k:5,ix:2},o:{a:1,k:[{i:{x:[.667],y:[1]},o:{x:[.333],y:[0]},t:230,s:[0]},{t:260,s:[120]}],ix:3},m:1,ix:2,nm:"修剪路径 1",mn:"ADBE Vector Filter - Trim",hd:!1},{ty:"st",c:{a:0,k:[.09019607843137255,.3843137254901961,.8745098039215686,1],ix:3},o:{a:0,k:100,ix:4},w:{a:0,k:40,ix:5},lc:2,lj:1,ml:4,bm:0,nm:"描边 1",mn:"ADBE Vector Graphic - Stroke",hd:!1},{ty:"tr",p:{a:0,k:[1.258,2.078],ix:2},a:{a:0,k:[0,0],ix:1},s:{a:0,k:[100,100],ix:3},r:{a:0,k:0,ix:6},o:{a:0,k:100,ix:7},sk:{a:0,k:0,ix:4},sa:{a:0,k:0,ix:5},nm:"变换"}],nm:"椭圆 1",np:4,cix:2,bm:0,ix:1,mn:"ADBE Vector Group",hd:!1}],ip:180,op:301,st:230,bm:0}]}],layers=[{ddd:0,ind:1,ty:0,nm:"预合成 1",refId:"comp_0",sr:1,ks:{o:{a:0,k:100,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,300,0],ix:2},a:{a:0,k:[400,300,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,ef:[{ty:5,nm:"简单阻塞工具",np:4,mn:"ADBE Simple Choker",ix:1,en:1,ef:[{ty:7,nm:"视图",mn:"ADBE Simple Choker-0001",ix:1,v:{a:0,k:1,ix:1}},{ty:0,nm:"阻塞遮罩",mn:"ADBE Simple Choker-0002",ix:2,v:{a:0,k:14,ix:2}}]},{ty:5,nm:"梯度渐变",np:10,mn:"ADBE Ramp",ix:2,en:1,ef:[{ty:3,nm:"渐变起点",mn:"ADBE Ramp-0001",ix:1,v:{a:0,k:[400,0],ix:1}},{ty:2,nm:"起始颜色",mn:"ADBE Ramp-0002",ix:2,v:{a:0,k:[.263066768646,1,.867243647575,1],ix:2}},{ty:3,nm:"渐变终点",mn:"ADBE Ramp-0003",ix:3,v:{a:0,k:[400,600],ix:3}},{ty:2,nm:"结束颜色",mn:"ADBE Ramp-0004",ix:4,v:{a:0,k:[.354580283165,1,.820018112659,1],ix:4}},{ty:7,nm:"渐变形状",mn:"ADBE Ramp-0005",ix:5,v:{a:0,k:1,ix:5}},{ty:0,nm:"渐变散射",mn:"ADBE Ramp-0006",ix:6,v:{a:0,k:0,ix:6}},{ty:0,nm:"与原始图像混合",mn:"ADBE Ramp-0007",ix:7,v:{a:0,k:0,ix:7}},{ty:6,nm:"",mn:"ADBE Ramp-0008",ix:8,v:0}]}],w:800,h:600,ip:0,op:300,st:0,bm:0},{ddd:0,ind:2,ty:0,nm:"预合成 1",refId:"comp_0",sr:1,ks:{o:{a:0,k:56,ix:11},r:{a:0,k:0,ix:10},p:{a:0,k:[400,320,0],ix:2},a:{a:0,k:[400,300,0],ix:1},s:{a:0,k:[100,100,100],ix:6}},ao:0,ef:[{ty:5,nm:"简单阻塞工具",np:4,mn:"ADBE Simple Choker",ix:1,en:1,ef:[{ty:7,nm:"视图",mn:"ADBE Simple Choker-0001",ix:1,v:{a:0,k:1,ix:1}},{ty:0,nm:"阻塞遮罩",mn:"ADBE Simple Choker-0002",ix:2,v:{a:0,k:14,ix:2}}]},{ty:5,nm:"梯度渐变",np:10,mn:"ADBE Ramp",ix:2,en:1,ef:[{ty:3,nm:"渐变起点",mn:"ADBE Ramp-0001",ix:1,v:{a:0,k:[400,0],ix:1}},{ty:2,nm:"起始颜色",mn:"ADBE Ramp-0002",ix:2,v:{a:0,k:[.263066768646,1,.867243647575,1],ix:2}},{ty:3,nm:"渐变终点",mn:"ADBE Ramp-0003",ix:3,v:{a:0,k:[400,600],ix:3}},{ty:2,nm:"结束颜色",mn:"ADBE Ramp-0004",ix:4,v:{a:0,k:[.354580283165,1,.820018112659,1],ix:4}},{ty:7,nm:"渐变形状",mn:"ADBE Ramp-0005",ix:5,v:{a:0,k:1,ix:5}},{ty:0,nm:"渐变散射",mn:"ADBE Ramp-0006",ix:6,v:{a:0,k:0,ix:6}},{ty:0,nm:"与原始图像混合",mn:"ADBE Ramp-0007",ix:7,v:{a:0,k:0,ix:7}},{ty:6,nm:"",mn:"ADBE Ramp-0008",ix:8,v:0}]},{ty:29,nm:"高斯模糊",np:5,mn:"ADBE Gaussian Blur 2",ix:3,en:1,ef:[{ty:0,nm:"模糊度",mn:"ADBE Gaussian Blur 2-0001",ix:1,v:{a:0,k:41.3,ix:1}},{ty:7,nm:"模糊方向",mn:"ADBE Gaussian Blur 2-0002",ix:2,v:{a:0,k:1,ix:2}},{ty:7,nm:"重复边缘像素",mn:"ADBE Gaussian Blur 2-0003",ix:3,v:{a:0,k:0,ix:3}}]}],w:800,h:600,ip:0,op:300,st:0,bm:0}],markers=[],loadingAnimation={v:v,fr:fr,ip:ip,op:op,w:w,h:h,nm:nm,ddd:ddd,assets:assets,layers:layers,markers:markers};function LoadingComponent(){return jsxRuntime.jsx("div",{className:"rb-loading",children:jsxRuntime.jsx(Lottie,{animationData:loadingAnimation,loop:!0,autoplay:!0})})}function useSyncHtmlThemeClass(){const e=useRenderStore(e=>e.theme);React.useEffect(()=>{if("undefined"==typeof document)return;const t=document.documentElement;t.classList.toggle("dark","dark"===e),t.classList.toggle("light","light"===e)},[e])}function safeJsonStringify(e){try{const t=new WeakSet;return JSON.stringify(e,(e,i)=>{if("object"==typeof i&&null!==i){if(t.has(i))return"[Circular]";t.add(i)}return i},2)}catch(e){return`<< Unable to stringify value: ${String(e)} >>`}}async function copyTextToClipboard(e){try{if("undefined"!=typeof navigator&&navigator.clipboard?.writeText)return await navigator.clipboard.writeText(e),!0}catch{}try{if("undefined"==typeof document)return!1;const t=document.createElement("textarea");t.value=e,t.setAttribute("readonly","true"),t.style.position="fixed",t.style.opacity="0",document.body.appendChild(t),t.select();const i=document.execCommand("copy");return document.body.removeChild(t),i}catch{return!1}}function parseValidationPrefix(e){const t=e.indexOf(": ");if(t<=0)return{reason:e};const i=e.slice(0,t),r=e.slice(t+2);return i.startsWith("root")?{path:i,reason:r}:{reason:e}}function isObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function extractNodeFromRawData(e){if(isObject(e)){if("string"==typeof e.type&&e.type.trim())return e;const t=e.data;if(isObject(t)&&"string"==typeof t.type&&t.type.trim())return t}return e}function getNodeType(e){if(!isObject(e))return null;const t=e.type;return"string"==typeof t&&t?t:null}function getFirstComponentFromReactStack(e){if(!e)return null;const t=e.match(/\bat\s+([A-Za-z0-9_$]+)/);return t?.[1]??null}function resolveNodeTypeAtPath(e,t){if(!t||!t.startsWith("root"))return{};let i=e,r=getNodeType(i),n=r?"root":null;const o="root"===t?"":t.replace(/^root\.?/,""),a=/([A-Za-z0-9_$]+)|\[(\d+)\]/g;let s,l="root";for(;s=a.exec(o);){const e=s[1],t=s[2];e?(l=`${l}.${e}`,i=isObject(i)?i[e]:void 0):null!=t&&(l=`${l}[${t}]`,i=Array.isArray(i)?i[Number(t)]:void 0);const o=getNodeType(i);o&&(r=o,n=l)}return r?{nodeType:r,nodePath:n??void 0}:{}}function ProjectDebug({name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,belowName:s,jsonEditor:l}){useSyncHtmlThemeClass();const[c,d]=React.useState(null),[p,g]=React.useState("idle"),[u,m]=React.useState("idle"),h=React.useMemo(()=>safeJsonStringify(t),[t]),f=l?l.value:h,y=React.useMemo(()=>extractNodeFromRawData(t),[t]),b=y,C=React.useMemo(()=>getNodeType(y),[y]),x=React.useMemo(()=>parseValidationPrefix(i),[i]),v=React.useMemo(()=>resolveNodeTypeAtPath(y,x.path),[y,x.path]),S=React.useMemo(()=>{const e=[];return e.push(x.reason),C&&e.push(`Root component: ${C}`),x.path&&e.push(`Path: ${x.path}`),v.nodeType&&e.push(`Component at path: ${v.nodeType}${v.nodePath?` (${v.nodePath})`:""}`),e.join("\n")},[x.reason,x.path,C,v.nodeType,v.nodePath]),w=React.useMemo(()=>{if(!c)return null;const e=[];return e.push(c.message),C&&e.push(`Root component: ${C}`),c.componentStack&&e.push(`Component (from React stack): ${getFirstComponentFromReactStack(c.componentStack)??"unknown"}`),e.join("\n")},[c,C]),k=React.useMemo(()=>{const e=[];return e.push("=== Validation ==="),e.push(S),r&&(e.push(""),e.push(r)),c&&(e.push(""),e.push("=== Render ==="),w&&e.push(w),c.stack&&(e.push(""),e.push(c.stack)),c.componentStack&&(e.push(""),e.push(c.componentStack))),e.join("\n")},[c,w,r,S]);return jsxRuntime.jsxs("div",{className:"rb-project-debug",children:[jsxRuntime.jsxs("section",{className:"rb-project-debug__json","aria-label":"Debug JSON",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__meta",children:jsxRuntime.jsxs("div",{children:[jsxRuntime.jsx("span",{className:"rb-project-debug__meta-label",children:"Name:"})," ",e]})}),jsxRuntime.jsxs("div",{className:"rb-project-debug__toolbar",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{await copyTextToClipboard(f)&&(g("copied"),window.setTimeout(()=>g("idle"),900))},children:"copied"===p?"Copied JSON":"Copy JSON"}),l?.onSave&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:l.saveDisabled,onClick:()=>l.onSave?.(),children:l.saveLabel??"Save"})]}),s&&jsxRuntime.jsx("div",{className:"rb-project-debug__below-name",children:s}),l?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("textarea",{className:"rb-project-debug__code-editor",value:l.value,onChange:e=>l.onChange(e.target.value),spellCheck:!1,"aria-label":"Edit JSON"}),l.error?jsxRuntime.jsx("div",{className:"rb-project-debug__json-error",role:"alert",children:l.error}):null]}):jsxRuntime.jsx("pre",{className:"rb-project-debug__code",tabIndex:0,children:h})]}),jsxRuntime.jsx("section",{className:"rb-project-debug__preview","aria-label":"Preview",style:{"--rb-canvas-bg":a??"none"},children:jsxRuntime.jsx(RenderErrorBoundary,{subtitle:"caught by ProjectDebug preview",onError:(e,t)=>d({message:e?.message??String(e),stack:e?.stack,componentStack:t}),children:jsxRuntime.jsx(RenderPage,{data:b,name:e,params:{mockProducts:n,mockBenefits:o}})})}),jsxRuntime.jsxs("section",{className:"rb-project-debug__error","aria-label":"Errors",children:[jsxRuntime.jsxs("div",{className:"rb-project-debug__error-head",children:[jsxRuntime.jsx("h2",{className:"rb-project-debug__title",children:"Errors"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:async()=>{await copyTextToClipboard(k)&&(m("copied"),window.setTimeout(()=>m("idle"),900))},children:"copied"===u?"Copied":"Copy"})]}),jsxRuntime.jsxs("div",{className:"rb-project-debug__error-block",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__error-label",children:"Validation"}),jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:S}),r&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:r})]}),c&&jsxRuntime.jsxs("div",{className:"rb-project-debug__error-block",children:[jsxRuntime.jsx("div",{className:"rb-project-debug__error-label",children:"Render"}),jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:w}),c.stack&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:c.stack}),c.componentStack&&jsxRuntime.jsx("pre",{className:"rb-project-debug__error-pre",children:c.componentStack})]})]})]})}function ProjectValidationPage({name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,belowName:s,onContinueWithoutValidation:l,onSaveEditedRawData:c}){const[d,p]=React.useState(()=>safeJsonStringify(t)),[g,u]=React.useState(null);return React.useEffect(()=>{p(safeJsonStringify(t)),u(null)},[t]),jsxRuntime.jsx(ProjectDebug,{name:e,rawData:t,validationError:i,validationErrorStack:r,products:n,benefits:o,canvasBg:a,jsonEditor:{value:d,onChange:e=>{p(e),u(null)},error:g,onSave:()=>{try{const e=JSON.parse(d);u(null),c?.(e)}catch(e){u(e instanceof Error?e.message:String(e))}},saveDisabled:!c,saveLabel:"Save JSON"},belowName:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"rb-project-validation__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>l?.(),children:"Continue without validation"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>(()=>{try{const e=JSON.parse(d),t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),i=wrapNodeInMain(t(e)&&"data"in e?e.data:e),r=t(e)&&"data"in e?{...e,data:i}:i;p(JSON.stringify(r,null,2)),u(null)}catch(e){u(e instanceof Error?e.message:String(e))}})(),children:"Wrap in Main"})]}),s]})})}function ProjectMigrationPage({name:e,rawData:t,projectVersion:i,requiredVersion:r,showFixVersionMeta:n,pendingMigrations:o,products:a,benefits:s,canvasBg:l,belowName:c,migrating:d,onContinueWithoutValidation:p,onMigrateNow:g,onFixVersionMeta:u}){const m=`Migration required: project version ${i} is lower than ${r}.`,h=[`Required: ${r}`,`Current: ${i}`,"","Pending migrations:",...o.length?o.map(e=>`- ${e.id} (${e.fromVersion} -> ${e.toVersion}): ${e.title}`):["- (none)"]].join("\n");return jsxRuntime.jsx(ProjectDebug,{name:e,rawData:t,validationError:m,validationErrorStack:h,products:a,benefits:s,canvasBg:l,belowName:jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs("div",{className:"rb-project-validation__actions",children:[jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:!!d,onClick:()=>{g?.()},children:d?"Migrating…":"Migrate now"}),n&&jsxRuntime.jsx("button",{type:"button",className:"editor-button",disabled:!!d,onClick:()=>u?.(),children:"Fix version meta"}),jsxRuntime.jsx("button",{type:"button",className:"editor-button",onClick:()=>p?.(),children:"Continue without migration"})]}),c]})})}var supportedProjectVersion="1.1.2",reactBuilderVersion="1.2.45",metaJson={supportedProjectVersion:supportedProjectVersion,reactBuilderVersion:reactBuilderVersion};function parseSemver(e){const t="string"==typeof e?e.trim():"",[i,r,n]=t.split(".").slice(0,3),o=e=>{const t=Number(String(e??"").replace(/[^\d].*$/,""));return Number.isFinite(t)?t:0};return{major:o(i),minor:o(r),patch:o(n)}}function compareSemver(e,t){const i=parseSemver(e),r=parseSemver(t);return i.major!==r.major?i.major<r.major?-1:1:i.minor!==r.minor?i.minor<r.minor?-1:1:i.patch!==r.patch?i.patch<r.patch?-1:1:0}function isSemverLess(e,t){return compareSemver(e,t)<0}function isPlainObject(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function buildStyleKeySet(){return getStyleAttributeKeySet()}function normalizeStyleAttributes(e,t){if(isNodeNullOrUndefined(e)||isNodeString(e)||isEmptyObject$1(e))return e;if(isNodeArray(e))return e.map(e=>normalizeStyleAttributes(e,t));const i=e,r=normalizeStyleAttributes(i.children,t);if(!isPlainObject(i.attributes))return{...i,children:r};const n={...i.attributes??{}},o={...isPlainObject(n.style)?n.style:{},...isPlainObject(n.styles)?n.styles:{}};for(const[e,i]of Object.entries(n))"style"!==e&&"styles"!==e&&t.has(e)&&(e in o||(o[e]=i),delete n[e]);return delete n.style,Object.keys(o).length>0&&(n.styles=o),{...i,children:r,attributes:n}}function getStyleSubSchemaKeys(e){if(!e)return new Set;const t=e.styles;return isPlainObject(t)?new Set(Object.keys(t)):new Set}function getTopLevelAttributeKeys(e){if(!e)return new Set;const t=Object.keys(e).filter(e=>"styles"!==e);return new Set(t)}function buildKeyInfo(e){const t=getTopLevelAttributeKeys(e);return{moveableKeys:new Set([...Array.from(t),...Array.from(NON_STYLE_ATTRIBUTE_KEYS)]),styleKeys:getStyleSubSchemaKeys(e)}}function extractAttributesFromStyle(e,t){if(isNodeNullOrUndefined(e)||isNodeString(e)||isEmptyObject$1(e))return e;if(isNodeArray(e))return e.map(e=>extractAttributesFromStyle(e,t));const i=e,r=extractAttributesFromStyle(i.children,t);if(!isPlainObject(i.attributes))return{...i,children:r};const n={...i.attributes??{}},o=n.style,a=n.styles,s=isPlainObject(a)?a:isPlainObject(o)?o:void 0;if(!s)return{...i,children:r,attributes:n};if(!isPlainObject(s))return{...i,children:r,attributes:n};const l="string"==typeof i.type?i.type:"",c=normalizeComponentType(l)??l;if(!c)return{...i,children:r,attributes:n};if(!t.has(c)){const e=getAttributeSchema(c);t.set(c,buildKeyInfo(e))}const d=t.get(c),p=d?.styleKeys??new Set,g=d?.moveableKeys??NON_STYLE_ATTRIBUTE_KEYS,u={...s};let m=!1;for(const e of g)e in u&&(p.has(e)||(e in n||(n[e]=u[e]),delete u[e],m=!0));return m?(0===Object.keys(u).length?(delete n.style,delete n.styles):(delete n.style,n.styles=u),{...i,children:r,attributes:n}):{...i,children:r,attributes:n}}const migration_1_1_2_extract_component_attributes_from_style={id:"1.1.2-extract-attrs-from-style",title:"Normalize style keys then extract non-style + component props out of attributes.style",fromVersion:"0.0.0",toVersion:"1.1.2",run:e=>{const t=buildStyleKeySet(),i=extractAttributesFromStyle(normalizeStyleAttributes(e.data,t),new Map);return{...e,version:"1.1.2",data:i}}},CURRENT_PROJECT_VERSION=metaJson.supportedProjectVersion,MIGRATIONS=[migration_1_1_2_extract_component_attributes_from_style];function getMigrationPipe(e){const t="string"==typeof e?.version&&e.version.trim()?e.version:"0.0.0",i=isSemverLess(t,CURRENT_PROJECT_VERSION),r=i?MIGRATIONS.filter(e=>isSemverLess(t,e.toVersion)):[];return{projectVersion:t,requiredVersion:CURRENT_PROJECT_VERSION,required:i,pending:r}}function runProjectMigrations(e){const t=getMigrationPipe(e);let i=e;const r=[];for(const e of t.pending)isSemverLess(i.version,e.toVersion)&&(i=e.run(i),r.push(e));return isSemverLess(i.version,CURRENT_PROJECT_VERSION)&&(i={...i,version:CURRENT_PROJECT_VERSION}),{project:i,applied:r}}function sleep(e){return new Promise(t=>setTimeout(t,e))}async function loadWithDeadline(e,t){return!Number.isFinite(t)||t<=0?await e:await Promise.race([e,sleep(t).then(()=>{throw new Error("timeout")})])}function useProjectFonts({fonts:e,appFont:t}){React.useEffect(()=>{fontsDebug.info("useProjectFonts: effect start",{appFont:t,fontsCount:Array.isArray(e)?e.length:"not-array"});const{setFonts:i,setAppFont:r,setErrors:n,addError:o,loadedFonts:a,markFontLoaded:s}=useRenderStore.getState();fontsDebug.info("useProjectFonts: storing fonts/appFont in store",{appFont:t,fontsCount:Array.isArray(e)?e.length:"not-array"}),i(e),r(t),n([]);let l=!1;return(async()=>{const i="string"==typeof t?t.trim():"";if(!i)return void n(["appFont is undefined"]);if(l)return;Array.isArray(e)&&e.some(e=>e?.name===i&&e?.family&&"object"==typeof e.family&&Object.keys(e.family).length>0)?Array.isArray(a)&&a.includes(i)||(await loadWithDeadline(loadFontFamily(e,i,{forceFetch:!0}),1e4),l||s(i)):n([`appFont "${i}" not found in fonts`])})().catch(e=>{l||o(`Failed to initialize fonts: ${e instanceof Error?e.message:String(e)}`)}),()=>{l=!0}},[e,t])}function getDefaultProject(e={}){const t=metaJson.supportedProjectVersion.trim()?metaJson.supportedProjectVersion.trim():"0.0.0",i="string"==typeof e.version&&e.version.trim()?e.version.trim():t;return{name:"string"==typeof e.name&&e.name.trim()?e.name.trim():"project",version:i,data:e.data??null,projectColors:e.projectColors,type:e.type}}function resolveProjectForSave(e){return getDefaultProject({...e.overrideProject??e.project,data:e.data})}function toProjectMeta(e){return{name:e.name,version:e.version,...e.type?{type:e.type}:{},data:e.data}}const MOBILE_BREAKPOINT=1e3;function ProjectPage({project:e,localization:t,onSaveProject:i,logLevel:r,projectColors:n,onSaveProjectColors:o,name:a,typography:s,appFont:l}){useLogRender("ProjectPage"),useSyncHtmlThemeClass();const c=l??s.fonts.find(e=>e?.isMain)?.name??s.fonts[0]?.name;useProjectFonts({fonts:s.fonts,appFont:c});const{current:d,setCurrent:p,setProjectColors:g,setProjectName:u,setLocalization:m,products:h,benefits:f}=useRenderStore(e=>({current:e.current,setCurrent:e.setCurrent,setProjectColors:e.setProjectColors,setProjectName:e.setProjectName,setLocalization:e.setLocalization,products:e.products,benefits:e.benefits})),[b,C]=React.useState(null),x=b??e,v=a??x.name,S=n??x.projectColors,w=isNodeNullOrUndefined(x.data)||isEmptyObject$1(x.data),[k,T]=React.useState(()=>null),[_,R]=React.useState(null),[O,I]=React.useState(null),[M,j]=React.useState(!1),[P,E]=React.useState(null),[L,z]=React.useState(!1),[D,B]=React.useState(()=>w),[A,V]=React.useState(null),[N,F]=React.useState(()=>"undefined"!=typeof window&&window.innerWidth<=MOBILE_BREAKPOINT),H=React.useCallback(e=>{if(e===k){if(!window.confirm("You are about to delete the root component. This will clear the entire screen. Continue?"))return;return T(null),void p(null)}const t=deleteNodeFromTree(k,e);if(T(t),d!==e)if(isNodeRecord(d)&&d.key){const e=findNodeByKey(t,d.key);p(e??t)}else p(t);else p(t)},[k,d]);React.useEffect(()=>(logger.info("ProjectPage","mount",{projectName:e.name}),C(null),()=>{logger.info("ProjectPage","unmount")}),[e.name]),React.useEffect(()=>{t&&m(t)},[t,m]),React.useEffect(()=>{u(v)},[v,u]),React.useEffect(()=>(g(S),()=>g(void 0)),[S,g]),React.useEffect(()=>{r&&logger.setLevel(r)},[r]),React.useEffect(()=>{function e(){F(window.innerWidth<=MOBILE_BREAKPOINT)}return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),React.useEffect(()=>{V(null)},[N]);const W=e=>{V(t=>t===e?null:e)},$=()=>{V(null)},U=!N||"builder"===A,G=!N||"attributes"===A;React.useEffect(()=>{if(w)return void B(!0);B(!1);const e=setTimeout(()=>B(!0),1e3);return()=>clearTimeout(e)},[x.data]);const K=React.useRef(x);K.current=x;const Y=React.useRef(k);Y.current=k,React.useEffect(()=>{try{const e=K.current,t=e.data;if(null!=t&&t===Y.current)return;w||(T(null),p(null)),R(null),I(null);const i=getMigrationPipe(e);if(!M&&i.required)return E(i),T(null),void p(null);if(E(null),M)return T(e.data),void p(e.data);if(w)return T(null),void p(null);const r=analyseAndProccess(e.data);if(!r)return;T(r),p(r)}catch(e){logger.error("ProjectPage","Failed to process node",e),R(e instanceof Error?e.message:"Node is not valid"),I(e instanceof Error?e.stack??null:null),T(null),p(null)}},[x.data,w,M,p]);const Z=!(w||null!==k&&D);return jsxRuntime.jsxs("div",{className:"container-full",children:[jsxRuntime.jsx(Lt,{position:"bottom-right",autoClose:2500,hideProgressBar:!1,newestOnTop:!0,closeOnClick:!0,pauseOnFocusLoss:!0,draggable:!0,pauseOnHover:!0,theme:"colored"}),jsxRuntime.jsx(EditorHeader,{onSaveProject:()=>{try{logger.info("ProjectPage","save project",{name:e.name}),o&&S&&o(S);const t=toProjectMeta(resolveProjectForSave({project:e,overrideProject:b,data:k}));logger.info("ProjectPage","saving project meta",t),i(t),y.success("Saved")}catch(e){logger.error("ProjectPage","save project failed",e),y.error("Save failed")}},onRestoreProject:()=>{logger.info("ProjectPage","restore project",{name:e.name}),C(null),R(null),I(null),j(!1),T(e.data),p(e.data)},current:d,editorData:k,setEditorData:T}),P?jsxRuntime.jsx(ProjectMigrationPage,{name:v,rawData:x,projectVersion:P.projectVersion,requiredVersion:P.requiredVersion,showFixVersionMeta:"0.0.0"===P.projectVersion,pendingMigrations:P.pending.map(e=>({id:e.id,title:e.title,fromVersion:e.fromVersion,toVersion:e.toVersion})),products:h,benefits:f,canvasBg:`url(${getImage(exports.TribeAssetName.Background)})`,migrating:L,onContinueWithoutValidation:()=>{j(!0),E(null),T(x.data),p(x.data),B(!0)},onMigrateNow:()=>{try{z(!0);const e=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),t=t=>e(t)&&"string"==typeof t.type&&t.type.trim().length>0,r=!t(x)||e(x)&&"string"==typeof x.version?x:getDefaultProject({name:`imported-${Math.random().toString(36).slice(2,8)}`,version:CURRENT_PROJECT_VERSION,data:x}),{project:n}=runProjectMigrations(r);i(toProjectMeta(n)),C(n),j(!0),E(null),T(n.data),p(n.data),B(!0)}finally{z(!1)}},onFixVersionMeta:()=>{const e=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),t=e(x)?x:null,r="string"==typeof t?.name&&String(t.name).trim()?String(t.name).trim():`imported-${Math.random().toString(36).slice(2,8)}`,n=t&&"data"in t?t.data:(t=>e(t)&&"string"==typeof t.type&&t.type.trim().length>0)(x)?x:null,o=getDefaultProject({name:r,version:CURRENT_PROJECT_VERSION,data:n,projectColors:{},type:(e=>"paywall"===e||"onboard"===e||"other"===e)(t?.type)?t.type:void 0});i(toProjectMeta(o)),C(o),j(!1),E(null),R(null),I(null),y.success("Fixed version meta")}}):_?jsxRuntime.jsx(ProjectValidationPage,{name:v,rawData:x,validationError:_,validationErrorStack:O??void 0,products:h,benefits:f,canvasBg:`url(${getImage(exports.TribeAssetName.Background)})`,onContinueWithoutValidation:()=>{j(!0),R(null),I(null),T(x.data),p(x.data),B(!0)},onSaveEditedRawData:e=>{try{const t=e=>"object"==typeof e&&null!==e&&!Array.isArray(e),r=e;let n,o,a=r;if(t(r)&&"data"in r){a=r.data;const e=r.name,t=r.version;"string"==typeof e&&(n=e),"string"==typeof t&&(o=t)}const s=analyseAndProccess(a);if(!s)throw new Error("Node is not valid");const l={...x,...n?{name:n}:null,...o?{version:o}:null,data:a};i(toProjectMeta(l)),C(l),j(!1),R(null),I(null),T(s),p(s),B(!0),y.success("Saved")}catch(e){logger.error("ProjectPage","save JSON from validation failed",e),R(e instanceof Error?e.message:"Node is not valid"),I(e instanceof Error?e.stack??null:null),y.error("Save failed")}}}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[N&&jsxRuntime.jsxs("div",{className:"mobile-panel-toggle",role:"group","aria-label":"Editor panels",children:[jsxRuntime.jsxs("button",{type:"button",className:"mobile-panel-toggle__button"+("builder"===A?" mobile-panel-toggle__button--active":""),"aria-label":"Toggle builder panel","aria-expanded":"builder"===A,"aria-controls":"split-left-panel",onClick:()=>W("builder"),children:[jsxRuntime.jsx("span",{className:"mobile-panel-toggle__icon","aria-hidden":"true",children:jsxRuntime.jsx("svg",{viewBox:"0 0 16 12",role:"presentation",focusable:"false",children:jsxRuntime.jsx("path",{d:"M1 1h14M1 6h14M1 11h14",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",fill:"none"})})}),jsxRuntime.jsx("span",{className:"mobile-panel-toggle__label",children:"Builder"})]}),jsxRuntime.jsxs("button",{type:"button",className:"mobile-panel-toggle__button"+("attributes"===A?" mobile-panel-toggle__button--active":""),"aria-label":"Toggle attributes panel","aria-expanded":"attributes"===A,"aria-controls":"split-attributes-panel",onClick:()=>W("attributes"),children:[jsxRuntime.jsx("span",{className:"mobile-panel-toggle__icon","aria-hidden":"true",children:jsxRuntime.jsx("svg",{viewBox:"0 0 16 12",role:"presentation",focusable:"false",children:jsxRuntime.jsx("path",{d:"M1 1h14M1 6h14M1 11h14",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",fill:"none"})})}),jsxRuntime.jsx("span",{className:"mobile-panel-toggle__label",children:"Attributes"})]})]}),jsxRuntime.jsxs("div",{className:"editor-container",children:[jsxRuntime.jsxs("div",{id:"split-left-panel",className:"split-left"+(U?" is-open":""),"aria-hidden":N&&!U,children:[N&&jsxRuntime.jsx("button",{type:"button",className:"split-panel__close","aria-label":"Close builder panel",onClick:$,children:"Close"}),jsxRuntime.jsx("div",{children:jsxRuntime.jsx(BuilderPanel,{data:k,setData:T,onDeleteNode:H})})]}),jsxRuntime.jsxs("div",{style:{"--rb-canvas-bg":`url(${getImage(exports.TribeAssetName.Background)})`},className:"split-right",children:[Z&&jsxRuntime.jsx("div",{className:"rb-loading-overlay","aria-busy":"true",children:jsxRuntime.jsx(LoadingComponent,{})}),!Z&&jsxRuntime.jsx(RenderPage,{data:k,name:v})]}),jsxRuntime.jsx(BottomBar,{project:e,data:k,setData:T}),jsxRuntime.jsxs("div",{id:"split-attributes-panel",className:"split-third"+(G?" is-open":""),"aria-hidden":N&&!G,children:[N&&jsxRuntime.jsx("button",{type:"button",className:"split-panel__close","aria-label":"Close attributes panel",onClick:$,children:"Close"}),jsxRuntime.jsx(AttributesEditorPanel,{attributes:k,projectColors:S,onChange:e=>{let t;T(e),e&&"object"==typeof e&&!Array.isArray(e)&&"key"in e&&(t=e.key),logger.verbose("ProjectPage","attributes change",t?{nodeKey:t}:void 0)}})]}),N&&A&&jsxRuntime.jsx("button",{type:"button",className:"editor-container__overlay","aria-label":"Close active panel",onClick:$})]})]})]})}function useCalculateLocalizedPrice(e){return e?extractPrice(e):""}function useDiscountRate(e,t){if(!e||!t)return 0;const i=calculateDiscount(e,t);return i?parseInt(i,10):0}function useExtractTextStyle(e){const{selectedTheme:t,projectColors:i,fonts:r,baseSize:n}=useBuilderParams();return React.useMemo(()=>{const o=extractTextStyleNative(e,{theme:t,projectColors:i,fonts:r,baseSize:n}),a=e.attributes,s=stripStyleKeys(toAttributeRecord(a)),l=getStyleBag(a);return{style:o,other:{...s,adjustsFontSizeToFit:s.adjustsFontSizeToFit??l?.adjustsFontSizeToFit,showEllipsis:s.showEllipsis??l?.showEllipsis}}},[e,t,i,r,n])}function useExtractViewStyle(e){const{selectedTheme:t,projectColors:i,baseSize:r}=useBuilderParams();return React.useMemo(()=>{const n=extractViewStyleNative(e,{theme:t,projectColors:i,baseSize:r}),o=e.attributes,a=stripStyleKeys(toAttributeRecord(o)),s=getStyleBag(o);return{style:n,other:{...a,scrollable:a.scrollable??s?.scrollable}}},[e,t,i,r])}function useExtractImageStyle(e){const{selectedTheme:t,projectColors:i,baseSize:r}=useBuilderParams();return React.useMemo(()=>{const{resizeMode:n,...o}=extractImageStyleNative(e,{theme:t,projectColors:i,baseSize:r}),a=e.attributes,s=stripStyleKeys(toAttributeRecord(a)),l=getStyleBag(a);return{style:o,other:{...s,resizeMode:l?.resizeMode??n}}},[e,t,i,r])}const meta={supportedProjectVersion:metaJson.supportedProjectVersion,reactBuilderVersion:metaJson.reactBuilderVersion};function getMeta(){return{...meta}}function novaToJson(e){const t=e.data.data?.layout;return"onboard-layout"===t?onboardNovaToJson(e):null}function onboardNovaToJson(e){const t=e?.data?.data?.attributes||e?.data?.attributes||{},i=t?.general_components||[],r=t?.data||[],n=mapDotsFromGeneralComponents(i),o=mapFooterFromGeneralComponents(i),{carouselNode:a,providerLevelButtons:s}=buildCarouselFromPages(r),l={type:"OnboardProvider",key:e?.data?.data?.key,children:[a,...n?[n]:[],...s.length?s:[],...o?[o]:[]],attributes:{theme:e?.data?.theme}},c={type:"Main",isMain:!0,key:e?.data?.data?.key,children:[l],attributes:{useSafeAreaView:!0}};return delete l.key,c}function buildCarouselFromPages(e){const t=e.filter(e=>"simple-onboard-layout"===e?.layout),i=new Map;t.forEach((e,t)=>{const r=e?.attributes?.key;"string"==typeof r&&i.set(r,t)});const r=[];return{carouselNode:{type:"Onboard",children:t.map(e=>buildCarouselItem(e,i,r))},providerLevelButtons:r}}function buildCarouselItem(e,t,i){const r=e?.attributes?.components||[],n=[],o=e?.attributes?.key,a="string"==typeof o&&t.has(o)?t.get(o):void 0;for(const e of r)if("title-layout"===e?.layout){const t=e?.attributes?.title_localization_key||"",i=e?.attributes?.title_color||void 0,{fontSize:r,textAlign:o,marginTop:a,fontWeight:s}=extractTextStyleAttributesFromComponent(e);n.push({type:"OnboardTitle",attributes:i||r||o||a||s?{...i?{color:i}:{},..."number"==typeof r?{fontSize:r}:{},...o?{textAlign:o}:{},..."number"==typeof a?{marginTop:a}:{},...s?{fontWeight:s}:{}}:void 0,children:t})}else if("subtitle-layout"===e?.layout){const t=e?.attributes?.subtitle_localization_key||"",i=e?.attributes?.subtitle_color||void 0,{fontSize:r,textAlign:o,marginTop:a,fontWeight:s}=extractTextStyleAttributesFromComponent(e);n.push({type:"OnboardSubtitle",attributes:i||r||o||a||s?{...i?{color:i}:{},..."number"==typeof r?{fontSize:r}:{},...o?{textAlign:o}:{},..."number"==typeof a?{marginTop:a}:{},...s?{fontWeight:s}:{}}:void 0,children:t})}else if("image-layout"===e?.layout){const t=e?.attributes?.image||e?.attributes?.src||"",i=e?.attributes?.height??e?.attributes?.ios_height??e?.attributes?.android_height,r="string"==typeof i?Number.parseInt(i,10):"number"==typeof i?i:void 0,o=Boolean(e?.attributes?.is_bg_image),a=extractViewStyleAttributesFromComponent(e),s=e?.attributes?.lottie,l=e?.attributes?.video_url;t&&n.push({type:"OnboardImage",attributes:{src:t,...r?{height:r}:{},resizeMode:o?"cover":"contain",..."number"==typeof a.borderRadius?{borderRadius:a.borderRadius}:{},..."string"==typeof s?{lottie:s}:{},..."string"==typeof l?{video_url:l}:{}},children:void 0})}else if("Buttons"===e?.layout){const r=e?.attributes?.buttons_direction,n=e?.attributes?.buttons||[],o=[];for(const e of n){const i=e?.attributes||{},r=i?.button_text_localization_key||"",n=i?.button_text_color,a=i?.button_background_color,s=i?.animation,l=i?.animation_color,c=i?.flex?Number(i.flex):void 0,d=i?.actions||[],p=[];for(const e of d){const i=e?.attributes?.events||[];for(const e of i)if("Permission"===e?.layout){const t=e?.attributes?.permission;p.push({type:"Permission",permission:t})}else if("Navigate"===e?.layout){const i=e?.attributes?.next_page_key,r="string"==typeof i&&t.has(i),n=r?null:"string"==typeof i?i:null;p.push({type:"Navigate",navigate_to:n,...r?{targetIndex:t.get(i)}:{}})}}o.push({type:"OnboardButton",attributes:{labelKey:r,..."string"==typeof n?{button_text_color:n}:{},..."string"==typeof s?{animation:s}:{},..."string"==typeof l?{animation_color:l}:{},..."string"==typeof a?{button_background_color:a}:{},..."number"==typeof c?{flex:c}:{},...p.length?{events:p}:{}},children:void 0})}o.length>0&&i.push({type:"OnboardButtons",attributes:{...r?{buttons_direction:r}:{},..."number"==typeof a?{condition:"carousel-index",conditionVariable:a}:{}},children:o})}const s=e?.attributes?.key,l="string"==typeof s&&s||("string"==typeof e?.key?e.key:void 0);return{type:"OnboardItem",...l?{key:l}:{},children:n}}function extractTextStyleAttributesFromComponent(e){const t={},i=e?.attributes?.styles||[];if(!Array.isArray(i)||0===i.length)return t;const r=new Set(["left","center","right","justify"]),n=new Set(["normal","bold","100","200","300","400","500","600","700","800","900"]);for(const e of i){if("style-layout"!==e?.layout)continue;const i=e?.attributes?.styles||[];if(Array.isArray(i))for(const e of i){if("Styles"!==e?.layout)continue;const i=e?.attributes?.type;if("textStyle"!==i)continue;const o=e?.attributes?.style||{},a=o?.fontSize;if("number"==typeof a&&Number.isFinite(a))t.fontSize=a;else if("string"==typeof a){const e=Number.parseInt(a,10);Number.isFinite(e)&&(t.fontSize=e)}const s=o?.textAlign;"string"==typeof s&&r.has(s)&&(t.textAlign=s);const l=o?.marginTop;if("number"==typeof l&&Number.isFinite(l))t.marginTop=l;else if("string"==typeof l){const e=Number.parseInt(l,10);Number.isFinite(e)&&(t.marginTop=e)}const c=o?.fontWeight;let d;"number"==typeof c&&Number.isFinite(c)?d=String(c):"string"==typeof c&&(d=c),d&&n.has(d)&&(t.fontWeight=d)}}return t}function extractViewStyleAttributesFromComponent(e){const t={},i=e?.attributes?.styles||[];if(!Array.isArray(i)||0===i.length)return t;for(const e of i){if("style-layout"!==e?.layout)continue;const i=e?.attributes?.styles||[];if(Array.isArray(i))for(const e of i){if("Styles"!==e?.layout)continue;const i=e?.attributes?.style||{},r=i?.borderRadius;if("number"==typeof r&&Number.isFinite(r))t.borderRadius=r;else if("string"==typeof r){const e=Number.parseInt(r,10);Number.isFinite(e)&&(t.borderRadius=e)}}}return t}function mapDotsFromGeneralComponents(e){const t=e.find(e=>"dots-layout"===e?.layout);if(!t)return null;const i=t?.attributes?.dot||[],r=i?.[0],n=r?.layout,o=r?.attributes||{},a=e=>{if("number"==typeof e)return e;if("string"==typeof e&&e.trim().length>0){const t=Number(e);return Number.isFinite(t)?t:void 0}},s=a(o?.inactive_dot_opacity),l=a(o?.dot_thickness),c="string"==typeof o?.dot_style?o.dot_style:void 0,d="string"==typeof o?.container_style?o.container_style:void 0,p="string"==typeof o?.active_dot_color?o.active_dot_color:void 0,g="string"==typeof o?.inactive_dot_color?o.inactive_dot_color:void 0,u={};return n&&(u.dotType=n),void 0!==s&&(u.inactive_dot_opacity=s),void 0!==l&&(u.dot_thickness=l),c&&(u.dot_style=c),d&&(u.container_style=d),p&&(u.active_dot_color=p),g&&(u.inactive_dot_color=g),{type:"OnboardDot",attributes:Object.keys(u).length?u:void 0,children:void 0}}function mapFooterFromGeneralComponents(e){const t=e.find(e=>"footer-layout"===e?.layout);if(!t)return null;const i=t?.attributes?.texts||[],r=[];let n,o;for(const e of i)if("Text"===e?.layout){const t=e?.attributes?.text_localization_key||"",i=e?.attributes?.text_color||void 0;n||(n=t),o||"string"!=typeof i||(o=i);const a=e?.attributes?.linkedwords||[];for(const e of a)if("LinkedWords"===e?.layout){const t=e?.attributes?.linked_word_localization_key,i=e?.attributes?.linked_word_color,n=e?.attributes?.page;r.push({text_key:t,color:i,page:n})}}const a={gap:8};n&&(a.textLocalizationKey=n),o&&(a.color=o);const s=r[0],l=r[1];return s&&(s.text_key&&(a.linkedWordFirstLocalizationKey=s.text_key),s.color&&(a.linkedWordFirstColor=s.color),s.page&&(a.linkedWordFirstPage=s.page)),l&&(l.text_key&&(a.linkedWordSecondLocalizationKey=l.text_key),l.color&&(a.linkedWordSecondColor=l.color),l.page&&(a.linkedWordSecondPage=l.page)),{type:"OnboardFooter",attributes:a,children:void 0}}function isNodeData(e){return null!=e&&(!Array.isArray(e)&&("string"!=typeof e&&("object"==typeof e&&("type"in e&&"children"in e))))}function querySelector(e,t){if(null==e)return[];if(!t)return[];const i=t.startsWith("#"),r=i?t.slice(1):void 0,n=[],o=e=>{var a;if(null!=e)if(Array.isArray(e))for(const t of e)o(t);else"string"!=typeof e&&isNodeData(e)&&(a=e,(i?a.key===r:a.type===t)&&n.push(e),o(e.children))};return o(e),n}function setBuilderStringChildrenField(e){useRenderStore.getState().setRenderStringChildrenField(e)}function setBuilderLocalizationConfig(e){useRenderStore.getState().setLocalizationApiConfig(e)}function setBuilderLanguageColumns(e){useRenderStore.getState().setLanguageColumns(e)}exports.BuilderProvider=BuilderProvider,exports.DebugJsonPage=DebugJsonPage,exports.LocalizationParamsProvider=LocalizationParamsProvider,exports.PERIOD_LOCALIZATION_KEYS=PERIOD_LOCALIZATION_KEYS,exports.ParamsProvider=ParamsProvider,exports.ProjectPage=ProjectPage,exports.RenderNode=RenderNode$1,exports.TRIBE_ASSETS_BASE_URL=TRIBE_ASSETS_BASE_URL,exports.allcomponentNames=allcomponentNames,exports.analyseAndProccess=analyseAndProccess,exports.analyseNode=analyseNode,exports.buildPaywallLocalizationParams=buildPaywallLocalizationParams,exports.calculateDiscount=calculateDiscount,exports.calculatePricePerMonth=calculatePricePerMonth,exports.calculatePricePerYear=calculatePricePerYear,exports.convertIOSPeriodUnit=convertIOSPeriodUnit,exports.defaultLocalization=defaultLocalization,exports.defaultProjectColors=defaultProjectColors,exports.defaultTheme=defaultTheme,exports.extractAndroidParams=extractAndroidParams,exports.extractIOSParams=extractIOSParams,exports.extractPrice=extractPrice,exports.getArrayItemType=getArrayItemType,exports.getAttributeMeta=getAttributeMeta,exports.getAttributeSchema=getAttributeSchema,exports.getDefaultDevice=getDefaultDevice,exports.getDefaultProject=getDefaultProject,exports.getDefaultsForType=getDefaultsForType,exports.getDevices=getDevices,exports.getImage=getImage,exports.getMeta=getMeta,exports.getMockProducts=getMockProducts,exports.getMockProductsByPreset=getMockProductsByPreset,exports.getPatternByType=getPatternByType,exports.getPeriodLocalizationKey=getPeriodLocalizationKey,exports.getSamples=getSamples,exports.getTypeSchema=getTypeSchema,exports.isEmptyObject=isEmptyObject$1,exports.isNodeArray=isNodeArray,exports.isNodeNullOrUndefined=isNodeNullOrUndefined,exports.isNodeString=isNodeString,exports.isPrimitiveType=isPrimitiveType,exports.mergeLocalization=mergeLocalization,exports.mergeProjectColors=mergeProjectColors,exports.novaToJson=novaToJson,exports.parseBillingPeriod=parseBillingPeriod,exports.parseColor=parseColor,exports.parseTribeAssetName=parseTribeAssetName,exports.patterns=patterns$1,exports.querySelector=querySelector,exports.resolveImageSrc=resolveImageSrc,exports.setBuilderLanguageColumns=setBuilderLanguageColumns,exports.setBuilderLocalizationConfig=setBuilderLocalizationConfig,exports.setBuilderStringChildrenField=setBuilderStringChildrenField,exports.useBuilderParams=useBuilderParams,exports.useCalculateLocalizedPrice=useCalculateLocalizedPrice,exports.useChangeDelayByPaywall=useChangeDelayByPaywall,exports.useDiscountRate=useDiscountRate,exports.useExtractImageStyle=useExtractImageStyle,exports.useExtractTextStyle=useExtractTextStyle,exports.useExtractViewStyle=useExtractViewStyle,exports.useLocalizationParams=useLocalizationParams,exports.useLocalize=useLocalize,exports.useNode=useNode,exports.useParams=useParams,exports.usePaywallLocalizationParams=usePaywallLocalizationParams,exports.useRenderStore=useRenderStore;
33
33
  //# sourceMappingURL=index.web.cjs.js.map