organize src directory, lighthouse fixes

This commit is contained in:
kitajchuk
2022-05-10 10:47:55 -07:00
parent 9e7ed47545
commit 766f8f42d4
38 changed files with 129 additions and 89 deletions

View File

@@ -1,6 +1,6 @@
import Layout from '../components/layout';
import { Hero } from '../components/jambonz-ui';
import { getData } from '../lib/data';
import Layout from '../src/components/layout';
import { Hero } from '../src/components/jambonz-ui';
import { getData } from '../src/lib/data';
export default function Page404({ data }) {
return (

View File

@@ -1,4 +1,4 @@
import '../styles/global.scss';
import '../src/styles/global.scss';
export default function App({Component, pageProps}) {
return <Component {...pageProps} />;

13
pages/_document.js Normal file
View File

@@ -0,0 +1,13 @@
import { Html, Head, Main, NextScript } from 'next/document';
export default function Document() {
return (
<Html lang="en">
<Head />
<body>
<Main />
<NextScript />
</body>
</Html>
);
}

View File

@@ -2,9 +2,9 @@ import { useEffect } from 'react';
import Prism from 'prismjs';
import Layout from '../../components/layout';
import Markdown from '../../components/markdown';
import { getData, getMarkdown, getMarkdownPaths } from '../../lib/data';
import Layout from '../../src/components/layout';
import Markdown from '../../src/components/markdown';
import { getData, getMarkdown, getMarkdownPaths } from '../../src/lib/data';
export default function Docs({ data, docs }) {
useEffect(() => {

View File

@@ -2,15 +2,15 @@ import { nanoid } from 'nanoid';
import classNames from 'classnames';
import { useState, useEffect, useRef } from 'react';
import Layout from '../components/layout';
import { Latest, Hero, Icon, Button, H6, H5, H2, P, MS, normalizeSubtext, normalizeSlug, useMobileMedia } from '../components/jambonz-ui';
import { getData } from '../lib/data';
import Layout from '../src/components/layout';
import { Latest, Hero, Icon, Button, H6, H4, H3, H2, P, MS, normalizeSubtext, normalizeSlug, useMobileMedia } from '../src/components/jambonz-ui';
import { getData } from '../src/lib/data';
function Tech({data}) {
return (
<section className="tech wrap">
<div className="tech__image">
<img src={data.image} />
<img src={data.image.src} width={data.image.width} height={data.image.height} alt={data.image.alt} />
</div>
<ul className="tech__notes">
{data.notes.map((note) => {
@@ -61,10 +61,10 @@ function Dilemma({data}) {
<H2>{data.headline}</H2>
</div>
<div className="dilemma__subtext">
<H5>
<H3 className="h5">
{/* Use dangerouslySetInnerHTML to render inline spans from YAML data */}
{normalizeSubtext(data.subtext).map((subtext) => <div key={nanoid()} dangerouslySetInnerHTML={{ __html: subtext }} />)}
</H5>
</H3>
</div>
<div className="dilemma__tables">
{data.tables.map((table) => {
@@ -83,7 +83,7 @@ function Dilemma({data}) {
return (
<div key={slug} className={classNames(tableClasses)}>
<div className="dilemma__table__title" onClick={() => handleToggle(slug)}>
{table.logo ? <img src={table.logo} /> : <P><strong>{table.title}</strong></P>}
{table.logo ? <img src={table.logo} width="128" height="42" alt="jambonz" /> : <P><strong>{table.title}</strong></P>}
<span className="dilemma__table__toggle" >
{isActiveToggle ? <Icon name="ChevronUp" /> : <Icon name="ChevronDown" />}
</span>
@@ -124,7 +124,7 @@ function BYO({data}) {
<H2>{data.headline}</H2>
</div>
<div className="byo__subtext">
<H5>{data.subtext}</H5>
<H3 className="h5">{data.subtext}</H3>
</div>
<div className="byo__icons icons">
{data.icons.map((icon) => {
@@ -132,10 +132,10 @@ function BYO({data}) {
})}
</div>
<div className="byo__comment">
<H5>
<H4 className="h5">
{/* Use dangerouslySetInnerHTML to render inline link from YAML data */}
<div dangerouslySetInnerHTML={{ __html: data.comment }} />
</H5>
</H4>
</div>
<div className="byo__cta">
<Button href={data.url} subStyle="dark" target="_blank">{data.cta}</Button>

View File

@@ -1,8 +1,8 @@
import Link from 'next/link';
import Layout from '../components/layout';
import { P, M, MS, MXS, H1, H2, H3, H4, H5, H6, Button, Icon } from '../components/jambonz-ui';
import { getData } from '../lib/data';
import Layout from '../src/components/layout';
import { P, M, MS, MXS, H1, H2, H3, H4, H5, H6, Button, Icon } from '../src/components/jambonz-ui';
import { getData } from '../src/lib/data';
export default function JambonzUI({ data }) {
const pageData = data['jambonz-ui'];

View File

@@ -2,9 +2,9 @@ import { useEffect } from 'react';
import Prism from 'prismjs';
import Layout from '../../components/layout';
import Markdown from '../../components/markdown';
import { getData, getMarkdown, getMarkdownPaths } from '../../lib/data';
import Layout from '../../src/components/layout';
import Markdown from '../../src/components/markdown';
import { getData, getMarkdown, getMarkdownPaths } from '../../src/lib/data';
export default function OpenSource({ data, docs }) {
useEffect(() => {

View File

@@ -1,8 +1,8 @@
import { nanoid } from 'nanoid';
import Layout from '../components/layout';
import { Hero, Icon, Button, H2, H6, P, normalizeSubtext } from '../components/jambonz-ui';
import { getData } from '../lib/data';
import Layout from '../src/components/layout';
import { Hero, Icon, Button, H2, P, normalizeSubtext } from '../src/components/jambonz-ui';
import { getData } from '../src/lib/data';
function Structure({data}) {
return (
@@ -10,7 +10,7 @@ function Structure({data}) {
<div className="wrap structure__text">
<>
{normalizeSubtext(data.text).map((text) => {
return <H6 key={nanoid()}>{text}</H6>;
return <P className="h6" key={nanoid()}>{text}</P>;
})}
</>
</div>

View File

@@ -1,15 +1,17 @@
import Layout from '../components/layout';
import { Hero, TextLayout } from '../components/jambonz-ui';
import { getData, getParsedMarkdown } from '../lib/data';
import Layout from '../src/components/layout';
import { Hero, TextLayout, normalizeTextLayout } from '../src/components/jambonz-ui';
import { getData, getParsedMarkdown } from '../src/lib/data';
import path from 'path';
export default function Privacy({ data, parsed }) {
parsed.contentHtml = normalizeTextLayout(parsed.contentHtml);
return (
<Layout siteData={data.site}>
<Hero data={data.privacy.hero} subStyle="privacy" />
<div className="wrap pad-b">
<TextLayout data={parsed} />
</div>
<section className="wrap pad-b">
<TextLayout data={parsed} name="privacy" />
</section>
</Layout>
);
}

View File

@@ -1,15 +1,17 @@
import Layout from '../components/layout';
import { Hero, TextLayout } from '../components/jambonz-ui';
import { getData, getParsedMarkdown } from '../lib/data';
import Layout from '../src/components/layout';
import { Hero, TextLayout, normalizeTextLayout } from '../src/components/jambonz-ui';
import { getData, getParsedMarkdown } from '../src/lib/data';
import path from 'path';
export default function Terms({ data, parsed }) {
parsed.contentHtml = normalizeTextLayout(parsed.contentHtml);
return (
<Layout siteData={data.site}>
<Hero data={data.terms.hero} subStyle="terms" />
<div className="wrap pad-b">
<TextLayout data={parsed} />
</div>
<section className="wrap pad-b">
<TextLayout data={parsed} name="terms" />
</section>
</Layout>
);
}

View File

@@ -1,8 +1,8 @@
import { nanoid } from 'nanoid';
import Layout from '../components/layout';
import { Hero, Icon, Button, H5, H2, P } from '../components/jambonz-ui';
import { getData } from '../lib/data';
import Layout from '../src/components/layout';
import { Hero, Icon, Button, H3, H2, P } from '../src/components/jambonz-ui';
import { getData } from '../src/lib/data';
function Facts({data}) {
return (
@@ -14,7 +14,7 @@ function Facts({data}) {
<div key={nanoid()} className="facts__item">
<Icon name={fact.icon} mainStyle="fill" />
<div className="facts__text">
<H5><strong>{fact.title}</strong></H5>
<P className="h5"><strong>{fact.title}</strong></P>
<P>{fact.text}</P>
</div>
</div>
@@ -36,7 +36,7 @@ function OS({data}) {
</H2>
</div>
<div className="os__subtext">
<H5>{data.subtext}</H5>
<H3 className="h5">{data.subtext}</H3>
</div>
<div className="btns os__btns">
{data.buttons.map((button) => {
@@ -49,7 +49,7 @@ function OS({data}) {
})}
</div>
<div className="os__logo">
<img src={data.logo} />
<img src={data.logo} width="313" height="71" alt="drachtio" />
<Button href="https://github.com/sponsors/drachtio/" target="_blank" mainStyle="pill" subStyle="jambonz">
<Icon name="Heart" />
<span>Sponsor</span>