Commit Graph
100 Commits
Author SHA1 Message Date
Lucas Smith 927a24249c chore: add translations (#1444) 2024-11-05 18:53:33 +09:00
Mythie 32b65c4d49 fix: blog posts breaking during ssr on vercel 2024-11-05 18:34:27 +11:00
Mythie de880aa821 v1.7.2-rc.4 2024-11-05 13:50:01 +11:00
Mythie dc5723c386 chore: add i18n lang to document deleted email 2024-11-05 13:44:00 +11:00
Lucas SmithandCrowdin Bot c57d1dc55d chore: add translations (#1443)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-05 13:07:55 +11:00
Lucas Smith 4dd95016b1 feat: i18n for emails (#1442)
## Description

Support setting a document language that will control the language used
for sending emails to recipients. Additional work has been done to
convert all emails to using our i18n implementation so we can later add
controls for sending other kinds of emails in a users target language.

## Related Issue

N/A

## Changes Made

- Added `<Trans>` and `msg` macros to emails
- Introduced a new `renderEmailWithI18N` utility in the lib package
- Updated all emails to use the `<Tailwind>` component at the top level
due to rendering constraints
- Updated the `i18n.server.tsx` file to not use a top level await

## Testing Performed

- Configured document language and verified emails were sent in the
expected language
- Created a document from a template and verified that the templates
language was transferred to the document
2024-11-05 11:52:54 +11:00
Lucas Smith 8aa6d8e602 chore: add translations (#1433) 2024-11-01 13:22:51 +09:00
Mythie 0cee07aed3 v1.7.2-rc.3 2024-10-31 15:33:03 +11:00
Mythie f76f87ff1c fix: use key for expansion on embeds 2024-10-31 15:31:40 +11:00
Mythie 6020336792 v1.7.2-rc.2 2024-10-30 14:37:50 +11:00
Mythie 634b30aa54 fix: signature flickering during embed 2024-10-30 14:36:35 +11:00
Mythie b8310237e4 v1.7.2-rc.1 2024-10-23 13:28:54 +11:00
Lucas Smith c7564ba8f7 chore: enable spanish (#1417)
Enables the spanish translation of the application:


![image](https://github.com/user-attachments/assets/eacf4800-272e-4458-abcc-4d6c6f3071cf)
2024-10-23 09:01:14 +11:00
Lucas Smith eafd7c551b feat: add team user management endpoints to api (#1416)
## Description

Adds user management capabilities to our current API. Allows for adding,
removing, listing and updating members of a given team using a valid API
token.

## Related Issue

N/A

## Changes Made

- Added an endpoint for inviting a team member
- Added an endpoint for removing a team member
- Added an endpoint for updating a team member
- Added an endpoint for listing team members

## Testing Performed

Tests were written for this feature request
2024-10-22 22:53:31 +11:00
Lucas Smith 514edf01d3 chore: add translations (#1406) 2024-10-22 14:02:51 +11:00
Mythie a2db5e9642 chore: update changelog 2024-10-09 12:23:38 +11:00
Lucas Smith 4ec9dc78c1 chore: add translations (#1359) 2024-10-09 10:55:21 +11:00
Mythie faf2bd5384 v1.7.2-rc.0 2024-10-08 21:56:44 +11:00
97ee69e7a0 chore: add translations (#1354)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@documenso.com>
2024-09-19 16:17:16 +10:00
Mythie 3da344fc5f v1.7.1-rc.3 2024-09-19 13:55:35 +10:00
Mythie 404ca3202f chore: update action auth 2024-09-19 13:45:39 +10:00
Mythie 9852e8971f v1.7.1-rc.2 2024-09-18 11:05:19 +10:00
Mythie 5091112e4b fix: dont nullify externalId if not passed to update document settings 2024-09-18 11:00:48 +10:00
Lucas Smith 08114f7b97 chore: add translations (#1327) 2024-09-18 10:43:43 +10:00
Mythie 4ce4ca3f34 v1.7.1-rc.1 2024-09-17 15:26:38 +10:00
Lucas Smith 7644c0d855 feat: support smaller field bounds (#1344)
Currently this won't always display super well since
our insertion solution isn't amazing but our current
minimum bounds within the UI are a bit large and can be
smaller.

This change makes it smaller and uses container queries to
support dynamically displaying labels based on the container
size.
2024-09-17 00:29:42 +10:00
Mythie 7b06b68572 v1.7.1-rc.0 2024-09-10 23:15:02 +10:00
Lucas Smith c36306d2c9 feat: add authOptions to the API (#1338)
Add the authOptions property to the document and
recipient related API endpoints.

These were previously missing so the only way API
users could set the authOptions was via templates
and using the generateTemplate endpoint.
2024-09-10 15:07:40 +10:00
Mythie bfb09e7928 v1.7.0 2024-09-09 11:20:33 +10:00
Mythie d7e5aa1d26 v1.7.0-rc.5 2024-09-09 08:47:26 +10:00
Lucas Smith 8cb3ad4f3c chore: embedding blog post (#1329) 2024-09-06 22:11:55 +10:00
Lucas SmithandCrowdin Bot bc471fcd9f chore: add translations (#1308)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit


- **Chores**
- Updated the metadata revision dates in multiple German translation
files for consistency.
- Added extraneous blank lines in multiple translation files for cleaner
formatting.

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

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-09-06 12:54:18 +10:00
Mythie 921617b905 v1.7.0-rc.4 2024-09-05 10:46:23 +10:00
Lucas Smith a1a8a174bf feat: embed signing experience (#1322) 2024-09-04 23:13:00 +10:00
Mythie 3657050b02 fix: translation related crashes on marketing 2024-09-04 20:28:43 +10:00
Lucas Smith fd7c1fea1c chore: upgrade next (#1300) 2024-09-03 09:48:54 +10:00
Mythie 5f4972d63b v1.7.0-rc.3 2024-09-03 09:27:51 +10:00
Mythie d599ab0630 v1.7.0-rc.2 2024-08-29 11:01:21 +10:00
Mythie 81479b5b55 v1.7.0-rc.1 2024-08-28 18:00:43 +10:00
Mythie 9638dfbf37 v1.7.0-rc.0 2024-08-28 14:31:30 +10:00
Lucas Smith dfa89ffe44 fix: make invite and confirmations long lived (#1309)
Previously we would delete all invites and confirmation tokens upon
completing the action that they represent.

This change instead adds a flag on each token indicating whether it has
been completed so we can action a
completed token differently in the UI to reduce confusion for users.

This had been brought up a number of times where confirmation emails,
team member invites and other items
may have been actioned and forgotten about causing an error toast/page
upon subsequent revisit.
2024-08-28 14:08:35 +10:00
Lucas Smith 7943ed5353 chore: add translations (#1306) 2024-08-28 09:44:19 +10:00
Lucas Smith 04b92eac1d chore: add translations (#1305) 2024-08-27 23:37:05 +10:00
Lucas Smith 27066e2022 chore: add translations (#1295) 2024-08-21 11:06:26 +10:00
Mythie 9178dbd3c1 chore: update marketing site 2024-08-20 23:23:36 +10:00
Mythie 73800d1503 fix: don't send too much data to background job provider 2024-08-15 13:57:54 +10:00
Mythie 063ed966df fix: support custom inngest app ids 2024-08-14 16:26:58 +10:00
Mythie f568025a0b fix: support inngest vercel integration 2024-08-14 13:49:47 +10:00
Lucas Smith 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
Mythie 20ec2dde3d chore: update changelog 2024-08-13 11:49:12 +10:00
Mythie 3b8914da83 v1.6.1-rc.1 2024-08-13 09:57:50 +10:00
Mythie ef3ecc33f1 v1.6.1-rc.0 2024-08-09 15:49:41 +10:00
Lucas Smith 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
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
Mythie 043aff3ca9 v1.6.0 2024-07-23 12:53:02 +10:00
Mythie ae5ae111a6 chore: update failing tests 2024-07-22 20:52:17 +10:00
Mythie 414b1b7287 v1.6.0-rc.3 2024-07-19 13:27:01 +10:00
Mythie 7ac4cd25e7 fix: update template limits 2024-07-19 13:16:26 +10:00
Mythie 40428f40e1 fix: only send cancelled emails to recipients who have received the document 2024-07-19 12:41:04 +10:00
Mythie 3a57f97218 chore: update failing tests 2024-07-19 11:32:49 +10:00
Mythie a3ee732a9b v1.6.0-rc.2 2024-07-15 10:50:49 +10:00
Lucas Smith c3035dbd15 feat: add external id to documents and templates (#1227)
## Description

Adds the external ID column to documents and templates with an option to
configure it in the API or UI.

External ID's can be used to link a document or template to an external
system and identify them via webhooks, etc.
2024-07-13 16:45:09 +10:00
Mythie 6b5e4da424 v1.6.0-rc.1 2024-07-05 14:24:40 +10:00
Mythie dc34e81a7e chore: downgrade sharp 2024-06-28 12:12:15 +10:00
Mythie a42fc3cbaa chore: hoist sharp dependency 2024-06-28 11:08:31 +10:00
Lucas Smith b08e153ca2 feat: add public profiles (#1180)
## Description

Add public profiles

## Changes

- Add profiles settings page for users and teams
- Add profiles page `/p/<url>`

## Not completed

- Pending tests
- UI changes to promote public profiles (sign up, etc)
2024-06-27 22:47:20 +10:00
Mythie d85f207d59 fix: add button type 2024-06-27 22:32:48 +10:00
Mythie 22c02aac02 feat: avatar images 2024-06-27 21:50:42 +10:00
Lucas Smith 5b4e6e530b Merge branch 'main' into feat/public-profiles 2024-06-27 12:10:45 +10:00
Lucas Smith 93842ba604 fix: show correct authentication action for account required (#1191)
## Description

When using account required auth for a given document this change now
shows the sign up or sign in button depending on if an account actually
exists within
Documenso.

This change should reduce friction and confusion when a recipient has
been invited to a document.

## Related Issue

<!--- If this pull request is related to a specific issue, reference it
here using #issue_number. -->
<!--- For example, "Fixes #123" or "Addresses #456". -->

## Changes Made

- Updated the ssr for the signing page to fetch whether a user account
exists when document auth is required
- Pass the user exists flag to the document auth required page

## Testing Performed

- Created and sent a document to a user with an account and one without an account in both a logged in and logged out state and confirmed that the dialogs are displayed as expected.
2024-06-26 12:03:01 +10:00
Lucas Smith d6f9c701fc fix: direct links for teams are generated wrong (#1197)
use `NEXT_PUBLIC_WEBAPP_URL()` for the base URL.
2024-06-26 11:50:20 +10:00
Lucas Smith 1f59266e08 Merge branch 'main' into fix/show-sign-in-or-sign-up-for-account-required 2024-06-26 11:48:15 +10:00
Lucas Smith e527058322 Merge branch 'main' into fix/show-sign-in-or-sign-up-for-account-required 2024-06-24 19:44:23 +10:00
Lucas Smith 19d8b4b80d Merge branch 'main' into feat/public-profiles 2024-06-21 20:14:32 +10:00
Lucas Smith 9a48da5270 feat: background tasks (#1160)
## Description

Currently a work in progress but this adds background tasks to Documenso
for handling tasks that take a little longer and aren't part of the
overall critical path.

## Related Issue

N/A

## Changes Made

Added a pluggable jobs provider supporting both a local provider and a
Trigger.dev provider.

## Testing Performed

- Verified job level retries work
- Verified task level retries work without incrementing job retries


![image](https://github.com/documenso/documenso/assets/13398220/3bbfbc7f-28ef-43ab-a539-ae0d4e900b43)

![image](https://github.com/documenso/documenso/assets/13398220/fd012169-4986-4653-b852-ba6e19a5d131)


**This will still have a lot of rough edges but is a perfect MVP for
local _durable_ compute which may accept more providers later on**

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

- **New Features**
- Added background job management functionalities to handle email
sending and job processing.
- Introduced support for triggering and managing jobs using various
providers.

- **Chores**
- Updated environment configuration files to support new job management
features.
- Added and updated scripts and dependencies for job management and CLI
commands.
  
- **Refactor**
- Refactored email sending functionalities to utilize the new job queue
mechanism.

- **Documentation**
- Updated documentation to reflect the new environment variables and
configurations related to background jobs.

- **Configuration**
- Updated Docker configurations to support new services for job
management.
- Updated VSCode settings for improved development experience with new
dependencies and formatting rules.
  
- **Database**
- Added new database schemas and migrations to support background job
management and tracking.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-21 14:32:29 +10:00
Mythie 2c3c067eb4 chore: add inngest:dev command 2024-06-21 14:25:45 +10:00
Lucas Smith 5d417ee67f Merge branch 'main' into feat/public-profiles 2024-06-21 13:59:13 +10:00
Lucas Smith 1ad64b43db Merge branch 'main' into feat/background-tasks 2024-06-21 13:58:56 +10:00
Mythie ffb890fdf6 chore: force pin turbo to resolve docker issues for now 2024-06-21 13:52:22 +10:00
Mythie 8e19c89fae chore: add packageManager field 2024-06-21 13:07:30 +10:00
Mythie 6b3c0afe25 chore: add prebuild to handle prisma build cache 2024-06-21 12:55:17 +10:00
Mythie 3e5dcca027 fix: remove extra frontmatter from changelog.mdx 2024-06-21 12:34:45 +10:00
Mythie 93ea3e2644 fix: dirty type safe job definitions 2024-06-21 12:18:11 +10:00
Lucas Smith 6f8d8b908d Merge branch 'main' into feat/background-tasks 2024-06-21 10:31:16 +10:00
Mythie cc667233c6 fix: show correct authentication action for account required
When using account required auth for a given document
this change now shows the sign up or sign in button
depending on if an account actually exists within
Documenso.

This change should reduce friction and confusion when a
recipient has been invited to a document.
2024-06-20 10:59:07 +10:00
Mythie 664b9284bd chore: feedback from pull request 2024-06-19 13:28:14 +10:00
Mythie 4077d02ccd fix: use readonly modifiers for generics 2024-06-18 22:38:53 +10:00
Lucas Smith 2516377cbf Merge branch 'main' into feat/background-tasks 2024-06-17 17:12:12 +10:00
Mythie 8bb936aa51 chore: add env vars to example .env 2024-06-17 17:02:00 +10:00
Mythie b8d6484ff0 fix: improve inngest support 2024-06-17 16:59:14 +10:00
Mythie 6977381e00 feat: inngest provider 2024-06-14 13:53:48 +10:00
Mythie 1c5da46335 fix: update signing email job 2024-06-14 13:53:08 +10:00
Mythie f28334bff7 feat: make jobs client type safe 2024-06-13 15:32:56 +10:00
Mythie 002dc0fdae fix: make local provider robust to random input 2024-06-13 15:24:53 +10:00
Mythie 2e41ecf825 fix: remove dummy code from email job 2024-06-13 15:24:53 +10:00
Mythie 991f808890 feat: ghetto durable compute 2024-06-13 15:24:51 +10:00
Mythie 61827ad729 fix: make trigger.dev work properly 2024-06-13 15:23:52 +10:00
Mythie 108054a133 wip: background tasks 2024-06-13 15:23:19 +10:00
Lucas Smith cfb52161d9 Merge branch 'main' into feat/public-profiles 2024-06-13 15:20:26 +10:00
Lucas Smith 1647f7c4a0 fix: correctly insert fields on rotated pages (#1183)
## Description

PDFs can have pages that are rotated, which are correctly rendered in
the frontend. However, when we load the PDF in the backend, the rotation
is applied which causes issues when we want to insert fields.

To account for this, we swap the width and height for pages that are
rotated by 90/270 degrees. This is so we can calculate the virtual
position the field was placed if it was correctly oriented in the
frontend.

Then when we insert the fields, we apply a transformation to the
position of the field so it is rotated correctly.

**Test document with 0/90/180/270 rotated pages**


[rotated_test.pdf](https://github.com/user-attachments/files/15798138/rotated_test.pdf)
2024-06-12 21:54:45 +10:00