{"version":3,"sources":["webpack:///./src/images/sf-map-contact.jpg","webpack:///./node_modules/react-bootstrap/esm/Alert.js","webpack:///./src/pages/contact.js","webpack:///./src/components/Section/Section.js"],"names":["module","exports","DivStyledAsH4","divWithClassName","displayName","AlertHeading","createWithBsPrefix","Component","AlertLink","SafeAnchor","defaultProps","show","transition","Fade","closeLabel","Alert","forwardRef","uncontrolledProps","ref","_useUncontrolled","bsPrefix","className","children","variant","onClose","dismissible","props","prefix","handleClose","useEventCallback","e","Transition","alert","createElement","role","undefined","CloseButton","onClick","label","unmountOnExit","in","Link","Heading","pageQuery","ContactPage","data","page","takeshape","getContact","useState","submitting","status","serverState","setServerState","validated","setValidated","handleServerResponse","ok","msg","form","reset","Layout","title","Section","Container","fluid","Row","Col","lg","Image","src","map","alt","formHeadline","formDescription","Form","onSubmit","preventDefault","target","checkValidity","stopPropagation","axios","method","url","FormData","then","r","catch","response","error","noValidate","name","Control","placeholder","required","Feedback","type","Group","controlId","as","rows","Button","rest"],"mappings":"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","file":"component---src-pages-contact-js-42bd671968c1324aa9dc.js","sourcesContent":["module.exports = __webpack_public_path__ + \"static/sf-map-contact-6ee98c8b534e6c908579bb6dee820545.jpg\";","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport classNames from 'classnames';\nimport React from 'react';\nimport { useUncontrolled } from 'uncontrollable';\nimport useEventCallback from '@restart/hooks/useEventCallback';\nimport { useBootstrapPrefix } from './ThemeProvider';\nimport Fade from './Fade';\nimport CloseButton from './CloseButton';\nimport divWithClassName from './divWithClassName';\nimport createWithBsPrefix from './createWithBsPrefix';\nimport SafeAnchor from './SafeAnchor';\nvar DivStyledAsH4 = divWithClassName('h4');\nDivStyledAsH4.displayName = 'DivStyledAsH4';\nvar AlertHeading = createWithBsPrefix('alert-heading', {\n Component: DivStyledAsH4\n});\nvar AlertLink = createWithBsPrefix('alert-link', {\n Component: SafeAnchor\n});\nvar defaultProps = {\n show: true,\n transition: Fade,\n closeLabel: 'Close alert'\n};\nvar Alert = React.forwardRef(function (uncontrolledProps, ref) {\n var _useUncontrolled = useUncontrolled(uncontrolledProps, {\n show: 'onClose'\n }),\n bsPrefix = _useUncontrolled.bsPrefix,\n show = _useUncontrolled.show,\n closeLabel = _useUncontrolled.closeLabel,\n className = _useUncontrolled.className,\n children = _useUncontrolled.children,\n variant = _useUncontrolled.variant,\n onClose = _useUncontrolled.onClose,\n dismissible = _useUncontrolled.dismissible,\n transition = _useUncontrolled.transition,\n props = _objectWithoutPropertiesLoose(_useUncontrolled, [\"bsPrefix\", \"show\", \"closeLabel\", \"className\", \"children\", \"variant\", \"onClose\", \"dismissible\", \"transition\"]);\n\n var prefix = useBootstrapPrefix(bsPrefix, 'alert');\n var handleClose = useEventCallback(function (e) {\n if (onClose) {\n onClose(false, e);\n }\n });\n var Transition = transition === true ? Fade : transition;\n var alert = /*#__PURE__*/React.createElement(\"div\", _extends({\n role: \"alert\"\n }, Transition ? props : undefined, {\n ref: ref,\n className: classNames(className, prefix, variant && prefix + \"-\" + variant, dismissible && prefix + \"-dismissible\")\n }), dismissible && /*#__PURE__*/React.createElement(CloseButton, {\n onClick: handleClose,\n label: closeLabel\n }), children);\n if (!Transition) return show ? alert : null;\n return /*#__PURE__*/React.createElement(Transition, _extends({\n unmountOnExit: true\n }, props, {\n ref: undefined,\n in: show\n }), alert);\n});\nAlert.displayName = 'Alert';\nAlert.defaultProps = defaultProps;\nAlert.Link = AlertLink;\nAlert.Heading = AlertHeading;\nexport default Alert;","import React, { useState } from \"react\";\nimport { graphql } from \"gatsby\";\nimport axios from \"axios\";\nimport PageTransition from \"gatsby-plugin-page-transitions\";\nimport {\n Container,\n Row,\n Col,\n Form,\n Button,\n Alert,\n Image\n} from \"react-bootstrap\";\nimport Layout from \"../components/Layout/Layout\";\nimport Section from \"../components/Section/Section\";\nimport SEO from \"../components/Seo/Seo\";\nimport { H2, H5 } from \"../components/Typography/Typography\";\nimport map from \"../images/sf-map-contact.jpg\";\n\nconst ContactPage = ({ data }) => {\n const page = data?.takeshape?.getContact || {};\n\n const [serverState, setServerState] = useState({\n submitting: false,\n status: null\n });\n\n const [validated, setValidated] = useState(false);\n\n const handleServerResponse = (ok, msg, form) => {\n setServerState({\n submitting: false,\n status: { ok, msg }\n });\n if (ok) {\n form.reset();\n }\n };\n\n const handleOnSubmit = e => {\n e.preventDefault();\n\n const form = e.target;\n\n if (form.checkValidity() === false) {\n e.stopPropagation();\n } else {\n setServerState({ submitting: true });\n axios({\n method: \"post\",\n url: \"https://getform.io/f/ef7a6b89-b250-46d3-bedc-835c822a6fe6\",\n data: new FormData(form)\n })\n .then(r => {\n handleServerResponse(\n true,\n \"Thanks for your message! We will get back to you!\",\n form\n );\n })\n .catch(r => {\n handleServerResponse(false, r.response.data.error, form);\n });\n }\n\n setValidated(true);\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n {page.formHeadline}
\n {page.formDescription}
\n\n \n \n \n \n First name is required.\n \n \n \n \n \n Last name is required.\n \n \n \n\n \n \n \n E-mail address is invalid.\n \n \n\n \n \n \n Message is required.\n \n \n\n \n \n \n
\n \n \n \n \n );\n};\n\nexport default ContactPage;\n\nexport const pageQuery = graphql`\n query {\n takeshape {\n getContact {\n title\n formHeadline\n formDescription\n }\n }\n }\n`;\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nconst Section = ({ children, ...rest }) => {\n return ;\n};\n\nSection.propTypes = {\n children: PropTypes.node.isRequired\n};\n\nexport default Section;\n"],"sourceRoot":""}