diff --git a/package.json b/package.json
index 0d268e59..9cadfc76 100644
--- a/package.json
+++ b/package.json
@@ -45,12 +45,10 @@
"electron-squirrel-startup": "^1.0.0",
"fastify": "^4.17.0",
"file-saver": "^2.0.5",
- "i18next": "21.10.0",
"immer": "^9.0.19",
"lodash": "^4.17.21",
"react": "^18.2.0",
"react-dom": "^18.2.0",
- "react-i18next": "11.18.6",
"react-router-dom": "^6.4.5",
"use-immer": "^0.8.1",
"zustand": "^4.3.1"
diff --git a/src/components/Login/Login.test.tsx b/src/components/Login/Login.test.tsx
index e63d0466..5dfac359 100644
--- a/src/components/Login/Login.test.tsx
+++ b/src/components/Login/Login.test.tsx
@@ -27,19 +27,6 @@ jest.mock("react-router-dom", () => ({
useNavigate: () => mockedUsedNavigate,
}))
-jest.mock("react-i18next", () => ({
- useTranslation: () => ({
- t: (str: string) => str,
- i18n: {
- changeLanguage: () => new Promise(() => {}),
- },
- }),
- initReactI18next: {
- type: "3rdParty",
- init: () => {},
- },
-}))
-
describe("", () => {
it("should set providerLogin to JiraCloud after clicking on the Jira Cloud Button", async () => {
const { container, getByTestId } = render(
diff --git a/src/components/Login/Login.tsx b/src/components/Login/Login.tsx
index 2bef1728..46b52998 100644
--- a/src/components/Login/Login.tsx
+++ b/src/components/Login/Login.tsx
@@ -1,10 +1,8 @@
-import {Button, Container, Divider, Group, Image, Paper, rgba} from "@mantine/core"
+import { Button, Container, Divider, Image, Paper, rgba } from "@mantine/core"
import { IconCloud, IconServer } from "@tabler/icons-react"
import { ipcRenderer } from "electron"
import { useState } from "react"
-import { useTranslation } from "react-i18next"
import { useNavigate } from "react-router-dom"
-import { LanguageSelector } from "../common/LanguageSelector"
import { ColorSchemeToggle } from "../common/ColorSchemeToggle"
import { JiraCloudLogin } from "./jira-cloud/JiraCloudLogin"
import { JiraServerLogin } from "./jira-server/JiraServerLogin"
@@ -15,7 +13,6 @@ export function Login() {
const navigateTo = useNavigate()
const onSuccess = () => navigateTo("/projectsview")
const goBack = () => setProviderLogin("")
- const { t } = useTranslation("login")
const colorScheme = useColorScheme()
return (
@@ -39,10 +36,7 @@ export function Login() {
borderRadius: theme.radius.lg,
})}
>
-
-
-
-
+
- {t("button.goBack")}
+ Go Back
diff --git a/src/components/common/LanguageSelector.tsx b/src/components/common/LanguageSelector.tsx
deleted file mode 100644
index a16e9efd..00000000
--- a/src/components/common/LanguageSelector.tsx
+++ /dev/null
@@ -1,27 +0,0 @@
-import { Select } from "@mantine/core"
-import { useTranslation } from "react-i18next"
-
-export function LanguageSelector() {
- const { i18n } = useTranslation()
-
- const handleLanguageChange = (language: string | null) => {
- i18n.changeLanguage(language || undefined)
- }
-
- return (
-
- )
-}
diff --git a/src/i18n/i18n.ts b/src/i18n/i18n.ts
deleted file mode 100644
index ae88d6c0..00000000
--- a/src/i18n/i18n.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import i18next from "i18next"
-import { initReactI18next } from "react-i18next"
-
-import backlogViewEn from "../translations/en/backlogView.json"
-import backlogViewDe from "../translations/de/backlogView.json"
-import loginEn from "../translations/en/login.json"
-import loginDe from "../translations/de/login.json"
-import projectViewEn from "../translations/en/projectsView.json"
-import projectViewDe from "../translations/de/projectsView.json"
-
-export const defaultNS = "login"
-
-export const resources = {
- en: {
- backlogView: backlogViewEn,
- login: loginEn,
- projectsView: projectViewEn,
- },
- de: {
- backlogView: backlogViewDe,
- login: loginDe,
- projectsView: projectViewDe,
- },
-} as const
-
-i18next.use(initReactI18next).init({
- lng: "en",
- fallbackLng: "en",
- defaultNS,
- resources,
- compatibilityJSON: "v4",
- returnNull: false,
- ns: ["login", "backlogView", "projectsView"],
-})
diff --git a/src/i18n/i18next.d.ts b/src/i18n/i18next.d.ts
deleted file mode 100644
index f06b9b79..00000000
--- a/src/i18n/i18next.d.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import { resources, defaultNS } from "./i18n"
-
-declare module "i18next" {
- interface CustomTypeOptions {
- defaultNS: typeof defaultNS
- resources: {
- login: typeof resources[en]["login"]
- login: typeof resources[de]["login"]
- projectsView: typeof resources[en]["projectsView"]
- projectsView: typeof resources[de]["projectsView"]
- backlogView: typeof resources[en]["backlogView"]
- backlogView: typeof resources[de]["backlogView"]
- }
- }
-}
diff --git a/src/main.tsx b/src/main.tsx
index e0117108..9a15fc42 100644
--- a/src/main.tsx
+++ b/src/main.tsx
@@ -5,7 +5,6 @@ import { ReactQueryDevtools } from "@tanstack/react-query-devtools"
import { HashRouter } from "react-router-dom"
import { App } from "./App"
import { ThemeProvider } from "./ThemeProvider"
-import "./i18n/i18n"
import '@mantine/core/styles.css';
import '@mantine/dates/styles.css';
diff --git a/src/translations/de/backlogView.json b/src/translations/de/backlogView.json
deleted file mode 100644
index 0967ef42..00000000
--- a/src/translations/de/backlogView.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/src/translations/de/login.json b/src/translations/de/login.json
deleted file mode 100644
index 39e99079..00000000
--- a/src/translations/de/login.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "choseProvider": "Bitte wählen Sie einen Anbieter",
- "url": "Instance URL",
- "urlPlaceholder": "https://jira.example.com",
- "username": "Benutzername",
- "password": "Password",
- "button": {
- "goBack": "Zurück"
- }
-}
diff --git a/src/translations/de/projectsView.json b/src/translations/de/projectsView.json
deleted file mode 100644
index 0967ef42..00000000
--- a/src/translations/de/projectsView.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/src/translations/en/backlogView.json b/src/translations/en/backlogView.json
deleted file mode 100644
index 0967ef42..00000000
--- a/src/translations/en/backlogView.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/src/translations/en/login.json b/src/translations/en/login.json
deleted file mode 100644
index 92431588..00000000
--- a/src/translations/en/login.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "choseProvider": "Please choose a Provider",
- "url": "Instance URL",
- "urlPlaceholder": "https://jira.example.com",
- "username": "Username",
- "password": "Password",
- "button": {
- "goBack": "Go Back"
- }
-}
diff --git a/src/translations/en/projectsView.json b/src/translations/en/projectsView.json
deleted file mode 100644
index 0967ef42..00000000
--- a/src/translations/en/projectsView.json
+++ /dev/null
@@ -1 +0,0 @@
-{}
diff --git a/yarn.lock b/yarn.lock
index 86d43733..285b6dcd 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -289,7 +289,7 @@
dependencies:
regenerator-runtime "^0.14.0"
-"@babel/runtime@^7.12.5", "@babel/runtime@^7.14.5", "@babel/runtime@^7.17.2", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
+"@babel/runtime@^7.12.5", "@babel/runtime@^7.18.3", "@babel/runtime@^7.20.7", "@babel/runtime@^7.5.5", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.2":
version "7.23.2"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.23.2.tgz#062b0ac103261d68a966c4c7baf2ae3e62ec3885"
integrity sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==
@@ -4849,13 +4849,6 @@ html-escaper@^2.0.0:
resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453"
integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==
-html-parse-stringify@^3.0.1:
- version "3.0.1"
- resolved "https://registry.yarnpkg.com/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz#dfc1017347ce9f77c8141a507f233040c59c55d2"
- integrity sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==
- dependencies:
- void-elements "3.1.0"
-
http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.1:
version "4.1.1"
resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz#abe02fcb2985460bf0323be664436ec3476a6d5a"
@@ -4919,13 +4912,6 @@ husky@^8.0.0:
resolved "https://registry.yarnpkg.com/husky/-/husky-8.0.3.tgz#4936d7212e46d1dea28fef29bb3a108872cd9184"
integrity sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==
-i18next@21.10.0:
- version "21.10.0"
- resolved "https://registry.yarnpkg.com/i18next/-/i18next-21.10.0.tgz#85429af55fdca4858345d0e16b584ec29520197d"
- integrity sha512-YeuIBmFsGjUfO3qBmMOc0rQaun4mIpGKET5WDwvu8lU7gvwpcariZLNtL0Fzj+zazcHUrlXHiptcFhBMFaxzfg==
- dependencies:
- "@babel/runtime" "^7.17.2"
-
iconv-lite@0.4.24:
version "0.4.24"
resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
@@ -7155,14 +7141,6 @@ react-dom@^18.2.0:
loose-envify "^1.1.0"
scheduler "^0.23.0"
-react-i18next@11.18.6:
- version "11.18.6"
- resolved "https://registry.yarnpkg.com/react-i18next/-/react-i18next-11.18.6.tgz#e159c2960c718c1314f1e8fcaa282d1c8b167887"
- integrity sha512-yHb2F9BiT0lqoQDt8loZ5gWP331GwctHz9tYQ8A2EIEUu+CcEdjBLQWli1USG3RdWQt3W+jqQLg/d4rrQR96LA==
- dependencies:
- "@babel/runtime" "^7.14.5"
- html-parse-stringify "^3.0.1"
-
react-is@^16.13.1, react-is@^16.7.0:
version "16.13.1"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
@@ -8579,11 +8557,6 @@ vite@^5.0.0:
optionalDependencies:
fsevents "~2.3.3"
-void-elements@3.1.0:
- version "3.1.0"
- resolved "https://registry.yarnpkg.com/void-elements/-/void-elements-3.1.0.tgz#614f7fbf8d801f0bb5f0661f5b2f5785750e4f09"
- integrity sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==
-
w3c-xmlserializer@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-4.0.0.tgz#aebdc84920d806222936e3cdce408e32488a3073"