{
  "version": 3,
  "sources": ["ssg:https://app.framerstatic.com/framer-motion-esm-shim.Q6MCFYLM.js", "ssg:https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js", "ssg:https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js", "ssg:https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js", "ssg:https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js", "ssg:https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js", "ssg:https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js", "ssg:https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js", "ssg:https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js", "ssg:https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js"],
  "sourcesContent": ["import\"https://app.framerstatic.com/chunk-XVZMMKAV.js\";var{AnimatePresence:e,AnimateSharedLayout:o,AnimationType:t,DeprecatedLayoutGroupContext:n,DragControls:a,FlatTree:i,LayoutGroup:s,LayoutGroupContext:r,LazyMotion:u,MotionConfig:l,MotionConfigContext:m,MotionContext:c,MotionValue:p,PresenceContext:C,Reorder:d,SwitchLayoutGroupContext:M,addPointerEvent:V,addScaleCorrector:g,animate:y,animateVisualElement:f,animationControls:x,animations:S,calcLength:A,checkTargetForNewValues:L,createBox:T,createDomMotionComponent:D,createMotionComponent:E,domAnimation:P,domMax:h,filterProps:w,isBrowser:v,isDragActive:I,isMotionComponent:F,isMotionValue:G,isValidMotionProp:R,m:U,makeUseVisualState:k,motion:B,motionValue:b,resolveMotionValue:j,transform:z,unwrapMotionComponent:H,useAnimation:N,useAnimationControls:W,useAnimationFrame:q,useCycle:J,useDeprecatedAnimatedState:K,useDeprecatedInvertedScale:O,useDomEvent:Q,useDragControls:X,useElementScroll:Y,useForceUpdate:Z,useInView:_,useInstantLayoutTransition:$,useInstantTransition:ee,useIsPresent:oe,useIsomorphicLayoutEffect:te,useMotionTemplate:ne,useMotionValue:ae,usePresence:ie,useReducedMotion:se,useReducedMotionConfig:re,useResetProjection:ue,useScroll:le,useSpring:me,useTime:ce,useTransform:pe,useUnmountEffect:Ce,useVelocity:de,useViewportScroll:Me,useVisualElementContext:Ve,useWillChange:ge,visualElement:ye,wrapHandler:fe}=globalThis.Framer;export{e as AnimatePresence,o as AnimateSharedLayout,t as AnimationType,n as DeprecatedLayoutGroupContext,a as DragControls,i as FlatTree,s as LayoutGroup,r as LayoutGroupContext,u as LazyMotion,l as MotionConfig,m as MotionConfigContext,c as MotionContext,p as MotionValue,C as PresenceContext,d as Reorder,M as SwitchLayoutGroupContext,V as addPointerEvent,g as addScaleCorrector,y as animate,f as animateVisualElement,x as animationControls,S as animations,A as calcLength,L as checkTargetForNewValues,T as createBox,D as createDomMotionComponent,E as createMotionComponent,P as domAnimation,h as domMax,w as filterProps,v as isBrowser,I as isDragActive,F as isMotionComponent,G as isMotionValue,R as isValidMotionProp,U as m,k as makeUseVisualState,B as motion,b as motionValue,j as resolveMotionValue,z as transform,H as unwrapMotionComponent,N as useAnimation,W as useAnimationControls,q as useAnimationFrame,J as useCycle,K as useDeprecatedAnimatedState,O as useDeprecatedInvertedScale,Q as useDomEvent,X as useDragControls,Y as useElementScroll,Z as useForceUpdate,_ as useInView,$ as useInstantLayoutTransition,ee as useInstantTransition,oe as useIsPresent,te as useIsomorphicLayoutEffect,ne as useMotionTemplate,ae as useMotionValue,ie as usePresence,se as useReducedMotion,re as useReducedMotionConfig,ue as useResetProjection,le as useScroll,me as useSpring,ce as useTime,pe as useTransform,Ce as useUnmountEffect,de as useVelocity,Me as useViewportScroll,Ve as useVisualElementContext,ge as useWillChange,ye as visualElement,fe as wrapHandler};\n//# sourceMappingURL=https://app.framerstatic.com/framer-motion-esm-shim.Q6MCFYLM.js.map\n", "import { ControlType } from \"framer\";\nexport const fontStack = `\"Inter\", system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\"`;\nexport const containerStyles = {\n  position: \"relative\",\n  width: \"100%\",\n  height: \"100%\",\n  display: \"flex\",\n  justifyContent: \"center\",\n  alignItems: \"center\"\n};\nexport const emptyStateStyle = { ...containerStyles,\n  borderRadius: 6,\n  background: \"rgba(136, 85, 255, 0.3)\",\n  color: \"#85F\",\n  border: \"1px dashed #85F\",\n  flexDirection: \"column\"\n};\nexport const defaultEvents = {\n  onClick: {\n    type: ControlType.EventHandler\n  },\n  onMouseEnter: {\n    type: ControlType.EventHandler\n  },\n  onMouseLeave: {\n    type: ControlType.EventHandler\n  }\n};\nexport const fontSizeOptions = {\n  type: ControlType.Number,\n  title: \"Font Size\",\n  min: 2,\n  max: 200,\n  step: 1,\n  displayStepper: true\n};\nexport const fontControls = {\n  font: {\n    type: ControlType.Boolean,\n    title: \"Font\",\n    defaultValue: false,\n    disabledTitle: \"Default\",\n    enabledTitle: \"Custom\"\n  },\n  fontFamily: {\n    type: ControlType.String,\n    title: \"Family\",\n    placeholder: \"Inter\",\n    hidden: ({\n      font\n    }) => !font\n  },\n  fontWeight: {\n    type: ControlType.Enum,\n    title: \"Weight\",\n    options: [100, 200, 300, 400, 500, 600, 700, 800, 900],\n    optionTitles: [\"Thin\", \"Extra-light\", \"Light\", \"Regular\", \"Medium\", \"Semi-bold\", \"Bold\", \"Extra-bold\", \"Black\"],\n    hidden: ({\n      font\n    }) => !font\n  }\n}; // @TODO check if we're missing anything here \u2014 there doesn't seem to be a reliable browser API for this\n\nexport const localeOptions = {\n  af: \"Afrikaans\",\n  sq: \"Albanian\",\n  an: \"Aragonese\",\n  ar: \"Arabic (Standard)\",\n  \"ar-dz\": \"Arabic (Algeria)\",\n  \"ar-bh\": \"Arabic (Bahrain)\",\n  \"ar-eg\": \"Arabic (Egypt)\",\n  \"ar-iq\": \"Arabic (Iraq)\",\n  \"ar-jo\": \"Arabic (Jordan)\",\n  \"ar-kw\": \"Arabic (Kuwait)\",\n  \"ar-lb\": \"Arabic (Lebanon)\",\n  \"ar-ly\": \"Arabic (Libya)\",\n  \"ar-ma\": \"Arabic (Morocco)\",\n  \"ar-om\": \"Arabic (Oman)\",\n  \"ar-qa\": \"Arabic (Qatar)\",\n  \"ar-sa\": \"Arabic (Saudi Arabia)\",\n  \"ar-sy\": \"Arabic (Syria)\",\n  \"ar-tn\": \"Arabic (Tunisia)\",\n  \"ar-ae\": \"Arabic (U.A.E.)\",\n  \"ar-ye\": \"Arabic (Yemen)\",\n  hy: \"Armenian\",\n  as: \"Assamese\",\n  ast: \"Asturian\",\n  az: \"Azerbaijani\",\n  eu: \"Basque\",\n  bg: \"Bulgarian\",\n  be: \"Belarusian\",\n  bn: \"Bengali\",\n  bs: \"Bosnian\",\n  br: \"Breton\",\n  my: \"Burmese\",\n  ca: \"Catalan\",\n  ch: \"Chamorro\",\n  ce: \"Chechen\",\n  zh: \"Chinese\",\n  \"zh-hk\": \"Chinese (Hong Kong)\",\n  \"zh-cn\": \"Chinese (PRC)\",\n  \"zh-sg\": \"Chinese (Singapore)\",\n  \"zh-tw\": \"Chinese (Taiwan)\",\n  cv: \"Chuvash\",\n  co: \"Corsican\",\n  cr: \"Cree\",\n  hr: \"Croatian\",\n  cs: \"Czech\",\n  da: \"Danish\",\n  nl: \"Dutch (Standard)\",\n  \"nl-be\": \"Dutch (Belgian)\",\n  en: \"English\",\n  \"en-au\": \"English (Australia)\",\n  \"en-bz\": \"English (Belize)\",\n  \"en-ca\": \"English (Canada)\",\n  \"en-ie\": \"English (Ireland)\",\n  \"en-jm\": \"English (Jamaica)\",\n  \"en-nz\": \"English (New Zealand)\",\n  \"en-ph\": \"English (Philippines)\",\n  \"en-za\": \"English (South Africa)\",\n  \"en-tt\": \"English (Trinidad & Tobago)\",\n  \"en-gb\": \"English (United Kingdom)\",\n  \"en-us\": \"English (United States)\",\n  \"en-zw\": \"English (Zimbabwe)\",\n  eo: \"Esperanto\",\n  et: \"Estonian\",\n  fo: \"Faeroese\",\n  fa: \"Farsi\",\n  fj: \"Fijian\",\n  fi: \"Finnish\",\n  fr: \"French (Standard)\",\n  \"fr-be\": \"French (Belgium)\",\n  \"fr-ca\": \"French (Canada)\",\n  \"fr-fr\": \"French (France)\",\n  \"fr-lu\": \"French (Luxembourg)\",\n  \"fr-mc\": \"French (Monaco)\",\n  \"fr-ch\": \"French (Switzerland)\",\n  fy: \"Frisian\",\n  fur: \"Friulian\",\n  gd: \"Gaelic (Scots)\",\n  \"gd-ie\": \"Gaelic (Irish)\",\n  gl: \"Galacian\",\n  ka: \"Georgian\",\n  de: \"German (Standard)\",\n  \"de-at\": \"German (Austria)\",\n  \"de-de\": \"German (Germany)\",\n  \"de-li\": \"German (Liechtenstein)\",\n  \"de-lu\": \"German (Luxembourg)\",\n  \"de-ch\": \"German (Switzerland)\",\n  el: \"Greek\",\n  gu: \"Gujurati\",\n  ht: \"Haitian\",\n  he: \"Hebrew\",\n  hi: \"Hindi\",\n  hu: \"Hungarian\",\n  is: \"Icelandic\",\n  id: \"Indonesian\",\n  iu: \"Inuktitut\",\n  ga: \"Irish\",\n  it: \"Italian (Standard)\",\n  \"it-ch\": \"Italian (Switzerland)\",\n  ja: \"Japanese\",\n  kn: \"Kannada\",\n  ks: \"Kashmiri\",\n  kk: \"Kazakh\",\n  km: \"Khmer\",\n  ky: \"Kirghiz\",\n  tlh: \"Klingon\",\n  ko: \"Korean\",\n  \"ko-kp\": \"Korean (North Korea)\",\n  \"ko-kr\": \"Korean (South Korea)\",\n  la: \"Latin\",\n  lv: \"Latvian\",\n  lt: \"Lithuanian\",\n  lb: \"Luxembourgish\",\n  mk: \"FYRO Macedonian\",\n  ms: \"Malay\",\n  ml: \"Malayalam\",\n  mt: \"Maltese\",\n  mi: \"Maori\",\n  mr: \"Marathi\",\n  mo: \"Moldavian\",\n  nv: \"Navajo\",\n  ng: \"Ndonga\",\n  ne: \"Nepali\",\n  no: \"Norwegian\",\n  nb: \"Norwegian (Bokmal)\",\n  nn: \"Norwegian (Nynorsk)\",\n  oc: \"Occitan\",\n  or: \"Oriya\",\n  om: \"Oromo\",\n  \"fa-ir\": \"Persian/Iran\",\n  pl: \"Polish\",\n  pt: \"Portuguese\",\n  \"pt-br\": \"Portuguese (Brazil)\",\n  pa: \"Punjabi\",\n  \"pa-in\": \"Punjabi (India)\",\n  \"pa-pk\": \"Punjabi (Pakistan)\",\n  qu: \"Quechua\",\n  rm: \"Rhaeto-Romanic\",\n  ro: \"Romanian\",\n  \"ro-mo\": \"Romanian (Moldavia)\",\n  ru: \"Russian\",\n  \"ru-mo\": \"Russian (Moldavia)\",\n  sz: \"Sami (Lappish)\",\n  sg: \"Sango\",\n  sa: \"Sanskrit\",\n  sc: \"Sardinian\",\n  sd: \"Sindhi\",\n  si: \"Singhalese\",\n  sr: \"Serbian\",\n  sk: \"Slovak\",\n  sl: \"Slovenian\",\n  so: \"Somani\",\n  sb: \"Sorbian\",\n  es: \"Spanish\",\n  \"es-ar\": \"Spanish (Argentina)\",\n  \"es-bo\": \"Spanish (Bolivia)\",\n  \"es-cl\": \"Spanish (Chile)\",\n  \"es-co\": \"Spanish (Colombia)\",\n  \"es-cr\": \"Spanish (Costa Rica)\",\n  \"es-do\": \"Spanish (Dominican Republic)\",\n  \"es-ec\": \"Spanish (Ecuador)\",\n  \"es-sv\": \"Spanish (El Salvador)\",\n  \"es-gt\": \"Spanish (Guatemala)\",\n  \"es-hn\": \"Spanish (Honduras)\",\n  \"es-mx\": \"Spanish (Mexico)\",\n  \"es-ni\": \"Spanish (Nicaragua)\",\n  \"es-pa\": \"Spanish (Panama)\",\n  \"es-py\": \"Spanish (Paraguay)\",\n  \"es-pe\": \"Spanish (Peru)\",\n  \"es-pr\": \"Spanish (Puerto Rico)\",\n  \"es-es\": \"Spanish (Spain)\",\n  \"es-uy\": \"Spanish (Uruguay)\",\n  \"es-ve\": \"Spanish (Venezuela)\",\n  sx: \"Sutu\",\n  sw: \"Swahili\",\n  sv: \"Swedish\",\n  \"sv-fi\": \"Swedish (Finland)\",\n  \"sv-sv\": \"Swedish (Sweden)\",\n  ta: \"Tamil\",\n  tt: \"Tatar\",\n  te: \"Teluga\",\n  th: \"Thai\",\n  tig: \"Tigre\",\n  ts: \"Tsonga\",\n  tn: \"Tswana\",\n  tr: \"Turkish\",\n  tk: \"Turkmen\",\n  uk: \"Ukrainian\",\n  hsb: \"Upper Sorbian\",\n  ur: \"Urdu\",\n  ve: \"Venda\",\n  vi: \"Vietnamese\",\n  vo: \"Volapuk\",\n  wa: \"Walloon\",\n  cy: \"Welsh\",\n  xh: \"Xhosa\",\n  ji: \"Yiddish\",\n  zu: \"Zulu\"\n};\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"fontSizeOptions\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"fontControls\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"localeOptions\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"fontStack\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"emptyStateStyle\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"containerStyles\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"defaultEvents\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./constants.map", "import { useIsInCurrentNavigationTarget } from \"framer\";\nimport { useEffect } from \"react\";\nexport function useOnEnter(onEnter, enabled) {\n  return useOnSpecificTargetChange(true, onEnter, enabled);\n}\nexport function useOnExit(onExit, enabled) {\n  return useOnSpecificTargetChange(false, onExit, enabled);\n}\n\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n  const isInTarget = useIsInCurrentNavigationTarget();\n  useEffect(() => {\n    if (enabled && isInTarget === goal) callback();\n  }, [isInTarget]);\n}\n\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"useOnEnter\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useOnExit\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./useOnNavigationTargetChange.map", "import { useMemo } from \"react\";\nexport const isBrowserSafari = () => {\n  if (typeof navigator !== `undefined`) {\n    const userAgent = navigator.userAgent.toLowerCase();\n    const isSafari = (userAgent.indexOf(\"safari\") > -1 || userAgent.indexOf(\"framermobile\") > -1 || userAgent.indexOf(\"framerx\") > -1) && userAgent.indexOf(\"chrome\") < 0;\n    return isSafari;\n  } else return false;\n};\nexport const useIsBrowserSafari = () => useMemo(() => isBrowserSafari(), []);\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"useIsBrowserSafari\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"isBrowserSafari\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./isBrowser.map", "import { MotionValue } from \"framer\";\nexport const isMotionValue = v => v instanceof MotionValue;\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"isMotionValue\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./isMotionValue.map", "import { useRef } from \"react\";\n/**\n * Creates a constant value over the lifecycle of a component.\n *\n * Even if `useMemo` is provided an empty array as its final argument, it doesn't offer\n * a guarantee that it won't re-run for performance reasons later on. By using `useConstant`\n * you can ensure that initialisers don't execute twice or more.\n */\n\nexport function useConstant(init) {\n  const ref = useRef(null);\n\n  if (ref.current === null) {\n    ref.current = init();\n  }\n\n  return ref.current;\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"useConstant\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./useConstant.map", "import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\"; // @ts-ignore\n\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\"; // @ts-ignore\n\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n  var ref; // Put options on a local ref\n  // Might wanna just memo instead but it works for now\n\n  const optionsRef = useRef(options);\n  const animation = useRef();\n  const didInitialMount = useRef(false);\n  const isOnCanvas = RenderTarget.current() === RenderTarget.canvas; // in-progress - trying to figure out effect hooks\n\n  const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : []; // Memoize the onChange handler\n\n  const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [...onChangeDeps]); // Optionally scale the value from props\n\n  const transformer = useCallback(value => ((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value, []); // Create new MotionValue from inputValue\n\n  const value = useConstant(() => isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))); // Setting value from prop change\n\n  useEffect(() => {\n    if (!isMotionValue(inputValue) && didInitialMount.current) {\n      var ref1, ref2;\n      const newValue = transformer(inputValue);\n      (ref1 = animation.current) === null || ref1 === void 0 ? void 0 : ref1.stop(); // Call change callback\n\n      if (onChange) onChange(newValue, value); // Trigger animation to new value\n\n      if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n        var ref3; // @ts-ignore\n\n        animation.current = animate(value, newValue, (ref3 = optionsRef.current) === null || ref3 === void 0 ? void 0 : ref3.transition);\n      } else {\n        value.set(newValue);\n      }\n    }\n\n    didInitialMount.current = true;\n  }, [inputValue, ...onChangeDeps]);\n  return value;\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"useAutoMotionValue\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n};", "import { useEffect } from \"react\"; //@ts-ignore\n\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\nexport function useOnChange(value, callback) {\n  useEffect(() => // @ts-ignore this should be detected as a MV :shrug:\n  isMotionValue(value) ? value.onChange(callback) : undefined);\n}\nexport function useMultiOnChange(values, handler) {\n  useEffect(() => {\n    const subscriptions = values.map(value => value.onChange(handler));\n    return () => subscriptions.forEach(unsubscribe => unsubscribe());\n  });\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"Subscriber\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useOnChange\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useMultiOnChange\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./useOnChange.map", "import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n  const currentRenderTarget = useMemo(() => RenderTarget.current(), []);\n  return currentRenderTarget;\n}\nexport function useIsInPreview() {\n  const inPreview = useMemo(() => RenderTarget.current() === RenderTarget.preview, []);\n  return inPreview;\n}\nexport function useIsOnCanvas() {\n  const onCanvas = useMemo(() => RenderTarget.current() === RenderTarget.canvas, []);\n  return onCanvas;\n}\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"useIsInPreview\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useRenderTarget\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useIsOnCanvas\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./useRenderTarget.map", "import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n  const {\n    borderRadius,\n    isMixedBorderRadius,\n    topLeftRadius,\n    topRightRadius,\n    bottomRightRadius,\n    bottomLeftRadius\n  } = props;\n  const radiusValue = useMemo(() => isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`, [borderRadius, isMixedBorderRadius, topLeftRadius, topRightRadius, bottomRightRadius, bottomLeftRadius]);\n  return radiusValue;\n}\nexport const borderRadiusControl = {\n  borderRadius: {\n    title: \"Radius\",\n    type: ControlType.FusedNumber,\n    toggleKey: \"isMixedBorderRadius\",\n    toggleTitles: [\"Radius\", \"Radius per corner\"],\n    valueKeys: [\"topLeftRadius\", \"topRightRadius\", \"bottomRightRadius\", \"bottomLeftRadius\"],\n    valueLabels: [\"TL\", \"TR\", \"BR\", \"BL\"],\n    min: 0\n  }\n};\nexport function usePadding(props) {\n  const {\n    padding,\n    paddingPerSide,\n    paddingTop,\n    paddingRight,\n    paddingBottom,\n    paddingLeft\n  } = props;\n  const paddingValue = useMemo(() => paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding, [padding, paddingPerSide, paddingTop, paddingRight, paddingBottom, paddingLeft]);\n  return paddingValue;\n}\nexport const paddingControl = {\n  padding: {\n    type: ControlType.FusedNumber,\n    toggleKey: \"paddingPerSide\",\n    toggleTitles: [\"Padding\", \"Padding per side\"],\n    valueKeys: [\"paddingTop\", \"paddingRight\", \"paddingBottom\", \"paddingLeft\"],\n    valueLabels: [\"T\", \"R\", \"B\", \"L\"],\n    min: 0,\n    title: \"Padding\"\n  }\n};\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"borderRadiusControl\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"useRadius\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"RadiusProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"PaddingProps\": {\n      \"type\": \"tsType\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"usePadding\": {\n      \"type\": \"function\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"paddingControl\": {\n      \"type\": \"variable\",\n      \"annotations\": {\n        \"framerContractVersion\": \"1\"\n      }\n    }\n  }\n}; //# sourceMappingURL=./propUtils.map"],
  "mappings": "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",
  "names": ["e", "o", "t", "n", "a", "i", "s", "r", "u", "l", "m", "c", "p", "C", "d", "M", "V", "g", "y", "f", "x", "S", "A", "L", "T", "D", "E", "P", "h", "w", "v", "I", "F", "G", "R", "U", "k", "B", "b", "j", "z", "H", "N", "W", "q", "J", "K", "O", "Q", "X", "Y", "Z", "_", "$", "ee", "oe", "te", "ne", "ae", "ie", "se", "re", "ue", "le", "me", "ce", "pe", "Ce", "de", "Me", "Ve", "ge", "ye", "fe", "containerStyles", "emptyStateStyle", "defaultEvents", "Po", "fontSizeOptions", "fontControls", "font", "useOnEnter", "onEnter", "enabled", "useOnSpecificTargetChange", "useOnExit", "onExit", "goal", "callback", "isInTarget", "Xi", "ue", "isBrowserSafari", "navigator", "userAgent", "useIsBrowserSafari", "se", "isMotionValue", "v", "hr", "useConstant", "init", "ref", "pe", "useAutoMotionValue", "inputValue", "options", "ref", "optionsRef", "pe", "animation", "didInitialMount", "isOnCanvas", "X", "onChangeDeps", "onChange", "te", "transformer", "value", "useConstant", "isMotionValue", "De", "ue", "ref1", "ref2", "newValue", "ref3", "kc", "useOnChange", "value", "callback", "ue", "isMotionValue", "useIsOnCanvas", "se", "X", "useRadius", "props", "borderRadius", "isMixedBorderRadius", "topLeftRadius", "topRightRadius", "bottomRightRadius", "bottomLeftRadius", "se", "borderRadiusControl", "Po", "paddingControl", "Po"]
}
