Commit Graph

210 Commits

Author SHA1 Message Date
Elias Schneider
dc30f4f3c9 refactor: run formatter 2025-02-28 11:18:10 +01:00
Mattia Müggler
9dfb52a145 feat: add ability to configure application with a config file (#740)
* add config file possibility

* revert port in docker compose

* Update docker-compose.yml

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* Update docker-compose.yml

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* add attribute description to config file

* remove email message config

* add package to resolve errors

* remove email messages from config

* move config initialization to config module

* revert unnecessary change

* add order

* improve alert

* run formatter

* remove unnecessary packages

* remove unnecessary types

* use logger

* don't save yaml config to db

* allowEdit if no yaml config is set

* improve docs

* fix allow edit state

* remove unnecessary check and refactor code

* restore old config file

* add script that generates `config.example.yaml` automatically

* allow config variables to be changed if they are not set in the `config.yml`

* add back init user

* Revert "allow config variables to be changed if they are not set in the `config.yml`"

This reverts commit 7dbdb6729034be5b083f126f854d5e1411735a54.

* improve info box text

---------

Co-authored-by: Elias Schneider <login@eliasschneider.com>
2025-02-28 11:01:54 +01:00
Elias Schneider
ec92e85c8d fix: redirection to the OIDC end session endpoint 2025-02-14 14:30:21 +01:00
Elias Schneider
2b7d3c0a8a fix: wrong TOTP validation for password 2025-01-21 18:44:06 +01:00
Elias Schneider
bf1b2633c8 refactor: run formatter 2025-01-04 01:28:05 +01:00
Elias Schneider
b3ea96c191 fix: wrong validation for expiration in reverse share modal 2025-01-04 01:27:59 +01:00
Aaron
36afbf91b7 feat: improve UI for timespan inputs on admin page (#726)
* Define Timestamp type

* Implement Timestamp utils

* Implement Timespan input

* Use timestamp input on config page

* Add timespan type to config services

* Refactor maxExpiration to use timespan type across services and components

* Update sessionDuration to use timespan type in config and adjust token expiration logic

* Update localized strings
2025-01-02 17:35:50 +01:00
Aaron
df1ffaa2bc feat: add legal page with configuration options (#724)
* Addconfig entries for legal notice

* Add legal route handling to middleware

* Make legal notice public

* Add legal category to config sidebar

* Add legal notice page

* Add German translations for legal notice and configuration options

* Replace legal page with separate imprint and privacy pages

* Update middleware

* Add footer component

* Update legal text descriptions to indicate Markdown support again

* Refactor footer layout

* Add zIndex to footer component

* improve mobile layout

* run formatter

---------

Co-authored-by: Elias Schneider <login@eliasschneider.com>
2025-01-02 17:29:01 +01:00
Aaron
53c05518df feat(UI): improve filesize input and use it in settings (#721)
* Improve file size input component layout

* Fix filesize input value not getting set

* Allow arbitrary props on filesize input

* Update config variables to support filesize type and integrate FileSizeInput component

* Update i18n entries

* WARNING GUESSES: Update translation descriptions for max size and chunk size in multiple languages

* Fix config service not being aware of filesize type

* Fix backend config service not being aware of filesize type

* Move FileSizeInput component to core
2024-12-31 15:25:49 +01:00
Aaron
b58dcdba0b feat(MyShares): show information about own share security options (#720)
* Provide security information about owned shares

* Add visitor count display for shares with max views

* Add password protection indicator to shares table

* Remove validation from MyShareSecurityDTO

* center lock icon and add spacing

* refactor: run formatter

---------

Co-authored-by: Elias Schneider <login@eliasschneider.com>
2024-12-31 15:21:00 +01:00
Elias Schneider
f36ba8ac0a refactor: run formatter 2024-12-28 17:40:36 +01:00
Pak Lam (Billy) Lee
bfd4049c15 fix: crash on zip download if zip is larger than 4GB (#709) 2024-12-28 17:37:58 +01:00
Mattia Müggler
5a54fe4cb7 feat: add support for S3 as a storage provider (#659)
* add s3

* instance the s3 client dynamically

* refactor code

* fix format

* add docs

* add docs

* fix issue with s3 upload if you use the base path,
fix issue with archiving -> disable archiving for s3

* split file service in local and s3 file service and fix s3 upload chunking

* add working download/view

* add new features to local service (from main branch)

* revert s3 service and add working delete/remove functionality

* refactor s3 service

* Update backend/src/file/s3.service.ts

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* Update frontend/src/components/admin/configuration/ConfigurationNavBar.tsx

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* Update docs/docs/setup/s3.md

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* Update backend/prisma/seed/config.seed.ts

Co-authored-by: Elias Schneider <login@eliasschneider.com>

* add note for ZIP archive in docs

* create logger instance

* make s3 instance dynamic

* add icon import

* remove console.logs

* add correct pdf viewing format

* add storage provider to share

* refactor: run formatter

* chore: add prisma migration

* fix: don't expose `storageProvider`

* chore: improve config variables description

---------

Co-authored-by: Elias Schneider <login@eliasschneider.com>
2024-12-19 12:06:49 +01:00
Elias Schneider
2db1f6a112 refactor: run formatter 2024-12-17 22:29:24 +01:00
Elias Schneider
ba2e7e122c fix: error for non oidc oauth clients 2024-11-26 15:53:01 +01:00
Elias Schneider
3160f90e1d fix: add validation for share id and zip compression config variables 2024-11-25 12:41:03 +01:00
Elias Schneider
da54ce6ee0 feat: add config variable to specify the requested OIDC sopes 2024-11-25 12:21:17 +01:00
Elias Schneider
c8f05f2475 fix: totp can't be enabled if user is a ldap user 2024-11-23 18:55:47 +01:00
Elias Schneider
c7dacb26e8 feat: add "creatorEmail" config bariable to share recipient email message 2024-11-17 16:11:30 +01:00
Elias Schneider
c52ec71920 refactor: use fs promises in file service 2024-11-17 16:09:23 +01:00
Elias Schneider
6cf5c66fe2 fix: remote arbitrary file overwrite on file upload endpoint 2024-11-17 16:07:21 +01:00
Elias Schneider
c26de4e881 fix: throw error if no disk space is left 2024-11-14 18:44:32 +01:00
Elias Schneider
d870b5721a refactor: run formatter 2024-11-14 18:04:18 +01:00
Elias Schneider
e1a5d19544 fix: prevent deletion of last admin account 2024-11-14 17:39:06 +01:00
Elias Schneider
4ce64206be feat: add 'secureCookies' configuration variable to explicitly set the secure flag and prevent confusion 2024-11-14 17:31:17 +01:00
Elias Schneider
428c1d2b99 fix: don't enforce password lenght for sign in form because of LDAP 2024-10-24 14:44:07 +02:00
Elias Schneider
c89ca7e64b fix: use app name as totp issuer 2024-10-24 13:59:54 +02:00
Elias Schneider
446f9dd209 refactor: run formatter 2024-10-23 15:48:55 +02:00
Elias Schneider
acbff6e129 fix: share password can be bypassed if a deleted share with the same id was visited before 2024-10-23 15:48:47 +02:00
Marvin A. Ruder
bfbe8de98a fix(oauth): add post_logout_redirect_uri to OAuth logout redirect URI (#638)
* Add `post_logout_redirect_uri` to OAuth logout redirect URI

Signed-off-by: Marvin A. Ruder <signed@mruder.dev>

* Update OAuth2 configuration documentation

Signed-off-by: Marvin A. Ruder <signed@mruder.dev>

---------

Signed-off-by: Marvin A. Ruder <signed@mruder.dev>
2024-10-15 20:49:43 +02:00
Elias Schneider
2e692241c5 fix: disallow passwort reset if it's a ldap user 2024-10-15 20:12:56 +02:00
Elias Schneider
1e96011793 refactor: run formatter 2024-10-15 20:12:09 +02:00
Marvin A. Ruder
2b3ce3ffd2 feat(oauth): Add option to logout from OpenID Connect provider
* Fixes #598

Signed-off-by: Marvin A. Ruder <signed@mruder.dev>
2024-10-14 18:16:47 +02:00
Elias Schneider
4a50a5aa3b Merge branch 'main' of https://github.com/stonith404/pingvin-share 2024-10-14 17:15:42 +02:00
Elias Schneider
d6b8b56247 fix: use unique port env variable for backend 2024-10-14 17:15:38 +02:00
COMPLEX
5883dff4cf feat(oauth): add ability to limit user IDs for Discord authentication (#621) 2024-09-30 08:53:58 +02:00
Elias Schneider
8f16d6b53e refactor: run formatter 2024-09-27 16:03:53 +02:00
WolverinDEV
3310fe53b3 feat: improve the LDAP implementation (#615)
* feat(logging): add PV_LOG_LEVEL environment variable to set backend log level

* feat(ldap): Adding a more verbose logging output to debug LDAP issues

* fix(ldap): fixed user logins with special characters within the users dn by switching to ldapts

* feat(ldap): made the member of and email attribute names configurable

* fix(ldap): properly handle email like usernames and fixing #601

* Revert "fix: disable email login if ldap is enabled"

This reverts commit d9cfe697d6.

* feat(ldap): disable the ability for a user to change his email when it's a LDAP user

* feat(ldap): relaxed username pattern by allowing the @ character in usernames
2024-09-27 16:02:49 +02:00
Elias Schneider
adc4af996d fix: omit invalid username characters in oidc registration 2024-09-26 21:50:23 +02:00
Elias Schneider
69752b8b41 fix: enable secure cookies if app url starts with https 2024-09-24 12:21:41 +02:00
Elias Schneider
325122b802 refactor: run formatter 2024-09-14 18:13:32 +02:00
Elias Schneider
8b3e28bac8 feat: allow smpt without username and password 2024-09-14 17:24:19 +02:00
Elias Schneider
92e1e82e09 fix: oauth2 login can fail in some cases because the user can't be found 2024-09-06 09:02:30 +02:00
Elias Schneider
dee70987eb fix: improve oidc error logging 2024-09-03 22:55:44 +02:00
Elias Schneider
3d2b978daf refactor: run formatter 2024-09-03 22:54:53 +02:00
Timothy
8c5c696c51 feat(email): add {email} placeholder to user invitation email (#564)
* feat(email): add {email} placeholder to user invitation email

* change default values and setting description

---------

Co-authored-by: Elias Schneider <login@eliasschneider.com>
2024-08-25 21:58:40 +02:00
Elias Schneider
9c381a2ed6 fix: internal server error if user has no password when trying to sign in 2024-08-25 16:00:49 +02:00
WolverinDEV
4186a768b3 feat(ldap): Adding support for LDAP authentication (#554) 2024-08-24 16:15:33 +02:00
Elias Schneider
93aacca9b4 refactor: run formatter 2024-07-30 08:39:22 +02:00
Ivan Li
fe735f9704 feat: add more options to reverse shares (#495)
* feat(reverse-share): optional simplified interface for reverse sharing. issue #155.

* chore: Remove useless form validation.

* feat: Share Ready modal adds a prompt that an email has been sent to the reverse share creator.

* fix: Simplified reverse shared interface elements lack spacing when not logged in.

* fix: Share Ready modal prompt contrast is too low in dark mode.

* feat: add public access options to reverse share.

* feat: remember reverse share simplified and publicAccess options in cookies.

* style: npm run format.

* chore(i18n): Improve translation.

Co-authored-by: Elias Schneider <login@eliasschneider.com>

Update frontend/src/i18n/translations/en-US.ts

Co-authored-by: Elias Schneider <login@eliasschneider.com>

Update frontend/src/i18n/translations/en-US.ts

Co-authored-by: Elias Schneider <login@eliasschneider.com>

chore(i18n): Improve translation.

* chore: Improved variable naming.

* chore(i18n): Improve translation. x2.

* fix(backend/shares): Misjudged the permission of the share of the reverse share.
2024-07-30 08:26:56 +02:00