-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-templates-index-tsx-402800a9b5ef96085fc9.js.map
1 lines (1 loc) · 45.4 KB
/
component---src-pages-templates-index-tsx-402800a9b5ef96085fc9.js.map
1
{"version":3,"file":"component---src-pages-templates-index-tsx-402800a9b5ef96085fc9.js","mappings":"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","sources":["webpack://code-cave/./node_modules/@react-icons/all-files/bs/BsArrowUpRight.js","webpack://code-cave/./node_modules/@react-icons/all-files/fa/FaQuoteRight.js","webpack://code-cave/./src/components/common/templateSection.tsx","webpack://code-cave/./src/components/posts/postPreview.tsx","webpack://code-cave/./src/components/projects/projectPreview.tsx","webpack://code-cave/./src/components/stack/stackCarousel.tsx","webpack://code-cave/./src/components/stack/stakUnit.tsx","webpack://code-cave/./src/components/stack/stackSection.tsx","webpack://code-cave/./src/components/posts/postSection.tsx","webpack://code-cave/./src/components/projects/projectsSection.tsx","webpack://code-cave/./src/components/reviews/review.tsx","webpack://code-cave/./src/components/reviews/staticReviewsSection.tsx","webpack://code-cave/./src/pagesTemplates/index.tsx","webpack://code-cave/./node_modules/embla-carousel-autoplay/esm/embla-carousel-autoplay.esm.js"],"sourcesContent":["// THIS FILE IS AUTO GENERATED\nvar GenIcon = require('../lib').GenIcon\nmodule.exports.BsArrowUpRight = function BsArrowUpRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 16 16\",\"fill\":\"currentColor\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M6.5 4a.5.5 0 01.5-.5h5a.5.5 0 01.5.5v5a.5.5 0 01-1 0V4.5H7a.5.5 0 01-.5-.5z\",\"clipRule\":\"evenodd\"}},{\"tag\":\"path\",\"attr\":{\"fillRule\":\"evenodd\",\"d\":\"M12.354 3.646a.5.5 0 010 .708l-9 9a.5.5 0 01-.708-.708l9-9a.5.5 0 01.708 0z\",\"clipRule\":\"evenodd\"}}]})(props);\n};\n","// THIS FILE IS AUTO GENERATED\nvar GenIcon = require('../lib').GenIcon\nmodule.exports.FaQuoteRight = function FaQuoteRight (props) {\n return GenIcon({\"tag\":\"svg\",\"attr\":{\"viewBox\":\"0 0 512 512\"},\"child\":[{\"tag\":\"path\",\"attr\":{\"d\":\"M464 32H336c-26.5 0-48 21.5-48 48v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48zm-288 0H48C21.5 32 0 53.5 0 80v128c0 26.5 21.5 48 48 48h80v64c0 35.3-28.7 64-64 64h-8c-13.3 0-24 10.7-24 24v48c0 13.3 10.7 24 24 24h8c88.4 0 160-71.6 160-160V80c0-26.5-21.5-48-48-48z\"}}]})(props);\n};\n","import React, { PropsWithChildren } from \"react\";\nimport { Link } from \"gatsby\";\n\nimport { Theme } from \"../../types/common.type\";\n\nimport Border from \"../../assets/common/border.svg\";\n\nimport ContentContainer from \"./contentContainer\";\n\ninterface ITemplateSectionProps extends React.HTMLAttributes<HTMLElement> {\n title: string;\n theme: Theme;\n isArrowLink?: boolean;\n linkTitle?: string;\n subTitle?: string;\n section?: string;\n className?: string;\n borderT?: boolean;\n borderB?: boolean;\n}\n\nconst TemplateSection = ({\n section,\n theme,\n title,\n linkTitle,\n subTitle,\n className,\n children,\n borderT,\n borderB,\n isArrowLink = true,\n //style,\n ...attr\n}: PropsWithChildren<ITemplateSectionProps>) => {\n const mainColorClass =\n theme === Theme.dark ? \"text-secondary-100\" : \"text-main-100\";\n const linkColorClass =\n theme === Theme.dark\n ? \"text-secondary-100 hover:text-secondary-70\"\n : \"text-main-100 hover:text-main-10\";\n\n return (\n <>\n {borderT ? <Border className=\"w-full\" /> : null}\n <section\n className={`w-full py-16 bg-transparent ${className}`}\n //style={styles}\n {...attr}\n >\n <ContentContainer\n maxWidthClass=\"max-w-[1280px]\"\n className={`flex-col items-center ${mainColorClass}`}\n >\n <div className=\"flex justify-between w-full sm:items-center pb-8 sm:pb-14 flex-col sm:flex-row gap-5\">\n <h2 className={`text-4xl font-bold flex-1 ${mainColorClass}`}>\n {title.toUpperCase()}\n </h2>\n {section ? (\n <Link\n to={`/${section}`}\n className={`w-full sm:w-auto text-start sm:text-end text-xl font-normal cursor-pointer whitespace-nowrap ${linkColorClass}`}\n >\n {linkTitle ? linkTitle.toUpperCase() : \"DISCOVER MORE\"}{\" \"}\n {isArrowLink ? <>→</> : null}\n </Link>\n ) : null}\n {subTitle ? (\n <p\n className={`w-full sm:w-auto flex-1 text-start sm:text-end text-xl font-normal ${mainColorClass}`}\n >\n {subTitle.toUpperCase()}\n </p>\n ) : null}\n </div>\n {children}\n </ContentContainer>\n </section>\n {borderB ? <Border className=\"w-full\" /> : null}\n </>\n );\n};\n\nexport default TemplateSection;\n","import React from \"react\";\nimport { Link } from \"gatsby\";\n\nimport { BsArrowUpRight } from \"@react-icons/all-files/bs/BsArrowUpRight\";\n\nimport { IPostPreviewQueryResult } from \"../../types/post.type\";\nimport { LocalBusinessMetadata } from \"../common/metadata\";\nimport { IBlogMarkupData } from \"../../types/commonMarkup.type\";\nimport { TLang, Theme } from \"../../types/common.type\";\nimport { GatsbyImage, getImage } from \"gatsby-plugin-image\";\n\nconst PostPreview = ({\n post,\n theme,\n className,\n markupData,\n lang,\n}: {\n post: IPostPreviewQueryResult;\n className?: string;\n theme: Theme;\n markupData?: IBlogMarkupData;\n lang: TLang;\n}) => {\n const { date, title, text } = post.frontmatter;\n\n const minutes = Math.floor(post.wordCount.words / 200);\n const readingTime = minutes ? minutes : 1;\n\n const fontColorClass100 =\n theme === Theme.light ? \"text-main-100\" : \"text-secondary-100\";\n const fontColorClass70 =\n theme === Theme.light ? \"text-main-70\" : \"text-secondary-70\";\n const fontColorHover =\n theme === Theme.light ? \"hover:text-main-10\" : \"hover:text-secondary-10\";\n\n const cover = getImage(post.frontmatter.cover); \n return (\n <Link\n to={`/blog/${post.id}`}\n className={`flex flex-col sm:flex-row w-full justify-center gap-5 md:gap-14 ${fontColorClass100} ${fontColorHover} ${className}`}\n itemScope\n itemType=\"https://schema.org/Article\"\n >\n { cover &&\n <div className=\"mr-3.5\">\n <GatsbyImage\n image={cover}\n alt=\"\"\n className=\"object-cover rounded-full w-full aspect-square\"\n />\n </div>\n }\n <div className=\"flex flex-col w-full max-w-[400px] gap-2.5\">\n <p itemProp=\"dateCreated\" className={`text-lg ${fontColorClass70}`}>\n {date}\n </p>\n <h2\n itemProp=\"headline\"\n className={`text-3xl font-semibold ${fontColorClass100}`}\n >\n {title}\n </h2>\n </div>\n <div className=\"flex flex-col w-full max-w-[500px] gap-5\">\n <p\n className={`font-normal text-base ${fontColorClass100}`}\n itemProp=\"abstract\"\n >\n {text.split(\" \").slice(0, 70).join(\" \")}...\n </p>\n <div className=\"flex w-full items-center justify-between\">\n <div className=\"flex items-center gap-3 text-sm font-bold\">\n <span>{markupData?.readPostLink}</span>\n <BsArrowUpRight size={14} />\n </div>\n <p className={`text-sm ${fontColorClass70}`}>\n {`${readingTime} ${markupData?.readingTimeUnits} ${markupData?.readingTimeTitle}`}\n </p>\n </div>\n </div>\n <LocalBusinessMetadata itemProp=\"copyrightHolder\" lang={lang} />\n </Link>\n );\n};\n\nexport default PostPreview;\n","import React from \"react\";\nimport { Link } from \"gatsby\";\nimport { GatsbyImage, getImage } from \"gatsby-plugin-image\";\n\nimport { IProjectPreviewQueryResult } from \"../../types/project.type\";\nimport { TLang, Theme } from \"../../types/common.type\";\n\nimport { BsArrowUpRight } from \"@react-icons/all-files/bs/BsArrowUpRight\";\n\nimport { LocalBusinessMetadata } from \"../common/metadata\";\n\nconst ProjectPreview = ({\n project,\n className,\n theme,\n lang,\n}: {\n project: IProjectPreviewQueryResult;\n className?: string;\n theme: Theme;\n lang: TLang;\n}) => {\n const cover = getImage(project.frontmatter.cover);\n const { title, teamSize, duration } = project.frontmatter;\n\n const fontColorClass10 =\n theme === Theme.light ? \"text-main-100\" : \"text-secondary-100\";\n const bgColors =\n theme === Theme.light\n ? \"bg-secondary-100 hover:bg-secondary-100\"\n : \"bg-main-70 hover:bg-main-70\";\n\n return (\n <Link\n to={`/projects/${project.id}`}\n className={`${bgColors} ${fontColorClass10} flex flex-col justify-between rounded-2xl p-2.5 gap-2.5 ${className}`}\n itemScope\n itemType=\"https://schema.org/CreativeWork\"\n >\n <div className=\"group flex-1 relative\">\n {cover ? (\n <div className=\"w-full rounded-[10px] overflow-hidden\">\n <GatsbyImage\n image={cover}\n alt=\"cover\"\n itemProp=\"image\"\n className=\"object-contain w-full rounded-[10px] grayscale transition-all group-hover:scale-[1.05]\"\n />\n </div>\n ) : null}\n <div className=\"absolute left-2 bottom-2 flex items-center gap-2.5 z-10\">\n <p className=\"backdrop-blur-sm backdrop-brightness-75 text-secondary-100 px-5 h-10 flex items-center rounded-lg\">\n {duration}\n </p>\n <p className=\"backdrop-blur-sm backdrop-brightness-75 text-secondary-100 px-5 h-10 flex items-center rounded-lg\">\n {teamSize}\n </p>\n </div>\n </div>\n <div className=\"flex px-2.5 py-1 items-center grow\">\n <h2\n className=\"text-base grow font-medium h-full\"\n itemProp=\"description\"\n >\n {title}\n </h2>\n <BsArrowUpRight size={20} />\n </div>\n <LocalBusinessMetadata itemProp=\"author\" lang={lang} />\n </Link>\n );\n};\n\nexport default ProjectPreview;\n","import React, { forwardRef } from \"react\";\n\nimport useEmblaCarousel from \"embla-carousel-react\";\nimport Autoplay from \"embla-carousel-autoplay\";\n\nconst StackCarousel = forwardRef<\n HTMLDivElement,\n React.PropsWithChildren<{ className?: string }>\n>(({ className, children }, ref) => {\n const [emblaRef, emblaApi] = useEmblaCarousel(\n { loop: true, dragFree: true, duration: 40000, align: \"start\" },\n [\n Autoplay({\n delay: 0,\n stopOnInteraction: false,\n stopOnMouseEnter: true,\n }),\n ]\n );\n\n return (\n <div className={`overflow-hidden ${className}`} ref={emblaRef}>\n <div\n ref={ref}\n className=\"h-full flex items-center\"\n onMouseEnter={() => {\n emblaApi?.internalEngine().animation.stop();\n }}\n onMouseLeave={() => {\n emblaApi?.internalEngine().animation.start();\n }}\n >\n {children}\n </div>\n </div>\n );\n});\n\nexport default StackCarousel;\n","import React, { PropsWithChildren } from \"react\";\n\nimport Border from \"../../assets/common/border.svg\";\n\n\nconst StackUnit = ({ children }: PropsWithChildren) => {\n return (\n <div className=\"h-full shrink-0 min-w-0 cursor-pointer flex flex-col justify-between items-center content-center w-[192px] md:w-[256px] xl:w-[256px] 3xl:w-[400px]\">\n <Border className={`min-w-0 shrink-0 w-full`} />\n <div className=\"bg-main-70 w-full h-full flex justify-center\">\n <p className=\"text-lg font-semibold whitespace-nowrap self-center\">{children}</p>\n </div>\n <Border className={`min-w-0 shrink-0 w-full`} />\n </div>\n );\n};\n\nexport default StackUnit;\n","import React from \"react\";\nimport { useStaticQuery, graphql } from \"gatsby\";\n\nimport StackCarousel from \"./stackCarousel\";\nimport StackUnit from \"./stakUnit\";\n\nconst StackSection = () => {\n const techData = useStaticQuery(query);\n const techArr = techData?.markdownRemark?.frontmatter?.stack as\n | string[]\n | null;\n\n return (\n <>\n {techArr ? (\n <section className={`h-16 flex flex-col relative text-secondary-100`}>\n <StackCarousel className=\"grow\">\n {techArr.map((tech) => (\n <StackUnit key={tech}>{tech}</StackUnit>\n ))}\n </StackCarousel>\n </section>\n ) : null}\n </>\n );\n};\n\nexport default StackSection;\n\nexport const query = graphql`\n query {\n markdownRemark(fields: { sourceName: { eq: \"stack\" } }) {\n frontmatter {\n stack\n }\n }\n }\n`;\n","import React from \"react\";\n\nimport { graphql, useStaticQuery } from \"gatsby\";\n\nimport {\n IBlogSectionQueryResult,\n IPostPreviewQueryResult,\n} from \"../../types/post.type\";\n\nimport PostPreview from \"./postPreview\";\nimport TemplateSection from \"../common/templateSection\";\nimport { ILang, Theme } from \"../../types/common.type\";\n\nconst PostSection = ({ lang }: ILang) => {\n const postData = useStaticQuery(query) as IBlogSectionQueryResult;\n\n const sectionMarkup = postData?.markupData?.nodes?.find(\n (node) => node.fields.language === lang\n )?.frontmatter?.blog;\n\n let posts: IPostPreviewQueryResult[] | null | undefined;\n\n if (lang in postData)\n posts = postData?.[lang]?.nodes as IPostPreviewQueryResult[] | null;\n else posts = postData?.en?.nodes;\n\n return (\n <>\n {posts ? (\n <TemplateSection\n theme={Theme.dark}\n title={sectionMarkup?.blogSectionTitle ?? \"new in our blog\"}\n linkTitle={sectionMarkup?.blogSectionLinkTitle ?? \"all posts\"}\n section=\"blog\"\n >\n {posts.map(post => <PostPreview\n lang={lang}\n post={post}\n theme={Theme.dark}\n className=\"py-5\"\n markupData={sectionMarkup}\n />\n )}\n </TemplateSection>\n ) : null}\n </>\n );\n};\n\nexport default PostSection;\n\nexport const query = graphql`\n query {\n en: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"posts\" }, language: { eq: \"en\" } }\n }\n sort: { frontmatter: { date: DESC } }\n limit: 2\n ) {\n nodes {\n id\n frontmatter {\n date(formatString: \"DD MMM YYYY\", locale: \"en\")\n title\n text\n cover {\n childImageSharp {\n gatsbyImageData(\n width: 400\n formats: [AUTO, WEBP, AVIF]\n placeholder: BLURRED\n )\n }\n }\n }\n wordCount {\n words\n }\n }\n }\n ru: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"posts\" }, language: { eq: \"ru\" } }\n }\n sort: { frontmatter: { date: DESC } }\n limit: 2\n ) {\n nodes {\n id\n frontmatter {\n date(formatString: \"DD MMM YYYY\", locale: \"ru\")\n title\n text\n cover {\n childImageSharp {\n gatsbyImageData(\n width: 400\n formats: [AUTO, WEBP, AVIF]\n placeholder: BLURRED\n )\n }\n }\n }\n wordCount {\n words\n }\n }\n }\n markupData: allMarkdownRemark(\n filter: { fields: { sourceName: { eq: \"common\" } } }\n sort: { frontmatter: { order: ASC } }\n ) {\n nodes {\n fields {\n language\n }\n frontmatter {\n blog {\n bannerTitle\n head\n readPostLink\n readingTimeTitle\n readingTimeUnits\n postFooterTitle\n postFooterText\n blogSectionTitle\n blogSectionLinkTitle\n }\n }\n }\n }\n }\n`;\n","import React from \"react\";\n\nimport { graphql, useStaticQuery } from \"gatsby\";\n\nimport {\n IProjectPreviewQueryResult,\n IProjectSectionQueryResult,\n} from \"../../types/project.type\";\n\nimport ProjectPreview from \"./projectPreview\";\nimport TemplateSection from \"../common/templateSection\";\nimport { ILang, Theme } from \"../../types/common.type\";\n\ninterface IProjectsSectionProps extends ILang {\n excludeId?: string;\n}\n\nconst ProjectsSection = ({ excludeId, lang }: IProjectsSectionProps) => {\n const projectsPreviewData = useStaticQuery(\n query\n ) as IProjectSectionQueryResult;\n\n const sectionMarkup = projectsPreviewData?.markupData?.nodes?.find(\n (node) => node.fields.language === lang\n )?.frontmatter?.projects;\n\n let projects: IProjectPreviewQueryResult[] | null | undefined;\n if (lang in projectsPreviewData)\n projects = projectsPreviewData?.[lang]?.nodes as\n | IProjectPreviewQueryResult[]\n | null\n | undefined;\n else projects = projectsPreviewData.en?.nodes;\n\n if (!projects) return <></>;\n\n if (excludeId) {\n projects = projects.filter((project) => project.id !== excludeId);\n }\n\n return (\n <TemplateSection\n theme={Theme.dark}\n section=\"projects\"\n title={sectionMarkup?.moreProjectsSectionTitle ?? \"OUR PROJECTS\"}\n linkTitle={sectionMarkup?.moreProjectsSectionLinkTitle ?? \"Discover MORE\"}\n >\n <div className=\"flex justify-between items-center gap-5 lg:gap-10 flex-col sm:flex-row items-stretch\">\n {projects.map((project, i) => {\n if (i === 3) return;\n return (\n <ProjectPreview\n key={project.id}\n project={project}\n lang={lang}\n theme={Theme.dark}\n className=\"flex-1 sm:last:hidden lg:last:flex\"\n />\n );\n })}\n </div>\n </TemplateSection>\n );\n};\n\nexport default ProjectsSection;\n\nexport const query = graphql`\n {\n en: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"projects\" }, language: { eq: \"en\" } }\n }\n sort: { frontmatter: { date: DESC } }\n limit: 4\n ) {\n nodes {\n id\n frontmatter {\n title\n teamSize\n duration\n cover {\n childImageSharp {\n gatsbyImageData(\n width: 400\n formats: [AUTO, WEBP, AVIF]\n placeholder: BLURRED\n )\n }\n }\n }\n }\n }\n ru: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"projects\" }, language: { eq: \"ru\" } }\n }\n sort: { frontmatter: { date: DESC } }\n limit: 4\n ) {\n nodes {\n id\n frontmatter {\n title\n teamSize\n duration\n cover {\n childImageSharp {\n gatsbyImageData(\n width: 400\n formats: [AUTO, WEBP, AVIF]\n placeholder: BLURRED\n )\n }\n }\n }\n }\n }\n markupData: allMarkdownRemark(\n filter: { fields: { sourceName: { eq: \"common\" } } }\n sort: { frontmatter: { order: ASC } }\n ) {\n nodes {\n fields {\n language\n }\n frontmatter {\n projects {\n moreProjectsSectionTitle\n moreProjectsSectionLinkTitle\n }\n }\n }\n }\n }\n`;\n","import React from \"react\";\nimport { GatsbyImage, getImage } from \"gatsby-plugin-image\";\n\nimport { IReviewQueryResult } from \"../../types/review.type\";\nimport { Theme } from \"../../types/common.type\";\n\nimport { FaQuoteRight } from \"@react-icons/all-files/fa/FaQuoteRight\";\n\nconst Review = ({\n theme,\n review: {\n frontmatter: { company, person, position, location, image, link },\n html,\n },\n className,\n}: {\n theme: Theme,\n review: IReviewQueryResult;\n className?: string;\n}) => {\n const avatar = getImage(image);\n\n const isLight = theme === Theme.light;\n\n const themeMainClasses = isLight\n ? \"bg-secondary-100 text-main-100\"\n : \"bg-main-70 text-secondary-100\";\n\n return (\n <div\n className={`flex flex-col p-6 gap-3.5 hover:shadow-[0px_2px_14px_rgba(68,68,68,0.25)] shadow-[0px_2px_8px_rgba(68,68,68,0.1)] rounded-2.5xl ${themeMainClasses} ${className}`}\n >\n <div className=\"flex w-full items-start\">\n {avatar ? (\n <GatsbyImage\n image={avatar}\n alt={company}\n className=\"h-[72px] w-[72px] object-cover rounded-full mr-3.5\"\n />\n ) : null}\n <div className={`flex-1 font-normal text-base ${isLight ? \"text-main-70\" : \"text-secondary-70\"} leading-5`}>\n <a href={link}><h3 className={`font-bold text-xl ${isLight ? \"text-main-100\" : \"text-secondary-100\"} text-main-100`}>{person}</h3></a>\n <h4>\n <span>{position}</span>, <span>{company}</span>\n </h4>\n <h4>{location}</h4>\n </div>\n <FaQuoteRight size={25} color=\"#E4E4E4\" />\n </div>\n <div\n className=\"review-body text-sm\"\n dangerouslySetInnerHTML={{ __html: html }}\n />\n </div>\n\n // <div className=\"h-full flex flex-col grow p-8 text-main-100\">\n // <div className=\"mb-6 flex flex-nowrap justify-start items-center border-b-[4px] border-dashed border-secondary-100 gradient-border pb-10\">\n // <div\n // className={`inline-block rounded-full h-32 w-32 flex items-center mr-10`}\n // >\n // {avatar ? (\n // <GatsbyImage\n // image={avatar}\n // alt={company}\n // className=\"h-full object-cover rounded-full h-32 w-32\"\n // />\n // ) : null}\n // </div>\n // <div>\n // <h3 className=\"text-xl font-extrabold whitespace-nowrap\">{person}</h3>\n // <span className=\"hidden\">{person}</span>\n // <h4 className=\"text-xl font-extrabold whitespace-nowrap\">\n // <span>{position}</span>, <span>{company}</span>\n // </h4>\n // <h4 className=\"text-xl font-extrabold whitespace-nowrap\">\n // {location}\n // </h4>\n // </div>\n // </div>\n // <div\n // className=\"review-body shrink-0 text-2xl\"\n // dangerouslySetInnerHTML={{ __html: html }}\n // />\n // </div>\n );\n};\n\nexport default Review;\n","import React from \"react\";\nimport { graphql, useStaticQuery } from \"gatsby\";\n\nimport { ILang, Theme } from \"../../types/common.type\";\nimport {\n IReviewQueryResult,\n IReviewSectionQueryResult,\n} from \"../../types/review.type\";\n\nimport TemplateSection from \"../common/templateSection\";\nimport Review from \"./review\";\n\nconst StaticReviewsSection = ({ lang }: ILang) => {\n const reviewsData = useStaticQuery(query) as IReviewSectionQueryResult;\n\n const sectionMarkup = reviewsData?.markupData?.nodes?.find(\n (node) => node.fields.language === lang\n )?.frontmatter?.reviews;\n\n let reviews: IReviewQueryResult[] | null | undefined;\n\n if (lang in reviewsData)\n reviews = reviewsData?.[lang]?.nodes?.sort((a, b) =>\n a.frontmatter.person > b.frontmatter.person ? 1 : -1\n ) as IReviewQueryResult[] | null | undefined;\n else\n reviews = reviewsData?.en?.nodes?.sort((a, b) =>\n a.frontmatter.person > b.frontmatter.person ? 1 : -1\n );\n\n return (\n <>\n {reviews ? (\n <TemplateSection\n id=\"reviews\"\n theme={Theme.dark}\n title={sectionMarkup?.title ?? \"our clients' testimonials\"}\n subTitle={sectionMarkup?.linkTitle}\n >\n <div className=\"flex justify-between items-start gap-5 lg:gap-10 flex-col md:flex-row\">\n {reviews.map((review) => (\n <Review \n theme={Theme.dark}\n review={review} \n key={review.id} \n className=\"flex-1\" />\n ))}\n </div>\n </TemplateSection>\n ) : null}\n </>\n );\n};\n\nexport default StaticReviewsSection;\n\nexport const query = graphql`\n query {\n en: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"reviews\" }, language: { eq: \"en\" } }\n }\n ) {\n nodes {\n id\n html\n frontmatter {\n company\n location\n person\n position\n link\n image {\n childImageSharp {\n gatsbyImageData(\n height: 112\n placeholder: BLURRED\n formats: [AUTO, AVIF, WEBP]\n )\n }\n }\n }\n }\n }\n ru: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"reviews\" }, language: { eq: \"ru\" } }\n }\n ) {\n nodes {\n id\n html\n frontmatter {\n company\n location\n person\n position\n link\n image {\n childImageSharp {\n gatsbyImageData(\n height: 112\n placeholder: BLURRED\n formats: [AUTO, AVIF, WEBP]\n )\n }\n }\n }\n }\n }\n markupData: allMarkdownRemark(\n filter: { fields: { sourceName: { eq: \"common\" } } }\n sort: { frontmatter: { order: ASC } }\n ) {\n nodes {\n fields {\n language\n }\n frontmatter {\n reviews {\n title\n linkTitle\n }\n }\n }\n }\n }\n`;\n","import * as React from \"react\";\nimport type { HeadFC, HeadProps, PageProps } from \"gatsby\";\n\nimport { IconContext } from \"@react-icons/all-files\";\nimport Arrow from \"../assets/common/arrow-up-right.svg\";\nimport \"../styles/styles.css\";\n\nimport { IIndexPageContext } from \"../types/index.type\";\n\nimport Banner from \"../components/common/banner\";\nimport StackSection from \"../components/stack/stackSection\";\nimport PostSection from \"../components/posts/postSection\";\nimport ProjectsSection from \"../components/projects/projectsSection\";\nimport { HeadSeo } from \"../components/common/metadata\";\nimport StaticReviewsSection from \"../components/reviews/staticReviewsSection\";\nimport ContactFormSection from \"../components/forms/contactFormSection\";\nimport TeamSection from \"../components/ourTeam/teamSection\";\n\nconst IndexPage = ({\n pageContext: { markupData, lang },\n}: PageProps<null, IIndexPageContext>) => {\n return (\n <IconContext.Provider value={{ style: { verticalAlign: \"middle\" } }}>\n <Banner\n title={markupData.bannerTitle}\n titleBlockClassName=\"w-full\"\n childrenBlockClassName=\"lg:justify-end -order-1 lg:order-none\"\n >\n </Banner>\n <StackSection />\n <ProjectsSection lang={lang} />\n <StaticReviewsSection lang={lang} />\n <PostSection lang={lang} />\n {/* <TeamSection lang={lang} /> */}\n <ContactFormSection lang={lang} />\n </IconContext.Provider>\n );\n};\n\nexport default IndexPage;\n\nexport const Head: HeadFC<null, IIndexPageContext> = ({\n pageContext: { markupData, site, lang },\n location,\n}: HeadProps<null, IIndexPageContext>) => {\n return (\n <HeadSeo\n title={markupData.head}\n description={markupData.metaDescription}\n siteUrl={site.siteUrl}\n path={location.pathname}\n lang={lang}\n />\n );\n};\n","const defaultOptions = {\n active: true,\n breakpoints: {},\n delay: 4000,\n jump: false,\n playOnInit: true,\n stopOnFocusIn: true,\n stopOnInteraction: true,\n stopOnMouseEnter: false,\n stopOnLastSnap: false,\n rootNode: null\n};\n\nfunction Autoplay(userOptions = {}) {\n let options;\n let emblaApi;\n let destroyed;\n let playing = false;\n let resume = true;\n let jump = false;\n let timer = 0;\n function init(emblaApiInstance, optionsHandler) {\n emblaApi = emblaApiInstance;\n const {\n mergeOptions,\n optionsAtMedia\n } = optionsHandler;\n const optionsBase = mergeOptions(defaultOptions, Autoplay.globalOptions);\n const allOptions = mergeOptions(optionsBase, userOptions);\n options = optionsAtMedia(allOptions);\n if (emblaApi.scrollSnapList().length <= 1) return;\n jump = options.jump;\n destroyed = false;\n const {\n eventStore,\n ownerDocument\n } = emblaApi.internalEngine();\n const emblaRoot = emblaApi.rootNode();\n const root = options.rootNode && options.rootNode(emblaRoot) || emblaRoot;\n const container = emblaApi.containerNode();\n emblaApi.on('pointerDown', stopTimer);\n if (!options.stopOnInteraction) {\n emblaApi.on('pointerUp', startTimer);\n }\n if (options.stopOnMouseEnter) {\n eventStore.add(root, 'mouseenter', () => {\n resume = false;\n stopTimer();\n });\n if (!options.stopOnInteraction) {\n eventStore.add(root, 'mouseleave', () => {\n resume = true;\n startTimer();\n });\n }\n }\n if (options.stopOnFocusIn) {\n eventStore.add(container, 'focusin', stopTimer);\n if (!options.stopOnInteraction) {\n eventStore.add(container, 'focusout', startTimer);\n }\n }\n eventStore.add(ownerDocument, 'visibilitychange', visibilityChange);\n if (options.playOnInit && !documentIsHidden()) startTimer();\n }\n function destroy() {\n emblaApi.off('pointerDown', stopTimer).off('pointerUp', startTimer);\n stopTimer();\n destroyed = true;\n playing = false;\n }\n function startTimer() {\n if (destroyed) return;\n if (!resume) return;\n if (!playing) emblaApi.emit('autoplay:play');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = ownerWindow.setInterval(next, options.delay);\n playing = true;\n }\n function stopTimer() {\n if (destroyed) return;\n if (playing) emblaApi.emit('autoplay:stop');\n const {\n ownerWindow\n } = emblaApi.internalEngine();\n ownerWindow.clearInterval(timer);\n timer = 0;\n playing = false;\n }\n function visibilityChange() {\n if (documentIsHidden()) {\n resume = playing;\n return stopTimer();\n }\n if (resume) startTimer();\n }\n function documentIsHidden() {\n const {\n ownerDocument\n } = emblaApi.internalEngine();\n return ownerDocument.visibilityState === 'hidden';\n }\n function play(jumpOverride) {\n if (typeof jumpOverride !== 'undefined') jump = jumpOverride;\n resume = true;\n startTimer();\n }\n function stop() {\n if (playing) stopTimer();\n }\n function reset() {\n if (playing) play();\n }\n function isPlaying() {\n return playing;\n }\n function next() {\n const {\n index\n } = emblaApi.internalEngine();\n const nextIndex = index.clone().add(1).get();\n const lastIndex = emblaApi.scrollSnapList().length - 1;\n const kill = options.stopOnLastSnap && nextIndex === lastIndex;\n if (kill) stopTimer();\n if (emblaApi.canScrollNext()) {\n emblaApi.scrollNext(jump);\n } else {\n emblaApi.scrollTo(0, jump);\n }\n }\n const self = {\n name: 'autoplay',\n options: userOptions,\n init,\n destroy,\n play,\n stop,\n reset,\n isPlaying\n };\n return self;\n}\nAutoplay.globalOptions = undefined;\n\nexport { Autoplay as default };\n//# sourceMappingURL=embla-carousel-autoplay.esm.js.map\n"],"names":["GenIcon","module","exports","props","_ref","section","theme","title","linkTitle","subTitle","className","children","borderT","borderB","isArrowLink","attr","mainColorClass","Theme","dark","linkColorClass","___EmotionJSX","React","Border","_extends","ContentContainer","maxWidthClass","toUpperCase","Link","to","post","markupData","lang","date","text","frontmatter","minutes","Math","floor","wordCount","words","readingTime","fontColorClass100","light","fontColorClass70","fontColorHover","cover","getImage","id","itemScope","itemType","GatsbyImage","image","alt","itemProp","split","slice","join","readPostLink","BsArrowUpRight","size","readingTimeUnits","readingTimeTitle","LocalBusinessMetadata","project","teamSize","duration","fontColorClass10","bgColors","forwardRef","ref","emblaRef","emblaApi","useEmblaCarousel","loop","dragFree","align","Autoplay","delay","stopOnInteraction","stopOnMouseEnter","onMouseEnter","internalEngine","animation","stop","onMouseLeave","start","StackSection","_techData$markdownRem","_techData$markdownRem2","techData","useStaticQuery","query","techArr","markdownRemark","stack","StackCarousel","map","tech","StackUnit","key","_postData$markupData","_postData$markupData$","_postData$markupData$2","_postData$markupData$3","_postData$lang","_postData$en","_sectionMarkup$blogSe","_sectionMarkup$blogSe2","postData","sectionMarkup","nodes","find","node","fields","language","blog","posts","en","TemplateSection","blogSectionTitle","blogSectionLinkTitle","PostPreview","_projectsPreviewData$","_projectsPreviewData$2","_projectsPreviewData$3","_projectsPreviewData$4","_projectsPreviewData$5","_projectsPreviewData$6","_sectionMarkup$morePr","_sectionMarkup$morePr2","excludeId","projectsPreviewData","projects","filter","moreProjectsSectionTitle","moreProjectsSectionLinkTitle","i","ProjectPreview","review","company","person","position","location","link","html","avatar","isLight","themeMainClasses","href","FaQuoteRight","color","dangerouslySetInnerHTML","__html","_reviewsData$markupDa","_reviewsData$markupDa2","_reviewsData$markupDa3","_reviewsData$markupDa4","_reviewsData$lang","_reviewsData$lang$nod","_reviewsData$en","_reviewsData$en$nodes","_sectionMarkup$title","reviewsData","reviews","sort","a","b","Review","pageContext","IconContext","Provider","value","style","verticalAlign","Banner","bannerTitle","titleBlockClassName","childrenBlockClassName","ProjectsSection","StaticReviewsSection","PostSection","ContactFormSection","Head","_ref2","site","HeadSeo","head","description","metaDescription","siteUrl","path","pathname","defaultOptions","active","breakpoints","jump","playOnInit","stopOnFocusIn","stopOnLastSnap","rootNode","userOptions","options","destroyed","playing","resume","timer","startTimer","emit","ownerWindow","clearInterval","setInterval","next","stopTimer","visibilityChange","documentIsHidden","ownerDocument","visibilityState","play","jumpOverride","index","nextIndex","clone","add","get","lastIndex","scrollSnapList","length","canScrollNext","scrollNext","scrollTo","name","init","emblaApiInstance","optionsHandler","mergeOptions","optionsAtMedia","optionsBase","globalOptions","allOptions","eventStore","emblaRoot","root","container","containerNode","on","destroy","off","reset","isPlaying","undefined"],"sourceRoot":""}