Commit graph

3838 commits

Author SHA1 Message Date
Lucas Smith
5ea4060fd7 v2.8.0 2026-03-10 21:43:01 +11:00
Lucas Smith
af346b179c
feat: add recipient role editing and audit log PDF download in admin (#2594)
- Allow admins to update recipient role from document detail page
- Add download button to export audit logs as PDF
- Display recipient status details in accordion
- Add LocalTime component with hover popover for timestamps
2026-03-10 21:41:46 +11:00
Catalin Pit
ab69ee627b
fix: include extra recipient info in missing fields error msg (#2590) 2026-03-10 12:17:24 +11:00
Lucas Smith
4daec44550
fix: move window.__ENV__ script before client bundle to prevent stale fallback (#2592) 2026-03-10 12:15:15 +11:00
Ted Liang
11eb4dd2cd
fix: security CVE-2026-29045 (#2589) 2026-03-09 16:46:11 +11:00
Lucas Smith
cc71c7d9ba
fix: add cmaps (#2588) 2026-03-09 14:07:13 +11:00
Lucas Smith
f82bf97480
fix: only use embed hash name/email as fallback when recipient values are blank (#2586)
For document signing embeds, the hash-provided name and email should
only
be used when the recipient doesn't already have values set. For template
signing, the hash values are always allowed.

Also makes the email input editable in V1 embeds when the recipient has
no email, matching V2 behavior.

Ref: documenso/embeds#53
2026-03-09 13:30:27 +11:00
Lucas Smith
0e20d364ef
fix: opt findDocumentsInternal query out of batch fetching (#2585) 2026-03-09 12:47:59 +11:00
David Nguyen
ef57c8448a
fix: dropdown fields (#2584) 2026-03-09 12:19:20 +11:00
Lucas Smith
eaaf8f9e63
chore: add translations (#2582) 2026-03-09 11:56:17 +11:00
David Nguyen
58f0c98038
chore: add embed envelope docs (#2576) 2026-03-09 11:50:13 +11:00
Catalin Pit
da7b5d12f8
fix: make signing page left-hand sidebar collapsible (#2541) 2026-03-09 11:45:28 +11:00
github-actions[bot]
7cfe876762
chore: extract translations (#2577) 2026-03-09 11:39:37 +11:00
Ephraim Duncan
15399cbe8e
feat: auto-disable telemetry when license key is configured (#2562) 2026-03-09 11:24:24 +11:00
Catalin Pit
c4754553c9
feat: implement template search functionality (#2376)
- Added  function to handle template searches based on user input
- Introduced in the TRPC router to facilitate authenticated template
searches
- Updated to include template search results alongside document search
results
- Enhanced query handling by enabling searches only when the input is
valid
- Created corresponding Zod schemas for request and response validation
in
2026-03-09 10:44:51 +11:00
David Nguyen
6c8726b58c
fix: performance improvements (#2581) 2026-03-09 10:22:57 +11:00
Lucas Smith
abd031b58b
chore: add translations (#2575) 2026-03-06 16:10:54 +11:00
github-actions[bot]
1ff8680c32
chore: extract translations (#2566) 2026-03-06 14:15:37 +11:00
David Nguyen
7ea664214a
feat: add embedded envelopes (#2564)
## Description

Add envelopes V2 embedded support

---------

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2026-03-06 14:11:27 +11:00
Ephraim Duncan
7e2cbe46c0
fix: show current month data and add caching (#2573)
### Summary

- Add Cache-Control headers to all route responses (1h s-maxage, 2h
stale-while-revalidate)
- Append current month to chart data so graphs stay up-to-date
(cumulative carries forward, else zero)
- Remove `.limit(12)` from growth queries for full history
- Pass isCumulative flag through addZeroMonth
- Deduplicate TransformedData type, remove transformRepoStats
2026-03-06 13:30:31 +11:00
Konrad
c63b4ca3cc
fix(i18n): mark dropdown and radio placeholder for translation (#2537) 2026-03-06 13:05:03 +11:00
David Nguyen
6faa01d384
feat: add pdf image renderer (#2554)
## Description

Replace the PDF renderer with an custom image renderer.

This allows us to remove the "react-pdf" dependency and allows us to use
a virtual list to improve performance.
2026-03-06 12:39:03 +11:00
Lucas Smith
0ce909a298
refactor: find envelopes (#2557) 2026-03-06 12:38:40 +11:00
Lucas Smith
7f271379b9
fix: upgrade @libpdf/core (#2572) 2026-03-06 10:08:58 +11:00
Lucas Smith
406e77e4be
chore: add translations (#2570) 2026-03-05 17:33:36 +11:00
Lucas Smith
bff360b084
fix: upgrade @libpdf/core (#2569) 2026-03-05 15:34:40 +11:00
Lucas Smith
db1087d76d v2.7.1 2026-03-05 15:16:45 +11:00
Lucas Smith
ef0a5b54ba
fix: verify before re-registering in email sync (#2568) 2026-03-05 15:12:20 +11:00
David Nguyen
1f985e2cd3
fix: invalid po translations (#2567) 2026-03-05 14:54:36 +11:00
Konrad
525dd92a56
fix(i18n): mark SUBSCRIPTION_STATUS_MAP for translation (#2515) 2026-03-05 14:42:40 +11:00
Konrad
d21b99825d
fix(i18n): add pluralization to expiration period picker (#2535) 2026-03-05 14:32:12 +11:00
Konrad
dfbf68e4cd
fix(i18n): mark editor field number form placeholder for translation (#2536) 2026-03-05 14:31:24 +11:00
github-actions[bot]
8b0231825f
chore: extract translations (#2539) 2026-03-05 14:11:53 +11:00
Ephraim Duncan
03e2e4f171
docs: clarify placeholder support is envelope.* only (#2560) 2026-03-05 13:58:29 +11:00
Lucas Smith
7f5f2b22ed
feat: add seal-document sweep job and admin unsealed documents page (#2563) 2026-03-05 13:56:40 +11:00
Lucas Smith
7d3a56a006
feat: add admin ability to move subscription between orgs (#2558)
## Summary

- Adds a new admin action to move a subscription (and Stripe customerId)
from one organisation to another owned by the same user
- The target organisation must be on the free plan (no active
subscription) — enforces paid → free only
- The source organisation's claim is reset to the free plan after the
move

## How it works

A "Move Subscription" option appears in the actions dropdown of the
organisations table (on the admin user detail page) for any org with an
active or past-due subscription. Clicking it opens a dialog where the
admin selects a target org from a filtered list of eligible (free-plan)
orgs owned by the same user.

The backend performs the swap atomically in a single Prisma transaction:
1. Deletes any stale inactive subscription on the target org
2. Moves the `customerId` from source to target org
3. Reassigns the `Subscription` record to the target org
4. Copies claim entitlements to the target org
5. Resets the source org's claim to FREE

No Stripe API calls are made — the Stripe subscription and customer
remain unchanged; only the DB-level org association is updated.

## Files changed

- **New:**
`packages/trpc/server/admin-router/swap-organisation-subscription.types.ts`
— Zod schemas
- **New:**
`packages/trpc/server/admin-router/swap-organisation-subscription.ts` —
Admin mutation
- **New:**
`apps/remix/app/components/dialogs/admin-swap-subscription-dialog.tsx` —
Dialog component
- **Modified:** `packages/trpc/server/admin-router/router.ts` — Register
route
- **Modified:**
`apps/remix/app/components/tables/admin-organisations-table.tsx` — Add
action menu item
2026-03-04 22:34:53 +11:00
Catalin Pit
f1323679aa
fix: use default field meta for embedding template fields (#2556) 2026-03-03 22:24:57 +11:00
Lucas Smith
a05251d5ee v2.7.0 2026-03-03 16:19:38 +11:00
Lucas Smith
454f73f2a9
chore: remove old docs (#2550) 2026-03-02 13:47:40 +11:00
Lucas Smith
24a5c85b6c
fix(docs): rewrite mermaid component to avoid async client component error (#2549)
Replace use() with useEffect/useState pattern to prevent 'async Client
Component' errors in Next.js 16 / React 19. Also strip colons from
useId() output which broke mermaid's render().
2026-02-28 16:55:33 +11:00
Lucas Smith
b92c53dbb2
feat: docs v2 (#2460)
Co-authored-by: Catalin Pit <catalinpit@gmail.com>
2026-02-27 22:05:27 +11:00
Lucas Smith
f8ac782f2e
deps: 2026-02-26 upgrades (#2545) 2026-02-26 14:17:08 +11:00
Ephraim Duncan
194660d847
fix: return all documents from V1 API regardless of folder (#2471) 2026-02-26 13:55:14 +11:00
Lucas Smith
0d3bd59ec6
fix: handle cjk and special chars when slugifying (#2544) 2026-02-26 13:54:35 +11:00
Konrad
92d82c0423
fix(i18n): mark supported languages for translation (#2377) 2026-02-26 12:06:18 +11:00
Lucas Smith
484e1c20d0
chore: add translations (#2533) 2026-02-26 11:50:08 +11:00
Lucas Smith
6f5014a561
feat: support optional read replicas (#2540) 2026-02-25 19:07:02 +11:00
Lucas Smith
c112392da9
feat: add admin email domain management and sync job (#2538) 2026-02-25 15:14:18 +11:00
github-actions[bot]
bc72d9cb17
chore: extract translations (#2505) 2026-02-24 22:07:03 +11:00
Karlo
3ad3216c4c
fix: update button width to fit content in public profile page (#2506)
Co-authored-by: Catalin Pit <catalinpit@gmail.com>
2026-02-23 12:46:58 +02:00