{"version":3,"sources":["assets/images/screenshot-plugin.png","../node_modules/react-use/esm/useEffectOnce.js","../node_modules/react-use/esm/useMount.js","../node_modules/react-use/esm/useUnmount.js","pages/plugins-wordpress.js","hooks/useMetaTags.js","components/footer/footer-brand.module.scss","components/footer/footer-link.module.scss","components/footer/social-icons.module.scss","components/footer/footer.module.scss","components/Shared/Jumbotron/Jumbotron.js","components/Shared/Jumbotron/Jumbotron.module.scss","components/footer/about-us.js","components/footer/footer-brand.js","components/footer/footer-link.js","components/footer/social-icons.js","components/footer/top-link.js","components/footer/footer.js","utils/payments.js","pages/plugins-wordpress.module.scss"],"names":["useEffectOnce","effect","useEffect","useMount","fn","useUnmount","fnRef","useRef","current","PluginsWordPress","description","keywords","metaDescription","document","querySelector","setAttribute","metaKeywords","Jumbotron","className","styles","plugins_jumbotron","container","href","type","span","src","screenshot","alt","Icon","glyph","GLYPHS","SNAZZY_MAPS","feature_icon","GOOGLE","STAR","classNames","pricing_tier","price","subtitle","info","action","itemId","WORDPRESS_SINGLE_ID","WORDPRESS_MULTI_ID","target","rel","PurchaseButton","authenticated","useSelector","currentUserAuthenticatedSelector","dispatch","useDispatch","showAuthModal","useCallback","showModal","MODAL","NOT_AUTHENTICATED","checkoutItem","checkout","onClick","module","exports","children","jumbotron","img_jumbotron","StyledFooterAboutUs","styled","div","AboutUs","routes","home","path","press","FooterBrand","footer_brand","title","FooterLink","text","highlight","footer_link","new_label","SocialIcons","social_icons","TWITTER","FACEBOOK","MAIL","StyledLink","a","TopLink","scrollTop","e","preventDefault","window","scroll","top","left","behavior","error","scrollTo","Footer","hasPricingEnabled","currentUserHasPricingEnabledSelector","footer","footer_content","explore","createStyle","mapBuilder","plugins","help","pricing","link_grid","PRO_PLAN_ID","TEAM_PLAN_ID","httpPost","sessionId","stripe","Stripe","process","redirectToCheckout","console","notify"],"mappings":"wNAAe,MAA0B,8C,mECI1BA,EAHK,SAAUC,GAC1BC,oBAAUD,EAAQ,KCIPE,EALA,SAAUC,GACrBJ,GAAc,WACVI,QCKOC,EANE,SAAUD,GACvB,IAAIE,EAAQC,iBAAOH,GAEnBE,EAAME,QAAUJ,EAChBJ,GAAc,WAAc,OAAO,WAAc,OAAOM,EAAME,e,OCgBnD,SAASC,IChBG,IAACC,EAAaC,EDkBrC,OClBwBD,EDUxB,wGCVqCC,EDWnB,kDCVlBR,GAAS,WACL,IAAMS,EAAkBC,SAASC,cAAc,4BAC3CF,GAAiBA,EAAgBG,aAAa,UAAWL,GAE7D,IAAMM,EAAeH,SAASC,cAAc,yBACxCE,GAAcA,EAAaD,aAAa,UAAWJ,MAG3DN,GAAW,WACP,IAAMO,EAAkBC,SAASC,cAAc,4BAC3CF,GAAiBA,EAAgBG,aAAa,UAdtD,sHAgBI,IAAMC,EAAeH,SAASC,cAAc,yBACxCE,GAAcA,EAAaD,aAAa,UAhB3B,sEDqBjB,qCACI,cAACE,EAAA,EAAD,CAAWC,UAAWC,IAAOC,kBAA7B,SACI,eAAC,IAAD,CAAYF,UAAWC,IAAOE,UAA9B,UACI,mCACI,sBAAMH,UAAU,4BAAhB,yBACA,oBAAIA,UAAU,YAAd,iCAEJ,mBAAGA,UAAU,OAAb,kFACA,mBACII,KAAK,0EACLJ,UAAU,2DAFd,sBAMA,8BACI,0FAIZ,cAAC,IAAD,CAASK,KAAK,MAAd,SACI,cAAC,IAAD,CAAYL,UAAU,0DAAtB,SACI,cAAC,IAAD,UACI,cAAC,IAAD,CAAKM,KAAK,2BAAV,SACI,qBAAKC,IAAKC,EAAYR,UAAWC,IAAOO,WAAYC,IAAI,4CAKxE,cAAC,IAAD,UACI,cAAC,IAAD,CAAYT,UAAU,0DAAtB,SACI,cAAC,IAAD,UACI,eAAC,IAAD,CAAKM,KAAK,wCAAV,UACI,oBAAIN,UAAU,wBAAd,sBACA,qBAAKA,UAAU,qBAAf,SACI,sBAAKA,UAAU,qBAAf,UACI,yBAASA,UAAU,qDAAnB,SACI,sBAAKA,UAAU,oEAAf,UACI,qBAAKA,UAAU,cAAf,SACI,cAACU,EAAA,EAAD,CAAMC,MAAOC,IAAOC,YAAab,UAAWC,IAAOa,iBAEvD,oBAAId,UAAU,uBAAd,kCACA,0LAOR,yBAASA,UAAU,qDAAnB,SACI,sBAAKA,UAAU,oEAAf,UACI,qBAAKA,UAAU,cAAf,SACI,cAACU,EAAA,EAAD,CAAMC,MAAOC,IAAOG,OAAQf,UAAWC,IAAOa,iBAElD,oBAAId,UAAU,uBAAd,0CACA,sKAMR,yBAASA,UAAU,qDAAnB,SACI,sBAAKA,UAAU,oEAAf,UACI,qBAAKA,UAAU,cAAf,SACI,cAACU,EAAA,EAAD,CAAMC,MAAOC,IAAOI,KAAMhB,UAAWC,IAAOa,iBAEhD,oBAAId,UAAU,uBAAd,mCACA,kNAahC,cAAC,IAAD,CAASK,KAAK,MAAd,SACI,cAAC,IAAD,CAAYL,UAAU,0DAAtB,SACI,cAAC,IAAD,UACI,eAAC,IAAD,CAAKM,KAAK,wCAAV,UACI,oBAAIN,UAAU,wBAAd,qBACA,qBAAKA,UAAU,qBAAf,SACI,sBAAKA,UAAU,qBAAf,UACI,yBACIA,UAAWiB,IACPhB,IAAOiB,aACP,uCAHR,SAMI,sBAAKlB,UAAU,2DAAf,UACI,sBAAKA,UAAWC,IAAOkB,MAAvB,UACI,oBAAInB,UAAU,4BAAd,6CAGA,qBAAKA,UAAWC,IAAOmB,SAAvB,qBAEJ,qBAAKpB,UAAWiB,IAAWhB,IAAOoB,KAAM,yBAAxC,SACI,+HAKJ,qBAAKrB,UAAWC,IAAOqB,OAAvB,SACI,mBACItB,UAAU,oDACVI,KAAK,0EAFT,6BASZ,yBACIJ,UAAWiB,IACPhB,IAAOiB,aACP,uCAHR,SAMI,sBAAKlB,UAAU,2DAAf,UACI,sBAAKA,UAAWC,IAAOkB,MAAvB,UACI,oBAAInB,UAAU,4BAAd,4CAGA,qBAAKA,UAAWC,IAAOmB,SAAvB,SACI,+CAGR,qBAAKpB,UAAWiB,IAAWhB,IAAOoB,KAAM,yBAAxC,SACI,8KAMJ,qBAAKrB,UAAWC,IAAOqB,OAAvB,SACI,cAAC,EAAD,CAAgBC,OAAQC,aAIpC,yBACIxB,UAAWiB,IACPhB,IAAOiB,aACP,uCAHR,SAMI,sBAAKlB,UAAU,2DAAf,UACI,sBAAKA,UAAWC,IAAOkB,MAAvB,UACI,oBAAInB,UAAU,4BAAd,8CAGA,qBAAKA,UAAWC,IAAOmB,SAAvB,SACI,+CAGR,qBAAKpB,UAAWiB,IAAWhB,IAAOoB,KAAM,yBAAxC,SACI,0HAKJ,qBAAKrB,UAAWC,IAAOqB,OAAvB,SACI,cAAC,EAAD,CAAgBC,OAAQE,2BAU5D,cAAC,IAAD,CAASpB,KAAK,OAAOL,UAAU,cAA/B,SACI,sBAAKA,UAAU,sEAAf,UACI,oBAAIA,UAAU,eAAd,qEACA,mBACII,KAAK,6CACLsB,OAAO,SACPC,IAAI,sBACJ3B,UAAU,yEAJd,+BAUR,cAAC,IAAD,OAKZ,IAAM4B,EAAiB,SAAC,GAAgB,IAAdL,EAAa,EAAbA,OAChBM,EAAgBC,YAAYC,KAC5BC,EAAWC,cACXC,EAAgBC,uBAAY,kBAAMH,EAASI,YAAUC,IAAMC,sBAAqB,CAACN,IACjFO,EAAeJ,uBAAY,kBAAMK,YAASjB,KAAS,CAACA,IACpDkB,EAAUZ,EAAgBU,EAAeL,EAE/C,OACI,wBAAQlC,UAAU,oDAAoDK,KAAK,SAASoC,QAASA,EAA7F,wB,oBEhORC,EAAOC,QAAU,CAAC,aAAe,qC,oBCAjCD,EAAOC,QAAU,CAAC,YAAc,iCAAiC,UAAY,iC,oBCA7ED,EAAOC,QAAU,CAAC,aAAe,qC,oBCAjCD,EAAOC,QAAU,CAAC,OAAS,uBAAuB,eAAiB,+BAA+B,UAAY,4B,iCCD9G,uFAKa5C,EAAY,SAAC,GAA6B,IAA3BC,EAA0B,EAA1BA,UAAW4C,EAAe,EAAfA,SACnC,OAAO,qBAAK5C,UAAWiB,IAAWjB,EAAWC,IAAO4C,UAAW5C,IAAO6C,eAA/D,SAAgFF,M,oBCL3FF,EAAOC,QAAU,CAAC,UAAY,6BAA6B,aAAe,gCAAgC,cAAgB,mC,oHCIpHI,EAAsBC,IAAOC,IAAV,yOAalB,SAASC,IACZ,OACI,eAACH,EAAD,WACI,8BACI,cAAC,IAAD,CAAM3C,KAAM+C,IAAOC,KAAKC,KAAxB,yBADJ,sGAIA,8DACkC,IAC9B,mBAAGjD,KAAK,oDAAoDsB,OAAO,SAASC,IAAI,sBAAhF,8BAEK,IAJT,qCAOA,2CACc,cAAC,IAAD,CAAMvB,KAAM+C,IAAOG,MAAMD,KAAzB,sBADd,oBAC8E,IAC1E,mBACIjD,KAAK,yDACLsB,OAAO,SACPC,IAAI,sBAHR,sBAFJ,OAWA,2CACe,IACX,mBAAGvB,KAAK,wBAAwBuB,IAAI,sBAAsBD,OAAO,SAAjE,wBAFJ,U,sBCrCL,SAAS6B,IACZ,OACI,qBAAKvD,UAAWC,IAAOuD,aAAvB,SACI,eAAC,IAAD,CAAMpD,KAAM+C,IAAOC,KAAKC,KAAMI,MAAM,cAApC,UACI,+CACA,8B,sBCNT,SAASC,EAAT,GAAwD,IAAlCC,EAAiC,EAAjCA,KAAMvD,EAA2B,EAA3BA,KAA2B,IAArBwD,iBAAqB,SAC1D,OACI,eAAC,IAAD,CAAMxD,KAAMA,EAAMJ,UAAWC,IAAO4D,YAApC,UACKF,EACAC,GAAa,sBAAM5D,UAAWC,IAAO6D,UAAxB,oB,gCCJnB,SAASC,IACZ,OACI,sBAAK/D,UAAWC,IAAO+D,aAAvB,UACI,mBACI5D,KAAK,iCACLsB,OAAO,SACPC,IAAI,sBACJ8B,MAAM,uBAJV,SAMI,cAAC/C,EAAA,EAAD,CAAMC,MAAOC,IAAOqD,YAExB,mBACI7D,KAAK,sCACLsB,OAAO,SACPC,IAAI,sBACJ8B,MAAM,sBAJV,SAMI,cAAC/C,EAAA,EAAD,CAAMC,MAAOC,IAAOsD,aAExB,mBAAG9D,KAAK,gCAAgCqD,MAAM,qCAA9C,SACI,cAAC/C,EAAA,EAAD,CAAMC,MAAOC,IAAOuD,YCtBpC,IAAMC,EAAapB,IAAOqB,EAAV,kWAiBT,SAASC,IACZ,IAAMC,EAAYpC,uBAAY,SAACqC,GAC3BA,EAAEC,iBACF,IACIC,OAAOC,OAAO,CAAEC,IAAK,EAAGC,KAAM,EAAGC,SAAU,WAC7C,MAAOC,GACLL,OAAOM,SAAS,EAAG,MAExB,IACH,OACI,cAACZ,EAAD,CAAYhE,KAAK,IAAIC,KAAK,SAASoC,QAAS8B,EAA5C,yB,sCClBD,SAASU,IACZ,IAAMC,EAAoBpD,YAAYqD,KACtC,OACI,qCACI,cAACb,EAAD,IACA,wBAAQtE,UAAWC,IAAOmF,OAA1B,SACI,sBAAKpF,UAAWC,IAAOoF,eAAvB,UACI,gCACI,cAAC9B,EAAD,IACA,cAACL,EAAD,IACA,cAACa,EAAD,OAEJ,gCACI,gCACI,cAACL,EAAD,CAAYtD,KAAM+C,IAAOC,KAAKC,KAAMM,KAAK,SACzC,cAACD,EAAD,CAAYtD,KAAM+C,IAAOmC,QAAQjC,KAAMM,KAAK,mBAC5C,cAACD,EAAD,CAAYtD,KAAM+C,IAAOoC,YAAYlC,KAAMM,KAAK,mBAChD,cAACD,EAAD,CAAYtD,KAAM+C,IAAOqC,WAAWnC,KAAMM,KAAK,cAAcC,WAAS,IACtE,cAACF,EAAD,CAAYtD,KAAM+C,IAAOsC,QAAQpC,KAAMM,KAAK,YAC5C,cAACD,EAAD,CAAYtD,KAAM+C,IAAOuC,KAAKrC,KAAMM,KAAK,SACzC,cAACD,EAAD,CAAYtD,KAAM+C,IAAOG,MAAMD,KAAMM,KAAK,UACzCuB,GAAqB,cAACxB,EAAD,CAAYtD,KAAM+C,IAAOwC,QAAQtC,KAAMM,KAAK,eAEtE,sCACA,sBAAK3D,UAAWC,IAAO2F,UAAvB,UACI,cAAClC,EAAD,CAAYtD,KAAK,wBAAwBuD,KAAK,aAC9C,cAACD,EAAD,CAAYtD,KAAK,uBAAuBuD,KAAK,YAC7C,cAACD,EAAD,CAAYtD,KAAK,oBAAoBuD,KAAK,SAC1C,cAACD,EAAD,CAAYtD,KAAK,yBAAyBuD,KAAK,cAC/C,cAACD,EAAD,CAAYtD,KAAK,qBAAqBuD,KAAK,UAC3C,cAACD,EAAD,CAAYtD,KAAK,0BAA0BuD,KAAK,eAChD,cAACD,EAAD,CAAYtD,KAAK,yBAAyBuD,KAAK,cAC/C,cAACD,EAAD,CAAYtD,KAAK,sBAAsBuD,KAAK,WAC5C,cAACD,EAAD,CAAYtD,KAAK,wBAAwBuD,KAAK,gBAElD,wCACA,sBAAK3D,UAAWC,IAAO2F,UAAvB,UACI,cAAClC,EAAD,CAAYtD,KAAK,uBAAuBuD,KAAK,UAC7C,cAACD,EAAD,CAAYtD,KAAK,sBAAsBuD,KAAK,SAC5C,cAACD,EAAD,CAAYtD,KAAK,sBAAsBuD,KAAK,SAC5C,cAACD,EAAD,CAAYtD,KAAK,uBAAuBuD,KAAK,UAC7C,cAACD,EAAD,CAAYtD,KAAK,uBAAuBuD,KAAK,UAC7C,cAACD,EAAD,CAAYtD,KAAK,wBAAwBuD,KAAK,WAC9C,cAACD,EAAD,CAAYtD,KAAK,wBAAwBuD,KAAK,WAC9C,cAACD,EAAD,CAAYtD,KAAK,qBAAqBuD,KAAK,QAC3C,cAACD,EAAD,CAAYtD,KAAK,uBAAuBuD,KAAK,UAC7C,cAACD,EAAD,CAAYtD,KAAK,wBAAwBuD,KAAK,2B,wPCvD7DnC,EAAsB,EACtBC,EAAqB,EACrBoE,EAAc,EACdC,EAAe,EAEftD,EAAQ,uCAAG,WAAOjB,GAAP,mBAAA8C,EAAA,+EAEY0B,YAAS,8BAA+B,CAAExE,WAFtD,uBAERyE,EAFQ,EAERA,UACJC,EAASvB,OAAOwB,OAAOC,+GAHX,SAIVF,EAAOG,mBAAmB,CAAEJ,cAJlB,yDAMhBK,QAAQtB,MAAR,MACAuB,IAAOvB,MAAM,iEAPG,0DAAH,uD,oBCPrBrC,EAAOC,QAAU,CAAC,UAAY,qCAAqC,kBAAoB,6CAA6C,WAAa,sCAAsC,aAAe,wCAAwC,MAAQ,iCAAiC,KAAO,gCAAgC,OAAS,kCAAkC,SAAW","file":"static/js/plugins-wordpress.2dbaaf55.chunk.js","sourcesContent":["export default __webpack_public_path__ + \"static/media/screenshot-plugin.f438ecd3.png\";","import { useEffect } from 'react';\nvar useEffectOnce = function (effect) {\n    useEffect(effect, []);\n};\nexport default useEffectOnce;\n","import useEffectOnce from './useEffectOnce';\nvar useMount = function (fn) {\n    useEffectOnce(function () {\n        fn();\n    });\n};\nexport default useMount;\n","import { useRef } from 'react';\nimport useEffectOnce from './useEffectOnce';\nvar useUnmount = function (fn) {\n    var fnRef = useRef(fn);\n    // update the ref each render so if it change the newest callback will be invoked\n    fnRef.current = fn;\n    useEffectOnce(function () { return function () { return fnRef.current(); }; });\n};\nexport default useUnmount;\n","import { Footer } from 'components/footer/footer';\r\nimport { Jumbotron } from 'components/Shared/Jumbotron/Jumbotron';\r\nimport { Col, ContentSet, Row, Section } from 'components/Shared/Scaffolding';\r\nimport React, { useCallback } from 'react';\r\nimport styles from './plugins-wordpress.module.scss';\r\nimport screenshot from '../assets/images/screenshot-plugin.png';\r\nimport { GLYPHS, Icon } from 'components/Shared/Icon';\r\nimport classNames from 'classnames';\r\nimport { checkout, WORDPRESS_MULTI_ID, WORDPRESS_SINGLE_ID } from 'utils/payments';\r\nimport { useDispatch, useSelector } from 'react-redux';\r\nimport { currentUserAuthenticatedSelector } from 'modules/currentUser';\r\nimport MODAL from 'components/Shared/Modals';\r\nimport { showModal } from 'modules/modal';\r\nimport { useMetaTags } from 'hooks/useMetaTags';\r\n\r\nconst PAGE_DESCRIPTION =\r\n    'The Snazzy Maps WordPress plugin adds styles to your existing Google Maps with the click of a button.';\r\nconst PAGE_KEYWORDS = 'snazzy maps,wordpress,google maps,plugin,styles';\r\n\r\n/**\r\n * Page for viewing and purchasing the WordPress plugin.\r\n */\r\nexport default function PluginsWordPress() {\r\n    useMetaTags(PAGE_DESCRIPTION, PAGE_KEYWORDS);\r\n    return (\r\n        <>\r\n            <Jumbotron className={styles.plugins_jumbotron}>\r\n                <ContentSet className={styles.container}>\r\n                    <header>\r\n                        <span className=\"h3 no-margin text-primary\">Snazzy Maps</span>\r\n                        <h1 className=\"no-margin\">WordPress Plugin</h1>\r\n                    </header>\r\n                    <p className=\"lead\">Apply styles to Google Maps in WordPress with the click of a button.</p>\r\n                    <a\r\n                        href=\"https://snazzymaps.com/plugins/download/wordpress/snazzy-maps.1.4.0.zip\"\r\n                        className=\"btn btn-primary btn-lg btn-drop-shadow btn-border-radius\"\r\n                    >\r\n                        Download\r\n                    </a>\r\n                    <div>\r\n                        <em>Free for personal use. Affordable for businesses.</em>\r\n                    </div>\r\n                </ContentSet>\r\n            </Jumbotron>\r\n            <Section type=\"sub\">\r\n                <ContentSet className=\"container-fluid container-max-width content-padded-y-lg\">\r\n                    <Row>\r\n                        <Col span=\"col-md-8 col-md-offset-2\">\r\n                            <img src={screenshot} className={styles.screenshot} alt=\"Preview of our WordPress plugin\" />\r\n                        </Col>\r\n                    </Row>\r\n                </ContentSet>\r\n            </Section>\r\n            <Section>\r\n                <ContentSet className=\"container-fluid container-max-width content-padded-y-lg\">\r\n                    <Row>\r\n                        <Col span=\"col-lg-10 col-lg-offset-1 content-set\">\r\n                            <h1 className=\"text-center no-margin\">Features</h1>\r\n                            <div className=\"row-spaced-wrapper\">\r\n                                <div className=\"row flex flex-wrap\">\r\n                                    <section className=\"plugin-feature col-md-4 flex-item-grow-shrink flex\">\r\n                                        <div className=\"bordered-content content-padded content-set flex-item-grow-shrink\">\r\n                                            <div className=\"text-center\">\r\n                                                <Icon glyph={GLYPHS.SNAZZY_MAPS} className={styles.feature_icon} />\r\n                                            </div>\r\n                                            <h1 className=\"h3 title text-center\">Quickly apply styles</h1>\r\n                                            <p>\r\n                                                Browse through hundreds of styles and choose the one that's right for\r\n                                                you. Quickly apply your favorite style to all the maps on your WordPress\r\n                                                site.\r\n                                            </p>\r\n                                        </div>\r\n                                    </section>\r\n                                    <section className=\"plugin-feature col-md-4 flex-item-grow-shrink flex\">\r\n                                        <div className=\"bordered-content content-padded content-set flex-item-grow-shrink\">\r\n                                            <div className=\"text-center\">\r\n                                                <Icon glyph={GLYPHS.GOOGLE} className={styles.feature_icon} />\r\n                                            </div>\r\n                                            <h1 className=\"h3 title text-center\">Works with other map plugins</h1>\r\n                                            <p>\r\n                                                The Snazzy Maps WordPress plugin works alongside your existing Google\r\n                                                Maps plugins to make your maps just a little bit snazzier.\r\n                                            </p>\r\n                                        </div>\r\n                                    </section>\r\n                                    <section className=\"plugin-feature col-md-4 flex-item-grow-shrink flex\">\r\n                                        <div className=\"bordered-content content-padded content-set flex-item-grow-shrink\">\r\n                                            <div className=\"text-center\">\r\n                                                <Icon glyph={GLYPHS.STAR} className={styles.feature_icon} />\r\n                                            </div>\r\n                                            <h1 className=\"h3 title text-center\">Access your favorites</h1>\r\n                                            <p>\r\n                                                Add in your account key and access your list of favorites to apply\r\n                                                styles even faster. You can also access private styles that you have\r\n                                                created in our editor.\r\n                                            </p>\r\n                                        </div>\r\n                                    </section>\r\n                                </div>\r\n                            </div>\r\n                        </Col>\r\n                    </Row>\r\n                </ContentSet>\r\n            </Section>\r\n            <Section type=\"sub\">\r\n                <ContentSet className=\"container-fluid container-max-width content-padded-y-lg\">\r\n                    <Row>\r\n                        <Col span=\"col-lg-10 col-lg-offset-1 content-set\">\r\n                            <h1 className=\"text-center no-margin\">Pricing</h1>\r\n                            <div className=\"row-spaced-wrapper\">\r\n                                <div className=\"row flex flex-wrap\">\r\n                                    <section\r\n                                        className={classNames(\r\n                                            styles.pricing_tier,\r\n                                            'col-md-4 flex-item-grow-shrink flex'\r\n                                        )}\r\n                                    >\r\n                                        <div className=\"bordered-content flex-item-grow-shrink flex flex-dir-col\">\r\n                                            <div className={styles.price}>\r\n                                                <h1 className=\"h4 text-primary no-margin\">\r\n                                                    Open source and/or personal use\r\n                                                </h1>\r\n                                                <div className={styles.subtitle}>FREE</div>\r\n                                            </div>\r\n                                            <div className={classNames(styles.info, 'flex-item-grow-shrink')}>\r\n                                                <p>\r\n                                                    Download and use the plugin free of charge on open source projects\r\n                                                    or on your personal site.\r\n                                                </p>\r\n                                            </div>\r\n                                            <div className={styles.action}>\r\n                                                <a\r\n                                                    className=\"btn btn-primary btn-drop-shadow btn-border-radius\"\r\n                                                    href=\"https://snazzymaps.com/plugins/download/wordpress/snazzy-maps.1.4.0.zip\"\r\n                                                >\r\n                                                    Download\r\n                                                </a>\r\n                                            </div>\r\n                                        </div>\r\n                                    </section>\r\n                                    <section\r\n                                        className={classNames(\r\n                                            styles.pricing_tier,\r\n                                            'col-md-4 flex-item-grow-shrink flex'\r\n                                        )}\r\n                                    >\r\n                                        <div className=\"bordered-content flex-item-grow-shrink flex flex-dir-col\">\r\n                                            <div className={styles.price}>\r\n                                                <h1 className=\"h4 text-primary no-margin\">\r\n                                                    Business - Single Site License\r\n                                                </h1>\r\n                                                <div className={styles.subtitle}>\r\n                                                    <span>$10.00</span>\r\n                                                </div>\r\n                                            </div>\r\n                                            <div className={classNames(styles.info, 'flex-item-grow-shrink')}>\r\n                                                <p>\r\n                                                    Purchase a license to use the plugin on a single business related\r\n                                                    site. Helps support future development on the site and even more\r\n                                                    plugins.\r\n                                                </p>\r\n                                            </div>\r\n                                            <div className={styles.action}>\r\n                                                <PurchaseButton itemId={WORDPRESS_SINGLE_ID} />\r\n                                            </div>\r\n                                        </div>\r\n                                    </section>\r\n                                    <section\r\n                                        className={classNames(\r\n                                            styles.pricing_tier,\r\n                                            'col-md-4 flex-item-grow-shrink flex'\r\n                                        )}\r\n                                    >\r\n                                        <div className=\"bordered-content flex-item-grow-shrink flex flex-dir-col\">\r\n                                            <div className={styles.price}>\r\n                                                <h1 className=\"h4 text-primary no-margin\">\r\n                                                    Business - Multiple Site License\r\n                                                </h1>\r\n                                                <div className={styles.subtitle}>\r\n                                                    <span>$20.00</span>\r\n                                                </div>\r\n                                            </div>\r\n                                            <div className={classNames(styles.info, 'flex-item-grow-shrink')}>\r\n                                                <p>\r\n                                                    Use the plugin on as many sites as you want and support future\r\n                                                    development on the site.\r\n                                                </p>\r\n                                            </div>\r\n                                            <div className={styles.action}>\r\n                                                <PurchaseButton itemId={WORDPRESS_MULTI_ID} />\r\n                                            </div>\r\n                                        </div>\r\n                                    </section>\r\n                                </div>\r\n                            </div>\r\n                        </Col>\r\n                    </Row>\r\n                </ContentSet>\r\n            </Section>\r\n            <Section type=\"dark\" className=\"text-center\">\r\n                <div className=\"container-fluid container-max-width content-padded-y-lg content-set\">\r\n                    <h1 className=\"h2 no-margin\">Visit our plugin page on WordPress.org for more details</h1>\r\n                    <a\r\n                        href=\"https://wordpress.org/plugins/snazzy-maps/\"\r\n                        target=\"_blank\"\r\n                        rel=\"noopener noreferrer\"\r\n                        className=\"btn btn-primary btn-lg btn-drop-shadow btn-border-radius btn-text-wrap\"\r\n                    >\r\n                        View Details\r\n                    </a>\r\n                </div>\r\n            </Section>\r\n            <Footer />\r\n        </>\r\n    );\r\n}\r\n\r\nconst PurchaseButton = ({ itemId }) => {\r\n    const authenticated = useSelector(currentUserAuthenticatedSelector);\r\n    const dispatch = useDispatch();\r\n    const showAuthModal = useCallback(() => dispatch(showModal(MODAL.NOT_AUTHENTICATED)), [dispatch]);\r\n    const checkoutItem = useCallback(() => checkout(itemId), [itemId]);\r\n    const onClick = authenticated ? checkoutItem : showAuthModal;\r\n\r\n    return (\r\n        <button className=\"btn btn-primary btn-drop-shadow btn-border-radius\" type=\"button\" onClick={onClick}>\r\n            Purchase\r\n        </button>\r\n    );\r\n};\r\n","import { useMount, useUnmount } from 'react-use';\r\n\r\nconst DEFAULT_DESCRIPTION =\r\n    'Snazzy Maps is a repository of different color schemes for Google Maps aimed towards web designers and developers.';\r\nconst DEFAULT_KEYWORDS = 'google,maps,google maps,styled maps,styles,color,schemes,themes';\r\n\r\nexport const useMetaTags = (description, keywords) => {\r\n    useMount(() => {\r\n        const metaDescription = document.querySelector('meta[name=\"description\"]');\r\n        if (metaDescription) metaDescription.setAttribute('content', description);\r\n\r\n        const metaKeywords = document.querySelector('meta[name=\"keywords\"]');\r\n        if (metaKeywords) metaKeywords.setAttribute('content', keywords);\r\n    });\r\n\r\n    useUnmount(() => {\r\n        const metaDescription = document.querySelector('meta[name=\"description\"]');\r\n        if (metaDescription) metaDescription.setAttribute('content', DEFAULT_DESCRIPTION);\r\n\r\n        const metaKeywords = document.querySelector('meta[name=\"keywords\"]');\r\n        if (metaKeywords) metaKeywords.setAttribute('content', DEFAULT_KEYWORDS);\r\n    });\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer_brand\":\"footer-brand_footer_brand__37vG6\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer_link\":\"footer-link_footer_link__BHbVk\",\"new_label\":\"footer-link_new_label__XETWt\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"social_icons\":\"social-icons_social_icons__3f35k\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer\":\"footer_footer__7O90g\",\"footer_content\":\"footer_footer_content__3c5-p\",\"link_grid\":\"footer_link_grid__yt0jr\"};","import classNames from 'classnames';\r\nimport React from 'react';\r\n\r\nimport styles from './Jumbotron.module.scss';\r\n\r\nexport const Jumbotron = ({ className, children }) => {\r\n    return <div className={classNames(className, styles.jumbotron, styles.img_jumbotron)}>{children}</div>;\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"jumbotron\":\"Jumbotron_jumbotron__1Ioyg\",\"jumbotron_sm\":\"Jumbotron_jumbotron_sm__6Zta4\",\"img_jumbotron\":\"Jumbotron_img_jumbotron__3oWg7\"};","import React from 'react';\r\nimport styled from 'styled-components';\r\nimport { Link } from 'wouter';\r\nimport { routes } from '../../modules/routes';\r\n\r\nconst StyledFooterAboutUs = styled.div`\r\n    a {\r\n        text-decoration: underline;\r\n        color: var(--sm-footer-text);\r\n\r\n        &:hover,\r\n        &:focus,\r\n        &:active {\r\n            color: var(--sm-text-inverse);\r\n        }\r\n    }\r\n`;\r\n\r\nexport function AboutUs() {\r\n    return (\r\n        <StyledFooterAboutUs>\r\n            <p>\r\n                <Link href={routes.home.path}>Snazzy Maps</Link> is a repository of different styles for Google Maps\r\n                aimed towards web designers and developers.\r\n            </p>\r\n            <p>\r\n                All styles are licensed under{' '}\r\n                <a href=\"http://creativecommons.org/publicdomain/zero/1.0/\" target=\"_blank\" rel=\"noreferrer noopener\">\r\n                    creative commons\r\n                </a>{' '}\r\n                and are completely free to use.\r\n            </p>\r\n            <p>\r\n                Read more <Link href={routes.press.path}>about us</Link> or leave us some{' '}\r\n                <a\r\n                    href=\"https://snazzymaps.uservoice.com/forums/228743-general\"\r\n                    target=\"_blank\"\r\n                    rel=\"noreferrer noopener\"\r\n                >\r\n                    feedback\r\n                </a>\r\n                .\r\n            </p>\r\n            <p>\r\n                Created by{' '}\r\n                <a href=\"https://adamkrogh.com\" rel=\"noreferrer noopener\" target=\"_blank\">\r\n                    Adam Krogh\r\n                </a>\r\n                .\r\n            </p>\r\n        </StyledFooterAboutUs>\r\n    );\r\n}\r\n","import React from 'react';\r\nimport { Link } from 'wouter';\r\nimport { routes } from '../../modules/routes';\r\n\r\nimport styles from './footer-brand.module.scss';\r\n\r\nexport function FooterBrand() {\r\n    return (\r\n        <div className={styles.footer_brand}>\r\n            <Link href={routes.home.path} title=\"Snazzy Maps\">\r\n                <span>Snazzy Maps</span>\r\n                <span></span>\r\n            </Link>\r\n        </div>\r\n    );\r\n}\r\n","import React from 'react';\r\nimport { Link } from 'wouter';\r\n\r\nimport styles from './footer-link.module.scss';\r\n\r\nexport function FooterLink({ text, href, highlight = false }) {\r\n    return (\r\n        <Link href={href} className={styles.footer_link}>\r\n            {text}\r\n            {highlight && <span className={styles.new_label}>New</span>}\r\n        </Link>\r\n    );\r\n}\r\n","import { GLYPHS, Icon } from 'components/Shared/Icon';\r\nimport React from 'react';\r\n\r\nimport styles from './social-icons.module.scss';\r\n\r\nexport function SocialIcons() {\r\n    return (\r\n        <div className={styles.social_icons}>\r\n            <a\r\n                href=\"https://twitter.com/snazzymaps\"\r\n                target=\"_blank\"\r\n                rel=\"noreferrer noopener\"\r\n                title=\"Follow us on Twitter\"\r\n            >\r\n                <Icon glyph={GLYPHS.TWITTER} />\r\n            </a>\r\n            <a\r\n                href=\"https://www.facebook.com/SnazzyMaps\"\r\n                target=\"_blank\"\r\n                rel=\"noreferrer noopener\"\r\n                title=\"Like us on Facebook\"\r\n            >\r\n                <Icon glyph={GLYPHS.FACEBOOK} />\r\n            </a>\r\n            <a href=\"mailto:support@snazzymaps.com\" title=\"Email us at support@snazzymaps.com\">\r\n                <Icon glyph={GLYPHS.MAIL} />\r\n            </a>\r\n        </div>\r\n    );\r\n}\r\n","import React, { useCallback } from 'react';\r\nimport styled from 'styled-components';\r\n\r\nconst StyledLink = styled.a`\r\n    width: 100%;\r\n    text-align: center;\r\n    background-color: var(--sm-brand-bg);\r\n    color: var(--sm-footer-text);\r\n    text-transform: uppercase;\r\n    display: inline-block;\r\n    text-decoration: none;\r\n    padding: 10px 0;\r\n    font-size: 1rem;\r\n    &:hover,\r\n    &:active,\r\n    &:focus {\r\n        color: #fff;\r\n    }\r\n`;\r\n\r\nexport function TopLink() {\r\n    const scrollTop = useCallback((e) => {\r\n        e.preventDefault();\r\n        try {\r\n            window.scroll({ top: 0, left: 0, behavior: 'smooth' });\r\n        } catch (error) {\r\n            window.scrollTo(0, 0);\r\n        }\r\n    }, []);\r\n    return (\r\n        <StyledLink href=\"#\" type=\"button\" onClick={scrollTop}>\r\n            Back to top\r\n        </StyledLink>\r\n    );\r\n}\r\n","import React from 'react';\r\nimport { routes } from '../../modules/routes';\r\nimport { AboutUs } from './about-us';\r\nimport { FooterBrand } from './footer-brand';\r\nimport { FooterLink } from './footer-link';\r\nimport { SocialIcons } from './social-icons';\r\nimport { TopLink } from './top-link';\r\n\r\nimport styles from './footer.module.scss';\r\nimport { useSelector } from 'react-redux';\r\nimport { currentUserHasPricingEnabledSelector } from 'modules/currentUser';\r\n\r\nexport function Footer() {\r\n    const hasPricingEnabled = useSelector(currentUserHasPricingEnabledSelector);\r\n    return (\r\n        <>\r\n            <TopLink />\r\n            <footer className={styles.footer}>\r\n                <div className={styles.footer_content}>\r\n                    <div>\r\n                        <FooterBrand />\r\n                        <AboutUs />\r\n                        <SocialIcons />\r\n                    </div>\r\n                    <nav>\r\n                        <div>\r\n                            <FooterLink href={routes.home.path} text=\"Home\" />\r\n                            <FooterLink href={routes.explore.path} text=\"Explore Styles\" />\r\n                            <FooterLink href={routes.createStyle.path} text=\"Create a Style\" />\r\n                            <FooterLink href={routes.mapBuilder.path} text=\"Build a Map\" highlight />\r\n                            <FooterLink href={routes.plugins.path} text=\"Plugins\" />\r\n                            <FooterLink href={routes.help.path} text=\"Help\" />\r\n                            <FooterLink href={routes.press.path} text=\"Press\" />\r\n                            {hasPricingEnabled && <FooterLink href={routes.pricing.path} text=\"Pricing\" />}\r\n                        </div>\r\n                        <h4>Tags</h4>\r\n                        <div className={styles.link_grid}>\r\n                            <FooterLink href=\"/explore?tag=colorful\" text=\"Colorful\" />\r\n                            <FooterLink href=\"/explore?tag=complex\" text=\"Complex\" />\r\n                            <FooterLink href=\"/explore?tag=dark\" text=\"Dark\" />\r\n                            <FooterLink href=\"/explore?tag=greyscale\" text=\"Greyscale\" />\r\n                            <FooterLink href=\"/explore?tag=light\" text=\"Light\" />\r\n                            <FooterLink href=\"/explore?tag=monochrome\" text=\"Monochrome\" />\r\n                            <FooterLink href=\"/explore?tag=no-labels\" text=\"No Labels\" />\r\n                            <FooterLink href=\"/explore?tag=simple\" text=\"Simple\" />\r\n                            <FooterLink href=\"/explore?tag=two-tone\" text=\"Two Tone\" />\r\n                        </div>\r\n                        <h4>Colors</h4>\r\n                        <div className={styles.link_grid}>\r\n                            <FooterLink href=\"/explore?color=black\" text=\"Black\" />\r\n                            <FooterLink href=\"/explore?color=blue\" text=\"Blue\" />\r\n                            <FooterLink href=\"/explore?color=gray\" text=\"Gray\" />\r\n                            <FooterLink href=\"/explore?color=green\" text=\"Green\" />\r\n                            <FooterLink href=\"/explore?color=multi\" text=\"Multi\" />\r\n                            <FooterLink href=\"/explore?color=orange\" text=\"Orange\" />\r\n                            <FooterLink href=\"/explore?color=purple\" text=\"Purple\" />\r\n                            <FooterLink href=\"/explore?color=red\" text=\"Red\" />\r\n                            <FooterLink href=\"/explore?color=white\" text=\"White\" />\r\n                            <FooterLink href=\"/explore?color=yellow\" text=\"Yellow\" />\r\n                        </div>\r\n                    </nav>\r\n                </div>\r\n            </footer>\r\n        </>\r\n    );\r\n}\r\n","import { httpPost } from '../modules/api';\r\nimport notify from './notify';\r\n\r\nexport const WORDPRESS_SINGLE_ID = 1;\r\nexport const WORDPRESS_MULTI_ID = 2;\r\nexport const PRO_PLAN_ID = 3;\r\nexport const TEAM_PLAN_ID = 4;\r\n\r\nexport const checkout = async (itemId) => {\r\n    try {\r\n        const { sessionId } = await httpPost('/payments/checkout-sessions', { itemId });\r\n        var stripe = window.Stripe(process.env.REACT_APP_STRIPE_API_KEY);\r\n        await stripe.redirectToCheckout({ sessionId });\r\n    } catch (e) {\r\n        console.error(e);\r\n        notify.error('Something went wrong during checkout. Please contact support.');\r\n    }\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"container\":\"plugins-wordpress_container__2smcu\",\"plugins_jumbotron\":\"plugins-wordpress_plugins_jumbotron__2KXfw\",\"screenshot\":\"plugins-wordpress_screenshot__2TmIr\",\"feature_icon\":\"plugins-wordpress_feature_icon__21PI5\",\"price\":\"plugins-wordpress_price__3fwi-\",\"info\":\"plugins-wordpress_info__1-mSH\",\"action\":\"plugins-wordpress_action__2DBgn\",\"subtitle\":\"plugins-wordpress_subtitle__39KTB\"};"],"sourceRoot":""}