From b7bea4941e2d6d56ce6ed2e68309647fa05dcd95 Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Thu, 20 Dec 2018 20:00:58 -0800 Subject: [PATCH] Content pages --- app/scenes/Document/components/Branding.js | 2 +- public/images/figma.png | Bin 1148 -> 2902 bytes server/api/middlewares/errorHandling.js | 7 ++- server/pages/Changelog.js | 4 +- server/pages/Integration.js | 29 ----------- server/pages/components/IntegrationMenu.js | 24 --------- server/pages/components/Markdown.js | 18 +++++++ server/pages/components/Navigation.js | 7 ++- server/pages/integrations/Integration.js | 45 ++++++++++++++++ server/pages/integrations/Menu.js | 48 ++++++++++++++++++ .../integrations/content.json} | 16 +++--- server/pages/integrations/figma.md | 5 ++ .../index.js} | 6 +-- server/routes.js | 30 ++++++++--- shared/components/OutlineLogo.js | 25 +++++++++ shared/components/OutlineLogo/index.js | 9 ---- shared/components/OutlineLogo/logo.png | Bin 569 -> 0 bytes shared/styles/base.js | 8 +-- 18 files changed, 195 insertions(+), 88 deletions(-) delete mode 100644 server/pages/Integration.js delete mode 100644 server/pages/components/IntegrationMenu.js create mode 100644 server/pages/components/Markdown.js create mode 100644 server/pages/integrations/Integration.js create mode 100644 server/pages/integrations/Menu.js rename server/{config/integrations.json => pages/integrations/content.json} (99%) create mode 100644 server/pages/integrations/figma.md rename server/pages/{Integrations.js => integrations/index.js} (92%) create mode 100644 shared/components/OutlineLogo.js delete mode 100644 shared/components/OutlineLogo/index.js delete mode 100644 shared/components/OutlineLogo/logo.png diff --git a/app/scenes/Document/components/Branding.js b/app/scenes/Document/components/Branding.js index 47c7eefc..40e52299 100644 --- a/app/scenes/Document/components/Branding.js +++ b/app/scenes/Document/components/Branding.js @@ -6,7 +6,7 @@ import OutlineLogo from 'shared/components/OutlineLogo'; function Branding() { return ( -  Outline +  Outline ); } diff --git a/public/images/figma.png b/public/images/figma.png index 15ce699385bd73c3b3f72ad8c2cb0e8ec6fb468b..23ba64a6a29371fa2e1dd747c1e1eef6b6e1d98b 100755 GIT binary patch literal 2902 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 AO8@`> literal 1148 zcmeAS@N?(olHy`uVBq!ia0vp^6(G#P3?%t>9eV(z76tf(xB}@x4i*TiS^=GCS`y?J z%&^fX=*4e+<_qp@Uxhi}Jx~((vD8*uR{Yk1X}#^a7EiC9J+VE_Nu6i+ocfC5gp~^? z#;gnXzYuanhk=1P#M8wwB;(%OTaiVN3<~Eh`o=^i2IG;Wg!n+m#Ayx06dAmP- zkns&!$-Cx$m{gyQa)G~;-%P<9k2if#pOvY}&Ch#qrOqB>7W34Hdlf4bx#f8d>PA)^ z?Af6+p>=bgUnwNA<(tUbbK-M#XKNjY1#xrUedoq&kfS9dw~1(zJ8>ll~*S@&<+ zI@fu}7DPRHxkGQo^xmm=C-Yl8N6N35o?9Lb;m4zACu|EUE@tO6s6Rg2bjRH8 zz2XnEpE?|!tIYcCy&kvs)7X1U59FQyard5pX2H=9b@Mm9%W`Ql*T~SdE;_1F@Mhrx zgK2S@Ts3C(nSULderx3Da+Z63;At)0A#=v#1Itm-pmp6U6+MrNG-pg!Q?s4Gv4qR> z!|IQniB3(`8hR6&f2&wHCdN*9-OBPl@P>m>T$x5e+oA{+&d;2zZJJzCyA^IuVyT}L zKI`5rrr(P9&VGFQ@Rag_3vXuZ50(i^__5&MQTP1PB?nx;_swpO;$`Bw`QjOKTtgNo zW7~sicbJ|wRcf>;&U!d?ndFNtITcP4ckUj&@bCcZ*`}6HN&8ZNl-KgHX^H(lTlK5z zV*lR9^;0L?cOO3X_q>dp^!d$U=N{fPE;{<~iuCrm-C_yG+r1>>-t+2&`Ft??Z6I$I z!7j7Mcnzza(ly4gTe~DWM4ftaR6p diff --git a/server/api/middlewares/errorHandling.js b/server/api/middlewares/errorHandling.js index 5acd500a..9c5100b5 100644 --- a/server/api/middlewares/errorHandling.js +++ b/server/api/middlewares/errorHandling.js @@ -23,7 +23,12 @@ export default function errorHandling() { } } - if (message.match('Authorization error')) { + if (message.match(/Not found/i)) { + ctx.status = 404; + error = 'not_found'; + } + + if (message.match(/Authorization error/i)) { ctx.status = 403; error = 'authorization_error'; } diff --git a/server/pages/Changelog.js b/server/pages/Changelog.js index 3bc6f645..d0c4106f 100644 --- a/server/pages/Changelog.js +++ b/server/pages/Changelog.js @@ -3,8 +3,8 @@ import * as React from 'react'; import format from 'date-fns/format'; import styled from 'styled-components'; import Grid from 'styled-components-grid'; -import ReactMarkdown from 'react-markdown'; import { Helmet } from 'react-helmet'; +import Markdown from './components/Markdown'; import Header from './components/Header'; import Content from './components/Content'; @@ -36,7 +36,7 @@ function Changelog({ releases }: { releases: Release[] }) { - + ))} diff --git a/server/pages/Integration.js b/server/pages/Integration.js deleted file mode 100644 index 97e6c99a..00000000 --- a/server/pages/Integration.js +++ /dev/null @@ -1,29 +0,0 @@ -// @flow -import * as React from 'react'; -import { find } from 'lodash'; -import Grid from 'styled-components-grid'; -import { Helmet } from 'react-helmet'; -import Header from './components/Header'; -import Content from './components/Content'; -import IntegrationMenu from './components/IntegrationMenu'; -import integrations from '../config/integrations'; - -export default function Integration({ slug }: { slug: string }) { - const integation = find(integrations, i => i.slug === slug); - - return ( - - - {integation.name} Integration - -
-

{integation.name} Integration

-

{integation.description}

-
- - -
- - - ); -} diff --git a/server/pages/components/IntegrationMenu.js b/server/pages/components/IntegrationMenu.js deleted file mode 100644 index ac018898..00000000 --- a/server/pages/components/IntegrationMenu.js +++ /dev/null @@ -1,24 +0,0 @@ -// @flow -import { map, groupBy } from 'lodash'; -import * as React from 'react'; - -export default function IntegrationMenu({ integrations }) { - const categories = groupBy(integrations, i => i.category); - - return ( - - ); -} diff --git a/server/pages/components/Markdown.js b/server/pages/components/Markdown.js new file mode 100644 index 00000000..3af38cd1 --- /dev/null +++ b/server/pages/components/Markdown.js @@ -0,0 +1,18 @@ +// @flow +import ReactMarkdown from 'react-markdown'; +import styled from 'styled-components'; + +export default styled(ReactMarkdown)` + blockquote { + margin-left: 0; + background-color: ${props => props.theme.smoke}; + border-left: 6px solid ${props => props.theme.smokeDark}; + padding: 15px 30px 15px 15px; + font-style: italic; + font-size: 16px; + + p { + margin: 0; + } + } +`; diff --git a/server/pages/components/Navigation.js b/server/pages/components/Navigation.js index 20bd4713..d63c8133 100644 --- a/server/pages/components/Navigation.js +++ b/server/pages/components/Navigation.js @@ -4,6 +4,7 @@ import { sortBy } from 'lodash'; import styled from 'styled-components'; import breakpoint from 'styled-components-breakpoint'; import Centered from './Centered'; +import OutlineLogo from '../../../shared/components/OutlineLogo'; import TeamLogo from '../../../shared/components/TeamLogo'; import { fadeAndScaleIn } from '../../../shared/styles/animations'; import { @@ -37,7 +38,9 @@ function TopNavigation({ sessions, loggedIn }: Props) { return (