-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path1-2e377a65f9b3bf0edda4.js.map
1 lines (1 loc) · 64.3 KB
/
1-2e377a65f9b3bf0edda4.js.map
1
{"version":3,"sources":["webpack:///./src/theme.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./src/utils/queries.js","webpack:///./src/components/ContactForm.js","webpack:///./src/components/Container.js","webpack:///./src/components/forms.js","webpack:///./src/components/FlexGrid.js","webpack:///./src/components/Footer.js","webpack:///./src/components/GatsbyImg.js","webpack:///./src/components/Image.js","webpack:///./src/components/ImageGrid.js","webpack:///./src/components/InlineList.js","webpack:///./src/components/Landing.js","webpack:///./src/components/Link.js","webpack:///./src/components/LinkTo.js","webpack:///./src/components/LogoGrid.js","webpack:///./src/components/Page.js","webpack:///./src/components/Project.js","webpack:///./src/components/SEO.js","webpack:///./src/components/Section.js","webpack:///./src/components/SimpleImg.js","webpack:///./src/components/Slab.js","webpack:///./src/components/index.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/public-page-renderer-prod.js"],"names":["reset","name","styles","breakpoints","phone","ipadp","ipadl","laptop","fhd","mq","lodash_fp_mapValues__WEBPACK_IMPORTED_MODULE_0___default","v","fonts","sans","serif","baseFontSizes","px","n","isNaN","threeBreakPoints","vs","fs","landingLogo","landingNav","sansTitle","footerIcon","footerLogo","footerText","quote","serifTitle","lede","fontWeights","normal","bold","spy","section","subsection","baseColors","colors","background","text","emphasis","button","link","accent","frame","slab","logoBg","footer","thread","borders","input","bb","map","x","nav","theme","radii","rounded","space","global","css","_css","html","fontFamily","fontSize","boxSizing","body","lineHeight","color","backgroundColor","fontWeight","textStyles","titleSans","textTransform","titleSerif","StaticQueryContext","React","createContext","StaticQuery","props","Object","_emotion_core__WEBPACK_IMPORTED_MODULE_0__","Consumer","staticQueryData","data","query","render","children","graphql","Error","propTypes","PropTypes","object","string","isRequired","func","imageNodes","lodash_fp_pipe__WEBPACK_IMPORTED_MODULE_5___default","lodash_fp_get__WEBPACK_IMPORTED_MODULE_4___default","lodash_fp_map__WEBPACK_IMPORTED_MODULE_3___default","namedImages","node","lodash_fp_fromPairs__WEBPACK_IMPORTED_MODULE_2___default","a","objFromNamedArray","namedLinks","lodash_fp_mapValues__WEBPACK_IMPORTED_MODULE_1___default","InputContact","_ref","label","objectWithoutPropertiesLoose_default","core_browser_esm","Box","mt","forms_Label","htmlFor","mb","forms_Input","extends_default","id","width","ContactForm","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","this","concat","state","next","inheritsLoose_default","_proto","prototype","componentDidMount","setState","window","location","protocol","host","email","action","method","FlexGrid_FlexGrid","columns","gutter","ContactForm_InputContact","type","required","Col","span","as","rows","Button","ButtonText","value","ContactForm_ref2","Component","defaultProps","Container","mx","maxWidth","Input","Card","border","borderRadius","p","Label","Text","variant","css_browser_esm","display","broken","isObject_default","is","negate","startsWith","substring","colWidths","rawSpans","rawColumns","rawGutters","_map2","map_default","spans","gutters","pipe_default","toPairs_default","k","fractionalWidth","fromPairs_default","mapValues_default","FlexGrid","_ref2","colGutter","rowGutter","Flex","justifyContent","flexWrap","ml","Children","child","isCol","colProps","cloneElement","assign","displayName","oneOfType","number","objectOf","_ref3","SocialLink","icon","LinkTo_LinkTo","index_es","Footer","Slab_Slab","pt","pb","bg","Container_Container","flexDirection","alignItems","InlineList_InlineList","Footer_SocialLink","href","faTwitter","faGithub","faLinkedin","GatsbyImg","Img","Image","image","childImageSharp","fluid","GatsbyImg_GatsbyImg","fixed","SimpleImg_SimpleImg","ImageGridImage","resize","ref","current","getBoundingClientRect","measuredWidth","createRef","addEventListener","componentWillUnmount","removeEventListener","_this$props","aspect","imgStyle","aspectHeight","Image_Image","style","height","objectFit","objectPosition","ImageGrid","images","imageProps","linked","order","flexOrder","o","key","ImageGrid_ImageGridImage","arrayOf","InlineList","_ref$gutter","InlineList_ref2","i","mr","InlineList_ref3","Highlight","Landing_ref","Mission","textAlign","Landing_Highlight","NavLink","borderBottom","Link_Link","onClick","event","document","querySelector","el","scrollIntoView","behavior","block","history","pushState","e","console","error","preventDefault","Nav","Landing_NavLink","Landing","mobile","m","navigator","userAgent","match","frameWidths","replace","minHeights","minHeight","py","components_Header","Landing_Mission","Landing_Nav","Link","target","LinkTo","gatsby_browser_entry","links","site","siteMetadata","_2498455618","mapWithIndex","convert","cap","arr","LOGO_ORDER","LogoGrid","LOGO_QUERY","ImageGrid_ImageGrid","sortBy_default","opacity","_338905843","AbsoluteReserved","react_default","Fragment","ariaHidden","visibility","position","Bottom","Page_AbsoluteReserved","bottom","left","Page","keywords","title","SEO","emotion_theming_browser_esm","overflow","role","flex","Page_Bottom","Footer_Footer","className","array","Project","category","imageColProps","flip","components_H3","components_H2","Group","alternating","Description","Testimonial","from","pl","borderLeft","fontStyle","_ref4","Award","_ref5","content","faAward","description","lang","meta","detailsQuery","titlePrefix","defaultTitle","Helmet_default","htmlAttributes","property","twitter","join","_1493795551","Section","first","SubSection","SimpleImg","img","alt","src","publicURL","Slab","themed","styled_base_browser_esm","minWidth","maxHeight","top","right","alignSelf","letterSpacing","borderColor","buttonStyle","cards","boxShadow","backgroundImage","backgroundSize","backgroundPosition","backgroundRepeat","P","Header","Lede","H1","H2","H3","module","exports","require","default","ProdPageRenderer","pageResources","loader","getResourcesForPathnameSync","pathname","createElement","InternalPageRenderer","json","shape"],"mappings":"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","file":"1-2e377a65f9b3bf0edda4.js","sourcesContent":["import fp from 'lodash/fp'\nimport {css} from '@emotion/core'\n\n// Reset based on http://meyerweb.com/eric/tools/css/reset/ v2.0\n// prettier-ignore\nconst reset = css`\n html, body, div, span, applet, object, iframe,\n h1, h2, h3, h4, h5, h6, p, blockquote, pre,\n a, abbr, acronym, address, big, cite, code,\n del, dfn, em, img, ins, kbd, q, s, samp,\n small, strike, strong, sub, sup, tt, var,\n b, u, i, center,\n dl, dt, dd, ol, ul, li,\n fieldset, form, label, legend,\n table, caption, tbody, tfoot, thead, tr, th, td,\n article, aside, canvas, details, embed,\n figure, figcaption, footer, header, hgroup,\n menu, nav, output, ruby, section, summary,\n time, mark, audio, video {\n border: 0;\n color: inherit;\n font-size: 100%;\n font-style: inherit;\n font-weight: inherit;\n font: inherit;\n margin: 0;\n padding: 0;\n text-decoration: none;\n vertical-align: baseline;\n }\n /* HTML5 display-role reset for older browsers */\n article, aside, details, figcaption, figure,\n footer, header, hgroup, menu, nav, section {\n display: block;\n }\n body {\n line-height: 1;\n }\n ol, ul {\n list-style: none;\n }\n blockquote, q {\n quotes: none;\n }\n blockquote:before, blockquote:after,\n q:before, q:after {\n content: '';\n content: none;\n }\n table {\n border-collapse: collapse;\n border-spacing: 0;\n }\n /* avoid blue outline on focused input */\n *:focus {\n outline: none;\n }\n`\n\n// Define styled-system lookup tables in advance, so we can also reference\n// them directly while defining the theme below.\n//\n// https://github.com/jxnblk/styled-system/blob/master/docs/table.md\n//\nconst breakpoints = {\n phone: 0,\n ipadp: '768px',\n ipadl: '1024px',\n laptop: '1200px',\n fhd: '1920px',\n}\nexport const mq = fp.mapValues(v => `@media(min-width: ${v})`, breakpoints)\nconst fonts = {\n sans: 'brother-1816, sans-serif',\n serif: 'mrs-eaves, serif',\n}\nconst baseFontSizes = {\n phone: 20,\n ipadp: 22,\n ipadl: 24,\n}\nconst baseLineHeights = {\n phone: 1.3,\n}\nconst px = n => isNaN(n) ? n : `${n}px`\nconst threeBreakPoints = fp.mapValues(\n vs => ({\n phone: px(vs[0]),\n ipadp: px(vs[1]),\n ipadl: px(vs[2]),\n }))\nexport const fs = threeBreakPoints({\n landingLogo: [14, 16, 18],\n landingNav: [12, 14, 16],\n sansTitle: [14, 16, 16],\n footerIcon: [24, 26, 28],\n footerLogo: [12, 14, 14],\n footerText: [16, 18, 18],\n quote: [24, 26, 28],\n serifTitle: [26, 32, 32],\n lede: [24, 33, 36],\n})\nconst fontWeights = {\n normal: 400,\n bold: 700,\n}\n// These should be calculated from baseFontSize (actually base line-heights)\nexport const spy = threeBreakPoints({\n section: [55, 66, 96], // [2.75x, 3x, 4x]\n subsection: [20, 33, 48], // [1x, 1.5x, 2x]\n})\nconst baseColors = {\n greyDk: 'hsla(0, 0%, 0%, 0.8)',\n greyLt: 'hsla(0, 0%, 0%, 0.2)',\n blue: '#0060ad',\n blueTint: '#a8c9e3', // blue tint 66%\n green: '#86a5a6', // from #4a797a\n greenShade: '#7f9d9e', // green shade 5%\n gold: '#b87812',\n magenta: '#a9047a',\n}\nconst colors = {\n background: 'white',\n text: baseColors.greyDk,\n\n emphasis: baseColors.gold,\n button: baseColors.magenta,\n link: baseColors.magenta,\n\n accent: baseColors.blueTint,\n frame: baseColors.blue,\n slab: baseColors.green,\n logoBg: baseColors.greenShade,\n footer: baseColors.blueTint,\n\n // not currently used\n thread: baseColors.greyLt,\n}\nconst borders = {\n accent: `4px solid ${colors.accent}`, // not used?\n input: `1px solid ${colors.thread}`,\n}\nexport const bb = threeBreakPoints({\n quote: [3, 4, 4].map(x => `${x}px solid ${colors.accent}`),\n frame: [8, 15, 30].map(x => `${x}px solid ${colors.frame}`),\n nav: [2, 3, 3].map(x => `${x}px solid ${colors.text}`),\n})\nconst radii = {\n rounded: '6px',\n}\n\nconst theme = {\n borders,\n breakpoints,\n colors,\n fonts,\n fontWeights,\n radii,\n space: {},\n\n global: css`\n ${reset}\n ${{\n html: {\n fontFamily: fonts.serif,\n fontSize: baseFontSizes.phone,\n boxSizing: 'border-box',\n // scrollBehavior is set in gatsby-browser.js\n },\n [mq.ipadp]: {\n html: {\n fontSize: baseFontSizes.ipadp,\n },\n },\n [mq.ipadl]: {\n html: {\n fontSize: baseFontSizes.ipadl,\n },\n },\n [mq.laptop]: {\n html: {\n fontSize: baseFontSizes.laptop,\n },\n },\n '*,*:before,*:after': {\n boxSizing: 'inherit',\n },\n body: {\n lineHeight: baseLineHeights.phone,\n color: colors.text,\n backgroundColor: colors.background,\n fontWeight: fontWeights.normal,\n },\n }}\n `,\n\n textStyles: {\n titleSans: {\n fontFamily: fonts.sans,\n textTransform: 'uppercase',\n lineHeight: 1,\n fontWeight: fontWeights.bold,\n },\n titleSerif: {\n fontFamily: fonts.serif,\n textTransform: 'none',\n lineHeight: 1,\n fontWeight: fontWeights.bold,\n },\n },\n}\n\nexport default theme\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n} from \"gatsby-link\"\nimport PageRenderer from \"./public-page-renderer\"\nimport parsePath from \"./parse-path\"\n\nconst StaticQueryContext = React.createContext({})\n\nconst StaticQuery = props => (\n <StaticQueryContext.Consumer>\n {staticQueryData => {\n if (\n props.data ||\n (staticQueryData[props.query] && staticQueryData[props.query].data)\n ) {\n return (props.render || props.children)(\n props.data ? props.data.data : staticQueryData[props.query].data\n )\n } else {\n return <div>Loading (StaticQuery)</div>\n }\n }}\n </StaticQueryContext.Consumer>\n)\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away,. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n.` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n}\n","import fp from 'lodash/fp'\n\nexport const imageNodes = fp.pipe(\n fp.get('edges'),\n fp.map(fp.get('node')),\n)\n\nexport const namedImages = fp.pipe(\n imageNodes,\n fp.map(node => [node.name, node]),\n fp.fromPairs,\n)\n\nexport const objFromNamedArray = fp.pipe(\n fp.map(x => [x.name, x]),\n fp.fromPairs,\n)\n\nexport const namedLinks = fp.pipe(\n objFromNamedArray,\n fp.mapValues(fp.get('href')),\n)\n","import React from 'react'\nimport {Box, Button, ButtonText, FlexGrid, Input, Label} from '.'\n\nconst InputContact = ({label, ...props}) => {\n return (\n <Box mt=\"0.5rem\">\n <Label htmlFor={props.name} mb=\"0.5em\">\n {label}\n </Label>\n <Input id={props.name} {...props} width=\"100%\" />\n </Box>\n )\n}\n\nexport class ContactForm extends React.Component {\n state = {\n next: `https://scampersand.com${this.props.next}`,\n }\n\n componentDidMount() {\n this.setState({\n next: `${window.location.protocol}//${window.location.host}${this.props.next}`,\n })\n }\n\n render() {\n const {email} = this.props\n const {next} = this.state\n return (\n <form action={`https://formspree.io/${email}`} method=\"POST\">\n <FlexGrid columns={{phone: 1, ipadl: 2}} gutter=\"20px\">\n <InputContact label=\"Name\" type=\"text\" name=\"name\" required />\n <InputContact label=\"Email\" type=\"email\" name=\"_replyto\" required />\n <FlexGrid.Col span={{phone: 1, ipadl: 2}}>\n <InputContact\n label=\"Message\"\n as=\"textarea\"\n name=\"body\"\n rows=\"5\"\n required\n />\n </FlexGrid.Col>\n <FlexGrid.Col span={{phone: 1, ipadl: 2}}>\n <Button type=\"submit\">\n <ButtonText>Send</ButtonText>\n </Button>\n </FlexGrid.Col>\n </FlexGrid>\n <input type=\"hidden\" name=\"_subject\" value=\"Hello!\" />\n <input type=\"hidden\" name=\"_next\" value={next} />\n <input type=\"test\" name=\"_gotcha\" css={{display: 'none'}} />\n </form>\n )\n }\n}\n\nContactForm.defaultProps = {\n email: 'hello@scampersand.com',\n next: '/thanks',\n}\n","import React from 'react'\nimport {Box} from '.'\n\nexport const Container = props => (\n <Box\n mx=\"auto\"\n px={{\n phone: '0.75rem',\n ipadp: '1.5rem',\n ipadl: '2rem',\n }}\n maxWidth={{\n ipadl: 'calc(1152px + 2rem)',\n fhd: 'calc(1664px + 2rem)',\n }}\n {...props}\n />\n)\n","import React from 'react'\nimport {Box, Card, Text} from '.'\nimport {fs} from '../theme'\n\nexport const Fieldset = props => <Box as=\"fieldset\" {...props} />\n\nexport const Input = props => (\n <Card as=\"input\" border=\"input\" borderRadius=\"rounded\" p=\"1em\" {...props} />\n)\n\nexport const Label = props => (\n <Text\n as=\"label\"\n variant=\"titleSans\"\n fontSize={fs.sansTitle}\n {...props}\n css={[{display: 'block'}, props.css]}\n />\n)\n","import fp from 'lodash/fp'\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport {Flex, Box} from '.'\n\nconst broken = x => (fp.isObject(x) ? x : {phone: x})\n\nconst is = x => x !== undefined && x !== null\n\nconst negate = x =>\n typeof x === 'string' ? (x.startsWith('-') ? x.substring(1) : '-' + x) : -x\n\nconst colWidths = (rawSpans, rawColumns, rawGutters) => {\n const [spans, columns, gutters] = fp.map(broken, [\n rawSpans,\n rawColumns,\n rawGutters,\n ])\n return fp.pipe(\n fp.toPairs,\n fp.map(([k, c]) => [k, {\n fractionalWidth: (spans[k] || spans.phone) / columns[k],\n gutter: gutters[k] || gutters.phone,\n }]),\n fp.fromPairs,\n fp.mapValues(v => `calc(${100 * v.fractionalWidth}% - ${v.gutter})`),\n )(columns)\n}\n\nexport const FlexGrid = ({\n columns,\n gutter,\n colGutter,\n rowGutter,\n children,\n ...props\n}) => {\n columns = broken(columns)\n colGutter = broken(is(colGutter) ? colGutter : is(gutter) ? gutter : 0)\n rowGutter = broken(is(rowGutter) ? rowGutter : is(gutter) ? gutter : 0)\n return (\n <Flex\n justifyContent=\"start\"\n flexWrap=\"wrap\"\n ml={fp.mapValues(negate, colGutter)}\n mt={fp.mapValues(negate, rowGutter)}\n {...props}\n >\n {React.Children.map(children, child => {\n const isCol = !!(child.props && child.props.span)\n const span = isCol ? child.props.span : 1\n const colProps = {\n span,\n width: colWidths(span, columns, colGutter),\n ml: colGutter,\n mt: rowGutter,\n }\n return isCol ? (\n React.cloneElement(child, {\n ...colProps,\n ...child.props,\n })\n ) : (\n <FlexGrid.Col {...colProps}>{child}</FlexGrid.Col>\n )\n })}\n </Flex>\n )\n}\n\nFlexGrid.displayName = 'FlexGrid'\n\nFlexGrid.propTypes = {\n columns: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.objectOf(PropTypes.number),\n ]).isRequired,\n}\n\nFlexGrid.Col = ({span, ...props}) => <Box {...props} />\n\nFlexGrid.Col.displayName = 'FlexGrid-Col'\n\n// NB: FlexGrid.Col.defaultProps = {span: 1} doesn't work for detecting\n// isCol. Instead force callers to pass span explicitly for now.\nFlexGrid.Col.propTypes = {\n span: PropTypes.oneOfType([\n PropTypes.number,\n PropTypes.objectOf(PropTypes.number),\n ]).isRequired,\n}\n","import React from 'react'\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome'\nimport {\n faGithub,\n faLinkedin,\n faTwitter,\n} from '@fortawesome/free-brands-svg-icons'\nimport {Container, Flex, InlineList, LinkTo, Slab, Text} from '.'\nimport {fs} from '../theme'\n\nconst SocialLink = ({icon, ...props}) => (\n <LinkTo {...props}>\n <Text fontSize={fs.footerIcon}>\n <FontAwesomeIcon icon={icon} />\n </Text>\n </LinkTo>\n)\n\nexport const Footer = props => (\n <Slab as=\"footer\" pt=\"1rem\" pb=\"0.5rem\" bg=\"footer\" {...props}>\n <Container as={Flex} flexDirection=\"column\" alignItems=\"center\">\n <InlineList gutter=\"1.25rem\">\n <SocialLink href=\"twitter\" icon={faTwitter} />\n <SocialLink href=\"github\" icon={faGithub} />\n <SocialLink href=\"linkedin\" icon={faLinkedin} />\n </InlineList>\n <InlineList gutter=\"0.25rem\" mt=\"0.5rem\">\n <Text variant=\"titleSans\" fontSize={fs.footerLogo} fontWeight=\"bold\" {...props}>\n Scampersand\n </Text>\n <Text fontSize={fs.footerText} {...props}>\n {'//'}\n </Text>\n <Text fontSize={fs.footerText} {...props}>\n Providence, Rhode Island\n </Text>\n </InlineList>\n </Container>\n </Slab>\n)\n","import React from 'react'\nimport Img from 'gatsby-image'\nimport {Box} from '.'\n\nexport const GatsbyImg = props => <Box as={Img} {...props} />\n\nGatsbyImg.displayName = GatsbyImg\n","import React from 'react'\nimport {GatsbyImg, SimpleImg} from '.'\n\nexport const Image = ({image, ...props}) =>\n image.childImageSharp && image.childImageSharp.fluid ? (\n <GatsbyImg fluid={image.childImageSharp.fluid} {...props} />\n ) : image.childImageSharp && image.childImageSharp.fixed ? (\n <GatsbyImg fixed={image.childImageSharp.fixed} {...props} />\n ) : (\n <SimpleImg image={image} {...props} />\n )\n\nImage.displayName = 'Image'\n","import fp from 'lodash/fp'\nimport React from 'react'\nimport PropTypes from 'prop-types'\nimport {FlexGrid, Image, LinkTo} from '.'\n\nclass ImageGridImage extends React.Component {\n constructor(props) {\n super(props)\n this.ref = React.createRef()\n this.state = {measuredWidth: 0}\n }\n\n componentDidMount() {\n window.addEventListener('resize', this.resize)\n this.resize()\n }\n\n componentWillUnmount() {\n window.removeEventListener('resize', this.resize)\n }\n\n resize = () => {\n const {width} = this.ref.current.getBoundingClientRect()\n this.setState({measuredWidth: width})\n }\n\n render() {\n const {\n props: {aspect, imgStyle, link, ...props},\n state: {measuredWidth},\n } = this\n const aspectHeight = measuredWidth / aspect\n let image = (\n <Image\n style={{height: '100%'}}\n imgStyle={{\n height: '100%',\n width: '100%',\n objectFit: 'contain',\n objectPosition: 'center center',\n ...imgStyle,\n }}\n {...props}\n />\n )\n if (link) {\n image = <LinkTo href={link}>{image}</LinkTo>\n }\n return (\n <div css={{height: `${aspectHeight}px`}} ref={this.ref}>\n {image}\n </div>\n )\n }\n}\n\nImageGridImage.propTypes = {\n aspect: PropTypes.number.isRequired,\n image: PropTypes.object.isRequired,\n link: PropTypes.string,\n}\n\nexport const ImageGrid = ({\n aspect,\n colProps,\n images,\n imageProps,\n linked,\n order,\n ...props\n}) => {\n return (\n <FlexGrid alignItems=\"center\" justifyContent=\"start\" {...props}>\n {images.map(image => {\n const flexOrder = fp.mapValues(o => o[image.name] || 0, order)\n return (\n <FlexGrid.Col\n span={1}\n {...colProps}\n key={image.name}\n order={flexOrder}\n >\n <ImageGridImage\n {...imageProps}\n aspect={aspect}\n image={image}\n link={linked && image.name}\n />\n </FlexGrid.Col>\n )\n })}\n </FlexGrid>\n )\n}\n\nImageGrid.propTypes = {\n aspect: PropTypes.number.isRequired,\n colProps: PropTypes.object,\n images: PropTypes.arrayOf(PropTypes.object).isRequired,\n imageProps: PropTypes.object,\n order: PropTypes.objectOf(PropTypes.objectOf(PropTypes.number)),\n}\n\nImageGrid.defaultProps = {\n order: [],\n}\n","import React from 'react'\nimport {Box} from '.'\n\nexport const InlineList = ({children, gutter = 1, ...props}) => (\n <Box as=\"ul\" {...props} css={{listStyle: 'none', marginLeft: 0}}>\n {React.Children.map(children, (child, i) => (\n <Box\n as=\"li\"\n key={i}\n mr={i < children.length - 1 ? gutter : 0}\n css={{\n display: 'inline-block',\n }}\n >\n {child}\n </Box>\n ))}\n </Box>\n)\n","import fp from 'lodash/fp'\nimport React, {useState} from 'react'\nimport {Card, Container, Flex, Header, InlineList, Link, Text} from '.'\nimport {bb, fs} from '../theme'\n\nconst Highlight = props => <Text css={{fontStyle: 'italic'}} {...props} />\nHighlight.defaultProps = {as: 'span', color: 'emphasis'}\nHighlight.displayName = 'Highlight'\n\nconst Mission = props => {\n const phone = 8.8\n const ipadl = 5.0 // random fricking constant\n const laptop = 7.5\n return (\n <Text\n textAlign=\"center\"\n fontSize={{\n phone: `${phone}vw`,\n ipadp: `${(768 * phone) / 100}px`, // <-- makes sense!\n // random garbage calculations\n ipadl: `${(1024 * ipadl) / 100}px`,\n laptop: `${(1024 * laptop) / 100}px`,\n }}\n lineHeight={1}\n {...props}\n >\n We work with\n <br />\n <Highlight>startups & organizations</Highlight>\n <br />\n to build software\n <br />\n that makes a <Highlight>difference.</Highlight>\n </Text>\n )\n}\n\nconst nav = x => {\n const [el, id] =\n typeof x === 'string'\n ? [document.querySelector(x), x.startsWith('#') ? x.substring(1) : null]\n : [x, x.id]\n if (el) {\n try {\n el.scrollIntoView({behavior: 'smooth', block: 'start'})\n if (id) {\n window.history.pushState(null, null, `#${id}`)\n }\n return el // indicate success\n } catch (e) {\n console.error(e)\n }\n }\n}\n\nconst NavLink = ({href, ...props}) => (\n <Card borderBottom={bb.nav}>\n <Link\n color=\"text\"\n variant=\"titleSans\"\n fontSize={fs.landingNav}\n href={href}\n onClick={event => {\n if (nav(href)) {\n event.preventDefault()\n }\n }}\n {...props}\n />\n </Card>\n)\n\nconst Nav = props => (\n <InlineList gutter=\"2rem\" {...props}>\n <NavLink href=\"#work\">Work</NavLink>\n <NavLink href=\"#clients\">Clients</NavLink>\n <NavLink href=\"#contact\">Let's Talk</NavLink>\n </InlineList>\n)\n\nexport class Landing extends React.Component {\n constructor(props) {\n super(props)\n this.state = {mobile: null}\n }\n\n componentDidMount() {\n const m = window.navigator.userAgent.match(\n /Android(?=.*Mobile)|iPhone|iPad/,\n )\n this.setState({\n mobile: m && m[0],\n })\n }\n\n render() {\n const frameWidths = fp.mapValues(v => v.replace(/ .*/, ''), bb.frame)\n let minHeights = fp.mapValues(v => `calc(100vh - (${v} * 4))`, frameWidths)\n\n // These overrides compensate for the top and bottom bars on mobile\n // devices that intrude on 100vh. These are hand-picked values from\n // testing on Android/iPhone/iPad.\n switch (this.state.mobile) {\n case 'Android':\n case 'iPhone':\n minHeights = {\n ...minHeights,\n phone: '80vh',\n }\n break\n case 'iPad':\n minHeights = {\n ...minHeights,\n ipadp: '88vh',\n ipadl: '75vh',\n }\n break\n }\n\n return (\n <Card\n minHeight=\"100vh\"\n mx=\"auto\"\n py={frameWidths}\n width={fp.mapValues(v => `calc(100vw - (${v} * 2))`, frameWidths)}\n >\n <Card width=\"100%\" border={bb.frame}>\n <Container>\n <Flex\n flexDirection=\"column\"\n alignItems=\"center\"\n justifyContent=\"center\"\n minHeight={minHeights}\n >\n <Header pt=\"4vh\" pb=\"6vh\">\n Scampersand\n </Header>\n <Mission />\n <Nav pt=\"12vh\" pb=\"4vh\" />\n </Flex>\n </Container>\n </Card>\n </Card>\n )\n }\n}\n","import React from 'react'\nimport {LinkTo, Text} from '.'\n\nexport const Link = ({href, target, ...props}) => (\n <LinkTo href={href} target={target}>\n <Text {...props} />\n </LinkTo>\n)\n\nLink.defaultProps = {\n as: 'span',\n color: 'link',\n fontWeight: 'bold',\n}\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport {StaticQuery, graphql} from 'gatsby'\nimport {namedLinks} from '~/utils/queries'\n\nexport const LinkTo = ({children, href, ...props}) => (\n <StaticQuery\n query={graphql`\n query LinksQuery {\n site {\n siteMetadata {\n links {\n name\n href\n }\n }\n }\n }\n `}\n render={({\n site: {\n siteMetadata: {links},\n },\n }) => (\n <a href={namedLinks(links)[href] || href} {...props}>\n {children}\n </a>\n )}\n />\n)\n\nLinkTo.displayName = 'LinkTo'\n\nLinkTo.propTypes = {\n href: PropTypes.string.isRequired,\n}\n","import fp from 'lodash/fp'\nimport {StaticQuery, graphql} from 'gatsby'\nimport React from 'react'\nimport {imageNodes} from '~/utils/queries'\nimport {ImageGrid} from '.'\nimport theme from '~/theme'\n\nconst mapWithIndex = fp.map.convert({cap: false})\n\nconst flexOrder = fp.pipe(\n mapWithIndex((v, i, arr) => [v, -(arr.length - i)]),\n fp.fromPairs,\n)\n\nconst LOGO_ORDER = fp.mapValues(flexOrder, {\n phone: [\n '18f',\n 'tizra',\n 'appsembler',\n 'ada',\n 'ripul',\n 'abc-clio',\n 'princeton-university-press',\n 'gw',\n ],\n ipadp: [\n '18f',\n 'appsembler',\n 'ada',\n 'abc-clio',\n 'tizra',\n 'ripul',\n 'princeton-university-press',\n 'gw',\n ],\n})\n\nexport const LogoGrid = props => (\n <StaticQuery\n query={LOGO_QUERY}\n render={({images}) => {\n return (\n <ImageGrid\n images={fp.sortBy('name', imageNodes(images))}\n linked\n order={LOGO_ORDER}\n columns={{phone: 2, ipadp: 4}}\n aspect={2}\n gutter=\"0.5rem\"\n rowGutter=\"0.5rem\"\n colProps={{\n px: {\n phone: '0.5rem',\n ipadl: '0.75rem',\n },\n py: '1rem',\n css: {backgroundColor: theme.colors.logoBg},\n }}\n imageProps={{imgStyle: {opacity: '0.8'}}}\n {...props}\n />\n )\n }}\n />\n)\n\nconst LOGO_QUERY = graphql`\n fragment logoImage on File {\n childImageSharp {\n fluid(maxWidth: 512, toFormat: PNG) {\n ...GatsbyImageSharpFluid_noBase64\n }\n }\n }\n fragment logoImages on FileConnection {\n edges {\n node {\n name\n publicURL\n ...logoImage\n }\n }\n }\n query LogoQuery {\n images: allFile(filter: {relativeDirectory: {eq: \"clients\"}}) {\n ...logoImages\n }\n }\n`\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport {Global} from '@emotion/core'\nimport {ThemeProvider} from 'emotion-theming'\nimport theme from '~/theme'\nimport {Box, Card, Flex, Footer, SEO} from '.'\n\nexport const AbsoluteReserved = props => (\n <>\n <Box\n ariaHidden=\"true\"\n {...props}\n css={{visibility: 'hidden', ...props.css}}\n />\n <Box position=\"absolute\" {...props} />\n </>\n)\n\nexport const Bottom = props => (\n <AbsoluteReserved bottom=\"0\" left=\"0\" width=\"100%\" {...props} />\n)\n\nexport const Page = ({keywords, title, ...props}) => (\n <>\n <SEO title={title} keywords={keywords} />\n <ThemeProvider theme={theme}>\n <Global styles={theme['global']} />\n <Flex\n flexDirection=\"column\"\n minHeight=\"100vh\"\n position=\"relative\"\n overflow={'hidden auto' /* for appsembler image */}\n >\n <Card as=\"main\" role=\"main\" flex=\"1\" {...props} />\n <Bottom>\n <Footer />\n </Bottom>\n </Flex>\n </ThemeProvider>\n </>\n)\n\nPage.propTypes = {\n children: PropTypes.node.isRequired,\n className: PropTypes.string,\n keywords: PropTypes.array,\n title: PropTypes.string,\n}\n","import React from 'react'\nimport {FontAwesomeIcon} from '@fortawesome/react-fontawesome'\nimport {faAward} from '@fortawesome/free-solid-svg-icons'\nimport {Box, Card, FlexGrid, H2, H3, Image, Link, Text} from '.'\nimport {bb, fs, spy} from '../theme'\n\nexport const Project = ({\n title,\n category,\n link,\n image,\n imageColProps,\n imageProps,\n flip,\n children,\n ...props\n}) => {\n if (link) {\n title = <Link href={link}>{title}</Link>\n }\n return (\n <FlexGrid columns={{phone: 1, ipadl: 5}} gutter=\"1rem\" pt={spy.subsection} {...props}>\n <FlexGrid.Col\n span={{phone: 1, ipadl: 2}}\n order={{phone: 0, ipadl: flip ? 1 : 0}}\n >\n <H3>{category}</H3>\n <H2>{title}</H2>\n <Box children={children} />\n </FlexGrid.Col>\n <FlexGrid.Col\n span={{phone: 1, ipadl: 3}}\n order={{phone: 0, ipadl: flip ? 0 : 0}}\n {...imageColProps}\n >\n <Image image={image} {...imageProps} />\n </FlexGrid.Col>\n </FlexGrid>\n )\n}\n\nProject.defaultProps = {\n mb: '3em',\n}\n\nProject.Group = ({alternating, children}) =>\n React.Children.map(children, (child, i) =>\n alternating && i % 2 ? React.cloneElement(child, {flip: true}) : child,\n )\n\nProject.Group.displayName = 'Project.Group'\n\nProject.Description = props => <Text mb=\"1em\" {...props} />\n\nProject.Description.displayName = 'Project.Description'\n\nProject.Testimonial = ({from, children}) => (\n <Card pl=\"1rem\" borderLeft={bb.quote}>\n <Text\n fontSize={fs.quote}\n fontWeight=\"bold\"\n fontStyle=\"italic\"\n css={\n // until https://github.com/rebassjs/rebass/pull/558\n {fontStyle: 'italic'}\n }\n mb=\"0.5em\"\n >\n {children}\n </Text>\n <Text as=\"cite\">—{from}</Text>\n </Card>\n)\n\nProject.Testimonial.displayName = 'Project.Testimonial'\n\nProject.Award = ({name, link, ...props}) => {\n let content = (\n <>\n <FontAwesomeIcon icon={faAward} />{' '}\n <Text\n as=\"span\"\n fontFamily=\"sans\"\n fontWeight=\"normal\"\n fontSize={fs.sansTitle}\n color=\"text\"\n >\n {name}\n </Text>\n </>\n )\n if (link) {\n content = <Link href={link}>{content}</Link>\n }\n return <Box {...props}>{content}</Box>\n}\n\nProject.Award.displayName = 'Project.Award'\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport Helmet from 'react-helmet'\nimport {StaticQuery, graphql} from 'gatsby'\n\nexport function SEO({description, lang, meta, keywords, title}) {\n return (\n <StaticQuery\n query={detailsQuery}\n render={({site: {siteMetadata}}) => {\n title = siteMetadata.titlePrefix + (title || siteMetadata.defaultTitle)\n description = description || siteMetadata.description\n return (\n <Helmet\n htmlAttributes={{\n lang,\n }}\n title={title}\n meta={[\n {\n name: 'description',\n content: description,\n },\n {\n property: 'og:title',\n content: title,\n },\n {\n property: 'og:description',\n content: description,\n },\n {\n property: 'og:type',\n content: 'website',\n },\n {\n name: 'twitter:card',\n content: 'summary',\n },\n {\n name: 'twitter:creator',\n content: siteMetadata.twitter,\n },\n {\n name: 'twitter:title',\n content: title,\n },\n {\n name: 'twitter:description',\n content: description,\n },\n ]\n .concat(\n keywords.length > 0\n ? {\n name: 'keywords',\n content: keywords.join(', '),\n }\n : [],\n )\n .concat(meta)}\n />\n )\n }}\n />\n )\n}\n\nSEO.defaultProps = {\n lang: 'en',\n meta: [],\n keywords: [],\n}\n\nSEO.propTypes = {\n description: PropTypes.string,\n lang: PropTypes.string,\n meta: PropTypes.array,\n keywords: PropTypes.arrayOf(PropTypes.string),\n title: PropTypes.string,\n}\n\nconst detailsQuery = graphql`\n query DefaultSEOQuery {\n site {\n siteMetadata {\n titlePrefix\n defaultTitle\n description\n }\n }\n }\n`\n","import React from 'react'\nimport {Box} from '.'\nimport {spy} from '../theme'\n\n// TODO vertical spacing should use rhythm, not rems\n\nexport const Section = ({first, ...props}) => {\n const pt = Object.assign(\n {},\n spy.section,\n first && {phone: 0, ipadp: 0, ipadl: 16, laptop: spy.section.ipadl},\n )\n return <Box as=\"section\" pt={pt} pb={spy.section} {...props} />\n}\n\nSection.displayName = 'Section'\n\nSection.SubSection = props => <Box {...props} />\n\nSection.SubSection.displayName = 'Section.SubSection'\n","import React from 'react'\nimport PropTypes from 'prop-types'\nimport {Box} from '.'\n\n/**\n * gatsby-image provides Img which generates a wrapper and applies style\n * (wrapper) and imgStyle (wrapped img tag). But Img only works with the\n * result of the fluid/fixed GraphQL queries. For SVG we need an\n * alternative that generates similar markup but handles a simple src prop.\n */\nexport const SimpleImg = ({css, image, imgStyle, style, ...props}) => (\n <Box\n css={[\n {\n img: {\n maxWidth: '100%',\n height: 'auto',\n ...imgStyle,\n },\n },\n style,\n css,\n ]}\n {...props}\n >\n <img\n alt={image.name}\n src={image.publicURL}\n />\n </Box>\n)\n\nSimpleImg.displayName = 'SimpleImg'\n\nSimpleImg.propTypes = {\n image: PropTypes.object.isRequired,\n style: PropTypes.object,\n imgStyle: PropTypes.object,\n}\n","import React from 'react'\nimport {Card} from '.'\n\nexport const Slab = props => <Card bg=\"slab\" {...props} />\n","import React from 'react'\nimport styled from '@emotion/styled'\nimport {\n alignItems,\n alignSelf,\n backgroundImage,\n backgroundPosition,\n backgroundRepeat,\n backgroundSize,\n borderColor,\n borderRadius,\n borders,\n bottom,\n boxShadow,\n buttonStyle,\n color,\n flex,\n flexDirection,\n flexWrap,\n fontFamily,\n fontSize,\n fontStyle,\n fontWeight,\n height,\n justifyContent,\n left,\n letterSpacing,\n lineHeight,\n maxHeight,\n maxWidth,\n minHeight,\n minWidth,\n opacity,\n order,\n overflow,\n position,\n right,\n space,\n textAlign,\n top,\n variant,\n width,\n} from 'styled-system'\nimport {fs} from '../theme'\n\nconst themed = key => props => props.theme[key]\n\nexport const Box = styled('div')(\n {\n boxSizing: 'border-box',\n },\n space,\n width,\n height,\n minWidth,\n minHeight,\n maxWidth,\n maxHeight,\n position,\n top,\n right,\n bottom,\n left,\n overflow,\n fontSize,\n color,\n flex,\n order,\n alignSelf,\n themed('Box'),\n)\nBox.propTypes = {\n ...space.propTypes,\n ...width.propTypes,\n ...height.propTypes,\n ...minWidth.propTypes,\n ...minHeight.propTypes,\n ...maxWidth.propTypes,\n ...maxHeight.propTypes,\n ...position.propTypes,\n ...top.propTypes,\n ...right.propTypes,\n ...bottom.propTypes,\n ...left.propTypes,\n ...overflow.propTypes,\n ...fontSize.propTypes,\n ...color.propTypes,\n ...flex.propTypes,\n ...order.propTypes,\n ...alignSelf.propTypes,\n}\n\nexport const Flex = styled(Box)(\n {\n display: 'flex',\n },\n flexWrap,\n flexDirection,\n alignItems,\n justifyContent,\n themed('Flex'),\n)\nFlex.propTypes = {\n ...flexWrap.propTypes,\n ...flexDirection.propTypes,\n ...alignItems.propTypes,\n ...justifyContent.propTypes,\n}\n\nconst textStyles = variant({key: 'textStyles'})\nexport const Text = styled(Box)(\n textStyles,\n fontFamily,\n fontWeight,\n fontStyle,\n textAlign,\n lineHeight,\n letterSpacing,\n themed('Text'),\n)\nText.propTypes = {\n ...fontFamily.propTypes,\n ...fontWeight.propTypes,\n ...fontStyle.propTypes,\n ...textAlign.propTypes,\n ...lineHeight.propTypes,\n ...letterSpacing.propTypes,\n ...textStyles.propTypes,\n}\n\nexport const Button = styled(Box)(\n {\n appearance: 'none',\n display: 'inline-block',\n textAlign: 'center',\n lineHeight: 'inherit',\n textDecoration: 'none',\n },\n fontWeight,\n fontStyle,\n borders,\n borderColor,\n borderRadius,\n buttonStyle,\n themed('Button'),\n)\nButton.propTypes = {\n ...fontWeight.propTypes,\n ...fontStyle.propTypes,\n ...borders.propTypes,\n ...borderColor.propTypes,\n ...borderRadius.propTypes,\n ...buttonStyle.propTypes,\n}\nButton.defaultProps = {\n as: 'button',\n fontSize: 'inherit',\n fontWeight: 'bold',\n m: 0,\n p: 0,\n color: 'white',\n bg: 'button',\n border: 0,\n borderRadius: 4,\n}\n\nexport const ButtonText = styled(Text)()\nButtonText.defaultProps = {\n variant: 'titleSans',\n fontSize: fs.sansTitle,\n px: '2.5em',\n py: '1.25em',\n}\n\nconst cards = variant({key: 'cards'})\nexport const Card = styled(Box)(\n borders,\n borderColor,\n borderRadius,\n boxShadow,\n backgroundImage,\n backgroundSize,\n backgroundPosition,\n backgroundRepeat,\n opacity,\n cards,\n themed('Card'),\n)\nCard.propTypes = {\n ...borders.propTypes,\n ...borderColor.propTypes,\n ...borderRadius.propTypes,\n ...boxShadow.propTypes,\n ...backgroundImage.propTypes,\n ...backgroundSize.propTypes,\n ...backgroundPosition.propTypes,\n ...backgroundRepeat.propTypes,\n ...opacity.propTypes,\n ...cards.propTypes,\n}\n\nexport const P = styled(Text)()\nP.defaultProps = {as: 'p'}\nP.displayName = 'P'\n\nexport const Header = props => (\n <Text as=\"header\" variant=\"titleSans\" fontSize={fs.landingLogo} {...props} />\n)\n\nexport const Lede = props => (\n <Text as=\"p\" fontSize={fs.lede} lineHeight=\"1.15\" mb=\"1.5em\" {...props} />\n)\n\nexport const H1 = props => (\n <Text\n as=\"h1\"\n variant=\"titleSans\"\n fontSize={fs.sansTitle}\n mb=\"0.75em\"\n {...props}\n />\n)\n\nexport const H2 = props => (\n <Text\n as=\"h2\"\n variant=\"titleSerif\"\n fontSize={fs.serifTitle}\n mb=\"0.75em\"\n {...props}\n />\n)\n\nexport const H3 = props => (\n <Text\n as=\"h3\"\n variant=\"titleSans\"\n fontSize={fs.sansTitle}\n mb=\"0.75em\"\n {...props}\n />\n)\n\nexport {ContactForm} from './ContactForm'\nexport {Container} from './Container'\nexport {Fieldset, Input, Label} from './forms'\nexport {FlexGrid} from './FlexGrid'\nexport {Footer} from './Footer'\nexport {GatsbyImg} from './GatsbyImg'\nexport {Image} from './Image'\nexport {ImageGrid} from './ImageGrid'\nexport {InlineList} from './InlineList'\nexport {Landing} from './Landing'\nexport {Link} from './Link'\nexport {LinkTo} from './LinkTo'\nexport {LogoGrid} from './LogoGrid'\nexport {Page} from './Page'\nexport {Project} from './Project'\nexport {SEO} from './SEO'\nexport {Section} from './Section'\nexport {SimpleImg} from './SimpleImg'\nexport {Slab} from './Slab'\nexport {Thread} from './Thread'\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport InternalPageRenderer from \"./page-renderer\"\nimport loader from \"./loader\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.getResourcesForPathnameSync(location.pathname)\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n"],"sourceRoot":""}