{"version":3,"sources":["webpack:///./src/components/tag-list.js","webpack:///./src/components/blog-list.js","webpack:///./src/pages/blog.js"],"names":["query","render","data","posts","allContentfulBlogPost","edges","tags","Array","from","Set","reduce","acc","post","concat","node","className","to","sort","map","tag","index","key","BlogList","props","state","visible","loadMore","bind","this","setState","prevState","slice","slug","src","heroImage","file","url","alt","title","length","type","onClick","React","Component","BlogIndex","prev","metaData","get","servicesNav","hero","size","isHidden","text","location","pageQuery"],"mappings":"upcAIe,oBACX,kBAAC,IAAD,CACIA,MAAK,aAaLC,OAAW,SAAAC,GACP,IAAMC,EAAQD,EAAKE,sBAAsBC,MACnCC,EAAQC,MAAMC,KAAK,IAAIC,IAAIN,EAAMO,QAAO,SAACC,EAAKC,GAAN,OAAeD,EAAIE,OAAOD,EAAKE,KAAKR,QAAM,MACxF,OACI,yBAAKS,UAAU,kCACX,0BAAMA,UAAU,OACZ,kBAAC,IAAD,CAAMC,GAAG,SAAT,QAGAV,EAAKW,OAAOC,KAAI,SAACC,EAAIC,GACjB,OACI,0BAAML,UAAU,MAAMM,IAAKD,GACvB,kBAAC,IAAD,CAAMJ,GAAE,cAAgBG,EAAhB,KAAyBA,SA1BjE,UCAEG,E,YACL,WAAYC,GAAQ,IAAD,SAClB,cAAMA,IAAN,MAEKC,MAAQ,CACZC,QAAQ,GAGT,EAAKC,SAAW,EAAKA,SAASC,KAAd,QAPE,E,oCAUnBD,SAAA,WACCE,KAAKC,UAAS,SAACC,GACd,MAAO,CACNL,QAAQK,EAAUL,QAAU,O,EAK/BxB,OAAA,WAAU,IAAD,EAEe2B,KAAKL,MAApBpB,EAFA,EAEAA,MAFA,EAEOG,KAEf,OACC,yBAAKS,UAAU,gBACd,yBAAKA,UAAU,aACd,kBAAC,EAAD,MACA,yBAAKA,UAAU,wBAEbZ,EAAM4B,MAAM,EAAGH,KAAKJ,MAAMC,SAASP,KAAI,WAASE,GAAW,IAAlBN,EAAiB,EAAjBA,KACxC,OACC,yBAAKC,UAAU,sBAAsBM,IAAKD,GACzC,yBAAKL,UAAU,QACd,yBAAKA,UAAU,cACd,4BAAQA,UAAU,iBACjB,kBAAC,IAAD,CAAMC,GAAE,SAAWF,EAAKkB,KAAhB,KACP,yBAAKC,IAAKnB,EAAKoB,UAAUC,KAAKC,IAAKC,IAAQvB,EAAKwB,MAAV,mBAIzC,yBAAKvB,UAAU,gBACd,wBAAIA,UAAU,mBAAmBD,EAAKwB,OACtC,2BACC,kBAAC,IAAD,CAAMtB,GAAE,SAAWF,EAAKkB,KAAhB,KAAR,qBASNJ,KAAKJ,MAAMC,QAAUtB,EAAMoC,QAC5B,yBAAKxB,UAAU,uBACd,yBAAKA,UAAU,eACd,yBAAKA,UAAU,qBACd,4BAAQA,UAAU,6BAA6ByB,KAAK,SAASC,QAASb,KAAKF,UAA3E,mB,GAxDcgB,IAAMC,WAoEdrB,O,2QClETsB,E,YACJ,WAAYrB,GAAQ,IAAD,SACjB,cAAMA,IAAN,MAEKC,MAAQ,CACXC,QAAQ,GAGV,EAAKC,SAAW,EAAKA,SAASC,KAAd,QAPC,E,oCAUnBD,SAAA,WACEE,KAAKC,UAAS,SAACgB,GACb,MAAO,CAACpB,QAAQoB,EAAKpB,QAAU,O,EAInCxB,OAAA,WACE,IAAM6C,EAAWC,IAAInB,KAAKL,MAAO,mCAC3ByB,EAAcD,IAAInB,KAAKL,MAAM,uCAC7BpB,EAAQ4C,IAAInB,KAAM,0CAClBtB,EAAQC,MAAMC,KAAK,IAAIC,IAAIN,EAAMO,QAAO,SAACC,EAAKC,GAAN,OAAeD,EAAIE,OAAOD,EAAKE,KAAKR,QAAM,MAClFJ,EAAO,CACX+C,KAAK,YACLC,KAAK,YACLC,UAAU,EACVC,KAAM,OACNJ,eAGF,OAEE,kBAAC,IAAD,CAAQK,SAAUzB,KAAKL,MAAM8B,SAAUnD,KAAMA,GAC3C,kBAAC,IAAD,CAAU4C,SAAUA,IACpB,kBAAC,IAAD,CAAU3C,MAAOA,EAAOG,KAAMA,M,GAlCdoC,IAAMC,WAwCfC,YAER,IAAMU,EAAS","file":"component---src-pages-blog-js-084feb3fecd9430219bf.js","sourcesContent":["import React from 'react'\nimport { StaticQuery, graphql, Link } from 'gatsby'\n\n\nexport default () => (\n {\n const posts = data.allContentfulBlogPost.edges\n const tags = Array.from(new Set(posts.reduce((acc, post) => acc.concat(post.node.tags),[])))\n return (\n
\n \n all\n \n {\n tags.sort().map((tag,index) => {\n return(\n \n {tag}\n \n )\n })\n }\n
\n )\n }}\n /> \n)\n","import React from 'react'\nimport Img from 'gatsby-image'\nimport { Link } from 'gatsby'\nimport TagList from '../components/tag-list'\n\nclass BlogList extends React.Component {\n\tconstructor(props) {\n\t\tsuper(props)\n\n\t\tthis.state = {\n\t\t\tvisible:9,\n\t\t}\n\n\t\tthis.loadMore = this.loadMore.bind(this)\n\t}\n\n\tloadMore(){\n\t\tthis.setState((prevState) => {\n\t\t\treturn {\n\t\t\t\tvisible:prevState.visible + 3\n\t\t\t}\n\t\t})\n\t}\n\n\trender() {\n\n\t\tconst { posts, tags} = this.props\n\n\t\treturn (\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tposts.slice(0, this.state.visible).map(({node}, index) => {\n\t\t\t\t\t\t\t\treturn(\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{`${node.title}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t\t\t

{node.title}

\n\t\t\t\t\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\t\t\t\t\tRead blog\n\t\t\t\t\t\t\t\t\t\t\t\t

\n\t\t\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\t
\t\t\n\t\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t}\n\t\t\t\t\t
\n\t\t\t\t\t{ this.state.visible < posts.length &&\n\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t
\t\n\t\t\t\t\t\t
\n\t\t\t\t\t}\n\t\t\t\t
\n\t\t\t
\n\t\t)\n\t}\n\n}\n\nexport default BlogList","import React from 'react'\nimport { graphql } from 'gatsby'\nimport get from 'lodash/get'\nimport Layout from '../components/layout'\nimport BlogList from '../components/blog-list'\nimport SiteMeta from '../components/meta-data'\n\nclass BlogIndex extends React.Component {\n constructor(props) {\n super(props)\n\n this.state = {\n visible:9,\n }\n\n this.loadMore = this.loadMore.bind(this)\n }\n\n loadMore(){\n this.setState((prev)=>{\n return {visible:prev.visible + 1}\n })\n }\n\n render() {\n const metaData = get(this.props, 'data.site.siteMetadata.blogPage')\n const servicesNav = get(this.props,'data.allContentfulOurServices.edges')\n const posts = get(this, 'props.data.allContentfulBlogPost.edges')\n const tags = Array.from(new Set(posts.reduce((acc, post) => acc.concat(post.node.tags),[])))\n const data = {\n hero:'hero-blog',\n size:'is-medium',\n isHidden: true,\n text: 'Blog',\n servicesNav\n }\n\n return (\n\n \n \n \n \n )\n }\n}\n\nexport default BlogIndex\n\nexport const pageQuery = graphql`\n query BlogIndexQuery {\n site {\n siteMetadata {\n blogPage {\n title\n description\n imageUrl\n siteUrl\n }\n }\n } \n allContentfulBlogPost(filter: {node_locale: {eq: \"en-GB\"}} sort: {fields: [publishDate], order: DESC}) {\n edges {\n node {\n id\n title\n slug\n publishDate(formatString: \"MMMM Do, YYYY\")\n tags\n heroImage {\n file {\n url\n }\n }\n description {\n childMarkdownRemark {\n html\n }\n }\n }\n }\n }\n allContentfulOurServices(filter: {node_locale: {eq: \"en-GB\"}}, sort: {order: ASC, fields: order}) {\n edges {\n node {\n title\n slug\n }\n }\n }\n }\n`\n"],"sourceRoot":""}