removed localization support

This commit is contained in:
Kim, Jimin 2021-05-31 12:03:33 +09:00
parent 8b40dcb298
commit 2afe7e69e7
6 changed files with 36 additions and 124 deletions

View file

@ -6,7 +6,6 @@ import storage from "local-storage-fallback"
import { isIE } from "react-device-detect" import { isIE } from "react-device-detect"
import theming from "./theming" import theming from "./theming"
import { LanguageContext } from "./LangaugeContext"
import Spinner from "./components/Spinner" import Spinner from "./components/Spinner"
import Navbar from "./components/Navbar" import Navbar from "./components/Navbar"
@ -200,60 +199,45 @@ export default class App extends React.Component<AppProps, AppState> {
this.setState({ currentTheme: setThemeTo }), // make setTheme function available in other components this.setState({ currentTheme: setThemeTo }), // make setTheme function available in other components
}} }}
> >
<LanguageContext.Provider <GlobalStyle />
value={{ <Navbar />
language: this.state.currentLanguage, <div id="content">
toggleLanguage: () => { {this.state.isLoading ? (
// cycle through languages <Spinner size={200} />
let setLanguageTo = "en" ) : (
if (this.state.currentLanguage == "en") <Switch>
setLanguageTo = "kr" <Route exact path="/">
this.setState({ <PostList
currentLanguage: setLanguageTo, key="home"
}) howMany={4}
}, title="Home"
}} />
> </Route>
<GlobalStyle />
<Navbar />
<div id="content">
{this.state.isLoading ? (
<Spinner size={200} />
) : (
<Switch>
<Route exact path="/">
<PostList
key="home"
howMany={4}
title="Home"
/>
</Route>
<Route exact path="/archives"> <Route exact path="/archives">
<PostList <PostList
key="archives" key="archives"
title="Archives" title="Archives"
/> />
</Route> </Route>
<Route exact path="/portfolio"> <Route exact path="/portfolio">
<Portfolio /> <Portfolio />
</Route> </Route>
<Route exact path="/404"> <Route exact path="/404">
<NotFound /> <NotFound />
</Route> </Route>
<Route exact path="/:path*"> <Route exact path="/:path*">
{({ match }) => ( {({ match }) => (
<Page key={match.params.path} /> <Page key={match.params.path} />
)} )}
</Route> </Route>
</Switch> </Switch>
)} )}
</div> </div>
<Footer /> <Footer />
</LanguageContext.Provider>
</ThemeProvider> </ThemeProvider>
</HelmetProvider> </HelmetProvider>
) )

View file

@ -1,7 +0,0 @@
import { createContext } from "react"
export const LanguageContext = createContext({
language: "",
// eslint-disable-next-line @typescript-eslint/no-empty-function
toggleLanguage: () => {},
})

View file

@ -1,63 +0,0 @@
import React from "react"
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"
import { faLanguage } from "@fortawesome/free-solid-svg-icons"
import styled from "styled-components"
import ReactTooltip from "react-tooltip"
import { isMobile } from "react-device-detect"
import theming from "../theming"
import { LanguageContext } from "../LangaugeContext"
const StyledThemeButton = styled.div<StyledThemeButtonProps>`
${theming.styles.navbarButtonStyle}
${(props) =>
props.language == "en"
? ""
: "transform: scaleX(-1);\
-moz-transform: scaleX(-1);\
-webkit-transform: scaleX(-1);\
-ms-transform: scaleX(-1);"};
`
interface StyledThemeButtonProps {
language: string
}
export default class LanguageToggleButton extends React.Component {
languageName = (language) => {
let name = "English"
if (language == "kr") name = "Korean"
return name
}
render() {
return (
<LanguageContext.Consumer>
{({ language, toggleLanguage }) => (
<>
<StyledThemeButton
data-tip
data-for="language"
onClick={toggleLanguage}
language={language}
>
<FontAwesomeIcon icon={faLanguage} />
</StyledThemeButton>
{!isMobile && (
<ReactTooltip
id="language"
type="dark"
effect="solid"
>
<span>
Using {this.languageName(language)} language
</span>
</ReactTooltip>
)}
</>
)}
</LanguageContext.Consumer>
)
}
}

View file

@ -12,7 +12,6 @@ import NavbarData from "../data/NavbarData"
import SearchBox from "./SearchBox" import SearchBox from "./SearchBox"
import Sidebar from "./Sidebar" import Sidebar from "./Sidebar"
import ThemeToggleButton from "./ThemeToggleButton" import ThemeToggleButton from "./ThemeToggleButton"
import LanguageToggleButton from "./LanguageToggleButton"
const StyledNav = styled.nav` const StyledNav = styled.nav`
display: flex; display: flex;
@ -74,7 +73,6 @@ export default class Navbar extends React.Component {
</StyledNavLinks> </StyledNavLinks>
<ThemeToggleButton /> <ThemeToggleButton />
<LanguageToggleButton />
<StyledALink <StyledALink
data-tip data-tip

View file

@ -1,6 +1,7 @@
import React from "react" import React from "react"
import { Link } from "react-router-dom" import { Link } from "react-router-dom"
import styled from "styled-components" import styled from "styled-components"
import theming from "../theming" import theming from "../theming"
import { Item } from "../data/NavbarData" import { Item } from "../data/NavbarData"

View file

@ -1,5 +1,4 @@
/// <reference types="react-scripts" /> /// <reference types="react-scripts" />
declare module "*.md"
interface Document { interface Document {
[fonts: string]: any [fonts: string]: any