Catalin Pit
2fb9f6d0a0
Merge branch 'main' into fix/cc-recipient-order-last
2026-07-06 09:44:20 +03:00
Catalin Pit
50f272be87
fix: admin organisation limits and usage UI ( #3014 )
2026-07-02 16:50:11 +10:00
Catalin Pit
a55e6d9484
fix: block invisible & control characters and URLs in names ( #2978 )
2026-07-02 16:20:56 +10:00
David Nguyen
d35d13db23
fix: remove presigned branding upload ( #3053 )
2026-07-02 15:51:19 +10:00
github-actions[bot]
2332b0316b
chore: extract translations ( #3013 )
2026-07-02 14:58:56 +10:00
Arun Kumar
5a8335e0eb
fix: webhook payload contains stale deletedAt on document cancellation ( #2980 )
2026-07-01 17:19:21 +10:00
Kendry Grullon
562d78e2d7
feat: add granular signin disable flags and OIDC auto-redirect ( #2857 )
2026-06-30 16:08:09 +10:00
Grégory Chevalier
3b110cf70d
fix: french translation for confirmation message ( #3050 )
2026-06-30 15:52:59 +10:00
Catalin Pit
055a8f55d4
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-29 10:10:58 +03:00
David Nguyen
1f170ef5e5
fix: scope organisation group deletion ( #3047 )
2026-06-29 14:11:31 +10:00
Lucas Smith
8f68393241
fix: tighten permission and validation checks ( #3046 )
2026-06-29 13:15:13 +10:00
Lucas Smith
94adea149d
chore: general repo maintenance and docs cleanup ( #3030 )
...
Refresh README/docs for the current stack, add a security policy,
note the external-PR pause, and remove dead config and workflows.
2026-06-25 23:59:25 +10:00
Catalin Pit
5798d17473
chore: merged main
2026-06-25 08:43:36 +03:00
David Nguyen
9c5eb43a26
fix: migrate emails to jobs ( #3024 )
2026-06-25 13:57:17 +10:00
Konrad
e0ef11e8c3
chore(i18n): update Polish translation ( #3020 )
2026-06-25 13:24:40 +10:00
Lucas Smith
187b612568
chore: add translations ( #3012 )
2026-06-23 15:12:23 +10:00
Lucas Smith
b37529a1cf
fix: show warning on overlapping fields ( #3017 )
2026-06-23 15:11:57 +10:00
Lucas Smith
04f6e76178
feat: cap automated reminders before resend ( #3016 )
...
Stop sending automated reminders after a configurable threshold
(default 5) and reset the count on manual resend.
2026-06-23 15:11:52 +10:00
Lucas Smith
f2525ae95b
feat: add API endpoint to reject documents on behalf of recipients ( #3007 )
...
Programmatically record an external rejection on behalf of a recipient
who declined outside the platform. Flags the rejection as external in
the audit log, optionally attributes it to a specific team member via
actAsEmail, and enforces team membership and document visibility.
2026-06-22 21:59:07 +10:00
David Nguyen
2f24a8eab2
fix: set send status on resend ( #3011 )
2026-06-22 17:00:24 +10:00
github-actions[bot]
783123f72b
chore: extract translations ( #2987 )
2026-06-22 16:06:57 +10:00
Lucas Smith
e8ed1c3d99
fix: respect branding enabled for recipient routes ( #3009 )
2026-06-22 16:06:06 +10:00
Lucas Smith
531d8de8e9
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-22 14:51:11 +10:00
Lucas Smith
0bf58ca66e
feat: add custom brand colours to emails ( #3005 )
2026-06-22 14:33:34 +10:00
Abdelrahman Abdelhamed
306e7fe5ed
fix: render unicode characters in typed signatures ( #2728 )
2026-06-22 13:40:56 +10:00
Yash Singh
219db32fdf
fix: only send S3 checksums when required to support S3-compatible storage ( #2984 )
2026-06-22 13:35:37 +10:00
Catalin Pit
00f01c74df
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-19 15:33:06 +03:00
Lucas Smith
a99bdf5e20
fix: include envelopeId in webhook payload ( #2998 )
2026-06-18 14:32:15 +10:00
Lucas Smith
4f346d3c2d
feat: add cancellable document status ( #2992 )
...
Adds a CANCELLED envelope status that privileged members (owner or team
admin/manager) can move a pending document into. Sending recipient
notifications via a background job while retaining the document in the
dashboard as proof of distribution.
Includes a dedicated Cancelled tab, single and bulk cancel actions,
the ENVELOPE_CANCELLED mutability guard, and e2e coverage for
permissions
and visibility.
2026-06-18 13:52:35 +10:00
Catalin Pit
01376a580d
chore: merged main
2026-06-17 12:04:51 +03:00
Lucas Smith
d5ce222482
feat: add CSC AES/QES signing (v1 instance-wide config) ( #2874 )
...
Adds Cloud Signature Consortium (CSC) integration for AES/QES signing
against a configured TSP. v1 ships as instance-wide configuration via
environment variables, with per-envelope signature level selection,
license gating, and an OAuth-driven signing flow (capture + FIFO
signers, SAD session, blocking/in-progress recipient pages).
Includes signature level compatibility checks (role, signing order,
dictate next signer), envelope mutability assertions, Prisma migration
for signature level and CSC tables, and docs for the new signing
certificate options.
2026-06-16 23:37:34 +10:00
Catalin Pit
87f64769fa
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-16 13:50:56 +03:00
David Nguyen
15549a6758
fix: add early quota warning ( #2986 )
...
## Description
- Add banners when plans near fair use limits
- Automated email alerts to our support when nearing fair use limits
2026-06-15 16:02:18 +10:00
Lucas Smith
0aa84cecc8
chore: add translations ( #2975 )
2026-06-15 14:29:42 +10:00
Catalin Pit
136602e731
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-12 12:55:04 +03:00
Lucas Smith
3887aa67c8
fix: rework stripe webhooks into idempotent subscription sync ( #2977 )
...
Replace per-event webhook handlers with a single sync function that
fetches the current state from Stripe and converges the local
subscription, claim, and organisation type.
- Create organisations upfront before checkout, restricted as
"pending payment" until the first payment syncs
- Add rate-limited subscription sync route, triggered on checkout
success so the UI doesn't wait on webhooks
- Surface pending payment state in banner, billing table, and limits
2026-06-12 16:01:03 +10:00
Catalin Pit
244a3ebf07
Merge branch 'main' into fix/cc-recipient-order-last
2026-06-09 17:02:54 +03:00
Catalin Pit
361f404690
refactor: simplify recipient type handling and improve signing order logic
2026-06-09 14:17:10 +03:00
David Nguyen
8c11266747
fix: correctly orphan envelopes and stripe cancel on delete ( #2967 )
2026-06-09 15:52:14 +10:00
Lucas Smith
3e47f1913c
chore: add translations ( #2929 )
2026-06-09 15:48:50 +10:00
David Nguyen
9ccf50ed95
fix: correctly strip background job values ( #2965 )
2026-06-09 15:33:41 +10:00
Catalin Pit
e36d83ba65
chore: merged main
2026-06-09 08:32:31 +03:00
Catalin Pit
ecc98fbd41
feat: enhance document signing page with field canvas style integration ( #2876 )
2026-06-09 15:05:22 +10:00
github-actions[bot]
90462bf414
chore: extract translations ( #2923 )
2026-06-09 13:37:34 +10:00
Catalin Pit
6be76034b4
refactor: update field-renderer imports and consolidate FieldRenderMode type
2026-06-08 09:02:11 +03:00
Arun Kumar
184cbd6770
fix: guard missing password reset token and fix broken reset link URL ( #2928 )
2026-06-08 14:31:26 +10:00
David Nguyen
8448e333cf
fix: update new quota and rates UX ( #2954 )
2026-06-08 14:14:22 +10:00
Konrad
7c48ae6ff4
chore(i18n): fix typo in Polish translation ( #2948 )
2026-06-08 12:40:07 +10:00
David Nguyen
4ee789ea37
fix: add multi email transport system ( #2942 )
2026-06-05 21:19:20 +10:00
David Nguyen
ebf5b75a19
fix: add email disable flag ( #2931 )
2026-06-05 17:55:10 +10:00