{"version":3,"sources":["webpack:///./src/util.tsx","webpack:///./src/pages/media.tsx"],"names":["unwrapConnection","connection","edges","filter","Boolean","map","edge","node","unwrapFirst","first","Error","MediaPage","data","page","prismicMediaPage","mediaResourceNodes","allPrismicMediaResource","sort","a","b","posted_at","localeCompare","StyledPreHeading","pre_heading","StyledHeading","heading","StyledTiles","key","title","media","styled","h2","h1","Color","darkBlue","div"],"mappings":"4FAYO,SAASA,EAAoBC,GAElC,QADeA,aAAA,EAAAA,EAAYC,QAAS,IAAIC,OAAOC,SAClCC,KAAI,SAACC,GAAD,OAAUA,aAAV,EAAUA,EAAMC,QAAMJ,OAAOC,SAGzC,SAASI,EAAeP,GAC7B,IAAMQ,EAAQT,EAAiBC,GAAY,GAC3C,IAAKQ,EACH,MAAM,IAAIC,MAAM,oDAElB,OAAOD,EAVT,qE,kCCXA,+GAiDe,SAASE,EAAT,GAAoC,MAAfC,EAAe,EAAfA,KAC5BC,EAAI,UAAGD,EAAKE,wBAAR,aAAG,EAAuBF,KACpC,IAAKC,EAAM,MAAM,IAAIH,MAAM,gBAE3B,IAAMK,EAAqBf,YACzBY,EAAKI,yBACLC,MACA,SAACC,EAAGC,GAAJ,mBACsE,GAApE,oBAACD,EAAEN,YAAH,aAAC,EAAQQ,iBAAT,QAAsB,IAAIC,cAA1B,oBAAwCF,EAAEP,YAA1C,aAAwC,EAAQQ,iBAAhD,QAA6D,OAGjE,OACE,gBAAC,IAAD,KACE,gBAAC,IAAcP,GAEf,gBAAC,IAAD,KACE,gBAAC,IAAD,KACE,gBAACS,EAAD,KAAmBT,EAAKU,aACxB,gBAACC,EAAD,KAAgBX,EAAKY,SAErB,gBAACC,EAAD,KACGX,EAAmBV,KAClB,gBAAGO,EAAH,EAAGA,KAAH,OACEA,GACE,gBAAC,IAAD,CACEe,IAAG,GAAKf,EAAKgB,MAAQhB,EAAKQ,UAC1BS,MAAOjB,WAW3B,IAAMU,EAAmBQ,IAAOC,GAAV,6EAAGD,CAAH,kEAOhBN,EAAgBM,IAAOE,GAAV,0EAAGF,CAAH,8DACRG,IAAMC,UAMXR,EAAcI,IAAOK,IAAV,wEAAGL,CAAH","file":"component---src-pages-media-tsx-5214cbf2d00cbb244bfe.js","sourcesContent":["type Maybe = T | undefined;\n\ntype Connection = {\n edges: Maybe<\n ReadonlyArray<\n Maybe<{\n node: T;\n }>\n >\n >;\n};\n\nexport function unwrapConnection(connection: Connection): T[] {\n const edges = (connection?.edges || []).filter(Boolean);\n return edges.map((edge) => edge?.node).filter(Boolean) as T[];\n}\n\nexport function unwrapFirst(connection: Connection): T {\n const first = unwrapConnection(connection)[0];\n if (!first) {\n throw new Error(\"Called unwrapFirst on a connection with no edges\");\n }\n return first;\n}\n","import { graphql } from \"gatsby\";\nimport * as React from \"react\";\nimport styled from \"styled-components\";\nimport { unwrapFirst, unwrapConnection } from \"../util\";\nimport {\n Layout,\n HelmetSeo,\n HorizontalContainer,\n Section,\n MediaResourceTile,\n} from \"../components/legacy\";\nimport { Color } from \"../constants/legacy\";\n\ntype Props = {\n data: GatsbyTypes.MediaPageQuery;\n};\n\nexport const query = graphql`\n query MediaPage {\n prismicMediaPage {\n data {\n pre_heading\n heading\n\n seo_title\n seo_description\n share_image {\n alt\n dimensions {\n width\n height\n }\n url\n }\n }\n }\n\n allPrismicMediaResource {\n edges {\n node {\n data {\n posted_at\n ...MediaResourceTile\n }\n }\n }\n }\n }\n`;\n\nexport default function MediaPage({ data }: Props) {\n const page = data.prismicMediaPage?.data;\n if (!page) throw new Error(\"page missing\");\n\n const mediaResourceNodes = unwrapConnection(\n data.allPrismicMediaResource\n ).sort(\n (a, b) =>\n (a.data?.posted_at ?? \"\").localeCompare(b.data?.posted_at ?? \"\") * -1\n );\n\n return (\n \n \n\n
\n \n {page.pre_heading}\n {page.heading}\n\n \n {mediaResourceNodes.map(\n ({ data }) =>\n data && (\n \n )\n )}\n \n \n
\n
\n );\n}\n\nconst StyledPreHeading = styled.h2`\n color: #808080;\n font-weight: 500;\n font-size: 18px;\n margin: 0 0 5px;\n`;\n\nconst StyledHeading = styled.h1`\n color: ${Color.darkBlue};\n font-size: 40px;\n font-weight: 700;\n margin: 0 0 50px;\n`;\n\nconst StyledTiles = styled.div`\n display: flex;\n flex-wrap: wrap;\n margin: 80px -10px;\n`;\n"],"sourceRoot":""}