Commit Graph

2750 Commits

Author SHA1 Message Date
b6a2fe88cb chore: add direct link video 2024-06-24 17:34:52 +02:00
62cd4c019f feat: force signature fields for document signers (#1139)
## Description

Show a dialog when the document has signers with no signature fields
placed.

## Changes Made

Created a new dialog that'll be triggered when the document owner tries
to send a document to the signers without placing signature fields. The
document owners can't proceed to the next step unless they add signature
fields.

## Checklist

- [x] I have tested these changes locally and they work as expected.
- [ ] I have added/updated tests that prove the effectiveness of these
changes.
- [ ] I have updated the documentation to reflect these changes, if
applicable.
- [x] I have followed the project's coding style guidelines.
- [ ] I have addressed the code review feedback from the previous
submission, if applicable.




https://github.com/documenso/documenso/assets/25515812/f1b5c34e-2ce0-40e3-804c-f05d23045710




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

- **New Features**
- Introduced "Direct Links" for async signing, allowing users to create
documents from templates using public links.
- Added `MissingSignatureFieldDialog` component to ensure users don't
miss adding signature fields.

- **Enhancements**
- Updated blog content to provide guidance on contract management and
announce new pricing plans.

- **Bug Fixes**
  - Improved async signing process for better efficiency and control.

- **Refactor**
- Improved internal code structure and import order for stripe-related
functionality.

- **Tests**
- Enhanced e2e tests to verify signature presence before document
creation and updated test flows for document approval.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: David Nguyen <davidngu28@gmail.com>
2024-06-24 18:01:57 +10:00
16c6d4a8bd fix: show field on pending document (#1158)
## Description

This pull request introduces the functionality to display pending fields
on the document page view. This enhancement allows users to see which
fields are pending and need to be completed.

![CleanShot 2024-05-14 at 23 31
29@2x](https://github.com/documenso/documenso/assets/55143799/ffea0b29-d251-4dd5-9742-5416ac8262ad)


## Changes Made

- Added `getPendingFieldsForDocument` function in
`packages/lib/server-only/field/get-pending-fields-for-document.ts` to
fetch pending fields for a document.
- Created a new component `DocumentPendingFields` in
`document-pending-fields.tsx` to display the pending fields with options
to hide individual fields.

## Testing Performed

- Tested the new feature by creating documents with pending fields and
verifying their display on the document page view.
- Verified that the pending fields are correctly hidden when the "Hide
field" button is clicked.
- Ran unit tests for the new functionality and existing components to
ensure no regressions.

## Checklist

- [x] I have tested these changes locally and they work as expected.
- [x] I have added/updated tests that prove the effectiveness of these
changes.
- [x] I have updated the documentation to reflect these changes, if
applicable.
- [x] I have followed the project's coding style guidelines.
- [ ] I have addressed the code review feedback from the previous
submission, if applicable.

## Additional Notes

No additional notes.


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

- **New Features**
- Introduced logic for handling pending and completed document fields
based on signing status.

- **Refactor**
- Replaced `getCompletedFieldsForDocument` with `getFieldsForDocument`.
- Updated `DocumentReadOnlyFields` component to `DocumentPendingFields`.

- **Bug Fixes**
- Improved field retrieval accuracy and display based on recipient
signing status.

- **Style**
- Enhanced UI elements with new icons and button adjustments for better
user interaction.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: David Nguyen <davidngu28@gmail.com>
2024-06-24 16:08:06 +10:00
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
2c3c067eb4 chore: add inngest:dev command 2024-06-21 14:25:45 +10:00
1ad64b43db Merge branch 'main' into feat/background-tasks 2024-06-21 13:58:56 +10:00
ffb890fdf6 chore: force pin turbo to resolve docker issues for now 2024-06-21 13:52:22 +10:00
8e19c89fae chore: add packageManager field 2024-06-21 13:07:30 +10:00
6b3c0afe25 chore: add prebuild to handle prisma build cache 2024-06-21 12:55:17 +10:00
3e5dcca027 fix: remove extra frontmatter from changelog.mdx 2024-06-21 12:34:45 +10:00
93ea3e2644 fix: dirty type safe job definitions 2024-06-21 12:18:11 +10:00
6f8d8b908d Merge branch 'main' into feat/background-tasks 2024-06-21 10:31:16 +10:00
ef07bb4dec chore: freelancer blog article #2 (#1181)
documenso for freelancer contracts article

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

- **New Features**
- Published a new blog post: "How Documenso Enhances Contract Management
for Freelancers, Helping Them Close More Clients Efficiently." This post
offers insights into contract management and the benefits of digital
signatures using Documenso.

- **Documentation**
- Updated a hyperlink in the conclusion section of the blog post titled
"How Documenso Helps Freelancers Close More Clients Efficiently" to
direct users to a new URL related to signing freelance contracts with
Documenso.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-20 14:21:04 +02:00
f0f21955fb chore date 2024-06-20 14:17:56 +02:00
6b53a76bd0 Merge branch 'main' into chore/freelance-blog-2 2024-06-20 14:16:59 +02:00
6573b41b92 chore: bump date correctly 2024-06-20 14:14:19 +02:00
75bba68857 chore: typo and link 2024-06-20 14:11:50 +02:00
d5bb92b839 chore: bump date 2024-06-20 14:08:23 +02:00
134e241357 feat: add changelog to marketing (#1190)
added changelog page to marketing site

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

## Summary by CodeRabbit

- **New Features**
  - Introduced a changelog page to detail recent updates and features.
  - Added a link to the changelog in the website footer for easy access.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-20 13:00:14 +02:00
a2a10b0ee4 chore: typo and format 2024-06-20 12:59:53 +02:00
a727abdcf1 feat: add changelog to marketign 2024-06-19 16:24:27 +02:00
664b9284bd chore: feedback from pull request 2024-06-19 13:28:14 +10:00
4077d02ccd fix: use readonly modifiers for generics 2024-06-18 22:38:53 +10:00
fbf4bd605f chore: bump date (#1189) 2024-06-17 13:38:14 +02:00
c869ad23f9 chore: bump date 2024-06-17 13:37:12 +02:00
16406b3aae chore: direct links announce (#1177)
direct links account blogarticle


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

- **New Features**
- Introduced Direct Links for templates, allowing asynchronous document
signing via unique shareable links for easy access.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-17 13:36:23 +02:00
f7cb468176 Merge branch 'main' into chore/direct-links-announce 2024-06-17 13:27:32 +02:00
d86c5fee42 chore: typo 2024-06-17 13:27:04 +02:00
2516377cbf Merge branch 'main' into feat/background-tasks 2024-06-17 17:12:12 +10:00
8bb936aa51 chore: add env vars to example .env 2024-06-17 17:02:00 +10:00
b8d6484ff0 fix: improve inngest support 2024-06-17 16:59:14 +10:00
46a7dce320 chore: freelance-blog (#1175)
"How Documenso Helps Freelancers Close More Clients Efficiently" blog
article

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

- **Documentation**
- Added a new blog post titled "How Documenso Helps Freelancers Close
More Clients Efficiently," discussing the benefits of using Documenso to
streamline the proposal process with digital signatures for enhanced
speed and security in closing deals.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-14 12:11:42 +02:00
09d1c1bc33 chore: bump 2024-06-14 11:26:04 +02:00
36d7e3c8c4 chore: final polish 2024-06-14 11:18:23 +02:00
24d0dfa65a text 2024-06-14 11:10:23 +02:00
55dc14f7dc Merge branch 'main' into chore/freelance-blog 2024-06-14 11:08:35 +02:00
6977381e00 feat: inngest provider 2024-06-14 13:53:48 +10:00
1c5da46335 fix: update signing email job 2024-06-14 13:53:08 +10:00
232dc96eb5 chore: update open page
update open page
2024-06-13 14:02:02 +02:00
7b594b303d fix: carousel on mobile screen (#1186)
## Description

Adjusts the styling to improve the layout and appearance of the carousel
controls and thumbnails on smaller screens.

## Changes Made

- Updated the carousel control styling to be more responsive.
- Adjusted the font size and padding of the slide component for better
display on mobile screens.

## Screenshot
![CleanShot 2024-06-13 at 08 18
55@2x](https://github.com/documenso/documenso/assets/55143799/1bcb31a3-2b4f-48bc-8a22-9d8e16b71d17)


## Checklist

- [x] I have tested these changes locally and they work as expected.
- [ ] I have added/updated tests that prove the effectiveness of these
changes.
- [ ] I have updated the documentation to reflect these changes, if
applicable.
- [x] I have followed the project's coding style guidelines.
- [ ] I have addressed the code review feedback from the previous
submission, if applicable.

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



<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-06-13 13:39:33 +02:00
3356934590 fix: carousel on mobile screen 2024-06-13 08:09:06 +00:00
f28334bff7 feat: make jobs client type safe 2024-06-13 15:32:56 +10:00
002dc0fdae fix: make local provider robust to random input 2024-06-13 15:24:53 +10:00
2e41ecf825 fix: remove dummy code from email job 2024-06-13 15:24:53 +10:00
991f808890 feat: ghetto durable compute 2024-06-13 15:24:51 +10:00
61827ad729 fix: make trigger.dev work properly 2024-06-13 15:23:52 +10:00
108054a133 wip: background tasks 2024-06-13 15:23:19 +10:00
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)
v1.5.6-rc.4 v1.5.6
2024-06-12 21:54:45 +10:00
eca66a7c1d fix: add regular plan to price type enum (#1184)
Adds the regular plan to our current plan type enum so we can use it for
user limit calculations.
2024-06-12 21:54:11 +10:00
6f2de54640 Merge branch 'main' into fix/regular-plan 2024-06-12 21:49:39 +10:00