Compare commits

..

19 Commits
v1.10.1 ... v1

Author SHA1 Message Date
acceis-international
99c6a4fa74 add manual run of github action 2025-04-01 13:47:51 +02:00
acceis-international
4a6f1019c0 chore(backend): update dependencies to latest major version 2025-03-26 17:01:11 +01:00
acceis-international
f646c9f1ab chore(backend): update package-lock and upgrade eslint with config to new default config format 2025-03-26 16:58:09 +01:00
acceis-international
be8a0d0315 chore(frontend): update dependencies to latest major version, except Mantine 2025-03-26 16:50:02 +01:00
acceis-international
81b1970099 chore(frontend): upgrade eslint and update config to new default config format 2025-03-26 16:48:05 +01:00
acceis-international
60f8d38baf chore: upgrade package-lock and fix breaking changes 2025-03-26 16:08:07 +01:00
Elias Schneider
8e828311fe Update Crowdin configuration file 2025-03-20 20:20:14 +01:00
Elias Schneider
b7410d8589 Update Crowdin configuration file 2025-03-20 20:17:47 +01:00
Elias Schneider
5cfa8f3015 release: 1.10.4 2025-03-20 19:55:25 +01:00
Elias Schneider
ccb7fdca43 fix: admin role gets reset if signing in with an OIDC provider 2025-03-20 19:55:13 +01:00
Elias Schneider
ac81cb9ab7 release: 1.10.3 2025-03-10 21:36:16 +01:00
Elias Schneider
b737cba35e fix: error while signing in with OIDC if roles claim is undefined 2025-03-10 14:23:04 +01:00
Gustav Mårdestam
1d51973358 ci/cd: update build action and add labels to image (#781) 2025-03-07 14:50:37 +01:00
Elias Schneider
589127e943 chore(translations): update translations via Crowdin (#779)
* New translations en-us.ts (Portuguese, Brazilian)

* New translations en-us.ts (Italian)

* New translations en-us.ts (Turkish)

* New translations en-us.ts (Chinese Simplified)

* New translations en-us.ts (Estonian)

* New translations en-us.ts (Chinese Simplified)

* New translations en-us.ts (French)

* New translations en-us.ts (Spanish)

* New translations en-us.ts (Czech)

* New translations en-us.ts (Danish)

* New translations en-us.ts (German)

* New translations en-us.ts (Greek)

* New translations en-us.ts (Finnish)

* New translations en-us.ts (Hungarian)

* New translations en-us.ts (Italian)

* New translations en-us.ts (Japanese)

* New translations en-us.ts (Korean)

* New translations en-us.ts (Polish)

* New translations en-us.ts (Russian)

* New translations en-us.ts (Slovenian)

* New translations en-us.ts (Serbian (Cyrillic))

* New translations en-us.ts (Swedish)

* New translations en-us.ts (Turkish)

* New translations en-us.ts (Ukrainian)

* New translations en-us.ts (Chinese Traditional)

* New translations en-us.ts (Vietnamese)

* New translations en-us.ts (Portuguese, Brazilian)

* New translations en-us.ts (Thai)

* New translations en-us.ts (Croatian)

* New translations en-us.ts (Serbian (Latin))

* New translations en-us.ts (Dutch, Belgium)

* New translations en-us.ts (Arabic, Egypt)

* New translations en-us.ts (Italian)

* New translations en-us.ts (Croatian)

* New translations en-us.ts (Croatian)

* New translations en-us.ts (Turkish)

* New translations en-us.ts (Estonian)

* New translations en-us.ts (Japanese)

* New translations en-us.ts (French)

* New translations en-us.ts (Spanish)

* New translations en-us.ts (Spanish)
2025-03-07 14:47:18 +01:00
Elias Schneider
6722938ae6 release: 1.10.2 2025-03-07 14:47:03 +01:00
Elias Schneider
9f720388ef Merge branch 'main' of https://github.com/stonith404/pingvin-share 2025-03-07 14:38:37 +01:00
Elias Schneider
e7b3c48ff4 fix: don't throw error if group claim is missing 2025-03-07 14:38:33 +01:00
Elias Schneider
0dfd4d014d chore: upgrade prisma and aws CLI 2025-03-07 14:33:11 +01:00
Alexander Lehmann
ce0dc976a8 chore(translations): fix typo (#782)
1 char small typo in the English text
2025-03-03 16:13:03 +01:00
48 changed files with 11173 additions and 12679 deletions

View File

@@ -7,6 +7,7 @@ on:
push: push:
tags: tags:
- "v*" - "v*"
workflow_dispatch:
jobs: jobs:
system-tests: system-tests:

View File

@@ -30,7 +30,7 @@ jobs:
uses: docker/setup-buildx-action@v2 uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub - name: Login to Docker Hub
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
username: ${{ secrets.DOCKER_USERNAME }} username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }} password: ${{ secrets.DOCKER_PASSWORD }}
@@ -43,11 +43,12 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push - name: Build and push
uses: docker/build-push-action@v4 uses: docker/build-push-action@v6
with: with:
context: . context: .
platforms: linux/amd64,linux/arm64 platforms: linux/amd64,linux/arm64
push: true push: true
tags: ${{ steps.meta.outputs.tags }} tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha cache-from: type=gha
cache-to: type=gha,mode=max cache-to: type=gha,mode=max

View File

@@ -1,3 +1,24 @@
## [1.10.4](https://github.com/stonith404/pingvin-share/compare/v1.10.3...v1.10.4) (2025-03-20)
### Bug Fixes
* admin role gets reset if signing in with an OIDC provider ([ccb7fdc](https://github.com/stonith404/pingvin-share/commit/ccb7fdca43a2d458243e56a24510fe5325fa7942))
## [1.10.3](https://github.com/stonith404/pingvin-share/compare/v1.10.2...v1.10.3) (2025-03-10)
### Bug Fixes
* error while signing in with OIDC if roles claim is undefined ([b737cba](https://github.com/stonith404/pingvin-share/commit/b737cba35e59255904eccae9e9de1cbd36284fb1))
## [1.10.2](https://github.com/stonith404/pingvin-share/compare/v1.10.1...v1.10.2) (2025-03-07)
### Bug Fixes
* don't throw error if group claim is missing ([e7b3c48](https://github.com/stonith404/pingvin-share/commit/e7b3c48ff48bd7cfb206c32ea97862b757057573))
## [1.10.1](https://github.com/stonith404/pingvin-share/compare/v1.10.0...v1.10.1) (2025-02-28) ## [1.10.1](https://github.com/stonith404/pingvin-share/compare/v1.10.0...v1.10.1) (2025-02-28)

View File

@@ -1,6 +0,0 @@
{
"extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint"],
"root": true
}

27
backend/eslint.config.mjs Normal file
View File

@@ -0,0 +1,27 @@
import { defineConfig } from "eslint/config";
import typescriptEslint from "@typescript-eslint/eslint-plugin";
import tsParser from "@typescript-eslint/parser";
import path from "node:path";
import { fileURLToPath } from "node:url";
import js from "@eslint/js";
import { FlatCompat } from "@eslint/eslintrc";
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});
export default defineConfig([{
extends: compat.extends("eslint:recommended", "plugin:@typescript-eslint/recommended"),
plugins: {
"@typescript-eslint": typescriptEslint,
},
languageOptions: {
parser: tsParser,
},
}]);

7928
backend/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "pingvin-share-backend", "name": "pingvin-share-backend",
"version": "1.10.1", "version": "1.10.4",
"scripts": { "scripts": {
"build": "nest build", "build": "nest build",
"dev": "cross-env NODE_ENV=development nest start --watch", "dev": "cross-env NODE_ENV=development nest start --watch",
@@ -13,34 +13,34 @@
"seed": "ts-node prisma/seed/config.seed.ts" "seed": "ts-node prisma/seed/config.seed.ts"
}, },
"dependencies": { "dependencies": {
"@aws-sdk/client-s3": "^3.679.0", "@aws-sdk/client-s3": "^3.775.0",
"@nestjs/cache-manager": "^2.2.2", "@nestjs/cache-manager": "^3.0.1",
"@nestjs/common": "^10.4.3", "@nestjs/common": "^11.0.12",
"@nestjs/config": "^3.2.3", "@nestjs/config": "^4.0.1",
"@nestjs/core": "^10.4.3", "@nestjs/core": "^11.0.12",
"@nestjs/jwt": "^10.2.0", "@nestjs/jwt": "^11.0.0",
"@nestjs/passport": "^10.0.3", "@nestjs/passport": "^11.0.5",
"@nestjs/platform-express": "^10.4.3", "@nestjs/platform-express": "^11.0.12",
"@nestjs/schedule": "^4.1.1", "@nestjs/schedule": "^5.0.1",
"@nestjs/swagger": "^7.4.2", "@nestjs/swagger": "^11.1.0",
"@nestjs/throttler": "^6.2.1", "@nestjs/throttler": "^6.4.0",
"@prisma/client": "^5.19.1", "@prisma/client": "^6.5.0",
"@types/jmespath": "^0.15.2", "@types/jmespath": "^0.15.2",
"archiver": "^7.0.1", "archiver": "^7.0.1",
"argon2": "^0.41.1", "argon2": "^0.41.1",
"body-parser": "^1.20.3", "body-parser": "^1.20.3",
"cache-manager": "^5.7.6", "cache-manager": "^6.4.1",
"clamscan": "^2.3.1", "clamscan": "^2.4.0",
"class-transformer": "^0.5.1", "class-transformer": "^0.5.1",
"class-validator": "^0.14.1", "class-validator": "^0.14.1",
"content-disposition": "^0.5.4", "content-disposition": "^0.5.4",
"cookie-parser": "^1.4.6", "cookie-parser": "^1.4.7",
"jmespath": "^0.16.0", "jmespath": "^0.16.0",
"ldapts": "^7.2.0", "ldapts": "^7.3.3",
"mime-types": "^2.1.35", "mime-types": "^2.1.35",
"moment": "^2.30.1", "moment": "^2.30.1",
"nanoid": "^3.3.7", "nanoid": "^5.1.5",
"nodemailer": "^6.9.15", "nodemailer": "^6.10.0",
"otplib": "^12.0.1", "otplib": "^12.0.1",
"passport": "^0.7.0", "passport": "^0.7.0",
"passport-jwt": "^4.0.1", "passport-jwt": "^4.0.1",
@@ -48,42 +48,43 @@
"qrcode-svg": "^1.1.0", "qrcode-svg": "^1.1.0",
"reflect-metadata": "^0.2.2", "reflect-metadata": "^0.2.2",
"rimraf": "^6.0.1", "rimraf": "^6.0.1",
"rxjs": "^7.8.1", "rxjs": "^7.8.2",
"sharp": "^0.33.5", "sharp": "^0.33.5",
"ts-node": "^10.9.2", "ts-node": "^10.9.2",
"yaml": "^2.7.0" "yaml": "^2.7.0"
}, },
"devDependencies": { "devDependencies": {
"@nestjs/cli": "^10.4.5", "@nestjs/cli": "^11.0.5",
"@nestjs/schematics": "^10.1.4", "@nestjs/schematics": "^11.0.2",
"@nestjs/testing": "^10.4.3", "@nestjs/testing": "^11.0.12",
"@types/archiver": "^6.0.2", "@types/archiver": "^6.0.3",
"@types/clamscan": "^2.0.8", "@types/clamscan": "^2.4.0",
"@types/cookie-parser": "^1.4.7", "@types/cookie-parser": "^1.4.8",
"@types/cron": "^2.4.0", "@types/cron": "^2.4.3",
"@types/express": "^4.17.21", "@types/express": "^5.0.1",
"@types/mime-types": "^2.1.4", "@types/mime-types": "^2.1.4",
"@types/multer": "^1.4.12", "@types/multer": "^1.4.12",
"@types/node": "^22.5.5", "@types/node": "^22.13.13",
"@types/nodemailer": "^6.4.16", "@types/nodemailer": "^6.4.17",
"@types/passport-jwt": "^4.0.1", "@types/passport-jwt": "^4.0.1",
"@types/qrcode-svg": "^1.1.5", "@types/qrcode-svg": "^1.1.5",
"@types/sharp": "^0.32.0", "@types/sharp": "^0.32.0",
"@types/supertest": "^6.0.2", "@types/supertest": "^6.0.3",
"@types/uuid": "^10.0.0", "@types/uuid": "^10.0.0",
"@typescript-eslint/eslint-plugin": "^8.6.0", "@typescript-eslint/eslint-plugin": "^8.28.0",
"@typescript-eslint/parser": "^8.6.0", "@typescript-eslint/parser": "^8.28.0",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"eslint": "^9.10.0", "eslint": "9.23.0",
"eslint-config-prettier": "^9.1.0", "eslint-config-next": "^15.2.4",
"eslint-plugin-prettier": "^5.2.1", "eslint-config-prettier": "^10.1.1",
"eslint-plugin-react": "^7.37.4",
"newman": "^6.2.1", "newman": "^6.2.1",
"prettier": "^3.3.3", "prettier": "^3.5.3",
"prisma": "^5.19.1", "prisma": "^6.5.0",
"source-map-support": "^0.5.21", "source-map-support": "^0.5.21",
"ts-loader": "^9.5.1", "ts-loader": "^9.5.2",
"tsconfig-paths": "4.2.0", "tsconfig-paths": "4.2.0",
"typescript": "^5.6.2", "typescript": "^5.8.2",
"wait-on": "^8.0.1" "wait-on": "^8.0.3"
} }
} }

View File

@@ -197,12 +197,13 @@ export class OAuthService {
} }
private async updateIsAdmin(userId: string, isAdmin?: boolean) { private async updateIsAdmin(userId: string, isAdmin?: boolean) {
if (!isAdmin) return;
await this.prisma.user.update({ await this.prisma.user.update({
where: { where: {
id: userId, id: userId,
}, },
data: { data: {
isAdmin: isAdmin === true, isAdmin: isAdmin,
}, },
}); });
} }

View File

@@ -147,38 +147,36 @@ export abstract class GenericOidcProvider implements OAuthProvider<OidcToken> {
if (roleConfig?.path) { if (roleConfig?.path) {
// A path to read roles from the token is configured // A path to read roles from the token is configured
let roles: string[] | null; let roles: string[] = [];
try { try {
roles = jmespath.search(idTokenData, roleConfig.path); const rolesClaim = jmespath.search(idTokenData, roleConfig.path);
if (Array.isArray(rolesClaim)) {
roles = rolesClaim;
}
} catch (e) { } catch (e) {
roles = null; this.logger.warn(
}
if (Array.isArray(roles)) {
// Roles are found in the token
if (
roleConfig.generalAccess &&
!roles.includes(roleConfig.generalAccess)
) {
// Role for general access is configured and the user does not have it
this.logger.error(
`User roles ${roles} do not include ${roleConfig.generalAccess}`,
);
throw new ErrorPageException("user_not_allowed");
}
if (roleConfig.adminAccess) {
// Role for admin access is configured
isAdmin = roles.includes(roleConfig.adminAccess);
}
} else {
this.logger.error(
`Roles not found at path ${roleConfig.path} in ID Token ${JSON.stringify( `Roles not found at path ${roleConfig.path} in ID Token ${JSON.stringify(
idTokenData, idTokenData,
undefined, undefined,
2, 2,
)}`, )}`,
); );
}
if (
roleConfig.generalAccess &&
!roles.includes(roleConfig.generalAccess)
) {
// Role for general access is configured and the user does not have it
this.logger.error(
`User roles ${roles} do not include ${roleConfig.generalAccess}`,
);
throw new ErrorPageException("user_not_allowed"); throw new ErrorPageException("user_not_allowed");
} }
if (roleConfig.adminAccess) {
// Role for admin access is configured
isAdmin = roles.includes(roleConfig.adminAccess);
}
} }
if (!username) { if (!username) {

View File

@@ -1,4 +1,4 @@
files: files:
- source: /frontend/src/i18n/translations/en-US.ts - source: /frontend/src/i18n/translations/en-US.ts
translation: /%original_path%/%locale%.ts translation: /%original_path%/%locale%.ts
pull_request_title: "chore(translations): update translations via Crowdin" pull_request_title: 'chore(translations): update translations via Crowdin'

View File

@@ -1,17 +0,0 @@
{
"extends": [
"next",
"eslint-config-next",
"eslint:recommended",
"prettier"
],
"plugins": ["react"],
"rules": {
"quotes": ["warn", "double", { "allowTemplateLiterals": true }],
"react-hooks/exhaustive-deps": ["off"],
"import/no-anonymous-default-export": ["off"],
"no-unused-vars": ["warn"],
"react/no-unescaped-entities": ["off"],
"@next/next/no-img-element": ["off"]
}
}

View File

@@ -0,0 +1,34 @@
import { defineConfig } from "eslint/config";
import react from "eslint-plugin-react";
import path from "node:path";
import { fileURLToPath } from "node:url";
import js from "@eslint/js";
import { FlatCompat } from "@eslint/eslintrc";
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});
export default defineConfig([{
extends: compat.extends("next", "eslint-config-next", "eslint:recommended", "prettier"),
plugins: {
react,
},
rules: {
quotes: ["warn", "double", {
allowTemplateLiterals: true,
}],
"react-hooks/exhaustive-deps": ["off"],
"import/no-anonymous-default-export": ["off"],
"no-unused-vars": ["warn"],
"react/no-unescaped-entities": ["off"],
"@next/next/no-img-element": ["off"],
},
}]);

15478
frontend/package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,6 @@
{ {
"name": "pingvin-share-frontend", "name": "pingvin-share-frontend",
"version": "1.10.1", "version": "1.10.4",
"scripts": { "scripts": {
"dev": "next dev", "dev": "next dev",
"build": "next build", "build": "next build",
@@ -9,7 +9,7 @@
"format": "prettier --end-of-line=auto --write \"src/**/*.ts*\"" "format": "prettier --end-of-line=auto --write \"src/**/*.ts*\""
}, },
"dependencies": { "dependencies": {
"@emotion/react": "^11.13.3", "@emotion/react": "^11.14.0",
"@emotion/server": "^11.11.0", "@emotion/server": "^11.11.0",
"@mantine/core": "^6.0.21", "@mantine/core": "^6.0.21",
"@mantine/dropzone": "^6.0.21", "@mantine/dropzone": "^6.0.21",
@@ -18,37 +18,38 @@
"@mantine/modals": "^6.0.21", "@mantine/modals": "^6.0.21",
"@mantine/next": "^6.0.21", "@mantine/next": "^6.0.21",
"@mantine/notifications": "^6.0.21", "@mantine/notifications": "^6.0.21",
"axios": "^1.7.7", "axios": "^1.8.4",
"cookies-next": "^4.2.1", "cookies-next": "^5.1.0",
"file-saver": "^2.0.5", "file-saver": "^2.0.5",
"jose": "^5.9.2", "jose": "^6.0.10",
"jwt-decode": "^4.0.0", "jwt-decode": "^4.0.0",
"markdown-to-jsx": "^7.5.0", "markdown-to-jsx": "^7.7.4",
"mime-types": "^2.1.35", "mime-types": "^2.1.35",
"moment": "^2.30.1", "moment": "^2.30.1",
"next": "^14.2.12", "next": "^15.2.4",
"next-http-proxy-middleware": "^1.2.6", "next-http-proxy-middleware": "^1.2.6",
"next-pwa": "^5.6.0", "next-pwa": "^5.6.0",
"p-limit": "^6.1.0", "p-limit": "^6.2.0",
"react": "^18.3.1", "react": "^19.0.0",
"react-dom": "^18.3.1", "react-dom": "^19.0.0",
"react-icons": "^5.3.0", "react-icons": "^5.5.0",
"react-intl": "^6.6.8", "react-intl": "^7.1.10",
"sharp": "^0.33.5", "sharp": "^0.33.5",
"yup": "^1.4.0" "yup": "^1.6.1"
}, },
"devDependencies": { "devDependencies": {
"@types/mime-types": "^2.1.4", "@types/mime-types": "^2.1.4",
"@types/node": "22.5.5", "@types/node": "22.13.13",
"@types/react": "18.3.7", "@types/react": "19.0.12",
"@types/react-dom": "18.3.0", "@types/react-dom": "19.0.4",
"@typescript-eslint/parser": "^8.6.0", "@typescript-eslint/parser": "^8.28.0",
"axios": "^1.7.7", "axios": "^1.8.4",
"eslint": "8.57.0", "eslint": "9.23.0",
"eslint-config-next": "^14.2.12", "eslint-config-next": "^15.2.4",
"eslint-config-prettier": "^9.1.0", "eslint-config-prettier": "^10.1.1",
"prettier": "^3.3.3", "eslint-plugin-react": "^7.37.4",
"prettier": "^3.5.3",
"tar": "^7.4.3", "tar": "^7.4.3",
"typescript": "^5.6.2" "typescript": "^5.8.2"
} }
} }

View File

@@ -46,7 +46,7 @@ const Dropzone = ({
const t = useTranslate(); const t = useTranslate();
const { classes } = useStyles(); const { classes } = useStyles();
const openRef = useRef<() => void>(); const openRef = useRef<() => void>(null);
return ( return (
<div className={classes.wrapper}> <div className={classes.wrapper}>
<MantineDropzone <MantineDropzone

View File

@@ -9,7 +9,7 @@ const useTranslate = () => {
values?: Parameters<typeof intl.formatMessage>[1], values?: Parameters<typeof intl.formatMessage>[1],
opts?: Parameters<typeof intl.formatMessage>[2], opts?: Parameters<typeof intl.formatMessage>[2],
) => { ) => {
return intl.formatMessage({ id }, values, opts) as string; return intl.formatMessage({ id }, values, opts) as unknown as string;
}; };
}; };
@@ -32,7 +32,7 @@ export const translateOutsideContext = () => {
values?: Parameters<typeof intl.formatMessage>[1], values?: Parameters<typeof intl.formatMessage>[1],
opts?: Parameters<typeof intl.formatMessage>[2], opts?: Parameters<typeof intl.formatMessage>[2],
) => { ) => {
return intl.formatMessage({ id }, values, opts) as string; return intl.formatMessage({ id }, values, opts) as unknown as string;
}; };
}; };

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "المنفذ", "admin.config.smtp.port": "المنفذ",
"admin.config.smtp.port.description": "منفذ خادم الـSMTP", "admin.config.smtp.port.description": "منفذ خادم الـSMTP",
"admin.config.smtp.email": "البريد الإلكتروني", "admin.config.smtp.email": "البريد الإلكتروني",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "اسم المستخدم", "admin.config.smtp.username": "اسم المستخدم",
"admin.config.smtp.username.description": "اسم المستخدم لخادم الـSMTP", "admin.config.smtp.username.description": "اسم المستخدم لخادم الـSMTP",
"admin.config.smtp.password": "كلمة السر", "admin.config.smtp.password": "كلمة السر",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port SMTP serveru", "admin.config.smtp.port.description": "Port SMTP serveru",
"admin.config.smtp.email": "E-mail", "admin.config.smtp.email": "E-mail",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Uživatelské jméno", "admin.config.smtp.username": "Uživatelské jméno",
"admin.config.smtp.username.description": "Uživatelské jméno SMTP serveru", "admin.config.smtp.username.description": "Uživatelské jméno SMTP serveru",
"admin.config.smtp.password": "Heslo", "admin.config.smtp.password": "Heslo",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Porten til SMTP serveren", "admin.config.smtp.port.description": "Porten til SMTP serveren",
"admin.config.smtp.email": "E-mail", "admin.config.smtp.email": "E-mail",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Brugernavn", "admin.config.smtp.username": "Brugernavn",
"admin.config.smtp.username.description": "Brugernavnet til SMTP serveren", "admin.config.smtp.username.description": "Brugernavnet til SMTP serveren",
"admin.config.smtp.password": "Adgangskode", "admin.config.smtp.password": "Adgangskode",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port des SMTP-Servers", "admin.config.smtp.port.description": "Port des SMTP-Servers",
"admin.config.smtp.email": "E-Mail", "admin.config.smtp.email": "E-Mail",
"admin.config.smtp.email.description": "E-Mail-Adresse, von der die E-Mails gesendet werden", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Benutzername", "admin.config.smtp.username": "Benutzername",
"admin.config.smtp.username.description": "Benutzername des SMTP-Servers", "admin.config.smtp.username.description": "Benutzername des SMTP-Servers",
"admin.config.smtp.password": "Passwort", "admin.config.smtp.password": "Passwort",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Θύρα", "admin.config.smtp.port": "Θύρα",
"admin.config.smtp.port.description": "SMTP θύρα", "admin.config.smtp.port.description": "SMTP θύρα",
"admin.config.smtp.email": "Email", "admin.config.smtp.email": "Email",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Όνομα χρήστη", "admin.config.smtp.username": "Όνομα χρήστη",
"admin.config.smtp.username.description": "Όνομα χρήστη στον SMTP εξυπηρετητή", "admin.config.smtp.username.description": "Όνομα χρήστη στον SMTP εξυπηρετητή",
"admin.config.smtp.password": "Κωδικός πρόσβασης", "admin.config.smtp.password": "Κωδικός πρόσβασης",

View File

@@ -506,7 +506,7 @@ export default {
"admin.config.smtp.port.description": "Port of the SMTP server", "admin.config.smtp.port.description": "Port of the SMTP server",
"admin.config.smtp.email": "Email", "admin.config.smtp.email": "Email",
"admin.config.smtp.email.description": "admin.config.smtp.email.description":
"Email address from wich the emails get sent", "Email address from which the emails get sent",
"admin.config.smtp.username": "Username", "admin.config.smtp.username": "Username",
"admin.config.smtp.username.description": "Username of the SMTP server", "admin.config.smtp.username.description": "Username of the SMTP server",
"admin.config.smtp.password": "Password", "admin.config.smtp.password": "Password",

View File

@@ -192,7 +192,7 @@ export default {
"admin.users.edit.update.change-password.field": "Nueva contraseña", "admin.users.edit.update.change-password.field": "Nueva contraseña",
"admin.users.edit.update.change-password.button": "Guardar nueva contraseña", "admin.users.edit.update.change-password.button": "Guardar nueva contraseña",
"admin.users.edit.update.notify.password.success": "Contraseña cambiada correctamente", "admin.users.edit.update.notify.password.success": "Contraseña cambiada correctamente",
"admin.users.edit.delete.title": "Eliminar usuario: {username} ?", "admin.users.edit.delete.title": "¿Eliminar usuario: {username} ?",
"admin.users.edit.delete.description": "¿Realmente deseas eliminar a este usuario y todos sus enlaces compartidos?", "admin.users.edit.delete.description": "¿Realmente deseas eliminar a este usuario y todos sus enlaces compartidos?",
// showCreateUserModal.tsx // showCreateUserModal.tsx
"admin.users.modal.create.title": "Crear usuario", "admin.users.modal.create.title": "Crear usuario",
@@ -278,7 +278,7 @@ export default {
"share.error.access-denied.title": "Compartición privada", "share.error.access-denied.title": "Compartición privada",
"share.error.access-denied.description": "La cuenta actual no tiene permiso para acceder a este compartido", "share.error.access-denied.description": "La cuenta actual no tiene permiso para acceder a este compartido",
"share.modal.password.title": "Se requiere contraseña", "share.modal.password.title": "Se requiere contraseña",
"share.modal.password.description": "Please enter the password to access this share.", "share.modal.password.description": "Por favor, ingresa la contraseña para acceder a este recurso compartido.",
"share.modal.password": "Contraseña", "share.modal.password": "Contraseña",
"share.modal.error.invalid-password": "Contraseña inválida", "share.modal.error.invalid-password": "Contraseña inválida",
"share.button.download-all": "Descargar todo", "share.button.download-all": "Descargar todo",
@@ -302,8 +302,8 @@ export default {
"privacy.title": "Política de privacidad", "privacy.title": "Política de privacidad",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Archivo de configuración presente",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Como tienes configurado Pingvin Share con un archivo de configuración, no puedes cambiar la configuración a través de la interfaz gráfica.",
"admin.config.title": "Configuración", "admin.config.title": "Configuración",
"admin.config.category.general": "General", "admin.config.category.general": "General",
"admin.config.category.share": "Compartido", "admin.config.category.share": "Compartido",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "Mostrar página de inicio", "admin.config.general.show-home-page": "Mostrar página de inicio",
"admin.config.general.show-home-page.description": "Mostrar o no la página de inicio", "admin.config.general.show-home-page.description": "Mostrar o no la página de inicio",
"admin.config.general.session-duration": "Duración de la sesión", "admin.config.general.session-duration": "Duración de la sesión",
"admin.config.general.session-duration.description": "Time after which a user must log in again (default: 3 months).", "admin.config.general.session-duration.description": "Tiempo después del cual un usuario debe volver a iniciar sesión (por defecto: 3 meses).",
"admin.config.general.logo": "Logo", "admin.config.general.logo": "Logo",
"admin.config.general.logo.description": "Cambia tu logo subiendo una nueva imagen. La imagen debe ser un PNG y debe estar en formato 1:1.", "admin.config.general.logo.description": "Cambia tu logo subiendo una nueva imagen. La imagen debe ser un PNG y debe estar en formato 1:1.",
"admin.config.general.logo.placeholder": "Elegir imagen", "admin.config.general.logo.placeholder": "Elegir imagen",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Puerto", "admin.config.smtp.port": "Puerto",
"admin.config.smtp.port.description": "Puerto del servidor SMTP", "admin.config.smtp.port.description": "Puerto del servidor SMTP",
"admin.config.smtp.email": "Correo", "admin.config.smtp.email": "Correo",
"admin.config.smtp.email.description": "Dirección desde la cual se envían los correos electrónicos", "admin.config.smtp.email.description": "Dirección de correo electrónico desde la cual se envían los correos electrónicos",
"admin.config.smtp.username": "Usuario", "admin.config.smtp.username": "Usuario",
"admin.config.smtp.username.description": "Usuario del servidor SMTP", "admin.config.smtp.username.description": "Usuario del servidor SMTP",
"admin.config.smtp.password": "Contraseña", "admin.config.smtp.password": "Contraseña",
@@ -433,9 +433,9 @@ export default {
"admin.config.ldap.enabled.description": "Usar autenticación LDAP para el inicio de sesión de usuarios", "admin.config.ldap.enabled.description": "Usar autenticación LDAP para el inicio de sesión de usuarios",
"admin.config.ldap.url": "URL del servidor", "admin.config.ldap.url": "URL del servidor",
"admin.config.ldap.url.description": "URL del servidor LDAP", "admin.config.ldap.url.description": "URL del servidor LDAP",
"admin.config.ldap.bind-dn": "Bind DN", "admin.config.ldap.bind-dn": "Usuario LDAP",
"admin.config.ldap.bind-dn.description": "Usuario predeterminado utilizado para realizar la búsqueda de usuarios", "admin.config.ldap.bind-dn.description": "Usuario predeterminado utilizado para realizar la búsqueda de usuarios",
"admin.config.ldap.bind-password": "Bind password", "admin.config.ldap.bind-password": "Contraseña LDAP",
"admin.config.ldap.bind-password.description": "Contraseña utilizada para realizar la búsqueda de usuarios", "admin.config.ldap.bind-password.description": "Contraseña utilizada para realizar la búsqueda de usuarios",
"admin.config.ldap.search-base": "Base de usuarios", "admin.config.ldap.search-base": "Base de usuarios",
"admin.config.ldap.search-base.description": "Ubicación base, donde se llevará a cabo la búsqueda de usuarios", "admin.config.ldap.search-base.description": "Ubicación base, donde se llevará a cabo la búsqueda de usuarios",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Privaatsuspoliitika", "privacy.title": "Privaatsuspoliitika",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Konfiguratsioonifail olemas",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Kuna teil on konfigureeritud Pingvin Share konfiguratsioonifailiga, ei saa te muuta konfiguratsiooni kasutajaliidest kasutades.",
"admin.config.title": "Seaded", "admin.config.title": "Seaded",
"admin.config.category.general": "Üldine", "admin.config.category.general": "Üldine",
"admin.config.category.share": "Jagamine", "admin.config.category.share": "Jagamine",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "Kuva avaleht", "admin.config.general.show-home-page": "Kuva avaleht",
"admin.config.general.show-home-page.description": "Kas kuvada avalehte", "admin.config.general.show-home-page.description": "Kas kuvada avalehte",
"admin.config.general.session-duration": "Seansi kestus", "admin.config.general.session-duration": "Seansi kestus",
"admin.config.general.session-duration.description": "Time after which a user must log in again (default: 3 months).", "admin.config.general.session-duration.description": "Aeg, mille pärast kasutaja peab uuesti sisse logima (vaikeväärtus: 3 kuud).",
"admin.config.general.logo": "Logo", "admin.config.general.logo": "Logo",
"admin.config.general.logo.description": "Muuda oma logo laadides üles uus pilt. Pildi formaat peab olema PNG ja kuju 1:1.", "admin.config.general.logo.description": "Muuda oma logo laadides üles uus pilt. Pildi formaat peab olema PNG ja kuju 1:1.",
"admin.config.general.logo.placeholder": "Vali pilt", "admin.config.general.logo.placeholder": "Vali pilt",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "SMTP serveri port", "admin.config.smtp.port.description": "SMTP serveri port",
"admin.config.smtp.email": "E-post", "admin.config.smtp.email": "E-post",
"admin.config.smtp.email.description": "E-posti aadress kust kirjad saadetakse", "admin.config.smtp.email.description": "E-posti aadress, millelt e-kirjad saadetakse",
"admin.config.smtp.username": "Kasutajanimi", "admin.config.smtp.username": "Kasutajanimi",
"admin.config.smtp.username.description": "SMTP serveri kasutajanimi", "admin.config.smtp.username.description": "SMTP serveri kasutajanimi",
"admin.config.smtp.password": "Parool", "admin.config.smtp.password": "Parool",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Portti", "admin.config.smtp.port": "Portti",
"admin.config.smtp.port.description": "SMTP palvelimen portti", "admin.config.smtp.port.description": "SMTP palvelimen portti",
"admin.config.smtp.email": "Sähköposti", "admin.config.smtp.email": "Sähköposti",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Käyttäjätunnus", "admin.config.smtp.username": "Käyttäjätunnus",
"admin.config.smtp.username.description": "SMTP palvelimen käyttäjänimi", "admin.config.smtp.username.description": "SMTP palvelimen käyttäjänimi",
"admin.config.smtp.password": "Salasana", "admin.config.smtp.password": "Salasana",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Politique de confidentialité", "privacy.title": "Politique de confidentialité",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Fichier de configuration présent",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Puisque vous avez configuré Pingvin Share avec un fichier de configuration, vous ne pouvez pas modifier la configuration via l'interface utilisateur.",
"admin.config.title": "Paramètres", "admin.config.title": "Paramètres",
"admin.config.category.general": "Général", "admin.config.category.general": "Général",
"admin.config.category.share": "Partage", "admin.config.category.share": "Partage",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port du serveur SMTP", "admin.config.smtp.port.description": "Port du serveur SMTP",
"admin.config.smtp.email": "Courriel", "admin.config.smtp.email": "Courriel",
"admin.config.smtp.email.description": "Adresse à partir de laquelle les courriels sont envoyés", "admin.config.smtp.email.description": "Adresse email à partir de laquelle les courriels sont envoyés",
"admin.config.smtp.username": "Nom dutilisateur", "admin.config.smtp.username": "Nom dutilisateur",
"admin.config.smtp.username.description": "Nom dutilisateur du serveur SMTP", "admin.config.smtp.username.description": "Nom dutilisateur du serveur SMTP",
"admin.config.smtp.password": "Mot de passe", "admin.config.smtp.password": "Mot de passe",

View File

@@ -124,9 +124,9 @@ export default {
"account.shares.table.expiresAt": "Istječe", "account.shares.table.expiresAt": "Istječe",
"account.shares.table.createdAt": "Kreirano", "account.shares.table.createdAt": "Kreirano",
"account.shares.table.size": "Veličina", "account.shares.table.size": "Veličina",
"account.shares.table.password-protected": "Password protected", "account.shares.table.password-protected": "Zaštićeno lozinkom",
"account.shares.table.visitor-count": "{count} of {max}", "account.shares.table.visitor-count": "{count} of {max}",
"account.shares.table.expiry-never": "Never", "account.shares.table.expiry-never": "Nikad",
"account.shares.modal.share-informations": "Informacije o dijeljenju", "account.shares.modal.share-informations": "Informacije o dijeljenju",
"account.shares.modal.share-link": "Podijelite poveznicu", "account.shares.modal.share-link": "Podijelite poveznicu",
"account.shares.modal.delete.title": "Izbriši dijeljenje {share}", "account.shares.modal.delete.title": "Izbriši dijeljenje {share}",
@@ -278,7 +278,7 @@ export default {
"share.error.access-denied.title": "Privatno dijeljenje", "share.error.access-denied.title": "Privatno dijeljenje",
"share.error.access-denied.description": "Trenutni račun nema dozvolu za pristup ovom dijeljenju.", "share.error.access-denied.description": "Trenutni račun nema dozvolu za pristup ovom dijeljenju.",
"share.modal.password.title": "Lozinka je potrebna", "share.modal.password.title": "Lozinka je potrebna",
"share.modal.password.description": "Please enter the password to access this share.", "share.modal.password.description": "Molimo unesite lozinku za pristup ovom dijeljenju.",
"share.modal.password": "Lozinka", "share.modal.password": "Lozinka",
"share.modal.error.invalid-password": "Neispravna lozinka", "share.modal.error.invalid-password": "Neispravna lozinka",
"share.button.download-all": "Preuzmi sve", "share.button.download-all": "Preuzmi sve",
@@ -296,14 +296,14 @@ export default {
"share.edit.notify.save-success": "Dijeljenje je uspješno ažurirano", "share.edit.notify.save-success": "Dijeljenje je uspješno ažurirano",
// END /share/[id]/edit // END /share/[id]/edit
// /imprint // /imprint
"imprint.title": "Imprint", "imprint.title": "Otisak",
// END /imprint // END /imprint
// /privacy // /privacy
"privacy.title": "Privacy Policy", "privacy.title": "Pravilima o zaštiti privatnosti",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Configuration file present",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "",
"admin.config.title": "Konfiguracija", "admin.config.title": "Konfiguracija",
"admin.config.category.general": "Opće", "admin.config.category.general": "Opće",
"admin.config.category.share": "Dijeljenje", "admin.config.category.share": "Dijeljenje",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port domaćina SMTP servera", "admin.config.smtp.port.description": "Port domaćina SMTP servera",
"admin.config.smtp.email": "Email", "admin.config.smtp.email": "Email",
"admin.config.smtp.email.description": "Email adresa s koje se poruke šalju", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Korisničko ime", "admin.config.smtp.username": "Korisničko ime",
"admin.config.smtp.username.description": "Korisničko ime SMTP servera", "admin.config.smtp.username.description": "Korisničko ime SMTP servera",
"admin.config.smtp.password": "Lozinka", "admin.config.smtp.password": "Lozinka",
@@ -451,7 +451,7 @@ export default {
"admin.config.notify.logo-success": "Logo je uspješno ažuriran. Može potrajati nekoliko minuta dok se promjena ne prikaže na web stranici.", "admin.config.notify.logo-success": "Logo je uspješno ažuriran. Može potrajati nekoliko minuta dok se promjena ne prikaže na web stranici.",
"admin.config.notify.no-changes": "Nema promjena za spremanje.", "admin.config.notify.no-changes": "Nema promjena za spremanje.",
"admin.config.category.s3": "S3", "admin.config.category.s3": "S3",
"admin.config.s3.enabled": "Enabled", "admin.config.s3.enabled": "Omogućeno",
"admin.config.s3.enabled.description": "Whether S3 should be used to store the shared files instead of the local file system.", "admin.config.s3.enabled.description": "Whether S3 should be used to store the shared files instead of the local file system.",
"admin.config.s3.endpoint": "Endpoint", "admin.config.s3.endpoint": "Endpoint",
"admin.config.s3.endpoint.description": "The URL of the S3 bucket.", "admin.config.s3.endpoint.description": "The URL of the S3 bucket.",
@@ -459,8 +459,8 @@ export default {
"admin.config.s3.region.description": "The region of the S3 bucket.", "admin.config.s3.region.description": "The region of the S3 bucket.",
"admin.config.s3.bucket-name": "Bucket name", "admin.config.s3.bucket-name": "Bucket name",
"admin.config.s3.bucket-name.description": "The name of the S3 bucket.", "admin.config.s3.bucket-name.description": "The name of the S3 bucket.",
"admin.config.s3.bucket-path": "Path", "admin.config.s3.bucket-path": "Putanja",
"admin.config.s3.bucket-path.description": "The default path which should be used to store the files in the S3 bucket.", "admin.config.s3.bucket-path.description": "Zadana staza koja bi se trebala koristiti za pohranu datoteka u S3 spremnik.",
"admin.config.s3.key": "Key", "admin.config.s3.key": "Key",
"admin.config.s3.key.description": "The key which allows you to access the S3 bucket.", "admin.config.s3.key.description": "The key which allows you to access the S3 bucket.",
"admin.config.s3.secret": "Secret", "admin.config.s3.secret": "Secret",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Az SMTP kiszolgáló portja", "admin.config.smtp.port.description": "Az SMTP kiszolgáló portja",
"admin.config.smtp.email": "Email", "admin.config.smtp.email": "Email",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Felhasználónév", "admin.config.smtp.username": "Felhasználónév",
"admin.config.smtp.username.description": "Felhasználónév az SMTP kiszolgálón", "admin.config.smtp.username.description": "Felhasználónév az SMTP kiszolgálón",
"admin.config.smtp.password": "Jelszó", "admin.config.smtp.password": "Jelszó",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Informativa sulla privacy", "privacy.title": "Informativa sulla privacy",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "File di configurazione presente",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Poiché hai configurato Pingvin Share tramite un file di configurazione, non ti è possibile modificare la configurazione dall'interfaccia utente.",
"admin.config.title": "Configurazione", "admin.config.title": "Configurazione",
"admin.config.category.general": "Generale", "admin.config.category.general": "Generale",
"admin.config.category.share": "Condivisioni", "admin.config.category.share": "Condivisioni",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "プライバシーポリシー", "privacy.title": "プライバシーポリシー",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "構成ファイルがあります",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "設定ファイル設定で済みのPingvin ShareはUI を使用して設定を変更することはできません。",
"admin.config.title": "設定", "admin.config.title": "設定",
"admin.config.category.general": "一般", "admin.config.category.general": "一般",
"admin.config.category.share": "共有", "admin.config.category.share": "共有",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "ホームページを表示する", "admin.config.general.show-home-page": "ホームページを表示する",
"admin.config.general.show-home-page.description": "ホームページを表示するかどうか選択", "admin.config.general.show-home-page.description": "ホームページを表示するかどうか選択",
"admin.config.general.session-duration": "セッション期間", "admin.config.general.session-duration": "セッション期間",
"admin.config.general.session-duration.description": "Time after which a user must log in again (default: 3 months).", "admin.config.general.session-duration.description": "ユーザーが再度ログインするまでの時間(デフォルト: 3 ヶ月)。",
"admin.config.general.logo": "ロゴ", "admin.config.general.logo": "ロゴ",
"admin.config.general.logo.description": "新しい画像をアップロードしてロゴを変更できます。画像は、PNG形式でアスペクト比が1:1である必要があります。", "admin.config.general.logo.description": "新しい画像をアップロードしてロゴを変更できます。画像は、PNG形式でアスペクト比が1:1である必要があります。",
"admin.config.general.logo.placeholder": "画像を選択", "admin.config.general.logo.placeholder": "画像を選択",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "ポート番号", "admin.config.smtp.port": "ポート番号",
"admin.config.smtp.port.description": "SMTPサーバーのポート番号", "admin.config.smtp.port.description": "SMTPサーバーのポート番号",
"admin.config.smtp.email": "メールアドレス", "admin.config.smtp.email": "メールアドレス",
"admin.config.smtp.email.description": "メール送信元となるメールアドレス", "admin.config.smtp.email.description": "メール送信元メールアドレス",
"admin.config.smtp.username": "ユーザー名", "admin.config.smtp.username": "ユーザー名",
"admin.config.smtp.username.description": "SMTPサーバーのユーザー名", "admin.config.smtp.username.description": "SMTPサーバーのユーザー名",
"admin.config.smtp.password": "パスワード", "admin.config.smtp.password": "パスワード",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "포트", "admin.config.smtp.port": "포트",
"admin.config.smtp.port.description": "SMTP 서버 포트", "admin.config.smtp.port.description": "SMTP 서버 포트",
"admin.config.smtp.email": "이메일", "admin.config.smtp.email": "이메일",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "사용자 이름", "admin.config.smtp.username": "사용자 이름",
"admin.config.smtp.username.description": "SMTP 사용자 이름, 서버 비밀번호", "admin.config.smtp.username.description": "SMTP 사용자 이름, 서버 비밀번호",
"admin.config.smtp.password": "비밀번호", "admin.config.smtp.password": "비밀번호",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Poort", "admin.config.smtp.port": "Poort",
"admin.config.smtp.port.description": "Poort van de SMTP-server", "admin.config.smtp.port.description": "Poort van de SMTP-server",
"admin.config.smtp.email": "E-mail", "admin.config.smtp.email": "E-mail",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Gebruikersnaam", "admin.config.smtp.username": "Gebruikersnaam",
"admin.config.smtp.username.description": "Gebruikersnaam van de SMTP-server", "admin.config.smtp.username.description": "Gebruikersnaam van de SMTP-server",
"admin.config.smtp.password": "Wachtwoord", "admin.config.smtp.password": "Wachtwoord",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Numer portu", "admin.config.smtp.port": "Numer portu",
"admin.config.smtp.port.description": "Numer portu serwera SMTP", "admin.config.smtp.port.description": "Numer portu serwera SMTP",
"admin.config.smtp.email": "Adres e-mail", "admin.config.smtp.email": "Adres e-mail",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Nazwa użytkownika", "admin.config.smtp.username": "Nazwa użytkownika",
"admin.config.smtp.username.description": "Nazwa użytkownika serwera SMTP", "admin.config.smtp.username.description": "Nazwa użytkownika serwera SMTP",
"admin.config.smtp.password": "Hasło", "admin.config.smtp.password": "Hasło",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Política de Privacidade", "privacy.title": "Política de Privacidade",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Arquivo de configuração presente",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Como você tem um Pingvin Share configurado com um arquivo de configuração, você não pode alterar a configuração através da UI.",
"admin.config.title": "Configuração", "admin.config.title": "Configuração",
"admin.config.category.general": "Geral", "admin.config.category.general": "Geral",
"admin.config.category.share": "Compartilhamento", "admin.config.category.share": "Compartilhamento",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "Mostrar a página inicial", "admin.config.general.show-home-page": "Mostrar a página inicial",
"admin.config.general.show-home-page.description": "Mostrar ou não a página inicial", "admin.config.general.show-home-page.description": "Mostrar ou não a página inicial",
"admin.config.general.session-duration": "Duração de sessão", "admin.config.general.session-duration": "Duração de sessão",
"admin.config.general.session-duration.description": "Time after which a user must log in again (default: 3 months).", "admin.config.general.session-duration.description": "Tempo após o qual um usuário deve iniciar a sessão novamente (padrão: 3 meses).",
"admin.config.general.logo": "Logo", "admin.config.general.logo": "Logo",
"admin.config.general.logo.description": "Alterar o seu logo carregando uma nova imagem. A imagem deve ser PNG e deve ter o formato 1:1.", "admin.config.general.logo.description": "Alterar o seu logo carregando uma nova imagem. A imagem deve ser PNG e deve ter o formato 1:1.",
"admin.config.general.logo.placeholder": "Escolhe uma imagem", "admin.config.general.logo.placeholder": "Escolhe uma imagem",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Porta", "admin.config.smtp.port": "Porta",
"admin.config.smtp.port.description": "Porta do Servidor SMTP", "admin.config.smtp.port.description": "Porta do Servidor SMTP",
"admin.config.smtp.email": "E-mail", "admin.config.smtp.email": "E-mail",
"admin.config.smtp.email.description": "Endereço de e-mail do qual os e-mails são enviados", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Nome de usuário", "admin.config.smtp.username": "Nome de usuário",
"admin.config.smtp.username.description": "Nome de usuário do servidor SMTP", "admin.config.smtp.username.description": "Nome de usuário do servidor SMTP",
"admin.config.smtp.password": "Senha", "admin.config.smtp.password": "Senha",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт", "admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт SMTP сервера", "admin.config.smtp.port.description": "Порт SMTP сервера",
"admin.config.smtp.email": "Электронная почта", "admin.config.smtp.email": "Электронная почта",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Логин", "admin.config.smtp.username": "Логин",
"admin.config.smtp.username.description": "Имя пользователя SMTP сервера", "admin.config.smtp.username.description": "Имя пользователя SMTP сервера",
"admin.config.smtp.password": "Пароль", "admin.config.smtp.password": "Пароль",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Vrata", "admin.config.smtp.port": "Vrata",
"admin.config.smtp.port.description": "Vrata SMTP strežnika", "admin.config.smtp.port.description": "Vrata SMTP strežnika",
"admin.config.smtp.email": "E-pošta", "admin.config.smtp.email": "E-pošta",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Uporabniško ime", "admin.config.smtp.username": "Uporabniško ime",
"admin.config.smtp.username.description": "Uporabniško ime SMTP strežnika", "admin.config.smtp.username.description": "Uporabniško ime SMTP strežnika",
"admin.config.smtp.password": "Geslo", "admin.config.smtp.password": "Geslo",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port domaćina SMTP servera", "admin.config.smtp.port.description": "Port domaćina SMTP servera",
"admin.config.smtp.email": "Imejl", "admin.config.smtp.email": "Imejl",
"admin.config.smtp.email.description": "Adresa imejla sa kojeg se poruke šalju", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Korisničko ime", "admin.config.smtp.username": "Korisničko ime",
"admin.config.smtp.username.description": "Korisničko ime SMTP servera", "admin.config.smtp.username.description": "Korisničko ime SMTP servera",
"admin.config.smtp.password": "Lozinka", "admin.config.smtp.password": "Lozinka",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт", "admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт домаћина SMTP сервера", "admin.config.smtp.port.description": "Порт домаћина SMTP сервера",
"admin.config.smtp.email": "Имејл", "admin.config.smtp.email": "Имејл",
"admin.config.smtp.email.description": "Адреса имејла са којег се поруке шаљу", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Корисничко име", "admin.config.smtp.username": "Корисничко име",
"admin.config.smtp.username.description": "Корисничко име SMTP сервера", "admin.config.smtp.username.description": "Корисничко име SMTP сервера",
"admin.config.smtp.password": "Лозинка", "admin.config.smtp.password": "Лозинка",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port", "admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port för SMTP-servern", "admin.config.smtp.port.description": "Port för SMTP-servern",
"admin.config.smtp.email": "E-post", "admin.config.smtp.email": "E-post",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Användarnamn", "admin.config.smtp.username": "Användarnamn",
"admin.config.smtp.username.description": "Användarnamn för SMTP-servern", "admin.config.smtp.username.description": "Användarnamn för SMTP-servern",
"admin.config.smtp.password": "Lösenord", "admin.config.smtp.password": "Lösenord",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "พอร์ต", "admin.config.smtp.port": "พอร์ต",
"admin.config.smtp.port.description": "พอร์ตของเซิร์ฟเวอร์ SMTP", "admin.config.smtp.port.description": "พอร์ตของเซิร์ฟเวอร์ SMTP",
"admin.config.smtp.email": "อีเมล", "admin.config.smtp.email": "อีเมล",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "ชื่อผู้ใช้", "admin.config.smtp.username": "ชื่อผู้ใช้",
"admin.config.smtp.username.description": "ชื่อผู้ใช้ของเซิร์ฟเวอร์ SMTP", "admin.config.smtp.username.description": "ชื่อผู้ใช้ของเซิร์ฟเวอร์ SMTP",
"admin.config.smtp.password": "รหัสผ่าน", "admin.config.smtp.password": "รหัสผ่าน",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Gizlilik Politikası", "privacy.title": "Gizlilik Politikası",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "Yapılandırma dosyası mevcut",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "Yapılandırma dosyası ile yapılandırılmış bir Pingvin Paylaşımınız olduğundan, yapılandırmayı kullanıcı arayüzü üzerinden değiştiremezsiniz.",
"admin.config.title": "Yapılandırma", "admin.config.title": "Yapılandırma",
"admin.config.category.general": "Genel", "admin.config.category.general": "Genel",
"admin.config.category.share": "Paylaş", "admin.config.category.share": "Paylaş",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт", "admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт SMTP сервера", "admin.config.smtp.port.description": "Порт SMTP сервера",
"admin.config.smtp.email": "Електронна пошта", "admin.config.smtp.email": "Електронна пошта",
"admin.config.smtp.email.description": "Ел. пошта, з якої надсилаються листи", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Логін", "admin.config.smtp.username": "Логін",
"admin.config.smtp.username.description": "Ім'я користувача SMTP-сервера", "admin.config.smtp.username.description": "Ім'я користувача SMTP-сервера",
"admin.config.smtp.password": "Пароль", "admin.config.smtp.password": "Пароль",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Cổng", "admin.config.smtp.port": "Cổng",
"admin.config.smtp.port.description": "Port of the SMTP server", "admin.config.smtp.port.description": "Port of the SMTP server",
"admin.config.smtp.email": "Email", "admin.config.smtp.email": "Email",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "Username", "admin.config.smtp.username": "Username",
"admin.config.smtp.username.description": "Username of the SMTP server", "admin.config.smtp.username.description": "Username of the SMTP server",
"admin.config.smtp.password": "Mật khẩu", "admin.config.smtp.password": "Mật khẩu",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "隐私政策", "privacy.title": "隐私政策",
// END /privacy // END /privacy
// /admin/config // /admin/config
"admin.config.config-file-warning.title": "Configuration file present", "admin.config.config-file-warning.title": "配置文件已存在",
"admin.config.config-file-warning.description": "As you have a configured Pingvin Share with a configuration file, you can't change the configuration through the UI.", "admin.config.config-file-warning.description": "由于您已配置了Pingvin 共享的配置文件您无法通过UI更改配置。",
"admin.config.title": "配置管理", "admin.config.title": "配置管理",
"admin.config.category.general": "通用", "admin.config.category.general": "通用",
"admin.config.category.share": "共享", "admin.config.category.share": "共享",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "显示首页", "admin.config.general.show-home-page": "显示首页",
"admin.config.general.show-home-page.description": "是否显示首页", "admin.config.general.show-home-page.description": "是否显示首页",
"admin.config.general.session-duration": "会话时长", "admin.config.general.session-duration": "会话时长",
"admin.config.general.session-duration.description": "Time after which a user must log in again (default: 3 months).", "admin.config.general.session-duration.description": "用户必须重新登录的时间 (默认3 个月)。",
"admin.config.general.logo": "Logo", "admin.config.general.logo": "Logo",
"admin.config.general.logo.description": "上传你的个性化 Logo图片必须是长宽比 1:1 的 PNG 格式", "admin.config.general.logo.description": "上传你的个性化 Logo图片必须是长宽比 1:1 的 PNG 格式",
"admin.config.general.logo.placeholder": "选择图片", "admin.config.general.logo.placeholder": "选择图片",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "端口", "admin.config.smtp.port": "端口",
"admin.config.smtp.port.description": "SMTP 主机端口", "admin.config.smtp.port.description": "SMTP 主机端口",
"admin.config.smtp.email": "发送邮箱", "admin.config.smtp.email": "发送邮箱",
"admin.config.smtp.email.description": "Email address from wich the emails get sent", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "用户名", "admin.config.smtp.username": "用户名",
"admin.config.smtp.username.description": "SMTP 主机用户名", "admin.config.smtp.username.description": "SMTP 主机用户名",
"admin.config.smtp.password": "密码", "admin.config.smtp.password": "密码",
@@ -435,7 +435,7 @@ export default {
"admin.config.ldap.url.description": "LDAP 服务器的 URL", "admin.config.ldap.url.description": "LDAP 服务器的 URL",
"admin.config.ldap.bind-dn": "Bind DN", "admin.config.ldap.bind-dn": "Bind DN",
"admin.config.ldap.bind-dn.description": "用于执行用户搜索的默认用户", "admin.config.ldap.bind-dn.description": "用于执行用户搜索的默认用户",
"admin.config.ldap.bind-password": "Bind password", "admin.config.ldap.bind-password": "绑定密码",
"admin.config.ldap.bind-password.description": "用于执行用户搜索的密码", "admin.config.ldap.bind-password.description": "用于执行用户搜索的密码",
"admin.config.ldap.search-base": "User base", "admin.config.ldap.search-base": "User base",
"admin.config.ldap.search-base.description": "进行用户搜索的基本位置", "admin.config.ldap.search-base.description": "进行用户搜索的基本位置",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "通訊埠", "admin.config.smtp.port": "通訊埠",
"admin.config.smtp.port.description": "SMTP 通訊埠", "admin.config.smtp.port.description": "SMTP 通訊埠",
"admin.config.smtp.email": "發送郵箱", "admin.config.smtp.email": "發送郵箱",
"admin.config.smtp.email.description": "發送的郵箱地址", "admin.config.smtp.email.description": "Email address from which the emails get sent",
"admin.config.smtp.username": "使用者名稱", "admin.config.smtp.username": "使用者名稱",
"admin.config.smtp.username.description": "SMTP 主機使用者名稱", "admin.config.smtp.username.description": "SMTP 主機使用者名稱",
"admin.config.smtp.password": "密碼", "admin.config.smtp.password": "密碼",

View File

@@ -1,10 +1,10 @@
import { import {
SiDiscord, FaDiscord,
SiGithub, FaGithub,
SiGoogle, FaGoogle,
SiMicrosoft, FaMicrosoft,
SiOpenid, FaOpenid,
} from "react-icons/si"; } from "react-icons/fa6";
import React from "react"; import React from "react";
import api from "../services/api.service"; import api from "../services/api.service";
@@ -14,11 +14,11 @@ const getOAuthUrl = (appUrl: string, provider: string) => {
const getOAuthIcon = (provider: string) => { const getOAuthIcon = (provider: string) => {
return { return {
google: <SiGoogle />, google: <FaGoogle />,
microsoft: <SiMicrosoft />, microsoft: <FaMicrosoft />,
github: <SiGithub />, github: <FaGithub />,
discord: <SiDiscord />, discord: <FaDiscord />,
oidc: <SiOpenid />, oidc: <FaOpenid />,
}[provider]; }[provider];
}; };

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{ {
"name": "pingvin-share", "name": "pingvin-share",
"version": "1.10.1", "version": "1.10.4",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "pingvin-share", "name": "pingvin-share",
"version": "1.10.1", "version": "1.10.4",
"devDependencies": { "devDependencies": {
"conventional-changelog-cli": "^3.0.0" "conventional-changelog-cli": "^3.0.0"
} }

View File

@@ -1,6 +1,6 @@
{ {
"name": "pingvin-share", "name": "pingvin-share",
"version": "1.10.1", "version": "1.10.4",
"scripts": { "scripts": {
"format": "cd frontend && npm run format && cd ../backend && npm run format", "format": "cd frontend && npm run format && cd ../backend && npm run format",
"lint": "cd frontend && npm run lint && cd ../backend && npm run lint", "lint": "cd frontend && npm run lint && cd ../backend && npm run lint",