When authenticating using OIDC some IDPs send additional fields in their
authorization response.
This leads to an error because these fields can't be persisted to the DB
through the auth.js prisma adapter.
This PR solves this by deleting all unrecognized fields from the
authorization response before persisting.
This behaviour is also compliant to
[RFC6749 Section 4.1.2](https://datatracker.ietf.org/doc/html/rfc6749#section-4.1.2)
Adds the ability to upload a custom document when using a template.
This is useful when you have a given fixed template with placeholder
values that you want to decorate with Documenso fields but will then
create a final specialised document when sending it out to a given
recipient.
Improves the display of the recipients status when
distribution method is set to none.
Previously we had a ton of checks for sendStatus = SENT
which will never trigger when distributing manually causing
some confusion.
Checkboxes were previously styled super wonky due to
the usage of checkboxClassName which styled the checkbox
trigger.
This change reverts all that and leaves it with sensible defaults
across dark and light mode.
Passes the timezone of the user uploading the document/template via the
UI to the server.
If the user uploads a document/template via the API and doesn't set a
timezone, it defaults to `Etc/UTC`.