diff --git a/.babelrc b/.babelrc
new file mode 100644
index 0000000..5b130c8
--- /dev/null
+++ b/.babelrc
@@ -0,0 +1,15 @@
+{
+ "presets": [
+ "next/babel"
+ ],
+ "plugins": [
+ [
+ "styled-components",
+ {
+ "ssr": true,
+ "displayName": true,
+ "preprocess": false
+ }
+ ]
+ ]
+}
\ No newline at end of file
diff --git a/components/FileSystem/index.tsx b/components/FileSystem/index.tsx
index 38eb39b..58f8f0d 100644
--- a/components/FileSystem/index.tsx
+++ b/components/FileSystem/index.tsx
@@ -1,6 +1,9 @@
-import React, { useState } from 'react'
+import React, { useState, useContext } from 'react'
import Modal from 'react-modal'
+import styled, { ThemeContext } from 'styled-components'
+import { Theme } from '../../utils/types'
import { slugify } from '../../utils/helpers'
+import { SecondaryButton, PrimaryButton } from '../../utils/styles'
const customStyle: ReactModal.Styles = {
overlay: {
@@ -20,6 +23,7 @@ const customStyle: ReactModal.Styles = {
}
const FileSystem = ({ files, activeFile, setActive, setFiles }) => {
+ const theme: Theme = useContext(ThemeContext)
const [isModalOpen, setModalStatus] = useState(false)
const [fileName, setFileName] = useState('')
@@ -40,32 +44,28 @@ const FileSystem = ({ files, activeFile, setActive, setFiles }) => {
return (
<>
-
-
-
-
+
+ setModalStatus(true)}>
+ Add Page
+
{files &&
Object.keys(files).length > 0 &&
Object.values(files).map(({ name, id }, index) => {
return (
- setActive(id)}
style={{
@@ -74,43 +74,36 @@ const FileSystem = ({ files, activeFile, setActive, setFiles }) => {
}}
>
{name}
-
+
)
})}
-
-
-
+
>
)
}
export default FileSystem
+
+const FilesWrapper = styled.section(
+ (props: Theme) => `
+ width: 350px;
+ background-color: ${props.primaryBackground};
+ padding: 0px 15px;
+`
+)
+
+const FileNameWrapper = styled.input`
+ font-size: 14px;
+ padding: 5px 15px;
+`
+
+const FileIcon = styled.div`
+ font-size: 14px;
+ text-align: left;
+ text-transform: capitalize;
+ margin-bottom: 10px;
+ padding: 5px 10px;
+ border-radius: 4px;
+ border: 1px solid #ddd;
+ cursor: pointer;
+`
diff --git a/components/Header/index.tsx b/components/Header/index.tsx
index 870609b..b568b4c 100644
--- a/components/Header/index.tsx
+++ b/components/Header/index.tsx
@@ -1,4 +1,4 @@
-import React from 'react'
+import React, { useContext } from 'react'
import { createProjectPacker } from '@teleporthq/teleport-project-packer'
import {
createReactProjectGenerator,
@@ -6,9 +6,11 @@ import {
} from '@teleporthq/teleport-project-generator-react'
import { createCodesandboxPublisher } from '@teleporthq/teleport-publisher-codesandbox'
import { ProjectUIDL } from '@teleporthq/teleport-types'
+import styled, { ThemeContext } from 'styled-components'
import { exportJson } from '../../utils/helpers'
-import { Files, BlogMeta, File } from '../../utils/types'
+import { Files, BlogMeta, File, Theme } from '../../utils/types'
import { generateProjectUIDL } from '../../utils/uidl-utils'
+import { SecondaryButton } from '../../utils/styles'
interface HeaderProps {
files: Files
@@ -17,6 +19,7 @@ interface HeaderProps {
}
const Header = ({ files, meta, activeFile }: HeaderProps) => {
+ const theme: Theme = useContext(ThemeContext)
const { name } = activeFile || { name: `` }
const downloadProjectUIDL = () => {
const elm = document.getElementById('download_uidl')
@@ -41,33 +44,27 @@ const Header = ({ files, meta, activeFile }: HeaderProps) => {
return (
<>
-
-
+
+
>
)
}
export default Header
+
+const HeaderWrapper = styled.section`
+ display: flex;
+ justify-content: space-around;
+ background-color: #2f3031;
+`
+
+const FileName = styled.div`
+ color: #fff;
+ padding-top: 15px;
+ padding-left: 25px;
+ height: 35px;
+`
diff --git a/package.json b/package.json
index 8b15224..d841320 100644
--- a/package.json
+++ b/package.json
@@ -40,12 +40,15 @@
"react-ace": "^8.0.0",
"react-dom": "^16.12.0",
"react-modal": "^3.11.1",
- "rollup": "^1.31.0"
+ "rollup": "^1.31.0",
+ "styled-components": "^5.0.1"
},
"devDependencies": {
"@types/node": "^13.1.8",
"@types/react": "^16.9.17",
"@types/react-modal": "^3.10.4",
+ "@types/styled-components": "^4.4.2",
+ "babel-plugin-styled-components": "^1.10.7",
"husky": "^4.2.1",
"prettier": "^1.19.1",
"tslint": "^6.0.0",
diff --git a/pages/_document.tsx b/pages/_document.tsx
index f7bd60f..bd83a57 100644
--- a/pages/_document.tsx
+++ b/pages/_document.tsx
@@ -1,15 +1,18 @@
import Document, { Html, Head, Main, NextScript } from 'next/document'
+import { ServerStyleSheet } from 'styled-components'
class MyDocument extends Document {
+ static getInitialProps({ renderPage }) {
+ const sheet = new ServerStyleSheet()
+ const page = renderPage((App) => (props) => sheet.collectStyles())
+ const styleTags = sheet.getStyleElement()
+ return { ...page, styleTags }
+ }
+
render() {
return (
-
-
-
+ {this.props.styleTags}
diff --git a/pages/blog_editor.tsx b/pages/blog_editor.tsx
index c2e2421..da450b2 100644
--- a/pages/blog_editor.tsx
+++ b/pages/blog_editor.tsx
@@ -1,15 +1,14 @@
-import { ProjectUIDL } from '@teleporthq/teleport-types'
import React, { useState, useEffect } from 'react'
import dynamic from 'next/dynamic'
import firebase from 'firebase'
+import styled from 'styled-components'
-import Header from '../components/Header'
import FileSystem from '../components/FileSystem'
import { File, Files, BlogMeta } from '../utils/types'
-import { generateProjectUIDLTemplate } from '../utils/project'
import preview from '../utils/bundler'
import fb from '../firebase'
+const Header = dynamic(import('../components/Header'), { ssr: false })
const CodeEditor = dynamic(import('../components/CodeEditor'), { ssr: false })
const BlogEditor = () => {
@@ -115,17 +114,17 @@ const BlogEditor = () => {
return (
<>
-
- {user ? (
+ {/* */}
+ {/* {user ? (
{fb.app.auth().currentUser.displayName} ({fb.app.auth().currentUser.email}){' '}
) : (
- )}
-
- */}
+
{
/>
-
-
+
>
)
}
export default BlogEditor
+
+const GridWrapper = styled.section`
+ height: 100%;
+ display: grid;
+ grid-template-columns: 250px 50% 38%;
+`
+
+const MarkdownRenderer = styled.div`
+ font-family: 'Roboto', sans-serif;
+ color: #2c3e50;
+ -webkit-font-smoothing: antialiased;
+ font-size: 16px;
+ padding: 5px;
+`
+
+const MarkdownRendererHeading = styled.div`
+ margin: 10px;
+ padding-bottom: 5px;
+ text-align: left;
+ font-size: 20px;
+ border-bottom: 1px dotted #000;
+`
diff --git a/pages/index.tsx b/pages/index.tsx
index 23cf6e4..b3e7141 100644
--- a/pages/index.tsx
+++ b/pages/index.tsx
@@ -1,10 +1,14 @@
-import React, { useEffect } from "react";
-import BlogEditor from "./blog_editor";
+import React from 'react'
+import { ThemeProvider } from 'styled-components'
+import BlogEditor from './blog_editor'
+import { Dark } from '../utils/themes'
const Home = () => {
return (
<>
-
+
+
+
>
- );
-};
+ )
+}
-export default Home;
+export default Home
diff --git a/public/teleport-logo-dark.svg b/public/teleport-logo-dark.svg
deleted file mode 100644
index b87dd53..0000000
--- a/public/teleport-logo-dark.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-
diff --git a/utils/styles.ts b/utils/styles.ts
new file mode 100644
index 0000000..785cc7a
--- /dev/null
+++ b/utils/styles.ts
@@ -0,0 +1,19 @@
+import styled from 'styled-components'
+import { Theme } from '../utils/types'
+
+export const PrimaryButton = styled.button(
+ (props: Theme) => `
+ cursor: pointer;
+ border: 1px solid #fff;
+ width: auto;
+ padding: 5px 15px;
+ background-color: ${props.primaryBackground};
+ border-radius: 6px;
+ text-decoration: none;
+`
+)
+
+export const SecondaryButton = styled(PrimaryButton)`
+ cursor: pointer;
+ border: 1px solid #2f3031;
+`
diff --git a/utils/themes.ts b/utils/themes.ts
new file mode 100644
index 0000000..b72410f
--- /dev/null
+++ b/utils/themes.ts
@@ -0,0 +1,27 @@
+import { Theme } from './types'
+
+export const Dark: Theme = {
+ primaryBackground: '#2A2E30',
+ editorBackground: '#24272A',
+ highlighter: '#66696C',
+ hoverHighlighterBar: '#484B4E',
+ textPrimary: '#E2E3E3',
+ textSecondary: '#9FA2A3',
+ textHighlight: '#4CA9FF',
+ primaryButton: '#66696C',
+ primaryHoverButton: '#E2E3E3',
+ primaryButtonBorder: '#C4c4c4',
+}
+
+export const Light: Theme = {
+ primaryBackground: '#F7F6F3',
+ editorBackground: '#FFFFFF',
+ highlighter: '#AAA9A5',
+ hoverHighlighterBar: '#D0CFCC',
+ textPrimary: '#676662',
+ textSecondary: '#66696C',
+ textHighlight: '#4CA9FF',
+ primaryButton: '#66696C',
+ primaryHoverButton: '#E2E3E3',
+ primaryButtonBorder: '#c4c4c4',
+}
diff --git a/utils/types.ts b/utils/types.ts
index 684650e..6cdf5da 100644
--- a/utils/types.ts
+++ b/utils/types.ts
@@ -14,3 +14,16 @@ export interface BlogMeta {
blogName: string
blogDescription: string
}
+
+export interface Theme {
+ primaryBackground: string
+ editorBackground: string
+ highlighter: string
+ hoverHighlighterBar: string
+ textPrimary: string
+ textSecondary: string
+ textHighlight: string
+ primaryButton: string
+ primaryHoverButton: string
+ primaryButtonBorder: string
+}
diff --git a/utils/uidl-utils.ts b/utils/uidl-utils.ts
index 41502ae..00c8d11 100644
--- a/utils/uidl-utils.ts
+++ b/utils/uidl-utils.ts
@@ -68,7 +68,10 @@ export const generateProjectUIDL = (files: Files, meta: BlogMeta) => {
const generateUIDLNdoes = (markdown: string) => {
const uidlGenerator = markdownUIDLGenerator()
+ const tree = uidlGenerator.parser().parse(markdown)
+ console.log(tree)
const uidlNodes = uidlGenerator.parse(markdown)
+ console.log(uidlNodes)
return uidlNodes
}
diff --git a/yarn.lock b/yarn.lock
index 0488006..83ffca1 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -79,7 +79,7 @@
lodash "^4.17.13"
source-map "^0.5.0"
-"@babel/helper-annotate-as-pure@^7.8.3":
+"@babel/helper-annotate-as-pure@^7.0.0", "@babel/helper-annotate-as-pure@^7.8.3":
version "7.8.3"
resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz#60bc0bc657f63a0924ff9a4b4a0b24a13cf4deee"
integrity sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==
@@ -973,7 +973,7 @@
"@babel/parser" "^7.8.3"
"@babel/types" "^7.8.3"
-"@babel/traverse@^7.7.2", "@babel/traverse@^7.8.3", "@babel/traverse@^7.8.4":
+"@babel/traverse@^7.4.5", "@babel/traverse@^7.7.2", "@babel/traverse@^7.8.3", "@babel/traverse@^7.8.4":
version "7.8.4"
resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.8.4.tgz#f0845822365f9d5b0e312ed3959d3f827f869e3c"
integrity sha512-NGLJPZwnVEyBPLI+bl9y9aSnxMhsKz42so7ApAv9D+b4vAFPpY013FTS9LdKxcABoIYFU52HcYga1pPlx454mg==
@@ -1002,6 +1002,28 @@
resolved "https://registry.yarnpkg.com/@csstools/convert-colors/-/convert-colors-1.4.0.tgz#ad495dc41b12e75d588c6db8b9834f08fa131eb7"
integrity sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==
+"@emotion/is-prop-valid@^0.8.3":
+ version "0.8.6"
+ resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-0.8.6.tgz#4757646f0a58e9dec614c47c838e7147d88c263c"
+ integrity sha512-mnZMho3Sq8BfzkYYRVc8ilQTnc8U02Ytp6J1AwM6taQStZ3AhsEJBX2LzhA/LJirNCwM2VtHL3VFIZ+sNJUgUQ==
+ dependencies:
+ "@emotion/memoize" "0.7.4"
+
+"@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/stylis@^0.8.4":
+ 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.4":
+ version "0.7.5"
+ resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed"
+ integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==
+
"@firebase/analytics-types@0.2.5":
version "0.2.5"
resolved "https://registry.yarnpkg.com/@firebase/analytics-types/-/analytics-types-0.2.5.tgz#18f4400482a445504b69d6b64c7d98f11fd3ea5e"
@@ -1430,7 +1452,7 @@
"@teleporthq/teleport-markdown-uidl-generator@https://github.pika.dev/teleporthq/teleport-markdown-uidl-generator/pr/2":
version "0.0.0"
- resolved "https://github.pika.dev/teleporthq/teleport-markdown-uidl-generator/pr/2#6b14bf438511c3816f7fda0f156a07acc97380ee"
+ resolved "https://github.pika.dev/teleporthq/teleport-markdown-uidl-generator/pr/2#7fd6f6ebdadca438b30d57f072c6f49a1ec636e2"
dependencies:
"@teleporthq/teleport-types" "^0.10.1"
remark-parse "^7.0.2"
@@ -1698,6 +1720,14 @@
dependencies:
"@types/node" "*"
+"@types/hoist-non-react-statics@*":
+ version "3.3.1"
+ resolved "https://registry.yarnpkg.com/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f"
+ integrity sha512-iMIqiko6ooLrTh1joXodJK5X9xeEALT1kM5G3ZLhD3hszxBdIEd5C75U834D9mLcINgD4OyZf5uQXjkuYydWvA==
+ dependencies:
+ "@types/react" "*"
+ hoist-non-react-statics "^3.3.0"
+
"@types/long@*", "@types/long@^4.0.0":
version "4.0.1"
resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9"
@@ -1735,6 +1765,13 @@
dependencies:
"@types/react" "*"
+"@types/react-native@*":
+ version "0.61.10"
+ resolved "https://registry.yarnpkg.com/@types/react-native/-/react-native-0.61.10.tgz#d010b9093322bc781151638f74124f58fc87cc90"
+ integrity sha512-z+RWEFfdwHnOLpq70DO//4mjyNqoZypdR3uBqpBB82t2HJg2YbY4j6XIow7sFqeO/r8XibgV9UFEVG2tYIRlSA==
+ dependencies:
+ "@types/react" "*"
+
"@types/react@*", "@types/react@^16.9.17":
version "16.9.19"
resolved "https://registry.yarnpkg.com/@types/react/-/react-16.9.19.tgz#c842aa83ea490007d29938146ff2e4d9e4360c40"
@@ -1743,6 +1780,16 @@
"@types/prop-types" "*"
csstype "^2.2.0"
+"@types/styled-components@^4.4.2":
+ version "4.4.2"
+ resolved "https://registry.yarnpkg.com/@types/styled-components/-/styled-components-4.4.2.tgz#709fa7afd7dc0963b8316a0159240f0fe19a026d"
+ integrity sha512-dngFx2PuGoy0MGE68eHayAmJvLSqWrnTe9w+DnQruu8PS+waWEsKmoBRhkzL2h2pK1OJhzJhVfuiz+oZa4etpA==
+ dependencies:
+ "@types/hoist-non-react-statics" "*"
+ "@types/react" "*"
+ "@types/react-native" "*"
+ csstype "^2.2.0"
+
"@types/unist@^2.0.0", "@types/unist@^2.0.2":
version "2.0.3"
resolved "https://registry.yarnpkg.com/@types/unist/-/unist-2.0.3.tgz#9c088679876f374eb5983f150d4787aa6fb32d7e"
@@ -2250,7 +2297,17 @@ babel-plugin-dynamic-import-node@^2.3.0:
dependencies:
object.assign "^4.1.0"
-babel-plugin-syntax-jsx@6.18.0:
+"babel-plugin-styled-components@>= 1", babel-plugin-styled-components@^1.10.7:
+ version "1.10.7"
+ resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-1.10.7.tgz#3494e77914e9989b33cc2d7b3b29527a949d635c"
+ integrity sha512-MBMHGcIA22996n9hZRf/UJLVVgkEOITuR2SvjHLb5dSTUyR4ZRGn+ngITapes36FI3WLxZHfRhkA1ffHxihOrg==
+ dependencies:
+ "@babel/helper-annotate-as-pure" "^7.0.0"
+ "@babel/helper-module-imports" "^7.0.0"
+ babel-plugin-syntax-jsx "^6.18.0"
+ lodash "^4.17.11"
+
+babel-plugin-syntax-jsx@6.18.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=
@@ -2612,6 +2669,11 @@ camelcase@^2.0.1:
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f"
integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=
+camelize@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b"
+ integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=
+
caniuse-lite@^1.0.30000981, caniuse-lite@^1.0.30001017, caniuse-lite@^1.0.30001020, caniuse-lite@^1.0.30001023:
version "1.0.30001025"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001025.tgz#30336a8aca7f98618eb3cf38e35184e13d4e5fe6"
@@ -3110,6 +3172,11 @@ css-blank-pseudo@^0.1.4:
dependencies:
postcss "^7.0.5"
+css-color-keywords@^1.0.0:
+ version "1.0.0"
+ resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05"
+ integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=
+
css-has-pseudo@^0.10.0:
version "0.10.0"
resolved "https://registry.yarnpkg.com/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz#3c642ab34ca242c59c41a125df9105841f6966ee"
@@ -3143,6 +3210,15 @@ css-prefers-color-scheme@^3.1.1:
dependencies:
postcss "^7.0.5"
+css-to-react-native@^3.0.0:
+ version "3.0.0"
+ resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.0.0.tgz#62dbe678072a824a689bcfee011fc96e02a7d756"
+ integrity sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ==
+ dependencies:
+ camelize "^1.0.0"
+ css-color-keywords "^1.0.0"
+ postcss-value-parser "^4.0.2"
+
css-vendor@^2.0.7:
version "2.0.7"
resolved "https://registry.yarnpkg.com/css-vendor/-/css-vendor-2.0.7.tgz#4e6d53d953c187981576d6a542acc9fb57174bda"
@@ -4270,6 +4346,13 @@ hmac-drbg@^1.0.0:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
+hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0:
+ version "3.3.2"
+ resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
+ integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==
+ dependencies:
+ react-is "^16.7.0"
+
hosted-git-info@^2.1.4:
version "2.8.5"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.5.tgz#759cfcf2c4d156ade59b0b2dfabddc42a6b9c70c"
@@ -5797,7 +5880,7 @@ node-libs-browser@^2.2.1:
util "^0.11.0"
vm-browserify "^1.0.1"
-node-pre-gyp@*, node-pre-gyp@^0.14.0:
+node-pre-gyp@^0.14.0:
version "0.14.0"
resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.14.0.tgz#9a0596533b877289bcad4e143982ca3d904ddc83"
integrity sha512-+CvDC7ZttU/sSt9rFjix/P05iS43qHCOOGzcr3Ry99bXG7VX953+vFyEuph/tfqoYu8dttBkE86JSKBO2OzcxA==
@@ -6966,7 +7049,7 @@ react-is@16.8.6:
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16"
integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==
-react-is@^16.8.1:
+react-is@^16.7.0, react-is@^16.8.1:
version "16.12.0"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.12.0.tgz#2cc0fe0fba742d97fd527c42a13bec4eeb06241c"
integrity sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==
@@ -7449,6 +7532,11 @@ shallow-clone@^3.0.0:
dependencies:
kind-of "^6.0.2"
+shallowequal@^1.1.0:
+ version "1.1.0"
+ resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8"
+ integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==
+
shell-quote@^1.6.1:
version "1.7.2"
resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.2.tgz#67a7d02c76c9da24f99d20808fcaded0e0e04be2"
@@ -7782,6 +7870,22 @@ style-loader@1.0.0:
loader-utils "^1.2.3"
schema-utils "^2.0.1"
+styled-components@^5.0.1:
+ version "5.0.1"
+ resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.0.1.tgz#57782a6471031abefb2db5820a1876ae853bc619"
+ integrity sha512-E0xKTRIjTs4DyvC1MHu/EcCXIj6+ENCP8hP01koyoADF++WdBUOrSGwU1scJRw7/YaYOhDvvoad6VlMG+0j53A==
+ dependencies:
+ "@babel/helper-module-imports" "^7.0.0"
+ "@babel/traverse" "^7.4.5"
+ "@emotion/is-prop-valid" "^0.8.3"
+ "@emotion/stylis" "^0.8.4"
+ "@emotion/unitless" "^0.7.4"
+ babel-plugin-styled-components ">= 1"
+ css-to-react-native "^3.0.0"
+ hoist-non-react-statics "^3.0.0"
+ shallowequal "^1.1.0"
+ supports-color "^5.5.0"
+
styled-jsx@3.2.4:
version "3.2.4"
resolved "https://registry.yarnpkg.com/styled-jsx/-/styled-jsx-3.2.4.tgz#cbcdedcfb81d717fd355c4a0d8443f8e74527b60"
@@ -7811,7 +7915,7 @@ supports-color@^2.0.0:
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=
-supports-color@^5.3.0:
+supports-color@^5.3.0, supports-color@^5.5.0:
version "5.5.0"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==