{"version":3,"file":"CalendarButton.DMzpmCit.mjs","names":["useMemo","useState","useRef","useState","useRef"],"sources":["https:/framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js","https:/framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js","https:/framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js","https:/framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js","https:/framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js","https:/framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js","https:/framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js","https:/framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js","https:/framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js","https:/framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js","https:/framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js","https:/framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js","https:/framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js","https:/framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js","https:/framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js","https:/framer.com/m/framer/default-utils.js","https:/framerusercontent.com/modules/o1PI5S8YtkA5bP5g4dFz/cAPMVEI6osbJ1UvICgTq/Embed.js","https:/framerusercontent.com/modules/UQLQ0VC1wsfbIBwGeaTl/5PgldqIvxei7cfm1m7dP/CalendarButton.js"],"sourcesContent":["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 = {\n    ...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: ({ font  })=>!font\n    },\n    fontWeight: {\n        type: ControlType.Enum,\n        title: \"Weight\",\n        options: [\n            100,\n            200,\n            300,\n            400,\n            500,\n            600,\n            700,\n            800,\n            900\n        ],\n        optionTitles: [\n            \"Thin\",\n            \"Extra-light\",\n            \"Light\",\n            \"Regular\",\n            \"Medium\",\n            \"Semi-bold\",\n            \"Bold\",\n            \"Extra-bold\",\n            \"Black\", \n        ],\n        hidden: ({ font  })=>!font\n    }\n};\n// @TODO check if we're missing anything here — there doesn't seem to be a reliable browser API for this\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};\n\nexport const __FramerMetadata__ = {\"exports\":{\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\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}\nfunction useOnSpecificTargetChange(goal, callback, enabled = true) {\n    const isInTarget = useIsInCurrentNavigationTarget();\n    useEffect(()=>{\n        if (enabled && isInTarget === goal) callback();\n    }, [\n        isInTarget\n    ]);\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useOnEnter\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnNavigationTargetChange.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 */ export function useConstant(init) {\n    const ref = useRef(null);\n    if (ref.current === null) {\n        ref.current = init();\n    }\n    return ref.current;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useConstant.map","import { Color } from \"framer\";\nexport function colorFromToken(color) {\n    if (color.startsWith(\"var(--token-\")) return \"rgb\" + color.split(\") /*\")[0].split(\", rgb\")[1];\n    return color;\n}\nexport function colorTokentoValue(color) {\n    return Color(colorFromToken(color)).toValue();\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"colorFromToken\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./colorFromToken.map","import { MotionValue } from \"framer\";\nexport const isMotionValue = (v)=>v instanceof MotionValue\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isMotionValue.map","import * as React from \"react\";\nconst letters = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\";\nconst l = ()=>letters[Math.floor(Math.random() * letters.length)]\n;\nexport const randomID = ()=>l() + l() + l() + l() + l() + l() + l() + l() + l()\n;\nfunction createUniqueClass(suffix) {\n    return `framer-${suffix}-${randomID()}`;\n}\nexport function useUniqueClassName(suffix, deps) {\n    const [className, setClassName] = React.useState(createUniqueClass(suffix));\n    React.useEffect(()=>{\n        setClassName(createUniqueClass(suffix));\n    }, [\n        suffix,\n        ...deps\n    ]);\n    return className;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useUniqueClassName\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useUniqueClassName.map","import { ControlType } from \"framer\";\n// I realize this only applies to select right now\n// but we can work on it in here\nexport function getVariantControls(Component, variant, additionalControls = {\n}) {\n    return {\n        [`${variant}TextColor`]: {\n            type: ControlType.Color,\n            title: \"Text Color\",\n            defaultValue: Component.defaultProps[`${variant}TextColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}IconColor`]: {\n            type: ControlType.Color,\n            title: \"Icon Color\",\n            defaultValue: Component.defaultProps[`${variant}IconColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BackgroundColor`]: {\n            type: ControlType.Color,\n            title: \"Bg Color\",\n            defaultValue: Component.defaultProps[`${variant}BackgroundColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderColor`]: {\n            type: ControlType.Color,\n            title: \"Border Color\",\n            defaultValue: Component.defaultProps[`${variant}BorderColor`],\n            hidden: (props)=>props.variant !== variant\n        },\n        [`${variant}BorderWidth`]: {\n            type: ControlType.Number,\n            title: \" \",\n            min: 0,\n            max: 5,\n            displayStepper: true,\n            defaultValue: Component.defaultProps[`${variant}BorderWidth`],\n            hidden: (props)=>props.variant !== variant\n        },\n        ...additionalControls\n    };\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"getVariantControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./variantUtils.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()\n    , [])\n;\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./isBrowser.map","import { useEffect } from \"react\";\n//@ts-ignore\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    );\n}\nexport function useMultiOnChange(values, handler) {\n    useEffect(()=>{\n        const subscriptions = values.map((value)=>value.onChange(handler)\n        );\n        return ()=>subscriptions.forEach((unsubscribe)=>unsubscribe()\n            )\n        ;\n    });\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"Subscriber\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useOnChange.map","import { useCallback, useEffect, useRef } from \"react\";\nimport { motionValue, animate, RenderTarget } from \"framer\";\n// @ts-ignore\nimport { isMotionValue } from \"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";\n// @ts-ignore\nimport { useConstant } from \"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";\nexport function useAutoMotionValue(inputValue, options) {\n    var ref;\n    // Put options on a local ref\n    // Might wanna just memo instead but it works for now\n    const optionsRef = useRef(options);\n    const animation = useRef();\n    const didInitialMount = useRef(false);\n    const isOnCanvas = RenderTarget.current() === RenderTarget.canvas;\n    // in-progress - trying to figure out effect hooks\n    const onChangeDeps = (options === null || options === void 0 ? void 0 : options.onChangeDeps) ? options.onChangeDeps : [];\n    // Memoize the onChange handler\n    const onChange = useCallback(options === null || options === void 0 ? void 0 : options.onChange, [\n        ...onChangeDeps, \n    ]);\n    // Optionally scale the value from props\n    const transformer = useCallback((value)=>((ref = optionsRef.current) === null || ref === void 0 ? void 0 : ref.transform) ? optionsRef.current.transform(value) : value\n    , []);\n    // Create new MotionValue from inputValue\n    const value = useConstant(()=>isMotionValue(inputValue) ? inputValue : motionValue(transformer(inputValue))\n    );\n    // Setting value from prop change\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();\n            // Call change callback\n            if (onChange) onChange(newValue, value);\n            // Trigger animation to new value\n            if (((ref2 = optionsRef.current) === null || ref2 === void 0 ? void 0 : ref2.animate) && !isOnCanvas) {\n                var ref3;\n                // @ts-ignore\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        didInitialMount.current = true;\n    }, [\n        inputValue,\n        ...onChangeDeps\n    ]);\n    return value;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useAutoMotionValue\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","// @ts-ignore\nimport{fontStore}from\"framer\";import{useEffect}from\"react\";import{fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";const fontWeights={100:\"Thin\",200:\"Extra-light\",300:\"Light\",400:\"Regular\",500:\"Medium\",600:\"Semi-bold\",700:\"Bold\",800:\"Extra-bold\",900:\"Black\"};export function useFontControls(props){const{fontFamily=\"Inter\",fontSize=16,fontWeight=400,font=false}=props;const fontWeightName=fontWeights[fontWeight];const customFontStack=`\"${fontFamily} ${fontWeightName}\", \"${fontFamily}\", ${fontStack}`;const fontFamilyStyle=fontFamily?{fontSize,fontWeight,fontFamily:customFontStack}:{fontSize,fontWeight};const fetchCustomFonts=async()=>{await fontStore.loadWebFontsFromSelectors([`CUSTOM;${fontFamily}`,`CUSTOM;${fontFamily} ${fontWeightName}`,`GF;${fontFamily}-${fontWeightName.toLowerCase()}`,]).catch(e=>console.error(e));};useEffect(()=>{if(font)fetchCustomFonts();},[font,fontFamily,fontWeight]);return fontFamilyStyle;}\nexport const __FramerMetadata__ = {\"exports\":{\"useFontControls\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useFontControls.map","import { useMemo } from \"react\";\nimport { RenderTarget } from \"framer\";\nexport function useRenderTarget() {\n    const currentRenderTarget = useMemo(()=>RenderTarget.current()\n    , []);\n    return currentRenderTarget;\n}\nexport function useIsInPreview() {\n    const inPreview = useMemo(()=>RenderTarget.current() === RenderTarget.preview\n    , []);\n    return inPreview;\n}\nexport function useIsOnCanvas() {\n    const onCanvas = useMemo(()=>RenderTarget.current() === RenderTarget.canvas\n    , []);\n    return onCanvas;\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useIsInPreview\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useRenderTarget.map","import * as React from \"react\";\nexport function useControlledState(value) {\n    const [controlledValue, setValue] = React.useState(value);\n    React.useEffect(()=>{\n        setValue(value);\n    }, [\n        value\n    ]);\n    return [\n        controlledValue,\n        setValue\n    ];\n}\n\nexport const __FramerMetadata__ = {\"exports\":{\"useControlledState\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./useControlledState.map","import { useMemo } from \"react\";\nimport { ControlType } from \"framer\";\nexport function useRadius(props) {\n    const { borderRadius , isMixedBorderRadius , topLeftRadius , topRightRadius , bottomRightRadius , bottomLeftRadius ,  } = props;\n    const radiusValue = useMemo(()=>isMixedBorderRadius ? `${topLeftRadius}px ${topRightRadius}px ${bottomRightRadius}px ${bottomLeftRadius}px` : `${borderRadius}px`\n    , [\n        borderRadius,\n        isMixedBorderRadius,\n        topLeftRadius,\n        topRightRadius,\n        bottomRightRadius,\n        bottomLeftRadius, \n    ]);\n    return radiusValue;\n}\nexport const borderRadiusControl = {\n    borderRadius: {\n        title: \"Radius\",\n        type: ControlType.FusedNumber,\n        toggleKey: \"isMixedBorderRadius\",\n        toggleTitles: [\n            \"Radius\",\n            \"Radius per corner\"\n        ],\n        valueKeys: [\n            \"topLeftRadius\",\n            \"topRightRadius\",\n            \"bottomRightRadius\",\n            \"bottomLeftRadius\", \n        ],\n        valueLabels: [\n            \"TL\",\n            \"TR\",\n            \"BR\",\n            \"BL\"\n        ],\n        min: 0\n    }\n};\nexport function usePadding(props) {\n    const { padding , paddingPerSide , paddingTop , paddingRight , paddingBottom , paddingLeft ,  } = props;\n    const paddingValue = useMemo(()=>paddingPerSide ? `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px` : padding\n    , [\n        padding,\n        paddingPerSide,\n        paddingTop,\n        paddingRight,\n        paddingBottom,\n        paddingLeft, \n    ]);\n    return paddingValue;\n}\nexport const paddingControl = {\n    padding: {\n        type: ControlType.FusedNumber,\n        toggleKey: \"paddingPerSide\",\n        toggleTitles: [\n            \"Padding\",\n            \"Padding per side\"\n        ],\n        valueKeys: [\n            \"paddingTop\",\n            \"paddingRight\",\n            \"paddingBottom\",\n            \"paddingLeft\", \n        ],\n        valueLabels: [\n            \"T\",\n            \"R\",\n            \"B\",\n            \"L\"\n        ],\n        min: 0,\n        title: \"Padding\"\n    }\n};\n\nexport const __FramerMetadata__ = {\"exports\":{\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"RadiusProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"PaddingProps\":{\"type\":\"tsType\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"function\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}\n//# sourceMappingURL=./propUtils.map","import{defaultEvents,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack}from\"https://framerusercontent.com/modules/VTUDdizacRHpwbkOamr7/AykinQJbgwl92LvMGZwu/constants.js\";import{useOnEnter,useOnExit}from\"https://framerusercontent.com/modules/D4TWeLfcxT6Tysr2BlYg/iZjmqdxVx1EOiM3k1FaW/useOnNavigationTargetChange.js\";import{useConstant}from\"https://framerusercontent.com/modules/ExNgrA7EJTKUPpH6vIlN/eiOrSJ2Ab5M9jPCvVwUz/useConstant.js\";import{colorTokentoValue,colorFromToken}from\"https://framerusercontent.com/modules/D2Lz5CmnNVPZFFiZXalt/QaCzPbriZBfXWZIIycFI/colorFromToken.js\";import{isMotionValue}from\"https://framerusercontent.com/modules/3mKFSGQqKHV82uOV1eBc/5fbRLvOpxZC0JOXugvwm/isMotionValue.js\";import{useUniqueClassName,randomID}from\"https://framerusercontent.com/modules/xDiQsqBGXzmMsv7AlEVy/uhunpMiNsbXxzjlXsg1y/useUniqueClassName.js\";import{getVariantControls}from\"https://framerusercontent.com/modules/ETACN5BJyFTSo0VVDJfu/NHRqowOiXkF9UwOzczF7/variantUtils.js\";import{useIsBrowserSafari}from\"https://framerusercontent.com/modules/eMBrwoqQK7h6mEeGQUH8/GuplvPJVjmxpk9zqOTcb/isBrowser.js\";import{useMultiOnChange,useOnChange}from\"https://framerusercontent.com/modules/v9AWX2URmiYsHf7GbctE/XxKAZ9KlhWqf5x1JMyyF/useOnChange.js\";import{mstoMinAndSec,secondsToMinutes}from\"https://framerusercontent.com/modules/4zHZnO5JojN1PrIbu2jm/revv9QCWpkh8lPzi2jje/time.js\";import{useAutoMotionValue}from\"https://framerusercontent.com/modules/kNDwabfjDEb3vUxkQlZS/fSIr3AOAYbGlfSPgXpYu/useAutoMotionValue.js\";import{useFontControls}from\"https://framerusercontent.com/modules/cuQH4dmpDnV8YK1mSgQX/KqRXqunFjE6ufhpc7ZRu/useFontControls.js\";import{useRenderTarget,useIsInPreview,useIsOnCanvas}from\"https://framerusercontent.com/modules/afBE9Yx1W6bY5q32qPxe/m3q7puE2tbo1S2C0s0CT/useRenderTarget.js\";import{useControlledState}from\"https://framerusercontent.com/modules/zGkoP8tPDCkoBzMdt5uq/0zFSjxIYliHxrQQnryFX/useControlledState.js\";import{usePadding,useRadius,paddingControl,borderRadiusControl}from\"https://framerusercontent.com/modules/5SM58HxZHxjjv7aLMOgQ/WXz9i6mVki0bBCrKdqB3/propUtils.js\";import{detectAutoSizingAxis}from\"https://framerusercontent.com/modules/8CkHAZatUz1UR8jNTcfD/HwbnIAZlUmQ2oTpcLkaH/detectAutoSizingAxis.js\";export{useOnEnter,useOnExit,defaultEvents,isMotionValue,colorFromToken,colorTokentoValue,localeOptions,fontControls,fontSizeOptions,emptyStateStyle,containerStyles,fontStack,useUniqueClassName,getVariantControls,useIsBrowserSafari,randomID,useConstant,useMultiOnChange,useOnChange,usePadding,useRadius,paddingControl,borderRadiusControl,mstoMinAndSec,useFontControls,secondsToMinutes,useAutoMotionValue,useRenderTarget,useIsInPreview,useControlledState,detectAutoSizingAxis,useIsOnCanvas,};\nexport const __FramerMetadata__ = {\"exports\":{\"useConstant\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"isMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"defaultEvents\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useUniqueClassName\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useMultiOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnChange\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsOnCanvas\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnExit\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontSizeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorTokentoValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRadius\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"getVariantControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"colorFromToken\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"containerStyles\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"usePadding\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"fontStack\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useControlledState\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useFontControls\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useAutoMotionValue\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"emptyStateStyle\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsInPreview\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useIsBrowserSafari\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"detectAutoSizingAxis\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"borderRadiusControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"mstoMinAndSec\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"randomID\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"localeOptions\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useOnEnter\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"secondsToMinutes\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"useRenderTarget\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}},\"paddingControl\":{\"type\":\"variable\",\"annotations\":{\"framerContractVersion\":\"1\"}}}}","/*\n * index (framer/default-utils@0.45.0)\n *\n * Learn More: https://www.framer.com/asset-urls\n */\n\nexport * from \"https://framerusercontent.com/modules/G4IfyjvwmaeSBpdb4TWu/OIjZRBmWDcIE2B6qgG1j/index.js\"\n","import{jsx as _jsx}from\"react/jsx-runtime\";import{useEffect,useRef,useState}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{useIsOnCanvas,emptyStateStyle,containerStyles}from\"https://framer.com/m/framer/default-utils.js\";/**\n * @framerIntrinsicWidth 600\n * @framerIntrinsicHeight 400\n *\n * @framerSupportedLayoutWidth fixed\n * @framerSupportedLayoutHeight any-prefer-fixed\n *\n * @framerDisableUnlink\n */export default function Embed({type,url,html,zoom,radius,border,style={}}){if(type===\"url\"&&url){return /*#__PURE__*/_jsx(EmbedUrl,{url:url,zoom:zoom,radius:radius,border:border,style:style});}if(type===\"html\"&&html){return /*#__PURE__*/_jsx(EmbedHtml,{html:html,style:style});}return /*#__PURE__*/_jsx(Instructions,{style:style});}addPropertyControls(Embed,{type:{type:ControlType.Enum,defaultValue:\"url\",displaySegmentedControl:true,options:[\"url\",\"html\"],optionTitles:[\"URL\",\"HTML\"]},url:{title:\"URL\",type:ControlType.String,description:\"Some websites don’t support embedding.\",hidden(props){return props.type!==\"url\";}},html:{title:\"HTML\",type:ControlType.String,displayTextArea:true,hidden(props){return props.type!==\"html\";}},border:{title:\"Border\",type:ControlType.Border,optional:true,hidden(props){return props.type!==\"url\";}},radius:{type:ControlType.BorderRadius,title:\"Radius\",hidden(props){return props.type!==\"url\";}},zoom:{title:\"Zoom\",defaultValue:1,type:ControlType.Number,hidden(props){return props.type!==\"url\";},min:.1,max:1,step:.1,displayStepper:true}});function Instructions({style}){return /*#__PURE__*/_jsx(\"div\",{style:{minHeight:getMinHeight(style),...emptyStateStyle,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"To embed a website or widget, add it to the properties\\xa0panel.\"})});}function EmbedUrl({url,zoom,radius,border,style}){const hasAutoHeight=!style.height;// Add https:// if the URL does not have a protocol.\nif(!/[a-z]+:\\/\\//.test(url)){url=\"https://\"+url;}const onCanvas=useIsOnCanvas();// We need to check if the url is blocked inside an iframe by the X-Frame-Options\n// or Content-Security-Policy headers on the backend.\nconst[state,setState]=useState(onCanvas?undefined:false);useEffect(()=>{// We only want to check on the canvas.\n// On the website we want to avoid the additional delay.\nif(!onCanvas)return;// TODO: We could also use AbortController here.\nlet isLastEffect=true;setState(undefined);async function load(){const response=await fetch(\"https://api.framer.com/functions/check-iframe-url?url=\"+encodeURIComponent(url));if(response.status==200){const{isBlocked}=await response.json();if(isLastEffect){setState(isBlocked);}}else{const message=await response.text();console.error(message);const error=new Error(\"This site can’t be reached.\");setState(error);}}load().catch(error=>{console.error(error);setState(error);});return()=>{isLastEffect=false;};},[url]);if(onCanvas&&hasAutoHeight){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"URL embeds do not support auto height.\",style:style});}if(!url.startsWith(\"https://\")){return /*#__PURE__*/_jsx(ErrorMessage,{message:\"Unsupported protocol.\",style:style});}if(state===undefined){return /*#__PURE__*/_jsx(LoadingIndicator,{});}if(state instanceof Error){return /*#__PURE__*/_jsx(ErrorMessage,{message:state.message,style:style});}if(state===true){const message=`Can’t embed ${url} due to its content security policy.`;return /*#__PURE__*/_jsx(ErrorMessage,{message:message,style:style});}return /*#__PURE__*/_jsx(\"iframe\",{src:url,style:{...iframeStyle,...style,...border,zoom:zoom,borderRadius:radius,transformOrigin:\"top center\"},loading:\"lazy\",// @ts-ignore\nfetchPriority:onCanvas?\"low\":\"auto\",referrerPolicy:\"no-referrer\",sandbox:getSandbox(onCanvas),allowFullScreen:true,allow:\"presentation; fullscreen; accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture; clipboard-write\"});}const iframeStyle={width:\"100%\",height:\"100%\",border:\"none\"};function getSandbox(onCanvas){const result=[\"allow-same-origin\",\"allow-scripts\"];if(!onCanvas){result.push(\"allow-downloads\",\"allow-forms\",\"allow-modals\",\"allow-orientation-lock\",\"allow-pointer-lock\",\"allow-popups\",\"allow-popups-to-escape-sandbox\",\"allow-presentation\",\"allow-storage-access-by-user-activation\",\"allow-top-navigation-by-user-activation\");}return result.join(\" \");}function EmbedHtml({html,...props}){const hasScript=html.includes(\"</script>\");if(hasScript){const hasSplineViewer=html.includes(\"</spline-viewer>\");const hasComment=html.includes(\"<!-- framer-direct-embed -->\");if(hasSplineViewer||hasComment){return /*#__PURE__*/_jsx(EmbedHtmlWithScripts,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlInsideIframe,{html:html,...props});}return /*#__PURE__*/_jsx(EmbedHtmlWithoutScripts,{html:html,...props});}function EmbedHtmlInsideIframe({html,style}){const ref=useRef();const[iframeHeight,setIframeHeight]=useState(0);// Handle auto sizing\nuseEffect(()=>{const iframeWindow=ref.current?.contentWindow;function handleMessage(event){if(event.source!==iframeWindow)return;const data=event.data;if(typeof data!==\"object\"||data===null)return;const height=data.embedHeight;if(typeof height!==\"number\")return;setIframeHeight(height);}window.addEventListener(\"message\",handleMessage);// After SSG the iframe loads before we attach the event handler,\n// therefore we need to request the latest height from the iframe.\niframeWindow?.postMessage(\"getEmbedHeight\",\"*\");return()=>{window.removeEventListener(\"message\",handleMessage);};},[]);// The CSS is mainly copied from:\n// FramerStudio/src/app/vekter/src/renderer/setDefaultFont.ts\n// FramerStudio/src/app/vekter/src/export/globalStylesForExport.ts\nconst srcDoc=`\n<html>\n    <head>\n        <style>\n            html, body {\n                margin: 0;\n                padding: 0;\n            }\n\n            body {\n                display: flex;\n                justify-content: center;\n                align-items: center;\n            }\n\n            :root {\n                -webkit-font-smoothing: antialiased;\n                -moz-osx-font-smoothing: grayscale;\n            }\n\n            * {\n                box-sizing: border-box;\n                -webkit-font-smoothing: inherit;\n            }\n\n            h1, h2, h3, h4, h5, h6, p, figure {\n                margin: 0;\n            }\n\n            body, input, textarea, select, button {\n                font-size: 12px;\n                font-family: sans-serif;\n            }\n        </style>\n    </head>\n    <body>\n        ${html}\n        <script type=\"module\">\n            let height = 0\n\n            function sendEmbedHeight() {\n                window.parent.postMessage({\n                    embedHeight: height\n                }, \"*\")\n            }\n\n            const observer = new ResizeObserver((entries) => {\n                if (entries.length !== 1) return\n                const entry = entries[0]\n                if (entry.target !== document.body) return\n\n                height = entry.contentRect.height\n                sendEmbedHeight()\n            })\n\n            observer.observe(document.body)\n\n            window.addEventListener(\"message\", (event) => {\n                if (event.source !== window.parent) return\n                if (event.data !== \"getEmbedHeight\") return\n                sendEmbedHeight()\n            })\n        </script>\n    <body>\n</html>\n`;const currentStyle={...iframeStyle,...style};const hasAutoHeight=!style.height;if(hasAutoHeight){currentStyle.height=iframeHeight+\"px\";}return /*#__PURE__*/_jsx(\"iframe\",{ref:ref,style:currentStyle,srcDoc:srcDoc});}function EmbedHtmlWithScripts({html,style}){const ref=useRef();useEffect(()=>{const div=ref.current;if(!div)return;div.innerHTML=html;executeScripts(div);return()=>{div.innerHTML=\"\";};},[html]);return /*#__PURE__*/_jsx(\"div\",{ref:ref,style:{...htmlStyle,...style}});}function EmbedHtmlWithoutScripts({html,style}){return /*#__PURE__*/_jsx(\"div\",{style:{...htmlStyle,...style},dangerouslySetInnerHTML:{__html:html}});}const htmlStyle={width:\"100%\",height:\"100%\",display:\"flex\",flexDirection:\"column\",justifyContent:\"center\",alignItems:\"center\"};// This function replaces scripts with executable ones.\n// https://stackoverflow.com/questions/1197575/can-scripts-be-inserted-with-innerhtml\nfunction executeScripts(node){if(node instanceof Element&&node.tagName===\"SCRIPT\"){const script=document.createElement(\"script\");script.text=node.innerHTML;for(const{name,value}of node.attributes){script.setAttribute(name,value);}node.parentElement.replaceChild(script,node);}else{for(const child of node.childNodes){executeScripts(child);}}}// Generic components\nfunction LoadingIndicator(){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-componentPlaceholder\",style:{...containerStyles,overflow:\"hidden\"},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:\"Loading…\"})});}function ErrorMessage({message,style}){return /*#__PURE__*/_jsx(\"div\",{className:\"framerInternalUI-errorPlaceholder\",style:{minHeight:getMinHeight(style),...containerStyles,overflow:\"hidden\",...style},children:/*#__PURE__*/_jsx(\"div\",{style:centerTextStyle,children:message})});}const centerTextStyle={textAlign:\"center\",minWidth:140};// Returns a min-height if the component is using auto-height.\nfunction getMinHeight(style){const hasAutoHeight=!style.height;if(hasAutoHeight)return 200;}\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"Embed\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutHeight\":\"any-prefer-fixed\",\"framerIntrinsicWidth\":\"600\",\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutWidth\":\"fixed\",\"framerIntrinsicHeight\":\"400\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./Embed.map","import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import React,{useState,useRef,useEffect}from\"react\";import{addPropertyControls,ControlType}from\"framer\";import{motion,AnimatePresence}from\"framer-motion\";const GoogleCalendarIcon=({color,width=20,height=20})=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:width,height:height,viewBox:\"0 0 256 256\",children:[/*#__PURE__*/_jsx(\"path\",{fill:\"#00000000\",d:\"M195.368 60.632H60.632v134.736h134.736z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#FFF\",d:\"M195.368 256L256 195.368l-30.316-5.172l-30.316 5.172l-5.533 27.73z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#188038\",d:\"M0 195.368v40.421C0 246.956 9.044 256 20.21 256h40.422l6.225-30.316l-6.225-30.316l-33.033-5.172L0 195.368Z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#1967D2\",d:\"M256 60.632V20.21C256 9.044 246.956 0 235.79 0h-40.422c-3.688 15.036-5.533 26.101-5.533 33.196c0 7.094 1.845 16.24 5.533 27.436c13.41 3.84 23.515 5.76 30.316 5.76c6.801 0 16.906-1.92 30.316-5.76Z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#FBBC04\",d:\"M256 60.632h-60.632v134.736H256z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#34A853\",d:\"M195.368 195.368H60.632V256h134.736z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#4285F4\",d:\"M195.368 0H20.211C9.044 0 0 9.044 0 20.21v175.158h60.632V60.632h134.736V0Z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color||\"#4285F4\",d:\"M88.27 165.154c-5.036-3.402-8.523-8.37-10.426-14.94l11.689-4.816c1.06 4.042 2.913 7.175 5.558 9.398c2.627 2.223 5.827 3.318 9.566 3.318c3.823 0 7.107-1.162 9.852-3.487c2.746-2.324 4.127-5.288 4.127-8.875c0-3.672-1.449-6.67-4.345-8.994c-2.897-2.324-6.535-3.486-10.88-3.486h-6.754v-11.57h6.063c3.739 0 6.888-1.011 9.448-3.033c2.56-2.02 3.84-4.783 3.84-8.303c0-3.132-1.145-5.625-3.435-7.494c-2.29-1.87-5.188-2.813-8.708-2.813c-3.436 0-6.164.91-8.185 2.745a16.115 16.115 0 0 0-4.413 6.754l-11.57-4.817c1.532-4.345 4.345-8.185 8.471-11.503c4.127-3.318 9.398-4.985 15.798-4.985c4.733 0 8.994.91 12.767 2.745c3.772 1.836 6.736 4.379 8.875 7.613c2.14 3.25 3.2 6.888 3.2 10.93c0 4.126-.993 7.613-2.98 10.476c-1.988 2.863-4.43 5.052-7.327 6.585v.69a22.248 22.248 0 0 1 9.398 7.327c2.442 3.284 3.672 7.208 3.672 11.79c0 4.58-1.163 8.673-3.487 12.26c-2.324 3.588-5.54 6.417-9.617 8.472c-4.092 2.055-8.69 3.1-13.793 3.1c-5.912.016-11.369-1.685-16.405-5.087Zm71.797-58.005l-12.833 9.28l-6.417-9.734l23.023-16.607h8.825v78.333h-12.598V107.15Z\"})]});const AppleCalendarIcon=({color=\"#A0A0A0\",width=20,height=20})=>/*#__PURE__*/_jsx(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:width,height:height,viewBox:\"0 0 368 432\",children:/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M353 146q-21 7-35 32.5T304 229q0 31 16 57.5t43 33.5q-8 27-26.5 55.5T299 418q-16 11-40 11q-16 0-37-8q-18-9-31-9q-10 0-40 12q-18 5-26 5q-24 0-49-20q-36-34-56-81T0 230q0-53 30.5-93.5T108 96q26 0 48 11q17 11 34 11q16 0 31-6q39-16 52-16q35 0 61 23q12 12 19 27zM179 99q0-32 25-63q25-27 61-33q0 38-24 67q-27 29-62 29z\"})});const OutlookIcon=({color=\"#DAA603\",width=20,height=20})=>/*#__PURE__*/_jsx(\"svg\",{width:width,height:height,viewBox:\"0 0 1024 1024\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsxs(\"g\",{children:[/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M644.9,764.4V492.7c19.3,13.3,37.4,25.6,55.4,38c16.2,11.1,18.9,11,35.6-0.1c92.5-61.5,185-122.9,277.5-184.4c2.8-1.9,5.7-3.6,9.8-6.1c0.3,4.2,0.8,7.4,0.8,10.5c0,118.2,0.1,236.4,0,354.7c0,39.3-19.9,59.1-59,59.1c-102.8,0-205.6,0-308.4,0C652.9,764.4,649.2,764.4,644.9,764.4L644.9,764.4z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M645.6,216.9h10.5c108.6,0,217.1,0,325.7,0c19.4,0,34.4,11.9,40.5,30.5c2.7,8.2,0,12.2-6.7,16.6c-84.1,56.3-168,112.9-252,169.4c-12,8.1-24.1,15.9-35.9,24.3c-6.4,4.6-12.2,4.8-18.8,0.5c-19.2-12.4-38.7-24.2-57.8-36.7c-3.2-2.1-6.5-6.9-6.5-10.4c-0.3-63.5-0.2-127-0.1-190.5C644.5,219.8,644.9,219.1,645.6,216.9L645.6,216.9z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M596.7,1024C397.6,982.3,199.3,940.8,0.3,899.2v-13.1c0-252.5,0.1-505-0.3-757.5c0-10.5,2.8-14.1,13-16c159.1-30.4,318.2-61.2,477.3-92C525.4,13.7,560.5,7,596.7,0L596.7,1024L596.7,1024z M438,511c-0.4-41.6-6.1-80-26.7-114.9c-16.6-28.1-39-49.4-71.3-58.6c-62.8-17.9-122.8,11.5-152.4,75c-18.9,40.7-23,83.9-19.3,128.1c3.2,38.3,14.3,73.7,39,104c49.1,60.2,138.4,60.6,188.2,0.8C428.4,605.8,437.4,558.7,438,511L438,511z\"}),/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M232.9,511.9c-0.1-29.7,3.9-58.4,20.7-83.8c15.5-23.5,39-33.1,64.9-26.6c20.1,5,32.3,19.3,40.4,37.2c13.8,30.7,16.2,63.3,12.1,95.9c-2.3,18.1-7.5,36.5-14.8,53.2c-9.5,21.6-27.8,34-52.2,34.5c-24.6,0.5-41.7-12.2-53.6-32.6C236.3,565.8,232.9,539.2,232.9,511.9L232.9,511.9z\"})]})});const Office365Icon=({color=\"#EB3C00\",width=20,height=20})=>/*#__PURE__*/_jsx(\"svg\",{width:width,height:height,\"enable-background\":\"new 0 0 2075 2499.8\",viewBox:\"0 0 2075 2499.8\",xmlns:\"http://www.w3.org/2000/svg\",children:/*#__PURE__*/_jsx(\"path\",{d:\"m0 2016.6v-1519.8l1344.4-496.8 730.6 233.7v2045.9l-730.6 220.3-1344.4-483.3 1344.4 161.8v-1769.2l-876.8 204.6v1198.3z\",fill:color})});const YahooIcon=({color=\"#5F01D1\",width=20,height=20})=>/*#__PURE__*/_jsxs(\"svg\",{xmlns:\"http://www.w3.org/2000/svg\",width:width,height:height,viewBox:\"0 0 512 512\",children:[/*#__PURE__*/_jsx(\"defs\",{children:/*#__PURE__*/_jsxs(\"mask\",{id:\"yahoo-mask\",children:[/*#__PURE__*/_jsx(\"rect\",{width:\"100%\",height:\"100%\",fill:\"white\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M106.598 187.846h56.988l33.184 84.895 33.616-84.895h55.481l-83.545 200.975H146.48l22.871-53.255-62.751-147.72h-.002zm243.879 67.833h-62.144l55.156-132.502 61.917.003-54.929 132.499zm-45.865 12.682c19.067 0 34.523 15.457 34.523 34.521 0 19.065-15.456 34.522-34.523 34.522-19.065 0-34.519-15.457-34.519-34.522 0-19.064 15.456-34.521 34.519-34.521z\",fill:\"black\"})]})}),/*#__PURE__*/_jsx(\"path\",{fill:color,d:\"M105 0h302c57.927.154 104.846 47.073 105 104.995V407c-.154 57.926-47.073 104.844-104.995 104.998L105 512C47.074 511.844.156 464.926.002 407.003L0 105C.156 47.073 47.074.154 104.997 0H105z\",mask:\"url(#yahoo-mask)\"})]});const ICSIcon=({color=\"currentColor\",width=20,height=20})=>/*#__PURE__*/_jsxs(\"svg\",{width:width,height:height,viewBox:\"0 0 24 24\",fill:\"none\",xmlns:\"http://www.w3.org/2000/svg\",children:[/*#__PURE__*/_jsx(\"path\",{d:\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"path\",{d:\"M7 10l5 5 5-5\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"12\",y1:\"15\",x2:\"12\",y2:\"3\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})]});/**\n * @framerDisableUnlink\n */export default function CalendarButton(props){const[isOpen,setIsOpen]=useState(false);const[isPremium,setIsPremium]=useState(true);const containerRef=useRef(null);// Check premium status on mount\nuseEffect(()=>{const checkPremiumStatus=async()=>{try{const response=await fetch(`https://calget.com/api/is-premium-link/${props.link}`);if(response.ok){const data=await response.json();setIsPremium(data.is_premium);}}catch(error){console.error(\"Error checking premium status:\",error);}};if(props.link){checkPremiumStatus();}},[props.link]);// Get overlay colors based on background\nconst getOverlayColors=bgColor=>{// Function to check if a color is light\nconst isLight=color=>{let r,g,b;// Handle hex colors\nif(color.startsWith(\"#\")){let hex=color.replace(\"#\",\"\");// Convert short hex to full hex\nif(hex.length===3){hex=hex.split(\"\").map(char=>char+char).join(\"\");}r=parseInt(hex.substring(0,2),16);g=parseInt(hex.substring(2,4),16);b=parseInt(hex.substring(4,6),16);}else if(color.startsWith(\"rgb\")){const values=color.match(/\\d+/g);if(values&&values.length>=3){[r,g,b]=values.map(Number);}}if(r===undefined||g===undefined||b===undefined){return true;}// Calculate relative luminance\nconst luminance=(.299*r+.587*g+.114*b)/255;return luminance>.5;};const isLightBg=isLight(bgColor);return{hoverColor:isLightBg?\"rgba(0, 0, 0, 0.05)\"// Darker hover for light backgrounds\n:\"rgba(255, 255, 255, 0.1)\",borderColor:isLightBg?\"rgba(0, 0, 0, 0.1)\"// Darker border for light backgrounds\n:\"rgba(255, 255, 255, 0.2)\"};};useEffect(()=>{function handleClickOutside(event){if(containerRef.current&&!containerRef.current.contains(event.target)){setIsOpen(false);}}document.addEventListener(\"mousedown\",handleClickOutside);return()=>{document.removeEventListener(\"mousedown\",handleClickOutside);};},[]);const{size,buttonColor,textColor,dropdownBgColor,dropdownTextColor,googleCalendarLink,appleCalendarLink,office365Link,outlookLink,yahooCalendarLink,icsLink,borderRadius,borderColor,borderWidth,link,calendars}=props;const{hoverColor,borderColor:separatorColor}=getOverlayColors(dropdownBgColor);const calendarLinks={google:googleCalendarLink,apple:appleCalendarLink,office365:office365Link,outlook:outlookLink,yahoo:yahooCalendarLink,ics:icsLink};const getButtonStyles=()=>{// Base size values that will be scaled\nconst baseIconSize=20;const baseFontSize=16;const basePaddingH=24;const basePaddingV=12;const baseGap=8;// Calculate the scale factor (size 1 = 100%)\nconst scale=size;return{backgroundColor:buttonColor,color:textColor,border:borderColor?`${borderWidth*scale}px solid ${borderColor}`:\"none\",padding:`${basePaddingV*scale}px ${basePaddingH*scale}px`,cursor:\"pointer\",fontSize:`${baseFontSize*scale}px`,display:\"flex\",alignItems:\"center\",gap:`${baseGap*scale}px`,transition:\"all 0.2s ease\",position:\"relative\",opacity:1,borderRadius:`${borderRadius*scale}px`,boxShadow:\"0 2px 4px rgba(0,0,0,0.1)\"};};const allProviders=[{name:\"Google\",id:\"google\",icon:color=>/*#__PURE__*/_jsx(GoogleCalendarIcon,{color:color,width:20*size,height:20*size})},{name:\"Apple\",id:\"apple\",icon:color=>/*#__PURE__*/_jsx(AppleCalendarIcon,{color:color,width:20*size,height:20*size})},{name:\"Outlook\",id:\"outlook\",icon:color=>/*#__PURE__*/_jsx(OutlookIcon,{color:color,width:20*size,height:20*size})},{name:\"Office 365\",id:\"office365\",icon:color=>/*#__PURE__*/_jsx(Office365Icon,{color:color,width:20*size,height:20*size})},{name:\"Yahoo\",id:\"yahoo\",icon:color=>/*#__PURE__*/_jsx(YahooIcon,{color:color,width:20*size,height:20*size})},{name:\"Download ICS\",id:\"ics\",icon:color=>/*#__PURE__*/_jsx(ICSIcon,{color:color,width:20*size,height:20*size})}];const providers=allProviders.filter(provider=>calendars[provider.id]);return /*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},ref:containerRef,children:[/*#__PURE__*/_jsxs(motion.button,{onClick:()=>setIsOpen(!isOpen),style:getButtonStyles(),children:[/*#__PURE__*/_jsxs(\"svg\",{width:20*size,height:20*size,viewBox:\"0 0 24 24\",fill:\"none\",stroke:textColor,strokeWidth:2,strokeLinecap:\"round\",strokeLinejoin:\"round\",children:[/*#__PURE__*/_jsx(\"rect\",{x:\"3\",y:\"4\",width:\"18\",height:\"18\",rx:\"2\",ry:\"2\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"16\",y1:\"2\",x2:\"16\",y2:\"6\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"8\",y1:\"2\",x2:\"8\",y2:\"6\"}),/*#__PURE__*/_jsx(\"line\",{x1:\"3\",y1:\"10\",x2:\"21\",y2:\"10\"})]}),\"Add to Calendar\"]}),/*#__PURE__*/_jsx(AnimatePresence,{children:isOpen&&/*#__PURE__*/_jsxs(motion.div,{initial:{opacity:0,y:-10},animate:{opacity:1,y:0},exit:{opacity:0,y:-10},style:{position:\"absolute\",top:\"100%\",left:0,marginTop:`${8*size}px`,backgroundColor:dropdownBgColor,borderRadius:`${8*size}px`,boxShadow:\"0 4px 12px rgba(0,0,0,0.1)\",zIndex:1e3,minWidth:`${200*size}px`},children:[providers.map((provider,index)=>{const link=calendarLinks[provider.id]||\"\";return /*#__PURE__*/_jsxs(\"a\",{href:link,target:\"_blank\",rel:\"noopener noreferrer\",onClick:e=>{if(!link){e.preventDefault();return;}setIsOpen(false);},style:{padding:`${12*size}px ${16*size}px`,display:\"flex\",alignItems:\"center\",gap:`${12*size}px`,cursor:link?\"pointer\":\"not-allowed\",borderBottom:index<providers.length-1?`${1*size}px solid ${separatorColor}`:\"none\",color:dropdownTextColor,textDecoration:\"none\",opacity:link?1:.5,fontSize:`${16*size}px`,transition:\"background-color 0.2s ease\"},onMouseEnter:e=>{if(link){e.currentTarget.style.backgroundColor=hoverColor;}},onMouseLeave:e=>{e.currentTarget.style.backgroundColor=\"transparent\";},children:[/*#__PURE__*/React.cloneElement(provider.icon(dropdownTextColor),{width:20*size,height:20*size}),/*#__PURE__*/_jsx(\"span\",{children:provider.name})]},provider.id);}),!isPremium&&/*#__PURE__*/_jsxs(\"div\",{style:{padding:`${8*size}px ${16*size}px`,display:\"flex\",alignItems:\"center\",justifyContent:\"center\",gap:`${3*size}px`,borderTop:`${1*size}px solid ${separatorColor}`,fontSize:`${12*size}px`,opacity:1},children:[/*#__PURE__*/_jsx(\"span\",{style:{fontSize:`${11*size}px`,color:\"#666666\"},children:\"Powered by\"}),/*#__PURE__*/_jsxs(\"a\",{href:\"https://calget.com\",target:\"_blank\",style:{textDecoration:\"none\",fontSize:`${13*size}px`,fontWeight:\"bold\",color:\"#666666\"},children:[\"CalGet\",/*#__PURE__*/_jsx(\"span\",{style:{color:\"#e14040\",fontFamily:\"system-ui\",fontSize:\"1.2em\"},children:\".\"})]})]})]})})]});}addPropertyControls(CalendarButton,{title:{title:\"Event Title\",type:ControlType.String,defaultValue:\"My Event\",hidden:true},description:{title:\"Description\",type:ControlType.String,defaultValue:\"Event description\",hidden:true},startDate:{title:\"Start Date\",type:ControlType.Date,defaultValue:new Date().toISOString(),hidden:true},endDate:{title:\"End Date\",type:ControlType.Date,defaultValue:new Date(Date.now()+36e5).toISOString(),hidden:true},location:{title:\"Location\",type:ControlType.String,defaultValue:\"\",optional:true,hidden:true},link:{title:\"Link\",type:ControlType.String,defaultValue:\"\",hidden:true},size:{title:\"Size\",type:ControlType.Number,defaultValue:1,min:.5,max:2,step:.1,displayStepper:false},buttonColor:{title:\"Button Color\",type:ControlType.Color,defaultValue:\"#000000\"},textColor:{title:\"Text Color\",type:ControlType.Color,defaultValue:\"#FFFFFF\"},borderRadius:{title:\"Border Radius\",type:ControlType.Number,defaultValue:8,min:0,max:50,step:1,displayStepper:false},borderColor:{title:\"Border Color\",type:ControlType.Color,defaultValue:null,optional:true},borderWidth:{title:\"Border Width\",type:ControlType.Number,defaultValue:2,min:0,max:10,step:1,displayStepper:false},dropdownBgColor:{title:\"Dropdown Background\",type:ControlType.Color,defaultValue:\"#000000\"},dropdownTextColor:{title:\"Dropdown Text Color\",type:ControlType.Color,defaultValue:\"#FFFFFF\"},googleCalendarLink:{type:ControlType.String,defaultValue:\"\",hidden:true},appleCalendarLink:{type:ControlType.String,defaultValue:\"\",hidden:true},office365Link:{type:ControlType.String,defaultValue:\"\",hidden:true},outlookLink:{type:ControlType.String,defaultValue:\"\",hidden:true},yahooCalendarLink:{type:ControlType.String,defaultValue:\"\",hidden:true},icsLink:{type:ControlType.String,defaultValue:\"\",hidden:true},calendars:{title:\"Calendar Options\",type:ControlType.Object,controls:{google:{title:\"Google\",type:ControlType.Boolean,defaultValue:true},apple:{title:\"Apple\",type:ControlType.Boolean,defaultValue:true},outlook:{title:\"Outlook\",type:ControlType.Boolean,defaultValue:true},office365:{title:\"Office 365\",type:ControlType.Boolean,defaultValue:true},yahoo:{title:\"Yahoo\",type:ControlType.Boolean,defaultValue:true},ics:{title:\"ICS Download\",type:ControlType.Boolean,defaultValue:true}}}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CalendarButton\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\",\"framerDisableUnlink\":\"\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CalendarButton.map"],"mappings":"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"}