{"version":3,"sources":["webpack:///./src/modules/RichText/RichText.js","webpack:///./src/components/Markdown/renderers/HeaderRenderer/HeaderRenderer.js","webpack:///./src/components/Markdown/renderers/LinkRenderer/LinkRenderer.js","webpack:///./src/components/Markdown/renderers/ParagraphRenderer/ParagraphRenderer.js","webpack:///./src/components/Markdown/renderers/ImageRenderer/ImageRenderer.js","webpack:///./src/components/List/List.js","webpack:///./src/components/Markdown/renderers/ListRenderer/ListRenderer.js","webpack:///./src/components/Markdown/markdown-styles.js","webpack:///./src/components/Markdown/renderers/TextRenderer/TextRenderer.js","webpack:///./src/components/Markdown/Markdown.js"],"names":["RichText","_React$Component","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","key","value","this","props","source","React","Ribbon","clearChildMargin","Markdown","displayName","defaultProps","area","SectionHeader","styled","Heading","withConfig","componentId","p","mediaOnly","xs","_templateObject","HeaderRenderer","_ref","children","level","AreaConsumer","tag","marginBottom","CtaLinkWrapper","div","MarkdownCtaLink","CtaLink","MarkdownNormalLink","Link","Object","assign","underline","LinkRenderer","isCtaLink","rest","_objectWithoutProperties","_excluded","meta","length","undefined","href","target","isExternalLink","hrefSplit","split","_target","splice","join","getMetaInfoFromHref","linkProps","_objectSpread","StyledParagraph","Paragraph","getLineHeight","isImageRendere","item","type","isLinkRendere","ParagraphRenderer","childs","toArray","reduce","acc","val","index","push","Array","isArray","map","child","every","link","concat","maxWidth","noBreaks","Wrapper","span","_taggedTemplateLiteral","imageSizes","default","main","ImageRenderer","_React$PureComponent","_this$props","src","alt","_src$split2","_slicedToArray","imgSrc","attr","attrs","qs","parse","width","parseInt","height","noSizes","Image","contain","ratio","sizes","Base","ul","theme","rem","bodyFontSize","_ref2","bodyFontWeight","UnorderedList","_ref3","name","color","yellow","OrderedList","withComponent","List","_ref4","ordered","Comp","ArticleList","ListRenderer","supportsStringRender","window","document","documentMode","test","navigator","userAgent","slice","TextRenderer","RENDERERS","ReactMarkdown","renderers","heading","paragraph","image","list","text","normalStyle","css","fullWidthStyle","StyledMarkdown","noMargin","clearMargin","fullWidth","invert","textInvert","className","id","ThemeContext","disallowedTypes"],"mappings":"ssDAGyD,IAOnDA,EAAQ,SAAAC,I,qRAAAC,CAAAF,EAAAC,GAAA,I,MAAAE,EAAAC,EAAAJ,GAAA,SAAAA,IAAA,OAAAK,EAAA,KAAAL,GAAAG,EAAAG,MAAA,KAAAC,WAcX,O,EAdWP,G,EAAA,EAAAQ,IAAA,SAAAC,MAMZ,WACE,OAAKC,KAAKC,MAAMC,OAGdC,gBAACC,IAAM,CAACC,kBAAgB,GACtBF,gBAACG,IAAQ,CAACJ,OAAQF,KAAKC,MAAMC,QAAU,MAJZ,U,8EAOhCZ,EAdW,CAASa,aAAjBb,EACGiB,YAAc,WADjBjB,EAEGkB,aAAe,CACpBC,KAAM,QAcKnB,S,+FCff,I,IAAMoB,EAAgBC,YAAOC,KAAQC,WAAA,CAAAN,YAAA,gCAAAO,YAAA,gBAAfH,CAAe,2BACrB,SAAAI,GAAC,MAAgB,cAAXA,EAAEN,KAAuB,GAAK,KAEhDO,IAAUC,GAAEC,I,EAAA,iC,kBAAAA,E,2EACE,SAAAH,GAAC,MAAgB,cAAXA,EAAEN,KAAuB,GAAK,OAItD,SAASU,EAAcC,GAA6B,IAA1BC,EAAQD,EAARC,SAAUC,EAAKF,EAALE,MAElC,OAAc,IAAVA,EAEAnB,gBAACoB,IAAY,MACV,SAAAd,GAAI,OACHN,gBAACO,EAAa,CAACD,KAAMA,EAAMe,IAAI,KAAKF,MAAO,GACxCD,MAMG,IAAVC,EAEAnB,gBAACoB,IAAY,MACV,SAAAd,GAAI,OACHN,gBAACO,EAAa,CAACD,KAAMA,EAAMe,IAAI,KAAKF,MAAO,EAAGG,aAAa,SACxDJ,MAQTlB,gBAACoB,IAAY,MACV,SAAAd,GAAI,OACHN,gBAACO,EAAa,CAACD,KAAMA,EAAMe,IAAI,KAAKF,MAAO,GACxCD,MAOXF,EAAeZ,YAAc,iBAC7BY,EAAeX,aAAe,GAEfW,Q,66CCxCf,IAAMO,EAAiBf,IAAOgB,IAAGd,WAAA,CAAAN,YAAA,+BAAAO,YAAA,eAAVH,CAAU,yBAI3BiB,EAAkB,SAAC3B,GAAgB,OACvCE,gBAACuB,EAAc,KACbvB,gBAAC0B,IAAY5B,KAIX6B,EAAqB,SAAC7B,GAC1B,OACEE,gBAAC4B,IAAIC,OAAAC,OAAA,GAAKhC,EAAK,CAAEiC,WAAW,IACzBjC,EAAMoB,WA0CPc,EAAe,SAAClC,GACpB,IAAQmC,EAAuBnC,EAAvBmC,UAAcC,EAAIC,EAAKrC,EAAKsC,GAC9BC,EArCoB,WAAsC,IAArCzC,EAAaF,UAAA4C,OAAA,QAAAC,IAAA7C,UAAA,GAAAA,UAAA,GAAG,GACvC8C,EAAO5C,EACP6C,EAA0BC,YAAeF,GAAQ,SAAW,QAE1DG,EAAYH,EAAKI,MAAM,KAE7B,GAAID,EAAUL,OAAS,EAAG,CACxB,IAAMO,EAAUF,EAAUG,OAAO,EAAGH,EAAUL,OAAS,GAAGS,KAAK,IAE/D,OAAQF,GACN,IAAK,QACHJ,EAAS,SACT,MACF,IAAK,OACHA,EAAS,QACT,MACF,IAAK,SACHA,EAAS,UACT,MACF,IAAK,MACHA,EAAS,OAMbD,EAAOG,EAAUI,KAAK,KAGxB,MAAO,CACLN,SACAD,QAMWQ,CAAoBlD,EAAM0C,MACjCS,EAASC,IAAA,GAAQhB,GAASG,GAEhC,OAAOJ,EACLjC,gBAACyB,EAAoBwB,GAErBjD,gBAAC2B,EAAuBsB,IAI5BjB,EAAa5B,YAAc,eAC3B4B,EAAa3B,aAAe,GAEb2B,Q,QC7ETmB,EAAkB3C,YAAO4C,KAAU1C,WAAA,CAAAN,YAAA,qCAAAO,YAAA,eAAjBH,CAAiB,0CACxB6C,YAAc,WAMzBC,EAAiB,SAAAC,GAAI,OACzBA,EAAKC,MAAkC,kBAA1BD,EAAKC,KAAKpD,aACnBqD,EAAgB,SAAAF,GAAI,OACxBA,EAAKC,MAAkC,iBAA1BD,EAAKC,KAAKpD,aAEzB,SAASsD,EAAiBzC,GAAsB,IAAnBC,EAAQD,EAARC,SACrByC,EAAS3D,WAAe4D,QAAQ1C,GAAU2C,QAAO,SAACC,EAAKC,EAAKC,GAWhE,OAVIV,EAAeS,GAEjBD,EAAIG,KAAKF,IAGJD,EAAIxB,QAAW4B,MAAMC,QAAQL,EAAIA,EAAIxB,OAAS,KACjDwB,EAAIG,KAAK,IAEXH,EAAIA,EAAIxB,OAAS,GAAG2B,KAAKF,IAEpBD,IACN,IAEH,OACE9D,gBAACA,WAAc,KACZ2D,EAAOS,KAAI,SAACC,EAAOL,GAClB,OAAKE,MAAMC,QAAQE,IAAUf,EAAee,GACnCA,EAGLA,EAAMC,MAAMb,GACPY,EAAMD,KAAI,SAACG,EAAM5E,GAAG,OACzBK,gBAACgC,EAAYH,OAAAC,OAAA,GACPyC,EAAKzE,MAAK,CACdH,IAAG,oBAAA6E,OAAsBR,EAAK,KAAAQ,OAAI7E,GAClCsC,WAAS,QAKbjC,gBAACmD,EAAe,CAACsB,UAAQ,EAACnD,cAAY,EAACoD,UAAQ,EAAC/E,IAAKqE,GAClDK,OAQbX,EAAkBtD,YAAc,oBAChCsD,EAAkBrD,aAAe,GAElBqD,I,EAAAA,I,0lFCrDf,IAAMiB,EAAUnE,IAAOoE,KAAIlE,WAAA,CAAAN,YAAA,yBAAAO,YAAA,eAAXH,CAAW,oDAGZ,SAAAI,GAAC,OAAIA,EAAE6D,WAElB5D,IAAUC,GAAEC,M,gHAAA8D,CAAA,kCAKVC,EAAa,CACjBC,QAAS,CACPN,SAAU,UAEZO,KAAM,CACJP,SAAU,UAIRQ,EAAa,SAAAC,I,qRAAA7F,CAAA4F,EAAAC,GAAA,I,MAAA5F,EAAAC,EAAA0F,GAAA,SAAAA,IAAA,OAAAzF,EAAA,KAAAyF,GAAA3F,EAAAG,MAAA,KAAAC,WA4BhB,O,EA5BgBuF,G,EAAA,EAAAtF,IAAA,SAAAC,MAIjB,WACE,IAAAuF,EAAqBtF,KAAKC,MAAlBsF,EAAGD,EAAHC,IAAKC,EAAGF,EAAHE,IAEb,IAAKD,EAAK,OAAO,KACjB,IAAwCE,EAAAC,EAAjBH,EAAIxC,MAAM,IAAK,GAAE,GAAjC4C,EAAMF,EAAA,GAAEG,EAAIH,EAAA,GACbI,EAAQC,IAAGC,MAAMH,GACjBI,EAAQC,SAASJ,EAAMG,MAAO,IAC9BE,EAASD,SAASJ,EAAMK,OAAQ,IAChCC,GAAWH,IAAUE,EAE3B,OACE/F,gBAAC2E,EAAO,CAACF,SAAUoB,EAAQ,IAAMG,EAAU,GAAHxB,OAAMqB,EAAK,MAAO,QACxD7F,gBAACiG,IAAK,CACJb,IAAKI,EAELK,MAAOA,GAAS,IAChBE,OAAQA,GAAU,IAClBG,QAASF,EACTX,IAAKA,EACLc,MAAM,WACNC,MAAOtB,EAAWC,gB,8EAIzBE,EA5BgB,CAASjF,iBAAtBiF,EACG7E,YAAc,gBADjB6E,EAEG5E,aAAe,GA6BT4E,Q,qZCrDf,IAAMoB,GAAO7F,IAAO8F,GAAE5F,WAAA,CAAAN,YAAA,aAAAO,YAAA,eAATH,CAAS,iOAGP,SAAAS,GAAA,IAAGsF,EAAKtF,EAALsF,MAAK,OAAOC,YAAID,EAAME,iBACvB,SAAAC,GAAQ,OAAAA,EAALH,MAAkBI,kBAkBhCC,GAAgBpG,YAAO6F,IAAK3F,WAAA,CAAAN,YAAA,sBAAAO,YAAA,eAAZH,CAAY,SAC9B,SAAAqG,GAAA,IAAGN,EAAKM,EAALN,MAAK,MACO,SAAfA,EAAMO,MAAkC,SAAfP,EAAMO,KAAe,gIAAAtC,OAKxBuC,IAAMC,OAAM,+CAAAxC,OAEvBgC,YAAI,IAAG,qBAAAhC,OACNgC,YAAI,IAAG,mBAAAhC,OACTgC,aAAK,IAAG,kBAAAhC,OACTgC,YAAI,GAAE,sKAUbS,GAAczG,YAAO6F,GAAKa,cAAc,OAAMxG,WAAA,CAAAN,YAAA,oBAAAO,YAAA,eAAhCH,CAAgC,0JAYpD,SAAS2G,GAAIC,GAAyC,IAAtClG,EAAQkG,EAARlG,SAAUmG,EAAOD,EAAPC,QAAYvH,EAAKqC,GAAAiF,EAAAhF,GACnCkF,EAAOD,EAAUJ,GAAcL,GACrC,OAAO5G,gBAACsH,EAASxH,EAAQoB,GAG3BiG,GAAK/G,YAAc,OACnB+G,GAAK9G,aAAe,GAEL8G,UClETI,GCPkB/G,IAAOgB,IAAGd,WAAA,CAAAN,YAAA,4BAAAO,YAAA,eAAVH,CAAU,sBDOL0G,cAAcC,IAE3C,SAASK,GAAYvG,GAA+B,IAA5BC,EAAQD,EAARC,SAAUmG,EAAOpG,EAAPoG,QAChC,OAAOrH,gBAACuH,GAAW,CAACF,QAASA,GAAUnG,GAGzCsG,GAAapH,YAAc,eAC3BoH,GAAanH,aAAe,CAC1BgH,SAAS,GAGIG,UEJXC,KAHgB,oBAAXC,SACNC,SAASC,cAAgB,OAAOC,KAAKC,UAAUC,cAGrCjC,UAAU9F,WAAiB,MAAMgI,MAAM,EAAG,GAAI,KAAO,GAElE,SAASC,GAAanI,GACpB,OAAO2H,GACH3H,EAAMoB,SACNlB,gBAAoB,OAAQ,KAAMF,EAAMoB,UAG9C+G,GAAa7H,YAAc,eAC3B6H,GAAa5H,aAAe,GAEb4H,I,GAAAA,M,6gCCVf,IAAMC,GAAShF,MAAA,GACViF,IAAcC,WAAS,IAC1BC,QAASrH,EACTsH,UAAW5E,EACXa,KAAMvC,EACNuG,MAAOtD,EACPuD,KAAMhB,GACNiB,KAAMR,KAGFS,GAAcC,YAAG,uBAEnB9H,IAAUC,GAAEC,Q,gHAAA8D,CAAA,kCAKV+D,GAAiBD,YAAG,0BAMpBE,GAAiBrI,YAAO2H,KAAczH,WAAA,CAAAN,YAAA,2BAAAO,YAAA,eAArBH,CAAqB,8CAExC,SAAAI,GAAC,OAAKA,EAAEkI,SAAWC,cAAgBL,MACnC,SAAA9H,GAAC,OAAKA,EAAEoI,UAAYJ,GAAiB,QAC9B,SAAA3H,GAAA,IAAGsF,EAAKtF,EAALsF,MAAa,OAAAtF,EAANgI,OAAuB1C,EAAM2C,WAAa3C,EAAMkC,QAGrE,SAAStI,GAAQuG,GAOP,IANR3G,EAAM2G,EAAN3G,OACA+I,EAAQpC,EAARoC,SACAE,EAAStC,EAATsC,UACAG,EAASzC,EAATyC,UACAC,EAAE1C,EAAF0C,GACAH,EAAMvC,EAANuC,OAEM1C,EAAQvG,aAAiBqJ,KAE/B,OACErJ,gBAAC6I,GAAc,CACb9I,OAAQA,EACR+I,SAAUA,EACVE,UAAWA,EACXG,UAAWA,EACXf,UAAWF,GACXoB,gBAAiB,CAAC,aAAc,QAChCF,GAAIA,EACJH,OAAQA,EACR1C,MAAOA,IAKbpG,GAASC,YAAc,WACvBD,GAASE,aAAe,GAETF,Q","file":"static/scripts/rich-text-b0390e2048fac1a1fab1.js","sourcesContent":["// @flow\nimport * as React from 'react'\nimport Ribbon from '../../components/Ribbon/Ribbon'\nimport Markdown from '../../components/Markdown/Markdown'\nimport type { RichTextViewModel } from '../../types/RichTextViewModel'\n\ntype Props = RichTextViewModel\n\ntype State = {}\n\nclass RichText extends React.Component {\n static displayName = 'RichText'\n static defaultProps = {\n area: 'wide',\n }\n\n render() {\n if (!this.props.source) return null\n\n return (\n \n \n \n )\n }\n}\n\nexport default RichText\n","// @flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport Heading from '../../../Heading/Heading'\nimport { mediaOnly } from '../../../../styles/media'\nimport { AreaConsumer } from '../../../AreaContext/AreaContext'\n\ntype Props = {\n children?: React.Node,\n level: 1 | 2 | 3 | 4 | 5,\n}\n\nconst SectionHeader = styled(Heading)`\n margin-top: ${p => (p.area === 'accordion' ? 40 : 80)}px;\n\n ${mediaOnly.xs`\n margin-top: ${p => (p.area === 'accordion' ? 20 : 40)}px;\n `};\n`\n\nfunction HeaderRenderer({ children, level }: Props) {\n /* Abuse the fact that we have 5 levels of headers, to render special blocks. */\n if (level === 1) {\n return (\n \n {area => (\n \n {children}\n \n )}\n \n )\n }\n if (level === 2) {\n return (\n \n {area => (\n \n {children}\n \n )}\n \n )\n }\n\n return (\n \n {area => (\n \n {children}\n \n )}\n \n )\n}\n\nHeaderRenderer.displayName = 'HeaderRenderer'\nHeaderRenderer.defaultProps = {}\n\nexport default HeaderRenderer\n","// @flow\nimport * as React from 'react'\nimport styled from 'styled-components'\n\nimport type { LinkViewModel } from '../../../../types/LinkViewModel'\nimport type { LinkTargetTypes } from '../../../../types/enums/LinkTargetTypes'\n\nimport CtaLink from '../../../CtaLink/CtaLink'\nimport { Link, isExternalLink } from '../../../Link/Link'\n\ntype LinkProps = LinkViewModel & {\n children?: React.Node,\n}\n\ntype Props = LinkViewModel & {\n children?: React.Node,\n isCtaLink?: boolean,\n}\n\nconst CtaLinkWrapper = styled.div`\n margin-bottom: 1rem;\n`\n\nconst MarkdownCtaLink = (props: LinkProps) => (\n \n \n \n)\n\nconst MarkdownNormalLink = (props: LinkProps) => {\n return (\n \n {props.children}\n \n )\n}\n\ntype LinkMetaInfo = { href?: string, target?: LinkTargetTypes }\n\nconst getMetaInfoFromHref = (value: string = ''): LinkMetaInfo => {\n let href = value\n let target: LinkTargetTypes = isExternalLink(href) ? '_blank' : '_self'\n\n const hrefSplit = href.split('|')\n\n if (hrefSplit.length > 1) {\n const _target = hrefSplit.splice(1, hrefSplit.length - 1).join('')\n\n switch (_target) {\n case 'blank':\n target = '_blank'\n break\n case 'self':\n target = '_self'\n break\n case 'parent':\n target = '_parent'\n break\n case 'top':\n target = '_top'\n break\n default:\n break\n }\n\n href = hrefSplit.join('|')\n }\n\n return {\n target,\n href,\n }\n}\n\nconst LinkRenderer = (props: Props) => {\n const { isCtaLink, ...rest } = props\n const meta = getMetaInfoFromHref(props.href)\n const linkProps = { ...rest, ...meta }\n\n return isCtaLink ? (\n \n ) : (\n \n )\n}\n\nLinkRenderer.displayName = 'LinkRenderer'\nLinkRenderer.defaultProps = {}\n\nexport default LinkRenderer\n","// @flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport Paragraph from '../../../Paragraph/Paragraph'\nimport { getLineHeight } from '../../../../styles/style-helpers'\nimport LinkRenderer from '../LinkRenderer/LinkRenderer'\nimport { color } from '../../../../styles/theme'\n\ntype Props = {\n children?: React.Node,\n}\n\nconst StyledParagraph = styled(Paragraph)`\n line-height: ${getLineHeight('normal')};\n & > a {\n color: inherit;\n }\n`\n\nconst isImageRendere = item =>\n item.type && item.type.displayName === 'ImageRenderer'\nconst isLinkRendere = item =>\n item.type && item.type.displayName === 'LinkRenderer'\n\nfunction ParagraphRenderer({ children }: Props) {\n const childs = React.Children.toArray(children).reduce((acc, val, index) => {\n if (isImageRendere(val)) {\n // Images are always rendered in their own \"paragraph\"\n acc.push(val)\n } else {\n // All other children are added to the list\n if (!acc.length || !Array.isArray(acc[acc.length - 1])) {\n acc.push([])\n }\n acc[acc.length - 1].push(val)\n }\n return acc\n }, [])\n\n return (\n \n {childs.map((child, index) => {\n if (!Array.isArray(child) && isImageRendere(child)) {\n return child\n }\n\n if (child.every(isLinkRendere)) {\n return child.map((link, key) => (\n \n ))\n }\n return (\n \n {child}\n \n )\n })}\n \n )\n}\n\nParagraphRenderer.displayName = 'ParagraphRenderer'\nParagraphRenderer.defaultProps = {}\n\nexport default ParagraphRenderer\n","// @flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport qs from 'qs'\nimport Image from '../../../Image/Image'\nimport { mediaOnly } from '../../../../styles/media'\n\ntype Props = {\n src: string,\n title?: string,\n alt?: string,\n}\n\ntype State = {}\n\nconst Wrapper = styled.span`\n display: block;\n margin: 80px 0;\n max-width: ${p => p.maxWidth};\n\n ${mediaOnly.xs`\n margin: 40px 0;\n `};\n`\n\nconst imageSizes = {\n default: {\n maxWidth: '1440px',\n },\n main: {\n maxWidth: '880px',\n },\n}\n\nclass ImageRenderer extends React.PureComponent {\n static displayName = 'ImageRenderer'\n static defaultProps = {}\n\n render() {\n const { src, alt } = this.props\n\n if (!src) return null\n const [imgSrc, attr] = src.split('?', 2)\n const attrs = qs.parse(attr)\n const width = parseInt(attrs.width, 10)\n const height = parseInt(attrs.height, 10)\n const noSizes = !width || !height\n\n return (\n 0 && !noSizes ? `${width}px` : '100%'}>\n \n \n )\n }\n}\n\nexport default ImageRenderer\n","// @flow\nimport * as React from 'react'\nimport styled from 'styled-components'\nimport { rem } from 'polished'\n\nimport { color } from '../../styles/theme'\n\ntype Props = {\n children?: React.Node,\n ordered?: boolean,\n}\n\nconst Base = styled.ul`\n color: inherit;\n //color: ${({ theme }) => theme.text};\n font-size: ${({ theme }) => rem(theme.bodyFontSize)};\n font-weight: ${({ theme }) => theme.bodyFontWeight};\n line-height: 1.5;\n padding: 0 0 0 1.5rem;\n margin-bottom: 2.5rem;\n list-style: none;\n\n > li {\n margin-bottom: 0.5rem;\n list-style-type: none;\n position: relative;\n }\n\n li > ul,\n li > ol {\n margin: 0.5rem 0 0;\n }\n`\n//TODO\nconst UnorderedList = styled(Base)`\n ${({ theme }) =>\n theme.name === 'kids' || theme.name === 'lgbt'\n ? `\n li::before {\n content: ''; /* The unicode for • character */\n position: absolute;\n border: 3px solid ${color.yellow};\n border-radius: 50%;\n width: ${rem(12)};\n height: ${rem(12)};\n left: ${rem(-20)};\n top: ${rem(6)};\n }`\n : `li::before {\n content: '\\\\2022'; /* The unicode for • character */\n position: absolute;\n left: -1em;\n font-size: 1em;\n }`}\n`\n\nconst OrderedList = styled(Base.withComponent('ol'))`\n counter-reset: section;\n li::before {\n counter-increment: section;\n content: counter(section) '.';\n font-weight: 500;\n position: absolute;\n left: -1em;\n font-size: 1rem;\n }\n`\n\nfunction List({ children, ordered, ...props }: Props) {\n const Comp = ordered ? OrderedList : UnorderedList\n return {children}\n}\n\nList.displayName = 'List'\nList.defaultProps = {}\n\nexport default List\n","// @flow\nimport * as React from 'react'\nimport List from '../../../List/List'\nimport { MaxWidth } from '../../markdown-styles'\n\ntype Props = {\n children?: React.Node,\n ordered: boolean,\n}\n\nconst ArticleList = MaxWidth.withComponent(List)\n\nfunction ListRenderer({ children, ordered }: Props) {\n return {children}\n}\n\nListRenderer.displayName = 'ListRenderer'\nListRenderer.defaultProps = {\n ordered: false,\n}\n\nexport default ListRenderer\n","// @flow\nimport styled from 'styled-components'\n\nexport const MaxWidth = styled.div`\n max-width: 550px;\n`\n","// @flow\nimport * as React from 'react'\n\ntype Props = {\n children?: React.Node,\n}\n\n// this renderer resolved a bug in Internet Explorer 11.\n// if supportsStringRender === true, it forces the returned string to be\n// wrapper in a React Fragment to prevent the IE bug from happening\n\n// detect IE8 and above, and Edge\n// source: https://stackoverflow.com/questions/31757852/how-can-i-detect-internet-explorer-ie-and-microsoft-edge-using-javascript\nconst isIE = () =>\n typeof window !== 'undefined' &&\n (document.documentMode || /Edge/.test(navigator.userAgent))\n\nvar supportsStringRender =\n !isIE() && parseInt((React.version || '16').slice(0, 2), 10) >= 16\n\nfunction TextRenderer(props: Props) {\n return supportsStringRender\n ? props.children\n : React.createElement('span', null, props.children)\n}\n\nTextRenderer.displayName = 'TextRenderer'\nTextRenderer.defaultProps = {}\n\nexport default TextRenderer\n","// @flow\nimport * as React from 'react'\nimport ReactMarkdown from 'react-markdown'\n\nimport type { MarkdownViewModel } from '../../types/MarkdownViewModel'\n\nimport HeaderRenderer from './renderers/HeaderRenderer/HeaderRenderer'\nimport ParagraphRenderer from './renderers/ParagraphRenderer/ParagraphRenderer'\nimport LinkRenderer from './renderers/LinkRenderer/LinkRenderer'\nimport ImageRenderer from './renderers/ImageRenderer/ImageRenderer'\nimport ListRenderer from './renderers/ListRenderer/ListRenderer'\nimport TextRenderer from './renderers/TextRenderer/TextRenderer'\n\nimport styled, { css, ThemeContext } from 'styled-components'\nimport { mediaOnly } from '../../styles/media'\nimport { clearMargin } from '../../styles/style-helpers'\n\ntype Props = MarkdownViewModel & { invert?: boolean }\n\nconst RENDERERS = {\n ...ReactMarkdown.renderers,\n heading: HeaderRenderer,\n paragraph: ParagraphRenderer,\n link: LinkRenderer,\n image: ImageRenderer,\n list: ListRenderer,\n text: TextRenderer,\n}\n\nconst normalStyle = css`\n margin: 80px 0;\n ${mediaOnly.xs`\n margin: 40px 0;\n `};\n`\n\nconst fullWidthStyle = css`\n & p {\n max-width: 100%;\n }\n`\n\nconst StyledMarkdown = styled(ReactMarkdown)`\n word-break: break-word;\n ${p => (p.noMargin ? clearMargin() : normalStyle)};\n ${p => (p.fullWidth ? fullWidthStyle : null)};\n color: ${({ theme, invert }) => (invert ? theme.textInvert : theme.text)};\n`\n\nfunction Markdown({\n source,\n noMargin,\n fullWidth,\n className,\n id,\n invert,\n}: Props) {\n const theme = React.useContext(ThemeContext)\n\n return (\n \n )\n}\n\nMarkdown.displayName = 'Markdown'\nMarkdown.defaultProps = {}\n\nexport default Markdown\n"],"sourceRoot":""}