diff options
author | Kristóf Marussy <kristof@marussy.com> | 2021-11-19 20:17:56 +0100 |
---|---|---|
committer | Kristóf Marussy <kristof@marussy.com> | 2021-11-20 03:00:38 +0100 |
commit | 40ebe0088bc97f644889d915b0524b49d4a21e4c (patch) | |
tree | 3d8a22d8f36634e3ac678f83600d9f443b47bc90 /language-web/src/main/js | |
parent | build: fix cross-project group and version config (diff) | |
download | refinery-40ebe0088bc97f644889d915b0524b49d4a21e4c.tar.gz refinery-40ebe0088bc97f644889d915b0524b49d4a21e4c.tar.zst refinery-40ebe0088bc97f644889d915b0524b49d4a21e4c.zip |
build: upgrade to yarn 3
Also upgrades various frontend dependencies.
We can't upgrade to typescript 4.5 yet, because
https://github.com/yarnpkg/berry/pull/3760 is not released yet.
Diffstat (limited to 'language-web/src/main/js')
-rw-r--r-- | language-web/src/main/js/App.tsx | 86 | ||||
-rw-r--r-- | language-web/src/main/js/RootStore.tsx | 18 | ||||
-rw-r--r-- | language-web/src/main/js/utils/PendingTask.ts | 2 | ||||
-rw-r--r-- | language-web/src/main/js/utils/Timer.ts | 2 |
4 files changed, 59 insertions, 49 deletions
diff --git a/language-web/src/main/js/App.tsx b/language-web/src/main/js/App.tsx index 2567aa9c..54f92f9a 100644 --- a/language-web/src/main/js/App.tsx +++ b/language-web/src/main/js/App.tsx | |||
@@ -10,49 +10,51 @@ import { EditorArea } from './editor/EditorArea'; | |||
10 | import { EditorButtons } from './editor/EditorButtons'; | 10 | import { EditorButtons } from './editor/EditorButtons'; |
11 | import { GenerateButton } from './editor/GenerateButton'; | 11 | import { GenerateButton } from './editor/GenerateButton'; |
12 | 12 | ||
13 | export const App = (): JSX.Element => ( | 13 | export function App(): JSX.Element { |
14 | <Box | 14 | return ( |
15 | display="flex" | ||
16 | flexDirection="column" | ||
17 | sx={{ height: '100vh' }} | ||
18 | > | ||
19 | <AppBar | ||
20 | position="static" | ||
21 | color="inherit" | ||
22 | > | ||
23 | <Toolbar> | ||
24 | <IconButton | ||
25 | edge="start" | ||
26 | sx={{ mr: 2 }} | ||
27 | color="inherit" | ||
28 | aria-label="menu" | ||
29 | > | ||
30 | <MenuIcon /> | ||
31 | </IconButton> | ||
32 | <Typography | ||
33 | variant="h6" | ||
34 | component="h1" | ||
35 | flexGrow={1} | ||
36 | > | ||
37 | Refinery | ||
38 | </Typography> | ||
39 | </Toolbar> | ||
40 | </AppBar> | ||
41 | <Box | 15 | <Box |
42 | display="flex" | 16 | display="flex" |
43 | justifyContent="space-between" | 17 | flexDirection="column" |
44 | alignItems="center" | 18 | sx={{ height: '100vh' }} |
45 | p={1} | ||
46 | > | ||
47 | <EditorButtons /> | ||
48 | <GenerateButton /> | ||
49 | </Box> | ||
50 | <Box | ||
51 | flexGrow={1} | ||
52 | flexShrink={1} | ||
53 | sx={{ overflow: 'auto' }} | ||
54 | > | 19 | > |
55 | <EditorArea /> | 20 | <AppBar |
21 | position="static" | ||
22 | color="inherit" | ||
23 | > | ||
24 | <Toolbar> | ||
25 | <IconButton | ||
26 | edge="start" | ||
27 | sx={{ mr: 2 }} | ||
28 | color="inherit" | ||
29 | aria-label="menu" | ||
30 | > | ||
31 | <MenuIcon /> | ||
32 | </IconButton> | ||
33 | <Typography | ||
34 | variant="h6" | ||
35 | component="h1" | ||
36 | flexGrow={1} | ||
37 | > | ||
38 | Refinery | ||
39 | </Typography> | ||
40 | </Toolbar> | ||
41 | </AppBar> | ||
42 | <Box | ||
43 | display="flex" | ||
44 | justifyContent="space-between" | ||
45 | alignItems="center" | ||
46 | p={1} | ||
47 | > | ||
48 | <EditorButtons /> | ||
49 | <GenerateButton /> | ||
50 | </Box> | ||
51 | <Box | ||
52 | flexGrow={1} | ||
53 | flexShrink={1} | ||
54 | sx={{ overflow: 'auto' }} | ||
55 | > | ||
56 | <EditorArea /> | ||
57 | </Box> | ||
56 | </Box> | 58 | </Box> |
57 | </Box> | 59 | ); |
58 | ); | 60 | } |
diff --git a/language-web/src/main/js/RootStore.tsx b/language-web/src/main/js/RootStore.tsx index 96e1b26a..baf0b61e 100644 --- a/language-web/src/main/js/RootStore.tsx +++ b/language-web/src/main/js/RootStore.tsx | |||
@@ -16,11 +16,19 @@ export class RootStore { | |||
16 | 16 | ||
17 | const StoreContext = createContext<RootStore | undefined>(undefined); | 17 | const StoreContext = createContext<RootStore | undefined>(undefined); |
18 | 18 | ||
19 | export const RootStoreProvider: React.FC<{ rootStore: RootStore }> = ({ children, rootStore }) => ( | 19 | export interface RootStoreProviderProps { |
20 | <StoreContext.Provider value={rootStore}> | 20 | children: JSX.Element; |
21 | {children} | 21 | |
22 | </StoreContext.Provider> | 22 | rootStore: RootStore; |
23 | ); | 23 | } |
24 | |||
25 | export function RootStoreProvider({ children, rootStore }: RootStoreProviderProps): JSX.Element { | ||
26 | return ( | ||
27 | <StoreContext.Provider value={rootStore}> | ||
28 | {children} | ||
29 | </StoreContext.Provider> | ||
30 | ); | ||
31 | } | ||
24 | 32 | ||
25 | export const useRootStore = (): RootStore => { | 33 | export const useRootStore = (): RootStore => { |
26 | const rootStore = useContext(StoreContext); | 34 | const rootStore = useContext(StoreContext); |
diff --git a/language-web/src/main/js/utils/PendingTask.ts b/language-web/src/main/js/utils/PendingTask.ts index de59a99b..51b79fb0 100644 --- a/language-web/src/main/js/utils/PendingTask.ts +++ b/language-web/src/main/js/utils/PendingTask.ts | |||
@@ -9,7 +9,7 @@ export class PendingTask<T> { | |||
9 | 9 | ||
10 | private resolved = false; | 10 | private resolved = false; |
11 | 11 | ||
12 | private timeout: NodeJS.Timeout | null; | 12 | private timeout: number | null; |
13 | 13 | ||
14 | constructor( | 14 | constructor( |
15 | resolveCallback: (value: T) => void, | 15 | resolveCallback: (value: T) => void, |
diff --git a/language-web/src/main/js/utils/Timer.ts b/language-web/src/main/js/utils/Timer.ts index efde6633..8f653070 100644 --- a/language-web/src/main/js/utils/Timer.ts +++ b/language-web/src/main/js/utils/Timer.ts | |||
@@ -3,7 +3,7 @@ export class Timer { | |||
3 | 3 | ||
4 | readonly defaultTimeout: number; | 4 | readonly defaultTimeout: number; |
5 | 5 | ||
6 | timeout: NodeJS.Timeout | null = null; | 6 | timeout: number | null = null; |
7 | 7 | ||
8 | constructor(callback: () => void, defaultTimeout = 0) { | 8 | constructor(callback: () => void, defaultTimeout = 0) { |
9 | this.callback = () => { | 9 | this.callback = () => { |