Compare commits

..

5 Commits

Author SHA1 Message Date
Stavros
43e0f3e713 chore: add correct oidc service documetation url 2026-02-26 17:37:47 +02:00
Stavros
14c08172d8 New Crowdin updates (#669)
* New translations en.json (Serbian (Cyrillic))

* chore: apply bot suggestion

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-26 17:30:41 +02:00
dependabot[bot]
456d8d17c3 chore(deps-dev): bump @types/node in /frontend in the minor-patch group (#671)
Bumps the minor-patch group in /frontend with 1 update: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node).


Updates `@types/node` from 25.3.0 to 25.3.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 25.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 17:29:41 +02:00
dependabot[bot]
f2b2826a48 chore(deps): bump oven/bun from 1.3.9-alpine to 1.3.10-alpine (#670)
Bumps oven/bun from 1.3.9-alpine to 1.3.10-alpine.

---
updated-dependencies:
- dependency-name: oven/bun
  dependency-version: 1.3.10-alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-26 17:29:22 +02:00
Stavros
4a1889c20b feat: oidc client create command (#672)
* feat: add oidc client create command

* refactor: use own utility for creating random strings (more flexible
than stdlib)

* feat: validate client name to avoid config errors

* refactor: limit to only alphanumeric characters and hyphens

* refactor: remove the need of the logger in the create oidc client cmd
2026-02-26 17:28:58 +02:00
6 changed files with 37 additions and 37 deletions

View File

@@ -1,5 +1,5 @@
# Site builder # Site builder
FROM oven/bun:1.3.9-alpine AS frontend-builder FROM oven/bun:1.3.10-alpine AS frontend-builder
WORKDIR /frontend WORKDIR /frontend

View File

@@ -1,5 +1,5 @@
# Site builder # Site builder
FROM oven/bun:1.3.9-alpine AS frontend-builder FROM oven/bun:1.3.10-alpine AS frontend-builder
WORKDIR /frontend WORKDIR /frontend

View File

@@ -36,7 +36,7 @@
"devDependencies": { "devDependencies": {
"@eslint/js": "^10.0.1", "@eslint/js": "^10.0.1",
"@tanstack/eslint-plugin-query": "^5.91.4", "@tanstack/eslint-plugin-query": "^5.91.4",
"@types/node": "^25.3.0", "@types/node": "^25.3.1",
"@types/react": "^19.2.14", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^5.1.4", "@vitejs/plugin-react": "^5.1.4",
@@ -360,7 +360,7 @@
"@types/ms": ["@types/ms@2.1.0", "", {}, "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA=="], "@types/ms": ["@types/ms@2.1.0", "", {}, "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA=="],
"@types/node": ["@types/node@25.3.0", "", { "dependencies": { "undici-types": "~7.18.0" } }, "sha512-4K3bqJpXpqfg2XKGK9bpDTc6xO/xoUP/RBWS7AtRMug6zZFaRekiLzjVtAoZMquxoAbzBvy5nxQ7veS5eYzf8A=="], "@types/node": ["@types/node@25.3.1", "", { "dependencies": { "undici-types": "~7.18.0" } }, "sha512-hj9YIJimBCipHVfHKRMnvmHg+wfhKc0o4mTtXh9pKBjC8TLJzz0nzGmLi5UJsYAUgSvXFHgb0V2oY10DUFtImw=="],
"@types/react": ["@types/react@19.2.14", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w=="], "@types/react": ["@types/react@19.2.14", "", { "dependencies": { "csstype": "^3.2.2" } }, "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w=="],

View File

@@ -42,7 +42,7 @@
"devDependencies": { "devDependencies": {
"@eslint/js": "^10.0.1", "@eslint/js": "^10.0.1",
"@tanstack/eslint-plugin-query": "^5.91.4", "@tanstack/eslint-plugin-query": "^5.91.4",
"@types/node": "^25.3.0", "@types/node": "^25.3.1",
"@types/react": "^19.2.14", "@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3", "@types/react-dom": "^19.2.3",
"@vitejs/plugin-react": "^5.1.4", "@vitejs/plugin-react": "^5.1.4",

View File

@@ -14,17 +14,17 @@
"loginOauthFailSubtitle": "Неуспело преузимање OAuth адресе", "loginOauthFailSubtitle": "Неуспело преузимање OAuth адресе",
"loginOauthSuccessTitle": "Преусмеравање", "loginOauthSuccessTitle": "Преусмеравање",
"loginOauthSuccessSubtitle": "Преусмеравање на вашег OAuth провајдера", "loginOauthSuccessSubtitle": "Преусмеравање на вашег OAuth провајдера",
"loginOauthAutoRedirectTitle": "OAuth Auto Redirect", "loginOauthAutoRedirectTitle": "OAuth аутоматско преусмерење",
"loginOauthAutoRedirectSubtitle": "You will be automatically redirected to your OAuth provider to authenticate.", "loginOauthAutoRedirectSubtitle": "Бићете аутоматски преусмерени на вашег OAuth провајдера за аутентификацију.",
"loginOauthAutoRedirectButton": "Redirect now", "loginOauthAutoRedirectButton": "Преусмери сада",
"continueTitle": "Настави", "continueTitle": "Настави",
"continueRedirectingTitle": "Преусмеравање...", "continueRedirectingTitle": "Преусмеравање...",
"continueRedirectingSubtitle": "Требали би сте ускоро да будете преусмерени на апликацију", "continueRedirectingSubtitle": "Требали би сте ускоро да будете преусмерени на апликацију",
"continueRedirectManually": "Redirect me manually", "continueRedirectManually": "Преусмери ме ручно",
"continueInsecureRedirectTitle": "Небезбедно преусмеравање", "continueInsecureRedirectTitle": "Небезбедно преусмеравање",
"continueInsecureRedirectSubtitle": "Покушавате да преусмерите са <code>https</code> на <code>http</code> што није безбедно. Да ли желите да наставите?", "continueInsecureRedirectSubtitle": "Покушавате да преусмерите са <code>https</code> на <code>http</code> што није безбедно. Да ли желите да наставите?",
"continueUntrustedRedirectTitle": "Untrusted redirect", "continueUntrustedRedirectTitle": "Неповерљиво преусмерење",
"continueUntrustedRedirectSubtitle": "You are trying to redirect to a domain that does not match your configured domain (<code>{{cookieDomain}}</code>). Are you sure you want to continue?", "continueUntrustedRedirectSubtitle": "Покушавате да преусмерите на домен који се не поклапа са вашим подешеним доменом (<code>{{cookieDomain}}</code>). Да ли заиста желите да наставите?",
"logoutFailTitle": "Неуспешно одјављивање", "logoutFailTitle": "Неуспешно одјављивање",
"logoutFailSubtitle": "Молим вас покушајте поново", "logoutFailSubtitle": "Молим вас покушајте поново",
"logoutSuccessTitle": "Одјављени", "logoutSuccessTitle": "Одјављени",
@@ -51,31 +51,31 @@
"forgotPasswordTitle": "Заборавили сте лозинку?", "forgotPasswordTitle": "Заборавили сте лозинку?",
"failedToFetchProvidersTitle": "Није успело учитавање провајдера аутентификације. Молим вас проверите ваша подешавања.", "failedToFetchProvidersTitle": "Није успело учитавање провајдера аутентификације. Молим вас проверите ваша подешавања.",
"errorTitle": "Појавила се грешка", "errorTitle": "Појавила се грешка",
"errorSubtitleInfo": "The following error occurred while processing your request:", "errorSubtitleInfo": "Појавила се следећа грешка током обраде вашег захтева:",
"errorSubtitle": "Појавила се грешка при покушају извршавања ове радње. Молим вас проверите конзолу за додатне информације.", "errorSubtitle": "Појавила се грешка при покушају извршавања ове радње. Молим вас проверите конзолу за додатне информације.",
"forgotPasswordMessage": "Можете поништити вашу лозинку променом `USERS` променљиве окружења.", "forgotPasswordMessage": "Можете поништити вашу лозинку променом `USERS` променљиве окружења.",
"fieldRequired": "This field is required", "fieldRequired": "Ово поље је неопходно",
"invalidInput": "Invalid input", "invalidInput": "Неисправан унос",
"domainWarningTitle": "Invalid Domain", "domainWarningTitle": "Неисправан домен",
"domainWarningSubtitle": "This instance is configured to be accessed from <code>{{appUrl}}</code>, but <code>{{currentUrl}}</code> is being used. If you proceed, you may encounter issues with authentication.", "domainWarningSubtitle": "Ова инстанца је подешена да јој се приступа са <code>{{appUrl}}</code>, али се користи <code>{{currentUrl}}</code>. Ако наставите, можете искусити проблеме са аутентификацијом.",
"ignoreTitle": "Ignore", "ignoreTitle": "Игнориши",
"goToCorrectDomainTitle": "Go to correct domain", "goToCorrectDomainTitle": "Иди на исправан домен",
"authorizeTitle": "Authorize", "authorizeTitle": "Ауторизуј",
"authorizeCardTitle": "Continue to {{app}}?", "authorizeCardTitle": "Наставити на {{app}}?",
"authorizeSubtitle": "Would you like to continue to this app? Please carefully review the permissions requested by the app.", "authorizeSubtitle": "Да ли желите да наставите на ову апликацију? Пажљиво проверите дозволе које вам тражи апликација.",
"authorizeSubtitleOAuth": "Would you like to continue to this app?", "authorizeSubtitleOAuth": "Да ли желите да наставите на ову апликацију?",
"authorizeLoadingTitle": "Loading...", "authorizeLoadingTitle": "Учитавање...",
"authorizeLoadingSubtitle": "Please wait while we load the client information.", "authorizeLoadingSubtitle": "Молим вас сачекајте док ми учитамо информације о клијенту.",
"authorizeSuccessTitle": "Authorized", "authorizeSuccessTitle": "Ауторизован",
"authorizeSuccessSubtitle": "You will be redirected to the app in a few seconds.", "authorizeSuccessSubtitle": "Бићете преусмерени на апликацију за неколико секунди.",
"authorizeErrorClientInfo": "An error occurred while loading the client information. Please try again later.", "authorizeErrorClientInfo": "Појавила се грешка током учитавања информација о клијенту. Молим вас покушајте поново касније.",
"authorizeErrorMissingParams": "The following parameters are missing: {{missingParams}}", "authorizeErrorMissingParams": "Следећи параметри недостају: {{missingParams}}",
"openidScopeName": "OpenID Connect", "openidScopeName": "OpenID повезивање",
"openidScopeDescription": "Allows the app to access your OpenID Connect information.", "openidScopeDescription": "Омогућава апликацији да приступа информацији о вашој OpenID вези.",
"emailScopeName": "Email", "emailScopeName": "Е-пошта",
"emailScopeDescription": "Allows the app to access your email address.", "emailScopeDescription": "Омогућава апликацији да приступа вашој адреси е-поште.",
"profileScopeName": "Profile", "profileScopeName": "Профил",
"profileScopeDescription": "Allows the app to access your profile information.", "profileScopeDescription": "Омогућава апликацији да приступа информацијама о вашем профилу.",
"groupsScopeName": "Groups", "groupsScopeName": "Групе",
"groupsScopeDescription": "Allows the app to access your group information." "groupsScopeDescription": "Омогућава апликацији да приступа информацијама о вашој групи."
} }

View File

@@ -60,7 +60,7 @@ func (controller *WellKnownController) OpenIDConnectConfiguration(c *gin.Context
IDTokenSigningAlgValuesSupported: []string{"RS256"}, IDTokenSigningAlgValuesSupported: []string{"RS256"},
TokenEndpointAuthMethodsSupported: []string{"client_secret_basic", "client_secret_post"}, TokenEndpointAuthMethodsSupported: []string{"client_secret_basic", "client_secret_post"},
ClaimsSupported: []string{"sub", "updated_at", "name", "preferred_username", "email", "groups"}, ClaimsSupported: []string{"sub", "updated_at", "name", "preferred_username", "email", "groups"},
ServiceDocumentation: "https://tinyauth.app/docs/reference/openid", ServiceDocumentation: "https://tinyauth.app/docs/guides/oidc",
}) })
} }