Commit Graph

2903 Commits

Author SHA1 Message Date
492350612e fix: wrong count on user 2024-09-21 08:19:24 +00:00
f9935adb57 fix: incorrect counts and query for teams 2024-09-20 06:28:08 +00:00
d2b99303f9 fix: simplify deleted query 2024-08-21 13:13:03 +10:00
d33bbe71e7 chore: extract translations 2024-08-21 01:44:57 +00:00
6bf62e0ecb Merge branch 'main' into feat/delete-archive 2024-08-21 11:44:05 +10:00
66fdc1d659 chore: update readme for manual self-hosting (#1270) 2024-08-21 11:08:04 +10:00
27066e2022 chore: add translations (#1295) 2024-08-21 11:06:26 +10:00
9178dbd3c1 chore: update marketing site 2024-08-20 23:23:36 +10:00
2c9136498c feat: update team email templates. (#1229)
Updates the email templates to include team information when sent
from a team context.
2024-08-20 15:41:19 +10:00
7a1341eb74 feat: automatically set public profile url for OIDC users (#1225)
Adds a hook to automatically set profile urls for OIDC users
2024-08-20 13:58:56 +10:00
06c0a50401 feat: copy and paste fields (#1193)
Adds keyboard shortcuts for copying and pasting fields, additionally adds the ability
to duplicate a field via the UI.
2024-08-20 13:32:53 +10:00
025e73e640 feat: advanced fields article (#1276) 2024-08-19 19:18:54 +10:00
73800d1503 fix: don't send too much data to background job provider 2024-08-15 13:57:54 +10:00
063ed966df fix: support custom inngest app ids 2024-08-14 16:26:58 +10:00
f568025a0b fix: support inngest vercel integration 2024-08-14 13:49:47 +10:00
ab8701526c fix: move sealing to a background job (#1287)
When signing a document the final signer is often
greeted with a super long completing spinner since
we are synchronously signing the document and sending
emails to all recipients. This is frustrating and
has caused issues for customers and self-hosters.

Moving sealing to a background job resolves this
and improves the overall snappiness of the app while
also supporting retrying the sealing if it were to
fail in the future.

This has the implication of a document no longer
immediately being in a "completed" state once all
signers have signed. To assist with this we now
refetch the page every 5 seconds upon signing
completion until the document status as shifted to
completed.
2024-08-14 13:12:32 +10:00
20ec2dde3d chore: update changelog 2024-08-13 11:49:12 +10:00
3b8914da83 v1.6.1-rc.1 v1.6.1-rc.1 v1.6.1 2024-08-13 09:57:50 +10:00
29910ab2a7 feat: add initials field type (#1279)
Adds a new field type that enables document recipients to add
their `initials` on the document.
2024-08-12 23:29:32 +10:00
ef3ecc33f1 v1.6.1-rc.0 v1.6.1-rc.0 2024-08-09 15:49:41 +10:00
0244f021ab fix: download audit log certificate (#1268)
Previously, it wasn't possible to download an audit log of a document
uploaded by another user because the function used the ID of the user
making the request to retrieve the document. However, the document
uploaded by another user has that user's ID, not the ID of the user
making the request.
2024-08-09 12:19:48 +10:00
e5f73452b3 fix: support dynamic external ids for direct templates (#1274)
Adds support for an `externalId` query param to be passed when linking a
user to a direct template. This external id will then be stored on the
document upon signing completion.
2024-08-09 11:06:17 +10:00
c605877924 fix: radio and checkbox fields issues with empty values (#1273)
Since we allow checkboxes and radio fields without a label (which we use for the value) we 
had an issue where multiple checkboxes with no value would exist and items would not end
up checked on the resulting document.

This change fixes that by adding a placeholder value for these empty checkboxes and labels.
2024-08-09 10:46:07 +10:00
e0065a8731 fix: show signup option only to users without existing accounts (#1221)
Changes the signup CTA to only display if the recipient doesn't already have an account.
2024-08-08 10:47:00 +10:00
f74265850b chore: Update .env.example commenting (#1257)
Adds documentation on how to setup Google for OAuth when self hosting Documenso.
2024-08-08 09:58:27 +10:00
909c38f47e fix: fields name/label on dark mode (#1242)
Updates the dark mode styling for field editing to improve readability.
2024-07-31 23:07:39 +10:00
1beb434a72 fix: limits syncing issue (#1195)
Exposes `refreshLimits()` to be able to keep the limit in sync when
deleting/creating a document.
2024-07-31 22:57:27 +10:00
5582f29bda feat: make oidc sign in button text configurable (#1209)
Adds a configurable label for the OIDC connection's button.
2024-07-31 22:22:52 +10:00
7ed0a909eb feat: allow oidc only signup and trust mail addresses (#1208)
This change will allow for user registration when users are federated
through oidc provider even if the general signup is disabled
additionally the users email address can now be automatically set as
trusted. This will force corporate users to signin using SSO instead of
creating manual accounts.
2024-07-31 15:38:12 +10:00
a9025b5d97 fix: use native URL parser instead of wrong regex (#1206)
Updates the current regex based approach for validating redirect urls to 
instead use the native URL constructor which is available in browsers and 
Node.js and handles several valid cases that were previously not working.
2024-07-31 15:26:05 +10:00
0c744a1123 chore: last touches (#1263)
fair use policy and support page

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Added a "Support" documentation page outlining various support options
for users, including Community, Paid Account, and Enterprise support.
- Introduced a "Fair Use Policy" documentation page, providing
guidelines and reassurance regarding usage of the service.
- Enhanced the account creation documentation with additional
information about the Fair Use Policy.

- **Improvements**
- Updated the documentation structure with new sections for easier
navigation, including "Support" and "Fair Use Policy."

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-30 18:21:58 +02:00
0f86eed6ac fix: add new environmental variables for render deployment (#1174)
Updates the `render.yaml` configuration file by adding new environment
variables
2024-07-30 16:14:31 +10:00
4b485268ca fix: dateformat api bug (#1238)
Fixes support for date formats when using the API
2024-07-30 16:13:22 +10:00
16527f01e7 fix: build errors 2024-07-29 15:18:54 +10:00
7f25508c3c chore: remove unused email template 2024-07-29 15:18:54 +10:00
754e9e6428 chore: refactor find documents 2024-07-29 15:18:54 +10:00
2837b178fb fix: soft delete a document when the owner deletes it 2024-07-29 15:18:54 +10:00
26ccdc1b23 fix: filter on recipients 2024-07-29 15:18:54 +10:00
ea63b45a13 fix: add recipients filter for bin 2024-07-29 15:18:54 +10:00
feef4b1a12 feat: restore deleted document 2024-07-29 15:18:52 +10:00
1a55f4253b fix: tab count for teams 2024-07-29 14:41:02 +10:00
8311e0cc29 fix: show correct tab count 2024-07-29 14:41:02 +10:00
a9adc36732 fix: date filter for deleted documents 2024-07-29 14:41:02 +10:00
73e375938c fix: show deleted counts on tab 2024-07-29 14:41:02 +10:00
c6393b7a9e feat: add bin tab to show soft deleted documents 2024-07-29 14:41:02 +10:00
f31caaab08 fix: truncation of titles to fix UI breaks (#1162)
Updates various areas of the application to handle longer titles and content
more gracefully.
2024-07-29 13:13:35 +10:00
71a8a3eaa6 chore: rename "none" document access to "no restrictions" (#1138)
## Description

Renames the "None" document access option to "No restrictions".
2024-07-29 12:40:36 +10:00
0ff3844f18 chore: translation typo (#1255)
chore: translation typo


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Enhanced the `Header` component for improved internationalization by
enabling translation of the "Documentation" text.
  
- **Documentation**
- Added comments in translation files to link translation entries to the
`Header` component, improving maintainability and traceability for
future updates.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-07-26 17:47:13 +02:00
3421515452 chore: add translations (#1253)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Enhanced clarity and accuracy of translation strings for the German
and Romanian languages, including the Enterprise License description.

- **Bug Fixes**
- Corrected translation errors in both German and Romanian, ensuring
proper grammar and terminology.

- **Chores**
- Updated revision dates across multiple translation files to reflect
the latest changes for better tracking.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@documenso.com>
2024-07-26 16:09:44 +10:00
1028184cf2 feat: initial i18n marketing implementation (#1223)
## Description

This PR introduces an initial i18n implementation using
[Lingui](https://lingui.dev).

We plan to combine it with Crowdin which will provide AI translations
when PRs are merged into main.

We plan to rollout i18n to only marketing for now, and will review how
everything goes before continuing to introduce it into the main
application.

## Reasoning

Why not use i18n-next or other alternatives?

To hopefully provide the best DX we chose Lingui because it allows us to
simply wrap text that we want to translate in tags, instead of forcing
users to do things such as:

- Update the text to `t('some-text')`
- Extract it to the file
- The text becomes a bit unreadable unless done correctly

Yes, plugins such as i18n-ally and Sherlock exist to simplify these
chores, but these require the user to be correctly setup in vscode, and
it also does not seem to provide the required configurations for our
multi app and multi UI package setup.

## Super simple demo

```html
// Before
<p>Text to update</p>

// After
<p>
  <Trans>Text to update</Trans>
</p>
```

## Related Issue

Relates to #885 but is only for marketing for now.

Another branch is slowly being prepared for the changes required for the
web application while we wait to see how this goes for marketing.

## Changes Made

Our configuration does not follow the general standard since we have
translations that cross:
- Web app
- Marketing app
- Constants package
- UI package

This means we want to separate translations into:
1. Marketing - Only translations extracted from `apps/marketing`
2. Web - Only translations extracted from `apps/web`
3. Common - Translations from `packages/constants` and `packages/ui`

Then we bundle, compile and minify the translations for production as
follows:
1. Marketing = Marketing + Common
2. Web = Web + Common

This allows us to only load the required translations when running each
application.

Overall general changes: 
- Add i18n to marketing
- Add core i18n setup to web
- Add pre-commit hook and GH action to extract any new <Trans> tags into
the translation files

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit


- **New Features**
- Added Romanian localization for marketing messages to improve
accessibility for Romanian-speaking users.
- Introduced German and English translation modules and PO files to
enhance the application's internationalization capabilities.
- Integrated internationalization support in the RootLayout component
for dynamic language settings based on server-side configurations.
- Enhanced the Enterprise component with translation support to adapt to
user language preferences.
- Added a `<meta>` tag to prevent Google from translating the page
content, supporting internationalization efforts.

- **Bug Fixes**
- Resolved minor issues related to the structure and accessibility of
translation files.

- **Chores**
- Updated project dependencies to support the new localization features
and ensure stability.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Lucas Smith <me@lucasjamessmith.me>
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@documenso.com>
2024-07-26 14:56:42 +10:00