-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcomponent---src-pages-templates-workflow-tsx-10c8768c64c0db9f80c2.js.map
1 lines (1 loc) · 17.6 KB
/
component---src-pages-templates-workflow-tsx-10c8768c64c0db9f80c2.js.map
1
{"version":3,"file":"component---src-pages-templates-workflow-tsx-10c8768c64c0db9f80c2.js","mappings":"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","sources":["webpack://code-cave/./src/components/common/templateSection.tsx","webpack://code-cave/./src/components/workflow/workflowStep.tsx","webpack://code-cave/./src/components/whyUs/whyUsReason.tsx","webpack://code-cave/./src/components/whyUs/whyUsSection.tsx","webpack://code-cave/./src/pagesTemplates/workflow.tsx","webpack://code-cave/./src/types/common.type.ts"],"sourcesContent":["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 ...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 const bgColorClass =\n theme === Theme.dark ? \"bg-main-100\" : \"bg-secondary-100\";\n\n return (\n <>\n {borderT ? <Border className=\"w-full\" /> : null}\n <section\n className={`w-full py-16 ${bgColorClass} ${className}`}\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, { useEffect, useState, useRef } from \"react\";\n\nimport { IWorkflowStep } from \"../../types/workflow.type\";\n\nconst WorkflowStep = ({\n step,\n scroll,\n stepNumber,\n className,\n}: {\n step: IWorkflowStep;\n scroll: boolean;\n stepNumber: number;\n className?: string;\n}) => {\n const div = useRef<HTMLDivElement>(null);\n const [coverWidth, setCoverWidth] = useState<\"w-[100%]\" | \"w-0\">(\"w-[100%]\");\n\n useEffect(() => {\n if (!div.current || !window) return;\n const divBottom = div.current.getBoundingClientRect().bottom;\n\n if (window.innerHeight > divBottom) setCoverWidth(\"w-0\");\n }, [scroll]);\n\n const {\n html,\n frontmatter: { title },\n } = step;\n\n return (\n <div\n ref={div}\n className={`workflow-step relative flex w-full items-center justify-between text-main-100 gap-5 md:gap-28 max-w-4.5xl ${className}`}\n >\n <div\n className={`hidden md:block cover absolute -top-2 -bottom-2 z-10 bg-secondary-100 transition-all duration-1000 ${coverWidth}`}\n />\n <p className=\"text-center px-5 md:px-20 text-[88px] sm:text-[148px] font-bold shrink-0 py-4\">\n {stepNumber}\n </p>\n <div className=\"flex flex-col flex-1 gap-2.5\">\n <h2 className=\"font-bold text-2xl sm:text-3xl\">{title}</h2>\n <div\n className=\"w-full font-normal text-lg\"\n dangerouslySetInnerHTML={{ __html: html }}\n />\n </div>\n </div>\n );\n};\n\nexport default WorkflowStep;\n","import React from \"react\";\n\nimport { IWhyUsReason } from \"../../types/whyUs.type\";\n\nconst WhyUsReason = ({\n reason: {\n frontmatter: { title },\n html,\n },\n className,\n}: {\n reason: IWhyUsReason;\n className?: string;\n}) => {\n return (\n <div\n className={`group why-us-card relative flex flex-col text-secondary-100 gap-2.5 cursor-pointer break-inside-avoid h-max ${className}`}\n >\n <h3 className=\"text-3xl\">{title}</h3>\n <div\n className={`text-lg text-secondary-70`}\n dangerouslySetInnerHTML={{ __html: html }}\n />\n <div\n className={`line w-1 h-0 bg-secondary-100 absolute top-1/2 -left-5 -translate-y-1/2 transition-all duration-500 break-inside-avoid group-hover:h-full`}\n />\n </div>\n );\n};\n\nexport default WhyUsReason;\n","import React from \"react\";\nimport { graphql, useStaticQuery } from \"gatsby\";\n\nimport { IWhyUsQueryResult, IWhyUsReason } from \"../../types/whyUs.type\";\nimport { ILang, Theme } from \"../../types/common.type\";\n\nimport TemplateSection from \"../common/templateSection\";\nimport WhyUsReason from \"./whyUsReason\";\n\nconst WhyUsSection = ({ lang }: ILang) => {\n const whyUsQueryData = useStaticQuery(query) as IWhyUsQueryResult;\n\n let whyUsReasons: IWhyUsReason[] | null | undefined;\n if (lang in whyUsQueryData)\n whyUsReasons = whyUsQueryData?.[lang]?.nodes as\n | IWhyUsReason[]\n | null\n | undefined;\n else whyUsQueryData?.en?.nodes;\n\n const sectionTitle =\n whyUsQueryData?.markupData?.nodes?.find(\n (node) => node.fields.language === lang\n )?.frontmatter?.whyUs?.title ?? \"why us\";\n\n return (\n <>\n {whyUsReasons?.length ? (\n <TemplateSection theme={Theme.dark} title={sectionTitle} borderB>\n <div className=\"flex flex-col md:flex-row gap-y-5 w-full gap-x-28 max-w-4.5xl\">\n <div className=\"flex flex-1 flex-col gap-y-5 md:gap-y-14 justify-start\">\n {whyUsReasons.map(\n (reason, i) =>\n i % 2 === 0 && <WhyUsReason key={reason.id} reason={reason} />\n )}\n </div>\n <div className=\"flex flex-1 flex-col gap-y-5 md:gap-y-14 justify-start\">\n {whyUsReasons.map(\n (reason, i) =>\n i % 2 != 0 && <WhyUsReason key={reason.id} reason={reason} />\n )}\n </div>\n </div>\n </TemplateSection>\n ) : null}\n </>\n );\n};\n\nexport default WhyUsSection;\n\nconst query = graphql`\n {\n en: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"whyUs\" }, language: { eq: \"en\" } }\n }\n sort: { frontmatter: { order: ASC } }\n ) {\n nodes {\n id\n html\n frontmatter {\n title\n }\n fields {\n language\n }\n }\n }\n ru: allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"whyUs\" }, language: { eq: \"ru\" } }\n }\n sort: { frontmatter: { order: ASC } }\n ) {\n nodes {\n id\n html\n frontmatter {\n title\n }\n fields {\n language\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 whyUs {\n title\n }\n }\n }\n }\n }\n`;\n","import React, { useEffect, useRef, useState } from \"react\";\nimport { HeadFC, HeadProps, PageProps } from \"gatsby\";\nimport { graphql } from \"gatsby\";\nimport { getImage } from \"gatsby-plugin-image\";\n\nimport {\n IWorkflowPageContext,\n IWorkflowStepsQueryResult,\n} from \"../types/workflow.type\";\n\nimport Banner from \"../components/common/banner\";\nimport ContentContainer from \"../components/common/contentContainer\";\nimport WorkflowStep from \"../components/workflow/workflowStep\";\nimport WhyUsSection from \"../components/whyUs/whyUsSection\";\nimport { HeadSeo } from \"../components/common/metadata\";\nimport Border from \"../assets/common/border.svg\";\nimport ContactFormSection from \"../components/forms/contactFormSection\";\n\nconst Workflow = ({\n data,\n pageContext: { markupData, lang },\n}: PageProps<IWorkflowStepsQueryResult, IWorkflowPageContext>) => {\n const workflowSteps = data.allMarkdownRemark.nodes;\n const bannerImage = getImage(markupData.image);\n\n const isInitial = useRef<boolean>(true);\n const [scroll, setScroll] = useState<boolean>(false);\n\n const scrollHandler = () => {\n setScroll((scroll) => !scroll);\n };\n\n useEffect(() => {\n if (!isInitial.current || !window) return;\n isInitial.current = false;\n\n window.addEventListener(\"scroll\", scrollHandler);\n\n return () => window.removeEventListener(\"scroll\", scrollHandler);\n }, []);\n\n return (\n <>\n <Banner\n heightClass=\"lg:h-99\"\n title={markupData.bannerTitle}\n image={bannerImage}\n borderBottom\n />\n <div className=\"bg-secondary-100\">\n <ContentContainer className=\"flex-col items-center relative transition-all duration-1000 py-16 gap-5 sm:gap-0\">\n {workflowSteps\n ? workflowSteps.map((step, i) => (\n <WorkflowStep\n key={step.id}\n step={step}\n className=\"even:flex-row-reverse\"\n scroll={scroll}\n stepNumber={i + 1}\n />\n ))\n : null}\n </ContentContainer>\n <Border className=\"w-full\" />\n </div>\n <WhyUsSection lang={lang} />\n <ContactFormSection lang={lang} />\n </>\n );\n};\n\nexport default Workflow;\n\nexport const Head: HeadFC<IWorkflowStepsQueryResult, IWorkflowPageContext> = ({\n pageContext: { markupData, site, lang },\n location,\n}: HeadProps<IWorkflowStepsQueryResult, IWorkflowPageContext>) => (\n <HeadSeo\n title={`${markupData.head} | ${markupData.bannerTitle.toUpperCase()}`}\n description={site.description}\n siteUrl={site.siteUrl}\n path={location.pathname}\n lang={lang}\n />\n);\n\nexport const query = graphql`\n query ($lang: String) {\n allMarkdownRemark(\n filter: {\n fields: { sourceName: { eq: \"workflow\" }, language: { eq: $lang } }\n }\n sort: { frontmatter: { step: ASC } }\n ) {\n nodes {\n id\n html\n frontmatter {\n title\n image {\n publicURL\n }\n }\n }\n }\n }\n`;\n","export interface ILang {\n lang: TLang;\n}\n\nexport type TLang = \"en\" | \"ru\";\n\nexport type TLinks = \"services\" | \"workflow\" | \"projects\" | \"blog\";\n\nexport interface IMarkdownFeedQuery {\n site: {\n siteMetadata: ISiteMetadata\n },\n allMarkdownRemark: {\n edges: Array<{\n node: {\n id: string;\n frontmatter: {\n title: string;\n date: string;\n authorAlias: string;\n keywords: string;\n };\n fields: {\n sourceName: string;\n };\n excerpt: string;\n };\n }>;\n };\n};\n\nexport interface IBasePageContext extends ILang {\n site: ISiteMetadata;\n}\n\nexport interface IMdQueryResult<T extends object> {\n allMarkdownRemark: {\n nodes: T[];\n };\n}\n\nexport interface ISiteMetadata {\n title: string;\n description: string;\n siteUrl: string;\n image: string;\n analytics: { gtagId: string; clarityId: string };\n commentsSetup: ICommentsSetup;\n}\n\nexport interface ICommentsSetup {\n repo: `${string}/${string}`;\n repoId: string;\n categoryId: string;\n}\n\nexport enum Theme {\n dark = \"dark\",\n light = \"light\",\n}\n"],"names":["_ref","section","theme","title","linkTitle","subTitle","className","children","borderT","borderB","isArrowLink","attr","mainColorClass","Theme","dark","linkColorClass","bgColorClass","___EmotionJSX","React","Border","_extends","ContentContainer","maxWidthClass","toUpperCase","Link","to","step","scroll","stepNumber","div","useRef","coverWidth","setCoverWidth","useState","useEffect","current","window","divBottom","getBoundingClientRect","bottom","innerHeight","html","frontmatter","ref","dangerouslySetInnerHTML","__html","reason","_whyUsQueryData$lang","_whyUsQueryData$en","_whyUsQueryData$marku","_whyUsQueryData$marku2","_whyUsQueryData$marku3","_whyUsQueryData$marku4","_whyUsQueryData$marku5","_whyUsQueryData$marku6","_whyUsReasons","lang","whyUsQueryData","useStaticQuery","query","whyUsReasons","nodes","en","sectionTitle","markupData","find","node","fields","language","whyUs","length","TemplateSection","map","i","WhyUsReason","key","id","data","pageContext","workflowSteps","allMarkdownRemark","bannerImage","getImage","image","isInitial","setScroll","scrollHandler","addEventListener","removeEventListener","Banner","heightClass","bannerTitle","borderBottom","WorkflowStep","WhyUsSection","ContactFormSection","Head","_ref2","site","location","HeadSeo","head","description","siteUrl","path","pathname"],"sourceRoot":""}