diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 875e9f8..1711377 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -14,6 +14,7 @@ "axios": "^1.8.4", "iconify-icon": "^2.3.0", "vue": "^3.5.13", + "vue-i18n": "^11.1.5", "vue-router": "^4.5.0" }, "devDependencies": { @@ -1028,6 +1029,50 @@ "vue": ">=3" } }, + "node_modules/@intlify/core-base": { + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/@intlify/core-base/-/core-base-11.1.5.tgz", + "integrity": "sha512-xGRkISwV/2Trqb8yVQevlHm5roaQqy+75qwUzEQrviaQF0o4c5VDhjBW7WEGEoKFx09HSgq7NkvK/DAyuerTDg==", + "license": "MIT", + "dependencies": { + "@intlify/message-compiler": "11.1.5", + "@intlify/shared": "11.1.5" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/message-compiler": { + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/@intlify/message-compiler/-/message-compiler-11.1.5.tgz", + "integrity": "sha512-YLSBbjD7qUdShe3ZAat9Hnf9E8FRpN6qmNFD/x5Xg5JVXjsks0kJ90Zj6aAuyoppJQA/YJdWZ8/bB7k3dg2TjQ==", + "license": "MIT", + "dependencies": { + "@intlify/shared": "11.1.5", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, + "node_modules/@intlify/shared": { + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/@intlify/shared/-/shared-11.1.5.tgz", + "integrity": "sha512-+I4vRzHm38VjLr/CAciEPJhGYFzWWW4HMTm+6H3WqknXLh0ozNX9oC8ogMUwTSXYR/wGUb1/lTpNziiCH5MybQ==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.8", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.8.tgz", @@ -4540,6 +4585,26 @@ } } }, + "node_modules/vue-i18n": { + "version": "11.1.5", + "resolved": "https://registry.npmjs.org/vue-i18n/-/vue-i18n-11.1.5.tgz", + "integrity": "sha512-XCwuaEA5AF97g1frvH/EI1zI9uo1XKTf2/OCFgts7NvUWRsjlgeHPrkJV+a3gpzai2pC4quZ4AnOHFO8QK9hsg==", + "license": "MIT", + "dependencies": { + "@intlify/core-base": "11.1.5", + "@intlify/shared": "11.1.5", + "@vue/devtools-api": "^6.5.0" + }, + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://github.com/sponsors/kazupon" + }, + "peerDependencies": { + "vue": "^3.0.0" + } + }, "node_modules/vue-router": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.5.0.tgz", diff --git a/frontend/package.json b/frontend/package.json index 628b4b4..06d89e7 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -17,6 +17,7 @@ "axios": "^1.8.4", "iconify-icon": "^2.3.0", "vue": "^3.5.13", + "vue-i18n": "^11.1.5", "vue-router": "^4.5.0" }, "devDependencies": { diff --git a/frontend/src/App.vue b/frontend/src/App.vue index 24d17c5..66cac38 100644 --- a/frontend/src/App.vue +++ b/frontend/src/App.vue @@ -52,6 +52,10 @@ import HeaderNav from "@/components/HeaderNav.vue" a { color: inherit; } - - + .grid { + display: grid; + grid-template-columns: repeat(2, 1fr); + grid-gap: 10px; + grid-auto-rows: minmax(100px, auto); + } \ No newline at end of file diff --git a/frontend/src/assets/_base.scss b/frontend/src/assets/_base.scss index 2588494..f53ec78 100644 --- a/frontend/src/assets/_base.scss +++ b/frontend/src/assets/_base.scss @@ -45,3 +45,14 @@ $themes: ( .font-bigger { font-size: x-large; } + + .marginauto { + margin: auto; + } + + .locale-changer select { + border: 2px solid #7f5be1; + background: #2f27ce; + padding: 10px; + transition: 1s; + } \ No newline at end of file diff --git a/frontend/src/components/88x31.vue b/frontend/src/components/88x31.vue index db45996..1b8d5dc 100644 --- a/frontend/src/components/88x31.vue +++ b/frontend/src/components/88x31.vue @@ -3,7 +3,7 @@