{"version":3,"file":"component---src-templates-single-review-js-99f293733bb1ff715809.js","mappings":"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","sources":["webpack://gatsby-starter-default/./node_modules/@fortawesome/pro-light-svg-icons/faChevronLeft.js","webpack://gatsby-starter-default/./node_modules/@fortawesome/pro-light-svg-icons/faChevronRight.js","webpack://gatsby-starter-default/./src/components/CTA/CTA.js","webpack://gatsby-starter-default/./src/components/CTA/GetStarted.js","webpack://gatsby-starter-default/./src/components/CTA/CallToAction.js","webpack://gatsby-starter-default/./src/components/carousel/ChevronArrows.js","webpack://gatsby-starter-default/./src/components/carousel/ImageCaption.js","webpack://gatsby-starter-default/./src/components/carousel/SingleSlide.js","webpack://gatsby-starter-default/./src/components/carousel/ReviewCarousel.js","webpack://gatsby-starter-default/./src/templates/singleReview.js"],"sourcesContent":["'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fal';\nvar iconName = 'chevron-left';\nvar width = 256;\nvar height = 512;\nvar ligatures = [];\nvar unicode = 'f053';\nvar svgPathData = 'M238.475 475.535l7.071-7.07c4.686-4.686 4.686-12.284 0-16.971L50.053 256 245.546 60.506c4.686-4.686 4.686-12.284 0-16.971l-7.071-7.07c-4.686-4.686-12.284-4.686-16.97 0L10.454 247.515c-4.686 4.686-4.686 12.284 0 16.971l211.051 211.05c4.686 4.686 12.284 4.686 16.97-.001z';\n\nexports.definition = {\n prefix: prefix,\n iconName: iconName,\n icon: [\n width,\n height,\n ligatures,\n unicode,\n svgPathData\n ]};\n\nexports.faChevronLeft = exports.definition;\nexports.prefix = prefix;\nexports.iconName = iconName;\nexports.width = width;\nexports.height = height;\nexports.ligatures = ligatures;\nexports.unicode = unicode;\nexports.svgPathData = svgPathData;","'use strict';\nObject.defineProperty(exports, '__esModule', { value: true });\nvar prefix = 'fal';\nvar iconName = 'chevron-right';\nvar width = 256;\nvar height = 512;\nvar ligatures = [];\nvar unicode = 'f054';\nvar svgPathData = 'M17.525 36.465l-7.071 7.07c-4.686 4.686-4.686 12.284 0 16.971L205.947 256 10.454 451.494c-4.686 4.686-4.686 12.284 0 16.971l7.071 7.07c4.686 4.686 12.284 4.686 16.97 0l211.051-211.05c4.686-4.686 4.686-12.284 0-16.971L34.495 36.465c-4.686-4.687-12.284-4.687-16.97 0z';\n\nexports.definition = {\n prefix: prefix,\n iconName: iconName,\n icon: [\n width,\n height,\n ligatures,\n unicode,\n svgPathData\n ]};\n\nexports.faChevronRight = exports.definition;\nexports.prefix = prefix;\nexports.iconName = iconName;\nexports.width = width;\nexports.height = height;\nexports.ligatures = ligatures;\nexports.unicode = unicode;\nexports.svgPathData = svgPathData;","import PropTypes from \"prop-types\"\nimport React from \"react\"\nimport classNames from \"classnames\"\n\nconst CTA = ({\n buttonCentered,\n buttonColumns,\n className,\n headingColumns,\n sideColumnIs,\n textColumns\n}) => {\n const ctaClasses = classNames(\"columns cta-columns\", className)\n const buttonClasses = classNames(\"columns\", {\n \"has-text-centered is-centered\": buttonCentered\n })\n\n return (\n
\n
\n
{headingColumns}
\n
\n
\n {textColumns}\n
\n
\n
{buttonColumns}
\n
\n
\n )\n}\n\nCTA.propTypes = {\n headingColumns: PropTypes.element,\n textColumns: PropTypes.element,\n buttonColumns: PropTypes.element,\n sideColumnIs: PropTypes.number\n}\n\nexport default CTA\n","import PropTypes from \"prop-types\"\nimport classNames from \"classnames\"\nimport React from \"react\"\nimport CTA from \"./CTA\"\nimport { Text } from \"../Core\"\nimport { Button, ButtonGroupMap } from \"../Button\"\n\nclass GetStarted extends React.Component {\n constructor(props) {\n super(props)\n }\n\n render() {\n let buttonColumns\n // One or multiple buttons\n if (this.props.buttons) {\n buttonColumns = (\n
\n \n
\n )\n } else {\n buttonColumns = (\n
\n \n
\n )\n }\n\n // CSS classes\n let headingClasses = classNames(\"column\", {\n \"has-text-centered\": this.props.centerHeading\n })\n let textClasses = classNames(\"column\", {\n \"has-text-centered\": this.props.centerText\n })\n\n return (\n \n {this.props.subheading &&

{this.props.subheading}

}\n

{this.props.heading}

\n
\n }\n textColumns={\n \n }\n buttonColumns={buttonColumns}\n />\n )\n }\n}\n\nGetStarted.propTypes = {\n className: PropTypes.string,\n centerHeading: PropTypes.bool,\n heading: PropTypes.string,\n subheading: PropTypes.string,\n centerText: PropTypes.bool,\n paragraph: PropTypes.element,\n buttons: PropTypes.array,\n buttonUrl: PropTypes.string,\n buttonText: PropTypes.string,\n sideColumnIs: PropTypes.number,\n headingSideColumnIs: PropTypes.number\n}\n\nexport default GetStarted\n","import React from \"react\"\nimport classNames from \"classnames\"\nimport { Text } from \"../Core\"\nimport { ButtonGroupMap } from \"../Button\"\nimport { Section, Columns } from \"../Containers\"\n\nconst CallToAction = ({\n heading,\n blurb,\n buttons,\n colorBack,\n colorBackSecondary,\n className,\n sideColumnsSize = 5\n}) => {\n const mainClasses = classNames(\"call-to-action\", className)\n return (\n \n \n
\n \n \n {buttons && (\n \n )}\n
\n
\n \n )\n}\n\nexport default CallToAction\n","import React, { Component } from \"react\"\n\nimport { FontAwesomeIcon } from \"@fortawesome/react-fontawesome\"\nimport { faChevronLeft } from \"@fortawesome/pro-light-svg-icons/faChevronLeft\"\nimport { faChevronRight } from \"@fortawesome/pro-light-svg-icons/faChevronRight\"\n\nfunction focusSlide(targetID) {\n var comSlider = document.getElementById(targetID)\n comSlider.getElementsByClassName(\"slick-current\")[0].focus()\n return <>\n}\n\nfunction SamplePrevArrow(props) {\n const targetID = props.targetID\n const { style, onClick } = props\n return (\n {\n onClick()\n focusSlide(targetID)\n }}>\n \n
\n )\n}\n\nfunction SampleNextArrow(props) {\n const targetID = props.targetID\n const { style, onClick } = props\n return (\n {\n onClick()\n focusSlide(targetID)\n }}>\n \n \n )\n}\n\nexport { SamplePrevArrow, SampleNextArrow }\n","import React from \"react\"\nimport classNames from \"classnames\"\nimport PropTypes from \"prop-types\"\nimport { getMonthYearFromStrings } from \"../../utils/utils\"\nimport { Text } from \"../Core\"\n\nfunction ImageCaption(props) {\n let nameClasses = classNames(\"image-caption staff fixed-facewall-name\", {\n last: !props.procedure && !props.monthYear\n })\n let procedureClasses = classNames(\n \"image-caption staff fixed-facewall-procedure\",\n {\n last: !props.monthYear\n }\n )\n let timeClasses = classNames(\"image-caption staff fixed-facewall-time\", {\n last: true\n })\n return (\n
\n {props.reviewerName && (\n
\n {props.language === \"es\" ? \"Conoce a\" : \"Meet\"} {props.reviewerName}\n
\n )}\n {props.language === \"es\"\n ? props.procedureEs &&\n !props.hideProcedureNames && (\n \n )\n : props.procedure &&\n !props.hideProcedureNames && (\n \n )}\n {props.monthYear && (\n
\n {getMonthYearFromStrings(props.monthYear.year, props.monthYear.month)}\n
\n )}\n
\n )\n}\n\nImageCaption.propTypes = {\n reviewerName: PropTypes.string,\n language: PropTypes.string,\n procedure: PropTypes.string,\n procedureEs: PropTypes.string,\n hideProcedureNames: PropTypes.bool,\n monthYear: PropTypes.object\n}\n\nexport default ImageCaption\n","import React from \"react\"\n\nimport { Transformation } from \"cloudinary-react\"\nimport { Link } from \"gatsby\"\nimport { Image } from \"../Core\"\n\nimport ImageCaption from \"./ImageCaption\"\n\nfunction SingleSlide(props) {\n let title = props.title\n if (title.charAt(0) !== \"/\") title = \"/\" + title\n\n return (\n \n \n \n \n \n \n )\n}\n\nexport default SingleSlide\n","import React, { Component } from \"react\"\nimport Slider from \"react-slick\"\nimport PropTypes from \"prop-types\"\nimport { shuffleArray } from \"../../utils/utils\"\n\nimport { SamplePrevArrow, SampleNextArrow } from \"./ChevronArrows\"\n\nimport SingleSlide from \"./SingleSlide\"\n\nclass ReviewCarousel extends Component {\n constructor(props) {\n super(props)\n this.state = {\n relatedReviews: props.relatedReviews,\n slideID: props.id\n }\n }\n\n // Shuffle on mount, shuffling in render causes multiple shuffles\n componentDidMount() {\n if (this.props.noShuffle === false) {\n let relatedReviews = this.state.relatedReviews\n shuffleArray(relatedReviews)\n this.setState({\n relatedReviews: relatedReviews\n })\n }\n }\n\n render() {\n const settings = {\n className: \"desktop-slider-375x375\",\n accessibility: true,\n adaptiveHeight: true,\n infinite: this.props.relatedReviews.length <= 3 ? false : true,\n centerPadding: \"0px\",\n slidesToShow: 5,\n swipeToSlide: true,\n focusOnSelect: false,\n draggable: false,\n rows: 1,\n speed: 500,\n nextArrow: ,\n prevArrow: ,\n initialSlide: 0,\n responsive: [\n {\n breakpoint: 1125,\n settings: {\n slidesToShow: this.props.relatedReviews.length < 3 ? 2 : 3,\n infinite: true,\n className:\n this.props.relatedReviews.length < 3\n ? \"desktop-slider-375x375 slide-count-2\"\n : \"desktop-slider-375x375\"\n }\n },\n {\n breakpoint: 750,\n settings: {\n slidesToShow: 2,\n infinite: true\n }\n },\n {\n breakpoint: 375,\n settings: {\n slidesToShow: 1,\n infinite: true\n }\n }\n ]\n }\n\n const sliderStyle = {\n width: \"auto\",\n height: \"auto\",\n margin: \"0px auto\"\n }\n\n const sliderCopy = {\n carouselName: \"Hear From Our Patients\",\n carouselTime: \"December 2019\",\n carouselLanguage: \"ENG\",\n carouselTypeTextTitle: \"Patients\"\n }\n\n var slides = this.state.relatedReviews.map(review => {\n return (\n \n )\n })\n\n return (\n
\n {this.state.relatedReviews.length > 0 && (\n \n {slides}\n \n )}\n
\n )\n }\n}\n\nReviewCarousel.propTypes = {\n relatedReviews: PropTypes.array\n}\n\nexport default ReviewCarousel\n","import React from \"react\"\nimport classNames from \"classnames\"\nimport { graphql } from \"gatsby\"\nimport TheaterVideo from \"@components/Theater/TheaterVideo\"\nimport Layout from \"../components/layout\"\nimport GetStarted from \"../components/CTA/GetStarted\"\nimport { CallToAction } from \"../components/CTA\"\nimport ReviewCarousel from \"../components/carousel/ReviewCarousel\"\nimport SEO from \"../components/seo\"\nimport { sortReviewsByDate, getPostObj, pluralizeName } from \"../utils/utils\"\nimport { Image, Text } from \"../components/Core\"\nimport { Button, ButtonGroup } from \"../components/Button\"\n\nconst SingleReview = ({ data, pageContext, location }) => {\n const post = data.singleReview.nodes[0]\n const { metaTitle, metaDescription, language } = pageContext\n\n const getStartedData = data.allTemplateSettingsJson.nodes[0].getStarted\n const getStartedDataEs =\n data.allTemplateSettingsJson.nodes[0].getStartedSpanish\n\n const reviewTitle = post.title\n const reviewPool = data.relatedReviews.nodes\n let referrerPool = data.relatedReviewsProviders.nodes\n\n let relatedReviews = getRelatedReviews(post, reviewPool)\n\n relatedReviews = sortReviewsByDate(relatedReviews)\n referrerPool = sortReviewsByDate(referrerPool)\n\n function getRelatedReviews(singleReview, allReviews) {\n const thisReviewProcedures = getReviewProceduresNames(singleReview)\n\n // Get an array of the patient's procedures\n function getReviewProceduresNames(review) {\n const thisReviewProcedures = []\n\n for (let i = 0; i < review.proceduresDone.length; i++) {\n thisReviewProcedures.push(\n review.proceduresDone[i].procedureDone.procedureName\n )\n }\n return thisReviewProcedures\n }\n\n const reviewPoolWithProceduresNamesArray =\n addProceduresDoneArrayTo(allReviews)\n\n // Add array of procedures done names to all review objects\n function addProceduresDoneArrayTo(reviews) {\n const reviewPoolWithProceduresNamesArray = []\n // Make an array of just the names of the procedures done\n for (let i = 0; i < reviews.length; i++) {\n const relatedProceduresDone = []\n for (let j = 0; j < reviews[i].proceduresDone.length; j++) {\n relatedProceduresDone.push(\n reviews[i].proceduresDone[j].procedureDone.procedureName\n )\n }\n const patientInfo = reviews[i]\n patientInfo.allProceduresJustNames = relatedProceduresDone\n reviewPoolWithProceduresNamesArray.push(patientInfo)\n }\n return reviewPoolWithProceduresNamesArray\n }\n\n const relatedReviews = getReviewsWithAnyMatchingProcedures(\n thisReviewProcedures,\n reviewPoolWithProceduresNamesArray\n )\n\n // Compare patients to see if any of their procedures done match, if so, add to array and return it\n function getReviewsWithAnyMatchingProcedures(\n thisReviewProcedureNamesArray,\n allReviewsWithProcedureNamesArray\n ) {\n const relatedReviews = []\n // Compares the single review's procedures done names with all the reviews' procedures done names, then pushes matches into another array\n let found = false\n\n for (let i = 0; i < allReviewsWithProcedureNamesArray.length; i++) {\n if (reviewTitle !== allReviewsWithProcedureNamesArray[i].title) {\n found = false\n\n found = thisReviewProcedureNamesArray.some(r =>\n allReviewsWithProcedureNamesArray[\n i\n ].allProceduresJustNames.includes(r)\n )\n if (found === true) {\n relatedReviews.push(allReviewsWithProcedureNamesArray[i])\n continue\n }\n }\n }\n return relatedReviews\n }\n\n return relatedReviews\n }\n\n const relatedProcedures = post.proceduresDone.map((procedure, i) => {\n let buttonText = procedure.procedureDone.procedureName\n\n // Full-Arch\n // Impacted Teeth\n // Cleft Treatment\n // DO\n // Jaw Surgery\n // TMJ Disorders\n // Extractions\n // Wisdom Teeth\n\n if (procedure.procedureDone.procedureShortName) {\n buttonText = procedure.procedureDone.procedureShortName\n }\n\n return (\n \n )\n })\n\n const showOtherReviews = function () {\n if (post.reviewType === \"Patient\") {\n return hasOtherPatientReviews()\n }\n if (post.reviewType === \"Provider\") {\n return hasOtherReferrerReviews()\n }\n }\n\n var hasOtherPatientReviews = function () {\n if (relatedReviews.length > 0) {\n return true\n }\n return false\n }\n var hasOtherReferrerReviews = function () {\n if (referrerPool.length > 0) {\n return true\n }\n return false\n }\n\n const reviewCarouselHeading = classNames({\n \"review-carousel-heading\": true\n })\n\n let backUrl = \"\"\n\n if (data.allUniquePagesJson?.nodes[0]?.title) {\n backUrl = `/${data.allUniquePagesJson.nodes[0].title}`\n }\n\n const esCTAClass =\n language === \"es\" ? \"patient-review-cta-es\" : \"patient-review-cta\"\n\n return (\n \n \n \n \n
\n
\n
\n

{post.heading}

\n
\n
\n {language === \"es\" ? \"Revisión de Video\" : \"Video Review\"}\n
\n\n \n {post.language.toUpperCase()}\n \n
\n \n \n
\n
\n
\n\n {post.youtube && (\n
\n
\n
\n \n \n \n
\n
\n
\n )}\n\n {language !== \"es\" && (\n
\n
\n
\n

{pluralizeName(post.reviewerName)} Story

\n {language === \"en\" && (\n

\n \"\"\n

\n )}\n {post.reviewType !== \"Provider\" &&\n post.proceduresDone.length > 0 && (\n
\n
\n Learn More About\n
\n \n {relatedProcedures}\n \n
\n )}\n
\n
\n
\n )}\n\n {showOtherReviews() && language !== \"es\" && (\n <>\n
\n
\n
\n

\n Watch Other Reviews Like {pluralizeName(post.reviewerName)}\n

\n
\n
\n \n \n
\n \n )}\n {!showOtherReviews() && language !== \"es\" && (\n
\n
\n \n
\n
\n )}\n \n \n \n )\n}\n\nexport default SingleReview\n\nexport const query = graphql`\n query ($id: String!, $language: String!, $title: String!) {\n procedureQueryPage: allUniquePagesJson(\n filter: { template: { eq: \"procedures\" }, language: { eq: $language } }\n ) {\n nodes {\n title\n }\n }\n allUniquePagesJson(\n filter: {\n template: { eq: \"patient-stories\" }\n language: { eq: $language }\n }\n ) {\n nodes {\n title\n }\n }\n allTemplateSettingsJson(filter: { templateType: { eq: \"single-review\" } }) {\n nodes {\n getStarted {\n blurb\n buttonText\n heading\n href\n subheading\n buttons {\n button {\n appearance\n destination\n href\n buttonText\n }\n }\n }\n getStartedSpanish {\n blurb\n buttonText\n heading\n href\n subheading\n buttons {\n button {\n appearance\n destination\n href\n buttonText\n }\n }\n }\n }\n }\n singleReview: allReviewsJson(filter: { id: { eq: $id } }) {\n nodes {\n id\n title\n metaTitle\n metaDescription\n mainProcedureDone\n proceduresDone {\n procedureDone {\n procedureName\n procedureUrl\n otherProcedure\n procedureShortName\n }\n }\n heading\n quote\n language\n reviewType\n reviewerName\n subheading\n thumbnailPublicId\n mainPhotoPublicId\n youtube\n }\n }\n relatedReviews: allReviewsJson(\n filter: {\n reviewType: { eq: \"Patient\" }\n language: { eq: \"en\" }\n title: { ne: $title }\n }\n ) {\n nodes {\n thumbnailPublicId\n title\n reviewerName\n reviewType\n mainProcedureDone\n otherProcedureName\n monthYear {\n month\n year\n }\n proceduresDone {\n procedureDone {\n procedureName\n procedureUrl\n }\n }\n }\n }\n relatedReviewsProviders: allReviewsJson(\n filter: {\n reviewType: { eq: \"Provider\" }\n language: { eq: \"en\" }\n title: { ne: $title }\n }\n ) {\n nodes {\n thumbnailPublicId\n title\n reviewerName\n reviewType\n mainProcedureDone\n monthYear {\n month\n year\n }\n proceduresDone {\n procedureDone {\n procedureName\n procedureUrl\n }\n }\n }\n }\n }\n`\n"],"names":["iconName","ligatures","unicode","svgPathData","exports","prefix","icon","_ref","buttonCentered","buttonColumns","className","headingColumns","sideColumnIs","textColumns","ctaClasses","classNames","buttonClasses","React","heading","blurb","buttons","colorBack","colorBackSecondary","sideColumnsSize","mainClasses","Section","largeSpacing","Columns","Text","as","text","ButtonGroupMap","buttonGroupClass","isCentered","focusSlide","targetID","document","getElementById","getElementsByClassName","focus","SamplePrevArrow","props","style","onClick","FontAwesomeIcon","faChevronLeft","zIndex","SampleNextArrow","faChevronRight","nameClasses","last","procedure","monthYear","procedureClasses","timeClasses","reviewerName","language","procedureEs","hideProcedureNames","getMonthYearFromStrings","year","month","title","charAt","Link","to","toLowerCase","Image","useAR","publicId","thumbnailPublicId","responsiveUseBreakpoints","Transformation","quality","fetchFormat","crop","height","ImageCaption","otherProcedureName","_Component","ReviewCarousel","_this","call","state","relatedReviews","slideID","id","_inheritsLoose","_proto","prototype","componentDidMount","this","noShuffle","shuffleArray","setState","render","settings","accessibility","adaptiveHeight","infinite","length","centerPadding","slidesToShow","swipeToSlide","focusOnSelect","draggable","rows","speed","nextArrow","prevArrow","initialSlide","responsive","breakpoint","slides","map","review","SingleSlide","key","mainProcedureDone","mainProcedureDoneEs","reviewLanguage","Slider","Object","assign","width","margin","Component","_data$allUniquePagesJ","_data$allUniquePagesJ2","data","pageContext","location","post","singleReview","nodes","metaTitle","metaDescription","getStartedData","allTemplateSettingsJson","getStarted","getStartedDataEs","getStartedSpanish","reviewTitle","reviewPool","referrerPool","relatedReviewsProviders","allReviews","thisReviewProcedures","i","proceduresDone","push","procedureDone","procedureName","getReviewProceduresNames","reviewPoolWithProceduresNamesArray","reviews","relatedProceduresDone","j","patientInfo","allProceduresJustNames","addProceduresDoneArrayTo","thisReviewProcedureNamesArray","allReviewsWithProcedureNamesArray","found","some","r","includes","getReviewsWithAnyMatchingProcedures","getRelatedReviews","sortReviewsByDate","relatedProcedures","buttonText","procedureShortName","Button","procedureUrl","href","showOtherReviews","reviewType","hasOtherPatientReviews","hasOtherReferrerReviews","reviewCarouselHeading","backUrl","allUniquePagesJson","Layout","SEO","description","pathname","lang","paddingBottom","goBack","marginTop","toUpperCase","subheading","TheaterVideo","videoUrl","youtube","playing","hasWatchVideo","buttonClass","mainPhotoPublicId","pluralizeName","quote","ButtonGroup","alignLeft","noReverse","procedureQueryPage","contained","CallToAction"],"sourceRoot":""}