Compare commits

...

3 Commits

Author SHA1 Message Date
a75e71700f fix: cleanup 2025-11-18 13:12:09 +11:00
d121392f74 fix: envelope template recipient placeholders 2025-11-18 13:08:44 +11:00
6aa56fe7e0 chore: add translations (#2182) 2025-11-17 15:48:02 +11:00
6 changed files with 25966 additions and 1554 deletions

View File

@ -44,7 +44,7 @@ export default function EnvelopeEditorHeader() {
<nav className="bg-background border-border w-full border-b px-4 py-3 md:px-6">
<div className="flex items-center justify-between">
<div className="flex items-center space-x-4">
<Link to="/">
<Link to={relativePath.basePath}>
<BrandingLogo className="h-6 w-auto" />
</Link>
<Separator orientation="vertical" className="h-6" />

View File

@ -22,12 +22,14 @@ import { useDebouncedValue } from '@documenso/lib/client-only/hooks/use-debounce
import { useCurrentEnvelopeEditor } from '@documenso/lib/client-only/providers/envelope-editor-provider';
import { useCurrentOrganisation } from '@documenso/lib/client-only/providers/organisation';
import { useSession } from '@documenso/lib/client-only/providers/session';
import { isTemplateRecipientEmailPlaceholder } from '@documenso/lib/constants/template';
import {
ZRecipientActionAuthTypesSchema,
ZRecipientAuthOptionsSchema,
} from '@documenso/lib/types/document-auth';
import { nanoid } from '@documenso/lib/universal/id';
import { canRecipientBeModified as utilCanRecipientBeModified } from '@documenso/lib/utils/recipients';
import { generateRecipientPlaceholder } from '@documenso/lib/utils/templates';
import { trpc } from '@documenso/trpc/react';
import { AnimateGenericFadeInOut } from '@documenso/ui/components/animate/animate-generic-fade-in-out';
import { RecipientActionAuthSelect } from '@documenso/ui/components/recipient/recipient-action-auth-select';
@ -82,7 +84,8 @@ const ZEnvelopeRecipientsForm = z.object({
type TEnvelopeRecipientsForm = z.infer<typeof ZEnvelopeRecipientsForm>;
export const EnvelopeEditorRecipientForm = () => {
const { envelope, setRecipientsDebounced, updateEnvelope } = useCurrentEnvelopeEditor();
const { envelope, setRecipientsDebounced, updateEnvelope, isTemplate } =
useCurrentEnvelopeEditor();
const organisation = useCurrentOrganisation();
@ -119,6 +122,7 @@ export const EnvelopeEditorRecipientForm = () => {
role: RecipientRole.SIGNER,
signingOrder: 1,
actionAuth: [],
...(isTemplate ? generateRecipientPlaceholder(1) : {}),
},
];
@ -234,6 +238,8 @@ export const EnvelopeEditorRecipientForm = () => {
};
const onAddSigner = () => {
const placeholderRecipientCount = signers.length > 1 ? signers.length + 1 : 2;
appendSigner({
formId: nanoid(12),
name: '',
@ -241,7 +247,10 @@ export const EnvelopeEditorRecipientForm = () => {
role: RecipientRole.SIGNER,
actionAuth: [],
signingOrder: signers.length > 0 ? (signers[signers.length - 1]?.signingOrder ?? 0) + 1 : 1,
...(isTemplate ? generateRecipientPlaceholder(placeholderRecipientCount) : {}),
});
void form.trigger('signers');
};
const onRemoveSigner = (index: number) => {
@ -806,7 +815,7 @@ export const EnvelopeEditorRecipientForm = () => {
})}
>
{!showAdvancedSettings && index === 0 && (
<FormLabel required>
<FormLabel required={!isTemplate}>
<Trans>Email</Trans>
</FormLabel>
)}
@ -815,7 +824,12 @@ export const EnvelopeEditorRecipientForm = () => {
<RecipientAutoCompleteInput
type="email"
placeholder={t`Email`}
value={field.value}
value={
isTemplate &&
isTemplateRecipientEmailPlaceholder(field.value)
? ''
: field.value
}
disabled={
snapshot.isDragging ||
isSubmitting ||

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: pl\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-11-12 06:14\n"
"PO-Revision-Date: 2025-11-17 02:33\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
@ -8943,13 +8943,13 @@ msgstr "Tytuł nie może być pusty"
#. placeholder {2}: recipient.email
#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx
msgid "To {0} this {1}, you need to be logged in as <0>{2}</0>"
msgstr ""
msgstr "Aby {0} ten {1}, musisz być zalogowany jako <0>{2}</0>"
#. placeholder {0}: actionVerb.toLowerCase()
#. placeholder {1}: actionTarget.toLowerCase()
#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx
msgid "To {0} this {1}, you need to be logged in."
msgstr ""
msgstr "Aby {0} ten {1}, musisz być zalogowany."
#: apps/remix/app/routes/_unauthenticated+/organisation.invite.$token.tsx
msgid "To accept this invitation you must create an account."
@ -10532,7 +10532,7 @@ msgstr "Nie możesz przesyłać zaszyfrowanych plików PDF"
#: apps/remix/app/components/general/envelope/envelope-upload-button.tsx
#: apps/remix/app/components/general/envelope/envelope-drop-zone-wrapper.tsx
msgid "You cannot upload more than {maximumEnvelopeItemCount} items per envelope."
msgstr ""
msgstr "Nie możesz przesłać więcej niż {maximumEnvelopeItemCount} elementów na kopertę."
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.billing.tsx
msgid "You currently have an inactive <0>{currentProductName}</0> subscription"

File diff suppressed because it is too large Load Diff