Commit Graph

3041 Commits

Author SHA1 Message Date
Catalin Pit
f0a511e238 chore: refactor code 2024-02-27 15:22:02 +02:00
Timur Ercan
837ff531a9 chore: format 2024-02-27 11:55:10 +01:00
Timur Ercan
b02263eea1 Chore/blog (#964)
day 2 blogpost
2024-02-27 11:49:16 +01:00
Timur Ercan
f5a0c1733f chore: tags 2024-02-27 11:47:52 +01:00
Timur Ercan
18368b5801 chore: day 2 blogpost 2024-02-27 11:47:22 +01:00
Adithya Krishna
b225cc8139 chore: updated styles
Signed-off-by: Adithya Krishna <adithya@documenso.com>
2024-02-27 20:40:43 +11:00
Adithya Krishna
b498f8edb7 feat: update ui
Signed-off-by: Adithya Krishna <adithya@documenso.com>
2024-02-27 20:40:42 +11:00
Adithya Krishna
b1261510d2 feat: update signin signup pages
Signed-off-by: Adithya Krishna <adithya@documenso.com>
2024-02-27 20:39:20 +11:00
Adithya Krishna
65d762dd4b feat: update signin signup ui
Signed-off-by: Adithya Krishna <adithya@documenso.com>
2024-02-27 20:39:19 +11:00
Adithya Krishna
deea6b1535 feat: update marketing site
Signed-off-by: Adithya Krishna <adithya@documenso.com>
2024-02-27 20:36:40 +11:00
Lucas Smith
af30443f5a Merge branch 'main' into feat/webhook-implementation 2024-02-27 18:17:54 +11:00
Mythie
a4b1f7c983 feat: support team webhooks 2024-02-27 16:56:32 +11:00
Mythie
7dd2bbd8ab feat: update webhook handling and triggering 2024-02-27 15:16:14 +11:00
Mythie
488464e3e7 chore: add team to webhook model 2024-02-27 13:38:12 +11:00
Mythie
1ec549b869 chore: add webhook-call model 2024-02-27 13:37:24 +11:00
Mythie
c2daa964c0 chore: use cuids for webhooks 2024-02-27 12:13:56 +11:00
Timur Ercan
53d18eb3c8 chore: typo (#963) 2024-02-26 17:13:19 +01:00
Timur Ercan
21016216b6 chore: typo 2024-02-26 17:13:01 +01:00
Timur Ercan
b5b0aeef6d chore: typo (#962)
---
name: Pull Request
about: Submit changes to the project for review and inclusion
---

## Description

<!--- Describe the changes introduced by this pull request. -->
<!--- Explain what problem it solves or what feature/fix it adds. -->

## 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

<!--- Provide a summary of the changes made in this pull request. -->
<!--- Include any relevant technical details or architecture changes.
-->

- Change 1
- Change 2
- ...

## Testing Performed

<!--- Describe the testing that you have performed to validate these
changes. -->
<!--- Include information about test cases, testing environments, and
results. -->

- Tested feature X in scenario Y.
- Ran unit tests for component Z.
- Tested on browsers A, B, and C.
- ...

## Checklist

<!--- Please check the boxes that apply to this pull request. -->
<!--- You can add or remove items as needed. -->

- [ ] 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.
- [ ] I have followed the project's coding style guidelines.
- [ ] I have addressed the code review feedback from the previous
submission, if applicable.

## Additional Notes

<!--- Provide any additional context or notes for the reviewers. -->
<!--- This might include details about design decisions, potential
concerns, or anything else relevant. -->
2024-02-26 17:11:53 +01:00
Timur Ercan
8faf3afbbe chore: typo 2024-02-26 17:11:09 +01:00
Timur Ercan
0044b1f617 Update README.md (#961) 2024-02-26 14:22:00 +01:00
Timur Ercan
75f8305023 Update README.md 2024-02-26 14:20:44 +01:00
Timur Ercan
36e32639c9 chore: blog day 1 (#960)
deploy day 1
2024-02-26 13:12:10 +01:00
Timur Ercan
25164abc14 chore: capitals 2024-02-26 13:11:44 +01:00
Timur Ercan
1b8b81b16c chore: capitals 2024-02-26 13:11:08 +01:00
Timur Ercan
4bdd41c7c5 chore: blog day 1 2024-02-26 13:09:15 +01:00
Mythie
a31057d0d1 fix: add updated badge 2024-02-26 22:35:10 +11:00
Mythie
70165c4469 chore: ui updates 2024-02-26 22:24:23 +11:00
Timur Ercan
8dceeffff7 chore: pricing update (#952)
new pricing, ready to be merged when the launchweek day 1 article drops
2024-02-26 12:09:28 +01:00
Catalin Pit
15c22d3897 feat: updated the triggerWebhook function 2024-02-26 12:52:30 +02:00
Timur Ercan
a54d09ab19 Merge branch 'main' into chore/pricing-update 2024-02-26 09:44:16 +01:00
Lucas Smith
15ebe6dbaf fix: add cascade delete to recipient fields v1.5.0-rc.0 2024-02-26 03:51:28 +00:00
Lucas Smith
5805d8a903 Merge branch 'main' into feat/webhook-implementation 2024-02-26 12:47:21 +11:00
Lucas Smith
f7c6b53258 feat: public api start (#674)
This PR adds the public-facing API.

![API high-level
workings](https://github.com/documenso/documenso/assets/25515812/9f866889-164f-401f-bf4e-d3e69b6382f1)

The public API will allow users to interact with Documenso
programmatically. At the moment, there are 5 available endpoints:
1. `GET /documents`
    - get all documents of the user making the API call
- it accepts 2 URL query parameters - `page` and `perPage`, but they are
not mandatory
2. `GET /documents/:id`
    - get a specific document of the user making the API call
- it requires 1 URL parameter, which represents the ID of the document
that needs to be retrieved
3. `DELETE /documents/:id`
    - delete a specific document of the user making the API call
- it requires 1 URL parameter, which represents the ID of the document
that needs to be deleted
4. `POST /documents`
- making a POST request to this endpoint will return an S3 pre-signed
URL where you can upload the document
    - it requires you to pass the file name and the file content type
5. `PATCH /documents/:id/send-for-signing`
    - send a document for signing
    - it allows you to pass the following:
        - signer email *(required)*
        - signer name *(optional)*
        - field type (signature, email, name, etc.) *(required)*
        - page number where to insert the field *(required)*
        - page X *(required)*
        - page Y *(required)*
        - page width *(required)*
        - page height *(required)*
        - email subject *(optional)*
        - email body *(optional)*

The users are authenticated through API tokens. The users can create one
or more tokens in their account settings, and each token will be
available for 1 year _(duration open to suggestions/changes)_.

Each time the user makes a request, the app checks if the token exists
and if it's valid. The app will return `401` *(unauthorized)* and the
appropriate error message if either is false. If both are true AND the
user uses the correct HTTP verb and passes the required URL parameters
and body, the API call will be successful.

Code overview:
- `@documenso/packages/lib/trpc/api-contract` - this folder contains the
`contract` and `schema` files. The `contract.ts` file describes the
structure of the API, the format of the requests and responses, and how
to authenticate your API calls, among others. The `schema.ts` file
contains the Zod schemas used in the API contract.
- `@documenso/packages/trpc/server/api-token-router` - this folder
contains the `router.rs` and `schema.ts` files. Here are the tRPC
procedures used on the frontend. That is, the user's settings page,
where the user can list/create/delete API tokens.
- `@documenso/packages/trpc/tsconfig.json` - I added `"strict": true`
because that's what's suggested in the `ts-rest` documentation.
*([source](https://ts-rest.com/docs/quickstart#create-a-contract))*
- `[...ts-rest].tsx` - This file contains the implementation of the API.
You can see the logic behind each route.
- the rest of the code represents the code for the API tokens page in
the user's settings.
2024-02-26 12:41:16 +11:00
Mythie
4778270d3c fix: use template dialog to pass teamId 2024-02-26 12:20:50 +11:00
Lucas Smith
3c51a1bc3d Merge branch 'main' into feat/public-api 2024-02-26 12:15:33 +11:00
Lucas Smith
fcfb741363 feat: edit recipients when creating document from template (#953)
https://github.com/documenso/documenso/assets/55143799/85a840e3-4fb4-4c02-ba63-b9626f4cea58
2024-02-26 12:00:23 +11:00
Mythie
a54159a9ec fix: add missing teamId references 2024-02-26 11:59:32 +11:00
David Nguyen
5bd0dde4a5 fix: e2e tests 2024-02-26 10:50:46 +11:00
Mythie
6b8e11b535 fix: template router update 2024-02-26 10:31:24 +11:00
Mythie
c7dac2f4de fix: update delete endpoint and add limits 2024-02-26 10:01:13 +11:00
Mythie
4cb0d6999d fix: build errors from merge 2024-02-26 09:13:46 +11:00
Lucas Smith
2a74ce06ef Merge branch 'main' into feat/public-api 2024-02-26 00:21:25 +11:00
Lucas Smith
6ea6dda99d feat: add transparent background to fields (#899) 2024-02-26 00:10:35 +11:00
Lucas Smith
187a988f9c Merge branch 'main' into transparent-fields 2024-02-26 00:02:56 +11:00
Lucas Smith
5bef2fba91 fix: follow figma design 2024-02-25 13:02:09 +00:00
Lucas Smith
df3ba11655 feat: account deletion (#846)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
	- Added two-factor authentication form handling in profile settings.
- Introduced account deletion functionality, including Stripe customer
data removal.
- Updated UI components and styles for improved user interaction, such
as enhanced visual feedback for destructive actions.
- **Refactor**
- Improved code quality by updating import statements for type-only
imports.
- **Chores**
- Restructured the `forwardPorts` array in dev container configuration
for clarity.
- Removed a trailing comma in the `vscode` extensions list to adhere to
JSON format rules.
- **Documentation**
- Added comments to clarify the handling of undefined values in
two-factor authentication verification.
- **Database**
- Implemented a SQL migration script for creating a default deleted user
in the system.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-02-25 22:49:55 +11:00
Lucas Smith
9cf72e1442 chore: tidy code and extract alert-dialog 2024-02-25 11:12:18 +00:00
Lucas Smith
7226d5ac53 Merge branch 'main' into feat/account-deletion 2024-02-24 23:18:14 +11:00
Lucas Smith
dbd63498e0 feat: custom text field (#945)
https://github.com/documenso/documenso/assets/55143799/c0f296ce-1e91-4b49-9c19-1bdffbd3163f
2024-02-24 22:55:16 +11:00