{"version":3,"file":"component---src-templates-blog-index-blog-index-template-tsx-4396af510d1dcd492c4c.js","mappings":"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","sources":["webpack://gatsby-tinacms/./src/utils/use.site.settings.ts","webpack://gatsby-tinacms/./src/utils/toTinaMarkdown.ts","webpack://gatsby-tinacms/./src/templates/blog/index/blog.index.template.tsx","webpack://gatsby-tinacms/./src/templates/blog/index/blog.index.head.tsx","webpack://gatsby-tinacms/./src/templates/blog/index/blog.index.render.tsx","webpack://gatsby-tinacms/./src/utils/seo/open.graph.tsx","webpack://gatsby-tinacms/./src/utils/seo/faq.schema.tsx","webpack://gatsby-tinacms/./src/utils/seo/how-to.schema.tsx","webpack://gatsby-tinacms/./src/utils/seo/org.schema.tsx","webpack://gatsby-tinacms/./src/utils/seo/breadcrumbs.tsx","webpack://gatsby-tinacms/./src/utils/seo/seo.tsx","webpack://gatsby-tinacms/./src/components/head/head.tsx"],"sourcesContent":["import { graphql, useStaticQuery } from \"gatsby\";\n\ntype SiteSettingsModel = {\n    name: string;\n    legalName: string;\n    baseUrl: string;\n    logo: {\n        src: string;\n        alt: string\n        width: number;\n        height: number;\n    };\n    description: string;\n    phone: string;\n    email: string;\n    image: string;\n    foundingDate: number;\n    founders: Array<{\n        name: string;\n        occupation: string;\n        socialLink: string;\n    }>\n    businessAddress: {\n        street: string;\n        city: string;\n        state: string;\n        zip: string;\n    };\n    rating: {\n        value: string;\n        outOf: string;\n        reviews: string;\n    };\n    socialLinks: string;\n    gtmId: string;\n    fbAppId: string;\n    twitterAuthor: string;\n};\n\nexport const useSiteSettings = () => {\n    const { site } = useStaticQuery<{\n        site: SiteSettingsModel\n    }>(siteSettingsQuery);\n\n    return site;\n};\n\nconst siteSettingsQuery = graphql`\n    query {\n        site: siteJson {\n            name\n            legalName\n            baseUrl\n            logo {\n                src\n                alt\n                width\n                height\n            }\n            description\n            phone\n            email\n            image\n            foundingDate\n            founders {\n                name\n                occupation\n                socialLink\n            }\n            businessAddress {\n                street\n                city\n                state\n                zip\n            }\n            rating {\n                value\n                outOf\n                reviews\n            }\n            socialLinks\n            gtmId\n            fbAppId\n            twitterAuthor\n        }\n    }\n`;","import type { TinaMarkdownContent } from 'tinacms/dist/rich-text';\n\n//(.*)(?:<([^<>\\s]+)\\s{0,1}(.+)=[{\"](.+)[\"}]\\s{0,1}\\/>)(.*)\n\nexport const toTinaMarkdown = (value: string): TinaMarkdownContent | any => {\n    const parts = value.match(/[^<>]+/g);    \n\n    return {\n        type: 'root',\n        children: parts ? parts.map(match => {\n            \n            if ( match.match(/CurrentYear/) ) {\n                const [component, ...props] = match.split(/\\s/g);\n                \n                const p: { [key: string]: string } = {};\n\n                props.forEach(prop => {\n                    const propParts = /([a-zA-Z]+)=[{\"'](.+)['\"}]/.exec(prop);\n                    if ( propParts ) {\n                        const [_, _prop, _value] = propParts;\n                        p[_prop] = _value;\n                    }\n                });\n\n                return {\n                    type: 'mdxJsxFlowElement',\n                    name: component,\n                    props: p,\n                    children: [{type: 'text', text: ''}]\n                }\n            }\n\n            return {\n                type: 'text',\n                text: match || ''\n            }\n        }) : [{ type: 'text', text: '' }]\n    }\n};","import React from 'react';\nimport { PageProps, graphql } from 'gatsby';\n\n// Utils\nimport { useTinaEditor } from '@brz-utils/tina';\n\n// Components\nimport BlogPageRender from './blog.index.render';\nimport { BlogIndexPageHead } from './blog.index.head';\n\n// Types\nimport { PageModels } from '@brz-types/page.models';\nimport { LatestDataModel, PageDataModel, PostsDataModel } from './types';\nimport { ContextType } from '@brz-utils/create.pages/gatsby.page.context.types';\n\n\ntype QueryDataModel = \n    PageModels.DataModel<PageDataModel> &\n    LatestDataModel &\n    PostsDataModel\n\nconst BlogIndexPageTemplate = (props: PageProps<QueryDataModel, ContextType>) => {    \n    const tina = props.data.page.tina;\n    const latest = props.data.latest.nodes;\n    const posts = props.data.posts.nodes;\n    \n    const { data } = useTinaEditor({\n        data: tina.data,\n        query: tina.query,\n        variables: tina.variables\n    });    \n\n    return (\n        <BlogPageRender \n            data={data} \n            latest={latest} \n            posts={posts} \n            pagination={{\n                current: props.pageContext.current || 1,\n                total: props.pageContext.totalPages || 1,\n                posts: props.pageContext.totalPosts || 0,\n                limit: props.pageContext.limit || 0\n            }} \n        />\n    );\n};\n\nexport default BlogIndexPageTemplate;\n\n\nexport const PageQuery = graphql`\n    query($id: String, $limit: Int, $skip: Int) {\n        page: mdx(id: { eq: $id }) {\n            tina\n        }\n\n        latest: allMdx(\n            filter: { frontmatter: { component: { eq: \"blog/post\" } } }\n            sort: { frontmatter: {publishedDate: DESC} }\n            limit: 1\n        ) {\n            nodes {\n                tina(\n                    queryFilePath: \"src/templates/blog/post/post.preview.tina.query.gql\"\n                    dataOnly: true\n                )\n            }\n        }\n\n        posts: allMdx(\n            filter: { frontmatter: { component: { eq: \"blog/post\" } } }\n            sort: { frontmatter: { publishedDate: DESC } }\n            limit: $limit\n            skip: $skip\n        ) {\n            nodes {\n                tina(\n                    queryFilePath: \"src/templates/blog/post/post.preview.tina.query.gql\"\n                    dataOnly: true\n                )\n            }\n        }\n\n\n    }\n`;\n\n\nexport const Head = BlogIndexPageHead; ","import React from 'react';\nimport { HeadProps } from 'gatsby';\n\nimport { PageContextProvider } from '@brz-utils/contexts/page.context';\nimport { Head } from '@brz-components/head/head';\nimport { PageDataModel } from './types';\nimport { PageModels } from '@brz-types/page.models';\nimport { OpenGraphSchema } from '@brz-utils/seo/open.graph';\n\n\nexport const BlogIndexPageHead = (props: HeadProps<PageModels.DataModel<PageDataModel>>) => {\n    const { data } = props.data.page.tina;\n\n    return <>\n        <PageContextProvider pageSettings={data.node.settings} head>\n            <Head />\n\n            <OpenGraphSchema />\n        </PageContextProvider>\n    </>\n};","import React from 'react';\n\nimport { useClass } from '@breezerr';\nimport { usePage } from '@brz-utils/contexts/page.context';\nimport { LatestDataModel, PostsDataModel, PageDataModel } from './types';\nimport { PageContentRenderer } from '@brz-utils/page.content.renderer';\nimport { Button, ButtonBase, MenuItem, Pagination, PaginationItem } from '@mui/material';\nimport { TextLink } from '@brz-components/elements/text.link';\nimport { useBreakpoint } from '@brz-utils/contexts/is.breakpoint';\nimport { DropDownButton } from '@brz-components/elements/dropdown.button';\nimport { Uppercase } from '@brz-components/elements/uppercase';\nimport { TinaMarkdown } from 'tinacms/dist/rich-text';\nimport { RichCurrentYear } from '@brz-components/elements/rich.current.year';\nimport { filterTinaMarkdownContentParagraphs } from '@brz-utils/tina/filter.paragraphs';\nimport { Img } from '@brz-components/elements/img';\nimport { dateFormat } from '@brz-utils/date.format';\nimport { newLinesToBreaks } from '@brz-utils/newlines.to.breaks';\nimport { PostPreview } from '@brz-components/elements/post.preview';\n\n\ntype Props = {\n    data: PageDataModel;\n    latest?: LatestDataModel['latest']['nodes'];\n    posts?: PostsDataModel['posts']['nodes'];\n    pagination?: {\n        current: number;\n        total: number;\n        posts: number;\n        limit: number;\n    }\n};\n\nconst BlogPageRender = (props: Props) => {\n\n    return (\n        <PageContentRenderer settings={props.data.node.settings}>\n            <Content {...props} />\n        </PageContentRenderer>\n    );\n};\n\nexport default BlogPageRender;\n\n\n\n/**\n * A wrapper function to render page content and be able to use PageContext\n */\nfunction Content(props: Props) {\n    const { data, latest, posts } = props;\n    \n    const { page: settings } = usePage();\n    const { isMobile } = useBreakpoint();\n\n    const pagination = {\n        limit: 0,\n        posts: 0,\n        current: 1,\n        total: 1,\n        ...props.pagination\n    }\n    \n\n    return (\n        <div className={useClass(`container d-grid grid-cols-1 lg:grid-cols-12 gap-x-3rem pt-${settings._computed.topHeight() / 10}rem mt-2rem lg:mt-9rem`)}>\n\n\n            {/* \n            \n                Header\n            \n            */}\n            <section className={useClass('col-span-full d-flex justify-content-between mb-4rem lg:mb-7rem')}>\n                <div className={useClass('d-flex')}>\n                    <h1 className={`h3 ${useClass(`${pagination.current === 1 ? '' : 'underline'}`)}`}>\n                        <TextLink href={data.node.settings.seo.url}>{ data.node.heading }</TextLink>\n                    </h1>\n                    {pagination.current !== 1 ? (\n                        <div className={`h3 ${useClass('d-none md:d-block text-400! ml-1rem text-color-primary:400')}`}>/ Page {pagination.current}</div>\n                    ) : null}\n                </div>\n\n                <div className={useClass('justify-content-end align-items-center')}>\n                    <DropDownButton\n                        label={`Categories`}\n                        DropDownProps={{\n                            align: 'right',\n                            className: useClass('min-w-15rem')\n                        }}\n                        ButtonProps={{\n                            size: 'small',\n                            variant: 'contained',\n                            color: 'inherit',\n                            className: useClass('d-flex lg:d-none')\n                        }}\n                    >\n                        {/* {props.pagination?.current !== 1 ? (\n                            <MenuItem href={data.node.settings.seo.url} component={TextLink}>All</MenuItem>\n                        ) : null} */}\n                        {data.node.categories?.map((category, index) => {\n                            return category.ref ? (\n                                <MenuItem key={index} href={category.ref.settings.seo.url} component={TextLink}>{category.ref.name}</MenuItem>\n                            ) : null;\n                        })}\n                    </DropDownButton>\n\n                    <div className={useClass('d-none lg:d-flex -mr-1.5rem')}>\n                        {/* {props.pagination?.current !== 1 ? (\n                            <Button\n                                className={useClass('mx-0.3rem')}\n                                component={TextLink}\n                                href={data.node.settings.seo.url}\n                                variant=\"text\"\n                                color=\"inherit\"\n                                size=\"small\"\n                            >All</Button>\n                        ) : null} */}\n\n                        {data.node.categories?.map((category, index) => {\n                            return category.ref ? (\n                                <Button\n                                    className={useClass('mx-0.3rem')}\n                                    key={index}\n                                    component={TextLink}\n                                    href={category.ref.settings.seo.url}\n                                    variant=\"text\"\n                                    color=\"inherit\"\n                                    size=\"small\"\n                                >{ category.ref.name }</Button>\n                            ) : null;\n                        })\n                    }</div>\n                </div>\n            </section>\n\n\n\n\n\n            {/* \n            \n                Latest\n            \n            */}\n            {props.pagination?.current === 1 ? (\n                <section className={useClass('col-span-full')}>\n                    <Uppercase className={useClass('mb-3rem lg:mb-4.5rem')}>The Latest</Uppercase>\n                    \n                    {latest?.map((node, index) => {\n                        const post = node?.tina?.data?.node;\n\n                        return post ? (\n                            <article key={index} className={useClass('d-grid grid-cols-1 lg:grid-cols-2 lg:gap-x-3rem')}>\n\n\n                                <div className={useClass('border-box lg:pr-10rem d-flex flex-column align-items-start lg:py-3rem order-2 lg:order-1')}>\n                                    <h2 className={useClass('mb-3rem lg:mb-4rem')}>\n                                        <TextLink href={post.settings.seo.url}>\n                                            <TinaMarkdown \n                                                content={filterTinaMarkdownContentParagraphs(post.headingRich)}\n                                                components={{ CurrentYear: RichCurrentYear }}\n                                            />\n                                        </TextLink>\n                                    </h2>\n\n                                    <div className={useClass('d-flex justify-content-between mb-3rem lg:mb-4rem w-100%')}>\n                                        {post.author ? (\n                                            <ButtonBase \n                                                className={useClass(`d-flex py-0.2rem pl-2.5rem xs:pl-0.4rem pr-2.5rem text-left radius-3rem -ml-2.5rem xs:-ml-0.5rem`)}\n                                                component={TextLink}\n                                                href={post.author.settings.seo.url}\n                                            >\n                                                <div className={useClass('d-none xs:d-block w-4rem h-4rem lg:w-4.2rem lg:h-4.2rem bg-color-grey:200 radius-100% mr-1rem')}>\n                                                    {post.author.avatar ? (\n                                                        <Img className={useClass('radius-100% w-100% h-100%')} src={post.author.avatar} width={50} height={50} gravity='center' />\n                                                    ) : (null)}\n                                                </div>\n                                                <div className={useClass('mb-0.2rem')}>\n                                                    <small className={useClass('')}>\n                                                        Last updated { new Date(post.updatedDate).toLocaleString('en-US', dateFormat) }\n                                                    </small>\n                                                    <div className={useClass('text-700')}>{ post.author.name }</div>\n                                                </div>\n                                            </ButtonBase>\n                                        ) : null}\n\n                                        {post.readtime ? (<div className={useClass('d-flex')}>\n                                            <svg className={useClass('mt-0.6rem')} xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\">\n                                                <g transform=\"translate(-324 -524)\">\n                                                    <g transform=\"translate(324 524)\" fill=\"#fff\" stroke=\"#969db1\" strokeWidth=\"2\">\n                                                        <circle cx=\"8\" cy=\"8\" r=\"8\" stroke=\"none\"/>\n                                                        <circle cx=\"8\" cy=\"8\" r=\"7\" fill=\"none\"/>\n                                                    </g>\n                                                    <g transform=\"translate(331.651 529.565)\">\n                                                        <path d=\"M-14908.191-1473.605v-3.478\" transform=\"translate(14908.191 1477.083)\" fill=\"none\" stroke=\"#969db1\" strokeLinecap=\"round\" strokeWidth=\"2\"/>\n                                                        <path d=\"M-14906.254-1474.033h2.783\" transform=\"translate(14906.254 1477.511)\" fill=\"none\" stroke=\"#969db1\" strokeLinecap=\"round\" strokeWidth=\"2\"/>\n                                                    </g>\n                                                </g>\n                                            </svg>\n                                            <div className={useClass('ml-1rem')}>\n                                                <small className={useClass('d-block mt-0.5rem')}>Read time</small>\n                                                <div className={useClass('text-700 -mt-0.1rem')}>{ `${Math.round(post.readtime.minutes || 6)} min${Math.round(post.readtime.minutes || 6) === 1 ? '' : 's'}` }</div>\n                                            </div>\n                                        </div>) : null}\n                                    </div>\n\n                                    <div className={useClass('mb-2rem lg:mb-4rem')} dangerouslySetInnerHTML={{ __html: newLinesToBreaks(post.excerptText) }} />\n\n                                    {post.category ? (\n                                        <Button\n                                            className={useClass('mt-auto max-h-2rem! text-size-1.2rem! px-1rem!')}\n                                            size=\"small\"\n                                            variant=\"contained\"\n                                            color=\"inherit\"\n                                            href={post.category.settings.seo.url}\n                                        >{ post.category.name }</Button>\n                                    ) : null}\n                                </div>\n\n                                <TextLink \n                                    href={post.settings.seo.url} \n                                    className={\n                                        useClass('p-relative d-flex align-items-center justify-content-center mb-3rem lg:mb-0x order-1 lg:order-2')\n                                    }>\n                                    <Img \n                                        className={useClass('radius-2rem w-100% h-100%')} \n                                        src={post.cover || post.thumbnail} \n                                        width={590 * 1.5} \n                                        loading='eager'\n                                        style={{ objectFit: 'cover' }}\n                                    />\n                                </TextLink>\n                            </article>\n                        ) : null;\n                    })}\n                </section>\n            ) : null}\n\n\n\n\n            {/* \n            \n                Popular\n            \n            */}\n            {data.node.popular && props.pagination?.current === 1 ? (\n                <section className={useClass('col-span-full d-grid lg:grid-cols-2 lg:gap-x-6rem gap-y-5rem mt-9rem lg:mt-14rem')}>\n\n                    <Uppercase className={useClass('col-span-full')}>Most Popular</Uppercase>\n\n                    {data.node.popular.map((post, index) => {\n                        return (\n                            <PostPreview \n                                key={index} \n                                data={post.ref} \n                                ImageProps={{\n                                    width: 590,\n                                }}\n                            />\n                        );\n                    })}\n\n                </section>\n            ) : null}\n\n\n            \n\n\n\n\n            {/* \n            \n                All Posts\n            \n            */}\n            {posts ? (\n                <section \n                    className={\n                        useClass(`col-span-full d-grid lg:grid-cols-3 lg:gap-x-6rem gap-y-5rem ${props.pagination?.current === 1 ? 'mt-9rem lg:mt-14rem' : ''} mb-6rem lg:mb-14rem`)\n                    }\n                >\n                    {props.pagination?.current === 1 ? (\n                        <Uppercase className={useClass('col-span-full')}>All Posts</Uppercase>\n                    ) : (\n                        <Uppercase className={useClass('col-span-full')}>\n                            Showing {pagination.limit * (pagination.current - 1) + 1} &mdash; {pagination.limit * (pagination.current)} out of {pagination.posts} articles\n                        </Uppercase>\n                    )}\n\n                    {posts.map((post, index) => {\n                        return (\n                            <PostPreview \n                                key={index} \n                                data={post.tina.data.node} \n                                ImageProps={{\n                                    width: 590,\n                                }}\n                            />\n                        );\n                    })}\n\n                </section>\n            ) : null}\n\n\n\n            <div className={useClass('col-span-full d-flex justify-content-center')}>\n                <Pagination \n                    className={useClass('col-span-12 d-flex justify-content-center')} \n                    page={pagination?.current} \n                    count={pagination?.total} \n                    siblingCount={isMobile ? 0 : 1}\n                    renderItem={(item) => {\n                        const base = data.node.settings.seo.url.replace(/[\\/\\d]+/, '');\n                        const to = (item.page || 1) > 1 ? `${item.page}/` : '';\n\n                        return <PaginationItem\n                            component={item.page && item.page <= pagination.total ? TextLink : 'button'}\n                            href={`/${base}${to}`}\n                            {...item}\n                        />\n                    }}\n                />\n            </div>\n\n\n\n            {/* Header */}\n            {/* <div className={useClass('container')}>\n                <pre>{JSON.stringify(data, null, '  ')}</pre>\n            </div> */}\n        </div>\n    );\n}","import React from \"react\";\nimport { renderToStaticMarkup } from 'react-dom/server';\n\nimport { env } from \"@brz-env\";\nimport getAlt from '@brz-shared/img/alt';\nimport { usePage } from \"@brz-utils/contexts/page.context\";\nimport { useSiteSettings } from \"@brz-utils/use.site.settings\";\nimport { toTinaMarkdown } from \"@brz-utils/toTinaMarkdown\";\n\nimport { TinaMarkdown } from 'tinacms/dist/rich-text';\nimport { RichCurrentYear } from \"@brz-components/elements/rich.current.year\";\n\n\nconst TESTING = false;\n\n\ntype PropsType = {\n    pageType?: 'article' | 'profile' | 'website';\n    cover?: string;\n    thumbnail?: string;\n    author?: {\n        name: string;\n        settings: { seo: { url: string } }\n    } | null;\n    publishedDate?: string;\n    updatedDate?: string;\n};\n\nexport const OpenGraphSchema = (props: PropsType) => {\n    const site = useSiteSettings();\n    const { page, template } = usePage();\n\n    const title = renderToStaticMarkup(<TinaMarkdown \n        content={toTinaMarkdown(page.seo.title)}  \n        components={{\n            CurrentYear: RichCurrentYear\n        }}\n    />)\n\n    const metas: Array<{ property?: string; name?: string; content: string; }> = [\n        {\n            property: `og:site_name`,\n            content: site.name\n        }, {\n            property: `og:title`,\n            content: title\n        }, {\n            property: `og:description`,\n            content: page.seo.description || ''\n        }, {\n            property: `og:locale`,\n            content: `en_US`\n        }, {\n            property: `og:url`,\n            content: `${TESTING ? 'https://brz-web-tina-cms-qa.azurewebsites.net/' : env.DEPLOYED_HOST}${page.seo.url}`\n        },\n    ];\n\n    // Twitter Meta\n    metas.push(\n        {\n            name: `twitter:card`,\n            content: `summary_large_image`\n        },\n        {\n            name: `twitter:creator`,\n            content: site.twitterAuthor\n        },\n        {\n            name: 'twitter:site',\n            content: site.twitterAuthor\n        },\n        {\n            name: `twitter:title`,\n            content: title\n        },\n        {\n            name: `twitter:description`,\n            content: page.seo.description || ''\n        }\n    );\n\n    if (props.cover || props.thumbnail || page.seo.image || site.image) {\n        metas.push({\n            property: `og:image`,\n            content: props.cover || props.thumbnail || page.seo.image || site.image\n        }, {\n            property: `og:image:alt`,\n            content: getAlt( props.cover || props.thumbnail || page.seo.image || site.image )\n        }, {\n            property: `twitter:image`,\n            content: props.cover || props.thumbnail || page.seo.image || site.image\n        }, {\n            property: `twitter:image:alt`,\n            content: getAlt( props.cover || props.thumbnail || page.seo.image || site.image )\n        });\n    }\n\n    if( site.fbAppId ) {\n        metas.push({\n            property: `fb:app_id`,\n            content: site.fbAppId\n        });\n    }\n\n\n    metas.push({\n        property: `og:type`,\n        content: props.pageType || 'website'\n    });\n\n\n    /**\n     * If Article\n     */\n    if ( props.pageType === 'article' && props.author ) {\n        metas.push({\n            property: 'article:author',\n            content: props.author.name\n        }, {\n            property: 'author',\n            content: props.author.name\n        });\n\n        if ( props.publishedDate ) {\n            metas.push({\n                property: 'article:published_time',\n                content: props.publishedDate\n            }, {\n                property: 'published_time',\n                content: props.publishedDate\n            });\n        }\n    }\n\n\n    /**\n     * If Author / Profile\n     */\n    if ( props.pageType === 'profile' && props.author ) {\n        metas.push({\n            property: 'profile:first_name',\n            content: props.author.name.split(' ')?.[0]\n        }, {\n            property: 'profile:last_name',\n            content: props.author.name.split(' ')?.[0]\n        });\n    }\n\n\n    return metas.map((meta, index) => {\n        return <meta key={index} {...meta} />\n    })\n};","import React from \"react\";\nimport { usePage } from \"@brz-utils/contexts/page.context\";\n\n\n\nexport const FAQSchema = () => {\n    const { page, template } = usePage();\n\n    if (page.seo.faq?.disable || template.disable?.faqSchema || !page.seo.faq?.items?.length) return null;\n\n    const jsonObj = {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"FAQPage\",\n        \"name\": page.seo.faq.name,\n        \"mainEntity\": page.seo.faq.items.map((item) => {\n            return {\n                \"@type\": \"Question\",\n                \"name\": item.q,\n                \"acceptedAnswer\": {\n                    \"@type\": \"Answer\",\n                    \"text\": item.a\n                }\n            }\n        })\n    };\n\n    return (\n        <script id=\"faq-schema\" type=\"application/ld+json\" dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonObj, null, '  ') }} />\n    );\n};","import React from \"react\";\nimport { usePage } from \"@brz-utils/contexts/page.context\";\n\n\n\nexport const HowToSchema = () => {\n    const { page, template } = usePage();\n\n    if (page.seo.howTo?.disable || template.disable?.howToSchema || !page.seo.howTo?.steps?.length) return null;\n\n    const jsonObj = {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"HowTo\",\n        \"name\": page.seo.howTo.name,\n        \"description\": page.seo.howTo.description,\n        ...(page.seo.howTo.image?.src ? {\n            \"image\": {\n                \"@type\": \"ImageObject\",\n                \"url\": page.seo.howTo.image.src,\n                \"width\": page.seo.howTo.image.width,\n                \"height\": page.seo.howTo.image.height\n            }\n        } : {}),\n        \"step\": page.seo.howTo.steps.map((step) => {\n            return {\n                \"@type\": \"HowToStep\",\n                \"name\": step.name,\n                \"url\": step.url,\n                \"text\": step.text\n            }\n        })\n    };\n\n    return (\n        <script id=\"how-to-schema\" type=\"application/ld+json\" dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonObj, null, '  ') }} />\n    );\n};","import React from \"react\";\nimport { useSiteSettings } from \"@brz-utils/use.site.settings\";\nimport { usePage } from \"@brz-utils/contexts/page.context\";\n\n\n\nexport const OrgSchema = () => {\n    const site = useSiteSettings();\n    const { page, template } = usePage();\n\n    if (template.disable?.orgSchema || page.seo.org?.disable) return null;\n\n    const jsonObj = {\n        \"@context\": \"https://schema.org\",\n        \"@type\": \"Organization\",\n        \"name\": site.name,\n        \"legalName\": site.legalName,\n        \"areaServed\": \"United States\",\n        \"url\": site.baseUrl,\n        \"logo\": {\n            \"@type\": \"ImageObject\",\n            \"url\": site.logo.src,\n            \"width\": site.logo.width,\n            \"height\": site.logo.height\n        },\n        \"knowsAbout\": \"Insurance\",\n        \"foundingDate\": site.foundingDate,\n        ...(site.founders?.length ? {\n            \"founder\": site.founders?.map(person => {\n                return {\n                    \"@type\": \"Person\",\n                    \"name\": person.name,\n                    \"sameAs\": person.socialLink,\n                    \"jobTitle\": person.occupation,\n                    \"worksFor\": site.name\n                }\n            })\n        } : {}),\n        \"aggregateRating\": {\n            \"@type\": \"AggregateRating\",\n            \"ratingValue\": site.rating.value,\n            \"bestRating\": site.rating.outOf,\n            \"reviewCount\": site.rating.reviews\n        },\n        \"address\": {\n            \"@type\": \"PostalAddress\",\n            \"streetAddress\": site.businessAddress.street,\n            \"addressLocality\": site.businessAddress.city,\n            \"addressRegion\": site.businessAddress.state,\n            \"postalCode\": site.businessAddress.zip,\n            \"addressCountry\": \"USA\"\n        },\n        \"contactPoint\": {\n            \"@type\": \"ContactPoint\",\n            \"contactType\": \"Licensed Advisor\",\n            \"telephone\": `[1 ${site.phone}]`,\n            \"email\": site.email\n        },\n        \"sameAs\": site.socialLinks\n    };\n\n    return (\n        <script id=\"org-schema\" type=\"application/ld+json\" dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonObj, null, '  ') }} />\n    );\n};","import React from \"react\";\nimport { usePage } from \"@brz-utils/contexts/page.context\";\nimport { useSiteSettings } from \"@brz-utils/use.site.settings\";\n\n\n\nexport const BreadcrumbsSchema = () => {\n    const { page, template } = usePage();\n    const { baseUrl } = useSiteSettings();    \n\n    if (!page.sitemap?.breadcrumbs?.length) return null;\n\n    const jsonObj = {\n        \"@context\": \"http://schema.org\",\n        \"@type\": \"BreadcrumbList\",\n        \"itemListElement\": page.sitemap.breadcrumbs.map((item, index) => {\n            return {\n                \"@type\": \"ListItem\",\n                \"position\": index + 1,\n                \"item\": {\n                    \"@id\": createBreadcrumbURL(item.link, baseUrl),\n                    \"name\": item.label,\n                }\n            };\n        })\n    };\n\n    function createBreadcrumbURL(path: String, base:String): String {\n        /*             \n         * Remove the slash at the begining of the path if exists,\n         * than add it with base_url to make sure the complete URL is correct if the slash was omitted in the breadcrumb settings\n        */\n        const _path = path.replace(/^\\/+/, '');\n        //adding slash here ↴\n        return      `${base}/${_path}`;\n    }\n\n    return (\n        <script id=\"how-to-schema\" type=\"application/ld+json\" dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonObj, null, '  ') }} />\n    );\n};","import React from 'react';\n\nimport { usePage } from '@brz-utils/contexts/page.context';\nimport { FAQSchema } from './faq.schema';\nimport { HowToSchema } from './how-to.schema';\nimport { OrgSchema } from './org.schema';\nimport { BreadcrumbsSchema } from './breadcrumbs';\n\n\n\nexport const SEO = () => {\n    const { page, template } = usePage();\n\n    return <>\n        {/* No Index if excluded from sitemap */}\n        {page.sitemap?.exclude ? (\n            <meta name=\"robots\" content=\"noindex\" />\n        ) : null}\n\n        {/* Schemas */}\n        {page.seo?.org?.disable || template?.disable?.orgSchema ? null : <OrgSchema />}\n        {page.seo?.faq?.disable || template?.disable?.faqSchema ? null : <FAQSchema />}\n        {page.seo?.howTo?.disable || template?.disable?.howToSchema ? null : <HowToSchema />}\n        {page.sitemap?.breadcrumbs?.length ? <BreadcrumbsSchema /> : null}\n        \n        \n        \n    </>\n};\n\n","import React from 'react';\n\nimport { usePage } from '@brz-utils/contexts/page.context';\nimport { SEO } from '@brz-utils/seo/seo';\nimport { useSiteSettings } from '@brz-utils/use.site.settings';\nimport { TinaMarkdown } from 'tinacms/dist/rich-text';\nimport { toTinaMarkdown } from '@brz-utils/toTinaMarkdown';\nimport { RichCurrentYear } from '@brz-components/elements/rich.current.year';\n\nexport const Head = () => {\n    const { page } = usePage();\n    const site = useSiteSettings();\n\n    // const [className, setClassName] = React.useState('wf-inactive');\n\n    // React.useEffect(() => {\n    //     setInterval(() => {\n    //         setClassName((prev) => {\n    //             return prev ? '' : 'wf-inactive'\n    //         })\n    //     }, 1000);\n    // }, [])\n    \n    return <>\n        {/* <html className={className} /> */}\n\n        {page.seo?.title ? (\n            <title>\n                <TinaMarkdown \n                    content={toTinaMarkdown(page.seo.title)} \n                    components={{\n                        'CurrentYear': RichCurrentYear\n                    }}\n                />\n                {` | ${site.name}`}\n            </title>\n        ) : null}\n        \n        {page.seo?.description ? (\n            <meta name=\"description\" content={page.seo.description} />\n        ) : null}\n        <meta name=\"viewport\" content=\"initial-scale=1, width=device-width\" />\n\n        {/* Web Manifest */}\n        <link rel=\"manifest\" href=\"/.webmanifest\" crossOrigin=\"use-credentials\" />\n        {/* Favicon */}\n        <link rel=\"icon\" type=\"image/png\" href=\"/favicons/16x16.png\" />\n        {/* Sitemap */}\n        <link rel=\"sitemap\" type=\"application/xml\" title=\"Sitemap\" href=\"/sitemap-index.xml\" />\n\n        <SEO />\n    </>\n};"],"names":["useSiteSettings","site","useStaticQuery","siteSettingsQuery","toTinaMarkdown","value","parts","match","type","children","map","component","props","split","p","forEach","prop","propParts","exec","_","_prop","_value","name","text","tina","data","page","latest","nodes","posts","useTinaEditor","query","variables","React","BlogPageRender","pagination","current","pageContext","total","totalPages","totalPosts","limit","Head","PageContextProvider","pageSettings","node","settings","head","OpenGraphSchema","Content","_data$node$categories","_data$node$categories2","_props$pagination","_props$pagination2","_props$pagination3","_props$pagination4","usePage","isMobile","useBreakpoint","className","useClass","_computed","topHeight","TextLink","href","seo","url","heading","DropDownButton","label","DropDownProps","align","ButtonProps","size","variant","color","categories","category","index","ref","MenuItem","key","Button","Uppercase","_node$tina","_node$tina$data","post","TinaMarkdown","content","filterTinaMarkdownContentParagraphs","headingRich","components","CurrentYear","RichCurrentYear","author","ButtonBase","avatar","Img","src","width","height","gravity","Date","updatedDate","toLocaleString","dateFormat","readtime","xmlns","viewBox","transform","fill","stroke","strokeWidth","cx","cy","r","d","strokeLinecap","Math","round","minutes","dangerouslySetInnerHTML","__html","newLinesToBreaks","excerptText","cover","thumbnail","loading","style","objectFit","popular","PostPreview","ImageProps","Pagination","count","siblingCount","renderItem","item","base","replace","to","PaginationItem","Object","assign","PageContentRenderer","template","title","renderToStaticMarkup","metas","property","description","env","DEPLOYED_HOST","_props$author$name$sp","_props$author$name$sp2","push","twitterAuthor","image","getAlt","fbAppId","pageType","publishedDate","meta","FAQSchema","_page$seo$faq","_template$disable","_page$seo$faq2","_page$seo$faq2$items","faq","disable","faqSchema","items","length","jsonObj","q","a","id","JSON","stringify","HowToSchema","_page$seo$howTo","_page$seo$howTo2","_page$seo$howTo2$step","_page$seo$howTo$image","howTo","howToSchema","steps","step","OrgSchema","_page$seo$org","_site$founders","_site$founders2","orgSchema","org","legalName","baseUrl","logo","foundingDate","founders","person","socialLink","occupation","rating","outOf","reviews","businessAddress","street","city","state","zip","phone","email","socialLinks","BreadcrumbsSchema","_page$sitemap","_page$sitemap$breadcr","sitemap","breadcrumbs","createBreadcrumbURL","link","path","SEO","_page$seo","_page$seo2","_page$seo2$faq","_template$disable2","_page$seo3","_page$seo3$howTo","_template$disable3","_page$sitemap2","_page$sitemap2$breadc","exclude","rel","crossOrigin"],"sourceRoot":""}