Fix dotenv

This commit is contained in:
Sacha Weatherstone 2021-12-23 17:22:01 +11:00
parent 116dac7f81
commit 85fe6e50eb
7 changed files with 30 additions and 32 deletions

View file

@ -1,5 +1,7 @@
// @ts-check // @ts-check
require("dotenv").config();
/** @type {import('@docusaurus/types').Config} */ /** @type {import('@docusaurus/types').Config} */
const config = { const config = {
title: "Meshtastic", title: "Meshtastic",
@ -128,7 +130,10 @@ const config = {
}, },
], ],
], ],
plugins: ["@docusaurus/plugin-ideal-image", "docusaurus-plugin-dotenv"], plugins: ["@docusaurus/plugin-ideal-image"],
customFields: {
API_URL: process.env.API_URL,
},
}; };
module.exports = config; module.exports = config;

View file

@ -16,7 +16,7 @@
"@docusaurus/plugin-ideal-image": "^2.0.0-beta.14", "@docusaurus/plugin-ideal-image": "^2.0.0-beta.14",
"@docusaurus/preset-classic": "^2.0.0-beta.14", "@docusaurus/preset-classic": "^2.0.0-beta.14",
"@mdx-js/react": "^1.6.22", "@mdx-js/react": "^1.6.22",
"docusaurus-plugin-dotenv": "^1.0.1", "dotenv": "^10.0.0",
"esp-web-flasher": "^4.0.0", "esp-web-flasher": "^4.0.0",
"react": "^17.0.2", "react": "^17.0.2",
"react-dom": "^17.0.2", "react-dom": "^17.0.2",

View file

@ -25,7 +25,7 @@ export const Card = React.memo(({ network }: CardProps) => (
className="button button--primary button--block" className="button button--primary button--block"
style={{ marginBottom: "0.5rem" }} style={{ marginBottom: "0.5rem" }}
> >
Get Started Read more
</a> </a>
<CardTags tags={network.tags} /> <CardTags tags={network.tags} />
</div> </div>

View file

@ -3,6 +3,7 @@ import React from 'react';
import { FiHeart } from 'react-icons/fi'; import { FiHeart } from 'react-icons/fi';
import useSWR from 'swr'; import useSWR from 'swr';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import { fetcher } from '@site/src/utils/swr'; import { fetcher } from '@site/src/utils/swr';
import { ShowcaseTag } from '../../../utils/apiTypes'; import { ShowcaseTag } from '../../../utils/apiTypes';
@ -10,10 +11,13 @@ import { ShowcaseTag } from '../../../utils/apiTypes';
import { TagSelect } from './TagSelect'; import { TagSelect } from './TagSelect';
export const Filters = (): JSX.Element => { export const Filters = (): JSX.Element => {
const { siteConfig } = useDocusaurusContext();
const { data, error } = useSWR<ShowcaseTag[]>( const { data, error } = useSWR<ShowcaseTag[]>(
`${process.env.API_URL}/showcase/tags`, `${siteConfig.customFields.API_URL}/showcase/tags`,
fetcher fetcher
); );
return ( return (
<section className="container margin-top--l margin-bottom--lg"> <section className="container margin-top--l margin-bottom--lg">
{data && !error ? ( {data && !error ? (

View file

@ -2,6 +2,7 @@ import React from 'react';
import useSWR from 'swr'; import useSWR from 'swr';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import { Showcase } from '@site/src/utils/apiTypes'; import { Showcase } from '@site/src/utils/apiTypes';
import { User } from '@site/src/utils/github'; import { User } from '@site/src/utils/github';
import { fetcher } from '@site/src/utils/swr'; import { fetcher } from '@site/src/utils/swr';
@ -11,8 +12,10 @@ interface NetworkProps {
} }
export const Network = ({ id }: NetworkProps): JSX.Element => { export const Network = ({ id }: NetworkProps): JSX.Element => {
const { siteConfig } = useDocusaurusContext();
const { data, error } = useSWR<Showcase>( const { data, error } = useSWR<Showcase>(
`http://localhost:4000/showcase/${id}`, `${siteConfig.customFields.API_URL}/showcase/${id}`,
fetcher fetcher
); );

View file

@ -1,8 +1,10 @@
import React from 'react'; import React from 'react';
import { FiHeart, FiSearch } from 'react-icons/fi'; import { FiHeart, FiSearch } from 'react-icons/fi';
import JSONPretty from 'react-json-pretty';
import useSWR from 'swr'; import useSWR from 'swr';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import { useSelectedTags } from '@site/src/hooks/useSelectedTags'; import { useSelectedTags } from '@site/src/hooks/useSelectedTags';
import { useFilteredNetworks } from '../../../hooks/useFilteredNetworks'; import { useFilteredNetworks } from '../../../hooks/useFilteredNetworks';
@ -11,10 +13,13 @@ import { fetcher } from '../../../utils/swr';
import { NetworkSection } from './NetworkSection'; import { NetworkSection } from './NetworkSection';
export const Networks = (): JSX.Element => { export const Networks = (): JSX.Element => {
const { siteConfig } = useDocusaurusContext();
const { data, error } = useSWR<Showcase[]>( const { data, error } = useSWR<Showcase[]>(
"http://localhost:4000/showcase", `${siteConfig.customFields.API_URL}/showcase`,
fetcher fetcher
); );
const selectedTags = useSelectedTags(); const selectedTags = useSelectedTags();
const filteredNetworks = useFilteredNetworks(data ?? []); const filteredNetworks = useFilteredNetworks(data ?? []);
@ -41,7 +46,9 @@ export const Networks = (): JSX.Element => {
/> />
) )
) : error ? ( ) : error ? (
<div>{error}</div> <div>
<JSONPretty data={error} />
</div>
) : ( ) : (
<div>Loading...</div> <div>Loading...</div>
)} )}

View file

@ -4073,13 +4073,6 @@ dns-txt@^2.0.2:
dependencies: dependencies:
buffer-indexof "^1.0.0" buffer-indexof "^1.0.0"
docusaurus-plugin-dotenv@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/docusaurus-plugin-dotenv/-/docusaurus-plugin-dotenv-1.0.1.tgz#e0aff6f006fd438d1e981ae2afd7b7a6bd2aa76f"
integrity sha512-qKlWuBd6UoyB0d5ExH9waYGPoy1SnWgV8s8VLg12ydcfxquazXJngV0N5VAX/HuFiZmsPD3L4TYUKxdHWJTeEw==
dependencies:
dotenv-webpack "7.0.2"
dom-converter@^0.2.0: dom-converter@^0.2.0:
version "0.2.0" version "0.2.0"
resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768" resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.2.0.tgz#6721a9daee2e293682955b6afe416771627bb768"
@ -4181,24 +4174,10 @@ dot-prop@^5.2.0:
dependencies: dependencies:
is-obj "^2.0.0" is-obj "^2.0.0"
dotenv-defaults@^2.0.1: dotenv@^10.0.0:
version "2.0.2" version "10.0.0"
resolved "https://registry.yarnpkg.com/dotenv-defaults/-/dotenv-defaults-2.0.2.tgz#6b3ec2e4319aafb70940abda72d3856770ee77ac" resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-10.0.0.tgz#3d4227b8fb95f81096cdd2b66653fb2c7085ba81"
integrity sha512-iOIzovWfsUHU91L5i8bJce3NYK5JXeAwH50Jh6+ARUdLiiGlYWfGw6UkzsYqaXZH/hjE/eCd/PlfM/qqyK0AMg== integrity sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==
dependencies:
dotenv "^8.2.0"
dotenv-webpack@7.0.2:
version "7.0.2"
resolved "https://registry.yarnpkg.com/dotenv-webpack/-/dotenv-webpack-7.0.2.tgz#1bf2e407e92c10fbb08d815b12c991028f10f81c"
integrity sha512-RY+/5uM/XY4bGtih9f9ic8hlrUDxVcZZBPWlnX/aHhaKxcVVX9SH/5VH7CSmvVo9GL6PKvQOA0X1bc552rnatQ==
dependencies:
dotenv-defaults "^2.0.1"
dotenv@^8.2.0:
version "8.6.0"
resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz#061af664d19f7f4d8fc6e4ff9b584ce237adcb8b"
integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==
duplexer3@^0.1.4: duplexer3@^0.1.4:
version "0.1.4" version "0.1.4"