{
  "version": 3,
  "sources": ["ssg:https://framerusercontent.com/modules/vkHAj2Yk0mTnbM6ZdN5c/PlLMu0V3HsBupvdXeFrH/FormSpark.js"],
  "sourcesContent": ["import { jsx as _jsx, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { addPropertyControls, ControlType, RenderTarget, withCSS } from \"framer\";\nimport { motion } from \"framer-motion\";\nimport { containerStyles, usePadding, useRadius, paddingControl, borderRadiusControl, fontControls, useFontControls } from \"https://framer.com/m/framer/default-utils.js@^0.45.0\";\nimport { useCallback, useMemo, useState } from \"react\";\nconst emailRegex = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\nconst validateEmail = email => {\n  return emailRegex.test(String(email).toLowerCase());\n}; /**\n   * FORMSPARK\n   *\n   * @framerIntrinsicWidth 550\n   * @framerIntrinsicHeight 290\n   *\n   * @framerSupportedLayoutWidth fixed\n   * @framerSupportedLayoutHeight fixed\n   */\nconst FormSpark = withCSS(function FormSpark({\n  formId,\n  withName,\n  nameField: name,\n  withEmail,\n  email,\n  withMessage,\n  message,\n  layout,\n  inputs,\n  button,\n  style,\n  gap,\n  onSubmit,\n  ...props\n}) {\n  const [nameValue, setName] = useState(name === null || name === void 0 ? void 0 : name.value);\n  const [emailValue, setEmail] = useState(email === null || email === void 0 ? void 0 : email.value);\n  const [messageValue, setMessage] = useState(message === null || message === void 0 ? void 0 : message.value);\n  const [isNameError, setNameError] = useState(false);\n  const [isEmailError, setEmailError] = useState(false);\n  const [isMessageError, setMessageError] = useState(false);\n  const [isLoading, setLoading] = useState(false);\n  const [isSuccess, setSuccess] = useState(false);\n  const isCanvas = useMemo(() => {\n    return RenderTarget.current() === RenderTarget.canvas;\n  }, []);\n  const gridTemplateRows = useMemo(() => {\n    const rows = [];\n    if (withName || withMessage) {\n      rows.push(\"max-content\");\n    }\n    if (withMessage) {\n      rows.push(\"1fr\");\n    }\n    return [...rows, \"max-content\"].join(\" \");\n  }, [withName, withEmail, withMessage]);\n  const gridTemplateColumns = useMemo(() => {\n    const cols = [];\n    if ((withName && !withEmail || withEmail && !withName) && !withMessage && layout === \"horizontal\") {\n      return \"1fr max-content\";\n    }\n    return \"1fr\";\n  }, [withName, withEmail, withMessage, layout]);\n  const {\n    fontFamily,\n    fontSize,\n    fontWeight\n  } = useFontControls(props);\n  const borderRadius = useRadius(props);\n  const paddingValue = usePadding(props);\n  const validateForm = useCallback(() => {\n    let error = false;\n    setNameError(false);\n    setEmailError(false);\n    setMessageError(false);\n    if (withName && !nameValue) {\n      setNameError(true);\n      error = true;\n    }\n    if (withEmail && (!emailValue || !validateEmail(emailValue))) {\n      setEmailError(true);\n      error = true;\n    }\n    if (withMessage && !messageValue) {\n      setMessageError(true);\n      error = true;\n    }\n    return error;\n  }, [validateEmail, withName, withEmail, withMessage, nameValue, emailValue, messageValue]);\n  const handleSubmit = useCallback(event => {\n    setLoading(true);\n    event.preventDefault();\n    if (validateForm()) {\n      setLoading(false);\n    } else {\n      const data = new FormData(event.target);\n      const entries = Object.fromEntries(data.entries());\n      fetch(`https://submit-form.com/${formId}`, {\n        method: \"POST\",\n        headers: {\n          \"Content-Type\": \"application/json\",\n          Accept: \"application/json\"\n        },\n        body: JSON.stringify(entries)\n      }).then(() => {\n        setSuccess(true);\n        onSubmit();\n      }).catch(() => setLoading(false));\n    }\n  }, [formId, onSubmit, validateForm]);\n  const handleNameChange = useCallback(event => {\n    setNameError(false);\n    setName(event.target.value);\n  }, []);\n  const handleEmailChange = useCallback(event => {\n    setEmailError(false);\n    setEmail(event.target.value);\n  }, []);\n  const handleMessageChange = useCallback(event => {\n    setMessageError(false);\n    setMessage(event.target.value);\n  }, []);\n  return /*#__PURE__*/_jsx(motion.div, {\n    style: {\n      ...style,\n      ...containerStyles,\n      flexDirection: \"column\",\n      \"--framer-formspark-placeholder-color\": inputs.placeholderColor\n    },\n    children: isSuccess ? /*#__PURE__*/_jsx(motion.div, {\n      style: {\n        height: \"60px\",\n        width: \"60px\",\n        background: button.fill,\n        color: button.color,\n        borderRadius: \"50%\",\n        display: \"flex\",\n        justifyContent: \"center\",\n        alignItems: \"center\"\n      },\n      initial: {\n        scale: 0\n      },\n      animate: {\n        scale: 1\n      },\n      transition: {\n        duration: 0.3\n      },\n      children: /*#__PURE__*/_jsx(\"svg\", {\n        xmlns: \"http://www.w3.org/2000/svg\",\n        width: \"28\",\n        height: \"28\",\n        children: /*#__PURE__*/_jsx(\"path\", {\n          d: \"M 2 14 L 10 22 L 26 6\",\n          fill: \"transparent\",\n          strokeWidth: \"4\",\n          stroke: \"currentColor\",\n          strokeLinecap: \"round\"\n        })\n      })\n    }) : /*#__PURE__*/_jsxs(\"form\", {\n      style: {\n        display: \"grid\",\n        gridTemplateRows,\n        gridTemplateColumns,\n        gap,\n        width: \"100%\",\n        height: \"100%\"\n      },\n      onSubmit: handleSubmit,\n      method: \"POST\",\n      children: [(withName || withEmail) && /*#__PURE__*/_jsxs(\"div\", {\n        style: {\n          width: \"100%\",\n          display: \"grid\",\n          gridAutoFlow: layout === \"horizontal\" ? \"column\" : \"row\",\n          gap\n        },\n        children: [withName && /*#__PURE__*/_jsx(\"input\", {\n          className: \"framer-formspark-input\",\n          type: \"text\",\n          name: \"name\",\n          placeholder: name.placeholder,\n          value: isCanvas ? name.value : nameValue,\n          onChange: handleNameChange,\n          style: {\n            ...defaultStyle,\n            padding: paddingValue,\n            borderRadius,\n            fontFamily,\n            fontWeight,\n            fontSize,\n            background: inputs.fill,\n            color: inputs.color,\n            boxShadow: `inset 0 0 0 1px ${isNameError ? inputs.error : \"transparent\"}`\n          }\n        }), withEmail && /*#__PURE__*/_jsx(\"input\", {\n          className: \"framer-formspark-input\",\n          type: \"email\",\n          name: \"email\",\n          placeholder: email.placeholder,\n          value: isCanvas ? email.value : emailValue,\n          onChange: handleEmailChange,\n          style: {\n            ...defaultStyle,\n            padding: paddingValue,\n            borderRadius,\n            fontFamily,\n            fontWeight,\n            fontSize,\n            background: inputs.fill,\n            color: inputs.color,\n            boxShadow: `inset 0 0 0 1px ${isEmailError ? inputs.error : \"transparent\"}`\n          }\n        })]\n      }), withMessage && /*#__PURE__*/_jsx(\"textarea\", {\n        className: \"framer-formspark-input\",\n        placeholder: message.placeholder,\n        name: \"message\",\n        value: isCanvas ? message.value : messageValue,\n        onChange: handleMessageChange,\n        style: {\n          ...defaultStyle,\n          minHeight: 0,\n          padding: paddingValue,\n          resize: \"vertical\",\n          borderRadius,\n          background: inputs.fill,\n          fontFamily,\n          fontWeight,\n          fontSize,\n          color: inputs.color,\n          boxShadow: `inset 0 0 0 1px ${isMessageError ? inputs.error : \"transparent\"}`\n        }\n      }), /*#__PURE__*/_jsxs(\"div\", {\n        children: [/*#__PURE__*/_jsx(motion.input, {\n          type: \"submit\",\n          value: button.label,\n          style: {\n            ...defaultStyle,\n            borderRadius,\n            padding: paddingValue,\n            fontFamily,\n            fontWeight: button.fontWeight,\n            fontSize,\n            background: button.fill,\n            cursor: \"pointer\",\n            color: button.color,\n            zIndex: 1\n          },\n          transition: {\n            type: \"ease\",\n            duration: 0.3\n          },\n          whileHover: {\n            opacity: 0.8\n          }\n        }), isLoading && /*#__PURE__*/_jsx(\"div\", {\n          style: {\n            borderRadius,\n            position: \"absolute\",\n            display: \"flex\",\n            justifyContent: \"center\",\n            alignItems: \"center\",\n            width: \"100%\",\n            height: \"100%\",\n            left: 0,\n            top: 0,\n            zIndex: 2,\n            color: button.color,\n            background: button.fill\n          },\n          children: /*#__PURE__*/_jsx(motion.div, {\n            style: {\n              height: 16,\n              width: 16\n            },\n            initial: {\n              rotate: 0\n            },\n            animate: {\n              rotate: 360\n            },\n            transition: {\n              duration: 2,\n              repeat: Infinity\n            },\n            children: /*#__PURE__*/_jsxs(\"svg\", {\n              xmlns: \"http://www.w3.org/2000/svg\",\n              width: \"16\",\n              height: \"16\",\n              children: [/*#__PURE__*/_jsx(\"path\", {\n                d: \"M 8 0 C 3.582 0 0 3.582 0 8 C 0 12.419 3.582 16 8 16 C 12.418 16 16 12.419 16 8 C 15.999 3.582 12.418 0 8 0 Z M 8 14 C 4.687 14 2 11.314 2 8 C 2 4.687 4.687 2 8 2 C 11.314 2 14 4.687 14 8 C 14 11.314 11.314 14 8 14 Z\",\n                fill: \"currentColor\",\n                opacity: \"0.2\"\n              }), /*#__PURE__*/_jsx(\"path\", {\n                d: \"M 8 0 C 12.418 0 15.999 3.582 16 8 C 16 8 16 9 15 9 C 14 9 14 8 14 8 C 14 4.687 11.314 2 8 2 C 4.687 2 2 4.687 2 8 C 2 8 2 9 1 9 C 0 9 0 8 0 8 C 0 3.582 3.582 0 8 0 Z\",\n                fill: \"currentColor\"\n              })]\n            })\n          })\n        })]\n      })]\n    })\n  });\n}, [\".framer-formspark-input::placeholder { color: var(--framer-formspark-placeholder-color) !important; }\"]);\nFormSpark.defaultProps = {\n  fontSize: 16,\n  fontFamily: \"Inter\",\n  fontWeight: 400,\n  padding: 15,\n  paddingTop: 15,\n  paddingBottom: 15,\n  paddingLeft: 15,\n  paddingRight: 15,\n  borderRadius: 8,\n  topLeftRadius: 8,\n  topRightRadius: 8,\n  bottomRightRadius: 8,\n  bottomLeftRadius: 8,\n  gap: 15,\n  nameField: {\n    value: undefined,\n    placeholder: \"Name\"\n  },\n  email: {\n    value: undefined,\n    placeholder: \"Email\"\n  },\n  message: {\n    value: undefined,\n    placeholder: \"Message\"\n  },\n  inputs: {\n    fill: \"#EBEBEB\",\n    color: \"#000\",\n    placeholderColor: \"rgba(0, 0, 0, 0.5)\",\n    error: \"#EE4444\"\n  },\n  layout: {\n    fill: \"#EBEBEB\",\n    color: \"#000\",\n    placeholderColor: \"rgba(0, 0, 0, 0.5)\",\n    error: \"#EE4444\"\n  },\n  button: {\n    label: \"Sign Up\",\n    fontWeight: 600,\n    fill: \"#000\",\n    color: \"#FFF\"\n  }\n};\naddPropertyControls(FormSpark, {\n  formId: {\n    title: \"ID\",\n    placeholder: \"7PbPpGN3\",\n    type: ControlType.String,\n    description: \"Create a [FormSpark](https://formspark.io/) account, add a new form and copy its ID. [Learn more\u2026](https://www.framer.com/sites/integrations/formspark/)\"\n  },\n  withName: {\n    title: \"Name\",\n    type: ControlType.Boolean,\n    enabledTitle: \"Show\",\n    disabledTitle: \"Hide\",\n    defaultValue: true\n  },\n  nameField: {\n    title: \" \",\n    type: ControlType.Object,\n    controls: {\n      placeholder: {\n        title: \"Placeholder\",\n        type: ControlType.String,\n        defaultValue: \"Name\"\n      },\n      value: {\n        title: \"Value\",\n        type: ControlType.String,\n        defaultValue: \"\"\n      }\n    },\n    hidden: props => !props.withName\n  },\n  withEmail: {\n    title: \"Email\",\n    type: ControlType.Boolean,\n    enabledTitle: \"Show\",\n    disabledTitle: \"Hide\",\n    defaultValue: true\n  },\n  email: {\n    title: \" \",\n    type: ControlType.Object,\n    controls: {\n      placeholder: {\n        title: \"Placeholder\",\n        type: ControlType.String,\n        defaultValue: \"Email\"\n      },\n      value: {\n        title: \"Value\",\n        type: ControlType.String\n      }\n    },\n    hidden: props => !props.withEmail\n  },\n  withMessage: {\n    title: \"Message\",\n    type: ControlType.Boolean,\n    enabledTitle: \"Show\",\n    disabledTitle: \"Hide\",\n    defaultValue: true\n  },\n  message: {\n    title: \" \",\n    type: ControlType.Object,\n    controls: {\n      placeholder: {\n        title: \"Placeholder\",\n        type: ControlType.String,\n        defaultValue: \"Message\"\n      },\n      value: {\n        title: \"Value\",\n        type: ControlType.String\n      }\n    },\n    hidden: props => !props.withMessage\n  },\n  layout: {\n    title: \"Layout\",\n    type: ControlType.Enum,\n    options: [\"horizontal\", \"vertical\"],\n    displaySegmentedControl: true,\n    defaultValue: \"horizontal\"\n  },\n  inputs: {\n    title: \"Inputs\",\n    type: ControlType.Object,\n    controls: {\n      fill: {\n        title: \"Fill\",\n        type: ControlType.Color,\n        defaultValue: \"#EBEBEB\"\n      },\n      color: {\n        title: \"Text\",\n        type: ControlType.Color,\n        defaultValue: \"#000\"\n      },\n      placeholderColor: {\n        title: \"Placeholder\",\n        type: ControlType.Color,\n        defaultValue: \"rgba(0, 0, 0, 0.5)\"\n      },\n      error: {\n        title: \"Error\",\n        type: ControlType.Color,\n        defaultValue: \"#EE4444\"\n      }\n    }\n  },\n  button: {\n    title: \"Button\",\n    type: ControlType.Object,\n    controls: {\n      label: {\n        title: \"Label\",\n        type: ControlType.String,\n        defaultValue: \"Sign Up\"\n      },\n      fontWeight: {\n        ...fontControls.fontWeight,\n        defaultValue: 600\n      },\n      fill: {\n        title: \"Fill\",\n        type: ControlType.Color,\n        defaultValue: \"#000\"\n      },\n      color: {\n        title: \"Text\",\n        type: ControlType.Color,\n        defaultValue: \"#FFF\"\n      }\n    }\n  },\n  ...fontControls,\n  fontSize: {\n    title: \"Font Size\",\n    type: ControlType.Number,\n    displayStepper: true,\n    defaultValue: 16\n  },\n  ...paddingControl,\n  ...borderRadiusControl,\n  gap: {\n    title: \"Gap\",\n    type: ControlType.Number,\n    displayStepper: true,\n    min: 0\n  },\n  onSubmit: {\n    type: ControlType.EventHandler\n  }\n});\nconst defaultStyle = {\n  WebkitAppearance: \"none\",\n  display: \"inline-block\",\n  width: \"100%\",\n  lineHeight: \"1.4em\",\n  outline: \"none\",\n  border: \"none\"\n};\nexport default FormSpark;\nexport const __FramerMetadata__ = {\n  \"exports\": {\n    \"default\": {\n      \"type\": \"reactComponent\",\n      \"name\": \"FormSpark\",\n      \"slots\": [],\n      \"annotations\": {\n        \"framerIntrinsicHeight\": \"290\",\n        \"framerSupportedLayoutHeight\": \"fixed\",\n        \"framerSupportedLayoutWidth\": \"fixed\",\n        \"framerIntrinsicWidth\": \"550\",\n        \"framerContractVersion\": \"1\"\n      }\n    },\n    \"__FramerMetadata__\": {\n      \"type\": \"variable\"\n    }\n  }\n};\n//# sourceMappingURL=./FormSpark.map"],
  "mappings": "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",
  "names": ["emailRegex", "validateEmail", "email", "FormSpark", "withCSS", "formId", "withName", "name", "withEmail", "withMessage", "message", "layout", "inputs", "button", "style", "gap", "onSubmit", "props", "nameValue", "setName", "ye", "emailValue", "setEmail", "messageValue", "setMessage", "isNameError", "setNameError", "isEmailError", "setEmailError", "isMessageError", "setMessageError", "isLoading", "setLoading", "isSuccess", "setSuccess", "isCanvas", "se", "RenderTarget", "gridTemplateRows", "rows", "gridTemplateColumns", "cols", "fontFamily", "fontSize", "fontWeight", "useFontControls", "borderRadius", "useRadius", "paddingValue", "usePadding", "validateForm", "te", "error", "handleSubmit", "event", "data", "entries", "handleNameChange", "handleEmailChange", "handleMessageChange", "p", "motion", "containerStyles", "u", "defaultStyle", "addPropertyControls", "ControlType", "fontControls", "paddingControl", "borderRadiusControl", "FormSpark_default"]
}
