diff options
| author | Jan Tuomi <jans.tuomi@gmail.com> | 2022-02-05 16:48:16 +0200 |
|---|---|---|
| committer | Jan Tuomi <jans.tuomi@gmail.com> | 2022-02-05 16:48:16 +0200 |
| commit | a96d162f649704df5d9b567158366015cbe3172c (patch) | |
| tree | 656f946eeb6748fe01447004399e08a45ff0b5f5 /src/App.tsx | |
| parent | 7d78bf4d2111af87636069ee2d35d6323ffc96be (diff) | |
Get basic stuff working
Diffstat (limited to 'src/App.tsx')
| -rw-r--r-- | src/App.tsx | 38 |
1 files changed, 21 insertions, 17 deletions
diff --git a/src/App.tsx b/src/App.tsx index 5645dcc..905149e 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,24 +1,26 @@ -import { useSnippets } from "./api" +import { useExamples } from "./api" import styles from "./App.module.css" +import Editor from "./Editor" +import Tutorial from "./Tutorial" import icon from "./favicon.png" const App = () => { - const snippets = useSnippets() + const examples = useExamples() - const renderSnippets = () => { - if (snippets.type === "failed") { - return <div className={styles.error}> - Unexpected error loading snippets. See console for details. - </div> - } - - if (snippets.type === "loading") { - return <div>Loading snippets...</div> + const renderExamples = () => { + switch (examples.type) { + case "not_yet_requested": + case "loading": + return <div>Loading examples...</div> + case "failed": + return <div className={styles.error}> + An unexpected error occurred while loading examples. See console for details. + </div> + case "success": + return examples.data.map((example) => + <div key={example.id}>{example.title}</div>, + ) } - - return snippets.data.map((snippet) => - <div key={snippet.id}>{snippet.title}</div>, - ) } return ( @@ -32,9 +34,11 @@ const App = () => { <small>A Mere Stack Language</small> </div> </header> - <div> - {renderSnippets()} + <div className={styles.examples}> + {renderExamples()} </div> + <div className={styles.editor}><Editor /></div> + <div className={styles.tutorial}><Tutorial /></div> </div> ) } |
