ImPekaaboo commited on
Commit
5db682b
1 Parent(s): a01f82b

first commit

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. .gitignore +73 -0
  2. .npmrc +1 -0
  3. LICENSE +21 -0
  4. config/api.config.js +34 -0
  5. config/site.config.js +68 -0
  6. i18next-parser.config.js +18 -0
  7. i18next.d.ts +9 -0
  8. next-env.d.ts +5 -0
  9. next-i18next.config.js +14 -0
  10. next.config.js +8 -0
  11. package.json +95 -0
  12. pnpm-lock.yaml +0 -0
  13. postcss.config.js +6 -0
  14. public/android-chrome-192x192.png +0 -0
  15. public/android-chrome-512x512.png +0 -0
  16. public/apple-touch-icon.png +0 -0
  17. public/demo.png +0 -0
  18. public/favicon-16x16.png +0 -0
  19. public/favicon-32x32.png +0 -0
  20. public/favicon.ico +0 -0
  21. public/footer.png +0 -0
  22. public/header.png +0 -0
  23. public/icons/128.png +0 -0
  24. public/icons/256.png +0 -0
  25. public/icons/512.png +0 -0
  26. public/icons/64.png +0 -0
  27. public/icons/ap.png +0 -0
  28. public/icons/chicken.png +0 -0
  29. public/images/fabulous-celebration.png +0 -0
  30. public/images/fabulous-come-back-later.png +0 -0
  31. public/images/fabulous-fireworks.png +0 -0
  32. public/images/fabulous-page-not-found.png +0 -0
  33. public/images/fabulous-rip-2.png +0 -0
  34. public/images/fabulous-wapmire-weekdays.png +0 -0
  35. public/images/step-2-screenshot.png +0 -0
  36. public/locales/de-DE/common.json +122 -0
  37. public/locales/en/common.json +122 -0
  38. public/locales/es/common.json +122 -0
  39. public/locales/hi/common.json +116 -0
  40. public/locales/id/common.json +123 -0
  41. public/locales/tr-TR/common.json +120 -0
  42. public/locales/zh-CN/common.json +118 -0
  43. public/locales/zh-TW/common.json +116 -0
  44. public/players/iina.png +0 -0
  45. public/players/nplayer.png +0 -0
  46. public/players/potplayer.png +0 -0
  47. public/players/vlc.png +0 -0
  48. public/site.webmanifest +19 -0
  49. renovate.json +17 -0
  50. src/components/Auth.tsx +63 -0
.gitignore ADDED
@@ -0,0 +1,73 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2
+
3
+ # dependencies
4
+ /node_modules
5
+ /.pnp
6
+ .pnp.js
7
+
8
+ # testing
9
+ /coverage
10
+
11
+ # next.js
12
+ /.next/
13
+ /out/
14
+
15
+ # production
16
+ /build
17
+
18
+ # misc
19
+ .DS_Store
20
+ *.pem
21
+
22
+ # debug
23
+ npm-debug.log*
24
+ yarn-debug.log*
25
+ yarn-error.log*
26
+
27
+ # local env files
28
+ .env.local
29
+ .env.development.local
30
+ .env.test.local
31
+ .env.production.local
32
+
33
+ # vercel
34
+ .vercel
35
+
36
+ # redis dump
37
+ dump.rdb
38
+
39
+ # General
40
+ .DS_Store
41
+ .AppleDouble
42
+ .LSOverride
43
+
44
+ # Icon must end with two \r
45
+ Icon
46
+
47
+
48
+ # Thumbnails
49
+ ._*
50
+
51
+ # Files that might appear in the root of a volume
52
+ .DocumentRevisions-V100
53
+ .fseventsd
54
+ .Spotlight-V100
55
+ .TemporaryItems
56
+ .Trashes
57
+ .VolumeIcon.icns
58
+ .com.apple.timemachine.donotpresent
59
+
60
+ # Directories potentially created on remote AFP share
61
+ .AppleDB
62
+ .AppleDesktop
63
+ Network Trash Folder
64
+ Temporary Items
65
+ .apdisk
66
+
67
+ .vscode/*
68
+
69
+ # Local History for Visual Studio Code
70
+ .history/
71
+
72
+ # Built Visual Studio Code Extensions
73
+ *.vsix
.npmrc ADDED
@@ -0,0 +1 @@
 
 
1
+ strict-peer-dependencies=false
LICENSE ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ MIT License
2
+
3
+ Copyright (c) 2021 Spencer Woo
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
config/api.config.js ADDED
@@ -0,0 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * This file contains the configuration for the API endpoints and tokens we use.
3
+ *
4
+ * - If you are a OneDrive International user, you would not have to change anything here.
5
+ * - If you are not the admin of your OneDrive for Business account, you may need to define your own clientId/clientSecret,
6
+ * check documentation for more details.
7
+ * - If you are using a E5 Subscription OneDrive for Business account, the direct links of your files are not the same here.
8
+ * In which case you would need to change directLinkRegex.
9
+ */
10
+ module.exports = {
11
+ // The clientId and clientSecret are used to authenticate the user with Microsoft Graph API using OAuth. You would
12
+ // not need to change anything here if you can authenticate with your personal Microsoft account with OneDrive International.
13
+ clientId: '240fc1d2-51ec-41a1-b482-8019c272f7de',
14
+ obfuscatedClientSecret: 'U2FsdGVkX19/yeKIAt4R9Q4mgxVxFNHSbN4kjbM9rlm4bakBdhNA2Iq4NADdNQSsyOqZzqV1eQefjYfUxP/OSw==',
15
+
16
+ // The redirectUri is the URL that the user will be redirected to after they have authenticated with Microsoft Graph API.
17
+ // Likewise, you would not need to change redirectUri if you are using your personal Microsoft account with OneDrive International.
18
+ redirectUri: 'http://localhost',
19
+
20
+ // These are the URLs of the OneDrive API endpoints. You would not need to change anything here if you are using OneDrive International
21
+ // or E5 Subscription OneDrive for Business. You may need to change these if you are using OneDrive 世纪互联.
22
+ authApi: 'https://login.microsoftonline.com/common/oauth2/v2.0/token',
23
+ driveApi: 'https://graph.microsoft.com/v1.0/me/drive',
24
+
25
+ // The scope we require are listed here, in most cases you would not need to change this as well.
26
+ scope: 'user.read files.read.all offline_access',
27
+
28
+ // Cache-Control header, check Vercel documentation for more details. The default settings imply:
29
+ // - max-age=0: no cache for your browser
30
+ // - s-maxage=0: cache is fresh for 60 seconds on the edge, after which it becomes stale
31
+ // - stale-while-revalidate: allow serving stale content while revalidating on the edge
32
+ // https://vercel.com/docs/concepts/edge-network/caching
33
+ cacheControlHeader: 'max-age=0, s-maxage=60, stale-while-revalidate',
34
+ }
config/site.config.js ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * This file contains the configuration used for customising the website, such as the folder to share,
3
+ * the title, used Google fonts, site icons, contact info, etc.
4
+ */
5
+ module.exports = {
6
+ // This is what we use to identify who you are when you are initialising the website for the first time.
7
+ // Make sure this is exactly the same as the email address you use to sign into your Microsoft account.
8
+ // You can also put this in your Vercel's environment variable 'NEXT_PUBLIC_USER_PRINCIPLE_NAME' if you worry about
9
+ // your email being exposed in public.
10
+ userPrincipalName: process.env.NEXT_PUBLIC_USER_PRINCIPLE_NAME || '',
11
+
12
+ // [OPTIONAL] This is the website icon to the left of the title inside the navigation bar. It should be placed under the
13
+ // /public directory of your GitHub project (not your OneDrive folder!), and referenced here by its relative path to /public.
14
+ icon: '/icons/ap.png',
15
+
16
+ // Prefix for KV Storage
17
+ kvPrefix: process.env.KV_PREFIX || '',
18
+
19
+ // The name of your website. Present alongside your icon.
20
+ title: "AyamPenyet's Drive",
21
+
22
+ // The folder that you are to share publicly with onedrive-vercel-index. Use '/' if you want to share your root folder.
23
+ baseDirectory: '/Public',
24
+
25
+ // [OPTIONAL] This represents the maximum number of items that one directory lists, pagination supported.
26
+ // Do note that this is limited up to 200 items by the upstream OneDrive API.
27
+ maxItems: 100,
28
+
29
+ // [OPTIONAL] We use Google Fonts natively for font customisations.
30
+ // You can check and generate the required links and names at https://fonts.google.com.
31
+ // googleFontSans - the sans serif font used in onedrive-vercel-index.
32
+ googleFontSans: 'Inter',
33
+ // googleFontMono - the monospace font used in onedrive-vercel-index.
34
+ googleFontMono: 'Fira Mono',
35
+ // googleFontLinks - an array of links for referencing the google font assets.
36
+ googleFontLinks: ['https://fonts.googleapis.com/css2?family=Fira+Mono&family=Inter:wght@400;500;700&display=swap'],
37
+
38
+ // [OPTIONAL] The footer component of your website. You can write HTML here, but you need to escape double
39
+ // quotes - changing " to \". You can write anything here, and if you like badges, generate some with https://shields.io
40
+ footer:
41
+ 'Powered by <a href="https://github.com/ImPeekaboo/onedrive-vercel-index" target="_blank" rel="noopener noreferrer">onedrive-vercel-index</a>. 🥱 Ayam Penyet.',
42
+
43
+ // [OPTIONAL] This is where you specify the folders that are password protected. It is an array of paths pointing to all
44
+ // the directories in which you have .password set. Check the documentation for details.
45
+ protectedRoutes: ['/🔞 Private',],
46
+
47
+ // [OPTIONAL] Use "" here if you want to remove this email address from the nav bar.
48
+ email: '',
49
+
50
+ // [OPTIONAL] This is an array of names and links for setting your social information and links.
51
+ // In the latest update, all brand icons inside font awesome is supported and the icon to render is based on the name
52
+ // you provide. See the documentation for details.
53
+ links: [
54
+ {
55
+ name: 'Discord',
56
+ link: 'http://discordapp.com/users/253478920626634752',
57
+ },
58
+ {
59
+ name: 'GitHub',
60
+ link: 'https://github.com/ImPeekaboo',
61
+ },
62
+ ],
63
+
64
+ // This is a day.js-style datetime format string to format datetimes in the app. Ref to
65
+ // https://day.js.org/docs/en/display/format for detailed specification. The default value is ISO 8601 full datetime
66
+ // without timezone and replacing T with space.
67
+ datetimeFormat: 'YYYY-MM-DD HH:mm:ss',
68
+ }
i18next-parser.config.js ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const path = require('path')
2
+
3
+ const { i18n, localePath } = require('./next-i18next.config')
4
+
5
+ module.exports = {
6
+ createOldCatalogs: false,
7
+ defaultNamespace: 'common',
8
+ defaultValue: (lng, _ns, key) => (lng === i18n.defaultLocale ? key : ''),
9
+ keySeparator: false,
10
+ namespaceSeparator: false,
11
+ pluralSeparator: '——',
12
+ contextSeparator: '——',
13
+ lineEnding: 'lf',
14
+ locales: i18n.locales,
15
+ output: path.join(localePath, '$LOCALE/$NAMESPACE.json'),
16
+ input: ['**/*.{ts,tsx}', '!**/node_modules/**'],
17
+ sort: true
18
+ }
i18next.d.ts ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ import 'i18next'
2
+
3
+ declare module 'i18next' {
4
+ interface CustomTypeOptions {
5
+ // This is set to prevent i18next's t function to return null
6
+ // https://github.com/i18next/next-i18next/issues/2038
7
+ returnNull: false
8
+ }
9
+ }
next-env.d.ts ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ /// <reference types="next" />
2
+ /// <reference types="next/image-types/global" />
3
+
4
+ // NOTE: This file should not be edited
5
+ // see https://nextjs.org/docs/basic-features/typescript for more information.
next-i18next.config.js ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const path = require('path')
2
+
3
+ module.exports = {
4
+ i18n: {
5
+ defaultLocale: 'en',
6
+ locales: ['de-DE', 'en', 'es', 'zh-CN', 'hi', 'id', 'tr-TR', 'zh-TW']
7
+ },
8
+ localePath: path.resolve('public/locales'),
9
+ reloadOnPrerender: process.env.NODE_ENV === 'development',
10
+ keySeparator: false,
11
+ namespaceSeparator: false,
12
+ pluralSeparator: '——',
13
+ contextSeparator: '——'
14
+ }
next.config.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
 
1
+ const { i18n } = require('./next-i18next.config')
2
+
3
+ module.exports = {
4
+ i18n,
5
+ reactStrictMode: true,
6
+ // Required by Next i18n with API routes, otherwise API routes 404 when fetching without trailing slash
7
+ trailingSlash: true
8
+ }
package.json ADDED
@@ -0,0 +1,95 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "onedrive-vercel-index",
3
+ "version": "0.1.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "dev": "next dev",
7
+ "build": "next build",
8
+ "start": "next start",
9
+ "lint": "next lint",
10
+ "format": "prettier 'src/**/*.{js,ts,jsx,tsx}' --write",
11
+ "extract": "i18next"
12
+ },
13
+ "dependencies": {
14
+ "@fortawesome/fontawesome-svg-core": "^6.2.1",
15
+ "@fortawesome/free-brands-svg-icons": "^6.2.1",
16
+ "@fortawesome/free-regular-svg-icons": "^6.2.1",
17
+ "@fortawesome/free-solid-svg-icons": "^6.2.1",
18
+ "@fortawesome/react-fontawesome": "^0.2.0",
19
+ "@headlessui/react": "^1.7.8",
20
+ "@tailwindcss/line-clamp": "^0.4.2",
21
+ "@vercel/analytics": "^1.0.1",
22
+ "awesome-debounce-promise": "^2.1.0",
23
+ "axios": "^1.2.6",
24
+ "cors": "^2.8.5",
25
+ "crypto-js": "^4.1.1",
26
+ "csstype": "^3.1.1",
27
+ "dayjs": "^1.11.7",
28
+ "emoji-regex": "^10.2.1",
29
+ "i18next": "^22.4.9",
30
+ "ioredis": "^5.3.0",
31
+ "jszip": "^3.10.1",
32
+ "mpegts.js": "^1.7.2",
33
+ "next": "^13.1.6",
34
+ "next-i18next": "^13.0.3",
35
+ "nextjs-progressbar": "^0.0.16",
36
+ "plyr-react": "^5.1.2",
37
+ "preview-office-docs": "^1.0.2",
38
+ "react": "^18.2.0",
39
+ "react-async-hook": "^4.0.0",
40
+ "react-audio-player": "^0.17.0",
41
+ "react-cookie": "^4.1.1",
42
+ "react-copy-to-clipboard": "^5.0.3",
43
+ "react-dom": "^18.2.0",
44
+ "react-hot-toast": "^2.4.0",
45
+ "react-hotkeys-hook": "^4.3.3",
46
+ "react-i18next": "^12.1.4",
47
+ "react-markdown": "^8.0.5",
48
+ "react-reader": "^1.0.2",
49
+ "react-syntax-highlighter": "^15.5.0",
50
+ "react-use-system-theme": "^1.1.1",
51
+ "rehype-katex": "^6.0.2",
52
+ "rehype-raw": "^6.0.0",
53
+ "remark-gfm": "^3.0.1",
54
+ "remark-math": "^5.1.1",
55
+ "swr": "^2.0.3",
56
+ "use-clipboard-copy": "^0.2.0",
57
+ "use-constant": "^1.1.1"
58
+ },
59
+ "devDependencies": {
60
+ "@types/cors": "^2.8.13",
61
+ "@types/crypto-js": "^4.0.2",
62
+ "@types/node": "18.16.18",
63
+ "@types/react": "18.2.14",
64
+ "@types/react-copy-to-clipboard": "^5.0.4",
65
+ "@types/react-dom": "^18.0.10",
66
+ "@types/react-pdf": "^6.2.0",
67
+ "@types/react-syntax-highlighter": "^15.5.6",
68
+ "autoprefixer": "^10.4.13",
69
+ "eslint": "8.43.0",
70
+ "eslint-config-next": "13.4.7",
71
+ "eslint-config-prettier": "^8.6.0",
72
+ "i18next-parser": "^7.6.0",
73
+ "postcss": "^8.4.21",
74
+ "prettier": "^2.8.3",
75
+ "prettier-plugin-tailwindcss": "^0.2.2",
76
+ "tailwindcss": "^3.2.4",
77
+ "typescript": "5.1.3"
78
+ },
79
+ "prettier": {
80
+ "printWidth": 120,
81
+ "arrowParens": "avoid",
82
+ "singleQuote": true,
83
+ "semi": false,
84
+ "plugins": [
85
+ "prettier-plugin-tailwindcss"
86
+ ]
87
+ },
88
+ "eslintConfig": {
89
+ "extends": [
90
+ "next",
91
+ "next/core-web-vitals",
92
+ "prettier"
93
+ ]
94
+ }
95
+ }
pnpm-lock.yaml ADDED
The diff for this file is too large to render. See raw diff
 
postcss.config.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ module.exports = {
2
+ plugins: {
3
+ tailwindcss: {},
4
+ autoprefixer: {},
5
+ }
6
+ }
public/android-chrome-192x192.png ADDED
public/android-chrome-512x512.png ADDED
public/apple-touch-icon.png ADDED
public/demo.png ADDED
public/favicon-16x16.png ADDED
public/favicon-32x32.png ADDED
public/favicon.ico ADDED
public/footer.png ADDED
public/header.png ADDED
public/icons/128.png ADDED
public/icons/256.png ADDED
public/icons/512.png ADDED
public/icons/64.png ADDED
public/icons/ap.png ADDED
public/icons/chicken.png ADDED
public/images/fabulous-celebration.png ADDED
public/images/fabulous-come-back-later.png ADDED
public/images/fabulous-fireworks.png ADDED
public/images/fabulous-page-not-found.png ADDED
public/images/fabulous-rip-2.png ADDED
public/images/fabulous-wapmire-weekdays.png ADDED
public/images/step-2-screenshot.png ADDED
public/locales/de-DE/common.json ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——one": "- zeigt {{count}} Seite",
3
+ "- showing {{count}} page(s) ——other": "- zeigt {{count}} Seiten",
4
+ "{{count}} item(s)——one": "{{count}} Element",
5
+ "{{count}} item(s)——other": "{{count}} Elemente",
6
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> Wenn du nicht der Besitzer dieser Website bist, stoppe jetzt, da das Fortsetzen dieses Prozesses deine persönlichen Dateien in OneDrive offenlegen könnte.",
7
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> Wenn du keine REDIS_URL in deiner Vercel env Variable angegeben hast, gehe zu <3>Upstash</3> und initialisiere eine. Doku: <6>Vercel Integration - Upstash</6>.",
8
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> Wenn du etwas vermisst oder falsch siehst, musst du <3>/config/api.config.js</3> neu konfigurieren und diese Instanz neu bereitstellen.",
9
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ Du kannst nun zum nächsten Schritt übergehen: Fordere dein Access-Token und Refresh-Token an.",
10
+ "❌ No valid code extracted.": "❌ Kein gültiger Code extrahiert.",
11
+ "Acquired access_token: ": "Erworbenes access_token: ",
12
+ "Acquired refresh_token: ": "Erworbenes refresh_token: ",
13
+ "Actions": "Aktionen",
14
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "Eine Autorisierung ist erforderlich, da kein gültiges <2>access_token</2> oder <5>refresh_token</5> auf dieser bereitgestellten Instanz vorhanden ist. Prüfe die folgenden Konfigurationen, bevor du mit der Autorisierung von onedrive-vercel-index mit deinem eigenen Microsoft-Konto fortfährst.",
15
+ "Cancel": "Abbrechen",
16
+ "Cannot preview {{path}}": "{{path}} kann nicht angezeigt werden",
17
+ "Change the raw file direct link to a URL ending with the extension of the file.": "Ändere den direkten Link zur rohen Datei in eine URL, die mit der Dateierweiterung endet.",
18
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "Sieh dir <2>Microsofts offizielle Erklärung</2> zur Fehlermeldung an.",
19
+ "Clear all": "Alles entfernen",
20
+ "Clear all tokens?": "Alle Tokens löschen?",
21
+ "Cleared all tokens": "Alle Tokens gelöscht",
22
+ "clearing them means that you will need to re-enter the passwords again.": "Wenn du sie löschst, musst du die Passwörter erneut eingeben.",
23
+ "Copied direct link to clipboard.": "Direkten Link in die Zwischenablage kopiert.",
24
+ "Copied folder permalink.": "Permalink des Ordners kopiert.",
25
+ "Copied raw file permalink.": "Permalink der Rohdatei kopiert.",
26
+ "Copy direct link": "Direkten Link kopieren",
27
+ "Copy folder permalink": "Permalink des Ordners kopieren",
28
+ "Copy raw file permalink": "Permalink der Rohdatei kopieren",
29
+ "Copy the permalink to the file to the clipboard": "Kopiere den Permalink der Datei in die Zwischenablage",
30
+ "Customise direct link": "Direkten Link anpassen",
31
+ "Customise link": "Link anpassen",
32
+ "Customised": "Angepasst",
33
+ "Customised and encoded": "Angepasst und codiert",
34
+ "Copy selected files permalink": "Permalink der ausgewählten Dateien kopieren",
35
+ "Copied selected files permalink.": "Permalink der ausgewählten Dateien kopiert.",
36
+ "Default": "Standard",
37
+ "Do not pretend to be the site owner": "Gib dich nicht als der Seitenbesitzer aus",
38
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "Keine Sorge, nachdem sie gespeichert sind, kümmert sich onedrive-vercel-index um Token-Aktualisierungen und Updates, nachdem deine Seite live geht.",
39
+ "Download": "Herunterladen",
40
+ "Download file": "Datei herunterladen",
41
+ "Download folder": "Ordner herunterladen",
42
+ "Download selected files": "Ausgewählte Dateien herunterladen",
43
+ "Download the file directly through OneDrive": "Die Datei direkt über OneDrive herunterladen",
44
+ "Downloading {{progress}}%": "Herunterladen {{progress}}%",
45
+ "Downloading folder, refresh page to cancel": "Ordner wird heruntergeladen, Seite aktualisieren zum Abbrechen",
46
+ "Downloading selected files, refresh page to cancel": "Ausgewählte Dateien werden heruntergeladen, Seite aktualisieren zum Abbrechen",
47
+ "Downloading selected files...": "Ausgewählte Dateien werden heruntergeladen...",
48
+ "Email": "E-Mail",
49
+ "Enter Password": "Passwort eingeben",
50
+ "Error storing the token": "Fehler beim Speichern des Tokens",
51
+ "Error validating identify, restart": "Fehler bei der Validierung der Identität, Neustart",
52
+ "Error: {{message}}": "Fehler: {{message}}",
53
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "Fehler beim Herunterladen des Ordners {{path}}: {{status}} {{message}} Fortgesetzt, um fortzufahren.",
54
+ "Failed to download folder.": "Fehler beim Herunterladen des Ordners.",
55
+ "Failed to download selected files.": "Fehler beim Herunterladen der ausgewählten Dateien.",
56
+ "File is empty.": "Datei ist leer.",
57
+ "File size": "Dateigröße",
58
+ "Filename": "Dateiname",
59
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "Letzter Schritt, klick auf den Button unten, um diese Tokens dauerhaft zu speichern, bevor sie nach {{minutes}} Minuten und {{seconds}} Sekunden ablaufen.",
60
+ "Finished downloading folder.": "Ordner-Download abgeschlossen.",
61
+ "Finished downloading selected files.": "Ausgewählte Dateien erfolgreich heruntergeladen.",
62
+ "Get tokens": "Tokens abrufen",
63
+ "Grid": "Gitter",
64
+ "Hashes": "Hashes",
65
+ "Home": "Start",
66
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "Falls du zurück zum Start gehst und immer noch die Willkommensseite siehst, die dir sagt, du sollst dich neu authentifizieren, ",
67
+ "If you know the password, please enter it below.": "Wenn du das Passwort kennst, gib es bitte unten ein.",
68
+ "Last modified": "Zuletzt geändert",
69
+ "Last Modified": "Zuletzt geändert",
70
+ "Last modified:": "Zuletzt geändert:",
71
+ "List": "Liste",
72
+ "Load more": "Mehr laden",
73
+ "Loading ...": "Laden ...",
74
+ "Loading EPUB ...": "Lade EPUB ...",
75
+ "Loading file content...": "Dateiinhalt wird geladen...",
76
+ "Loading FLV extension...": "Lade FLV-Erweiterung...",
77
+ "Logout": "Ausloggen",
78
+ "MIME type": "MIME-Typ",
79
+ "Name": "Name",
80
+ "No more files": "Keine weiteren Dateien",
81
+ "Nothing here.": "Nichts zu sehen hier.",
82
+ "OAuth Step 1 - {{title}}": "OAuth Schritt 1 - {{title}}",
83
+ "OAuth Step 2 - {{title}}": "OAuth Schritt 2 - {{title}}",
84
+ "OAuth Step 3 - {{title}}": "OAuth Schritt 3 - {{title}}",
85
+ "of {{count}} file(s) -——loaded——one": "{{count}} Datei geladen -",
86
+ "of {{count}} file(s) -——loaded——other": "{{count}} Dateien geladen -",
87
+ "of {{count}} file(s) -——loading——one": "... Datei wird geladen -",
88
+ "of {{count}} file(s) -——loading——other": "... Dateien werden geladen -",
89
+ "Oops, that's a <1>four-oh-four</1>.": "Ups, das ist ein <1>vier-null-vier</1>.",
90
+ "Open URL": "URL öffnen",
91
+ "Open URL{{url}}": "URL öffnen{{url}}",
92
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "Drücke <2>F12</2> und öffne die Entwicklertools für mehr Details, oder such Hilfe in den <6>onedrive-vercel-index Diskussionen</6>.",
93
+ "Proceed to OAuth": "Weiter zu OAuth",
94
+ "Requesting tokens": "Tokens anfordern",
95
+ "Restart": "Neustart",
96
+ "revisit home and do a hard refresh.": "geh zurück zur Startseite und mach einen harten Refresh.",
97
+ "Search ...": "Suche ...",
98
+ "Select all files": "Alle Dateien auswählen",
99
+ "Select file": "Eine Datei auswählen",
100
+ "Select files": "Dateien auswählen",
101
+ "Size": "Größe",
102
+ "Step 1/3: Preparations": "Schritt 1/3: Vorbereitungen",
103
+ "Step 2/3: Get authorisation code": "Schritt 2/3: Autorisierungscode erhalten",
104
+ "Step 3/3: Get access and refresh tokens": "Schritt 3/3: Zugriffs- und Aktualisierungstokens erhalten",
105
+ "Store tokens": "Tokens speichern",
106
+ "Stored! Going home...": "Gespeichert! Zurück zur Startseite...",
107
+ "Storing tokens": "Tokens speichern",
108
+ "Success! The API returned what we needed.": "Erfolg! Die API hat geliefert, was wir brauchten.",
109
+ "The authorisation code extracted is:": "Der extrahierte Autorisierungscode ist:",
110
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "Der OAuth-Link zum Erhalten des Autorisierungscodes wurde erstellt. Klicke auf den Link oben, um den <2>Autorisierungscode</2> zu bekommen. Dein Browser wird einen neuen Tab zur Microsoft-Account-Anmeldeseite öffnen. Nach dem Einloggen und Authentifizieren mit deinem Microsoft-Konto wirst du auf eine leere Seite auf localhost weitergeleitet. Füge die <6>gesamte umgeleitete URL</6> unten ein.",
111
+ "These tokens are used to authenticate yourself into password protected folders, ": "Diese Tokens werden verwendet, um dich in passwortgeschützte Ordner zu authentifizieren, ",
112
+ "These tokens may take a few seconds to populate after you click the button below. ": "Es kann ein paar Sekunden dauern, bis diese Tokens nach dem Klicken auf den Button unten angezeigt werden. ",
113
+ "This route (the folder itself and the files inside) is password protected. ": "Dieser Pfad (der Ordner selbst und die Dateien darin) ist passwortgeschützt. ",
114
+ "Unavailable": "Nicht verfügbar",
115
+ "URL encoded": "URL kodiert",
116
+ "Waiting for code...": "Warte auf Code...",
117
+ "Weibo": "Weibo",
118
+ "Welcome to your new onedrive-vercel-index 🎉": "Willkommen bei deinem neuen Onedrive-vercel-index 🎉",
119
+ "What is this?": "Was ist das?",
120
+ "Where is the auth code? Did you follow step 2 you silly donut?": "Wo ist der Auth-Code? Hast du Schritt 2 befolgt, du alberner Donut?",
121
+ "Whoops, looks like we got a problem: {{error}}.": "Ups, sieht aus als hätten wir ein Problem: {{error}}."
122
+ }
public/locales/en/common.json ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——one": "- showing {{count}} page ",
3
+ "- showing {{count}} page(s) ——other": "- showing {{count}} pages ",
4
+ "{{count}} item(s)——one": "{{count}} item",
5
+ "{{count}} item(s)——other": "{{count}} items",
6
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.",
7
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.",
8
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.",
9
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ You can now proceed onto the next step: requesting your access token and refresh token.",
10
+ "❌ No valid code extracted.": "❌ No valid code extracted.",
11
+ "Acquired access_token: ": "Acquired access_token: ",
12
+ "Acquired refresh_token: ": "Acquired refresh_token: ",
13
+ "Actions": "Actions",
14
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.",
15
+ "Cancel": "Cancel",
16
+ "Cannot preview {{path}}": "Cannot preview {{path}}",
17
+ "Change the raw file direct link to a URL ending with the extension of the file.": "Change the raw file direct link to a URL ending with the extension of the file.",
18
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "Check out <2>Microsoft's official explanation</2> on the error message.",
19
+ "Clear all": "Clear all",
20
+ "Clear all tokens?": "Clear all tokens?",
21
+ "Cleared all tokens": "Cleared all tokens",
22
+ "clearing them means that you will need to re-enter the passwords again.": "clearing them means that you will need to re-enter the passwords again.",
23
+ "Copied direct link to clipboard.": "Copied direct link to clipboard.",
24
+ "Copied folder permalink.": "Copied folder permalink.",
25
+ "Copied raw file permalink.": "Copied raw file permalink.",
26
+ "Copy direct link": "Copy direct link",
27
+ "Copy folder permalink": "Copy folder permalink",
28
+ "Copy raw file permalink": "Copy raw file permalink",
29
+ "Copy the permalink to the file to the clipboard": "Copy the permalink to the file to the clipboard",
30
+ "Customise direct link": "Customise direct link",
31
+ "Customise link": "Customise link",
32
+ "Customised": "Customised",
33
+ "Customised and encoded": "Customised and encoded",
34
+ "Copy selected files permalink": "Copy selected files permalink",
35
+ "Copied selected files permalink.": "Copied selected files permalink.",
36
+ "Default": "Default",
37
+ "Do not pretend to be the site owner": "Do not pretend to be the site owner",
38
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.",
39
+ "Download": "Download",
40
+ "Download file": "Download file",
41
+ "Download folder": "Download folder",
42
+ "Download selected files": "Download selected files",
43
+ "Download the file directly through OneDrive": "Download the file directly through OneDrive",
44
+ "Downloading {{progress}}%": "Downloading {{progress}}%",
45
+ "Downloading folder, refresh page to cancel": "Downloading folder, refresh page to cancel",
46
+ "Downloading selected files, refresh page to cancel": "Downloading selected files, refresh page to cancel",
47
+ "Downloading selected files...": "Downloading selected files...",
48
+ "Email": "Email",
49
+ "Enter Password": "Enter Password",
50
+ "Error storing the token": "Error storing the token",
51
+ "Error validating identify, restart": "Error validating identify, restart",
52
+ "Error: {{message}}": "Error: {{message}}",
53
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.",
54
+ "Failed to download folder.": "Failed to download folder.",
55
+ "Failed to download selected files.": "Failed to download selected files.",
56
+ "File is empty.": "File is empty.",
57
+ "File size": "File size",
58
+ "Filename": "Filename",
59
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ",
60
+ "Finished downloading folder.": "Finished downloading folder.",
61
+ "Finished downloading selected files.": "Finished downloading selected files.",
62
+ "Get tokens": "Get tokens",
63
+ "Grid": "Grid",
64
+ "Hashes": "Hashes",
65
+ "Home": "Home",
66
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "If you go back home and still see the welcome page telling you to re-authenticate, ",
67
+ "If you know the password, please enter it below.": "If you know the password, please enter it below.",
68
+ "Last modified": "Last modified",
69
+ "Last Modified": "Last Modified",
70
+ "Last modified:": "Last modified:",
71
+ "List": "List",
72
+ "Load more": "Load more",
73
+ "Loading ...": "Loading ...",
74
+ "Loading EPUB ...": "Loading EPUB ...",
75
+ "Loading file content...": "Loading file content...",
76
+ "Loading FLV extension...": "Loading FLV extension...",
77
+ "Logout": "Logout",
78
+ "MIME type": "MIME type",
79
+ "Name": "Name",
80
+ "No more files": "No more files",
81
+ "Nothing here.": "Nothing here.",
82
+ "OAuth Step 1 - {{title}}": "OAuth Step 1 - {{title}}",
83
+ "OAuth Step 2 - {{title}}": "OAuth Step 2 - {{title}}",
84
+ "OAuth Step 3 - {{title}}": "OAuth Step 3 - {{title}}",
85
+ "of {{count}} file(s) -——loaded——one": "of {{count}} file -",
86
+ "of {{count}} file(s) -——loaded——other": "of {{count}} files -",
87
+ "of {{count}} file(s) -——loading——one": "of ... file(s) -",
88
+ "of {{count}} file(s) -——loading——other": "of ... file(s) -",
89
+ "Oops, that's a <1>four-oh-four</1>.": "Oops, that's a <1>four-oh-four</1>.",
90
+ "Open URL": "Open URL",
91
+ "Open URL{{url}}": "Open URL{{url}}",
92
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.",
93
+ "Proceed to OAuth": "Proceed to OAuth",
94
+ "Requesting tokens": "Requesting tokens",
95
+ "Restart": "Restart",
96
+ "revisit home and do a hard refresh.": "revisit home and do a hard refresh.",
97
+ "Search ...": "Search ...",
98
+ "Select all files": "Select all files",
99
+ "Select file": "Select file",
100
+ "Select files": "Select files",
101
+ "Size": "Size",
102
+ "Step 1/3: Preparations": "Step 1/3: Preparations",
103
+ "Step 2/3: Get authorisation code": "Step 2/3: Get authorisation code",
104
+ "Step 3/3: Get access and refresh tokens": "Step 3/3: Get access and refresh tokens",
105
+ "Store tokens": "Store tokens",
106
+ "Stored! Going home...": "Stored! Going home...",
107
+ "Storing tokens": "Storing tokens",
108
+ "Success! The API returned what we needed.": "Success! The API returned what we needed.",
109
+ "The authorisation code extracted is:": "The authorisation code extracted is:",
110
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.",
111
+ "These tokens are used to authenticate yourself into password protected folders, ": "These tokens are used to authenticate yourself into password protected folders, ",
112
+ "These tokens may take a few seconds to populate after you click the button below. ": "These tokens may take a few seconds to populate after you click the button below. ",
113
+ "This route (the folder itself and the files inside) is password protected. ": "This route (the folder itself and the files inside) is password protected. ",
114
+ "Unavailable": "Unavailable",
115
+ "URL encoded": "URL encoded",
116
+ "Waiting for code...": "Waiting for code...",
117
+ "Weibo": "Weibo",
118
+ "Welcome to your new onedrive-vercel-index 🎉": "Welcome to your new onedrive-vercel-index 🎉",
119
+ "What is this?": "What is this?",
120
+ "Where is the auth code? Did you follow step 2 you silly donut?": "Where is the auth code? Did you follow step 2 you silly donut?",
121
+ "Whoops, looks like we got a problem: {{error}}.": "Whoops, looks like we got a problem: {{error}}."
122
+ }
public/locales/es/common.json ADDED
@@ -0,0 +1,122 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——one": "- mostrando {{count}} página ",
3
+ "- showing {{count}} page(s) ——other": "- mostrando{{count}} páginas ",
4
+ "{{count}} item(s)——one": "{{count}} elemento",
5
+ "{{count}} item(s)——other": "{{count}} elementos",
6
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> Si no eres el propietario de este sitio web, detente ahora, ya que continuar con este proceso puede exponer tus archivos personales en OneDrive.",
7
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> Si no has especificado una URL REDIS dentro de tu variable Vercel env, ve a inicializar una en <3>Upstash</3>. Documentación: <6>Integración Vercel - Upstash</6>.",
8
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> Si ves algo que falte o esté incorrecto, debes reconfigurar <3>/config/api.config.js</3> y volver a lanzar esta instancia.",
9
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ Ahora puedes avanzar al siguiente paso: solicitar tu token de acceso y token de actualización.",
10
+ "❌ No valid code extracted.": "❌ No se ha extraído ningún código válido.",
11
+ "Acquired access_token: ": "access_token adquirido: ",
12
+ "Acquired refresh_token: ": "refresh_token adquirido: ",
13
+ "Actions": "Acciones",
14
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "Autorización requerida ya que no hay un <2>token de acceso</2> válido o un <5>token de actualización</5> presente en esta instancia desplegada. Verifica las siguientes configuraciones antes de continuar autorizando onedrive-vercel-index con tu propia cuenta de Microsoft.",
15
+ "Cancel": "Cancelar",
16
+ "Cannot preview {{path}}": "No se puede previsualizar {{path}}",
17
+ "Change the raw file direct link to a URL ending with the extension of the file.": "Cambia el enlace directo del archivo sin formato a una URL que termine con la extensión del archivo.",
18
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "Consulta la <2>explicación oficial de Microsoft</2> sobre el mensaje de error.",
19
+ "Clear all": "Limpiar todo",
20
+ "Clear all tokens?": "¿Borrar todos los tokens?",
21
+ "Cleared all tokens": "Se han borrado todos los tokens",
22
+ "clearing them means that you will need to re-enter the passwords again.": "borrarlos significa que tendrás que volver a ingresar las contraseñas de nuevo.",
23
+ "Copied direct link to clipboard.": "Enlace directo copiado al portapapeles.",
24
+ "Copied folder permalink.": "Permalink de la carpeta copiado.",
25
+ "Copied raw file permalink.": "Permalink del archivo sin formato copiado.",
26
+ "Copy direct link": "Copiar enlace directo",
27
+ "Copy folder permalink": "Copiar permalink de la carpeta",
28
+ "Copy raw file permalink": "Copiar permalink del archivo sin formato",
29
+ "Copy the permalink to the file to the clipboard": "Copiar el permalink del archivo al portapapeles",
30
+ "Customise direct link": "Personalizar enlace directo",
31
+ "Customise link": "Personalizar enlace",
32
+ "Customised": "Personalizado",
33
+ "Customised and encoded": "Personalizado y codificado",
34
+ "Copy selected files permalink": "Copiar permalink de archivos seleccionados",
35
+ "Copied selected files permalink.": "Permalink de archivos seleccionados copiado.",
36
+ "Default": "Por defecto",
37
+ "Do not pretend to be the site owner": "No fingir ser el propietario del sitio",
38
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "No te preocupes, después de almacenarlos, onedrive-vercel-index se encargará de actualizar y refrescar los tokens después de que tu sitio sea publicado.",
39
+ "Download": "Descargar",
40
+ "Download file": "Descargar archivo",
41
+ "Download folder": "Descargar carpeta",
42
+ "Download selected files": "Descargar archivos seleccionados",
43
+ "Download the file directly through OneDrive": "Descargar el archivo directamente a través de OneDrive",
44
+ "Downloading {{progress}}%": "Descargando {{progress}}%",
45
+ "Downloading folder, refresh page to cancel": "Descargando carpeta, actualice la página para cancelar",
46
+ "Downloading selected files, refresh page to cancel": "Descargando archivos seleccionados, actualice la página para cancelar",
47
+ "Downloading selected files...": "Descargando archivos seleccionados...",
48
+ "Email": "Correo electrónico",
49
+ "Enter Password": "Ingrese la contraseña",
50
+ "Error storing the token": "Error al almacenar el token",
51
+ "Error validating identify, restart": "Error al validar la identidad, reinicie",
52
+ "Error: {{message}}": "Error: {{message}}",
53
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "Error al descargar la carpeta {{path}}: {{status}} {{message}} Se saltó para continuar.",
54
+ "Failed to download folder.": "Error al descargar la carpeta.",
55
+ "Failed to download selected files.": "Error al descargar los archivos seleccionados.",
56
+ "File is empty.": "El archivo está vacío.",
57
+ "File size": "Tamaño del archivo",
58
+ "Filename": "Nombre de archivo",
59
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "Paso final, haz clic en el botón a continuación para almacenar estos tokens de manera persistente antes de que expire después de {{minutes}} minutos {{seconds}} segundos. ",
60
+ "Finished downloading folder.": "Finalizó la descarga de la carpeta.",
61
+ "Finished downloading selected files.": "Archivos seleccionados descargados completados.",
62
+ "Get tokens": "Obtener tokens",
63
+ "Grid": "Cuadrícula",
64
+ "Hashes": "Hashes",
65
+ "Home": "Inicio",
66
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "Si vuelves a la página de inicio y aún ves la página de bienvenida que te dice que vuelvas a autenticarte, ",
67
+ "If you know the password, please enter it below.": "Si conoces la contraseña, ingrésala debajo.",
68
+ "Last modified": "Última modificación",
69
+ "Last Modified": "Última modificación",
70
+ "Last modified:": "Última modificación:",
71
+ "List": "Lista",
72
+ "Load more": "Cargar más",
73
+ "Loading ...": "Cargando ...",
74
+ "Loading EPUB ...": "Cargando EPUB ...",
75
+ "Loading file content...": "Cargando contenido del archivo...",
76
+ "Loading FLV extension...": "Cargando extensión FLV...",
77
+ "Logout": "Cerrar sesión",
78
+ "MIME type": "Tipo MIME",
79
+ "Name": "Nombre",
80
+ "No more files": "No hay más archivos",
81
+ "Nothing here.": "Nada aquí.",
82
+ "OAuth Step 1 - {{title}}": "OAuth Paso 1 - {{title}}",
83
+ "OAuth Step 2 - {{title}}": "OAuth Paso 2 - {{title}}",
84
+ "OAuth Step 3 - {{title}}": "OAuth Paso 3 - {{title}}",
85
+ "of {{count}} file(s) -——loaded——one": "de {{count}} archivo -",
86
+ "of {{count}} file(s) -——loaded——other": "de {{count}} archivos -",
87
+ "of {{count}} file(s) -——loading——one": "de ... archivo(s) -",
88
+ "of {{count}} file(s) -——loading——other": "de ... archivo(s) -",
89
+ "Oops, that's a <1>four-oh-four</1>.": "Vaya, es un <1>cuatro-cero-cuatro</1>.",
90
+ "Open URL": "Abrir URL",
91
+ "Open URL{{url}}": "Abrir URL{{url}}",
92
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "Presiona <2>F12</2> y abre devtools para más detalles o busca ayuda en <6>discusiones onedrive-vercel-index</6>.",
93
+ "Proceed to OAuth": "Proceder a OAuth",
94
+ "Requesting tokens": "Solicitando tokens",
95
+ "Restart": "Reiniciar",
96
+ "revisit home and do a hard refresh.": "vuelve a la página principal y haz una recarga completa.",
97
+ "Search ...": "Buscar ...",
98
+ "Select all files": "Seleccionar todos los archivos",
99
+ "Select file": "Seleccionar archivo",
100
+ "Select files": "Seleccionar archivos",
101
+ "Size": "Tamaño",
102
+ "Step 1/3: Preparations": "Paso 1/3: Preparativos",
103
+ "Step 2/3: Get authorisation code": "Obtener código de autorización - Paso 2/3",
104
+ "Step 3/3: Get access and refresh tokens": "Obtener tokens de acceso y actualización - Paso 3/3",
105
+ "Store tokens": "Almacenar tokens",
106
+ "Stored! Going home...": "¡Almacenados! Regresando a Inicio...",
107
+ "Storing tokens": "Almacenando tokens",
108
+ "Success! The API returned what we needed.": "¡Éxito! La API devolvió lo que necesitábamos.",
109
+ "The authorisation code extracted is:": "El código de autorización extraído es:",
110
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "El enlace OAuth para obtener el código de autorización se ha creado. Haz clic en el enlace anterior para obtener el <2>código de autorización</2>. Tu navegador abrirá una nueva pestaña en la página de inicio de sesión de la cuenta de Microsoft. Después de iniciar sesión y autenticarse con tu cuenta de Microsoft, serás redirigido a una página en blanco en localhost. Pega <6>toda la URL redirigida</6> a continuación.",
111
+ "These tokens are used to authenticate yourself into password protected folders, ": "Estos tokens se utilizan para autenticarse en carpetas protegidas con contraseña,",
112
+ "These tokens may take a few seconds to populate after you click the button below. ": "Estos tokens pueden demorar unos segundos en ser llenados después de hacer clic en el botón de abajo. ",
113
+ "This route (the folder itself and the files inside) is password protected. ": "Esta ruta (la carpeta y los archivos dentro de ella) está protegida por contraseña.",
114
+ "Unavailable": "No disponible",
115
+ "URL encoded": "Codificado en URL",
116
+ "Waiting for code...": "Esperando código...",
117
+ "Weibo": "Weibo",
118
+ "Welcome to your new onedrive-vercel-index 🎉": "Bienvenido a tu nuevo onedrive-vercel-index 🎉",
119
+ "What is this?": "¿Qué es esto?",
120
+ "Where is the auth code? Did you follow step 2 you silly donut?": "¿Dónde está el código de autorización? ¿Siguiste el paso 2, bobo?",
121
+ "Whoops, looks like we got a problem: {{error}}.": "¡Vaya, parece que tenemos un problema: {{error}}."
122
+ }
public/locales/hi/common.json ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——other": "पेज {{count}} दिखा रहा है|",
3
+ "{{count}} item(s)——other": "{{count}} दिखा रहा है|",
4
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> यदि आप इस वेबसाइट के स्वामी नहीं हैं, तो अभी रुकें, क्योंकि इस प्रक्रिया को जारी रखने से आपकी व्यक्तिगत फ़ाइलें OneDrive में दिखाई दे सकती हैं।",
5
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "यदि आपने अपने Vercel env वेरिएबल के अंदर REDIS_URL निर्दिष्ट नहीं किया है, तो एक को इनिशियलाइज़ करें<3>Upstash</3> दस्तावेज़ीकरण。文档:<6>Vercel 集成 - Upstash</6>。",
6
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> यदि आपको कुछ गुम या गलत दिखाई देता है, तो आपको पुन: कॉन्फ़िगर करने की आवश्यकता है| <3>/config/api.config.js</3> पुन: नियोजित करने का प्रयास करें|",
7
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ अब आप अगले चरण पर आगे बढ़ सकते हैं: अपने एक्सेस टोकन का अनुरोध करना और टोकन रीफ्रेश करना ",
8
+ "❌ No valid code extracted.": "❌ कोई मान्य कोड नहीं निकाला गया ",
9
+ "Acquired access_token: ": "अधिग्रहीत access_token",
10
+ "Acquired refresh_token: ": "अधिग्रहीत refresh_token",
11
+ "Actions": "कार्रवाई",
12
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "प्राधिकरण की आवश्यकता है क्योंकि कोई मान्य नहीं है <2>access_token</2> या <5>refresh_token</5>,इस तैनात उदाहरण पर मौजूद है। अधिकृत करने के साथ आगे बढ़ने से पहले निम्नलिखित विन्यासों की जाँच करें onedrive-vercel-index अपना Microsoft account。",
13
+ "Cancel": "रद्द करें",
14
+ "Cannot preview {{path}}": "नहीं दिखा सकता {{path}}",
15
+ "Change the raw file direct link to a URL ending with the extension of the file.": "फ़ाइल एक्सटेंशन के साथ समाप्त करने के लिए फ़ाइल का सीधा लिंक बदलें URL。",
16
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "कृपया जांचें <2>Microsoft आधिकारिक स्पष्टीकरण</2> विस्तृत त्रुटि जानकारी के लिए。",
17
+ "Clear all": "सभी साफ करें",
18
+ "Clear all tokens?": "सभी टोकन साफ़ करें?",
19
+ "Cleared all tokens": "सभी टोकन साफ़ कर दिए",
20
+ "clearing them means that you will need to re-enter the passwords again.": "उन्हें साफ़ करने का अर्थ है कि आपको पासवर्ड फिर से दर्ज करने होंगे。",
21
+ "Copied direct link to clipboard.": "क्लिपबोर्ड पर सीधा लिंक कॉपी किया गया。",
22
+ "Copied folder permalink.": "कॉपी किया हुआ फोल्डर परमालिंक。",
23
+ "Copied raw file permalink.": "कॉपी की गई कच्ची फ़ाइल परमालिंक。",
24
+ "Copy direct link": "सीधा लिंक कॉपी करें",
25
+ "Copy folder permalink": "कॉपी फोल्डर परमालिंक",
26
+ "Copy raw file permalink": "कच्ची फ़ाइल को कॉपी करें स्थायी लिंक",
27
+ "Copy the permalink to the file to the clipboard": "फ़ाइल के परमालिंक को क्लिपबोर्ड पर कॉपी करें",
28
+ "Customise direct link": "सीधा लिंक अनुकूलित करें",
29
+ "Customise link": "लिंक अनुकूलित करें",
30
+ "Customised": "स्वनिर्धारित",
31
+ "Customised and encoded": "अनुकूलित और एन्कोडेड",
32
+ "Default": "चूक जाना",
33
+ "Do not pretend to be the site owner": "साइट के स्वामी होने का दिखावा न करें",
34
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "चिंता न करें, उन्हें स्टोर करने के बाद,onedrive-vercel-index आपकी साइट के लाइव होने के बाद टोकन रीफ्रेश और अपडेट का ध्यान रखेगा।",
35
+ "Download": "डाउनलोड",
36
+ "Download file": "फ़ाइल डाउनलोड करें",
37
+ "Download folder": "डाउनलोड फ़ोल्डर",
38
+ "Download selected files": "चयनित फ़ाइलें डाउनलोड करें",
39
+ "Download the file directly through OneDrive": "फ़ाइल को सीधे OneDrive के माध्यम से डाउनलोड करें",
40
+ "Downloading {{progress}}%": "डाउनलोड {{progress}}%",
41
+ "Downloading folder, refresh page to cancel": "फोल्डर डाउनलोड हो रहा है, रद्द करने के लिए पेज को रिफ्रेश करें",
42
+ "Downloading selected files, refresh page to cancel": "चयनित फ़ाइलें डाउनलोड कर रहा है, रद्द करने के लिए पृष्ठ को ताज़ा करें",
43
+ "Downloading selected files...": "चयनित फ़ाइलें डाउनलोड हो रही हैं...",
44
+ "Email": "ईमेल",
45
+ "Enter Password": "पास वर्ड दर्ज करें",
46
+ "Error storing the token": "टोकन संग्रहीत करने में त्रुटि",
47
+ "Error validating identify, restart": "पहचान सत्यापित करने में त्रुटि, पुनरारंभ करें",
48
+ "Error: {{message}}": "त्रुटि:{{message}}",
49
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "फ़ोल्डर डाउनलोड करने में विफल {{path}} विफल:{{status}} {{message}} जारी रखने के लिए इसे छोड़ दिया।",
50
+ "Failed to download folder.": "फ़ोल्डर डाउनलोड करने में विफल",
51
+ "Failed to download selected files.": "चयनित फ़ाइल डाउनलोड करने में विफल",
52
+ "File is empty.": "फ़ाइल खाली है",
53
+ "File size": "फाइल का आकार",
54
+ "Filename": "फ़ाइल का नाम",
55
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "अंतिम चरण, इन टोकन के समाप्त होने से पहले लगातार स्टोर करने के लिए नीचे दिए गए बटन पर क्लिक करें {{minutes}} मिनट {{seconds}} सेकंड.",
56
+ "Finished downloading folder.": "फ़ोल्डर डाउनलोड करना समाप्त हुआ",
57
+ "Finished downloading selected files.": "चयनित फ़ाइलों को डाउनलोड करना समाप्त।",
58
+ "Get tokens": "प्राप्त tokens",
59
+ "Grid": "ग्रिड",
60
+ "Hashes": "हैश",
61
+ "Home": "घर",
62
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "यदि आप घर वापस जाते हैं और फिर भी स्वागत पृष्ठ देखते हैं जो आपको पुनः प्रमाणित करने के लिए कह रहा है,",
63
+ "If you know the password, please enter it below.": "यदि आप पासवर्ड जानते हैं, तो कृपया इसे नीचे दर्ज करें।",
64
+ "Last modified": "अंतिम बार संशोधित",
65
+ "Last Modified": "अंतिम बार संशोधित",
66
+ "Last modified:": "अंतिम बार संशोधित:",
67
+ "List": "सूची",
68
+ "Load more": "और लोड करें",
69
+ "Loading ...": "लोड हो रहा है ...",
70
+ "Loading EPUB ...": "EPUB लोड हो रहा है...",
71
+ "Loading file content...": "फ़ाइल सामग्री लोड हो रही है...",
72
+ "Loading FLV extension...": "FLV एक्सट���ंशन लोड हो रहा है...",
73
+ "Logout": "लॉग आउट",
74
+ "MIME type": "MIME प्रकार",
75
+ "Name": "नाम",
76
+ "No more files": "कोई और फाइल नहीं",
77
+ "Nothing here.": "यहाँ कुछ नहीं।",
78
+ "OAuth Step 1 - {{title}}": "OAuth कदम 1 - {{title}}",
79
+ "OAuth Step 2 - {{title}}": "OAuth कदम 2 - {{title}}",
80
+ "OAuth Step 3 - {{title}}": "OAuth कदम 3 - {{title}}",
81
+ "of {{count}} file(s) -——loaded——other": "का {{count}} फ़ाइलें",
82
+ "of {{count}} file(s) -——loading——other": "का…फ़ाइलें",
83
+ "Oops, that's a <1>four-oh-four</1>.": "उफ़,यहाँ है <1>404</1> पृष्ठ",
84
+ "Open URL": "खोलो URL",
85
+ "Open URL{{url}}": "खोलो URL{{url}}",
86
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "कृपया दबाएं <2>F12</2> विवरण के लिए डेवलपर टूल विंडो खोलने के लिए, या यहां जाएं <6>onedrive-vercel-index सामुदायिक चर्चा</6> सहायता के लिए।",
87
+ "Proceed to OAuth": "OAuth के लिए आगे बढ़ें",
88
+ "Requesting tokens": "टोकन का अनुरोध",
89
+ "Restart": "पुनर्प्रारंभ करें",
90
+ "revisit home and do a hard refresh.": "घर फिर से आएं और एक कठिन रिफ्रेश करें।",
91
+ "Search ...": "खोज ...",
92
+ "Select all files": "सभी फाइलों का चयन करें",
93
+ "Select file": "इस फ़ाइल का चयन करें",
94
+ "Select files": "निम्नलिखित फाइलों का चयन करें",
95
+ "Size": "फाइल का आकार",
96
+ "Step 1/3: Preparations": "कदम 1/3:तैयार करना",
97
+ "Step 2/3: Get authorisation code": "कदम 2/3:प्राधिकरण कोड प्राप्त करें",
98
+ "Step 3/3: Get access and refresh tokens": "कदम 3/3:पहुंच प्राप्त करें और टोकन रीफ्रेश करें",
99
+ "Store tokens": "टोकन स्टोर करें",
100
+ "Stored! Going home...": "संग्रहित! घर जा रहा है...",
101
+ "Storing tokens": "टोकन जमा कर रहे हैं...",
102
+ "Success! The API returned what we needed.": "सफलता! एपीआई ने वही लौटाया जो हमें चाहिए था।",
103
+ "The authorisation code extracted is:": "निकाला गया प्राधिकरण कोड है:",
104
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "बनाए गए OAuth लिंक का उपयोग प्राधिकरण कोड प्राप्त करने के लिए किया जाता है। आवश्यक <2>प्राधिकरण कोड</2> प्राप्त करने के लिए ऊपर दिए गए लिंक पर क्लिक करें। आपका ब्राउज़र एक नए टैब में Microsoft खाता लॉगिन पृष्ठ खोलेगा। लॉग इन करने और अपने Microsoft खाते को सत्यापित करने के बाद, आपको डोमेन नाम localhost के साथ एक रिक्त पृष्ठ पर पुनर्निर्देशित किया जाएगा। कृपया नीचे <6>पूर्ण पुनर्निर्देशित URL</6> को कॉपी और पेस्ट करें।",
105
+ "These tokens are used to authenticate yourself into password protected folders, ": "इन टोकन का उपयोग पासवर्ड से सुरक्षित फ़ोल्डरों में खुद को प्रमाणित करने के लिए किया जाता है, ",
106
+ "These tokens may take a few seconds to populate after you click the button below. ": "आपके द्वारा नीचे दिए गए बटन पर क्लिक करने के बाद इन टोकन को पॉप्युलेट होने में कुछ सेकंड लग सकते हैं।",
107
+ "This route (the folder itself and the files inside) is password protected. ": "यह मार्ग (स्वयं फ़ोल्डर और अंदर की फाइले��) पासवर्ड से सुरक्षित है। ",
108
+ "Unavailable": "अनुपलब्ध",
109
+ "URL encoded": "URL एन्कोडेड",
110
+ "Waiting for code...": "कोड की प्रतीक्षा की जा रही है...",
111
+ "Weibo": "Weibo",
112
+ "Welcome to your new onedrive-vercel-index 🎉": "आपके नए onedrive-vercel-index में आपका स्वागत है 🎉",
113
+ "What is this?": "यह क्या है?",
114
+ "Where is the auth code? Did you follow step 2 you silly donut?": "ऑथ कोड कहां है? क्या आपने चरण 2 का पालन किया, मूर्ख डोनट?",
115
+ "Whoops, looks like we got a problem: {{error}}.": "ओह, ऐसा लगता है कि हमें कोई समस्या हो गई है:{{error}}"
116
+ }
public/locales/id/common.json ADDED
@@ -0,0 +1,123 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——one": "- menampilkan {{count}} halaman ",
3
+ "- showing {{count}} page(s) ——other": "- menampilkan {{count}} halaman ",
4
+ "{{count}} item(s)——one": "{{count}} barang",
5
+ "{{count}} item(s)——other": "{{count}} barang",
6
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> Jika anda bukan pemilik situs ini, berhentilah sekarang, karena melanjutkan ini mungkin bisa membongkar berkas pribadi anda di OneDrive.",
7
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0>Jika Anda tidak menentukan REDIS_URL inside di your Vercel env variable, silahkan inisialisasi satu di <3>Upstash</3>. Dokumentasi: <6>Vercel Integration - Upstash</6>.",
8
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> Jika anda melihat sesuatu yang kosong atau salah, anda harus mengkonfigurasi ulang <3>/config/api.config.js</3> dan deploy ulang instance.",
9
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ Anda sekarang bisa melanjutkan ke langkah berikutnya: meminta token akses anda dan refresh token.",
10
+ "❌ No valid code extracted.": "❌ Tidak ada kode valid yang diekstrak.",
11
+ "Acquired access_token: ": "Mendapatkan access_token: ",
12
+ "Acquired refresh_token: ": "Mendapatkan refresh_token: ",
13
+ "Actions": "Aksi",
14
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "Izin diperlukan karena tidak ada <2>access_token</2> atau <5>refresh token</5> yang valid pada instance yang di-deploy ini. Periksalah konfigurasi berikut sebelum melanjutkan dengan mengotorisasi onedrive-vercel-index dengan akun Microsoft Anda sendiri.",
15
+ "Cancel": "Batal",
16
+ "Cannot preview {{path}}": "Tidak bisa melihat {{path}}",
17
+ "Change the raw file direct link to a URL ending with the extension of the file.": " Ganti link langsung berkas raw ke URL yang berakhir dengan ekstensi berkas.",
18
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "Lihat <2>penjelasan resi Microsoft</2> pada pesan Kesalahan tersebut.",
19
+ "Clear all": "Bersihkan semua",
20
+ "Clear all tokens?": "Bersihkan semua token?",
21
+ "Cleared all tokens": "Membersihkan semua token",
22
+ "clearing them means that you will need to re-enter the passwords again.": "menghapus mereka berarti Anda harus memasukkan ulang sandi lagi.",
23
+ "Copied direct link to clipboard.": "Tautan langsung telah disalin ke clipboard.",
24
+ "Copied folder permalink.": "Tautan folder telah disalin.",
25
+ "Copied raw file permalink.": "Tautan berkas mentah telah disalin.",
26
+ "Copy direct link": "Salin tautan langsung",
27
+ "Copy folder permalink": "Salin tautan folder",
28
+ "Copy raw file permalink": "Salin tautan berkas mentah",
29
+ "Copy the permalink to the file to the clipboard": "Salin tautan ke berkas ke clipboard",
30
+ "Customise direct link": "Kustomisasi tautan langsung",
31
+ "Customise link": "Kustomisasi tautan",
32
+ "Customised": "Dikustomisasi",
33
+ "Customised and encoded": "Dikustomisasi dan dienkode",
34
+ "Copy selected files permalink": "Salin tautan berkas terpilih",
35
+ "Copied selected files permalink.": "Tautan berkas terpilih telah disalin.",
36
+ "Default": "Bawaan",
37
+ "Do not pretend to be the site owner": "Jangan berpura pura menjadi pemilik situs",
38
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "Jangan khawatir, onedrive-vercel-index akan mengurus token refresh dan memperbarui setelah situs anda live.",
39
+ "Download": "Unduh",
40
+ "Download file": "Unduh berkas",
41
+ "Download folder": "Unduh folder",
42
+ "Download selected files": "Unduh berkas yang dipilih",
43
+ "Download the file directly through OneDrive": "Unduh berkasnya langsung dari OneDrive",
44
+ "Downloading {{progress}}%": "Mengunduh {{progress}}%",
45
+ "Downloading folder, refresh page to cancel": "Mengunduh folder, muat ulang halaman untuk membatalkan",
46
+ "Downloading selected files, refresh page to cancel": "Mengunduh berkas yang dipilih, muat ulang halaman untuk membatalkan",
47
+ "Downloading selected files...": "Mengunduh berkas yang dipilih...",
48
+ "Email": "Email",
49
+ "Enter Password": "Masukkan sandi",
50
+ "Error storing the token": "Kesalahan saat menyimpan token",
51
+ "Error validating identify, restart": "Kesalahan saat memvalidasi identitas, restart",
52
+ "Error: {{message}}": "Kesalahan: {{message}}",
53
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "Gagal mengunduh folder {{path}}: {{status}} {{message}} Melewati untuk melanjutkan.",
54
+ "Failed to download folder.": "Gagal untuk mengunduh folder.",
55
+ "Failed to download selected files.": "Gagal mengunduh berkas yang dipilih.",
56
+ "File is empty.": "Berkas kosong.",
57
+ "File size": "Ukuran berkas",
58
+ "Filename": "Nama berkas",
59
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "Langkah terakhir, klik pada tombol bawah untuk menyimpan token secara konsisten sebelum kadaluarsa pada {{minutes}} menit {{seconds}} detik.",
60
+ "Finished downloading folder.": "Selesai mendownload folder.",
61
+ "Finished downloading selected files.": "Selesai mengunduh berkas yang dipilih.",
62
+ "Get tokens": "Dapatkan token",
63
+ "Grid": "Kisi",
64
+ "Hashes": "Hashes",
65
+ "Home": "Halaman Utama",
66
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "Jika Anda kembali ke halaman utama dan masih melihat halaman Selamat Datang mengatakan untuk mengotorisasi ulang, ",
67
+ "If you know the password, please enter it below.": "Jika anda tau passwordnya, silahkan masukkan dibawah.",
68
+ "Last modified": "Terakhir dimodifikasi",
69
+ "Last Modified": "Terakhir dimodifikasi",
70
+ "Last modified:": "Terakhir dimodifikasi:",
71
+ "List": "Daftar",
72
+ "Load more": "Muat lebih banyak",
73
+ "Loading ...": "Memuat...",
74
+ "Loading EPUB ...": "Memuat EPUB...",
75
+ "Loading file content...": "Memuat konten berkas...",
76
+ "Loading FLV extension...": "Memuat ekstensi FLV...",
77
+ "Logout": "Keluar",
78
+ "MIME type": "Tipe MIME",
79
+ "Name": "Nama",
80
+ "No more files": "Tidak ada berkas lagi",
81
+ "Nothing here.": "Tidak ada apa apa disini.",
82
+ "OAuth Step 1 - {{title}}": "Langkah 1 OAuth - {{title}}",
83
+ "OAuth Step 2 - {{title}}": "Langkah 2 OAuth - {{title}}",
84
+ "OAuth Step 3 - {{title}}": "Langkah 3 OAuth - {{title}}",
85
+ "of {{count}} file(s) -——loaded——one": "dari {{count}} berkas -",
86
+ "of {{count}} file(s) -——loaded——other": "dari {{count}} berkas -",
87
+ "of {{count}} file(s) -——loading——one": "dari ... berkas(s) -",
88
+ "of {{count}} file(s) -——loading——other": "dari ... berkas(s) -",
89
+ "Oops, that's a <1>four-oh-four</1>.": "Oops, itu adalah <1>empat-nol-empat</1>.",
90
+ "Open URL": "Buka URL",
91
+ "Open URL{{url}}": "Buka URL{{url}}",
92
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "Tekan <2>F12</2> dan buka devtools untuk detail lebih lanjut, atau cari bantuan di <6>diskusi onedrive-vercel-index</6>.",
93
+ "Proceed to OAuth": "Lanjut ke OAuth",
94
+ "Requesting tokens": "Meminta token",
95
+ "Restart": "Mulai Ulang",
96
+ "revisit home and do a hard refresh.": "kunjungi halaman utama lagi dan lakukan hard refresh.",
97
+ "Search ...": "Cari ...",
98
+ "Select all files": "Pilih semua berkas",
99
+ "Select file": "Pilih berkas",
100
+ "Select files": "Pilih berkas",
101
+ "Size": "Ukuran",
102
+ "Step 1/3: Preparations": "Langkah 1/3: Persiapan",
103
+ "Step 2/3: Get authorisation code": "Langkah 2/3: Mendapatkan kode otorisasi",
104
+ "Step 3/3: Get access and refresh tokens": "Langkah 3/3: Dapatkan akses dan perbarui token",
105
+ "Store tokens": "Simpan tokens",
106
+ "Stored! Going home...": "Tersimpan! Kembali ke halaman utama...",
107
+ "Storing tokens": "Menyimpan token",
108
+ "Success! The API returned what we needed.": "Sukses! API mengembalikan apa yang kami butuhkan.",
109
+ "The authorisation code extracted is:": "Kode otorisasi yang diekstrak adalah:",
110
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "Tautan OAuth untuk mendapatkan kode otorisasi telah dibuat. Klik link diatas untuk mendapatkan <2>kode otorisasi</2>. Browser anda akan membuka tab baru ke halaman masuk akun Microsoft. Setelah masuk dan mengautentikasi dengan akun Microsoft, anda akan dialihkan ke halaman kosong di localhost. Tempel <6>semua URL yang dialihkan</6> dibawah.",
111
+ "These tokens are used to authenticate yourself into password protected folders, ": "Token ini digunakan untuk mengautentikasi Anda ke folder yang dilindungi password,",
112
+ "These tokens may take a few seconds to populate after you click the button below. ": "Token ini mungkin memerlukan beberapa detik untuk muncul setelah Anda mengklik tombol dibawah.",
113
+ "This route (the folder itself and the files inside) is password protected. ": "Rute ini (folder dan berkas didalamnya) terkunci sandi. ",
114
+ "Unavailable": "Tidak tersedia",
115
+ "URL encoded": "URL terencode",
116
+ "Waiting for code...": "Menunggu kode...",
117
+ "Weibo": "Weibo",
118
+ "Welcome to your new onedrive-vercel-index 🎉": "Selamat Datang di onedrive-vercel-index baru anda����",
119
+ "What is this?": "Apa ini?",
120
+ "Where is the auth code? Did you follow step 2 you silly donut?": "Mana kode otorisasinya? Apakah kamu mengikuti langkah 2 dasar kamu donat bodoh?",
121
+ "Whoops, looks like we got a problem: {{error}}.": "Waduh, sepertinya kita mendapatkan masalah : {{error}}."
122
+ }
123
+
public/locales/tr-TR/common.json ADDED
@@ -0,0 +1,120 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——one": "- {{count}} sayfa gösteriliyor ",
3
+ "- showing {{count}} page(s) ——other": "- {{count}} sayfalar gösteriliyor ",
4
+ "{{count}} item(s)——one": "{{count}} öğe",
5
+ "{{count}} item(s)——other": "{{count}} öğeler",
6
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> Bu web sitesinin sahibi değilseniz, şimdi durun, çünkü bu işleme devam etmek OneDrive'daki kişisel dosyalarınızı açığa çıkarabilir..",
7
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> Vercel env değişkeninizin içinde bir REDIS_URL belirtmediyseniz, gidin ve bir tane başlatın. <3> Upstash </3>. Docs: <6>Vercel Entegrasyonu - Upstash</6>.",
8
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> Eksik veya yanlış bir şey görürseniz, yeniden yapılandırmanız gerekir. <3>/config/api.config.js</3> ve bu örneği yeniden dağıtın.",
9
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ Artık bir sonraki adıma geçebilirsiniz: erişim tokeninizi isteyin ve tokeni yenileyin..",
10
+ "❌ No valid code extracted.": "❌ Geçerli Kod Çıkarılmadı.",
11
+ "Acquired access_token: ": "Alınan access_token: ",
12
+ "Acquired refresh_token: ": "Alınan refresh_token: ",
13
+ "Actions": "Hareketler",
14
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "Geçerli olmadığı için yetkilendirme gerekli <2>access_token</2> ya da <5>refresh_token</5> bu dağıtılan örnekte mevcut. Onedrive-vercel-index'i kendi Microsoft hesabınızla yetkilendirmeye devam etmeden önce aşağıdaki yapılandırmaları kontrol edin.",
15
+ "Cancel": "Iptal",
16
+ "Cannot preview {{path}}": "{{path}} önizlenemiyor",
17
+ "Change the raw file direct link to a URL ending with the extension of the file.": "Ham dosyanın doğrudan bağlantısını, dosyanın uzantısıyla biten bir URL'ye değiştirin.",
18
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "Hata mesajıyla ilgili <2>Microsoft'un resmi açıklamasıni</2> inceleyin.",
19
+ "Clear all": "Hepsini Sil",
20
+ "Clear all tokens?": "Tüm Tokenleri Sil ?",
21
+ "Cleared all tokens": "Tüm Tokenler Silindi..",
22
+ "clearing them means that you will need to re-enter the passwords again.": "Tokenleri temizlemek, şifreleri tekrar girmeniz gerekeceği anlamına gelir..",
23
+ "Copied direct link to clipboard.": "Panoya Bağlantı Kopyalandı.",
24
+ "Copied folder permalink.": "Kopyalanan Klasör Bağlantısı.",
25
+ "Copied raw file permalink.": "Kopyalanan Dosya Bağlantısı.",
26
+ "Copy direct link": "Doğrudan Bağlantıyı Kopyalayın",
27
+ "Copy folder permalink": "Klasör Bağlantısını Kopyala",
28
+ "Copy raw file permalink": "Ham dosya Bağlantısını Kopyala",
29
+ "Copy the permalink to the file to the clipboard": "Dosyanın Bağlantısını Kopyalayın",
30
+ "Customise direct link": "Doğrudan Bağlantıyı Ozelleştir",
31
+ "Customise link": "Bağlantıyı Ozelleştir",
32
+ "Customised": "Özelleştirilmiş",
33
+ "Customised and encoded": "Özelleştirilmiş ve Kodlanmış",
34
+ "Default": "Varsayılan",
35
+ "Do not pretend to be the site owner": "Site sahibiymiş gibi davranmayın..",
36
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "Endişelenmeyin, bunları depoladıktan sonra onedrive-vercel-index siteniz yayına girdikten sonra belirteç yenilemeleri ve güncellemeleriyle ilgilenecektir..",
37
+ "Download": "Indir",
38
+ "Download file": "Dosyayı Indir",
39
+ "Download folder": "Klasörü Indir",
40
+ "Download selected files": "Seçili Dosyaları Indir",
41
+ "Download the file directly through OneDrive": "Dosyayı doğrudan OneDrive üzerinden indirin",
42
+ "Downloading {{progress}}%": "indiriliyor {{progress}}%",
43
+ "Downloading folder, refresh page to cancel": "Klasör indiriliyor, iptal etmek için sayfayı yenileyin",
44
+ "Downloading selected files, refresh page to cancel": "Seçili dosyalar indiriliyor, iptal etmek için sayfayı yenileyin",
45
+ "Downloading selected files...": "Seçilen Dosyalar Indiriliyor...",
46
+ "Email": "Mail",
47
+ "Enter Password": "Parola Gir",
48
+ "Error storing the token": "Token Yedeklenirken Hata Oluştu",
49
+ "Error validating identify, restart": "Tanımlama Doğrulanırken Hata Oluştu, Yeniden Başlat",
50
+ "Error: {{message}}": "Hata: {{message}}",
51
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "Klasör indirilemedi {{path}}: {{status}} {{message}} Devam etmek için atlandı.",
52
+ "Failed to download folder.": "Klasor Indirme tamamlanmadı.",
53
+ "Failed to download selected files.": "Seçilen Dosyalar Indirilemedi.",
54
+ "File is empty.": "Dosya Boş.",
55
+ "File size": "Dosya Boyutu",
56
+ "Filename": "Dosya Adı",
57
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "Son adım, {{minutes}} dakika {{seconds}} saniye sonra sona ermeden önce bu tokenleri kalıcı olarak saklamak için aşağıdaki düğmeye tıklayın.. ",
58
+ "Finished downloading folder.": "Klasor Indirme Tamamlandı.",
59
+ "Finished downloading selected files.": "Seçilen Dosyaların Indirilmesi Tamamlandı.",
60
+ "Get tokens": "Token Al",
61
+ "Grid": "Izgara",
62
+ "Hashes": "Karmalar",
63
+ "Home": "Anasayfa",
64
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "Anasayfa'ya dönün ve yeniden kimlik doğrulamanızı söyleyen hoş geldiniz sayfasını görmeye devam edin, ",
65
+ "If you know the password, please enter it below.": "Şifreyi Biliyorsanız, lütfen Girin.",
66
+ "Last modified": "Son Düzenleme",
67
+ "Last Modified": "Son Düzenleme",
68
+ "Last modified:": "Son Düzenleme:",
69
+ "List": "Liste",
70
+ "Load more": "Daha Fazla Göster",
71
+ "Loading ...": "Yükleniyor ...",
72
+ "Loading EPUB ...": "EPUB Yükleniyor ...",
73
+ "Loading file content...": "Dosya içeriği Yükleniyor...",
74
+ "Loading FLV extension...": "FLV uzantısı Yükleniyor...",
75
+ "Logout": "Çıkış",
76
+ "MIME type": "Dosya Tipi",
77
+ "Name": "Ad",
78
+ "No more files": "Başka Dosya Yok",
79
+ "Nothing here.": "Burada Hiçbir Yok.",
80
+ "OAuth Step 1 - {{title}}": "OAuth Adım 1 - {{title}}",
81
+ "OAuth Step 2 - {{title}}": "OAuth Adım 2 - {{title}}",
82
+ "OAuth Step 3 - {{title}}": "OAuth Adım 3 - {{title}}",
83
+ "of {{count}} file(s) -——loaded——one": "{{count}} dosya -",
84
+ "of {{count}} file(s) -——loaded——other": "... {{count}} Dosyalar -",
85
+ "of {{count}} file(s) -——loading——one": "... {{count}} Dosya -",
86
+ "of {{count}} file(s) -——loading——other": "... Dosya(lar) -",
87
+ "Oops, that's a <1>four-oh-four</1>.": "Hata, bu bir <1>four-oh-four</1> Bilgileri Kontrol Et.",
88
+ "Open URL": "Link Aç",
89
+ "Open URL{{url}}": "URL'yi Aç {{url}}",
90
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "Daha fazla ayrıntı için <2>F12</2> Basın Devtools'u açın veya şu adresten yardım isteyin: <6>Onedrive-vercel-index Tartışmalar</6>.",
91
+ "Proceed to OAuth": "OAuth'a Devam Edin",
92
+ "Requesting tokens": "Token Isteniyor..",
93
+ "Restart": "Yeniden Başlat",
94
+ "revisit home and do a hard refresh.": "Anasayfa'ya Tekrar Gidin ve Yenileme Yapın.",
95
+ "Search ...": "Ara ...",
96
+ "Select all files": "Tüm dosyaları seç",
97
+ "Select file": "Dosya Seç",
98
+ "Select files": "Dosyaları seçin",
99
+ "Size": "Boyut",
100
+ "Step 1/3: Preparations": "Adım 1/3: Hazırlıklar",
101
+ "Step 2/3: Get authorisation code": "Adım 2/3: Yetkilendirme kodunu alın",
102
+ "Step 3/3: Get access and refresh tokens": "Adım 3/3: Erişim elde edin ve belirteçleri yenileyin",
103
+ "Store tokens": "Tokeni Saklayın",
104
+ "Stored! Going home...": "Yedeklendi! Anasayfa'ya Gidiliyor...",
105
+ "Storing tokens": "Token Yedeklendi",
106
+ "Success! The API returned what we needed.": "Başarılı! API ihtiyacımız Olan Değeri Döndürdü.",
107
+ "The authorisation code extracted is:": "Çıkarılan Yetkilendirme Kodu:",
108
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "Yetkilendirme kodunu almak için OAuth bağlantısı oluşturuldu. almak için yukarıdaki linke tıklayın <2>Yetkilendirme Kodu</2>. Tarayıcınız, Microsoft'un hesap oturum açma sayfasına yeni bir sekme açacaktır. Giriş yaptıktan ve Microsoft hesabınızla kimlik doğrulaması yaptıktan sonra, localhost'ta boş bir sayfaya yönlendirileceksiniz. <6>Yönlendirilen URL'nin tamamını yapıştırın</6>.",
109
+ "These tokens are used to authenticate yourself into password protected folders, ": "Bu tokenler, kendinizi parola korumalı klasörlerde doğrulamak için kullanılır, ",
110
+ "These tokens may take a few seconds to populate after you click the button below. ": "Aşağıdaki düğmeyi tıkladıktan sonra bu tokenlerin doldurulması birkaç saniye sürebilir. ",
111
+ "This route (the folder itself and the files inside) is password protected. ": "Klasör ve Içindeki Dosyalar Parola Ile Korumalıdır...",
112
+ "Unavailable": "Kullanım Dışı",
113
+ "URL encoded": "URL Kodlanmış",
114
+ "Waiting for code...": "Kod Bekleniyor...",
115
+ "Weibo": "Weibo",
116
+ "Welcome to your new onedrive-vercel-index 🎉": "Onedrive-vercel-index'inize hoş geldiniz 🎉",
117
+ "What is this?": "Bu Nedir?",
118
+ "Where is the auth code? Did you follow step 2 you silly donut?": "Yetkilendirme kodu nerede? 2. adımı izledin mi seni Aptal ?",
119
+ "Whoops, looks like we got a problem: {{error}}.": "Hata! Bir sorunumuz var gibi görünüyor: {{error}}."
120
+ }
public/locales/zh-CN/common.json ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——other": "已显示 {{count}} 页",
3
+ "{{count}} item(s)——other": "{{count}} 个项目",
4
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> 如果你不是这个网站的所有者,请立即停止操作,因为接下来的操作可能会暴露你的 OneDrive 私人文件。",
5
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> 如果你还没有在 Vercel 中设置环境变量 REDIS_URL,你可以从 <3>Upstash</3> 处获取一个来使用。文档:<6>Vercel 集成 - Upstash</6>。",
6
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> 如果你看到有遗漏或错误的项目,你需要重新编辑 <3>/config/api.config.js</3> 并重新部署这个实例。",
7
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ 你现在可以进行下一步了:获取你的 access token 和 refresh token。",
8
+ "❌ No valid code extracted.": "❌ 无法提取授权码。",
9
+ "Acquired access_token: ": "获取 access_token",
10
+ "Acquired refresh_token: ": "获取 refresh_token",
11
+ "Actions": "操作",
12
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "本项目还没有设置有效的 <2>access_token</2> 和 <5>refresh_token</5>,需要进行授权。在继续对 onedrive-vercel-index 授权你的 Microsoft 帐号前,请检查一下下方的配置信息。",
13
+ "Cancel": "取消",
14
+ "Cannot preview {{path}}": "无法预览 {{path}}",
15
+ "Change the raw file direct link to a URL ending with the extension of the file.": "将文件直链接更改为以文件扩展名结尾的 URL。",
16
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "请查阅 <2>Microsoft 官方解释</2> 以获取详细的错误信息。",
17
+ "Clear all": "清除所有密钥",
18
+ "Clear all tokens?": "清除所有密钥?",
19
+ "Cleared all tokens": "已清除所有密钥",
20
+ "clearing them means that you will need to re-enter the passwords again.": "清除它们意味着下次访问时你需要重新输入密钥。",
21
+ "Copied direct link to clipboard.": "已复制直链到剪贴板。",
22
+ "Copied folder permalink.": "已复制文件夹永久链接。",
23
+ "Copied raw file permalink.": "已复制文件永久链接。",
24
+ "Copy direct link": "复制文件直链",
25
+ "Copy folder permalink": "复制文件夹永久链接",
26
+ "Copy raw file permalink": "复制文件永久链接",
27
+ "Copy the permalink to the file to the clipboard": "复制文件永久链接到剪贴板",
28
+ "Customise direct link": "自定义文件直链",
29
+ "Customise link": "自定义直链",
30
+ "Customised": "自定义链接",
31
+ "Customised and encoded": "URL 编码的自定义链接",
32
+ "Copy selected files permalink": "复制选定文件永久链接",
33
+ "Copied selected files permalink.": "已复制选定文件永久链接。",
34
+ "Default": "默认",
35
+ "Do not pretend to be the site owner": "你不是网站所有者",
36
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "别担心,存储它们之后,onedrive-vercel-index 会在帮助你定时更新 token",
37
+ "Download": "下载",
38
+ "Download file": "下载此文件",
39
+ "Download folder": "下载此文件夹",
40
+ "Download selected files": "下载选定文件",
41
+ "Download the file directly through OneDrive": "直接从 OneDrive 下载文件",
42
+ "Downloading {{progress}}%": "已下载 {{progress}}%",
43
+ "Downloading folder, refresh page to cancel": "下载文件夹中,刷新页面以取消",
44
+ "Downloading selected files, refresh page to cancel": "下载选定文件中,刷新页面以取消",
45
+ "Downloading selected files...": "下载选定文件中…",
46
+ "Email": "电子邮件",
47
+ "Enter Password": "输入密码",
48
+ "Error storing the token": "存储 token 时出错",
49
+ "Error validating identify, restart": "校验身份出错,需要重新开始",
50
+ "Error: {{message}}": "错误:{{message}}",
51
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "下载文件夹 {{path}} 失败:{{status}} {{message}} 已忽略此错误并继续下载。",
52
+ "Failed to download folder.": "下载文件夹失败。",
53
+ "Failed to download selected files.": "下载选定文件失败。",
54
+ "File is empty.": "文件为空。",
55
+ "File size": "文件大小",
56
+ "Filename": "文件名",
57
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "最后一步,在这些 tokens 于 {{minutes}} 分钟 {{seconds}} 秒后失效前,点击下方按钮以永久存储这些 tokens。",
58
+ "Finished downloading folder.": "下载文件夹成功。",
59
+ "Finished downloading selected files.": "下载选定文件成功。",
60
+ "Get tokens": "获取 tokens",
61
+ "Grid": "图格",
62
+ "Hashes": "哈希值",
63
+ "Home": "首页",
64
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "如果你回到首页却仍然发现欢迎界面在提示你重新认证,",
65
+ "If you know the password, please enter it below.": "如果你知晓密码,请在下面输入。",
66
+ "Last modified": "最后修改时间",
67
+ "Last Modified": "最后修改时间",
68
+ "Last modified:": "最后修改时间:",
69
+ "List": "列表",
70
+ "Load more": "加载更多",
71
+ "Loading ...": "加载中…",
72
+ "Loading EPUB ...": "加载 EPUB 中…",
73
+ "Loading file content...": "加载文件内容中…",
74
+ "Loading FLV extension...": "加载 FLV 扩展中…",
75
+ "Logout": "注销",
76
+ "MIME type": "MIME 类型",
77
+ "Name": "文件名",
78
+ "No more files": "加载完毕",
79
+ "Nothing here.": "无内容。",
80
+ "OAuth Step 1 - {{title}}": "OAuth 第 1 步 - {{title}}",
81
+ "OAuth Step 2 - {{title}}": "OAuth 第 2 步 - {{title}}",
82
+ "OAuth Step 3 - {{title}}": "OAuth 第 3 步 - {{title}}",
83
+ "of {{count}} file(s) -——loaded——other": "共 {{count}} 个文件",
84
+ "of {{count}} file(s) -——loading——other": "共…个文件",
85
+ "Oops, that's a <1>four-oh-four</1>.": "Oops,这里是 <1>404</1> 页面。",
86
+ "Open URL": "打开 URL",
87
+ "Open URL{{url}}": "打开 URL{{url}}",
88
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "请按下 <2>F12</2> 来打开开发者工具窗口以获取详细信息,或是到 <6>onedrive-vercel-index 社区讨论</6> 处寻求帮助。",
89
+ "Proceed to OAuth": "继续进行 OAuth",
90
+ "Requesting tokens": "正在获取 token",
91
+ "Restart": "重新开始",
92
+ "revisit home and do a hard refresh.": "重新访问首页并刷新浏览器",
93
+ "Search ...": "搜索…",
94
+ "Select all files": "选择所有文件",
95
+ "Select file": "选择此文件",
96
+ "Select files": "选择以下文件",
97
+ "Size": "文件大小",
98
+ "Step 1/3: Preparations": "步骤 1/3:准备",
99
+ "Step 2/3: Get authorisation code": "步骤 2/3:获取授权码",
100
+ "Step 3/3: Get access and refresh tokens": "步骤 3/3:获取 access token 和 refresh token",
101
+ "Store tokens": "储存 tokens",
102
+ "Stored! Going home...": "已存储!正在返回首页…",
103
+ "Storing tokens": "正在存储 token…",
104
+ "Success! The API returned what we needed.": "成功!需要的 token 已被返回。",
105
+ "The authorisation code extracted is:": "提取出的授权码为:",
106
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "创建出的这个 OAuth 链接是用来获取授权码的。点击上方链接以获取所需的 <2>授权码</2>。你的浏览器将在新的标签页打开 Microsoft 帐号登录页面。在登录并验证你的 Microsoft 帐号之后,你将被重定向到一个域名为 localhost 的空白页面。请将<6>完整的重定向后的 URL</6> 整体复制粘贴到下方。",
107
+ "These tokens are used to authenticate yourself into password protected folders, ": "这些密钥是用来验证你的身份以访问密钥保护下的文件夹的,",
108
+ "These tokens may take a few seconds to populate after you click the button below. ": "当你点击下方按钮之后,这些 tokens 可能需要几秒钟来生成出现。",
109
+ "This route (the folder itself and the files inside) is password protected. ": "此路由(此文件夹和其中的文件)是受密钥保护的。",
110
+ "Unavailable": "无",
111
+ "URL encoded": "URL 编码的链接",
112
+ "Waiting for code...": "等待授权码…",
113
+ "Weibo": "微博",
114
+ "Welcome to your new onedrive-vercel-index 🎉": "欢迎来到你崭新的 onedrive-vercel-index 🎉",
115
+ "What is this?": "这是什么?",
116
+ "Where is the auth code? Did you follow step 2 you silly donut?": "授权码呢?你遵守了第 2 步吗?你这个傻瓜甜甜圈!o( ̄ヘ ̄o#)",
117
+ "Whoops, looks like we got a problem: {{error}}.": "Whoops,看来我们遇到了一个问题:{{error}}"
118
+ }
public/locales/zh-TW/common.json ADDED
@@ -0,0 +1,116 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "- showing {{count}} page(s) ——other": "已顯示 {{count}} 頁",
3
+ "{{count}} item(s)——other": "{{count}} 個檔案",
4
+ "<0></0> If you are not the owner of this website, stop now, as continuing with this process may expose your personal files in OneDrive.": "<0></0> 如果你不是這網站的擁有者,請立即停止操作,因為接下來的動作可能造成你的 OneDrive 私人檔案外洩。",
5
+ "<0></0> If you have not specified a REDIS_URL inside your Vercel env variable, go initialise one at <3>Upstash</3>. Docs: <6>Vercel Integration - Upstash</6>.": "<0></0> 如果你還沒在 Vercel 中設置環境變數 REDIS_URL,你可以從 <3>Upstash</3> 取得一個 REDIS 來使用。操作說明:<6>Vercel 集成 - Upstash</6>。",
6
+ "<0></0> If you see anything missing or incorrect, you need to reconfigure <3>/config/api.config.js</3> and redeploy this instance.": "<0></0> 如果你看到有遺漏或錯誤的資訊,你需要重新編輯 <3>/config/api.config.js</3> 並重新佈署。",
7
+ "✅ You can now proceed onto the next step: requesting your access token and refresh token.": "✅ 你現在可以進行下一步了:取得你的 access token 及 refresh token。",
8
+ "❌ No valid code extracted.": "❌ 無法取得授權碼。",
9
+ "Acquired access_token: ": "取得 access_token",
10
+ "Acquired refresh_token: ": "取得 refresh_token",
11
+ "Actions": "操作",
12
+ "Authorisation is required as no valid <2>access_token</2> or <5>refresh_token</5> is present on this deployed instance. Check the following configurations before proceeding with authorising onedrive-vercel-index with your own Microsoft account.": "系統還沒設定有效的 <2>access_token</2> 及 <5>refresh_token</5>,需要進行授權。在繼續對 onedrive-vercel-index 授權你的 Microsoft 帳號前,請檢查下方的配置設定是否正確。",
13
+ "Cancel": "取消",
14
+ "Cannot preview {{path}}": "無法預覽 {{path}}",
15
+ "Change the raw file direct link to a URL ending with the extension of the file.": "將檔案的直接下載連結更改為以文件附檔名結尾的 URL。",
16
+ "Check out <2>Microsoft's official explanation</2> on the error message.": "請查看 <2>Microsoft 官方說明</2> 來取得詳細的錯誤資訊。",
17
+ "Clear all": "清除所有密碼",
18
+ "Clear all tokens?": "清除所有密碼?",
19
+ "Cleared all tokens": "已清除所有密碼",
20
+ "clearing them means that you will need to re-enter the passwords again.": "清除後代表下次訪問時需要重新輸入密碼。",
21
+ "Copied direct link to clipboard.": "已複製直接下載的連結置剪貼簿。",
22
+ "Copied folder permalink.": "已複製資料夾的永久連結。",
23
+ "Copied raw file permalink.": "已複製檔案的永久連結。",
24
+ "Copy direct link": "複製直接下載的連結",
25
+ "Copy folder permalink": "複製資料夾的永久連結",
26
+ "Copy raw file permalink": "複製檔案的永久連結",
27
+ "Copy the permalink to the file to the clipboard": "複製檔案的永久連結到剪貼簿",
28
+ "Customise direct link": "自訂檔案直接下載連結",
29
+ "Customise link": "自訂直接下載連結",
30
+ "Customised": "自訂下載連結",
31
+ "Customised and encoded": "URL 編碼的自訂連結",
32
+ "Default": "預設",
33
+ "Do not pretend to be the site owner": "你不是網站的擁有者",
34
+ "Don't worry, after storing them, onedrive-vercel-index will take care of token refreshes and updates after your site goes live.": "不用擔心,保存 token 之後,onedrive-vercel-index 會定期的幫助你更新 token",
35
+ "Download": "下載",
36
+ "Download file": "下載此檔案",
37
+ "Download folder": "下載此資料夾",
38
+ "Download selected files": "下載已選擇檔案",
39
+ "Download the file directly through OneDrive": "直接從 OneDrive 下載檔案",
40
+ "Downloading {{progress}}%": "已下載 {{progress}}%",
41
+ "Downloading folder, refresh page to cancel": "下載資料夾中,重新整理頁面將取消下載",
42
+ "Downloading selected files, refresh page to cancel": "下載選擇的檔案中,重新整理頁面將取消下載",
43
+ "Downloading selected files...": "下載選擇的檔案中…",
44
+ "Email": "電子郵件",
45
+ "Enter Password": "輸入密碼",
46
+ "Error storing the token": "儲存 token 時出現錯誤",
47
+ "Error validating identify, restart": "驗證身分時出現錯誤,請重新開始",
48
+ "Error: {{message}}": "錯誤:{{message}}",
49
+ "Failed to download folder {{path}}: {{status}} {{message}} Skipped it to continue.": "{{path}} 資料夾下載失敗:{{status}} {{message}} 已略過此錯誤並繼續下載。",
50
+ "Failed to download folder.": "資料夾下載失敗。",
51
+ "Failed to download selected files.": "您選擇的檔案下載失敗。",
52
+ "File is empty.": "資料夾是空的。",
53
+ "File size": "檔案大小",
54
+ "Filename": "檔案名稱",
55
+ "Final step, click the button below to store these tokens persistently before they expire after {{minutes}} minutes {{seconds}} seconds. ": "最後一步,在這些 tokens 於 {{minutes}} 分鐘 {{seconds}} 秒後失效前,點擊下方的按鈕來保存這個 tokens。",
56
+ "Finished downloading folder.": "下載資料夾成功。",
57
+ "Finished downloading selected files.": "下載選擇的檔案成功。",
58
+ "Get tokens": "取得 tokens",
59
+ "Grid": "圖示",
60
+ "Hashes": "hash",
61
+ "Home": "首頁",
62
+ "If you go back home and still see the welcome page telling you to re-authenticate, ": "如果你回到首頁卻還是看到歡迎畫面代表你需要重新驗證,",
63
+ "If you know the password, please enter it below.": "如果你知道密碼,請在下面輸入。",
64
+ "Last modified": "最後修改時間",
65
+ "Last Modified": "最後修改時間",
66
+ "Last modified:": "最後修改時間:",
67
+ "List": "列表",
68
+ "Load more": "載入更多",
69
+ "Loading ...": "載入中…",
70
+ "Loading EPUB ...": "載入 EPUB 中…",
71
+ "Loading file content...": "載入檔案內容中…",
72
+ "Loading FLV extension...": "載入 FLV 擴充工具中…",
73
+ "Logout": "登出",
74
+ "MIME type": "MIME 檔案類型",
75
+ "Name": "檔案名稱",
76
+ "No more files": "載入完畢",
77
+ "Nothing here.": "沒有內容。",
78
+ "OAuth Step 1 - {{title}}": "OAuth 第 1 步 - {{title}}",
79
+ "OAuth Step 2 - {{title}}": "OAuth 第 2 步 - {{title}}",
80
+ "OAuth Step 3 - {{title}}": "OAuth 第 3 步 - {{title}}",
81
+ "of {{count}} file(s) -——loaded——other": "共 {{count}} 個檔案",
82
+ "of {{count}} file(s) -——loading——other": "共…個檔案",
83
+ "Oops, that's a <1>four-oh-four</1>.": "Oops,這裡是 <1>404</1> 頁面。",
84
+ "Open URL": "開啟 URL",
85
+ "Open URL{{url}}": "開啟 URL{{url}}",
86
+ "Press <2>F12</2> and open devtools for more details, or seek help at <6>onedrive-vercel-index discussions</6>.": "請按下 <2>F12</2> 開啟開發人員選項取得詳細資訊,或是前往 <6>onedrive-vercel-index Github 討論區</6> 尋找解答。",
87
+ "Proceed to OAuth": "繼續進行 OAuth",
88
+ "Requesting tokens": "正在取得 token",
89
+ "Restart": "重新開始",
90
+ "revisit home and do a hard refresh.": "回到首頁並重新整理",
91
+ "Search ...": "搜尋…",
92
+ "Select all files": "選擇所有檔案",
93
+ "Select file": "選擇此檔案",
94
+ "Select files": "選擇以下檔案",
95
+ "Size": "檔案大小",
96
+ "Step 1/3: Preparations": "步驟 1/3:準備",
97
+ "Step 2/3: Get authorisation code": "步驟 2/3:取得授權碼",
98
+ "Step 3/3: Get access and refresh tokens": "步驟 3/3:取得 access token 及 refresh token",
99
+ "Store tokens": "儲存 tokens",
100
+ "Stored! Going home...": "已儲存!正在返回首頁…",
101
+ "Storing tokens": "正在儲存 token…",
102
+ "Success! The API returned what we needed.": "需要的 token 已成功取得!",
103
+ "The authorisation code extracted is:": "取得的授權碼為:",
104
+ "The OAuth link for getting the authorisation code has been created. Click on the link above to get the <2>authorisation code</2>. Your browser willopen a new tab to Microsoft's account login page. After logging in and authenticating with your Microsoft account, you will be redirected to a blank page on localhost. Paste <6>the entire redirected URL</6> down below.": "創建出的這個 OAuth 連結是用來取得授權碼的。點選上方連結來取得所需的 <2>授權碼</2>。你的瀏覽器會開啟新分頁打開 Microsoft 帳號登入畫面。在登入並驗證你的 Microsoft 帳號之後,你會被導向到一個域名叫做 localhost 的空白頁面。請將此空白頁面上<6>完整的網址 URL</6> 複製並貼到下方。",
105
+ "These tokens are used to authenticate yourself into password protected folders, ": "這些 token 是用來確認你的身分,讓你可以開啟受密碼保護的資料夾,",
106
+ "These tokens may take a few seconds to populate after you click the button below. ": "當你點選下方按鈕後,這些 tokens 可能需要花幾秒鐘來產生。",
107
+ "This route (the folder itself and the files inside) is password protected. ": "此路徑(此資料夾及資料夾內的檔案)有密碼保護。",
108
+ "Unavailable": "無",
109
+ "URL encoded": "URL 編碼的連結",
110
+ "Waiting for code...": "等待授權碼…",
111
+ "Weibo": "微博",
112
+ "Welcome to your new onedrive-vercel-index 🎉": "歡迎來到全新的 onedrive-vercel-index 🎉",
113
+ "What is this?": "這是什麼?",
114
+ "Where is the auth code? Did you follow step 2 you silly donut?": "授權碼在哪裡?你有跟著第 2 步完成了嗎?o( ̄ヘ ̄o#)",
115
+ "Whoops, looks like we got a problem: {{error}}.": "Whoops,看來現在遇到一些問題:{{error}}"
116
+ }
public/players/iina.png ADDED
public/players/nplayer.png ADDED
public/players/potplayer.png ADDED
public/players/vlc.png ADDED
public/site.webmanifest ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "name": "",
3
+ "short_name": "",
4
+ "icons": [
5
+ {
6
+ "src": "/android-chrome-192x192.png",
7
+ "sizes": "192x192",
8
+ "type": "image/png"
9
+ },
10
+ {
11
+ "src": "/android-chrome-512x512.png",
12
+ "sizes": "512x512",
13
+ "type": "image/png"
14
+ }
15
+ ],
16
+ "theme_color": "#ffffff",
17
+ "background_color": "#ffffff",
18
+ "display": "standalone"
19
+ }
renovate.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "extends": [
4
+ "config:base",
5
+ ":semanticCommits"
6
+ ],
7
+ "packageRules": [
8
+ {
9
+ "matchUpdateTypes": [
10
+ "minor",
11
+ "patch"
12
+ ],
13
+ "matchCurrentVersion": "!/^0/",
14
+ "automerge": true
15
+ }
16
+ ]
17
+ }
src/components/Auth.tsx ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
2
+
3
+ import Image from 'next/image'
4
+ import { useRouter } from 'next/router'
5
+ import { FC, useState } from 'react'
6
+ import { useTranslation } from 'next-i18next'
7
+
8
+ import { matchProtectedRoute } from '../utils/protectedRouteHandler'
9
+ import useLocalStorage from '../utils/useLocalStorage'
10
+
11
+ const Auth: FC<{ redirect: string }> = ({ redirect }) => {
12
+ const authTokenPath = matchProtectedRoute(redirect)
13
+
14
+ const router = useRouter()
15
+ const [token, setToken] = useState('')
16
+ const [_, setPersistedToken] = useLocalStorage(authTokenPath, '')
17
+
18
+ const { t } = useTranslation()
19
+
20
+ return (
21
+ <div className="mx-auto flex max-w-sm flex-col space-y-4 md:my-10">
22
+ <div className="mx-auto w-3/4 md:w-5/6">
23
+ <Image src={'/images/fabulous-wapmire-weekdays.png'} alt="authenticate" width={912} height={912} priority />
24
+ </div>
25
+ <div className="text-lg font-bold text-gray-900 dark:text-gray-100">{t('Enter Password')}</div>
26
+
27
+ <p className="text-sm font-medium text-gray-500">
28
+ {t('This route (the folder itself and the files inside) is password protected. ') +
29
+ t('If you know the password, please enter it below.')}
30
+ </p>
31
+
32
+ <div className="flex items-center space-x-2">
33
+ <input
34
+ className="flex-1 rounded border border-gray-600/10 p-2 font-mono focus:outline-none focus:ring focus:ring-blue-300 dark:bg-gray-600 dark:text-white dark:focus:ring-blue-700"
35
+ autoFocus
36
+ type="password"
37
+ placeholder="************"
38
+ value={token}
39
+ onChange={e => {
40
+ setToken(e.target.value)
41
+ }}
42
+ onKeyPress={e => {
43
+ if (e.key === 'Enter' || e.key === 'NumpadEnter') {
44
+ setPersistedToken(token)
45
+ router.reload()
46
+ }
47
+ }}
48
+ />
49
+ <button
50
+ className="rounded bg-blue-600 px-4 py-2 text-white hover:bg-blue-500 focus:outline-none focus:ring focus:ring-blue-400"
51
+ onClick={() => {
52
+ setPersistedToken(token)
53
+ router.reload()
54
+ }}
55
+ >
56
+ <FontAwesomeIcon icon="arrow-right" />
57
+ </button>
58
+ </div>
59
+ </div>
60
+ )
61
+ }
62
+
63
+ export default Auth