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:
tags:
- "v*"
workflow_dispatch:
jobs:
system-tests:

View File

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

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

View File

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

View File

@@ -147,38 +147,36 @@ export abstract class GenericOidcProvider implements OAuthProvider<OidcToken> {
if (roleConfig?.path) {
// A path to read roles from the token is configured
let roles: string[] | null;
let roles: string[] = [];
try {
roles = jmespath.search(idTokenData, roleConfig.path);
const rolesClaim = jmespath.search(idTokenData, roleConfig.path);
if (Array.isArray(rolesClaim)) {
roles = rolesClaim;
}
} catch (e) {
roles = null;
}
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(
this.logger.warn(
`Roles not found at path ${roleConfig.path} in ID Token ${JSON.stringify(
idTokenData,
undefined,
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");
}
if (roleConfig.adminAccess) {
// Role for admin access is configured
isAdmin = roles.includes(roleConfig.adminAccess);
}
}
if (!username) {

View File

@@ -1,4 +1,4 @@
files:
- source: /frontend/src/i18n/translations/en-US.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",
"version": "1.10.1",
"version": "1.10.4",
"scripts": {
"dev": "next dev",
"build": "next build",
@@ -9,7 +9,7 @@
"format": "prettier --end-of-line=auto --write \"src/**/*.ts*\""
},
"dependencies": {
"@emotion/react": "^11.13.3",
"@emotion/react": "^11.14.0",
"@emotion/server": "^11.11.0",
"@mantine/core": "^6.0.21",
"@mantine/dropzone": "^6.0.21",
@@ -18,37 +18,38 @@
"@mantine/modals": "^6.0.21",
"@mantine/next": "^6.0.21",
"@mantine/notifications": "^6.0.21",
"axios": "^1.7.7",
"cookies-next": "^4.2.1",
"axios": "^1.8.4",
"cookies-next": "^5.1.0",
"file-saver": "^2.0.5",
"jose": "^5.9.2",
"jose": "^6.0.10",
"jwt-decode": "^4.0.0",
"markdown-to-jsx": "^7.5.0",
"markdown-to-jsx": "^7.7.4",
"mime-types": "^2.1.35",
"moment": "^2.30.1",
"next": "^14.2.12",
"next": "^15.2.4",
"next-http-proxy-middleware": "^1.2.6",
"next-pwa": "^5.6.0",
"p-limit": "^6.1.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-icons": "^5.3.0",
"react-intl": "^6.6.8",
"p-limit": "^6.2.0",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"react-icons": "^5.5.0",
"react-intl": "^7.1.10",
"sharp": "^0.33.5",
"yup": "^1.4.0"
"yup": "^1.6.1"
},
"devDependencies": {
"@types/mime-types": "^2.1.4",
"@types/node": "22.5.5",
"@types/react": "18.3.7",
"@types/react-dom": "18.3.0",
"@typescript-eslint/parser": "^8.6.0",
"axios": "^1.7.7",
"eslint": "8.57.0",
"eslint-config-next": "^14.2.12",
"eslint-config-prettier": "^9.1.0",
"prettier": "^3.3.3",
"@types/node": "22.13.13",
"@types/react": "19.0.12",
"@types/react-dom": "19.0.4",
"@typescript-eslint/parser": "^8.28.0",
"axios": "^1.8.4",
"eslint": "9.23.0",
"eslint-config-next": "^15.2.4",
"eslint-config-prettier": "^10.1.1",
"eslint-plugin-react": "^7.37.4",
"prettier": "^3.5.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 { classes } = useStyles();
const openRef = useRef<() => void>();
const openRef = useRef<() => void>(null);
return (
<div className={classes.wrapper}>
<MantineDropzone

View File

@@ -9,7 +9,7 @@ const useTranslate = () => {
values?: Parameters<typeof intl.formatMessage>[1],
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],
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.description": "منفذ خادم الـSMTP",
"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.description": "اسم المستخدم لخادم الـSMTP",
"admin.config.smtp.password": "كلمة السر",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port SMTP serveru",
"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.description": "Uživatelské jméno SMTP serveru",
"admin.config.smtp.password": "Heslo",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Porten til SMTP serveren",
"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.description": "Brugernavnet til SMTP serveren",
"admin.config.smtp.password": "Adgangskode",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port des SMTP-Servers",
"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.description": "Benutzername des SMTP-Servers",
"admin.config.smtp.password": "Passwort",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Θύρα",
"admin.config.smtp.port.description": "SMTP θύρα",
"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.description": "Όνομα χρήστη στον SMTP εξυπηρετητή",
"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.email": "Email",
"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.description": "Username of the SMTP server",
"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.button": "Guardar nueva contraseña",
"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?",
// showCreateUserModal.tsx
"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.description": "La cuenta actual no tiene permiso para acceder a este compartido",
"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.error.invalid-password": "Contraseña inválida",
"share.button.download-all": "Descargar todo",
@@ -302,8 +302,8 @@ export default {
"privacy.title": "Política de privacidad",
// END /privacy
// /admin/config
"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.title": "Archivo de configuración presente",
"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.category.general": "General",
"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.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.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.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",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Puerto",
"admin.config.smtp.port.description": "Puerto del servidor SMTP",
"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.description": "Usuario del servidor SMTP",
"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.url": "URL del servidor",
"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-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.search-base": "Base 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",
// END /privacy
// /admin/config
"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.title": "Konfiguratsioonifail olemas",
"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.category.general": "Üldine",
"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.description": "Kas kuvada avalehte",
"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.description": "Muuda oma logo laadides üles uus pilt. Pildi formaat peab olema PNG ja kuju 1:1.",
"admin.config.general.logo.placeholder": "Vali pilt",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "SMTP serveri port",
"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.description": "SMTP serveri kasutajanimi",
"admin.config.smtp.password": "Parool",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Portti",
"admin.config.smtp.port.description": "SMTP palvelimen portti",
"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.description": "SMTP palvelimen käyttäjänimi",
"admin.config.smtp.password": "Salasana",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Politique de confidentialité",
// END /privacy
// /admin/config
"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.title": "Fichier de configuration présent",
"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.category.general": "Général",
"admin.config.category.share": "Partage",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port du serveur SMTP",
"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.description": "Nom dutilisateur du serveur SMTP",
"admin.config.smtp.password": "Mot de passe",

View File

@@ -124,9 +124,9 @@ export default {
"account.shares.table.expiresAt": "Istječe",
"account.shares.table.createdAt": "Kreirano",
"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.expiry-never": "Never",
"account.shares.table.expiry-never": "Nikad",
"account.shares.modal.share-informations": "Informacije o dijeljenju",
"account.shares.modal.share-link": "Podijelite poveznicu",
"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.description": "Trenutni račun nema dozvolu za pristup ovom dijeljenju.",
"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.error.invalid-password": "Neispravna lozinka",
"share.button.download-all": "Preuzmi sve",
@@ -296,14 +296,14 @@ export default {
"share.edit.notify.save-success": "Dijeljenje je uspješno ažurirano",
// END /share/[id]/edit
// /imprint
"imprint.title": "Imprint",
"imprint.title": "Otisak",
// END /imprint
// /privacy
"privacy.title": "Privacy Policy",
"privacy.title": "Pravilima o zaštiti privatnosti",
// END /privacy
// /admin/config
"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.category.general": "Opće",
"admin.config.category.share": "Dijeljenje",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port domaćina SMTP servera",
"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.description": "Korisničko ime SMTP servera",
"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.no-changes": "Nema promjena za spremanje.",
"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.endpoint": "Endpoint",
"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.bucket-name": "Bucket name",
"admin.config.s3.bucket-name.description": "The name of the S3 bucket.",
"admin.config.s3.bucket-path": "Path",
"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": "Putanja",
"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.description": "The key which allows you to access the S3 bucket.",
"admin.config.s3.secret": "Secret",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Az SMTP kiszolgáló portja",
"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.description": "Felhasználónév az SMTP kiszolgálón",
"admin.config.smtp.password": "Jelszó",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Informativa sulla privacy",
// END /privacy
// /admin/config
"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.title": "File di configurazione presente",
"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.category.general": "Generale",
"admin.config.category.share": "Condivisioni",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "プライバシーポリシー",
// END /privacy
// /admin/config
"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.title": "構成ファイルがあります",
"admin.config.config-file-warning.description": "設定ファイル設定で済みのPingvin ShareはUI を使用して設定を変更することはできません。",
"admin.config.title": "設定",
"admin.config.category.general": "一般",
"admin.config.category.share": "共有",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "ホームページを表示する",
"admin.config.general.show-home-page.description": "ホームページを表示するかどうか選択",
"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.description": "新しい画像をアップロードしてロゴを変更できます。画像は、PNG形式でアスペクト比が1:1である必要があります。",
"admin.config.general.logo.placeholder": "画像を選択",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "ポート番号",
"admin.config.smtp.port.description": "SMTPサーバーのポート番号",
"admin.config.smtp.email": "メールアドレス",
"admin.config.smtp.email.description": "メール送信元となるメールアドレス",
"admin.config.smtp.email.description": "メール送信元メールアドレス",
"admin.config.smtp.username": "ユーザー名",
"admin.config.smtp.username.description": "SMTPサーバーのユーザー名",
"admin.config.smtp.password": "パスワード",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "포트",
"admin.config.smtp.port.description": "SMTP 서버 포트",
"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.description": "SMTP 사용자 이름, 서버 비밀번호",
"admin.config.smtp.password": "비밀번호",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Poort",
"admin.config.smtp.port.description": "Poort van de SMTP-server",
"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.description": "Gebruikersnaam van de SMTP-server",
"admin.config.smtp.password": "Wachtwoord",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Numer portu",
"admin.config.smtp.port.description": "Numer portu serwera SMTP",
"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.description": "Nazwa użytkownika serwera SMTP",
"admin.config.smtp.password": "Hasło",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Política de Privacidade",
// END /privacy
// /admin/config
"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.title": "Arquivo de configuração presente",
"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.category.general": "Geral",
"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.description": "Mostrar ou não a página inicial",
"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.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",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Porta",
"admin.config.smtp.port.description": "Porta do Servidor SMTP",
"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.description": "Nome de usuário do servidor SMTP",
"admin.config.smtp.password": "Senha",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт SMTP сервера",
"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.description": "Имя пользователя SMTP сервера",
"admin.config.smtp.password": "Пароль",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Vrata",
"admin.config.smtp.port.description": "Vrata SMTP strežnika",
"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.description": "Uporabniško ime SMTP strežnika",
"admin.config.smtp.password": "Geslo",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port domaćina SMTP servera",
"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.description": "Korisničko ime SMTP servera",
"admin.config.smtp.password": "Lozinka",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт домаћина SMTP сервера",
"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.description": "Корисничко име SMTP сервера",
"admin.config.smtp.password": "Лозинка",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Port",
"admin.config.smtp.port.description": "Port för SMTP-servern",
"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.description": "Användarnamn för SMTP-servern",
"admin.config.smtp.password": "Lösenord",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "พอร์ต",
"admin.config.smtp.port.description": "พอร์ตของเซิร์ฟเวอร์ SMTP",
"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.description": "ชื่อผู้ใช้ของเซิร์ฟเวอร์ SMTP",
"admin.config.smtp.password": "รหัสผ่าน",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "Gizlilik Politikası",
// END /privacy
// /admin/config
"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.title": "Yapılandırma dosyası mevcut",
"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.category.general": "Genel",
"admin.config.category.share": "Paylaş",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Порт",
"admin.config.smtp.port.description": "Порт SMTP сервера",
"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.description": "Ім'я користувача SMTP-сервера",
"admin.config.smtp.password": "Пароль",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "Cổng",
"admin.config.smtp.port.description": "Port of the SMTP server",
"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.description": "Username of the SMTP server",
"admin.config.smtp.password": "Mật khẩu",

View File

@@ -302,8 +302,8 @@ export default {
"privacy.title": "隐私政策",
// END /privacy
// /admin/config
"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.title": "配置文件已存在",
"admin.config.config-file-warning.description": "由于您已配置了Pingvin 共享的配置文件您无法通过UI更改配置。",
"admin.config.title": "配置管理",
"admin.config.category.general": "通用",
"admin.config.category.share": "共享",
@@ -319,7 +319,7 @@ export default {
"admin.config.general.show-home-page": "显示首页",
"admin.config.general.show-home-page.description": "是否显示首页",
"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.description": "上传你的个性化 Logo图片必须是长宽比 1:1 的 PNG 格式",
"admin.config.general.logo.placeholder": "选择图片",
@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "端口",
"admin.config.smtp.port.description": "SMTP 主机端口",
"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.description": "SMTP 主机用户名",
"admin.config.smtp.password": "密码",
@@ -435,7 +435,7 @@ export default {
"admin.config.ldap.url.description": "LDAP 服务器的 URL",
"admin.config.ldap.bind-dn": "Bind DN",
"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.search-base": "User base",
"admin.config.ldap.search-base.description": "进行用户搜索的基本位置",

View File

@@ -364,7 +364,7 @@ export default {
"admin.config.smtp.port": "通訊埠",
"admin.config.smtp.port.description": "SMTP 通訊埠",
"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.description": "SMTP 主機使用者名稱",
"admin.config.smtp.password": "密碼",

View File

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

4
package-lock.json generated
View File

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

View File

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