David Nguyen
c2ea5e5859
fix: migrate certificate generation ( #2251 )
...
Generate certificates and audit logs using Konva instead of browserless.
This should:
- Reduce the changes of generations failing
- Improve sealing speed
2026-01-06 14:26:19 +11:00
David Nguyen
0cebdec637
fix: remove legacy envelope uploads ( #2303 )
2025-12-11 14:09:38 +11:00
David Nguyen
0387f3c20a
chore: add missing dropdown image ( #2304 )
...
## Description
Add missing dropdown image in the docs.
2025-12-09 12:37:45 +11:00
David Nguyen and Copilot
93137c6396
fix: translation extraction job ( #2288 )
...
## Description
Workaround until we can commit directly to main for translation
extractions
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-12-06 16:19:35 +11:00
David Nguyen
b51f562224
feat: add empty emails for envelopes ( #2267 )
2025-12-06 13:38:10 +11:00
David Nguyen
f80aa4bf72
chore: optimize tests ( #2280 )
2025-12-06 12:59:53 +11:00
David Nguyen
4774324e07
fix: prevent client side distribution when missing signatures ( #2260 )
2025-12-02 11:29:48 +11:00
David Nguyen
bc19699a58
feat: add dutch language ( #2255 )
2025-12-02 11:28:04 +11:00
David Nguyen
d84cf0e58d
chore: extract translations ( #2252 )
2025-11-27 16:04:22 +11:00
David Nguyen
d857dfdb38
feat: add webhook logs ( #2237 )
2025-11-25 16:03:52 +11:00
David Nguyen
e364b08b6a
fix: optimize webhook routing ( #2236 )
2025-11-25 11:43:23 +11:00
David Nguyen
11d9bde8f8
fix: improve sealing speed ( #2210 )
2025-11-19 14:15:12 +11:00
David Nguyen
798b6bd750
feat: add japanese chinese and korean support ( #2202 )
...
## Description
Adds the following languages since we updated our PDF sealing to support
special characters
- Japanese
- Korean
- Chinese (Simplified)
## Tests
Ran through the signing process in these new languages.
2025-11-18 16:57:38 +11:00
David Nguyen
1bbd04be9b
feat: add field dev mode ( #2203 )
2025-11-18 16:57:06 +11:00
David Nguyen
dabd2564cd
feat: add ability to change field recipient ( #2194 )
...
## Description
Add ability to change recipients for a given field.
<img width="336" height="224" alt="image"
src="https://github.com/user-attachments/assets/c122672d-68ab-4652-9c76-1a1bc874c16a "
/>
<img width="716" height="465" alt="image"
src="https://github.com/user-attachments/assets/a8e8636c-c780-4d56-910b-5522161b12d3 "
/>
2025-11-15 00:46:33 +11:00
David Nguyen
56526f9448
feat: extend use envelope response ( #2192 )
2025-11-14 13:52:19 +11:00
David Nguyen
4304fc1d35
chore: add envelope docs ( #2186 )
2025-11-13 11:50:06 +11:00
David Nguyen
2802813c76
fix: add default values for envelope field meta ( #2181 )
...
🙏
2025-11-12 18:22:30 +11:00
David Nguyen
a33233443b
chore: extract translations ( #2179 )
2025-11-12 17:09:50 +11:00
David Nguyen
f931885a95
fix: remove redundant endpoint ( #2170 )
...
Remove duplicate redundant endpoint
2025-11-12 11:01:15 +11:00
David Nguyen
3d0e3c6e8e
fix: update dropzone to create envelopes ( #2168 )
2025-11-11 20:49:42 +11:00
David Nguyen
936d8d90b3
fix: envelope auth not being passed ( #2167 )
2025-11-11 13:05:05 +11:00
David Nguyen
2aea3c4de0
fix: rename envelope buttons ( #2161 )
2025-11-10 22:21:34 +11:00
David Nguyen
ca0b83579f
fix: auto insert prefilled text and number fields ( #2157 )
2025-11-10 18:04:21 +11:00
David Nguyen
805982f3e8
fix: envelope cc issues ( #2158 )
2025-11-10 11:42:57 +11:00
David Nguyen
e2f5e570cf
fix: envelope direct template ( #2156 )
2025-11-09 22:23:13 +11:00
David Nguyen
9fd9613076
feat: add additional field options ( #2154 )
2025-11-08 23:40:03 +11:00
David Nguyen
88371b665a
fix: set correct envelope item cache url ( #2144 )
2025-11-07 16:50:58 +11:00
David Nguyen
d05bfa9fed
feat: add envelopes api ( #2105 )
2025-11-07 14:17:52 +11:00
David Nguyen
d2a009d52e
fix: allow direct template recipient dictation ( #2108 )
2025-11-01 12:44:34 +11:00
David Nguyen
e13b9f7c84
fix: hide banner for envelope editor ( #2109 )
2025-10-28 16:55:44 +11:00
David Nguyen
9908580bf1
fix: add envelopes flag ( #2104 )
...
## Description
Add a global flag override for envelopes
2025-10-28 11:42:03 +11:00
David Nguyen
b0b07106b4
fix: envelope autosave ( #2103 )
2025-10-27 19:53:35 +11:00
David Nguyen
5cdd7f8623
fix: envelope styling ( #2102 )
2025-10-27 16:11:10 +11:00
David Nguyen
47bdcd833f
chore: extract translations ( #2094 )
2025-10-24 16:37:10 +11:00
David Nguyen
03eb6af69a
feat: polish envelopes ( #2090 )
...
## Description
The rest of the owl
2025-10-24 16:22:06 +11:00
David Nguyen
daab8461c7
fix: email attachment names ( #2085 )
2025-10-21 12:59:40 +11:00
David Nguyen
06cb8b1f23
fix: email attachment formats ( #2077 )
2025-10-16 14:16:00 +11:00
David Nguyen
7f09ba72f4
feat: add envelopes ( #2025 )
...
This PR is handles the changes required to support envelopes. The new
envelope editor/signing page will be hidden during release.
The core changes here is to migrate the documents and templates model to
a centralized envelopes model.
Even though Documents and Templates are removed, from the user
perspective they will still exist as we remap envelopes to documents and
templates.
2025-10-14 21:56:36 +11:00
David Nguyen
3467317271
chore: extract translations ( #2056 )
...
## Description
Extract translations to be translated
2025-10-02 13:20:30 +10:00
David Nguyen
9ac7b94d9a
feat: add organisation sso portal ( #1946 )
...
Allow organisations to manage an SSO OIDC compliant portal. This method
is intended to streamline the onboarding process and paves the way to
allow organisations to manage their members in a more strict way.
2025-09-09 17:14:07 +10:00
David Nguyen
44f5da95b3
chore: refactor routes ( #1992 )
2025-08-25 21:00:35 +10:00
David Nguyen
7eb882aea8
fix: email domain sender logic ( #1993 )
2025-08-25 20:59:37 +10:00
David Nguyen
dbf10e5b7b
chore: add agents file ( #1991 )
2025-08-25 11:32:15 +10:00
David Nguyen
b8d07fd1a6
fix: refactor token router ( #1981 )
2025-08-25 08:25:01 +10:00
David Nguyen
49fabeb0ec
fix: refactor auth router ( #1983 )
2025-08-25 08:24:32 +10:00
David Nguyen
5a5bfe6e34
fix: refactor admin router ( #1982 )
2025-08-25 08:23:48 +10:00
David Nguyen
d7e5a9eec7
fix: refactor document router ( #1990 )
2025-08-25 08:23:12 +10:00
David Nguyen
a51110d276
fix: prevent document unsigning on edit ( #1963 )
2025-08-18 13:48:51 +10:00
David Nguyen
7f81231467
fix: template e2e tests ( #1969 )
2025-08-18 12:42:36 +10:00
David Nguyen
1dea0b8fab
add dummy teamid ( #1968 )
2025-08-16 19:09:21 +10:00
David Nguyen
ea7a2c2712
fix: create customer on signup ( #1964 )
2025-08-14 16:30:16 +10:00
David Nguyen
9026aabe3b
fix: broken e2e tests ( #1956 )
2025-08-11 16:16:21 +10:00
David Nguyen
b844e166a9
fix: build
2025-08-11 12:16:34 +10:00
David Nguyen
950951de75
fix: github actions
2025-08-11 12:05:41 +10:00
David Nguyen
c37e10faab
fix: add document page access logging ( #1947 )
...
Add logging when someone accesses a document page
2025-08-11 11:50:32 +10:00
David Nguyen
fdf6efe94e
chore: extract translations ( #1949 )
...
Extract translations
2025-08-11 11:49:30 +10:00
David Nguyen
4c1eb8f874
fix: translation extraction github action ( #1950 )
...
Fix checkout action for translation extraction
2025-08-11 11:48:19 +10:00
David Nguyen
86c133ae84
fix: remove field truncate logic ( #1940 )
...
Remove the truncation logic and render the text for preview/edit mode.
Text will now overflow, but it's up to the user to correct it
2025-08-07 11:55:25 +10:00
David Nguyen
c28c5ab91d
chore: correct the email domains documentation ( #1941 )
...
## Description
Update the documentation for email domains
2025-08-07 11:54:41 +10:00
David Nguyen
2ee0d77870
fix: correctly set stripe customer names ( #1939 )
...
Currently the Stripe customer name is set to the organisation name,
which in some cases is just the organisation name.
This update makes it so it uses the owner name instead.
2025-08-05 12:30:02 +10:00
David Nguyen
c48486472a
fix: add missing email reply validation ( #1934 )
...
## Description
General fixes to the email domain features
Changes made:
- Add "email" validation for "Reply-To email" fields
- Fix issue where you can't remove the "Reply-To" email after it's set
- Fix issue where setting the "Sender email" back to Documenso would
still send using the org/team pref
2025-08-02 00:40:41 +10:00
David Nguyen
109a49826c
chore: extract translations
2025-07-24 16:15:34 +10:00
David Nguyen
3409aae411
feat: add email domains ( #1895 )
...
Implemented Email Domains which allows Platform/Enterprise customers to
send emails to recipients using their custom emails.
2025-07-24 16:05:00 +10:00
David Nguyen
07119f0e8d
fix: correctly render new lines in text fields ( #1920 )
...
Currently new lines are not rendered in text fields correctly on the
`/sign` page. This is an issue because when the field is inserted and
sealed we respect new lines.
2025-07-24 14:30:33 +10:00
David Nguyen
32a5d33a16
fix: invalid folder queries ( #1898 )
...
Currently the majority of folder mutations only work if the user is the
owner of the folder.
2025-07-16 14:37:55 +10:00
David Nguyen
e5aaa17545
fix: restrict individual plans to upgrade only ( #1900 )
...
Prevent users from creating a separate organisation for individual
plans. Only applies to users who have 1 personal organisation and are
subscribing to the "Individual" plan.
The reason for this change is to keep the layout in the "Personal" mode
which means it doesn't show a bunch of unusable "organisation" related
UI.
2025-07-16 14:35:42 +10:00
David Nguyen
5083ecb4b8
fix: allow resubscribing ( #1901 )
...
Currently users who cancel their plan are stuck without the ability to
resubscribe. This allows them to choose a plan to subscribe
This assumes that a Subscription in the "INACTIVE" state means that the
plan has been paid but canceled.
No tests have been done to determine the relation between "PAST_DUE" and
"INACTIVE" states within our context.
2025-07-16 14:26:21 +10:00
David Nguyen
106f796fea
fix: readonly field styling ( #1887 )
...
Changes:
- Updating styling of read only fields
- Removed truncation for fields and used overflow hidden instead
2025-07-10 12:35:18 +10:00
David Nguyen
cdb9b9ee03
chore: add certificate error logs ( #1875 )
...
Add certificate logs
2025-07-03 10:13:12 +10:00
David Nguyen
ea1cf481eb
chore: extract translations
2025-07-01 21:27:35 +10:00
David Nguyen
7487399123
feat: add more api logs ( #1870 )
...
Adds more detailed API logging using Pino
2025-06-30 19:46:32 +10:00
David Nguyen
0cc729e9bd
feat: add sequential document view logs ( #1871 )
...
## Description
Add a new document audit log to detect when the document is viewed. This
should only be visible in the document audit log page
Notes:
1. I wanted to reuse the `DOCUMENT_OPENED` event and add an additional
paramter to track sequential views, but it's not query-able
2. This will log "DOCUMENT_VIEWED" before "DOCUMENT_OPENED" but i don't
think it matters
2025-06-30 19:11:16 +10:00
David Nguyen
e07a497b69
feat: api logging by pino ( #1865 )
...
experiemental
2025-06-27 21:44:51 +10:00
David Nguyen
dc2042a1ee
fix: rate limit api endpoints ( #1863 )
...
Rate limit API endpoint
2025-06-27 18:50:22 +10:00
David Nguyen
ebe1baf0a0
chore: extract translations
2025-06-19 15:16:44 +10:00
David Nguyen
b8e08e88ac
fix: api keys not showing ( #1839 )
2025-06-13 17:20:03 +10:00
David Nguyen
031a7b9e36
fix: visibility
2025-06-13 01:02:40 +10:00
David Nguyen
12fe045195
fix: visiblity
2025-06-13 00:05:08 +10:00
David Nguyen
614106a5e4
fix: rework documents limits logic ( #1836 )
2025-06-12 13:42:31 +10:00
David Nguyen
e3ce7f94e6
chore: update build
2025-06-11 14:52:23 +10:00
David Nguyen
504a0893ab
chore: add organisation docs ( #1831 )
2025-06-10 20:54:36 +10:00
David Nguyen
4609fc852d
chore: extract translations
2025-06-10 11:52:59 +10:00
David Nguyen
e6dc237ad2
feat: add organisations ( #1820 )
2025-06-10 11:49:52 +10:00
David Nguyen
d78cfec00e
fix: branding logos ( #1759 )
2025-04-24 16:15:06 +10:00
David Nguyen
193325717d
fix: rework fields ( #1697 )
...
Rework:
- Field styling to improve visibility
- Field insertions, better alignment, centering and overflows
## Changes
General changes:
- Set default text alignment to left if no meta found
- Reduce borders and rings around fields to allow smaller fields
- Removed lots of redundant duplicated code surrounding field rendering
- Make fields more consistent across viewing, editing and signing
- Add more transparency to fields to allow users to see under fields
- No more optional/required/etc colors when signing, required fields
will be highlighted as orange when form is "validating"
Highlighted internal changes:
- Utilize native PDF fields to insert text, instead of drawing text
- Change font auto scaling to only apply to when the height overflows
AND no custom font is set
⚠️ Multiline changes:
Multi line is enabled for a field under these conditions
1. Field content exceeds field width
2. Field includes a new line
3. Field type is TEXT
## [BEFORE] Field UI Signing

## [AFTER] Field UI Signing

## [BEFORE] Signing a checkbox


## [AFTER] Signing a checkbox


## [BEFORE] What a 2nd recipient sees once someone else signed a
document

## [AFTER] What a 2nd recipient sees once someone else signed a document

## **[BEFORE]** Inserting fields

## **[AFTER]** Inserting fields

## Overflows, multilines and field alignments testing
Debugging borders:
- Red border = The original field placement without any modifications
- Blue border = The available space to overflow
### Single line overflows and field alignments
This is left aligned fields, overflow will always go to the end of the
page and will not wrap

This is center aligned fields, the max width is the closest edge to the
page * 2

This is right aligned text, the width will extend all the way to the
left hand side of the page

### Multiline line overflows and field alignments
These are text fields that can be overflowed

Another example of left aligned text overflows with more text

2025-04-23 21:40:42 +10:00
David Nguyen
435b3ca4f8
chore: remove legacy document update route ( #1751 )
...
Remove deprecated route
2025-04-17 16:36:10 +10:00
David Nguyen
7e6ac4db40
fix: direct template redirects ( #1727 )
2025-03-28 14:45:54 +11:00
David Nguyen
31be548939
fix: duplicate webhook calls on document complete ( #1721 )
...
Fix webhooks being sent twice due to duplicate frontend calls
Updated the assistant confirmation dialog so the next signer is always
visible (if dictate is enabled). Because if the form is invalid (due to
no name) there is no visual queue that the form is invalid (since it's
hidden)
## Notes
Didn't bother to remove the weird assistants form since it currently
works for now

## Tests
- Currently running locally
- Tested webhooks via network tab and via webhook.site
2025-03-25 21:59:13 +11:00
David Nguyen
063fd32f18
feat: add signature configurations ( #1710 )
...
Add ability to enable or disable allowed signature types:
- Drawn
- Typed
- Uploaded
**Tabbed style signature dialog**

**Document settings**

**Team preferences**

- Add multiselect to select allowed signatures in document and templates
settings tab
- Add multiselect to select allowed signatures in teams preferences
- Removed "Enable typed signatures" from document/template edit page
- Refactored signature pad to use tabs instead of an all in one
signature pad
Added E2E tests to check settings are applied correctly for documents
and templates
2025-03-24 17:13:11 +11:00
David Nguyen
a0ace803cf
fix: admin signing page crash
2025-03-12 16:53:09 +11:00
David Nguyen
c646afcd97
fix: tests
2025-03-09 15:10:19 +11:00
David Nguyen
b990532633
fix: remove refresh on focus
2025-03-08 15:30:13 +11:00
David Nguyen
083a706373
fix: duplex and 2fa refresh
2025-03-04 11:41:38 +11:00
David Nguyen
db326cb4a9
fix: posthog reverse proxy
2025-03-04 10:48:19 +11:00
David Nguyen
d664f571d6
fix: posthog reverse proxy
2025-03-04 10:46:59 +11:00
David Nguyen
7c38970ee8
fix: update error logging
2025-03-04 01:41:39 +11:00
David Nguyen
e08d62c844
fix: remove invalid prisma zod schemas
2025-03-04 01:20:13 +11:00
David Nguyen
25bb6ffe77
fix: imports
2025-03-03 14:49:28 +11:00
David Nguyen
3dce814ab2
fix: stripe price fetch ( #1677 )
...
Currently Stripe prices search is omitting a price for an unknown
reason.
Changed our fetch logic to use `list` instead of `search` allows us to
work around the issue.
It's unknown on the performance impact of using `list` vs `search`
2025-02-28 14:44:06 +11:00