Add scambox

This commit is contained in:
Kevin Kandlbinder 2021-11-05 22:29:08 +00:00 committed by GitHub
parent 31fd2e5755
commit 5c17277817
16 changed files with 611 additions and 97 deletions

View file

@ -1 +0,0 @@
[{"/home/kevin/Projects/KevinK.dev.js/gatsby-config.js":"1","/home/kevin/Projects/KevinK.dev.js/src/components/navigation.js":"2","/home/kevin/Projects/KevinK.dev.js/src/components/offscreenNav.js":"3"},{"size":4343,"mtime":1634572076315,"results":"4","hashOfConfig":"5"},{"size":3988,"mtime":1634571747282,"results":"6","hashOfConfig":"5"},{"size":1834,"mtime":1634572087578,"results":"7","hashOfConfig":"5"},{"filePath":"8","messages":"9","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"zi1o5b",{"filePath":"10","messages":"11","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"12","messages":"13","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"/home/kevin/Projects/KevinK.dev.js/gatsby-config.js",[],"/home/kevin/Projects/KevinK.dev.js/src/components/navigation.js",[],"/home/kevin/Projects/KevinK.dev.js/src/components/offscreenNav.js",[]]

View file

@ -0,0 +1,14 @@
---
title: Harry Potter and the Toaster-Investment
url: harry-potter-and-the-toaster
platform: telegram
tags: [crypto]
published: 2021-11-05
---
I've recently been contacted by Hermine on Telegram with a big business opportunity,
which was great because I, everyones favourite wizard-boy, need a new toaster!
But how about you read it yourself?
<Chat src="https://cdn.kevink.dev/chats/scams/01_hermine/index.html" type="telegram" />

View file

@ -66,6 +66,13 @@ module.exports = {
name: `projectTextblocks`,
},
},
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/content/scambox`,
name: `scamboxContent`,
},
},
"gatsby-plugin-mdx",
{
resolve: `gatsby-source-filesystem`,

View file

@ -6,6 +6,7 @@ exports.createPages = async ({ actions, graphql, reporter }) => {
const { createPage } = actions;
const projectTemplate = path.resolve(`src/templates/project.js`);
const scamboxTemplate = path.resolve(`src/templates/scamboxPost.js`);
const result = await graphql(`
query AllPagesQuery {
@ -15,6 +16,23 @@ exports.createPages = async ({ actions, graphql, reporter }) => {
urlname
}
}
scambox: allFile(
filter: { sourceInstanceName: { eq: "scamboxContent" } }
) {
nodes {
childMdx {
id
body
frontmatter {
platform
tags
title
url
}
}
}
}
}
`);
@ -40,6 +58,26 @@ exports.createPages = async ({ actions, graphql, reporter }) => {
},
});
});
result.data.scambox.nodes.forEach((node) => {
if (!node.childMdx) return;
// eslint-disable-next-line no-undef
console.log(
"Creating Page: ",
`/*/scambox/${node.childMdx.frontmatter.url}`
);
//["en", "de"].forEach((lang) => {
createPage({
path: `/scambox/${node.childMdx.frontmatter.url}`,
component: scamboxTemplate,
context: {
mdxId: node.childMdx.id,
},
});
//})
});
};
const config = require("./config.js");

View file

@ -1,45 +1,52 @@
{
"siteDescription": "Hallo, ich bin Kevin Kandlbinder, ein Entwickler und Hobby-Fotograf aus Norddeutschland.",
"imprint": "Impressum",
"datasec": "Datenschutz",
"disclaimer": "Disclaimer",
"projects": "Projekte",
"project": "Projekt",
"social": "Soziales",
"homeHello": "Hallo, ich bin",
"homeMe": "Ich bin",
"homeWebDeveloper": "Web Developer",
"homeMyLocation": "Quickborn, Schleswig-Holstein, Deutschland",
"donationCatchphrase": "Gefällt dir was du siehst? Spende doch etwas.",
"homeImageCredit": "Portrait aufgenommen von Jannik Kiel",
"de": "Deutsch",
"en": "Englisch",
"projectAboutHeader": "Über {{projectName}}",
"projectViewGitHub": "Auf GitHub anschauen",
"projectViewWebsite": "Projekt-Website anschauen",
"projectsDescription": "Das ist woran ich grade arbeite oder woran ich gearbeitet habe.",
"projectView": "Anschauen",
"socialDescriptionWithLink": "Finde mich auf anderen Plattformen oder <1>besuche meine Freunde</1>!",
"socialDescription": "Finde mich auf anderen Plattformen!",
"friends": "Freunde",
"friendsDescription": "In dieser Liste stehen Freunde von mir und meiner Seite. Schau doch bei ihnen mal rein, wenn du mehr interessante Projekte sehen willst.",
"donateThanksText": "Ich finde es schön, dass du meine Arbeit schön findest und das zeigst! Sende mir gerne eine E-Mail an <1>{{contactEmail}}</1> wenn du mit mir über irgendwas reden möchtest!",
"donateThanks": "Danke für die Spende!",
"donateDescription": "Hey! Es sieht so aus als würdest du über eine Spende nachdenken. Das ist nett! Wenn du ein bestimmtes Projekt unterstützen willst, schreibe deine Wünsche gerne in den Spendenkommentar.",
"donate": "Spenden",
"featuredProjects": "Vorgestellte Projekte",
"seeMore": "Mehr Projekte erkunden",
"donateGitHub": "Du kannst mich mit dem folgenden Button ganz einfach über GitHub Sponsors unterstützen!",
"donatePayPal": "Wenn du mich lieber über PayPal unterstützen willst ist hier der Button für dich:",
"sponsorGitHub": "Über GitHub unterstützen",
"mySkills": "Meine Fähigkeiten",
"about": "Über",
"explore": "Erkunde",
"myProjects": "meine Projekte",
"discover": "Entdecke",
"mySocials": "meine Accounts",
"learn": "Erfahre",
"moreAboutMe": "mehr über mich",
"home": "Home",
"menu": "Menü"
"siteDescription": "Hallo, ich bin Kevin Kandlbinder, ein Entwickler und Hobby-Fotograf aus Norddeutschland.",
"imprint": "Impressum",
"datasec": "Datenschutz",
"disclaimer": "Disclaimer",
"projects": "Projekte",
"project": "Projekt",
"social": "Soziales",
"homeHello": "Hallo, ich bin",
"homeMe": "Ich bin",
"homeWebDeveloper": "Web Developer",
"homeMyLocation": "Quickborn, Schleswig-Holstein, Deutschland",
"donationCatchphrase": "Gefällt dir was du siehst? Spende doch etwas.",
"homeImageCredit": "Portrait aufgenommen von Jannik Kiel",
"de": "Deutsch",
"en": "Englisch",
"projectAboutHeader": "Über {{projectName}}",
"projectViewGitHub": "Auf GitHub anschauen",
"projectViewWebsite": "Projekt-Website anschauen",
"projectsDescription": "Das ist woran ich grade arbeite oder woran ich gearbeitet habe.",
"projectView": "Anschauen",
"socialDescriptionWithLink": "Finde mich auf anderen Plattformen oder <1>besuche meine Freunde</1>!",
"socialDescription": "Finde mich auf anderen Plattformen!",
"friends": "Freunde",
"friendsDescription": "In dieser Liste stehen Freunde von mir und meiner Seite. Schau doch bei ihnen mal rein, wenn du mehr interessante Projekte sehen willst.",
"donateThanksText": "Ich finde es schön, dass du meine Arbeit schön findest und das zeigst! Sende mir gerne eine E-Mail an <1>{{contactEmail}}</1> wenn du mit mir über irgendwas reden möchtest!",
"donateThanks": "Danke für die Spende!",
"donateDescription": "Hey! Es sieht so aus als würdest du über eine Spende nachdenken. Das ist nett! Wenn du ein bestimmtes Projekt unterstützen willst, schreibe deine Wünsche gerne in den Spendenkommentar.",
"donate": "Spenden",
"featuredProjects": "Vorgestellte Projekte",
"seeMore": "Mehr Projekte erkunden",
"donateGitHub": "Du kannst mich mit dem folgenden Button ganz einfach über GitHub Sponsors unterstützen!",
"donatePayPal": "Wenn du mich lieber über PayPal unterstützen willst ist hier der Button für dich:",
"sponsorGitHub": "Über GitHub unterstützen",
"mySkills": "Meine Fähigkeiten",
"about": "Über",
"explore": "Erkunde",
"myProjects": "meine Projekte",
"discover": "Entdecke",
"mySocials": "meine Accounts",
"learn": "Erfahre",
"moreAboutMe": "mehr über mich",
"home": "Home",
"menu": "Menü",
"scambox": "Scambox",
"scamboxNotice": "Hinweis",
"scamboxLanguage": "Scambox ist nicht auf Deutsch verfügbar und wird auf Englisch angezeigt.",
"scamboxDescription": "Tauche mit mir ein in die Welt der Scams, die ich tagtäglich so bekomme, und lach ein bisschen mit mir!",
"scamboxReadFull": "Ganzen Post lesen »",
"scamboxPosted": "Gepostet am {{date}}",
"moreSoon": "Bald an dieser Stelle mehr"
}

View file

@ -1,45 +1,52 @@
{
"siteDescription": "Hello, I am Kevin Kandlbinder, a developer and hobby photographer from northern Germany.",
"imprint": "Imprint",
"datasec": "Data Protection",
"disclaimer": "Disclaimer",
"projects": "Projects",
"project": "Project",
"social": "Social",
"homeHello": "Hello, I am",
"homeMe": "I am",
"homeWebDeveloper": "a web developer",
"homeMyLocation": "Quickborn, Schleswig-Holstein, Germany",
"donationCatchphrase": "Like what you're seeing? Consider donating.",
"homeImageCredit": "Portrait taken by Jannik Kiel",
"de": "German",
"en": "English",
"projectAboutHeader": "About {{projectName}}",
"projectViewGitHub": "View on GitHub",
"projectViewWebsite": "View Project-Website",
"projectsDescription": "This is what I am working on or have worked on.",
"projectView": "View",
"socialDescriptionWithLink": "Find me on other platforms or <1>visit my friends</1>!",
"socialDescription": "Find me on other platforms!",
"friends": "Friends",
"friendsDescription": "In this list you can find friends of mine and this site. Feel free to check them out for more interesting projects.",
"donate": "Donate",
"donateDescription": "Hey! It looks like you're thinking about donating to me. That's nice of you! If you want your donation to go towards a specific project, feel free to write your wishes into the donation comment.",
"donateThanks": "Thanks for donating!",
"donateThanksText": "I really appreciate you appreciating my work and showing it! Feel free to mail me at <1>{{contactEmail}}</1> if you have anything you want to talk about!",
"featuredProjects": "Featured Projects",
"seeMore": "Explore more Projects",
"donateGitHub": "You can very easily support me via GitHub Sponsors using the following button!",
"donatePayPal": "If you'd rather support me via PayPal the following button is for you:",
"sponsorGitHub": "Sponsor using GitHub",
"mySkills": "My Skills",
"about": "About",
"explore": "Explore",
"myProjects": "my projects",
"discover": "Discover",
"mySocials": "my socials",
"learn": "Learn",
"moreAboutMe": "more about me",
"home": "Home",
"menu": "Menu"
"siteDescription": "Hello, I am Kevin Kandlbinder, a developer and hobby photographer from northern Germany.",
"imprint": "Imprint",
"datasec": "Data Protection",
"disclaimer": "Disclaimer",
"projects": "Projects",
"project": "Project",
"social": "Social",
"homeHello": "Hello, I am",
"homeMe": "I am",
"homeWebDeveloper": "a web developer",
"homeMyLocation": "Quickborn, Schleswig-Holstein, Germany",
"donationCatchphrase": "Like what you're seeing? Consider donating.",
"homeImageCredit": "Portrait taken by Jannik Kiel",
"de": "German",
"en": "English",
"projectAboutHeader": "About {{projectName}}",
"projectViewGitHub": "View on GitHub",
"projectViewWebsite": "View Project-Website",
"projectsDescription": "This is what I am working on or have worked on.",
"projectView": "View",
"socialDescriptionWithLink": "Find me on other platforms or <1>visit my friends</1>!",
"socialDescription": "Find me on other platforms!",
"friends": "Friends",
"friendsDescription": "In this list you can find friends of mine and this site. Feel free to check them out for more interesting projects.",
"donate": "Donate",
"donateDescription": "Hey! It looks like you're thinking about donating to me. That's nice of you! If you want your donation to go towards a specific project, feel free to write your wishes into the donation comment.",
"donateThanks": "Thanks for donating!",
"donateThanksText": "I really appreciate you appreciating my work and showing it! Feel free to mail me at <1>{{contactEmail}}</1> if you have anything you want to talk about!",
"featuredProjects": "Featured Projects",
"seeMore": "Explore more Projects",
"donateGitHub": "You can very easily support me via GitHub Sponsors using the following button!",
"donatePayPal": "If you'd rather support me via PayPal the following button is for you:",
"sponsorGitHub": "Sponsor using GitHub",
"mySkills": "My Skills",
"about": "About",
"explore": "Explore",
"myProjects": "my projects",
"discover": "Discover",
"mySocials": "my socials",
"learn": "Learn",
"moreAboutMe": "more about me",
"home": "Home",
"menu": "Menu",
"scambox": "Scambox",
"scamboxNotice": "Notice",
"scamboxLanguage": "Scambox is only available in English.",
"scamboxDescription": "Take a dive with me into all of the scams I get on the daily, and maybe laugh at them a little!",
"scamboxReadFull": "Read full post »",
"scamboxPosted": "Posted on {{date}}",
"moreSoon": "More to come"
}

View file

@ -21,6 +21,7 @@
"@babel/cli": "7.16.0",
"@babel/plugin-transform-typescript": "7.16.1",
"@fontsource/fira-code": "4.5.1",
"@icons-pack/react-simple-icons": "^4.6.1",
"@mdx-js/mdx": "1.6.22",
"@mdx-js/react": "1.6.22",
"animejs": "3.2.1",
@ -54,7 +55,8 @@
"react-helmet": "6.1.0",
"react-i18next": "11.13.0",
"sass": "1.43.4",
"tsparticles": "1.37.2"
"tsparticles": "1.37.2",
"utterances-react": "^0.1.3"
},
"devDependencies": {
"babel-eslint": "10.1.0",

View file

@ -7,4 +7,6 @@ $textColor: white;
$lightTextColor: black;
$layoutPadding: 20px;
$noticeColor: rgba(#e52b3e, .15);
$mainFont: "Fira Code", monospace;

View file

@ -104,6 +104,13 @@ const Navigation = ({ isHome }) => {
>
<Trans>social</Trans>
</Link>
<Link
id="navBtnScambox"
to="/scambox"
activeClassName={styles.active}
>
<Trans>scambox</Trans>
</Link>
<div className={styles.hamburger}>
<Hamburger
toggle={setOffscreenNavActive}

View file

@ -115,7 +115,7 @@
height: 43px;
margin-top: -3px;
@media (max-width: 500px) {
@media (max-width: 600px) {
display: block;
}
}
@ -141,7 +141,7 @@
}
}
@media (max-width: 500px) {
@media (max-width: 600px) {
&:not(.logo) {
display: none;
}

View file

@ -27,26 +27,33 @@ const OffScreenNav = ({ active, close }) => {
<Trans>home</Trans>
</Link>
<Link
id="navBtnProjects"
id="osnavBtnProjects"
to="/about"
activeClassName={styles.active}
>
<Trans>about</Trans>
</Link>
<Link
id="navBtnProjects"
id="osnavBtnProjects"
to="/projects"
activeClassName={styles.active}
>
<Trans>projects</Trans>
</Link>
<Link
id="navBtnSocial"
id="osnavBtnSocial"
to="/social"
activeClassName={styles.active}
>
<Trans>social</Trans>
</Link>
<Link
id="osnavBtnScambox"
to="/scambox"
activeClassName={styles.active}
>
<Trans>scambox</Trans>
</Link>
</div>
</div>,
document.getElementById("osnav")

87
src/pages/scambox.js Normal file
View file

@ -0,0 +1,87 @@
/* eslint-disable react/prop-types */
import { graphql } from "gatsby";
import { Link } from "gatsby-plugin-react-i18next";
import React from "react";
import { useTranslation } from "react-i18next";
import Layout from "../layouts/default";
import * as styles from "./scambox.module.scss";
const ScamBox = ({ data }) => {
const { t } = useTranslation();
return (
<Layout title={t("scambox")} description={t("scamboxDescription")}>
<section>
<article>
<h1>{t("scambox")}</h1>
<p>{t("scamboxDescription")}</p>
<div className={styles.list}>
{data.scambox.nodes.map((post) => {
return (
<Link
to={`/scambox/${post.childMdx.frontmatter.url}`}
key={post.childMdx.slug}
className={styles.post}
>
<span className={styles.title}>
{post.childMdx.frontmatter.title}
</span>
<span className={styles.meta}>
{t("scamboxPosted", {
date: post.childMdx.frontmatter
.published,
})}
</span>
<span className={styles.excerpt}>
{post.childMdx.excerpt}{" "}
<span>{t("scamboxReadFull")}</span>
</span>
</Link>
);
})}
</div>
<span className={styles.moreSoon}>{t("moreSoon")}</span>
</article>
</section>
</Layout>
);
};
export const query = graphql`
query ($language: String!) {
scambox: allFile(
filter: { sourceInstanceName: { eq: "scamboxContent" } }
sort: { fields: childMdx___frontmatter___published, order: DESC }
) {
nodes {
childMdx {
frontmatter {
platform
tags
title
url
published(formatString: "DD.MM.YYYY")
}
excerpt
}
}
}
locales: allLocale(filter: { language: { eq: $language } }) {
edges {
node {
ns
data
language
}
}
}
}
`;
export default ScamBox;

View file

@ -0,0 +1,45 @@
@import "../variables";
@import "../mixins";
.list {
display: flex;
flex-direction: column;
margin-top: $layoutPadding;
.post {
text-decoration: none;
display: flex;
flex-direction: column;
color: inherit;
padding: $layoutPadding;
border-bottom: thin dotted grey;
.title {
color: $accentColor;
font-size: 1.5em;
text-decoration: underline dotted currentColor;
}
.meta {
margin-bottom: 10px;
opacity: .5;
}
.excerpt {
margin-left: 10px;
> span {
color: $accentColor;
text-decoration: underline dotted currentColor;
}
}
}
}
.moreSoon {
display: block;
padding: $layoutPadding;
text-align: center;
opacity: .5;
}

View file

@ -0,0 +1,89 @@
/* eslint-disable react/prop-types */
import { graphql } from "gatsby";
import { MDXRenderer } from "gatsby-plugin-mdx";
import { MDXProvider } from "@mdx-js/react";
import React from "react";
import { useTranslation } from "react-i18next";
import Utterances from "utterances-react";
import Layout from "../layouts/default";
import * as styles from "./scamboxPost.module.scss";
const ScamBoxPost = ({ data }) => {
const { t, i18n } = useTranslation();
return (
<Layout
title={`${data.mdx.frontmatter.title} | ${t("scambox")}`}
description={data.mdx.excerpt}
>
<section className={styles.scamboxSection}>
<article>
<h1>{data.mdx.frontmatter.title}</h1>
<span className={styles.meta}>
{t("scamboxPosted", {
date: data.mdx.frontmatter.published,
})}
</span>
{i18n.language !== "en" && (
<div className={styles.noticeBox}>
<b>{t("scamboxNotice")}</b>
<p>{t("scamboxLanguage")}</p>
</div>
)}
<MDXProvider components={{ Chat }}>
<MDXRenderer>{data.mdx.body}</MDXRenderer>
</MDXProvider>
<Utterances
repo="Unkn0wnCat/KevinK.dev.js"
issueTerm={`Scambox-Comments: ${data.mdx.frontmatter.title}`}
theme="preferred-color-scheme"
label="comments"
style={{
marginTop: "50px",
}}
/>
</article>
</section>
</Layout>
);
};
const Chat = ({ src, type }) => {
return (
<div className={styles.chatBox}>
{type == "telegram" && <span>Telegram-Chat</span>}
<iframe src={src} />
</div>
);
};
export const query = graphql`
query ($language: String!, $mdxId: String!) {
mdx(id: { eq: $mdxId }) {
body
excerpt
frontmatter {
platform
tags
title
published(formatString: "DD.MM.YYYY")
}
}
locales: allLocale(filter: { language: { eq: $language } }) {
edges {
node {
ns
data
language
}
}
}
}
`;
export default ScamBoxPost;

View file

@ -0,0 +1,67 @@
@import "../variables";
@import "../mixins";
.scamboxSection {
flex-grow: 1;
}
.noticeBox {
background-color: $noticeColor;
padding: $layoutPadding;
border-radius: 10px;
> p {
margin-bottom: 0;
}
}
.meta {
display: block;
margin-top: -25px;
margin-bottom: $layoutPadding*2;
}
.chatBox {
width: 100%;
min-height: 600px;
border-radius: 10px;
position: relative;
margin-top: 20px;
> span {
position: relative;
top: 0;
left: 20px;
display: flex;
justify-content: left;
align-items: center;
text-shadow: 0 0 10px black;
z-index: 20;
//color: $accentColor;
font-size: 1.5em;
> svg {
margin-right: 10px;
}
}
> iframe {
position: absolute;
top: 25px;
left: 0;
width: 100%;
height: calc(100% - 25px);
border: none;
outline: none;
border-radius: 10px;
box-shadow: -1px 11px 33px -10px rgba(127, 127, 127, 0.2),
-1px 11px 33px -10px rgba($accentColor, 0.25);
@media (prefers-color-scheme: light) {
box-shadow: -1px 11px 33px -10px rgba(29, 29, 29, 0.2),
-1px 11px 33px -10px rgba($accentColor, 0.25);
}
}
}

144
yarn.lock
View file

@ -295,6 +295,13 @@
dependencies:
"@babel/types" "^7.16.0"
"@babel/helper-module-imports@^7.0.0":
version "7.16.0"
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3"
integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg==
dependencies:
"@babel/types" "^7.16.0"
"@babel/helper-module-imports@^7.0.0-beta.49", "@babel/helper-module-imports@^7.12.13", "@babel/helper-module-imports@^7.14.5", "@babel/helper-module-imports@^7.15.4":
version "7.15.4"
resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.15.4.tgz#e18007d230632dea19b47853b984476e7b4e103f"
@ -1257,6 +1264,62 @@
"@babel/helper-validator-identifier" "^7.15.7"
to-fast-properties "^2.0.0"
"@emotion/cache@^10.0.27":
version "10.0.29"
resolved "https://registry.yarnpkg.com/@emotion/cache/-/cache-10.0.29.tgz#87e7e64f412c060102d589fe7c6dc042e6f9d1e0"
integrity sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==
dependencies:
"@emotion/sheet" "0.9.4"
"@emotion/stylis" "0.8.5"
"@emotion/utils" "0.11.3"
"@emotion/weak-memoize" "0.2.5"
"@emotion/hash@0.8.0":
version "0.8.0"
resolved "https://registry.yarnpkg.com/@emotion/hash/-/hash-0.8.0.tgz#bbbff68978fefdbe68ccb533bc8cbe1d1afb5413"
integrity sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==
"@emotion/memoize@0.7.4":
version "0.7.4"
resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.4.tgz#19bf0f5af19149111c40d98bb0cf82119f5d9eeb"
integrity sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==
"@emotion/serialize@^0.11.15", "@emotion/serialize@^0.11.16":
version "0.11.16"
resolved "https://registry.yarnpkg.com/@emotion/serialize/-/serialize-0.11.16.tgz#dee05f9e96ad2fb25a5206b6d759b2d1ed3379ad"
integrity sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==
dependencies:
"@emotion/hash" "0.8.0"
"@emotion/memoize" "0.7.4"
"@emotion/unitless" "0.7.5"
"@emotion/utils" "0.11.3"
csstype "^2.5.7"
"@emotion/sheet@0.9.4":
version "0.9.4"
resolved "https://registry.yarnpkg.com/@emotion/sheet/-/sheet-0.9.4.tgz#894374bea39ec30f489bbfc3438192b9774d32e5"
integrity sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==
"@emotion/stylis@0.8.5":
version "0.8.5"
resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04"
integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==
"@emotion/unitless@0.7.5":
version "0.7.5"
resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed"
integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==
"@emotion/utils@0.11.3":
version "0.11.3"
resolved "https://registry.yarnpkg.com/@emotion/utils/-/utils-0.11.3.tgz#a759863867befa7e583400d322652a3f44820924"
integrity sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==
"@emotion/weak-memoize@0.2.5":
version "0.2.5"
resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz#8eed982e2ee6f7f4e44c253e12962980791efd46"
integrity sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==
"@endemolshinegroup/cosmiconfig-typescript-loader@3.0.2":
version "3.0.2"
resolved "https://registry.yarnpkg.com/@endemolshinegroup/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-3.0.2.tgz#eea4635828dde372838b0909693ebd9aafeec22d"
@ -1536,6 +1599,13 @@
resolved "https://registry.yarnpkg.com/@iarna/toml/-/toml-2.2.5.tgz#b32366c89b43c6f8cefbdefac778b9c828e3ba8c"
integrity sha512-trnsAYxU3xnS1gPHPyU961coFyLkh4gAD/0zQ5mymY4yOZ+CYvsPqUbOFSw0aDM4y0tV7tiFxL/1XfXPNC6IPg==
"@icons-pack/react-simple-icons@^4.6.1":
version "4.6.1"
resolved "https://registry.yarnpkg.com/@icons-pack/react-simple-icons/-/react-simple-icons-4.6.1.tgz#47e07a43ff90ce3ff7d64806cdac76fa68b986fc"
integrity sha512-ICONbofFzeTkXvmbnptDv4P9cqtW/N/8EFOqyzJQJ80b8fJoLzqhM7EKslBmWziIwjY9FBnOoL2ofzQOoDG1Gg==
dependencies:
prop-types "^15.7.2"
"@jest/types@^25.5.0":
version "25.5.0"
resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d"
@ -2981,6 +3051,22 @@ babel-plugin-dynamic-import-node@^2.3.3:
dependencies:
object.assign "^4.1.0"
babel-plugin-emotion@^10.0.27:
version "10.2.2"
resolved "https://registry.yarnpkg.com/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz#a1fe3503cff80abfd0bdda14abd2e8e57a79d17d"
integrity sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==
dependencies:
"@babel/helper-module-imports" "^7.0.0"
"@emotion/hash" "0.8.0"
"@emotion/memoize" "0.7.4"
"@emotion/serialize" "^0.11.16"
babel-plugin-macros "^2.0.0"
babel-plugin-syntax-jsx "^6.18.0"
convert-source-map "^1.5.0"
escape-string-regexp "^1.0.5"
find-root "^1.1.0"
source-map "^0.5.7"
babel-plugin-extract-import-names@1.6.22:
version "1.6.22"
resolved "https://registry.yarnpkg.com/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz#de5f9a28eb12f3eb2578bf74472204e66d1a13dc"
@ -3010,7 +3096,7 @@ babel-plugin-lodash@^3.3.4:
lodash "^4.17.10"
require-package-name "^2.0.1"
babel-plugin-macros@^2.8.0:
babel-plugin-macros@^2.0.0, babel-plugin-macros@^2.8.0:
version "2.8.0"
resolved "https://registry.yarnpkg.com/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz#0f958a7cc6556b1e65344465d99111a1e5e10138"
integrity sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==
@ -3051,6 +3137,11 @@ babel-plugin-remove-graphql-queries@^3.14.0:
"@babel/runtime" "^7.15.4"
gatsby-core-utils "^2.14.0"
babel-plugin-syntax-jsx@^6.18.0:
version "6.18.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946"
integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=
babel-plugin-syntax-object-rest-spread@^6.8.0:
version "6.13.0"
resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5"
@ -3943,7 +4034,7 @@ convert-source-map@^0.3.3:
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-0.3.5.tgz#f1d802950af7dd2631a1febe0596550c86ab3190"
integrity sha1-8dgClQr33SYxof6+BZZVDIarMZA=
convert-source-map@^1.1.0, convert-source-map@^1.7.0:
convert-source-map@^1.1.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0:
version "1.8.0"
resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369"
integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==
@ -4054,6 +4145,16 @@ cosmiconfig@^7.0.0, cosmiconfig@^7.0.1:
path-type "^4.0.0"
yaml "^1.10.0"
create-emotion@^10.0.27:
version "10.0.27"
resolved "https://registry.yarnpkg.com/create-emotion/-/create-emotion-10.0.27.tgz#cb4fa2db750f6ca6f9a001a33fbf1f6c46789503"
integrity sha512-fIK73w82HPPn/RsAij7+Zt8eCE8SptcJ3WoRMfxMtjteYxud8GDTKKld7MYwAX2TVhrw29uR1N/bVGxeStHILg==
dependencies:
"@emotion/cache" "^10.0.27"
"@emotion/serialize" "^0.11.15"
"@emotion/sheet" "0.9.4"
"@emotion/utils" "0.11.3"
create-gatsby@^1.14.0:
version "1.14.0"
resolved "https://registry.yarnpkg.com/create-gatsby/-/create-gatsby-1.14.0.tgz#ce38df717461757fb6b775e656106c43b55a0f71"
@ -4288,6 +4389,11 @@ csso@^4.0.2, csso@^4.2.0:
dependencies:
css-tree "^1.1.2"
csstype@^2.5.7:
version "2.6.18"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.18.tgz#980a8b53085f34af313410af064f2bd241784218"
integrity sha512-RSU6Hyeg14am3Ah4VZEmeX8H7kLwEEirXe6aU2IPfKNvhXwTflK5HQRDNI0ypQXoqmm+QPyG2IaPuQE5zMwSIQ==
csstype@^3.0.2:
version "3.0.9"
resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.9.tgz#6410af31b26bd0520933d02cbc64fce9ce3fbf0b"
@ -4722,6 +4828,14 @@ emojis-list@^3.0.0:
resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78"
integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==
emotion@^10.0.17:
version "10.0.27"
resolved "https://registry.yarnpkg.com/emotion/-/emotion-10.0.27.tgz#f9ca5df98630980a23c819a56262560562e5d75e"
integrity sha512-2xdDzdWWzue8R8lu4G76uWX5WhyQuzATon9LmNeCy/2BHVC6dsEpfhN1a0qhELgtDVdjyEA6J8Y/VlI5ZnaH0g==
dependencies:
babel-plugin-emotion "^10.0.27"
create-emotion "^10.0.27"
encodeurl@~1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
@ -5594,6 +5708,11 @@ find-cache-dir@^3.3.1:
make-dir "^3.0.2"
pkg-dir "^4.1.0"
find-root@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4"
integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==
find-up@4.1.0, find-up@^4.0.0, find-up@^4.1.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19"
@ -10114,7 +10233,7 @@ prompts@^2.3.2:
kleur "^3.0.3"
sisteransi "^1.0.5"
prop-types@15.7.2, prop-types@^15.6.1, prop-types@^15.7.2:
prop-types@15.7.2, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2:
version "15.7.2"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
@ -10386,6 +10505,15 @@ react@17.0.2:
loose-envify "^1.1.0"
object-assign "^4.1.1"
react@^16.9.0:
version "16.14.0"
resolved "https://registry.yarnpkg.com/react/-/react-16.14.0.tgz#94d776ddd0aaa37da3eda8fc5b6b18a4c9a3114d"
integrity sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==
dependencies:
loose-envify "^1.1.0"
object-assign "^4.1.1"
prop-types "^15.6.2"
read-pkg-up@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07"
@ -11413,7 +11541,7 @@ source-map@0.7.3, source-map@^0.7.3, source-map@~0.7.2:
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
source-map@^0.5.0, source-map@^0.5.6, source-map@~0.5.3:
source-map@^0.5.0, source-map@^0.5.6, source-map@^0.5.7, source-map@~0.5.3:
version "0.5.7"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc"
integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=
@ -12634,6 +12762,14 @@ utils-merge@1.0.1:
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
utterances-react@^0.1.3:
version "0.1.3"
resolved "https://registry.yarnpkg.com/utterances-react/-/utterances-react-0.1.3.tgz#b83343762976a6d16f73aa80cbf6a49a5f7b6353"
integrity sha512-y74esCvqDf57ZBx+jMMaQN6lGM8SWYcq92VdPjriBE0/0ukDE28XoaAqZP6YALccnaPHTs9lZT8Ll7pdeK7S/A==
dependencies:
emotion "^10.0.17"
react "^16.9.0"
uuid@3.4.0, uuid@^3.0.0:
version "3.4.0"
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"