From 5ce2bae39d48c77a4b354749984cd885791e2cfb Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 14:43:35 +1100 Subject: [PATCH 01/61] fix: resolve internal pdf translations --- .../_internal+/[__htmltopdf]+/audit-log.tsx | 16 +++++++++------- .../_internal+/[__htmltopdf]+/certificate.tsx | 15 +++++++++------ packages/lib/utils/i18n.ts | 8 +++++++- 3 files changed, 25 insertions(+), 14 deletions(-) diff --git a/apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx b/apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx index 6bd1d1161..2dd5fbe5e 100644 --- a/apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +++ b/apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx @@ -9,7 +9,7 @@ import { RECIPIENT_ROLES_DESCRIPTION } from '@documenso/lib/constants/recipient- import { getEntireDocument } from '@documenso/lib/server-only/admin/get-entire-document'; import { decryptSecondaryData } from '@documenso/lib/server-only/crypto/decrypt'; import { findDocumentAuditLogs } from '@documenso/lib/server-only/document/find-document-audit-logs'; -import { dynamicActivate } from '@documenso/lib/utils/i18n'; +import { getTranslations } from '@documenso/lib/utils/i18n'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { BrandingLogo } from '~/components/general/branding-logo'; @@ -49,10 +49,13 @@ export async function loader({ request }: Route.LoaderArgs) { perPage: 100_000, }); + const messages = await getTranslations(documentLanguage); + return { auditLogs, document, documentLanguage, + messages, }; } @@ -61,16 +64,15 @@ export async function loader({ request }: Route.LoaderArgs) { * * Cannot use dynamicActivate by itself to translate this specific page and all * children components because `not-found.tsx` page runs and overrides the i18n. + * + * Update: Maybe tags work now after RR7 migration. */ export default function AuditLog({ loaderData }: Route.ComponentProps) { - const { auditLogs, document, documentLanguage } = loaderData; + const { auditLogs, document, documentLanguage, messages } = loaderData; - const { i18n } = useLingui(); + const { i18n, _ } = useLingui(); - // Todo - void dynamicActivate(documentLanguage); - - const { _ } = useLingui(); + i18n.loadAndActivate({ locale: documentLanguage, messages }); return (
diff --git a/apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx b/apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx index 4b21b6f35..bbfb8b9cd 100644 --- a/apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +++ b/apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx @@ -16,6 +16,7 @@ import { decryptSecondaryData } from '@documenso/lib/server-only/crypto/decrypt' import { getDocumentCertificateAuditLogs } from '@documenso/lib/server-only/document/get-document-certificate-audit-logs'; import { DOCUMENT_AUDIT_LOG_TYPE } from '@documenso/lib/types/document-audit-logs'; import { extractDocumentAuthMethods } from '@documenso/lib/utils/document-auth'; +import { getTranslations } from '@documenso/lib/utils/i18n'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { Table, @@ -64,10 +65,13 @@ export async function loader({ request }: Route.LoaderArgs) { id: documentId, }); + const messages = await getTranslations(documentLanguage); + return { document, documentLanguage, auditLogs, + messages, }; } @@ -77,16 +81,15 @@ export async function loader({ request }: Route.LoaderArgs) { * * Cannot use dynamicActivate by itself to translate this specific page and all * children components because `not-found.tsx` page runs and overrides the i18n. + * + * Update: Maybe tags work now after RR7 migration. */ export default function SigningCertificate({ loaderData }: Route.ComponentProps) { - const { document, documentLanguage, auditLogs } = loaderData; + const { document, documentLanguage, auditLogs, messages } = loaderData; - const { i18n } = useLingui(); + const { i18n, _ } = useLingui(); - const { _ } = useLingui(); - - // Todo - // dynamicActivate(i18n, documentLanguage); + i18n.loadAndActivate({ locale: documentLanguage, messages }); const isOwner = (email: string) => { return email.toLowerCase() === document.user.email.toLowerCase(); diff --git a/packages/lib/utils/i18n.ts b/packages/lib/utils/i18n.ts index 4ed4685a5..b2dd7e4f6 100644 --- a/packages/lib/utils/i18n.ts +++ b/packages/lib/utils/i18n.ts @@ -5,11 +5,17 @@ import type { I18nLocaleData, SupportedLanguageCodes } from '../constants/i18n'; import { APP_I18N_OPTIONS } from '../constants/i18n'; import { env } from './env'; -export async function dynamicActivate(locale: string) { +export async function getTranslations(locale: string) { const extension = env('NODE_ENV') === 'development' ? 'po' : 'mjs'; const { messages } = await import(`../translations/${locale}/web.${extension}`); + return messages; +} + +export async function dynamicActivate(locale: string) { + const messages = await getTranslations(locale); + i18n.loadAndActivate({ locale, messages }); } From a319ea0f5e6efd7f405baa7892a1913626274717 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 16:07:04 +1100 Subject: [PATCH 02/61] fix: add public profiles tests --- .../settings+/public-profile+/index.tsx | 5 +- apps/remix/app/routes/_profile+/_layout.tsx | 8 +- apps/remix/app/routes/_profile+/p.$url.tsx | 1 - apps/remix/app/routes/_recipient+/_layout.tsx | 2 +- .../share.$slug.opengraph.tsx | 2 +- .../routes/_unauthenticated+/share.$slug.tsx | 2 +- apps/remix/app/routes/api+/share.ts | 2 +- apps/remix/app/routes/api+/stripe.webhook.ts | 2 +- apps/remix/app/routes/api+/webhook.trigger.ts | 2 +- apps/remix/app/routes/embed+/_layout.tsx | 2 +- apps/remix/server/api/files.ts | 4 +- apps/remix/server/router.ts | 4 +- apps/remix/server/trpc/hono-trpc-open-api.ts | 4 +- packages/api/hono.ts | 4 +- packages/api/v1/middleware/authenticated.ts | 2 +- .../public-profiles/public-profiles.spec.ts | 144 ++++++++++++++++++ .../server/lib/session/session-cookies.ts | 4 +- packages/auth/server/lib/utils/get-session.ts | 2 +- .../lib/utils/handle-oauth-callback-url.ts | 4 +- packages/auth/server/routes/email-password.ts | 2 +- .../ee/server-only/stripe/webhook/handler.ts | 2 +- .../lib/client-only/providers/session.tsx | 4 +- packages/lib/jobs/client/inngest.ts | 2 +- packages/lib/server-only/user/create-user.ts | 10 +- packages/prisma/schema.prisma | 6 +- packages/ui/primitives/lazy-pdf-viewer.tsx | 2 +- 26 files changed, 187 insertions(+), 41 deletions(-) create mode 100644 packages/app-tests/e2e/public-profiles/public-profiles.spec.ts diff --git a/apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx b/apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx index e022daf06..8123cc8d5 100644 --- a/apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx +++ b/apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx @@ -60,7 +60,7 @@ export default function PublicProfilePage({ loaderData }: Route.ComponentProps) const { _ } = useLingui(); const { toast } = useToast(); - const { user } = useSession(); + const { user, refreshSession } = useSession(); const team = useOptionalCurrentTeam(); const [isPublicProfileVisible, setIsPublicProfileVisible] = useState(profile.enabled); @@ -96,6 +96,9 @@ export default function PublicProfilePage({ loaderData }: Route.ComponentProps) }); } else { await updateUserProfile(data); + + // Need to refresh session because we're editing the user's profile. + await refreshSession(); } if (data.enabled === undefined && !isPublicProfileVisible) { diff --git a/apps/remix/app/routes/_profile+/_layout.tsx b/apps/remix/app/routes/_profile+/_layout.tsx index 404d260d5..bc0cc871a 100644 --- a/apps/remix/app/routes/_profile+/_layout.tsx +++ b/apps/remix/app/routes/_profile+/_layout.tsx @@ -7,7 +7,7 @@ import { ChevronLeft } from 'lucide-react'; import { Link, Outlet } from 'react-router'; import LogoIcon from '@documenso/assets/logo_icon.png'; -import { useSession } from '@documenso/lib/client-only/providers/session'; +import { useOptionalSession } from '@documenso/lib/client-only/providers/session'; import { cn } from '@documenso/ui/lib/utils'; import { Button } from '@documenso/ui/primitives/button'; @@ -21,7 +21,7 @@ export function meta() { } export default function PublicProfileLayout() { - const session = useSession(); + const { sessionData } = useOptionalSession(); const [scrollY, setScrollY] = useState(0); @@ -37,8 +37,8 @@ export default function PublicProfileLayout() { return (
- {session ? ( - + {sessionData ? ( + ) : (
null); - // Todo: Test if (!publicProfile || !publicProfile.profile.enabled) { throw new Response('Not Found', { status: 404 }); } diff --git a/apps/remix/app/routes/_recipient+/_layout.tsx b/apps/remix/app/routes/_recipient+/_layout.tsx index cd6736e33..24228b029 100644 --- a/apps/remix/app/routes/_recipient+/_layout.tsx +++ b/apps/remix/app/routes/_recipient+/_layout.tsx @@ -29,7 +29,7 @@ export default function RecipientLayout() { ); } -// Todo: Use generic error boundary. +// Todo: (RR7) Use generic error boundary. export function ErrorBoundary() { return (
diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx index 9afd8fa73..5c3f26af4 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx @@ -1,4 +1,4 @@ -// Todo: Test, used AI to migrate this component from NextJS to Remix. +// Todo: (RR7) Test, used AI to migrate this component from NextJS to Remix. import satori from 'satori'; import sharp from 'sharp'; import { P, match } from 'ts-pattern'; diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx index 3126e9995..3aa8ab8e8 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx @@ -4,7 +4,7 @@ import { NEXT_PUBLIC_MARKETING_URL, NEXT_PUBLIC_WEBAPP_URL } from '@documenso/li import type { Route } from './+types/share.$slug'; -// Todo: Test meta. +// Todo: (RR7) Test meta. export function meta({ params: { slug } }: Route.MetaArgs) { return [ { title: 'Documenso - Share' }, diff --git a/apps/remix/app/routes/api+/share.ts b/apps/remix/app/routes/api+/share.ts index fa768526e..4db264848 100644 --- a/apps/remix/app/routes/api+/share.ts +++ b/apps/remix/app/routes/api+/share.ts @@ -6,7 +6,7 @@ export type ShareHandlerAPIResponse = | Awaited> | { error: string }; -// Todo: Test +// Todo: (RR7) Test export async function loader({ request }: Route.LoaderArgs) { try { const url = new URL(request.url); diff --git a/apps/remix/app/routes/api+/stripe.webhook.ts b/apps/remix/app/routes/api+/stripe.webhook.ts index de42f7e6e..33343ae53 100644 --- a/apps/remix/app/routes/api+/stripe.webhook.ts +++ b/apps/remix/app/routes/api+/stripe.webhook.ts @@ -1,6 +1,6 @@ import { stripeWebhookHandler } from '@documenso/ee/server-only/stripe/webhook/handler'; -// Todo +// Todo: (RR7) // export const config = { // api: { bodyParser: false }, // }; diff --git a/apps/remix/app/routes/api+/webhook.trigger.ts b/apps/remix/app/routes/api+/webhook.trigger.ts index f5c3ceadd..c51f65331 100644 --- a/apps/remix/app/routes/api+/webhook.trigger.ts +++ b/apps/remix/app/routes/api+/webhook.trigger.ts @@ -2,7 +2,7 @@ import { handlerTriggerWebhooks } from '@documenso/lib/server-only/webhooks/trig import type { Route } from './+types/webhook.trigger'; -// Todo +// Todo: (RR7) // export const config = { // maxDuration: 300, // api: { diff --git a/apps/remix/app/routes/embed+/_layout.tsx b/apps/remix/app/routes/embed+/_layout.tsx index f415d3062..12a3d4868 100644 --- a/apps/remix/app/routes/embed+/_layout.tsx +++ b/apps/remix/app/routes/embed+/_layout.tsx @@ -6,7 +6,7 @@ import { EmbedPaywall } from '~/components/embed/embed-paywall'; import type { Route } from './+types/_layout'; -// Todo: Test +// Todo: (RR7) Test export function headers({ loaderHeaders }: Route.HeadersArgs) { const origin = loaderHeaders.get('Origin') ?? '*'; diff --git a/apps/remix/server/api/files.ts b/apps/remix/server/api/files.ts index 86a7c68d8..c8af41546 100644 --- a/apps/remix/server/api/files.ts +++ b/apps/remix/server/api/files.ts @@ -33,7 +33,7 @@ export const filesRoute = new Hono() return c.json({ error: 'No file provided' }, 400); } - // Todo: This is new. + // Todo: (RR7) This is new. // Add file size validation. // Convert MB to bytes (1 MB = 1024 * 1024 bytes) const MAX_FILE_SIZE = APP_DOCUMENT_UPLOAD_SIZE_LIMIT * 1024 * 1024; @@ -54,7 +54,7 @@ export const filesRoute = new Hono() throw new AppError('INVALID_DOCUMENT_FILE'); } - // Todo: Test this. + // Todo: (RR7) Test this. if (!file.name.endsWith('.pdf')) { Object.defineProperty(file, 'name', { writable: true, diff --git a/apps/remix/server/router.ts b/apps/remix/server/router.ts index 45b1f9c44..abb1e9fc8 100644 --- a/apps/remix/server/router.ts +++ b/apps/remix/server/router.ts @@ -37,13 +37,13 @@ app.route('/api/auth', auth); // Files route. app.route('/api/files', filesRoute); -// API servers. Todo: Configure max durations, etc? +// API servers. Todo: (RR7) Configure max durations, etc? app.route('/api/v1', tsRestHonoApp); app.use('/api/jobs/*', jobsClient.getApiHandler()); app.use('/api/trpc/*', reactRouterTrpcServer); // Unstable API server routes. Order matters for these two. app.get(`${API_V2_BETA_URL}/openapi.json`, (c) => c.json(openApiDocument)); -app.use(`${API_V2_BETA_URL}/*`, async (c) => openApiTrpcServerHandler(c)); // Todo: Add next()? +app.use(`${API_V2_BETA_URL}/*`, async (c) => openApiTrpcServerHandler(c)); // Todo: (RR7) Add next()? export default app; diff --git a/apps/remix/server/trpc/hono-trpc-open-api.ts b/apps/remix/server/trpc/hono-trpc-open-api.ts index 95cd4c1c8..bc5348ad6 100644 --- a/apps/remix/server/trpc/hono-trpc-open-api.ts +++ b/apps/remix/server/trpc/hono-trpc-open-api.ts @@ -11,8 +11,8 @@ export const openApiTrpcServerHandler = async (c: Context) => { return createOpenApiFetchHandler({ endpoint: API_V2_BETA_URL, router: appRouter, - // Todo: Test this, since it's not using the createContext params. - // Todo: Reduce calls since we fetch on most request? maybe + // Todo: (RR7) Test this, since it's not using the createContext params. + // Todo: (RR7) Reduce calls since we fetch on most request? maybe createContext: async () => createTrpcContext({ c, requestSource: 'apiV2' }), req: c.req.raw, onError: (opts) => handleTrpcRouterError(opts, 'apiV2'), diff --git a/packages/api/hono.ts b/packages/api/hono.ts index bc4de971a..bd7aedee8 100644 --- a/packages/api/hono.ts +++ b/packages/api/hono.ts @@ -18,8 +18,8 @@ tsRestHonoApp .get('/openapi.json', (c) => c.json(OpenAPIV1)) .get('/me', async (c) => testCredentialsHandler(c.req.raw)); -// Zapier. Todo: Check methods. Are these get/post/update requests? -// Todo: Is there really no validations? +// Zapier. Todo: (RR7) Check methods. Are these get/post/update requests? +// Todo: (RR7) Is there really no validations? tsRestHonoApp .all('/zapier/list-documents', async (c) => listDocumentsHandler(c.req.raw)) .all('/zapier/subscribe', async (c) => subscribeHandler(c.req.raw)) diff --git a/packages/api/v1/middleware/authenticated.ts b/packages/api/v1/middleware/authenticated.ts index a09e946df..ba7fb85a5 100644 --- a/packages/api/v1/middleware/authenticated.ts +++ b/packages/api/v1/middleware/authenticated.ts @@ -52,7 +52,7 @@ export const authenticatedMiddleware = < } const metadata: ApiRequestMetadata = { - requestMetadata: extractRequestMetadata(request), // Todo: Test + requestMetadata: extractRequestMetadata(request), // Todo: (RR7) Test source: 'apiV1', auth: 'api', auditUser: { diff --git a/packages/app-tests/e2e/public-profiles/public-profiles.spec.ts b/packages/app-tests/e2e/public-profiles/public-profiles.spec.ts new file mode 100644 index 000000000..016a0a199 --- /dev/null +++ b/packages/app-tests/e2e/public-profiles/public-profiles.spec.ts @@ -0,0 +1,144 @@ +import { expect, test } from '@playwright/test'; + +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; +import { seedTeam } from '@documenso/prisma/seed/teams'; +import { seedDirectTemplate } from '@documenso/prisma/seed/templates'; +import { seedUser } from '@documenso/prisma/seed/users'; + +import { apiSignin } from '../fixtures/authentication'; + +test.describe.configure({ mode: 'parallel' }); + +test('[PUBLIC_PROFILE]: create profile', async ({ page }) => { + const user = await seedUser(); + + // Create direct template. + const directTemplate = await seedDirectTemplate({ + userId: user.id, + }); + + await apiSignin({ + page, + email: user.email, + redirectPath: '/settings/public-profile', + }); + + const publicProfileUrl = Date.now().toString(); + const publicProfileBio = `public-profile-bio`; + + await page.getByRole('textbox', { name: 'Public profile URL' }).click(); + await page.getByRole('textbox', { name: 'Public profile URL' }).fill(publicProfileUrl); + + await page.getByRole('textbox', { name: 'Bio' }).click(); + await page.getByRole('textbox', { name: 'Bio' }).fill(publicProfileBio); + + await page.getByRole('button', { name: 'Update' }).click(); + + await expect(page.getByRole('status').first()).toContainText( + 'Your public profile has been updated.', + ); + + // Link direct template to public profile. + await page.getByRole('button', { name: 'Link template' }).click(); + await page.getByRole('cell', { name: directTemplate.title }).click(); + await page.getByRole('button', { name: 'Continue' }).click(); + + await page.getByRole('textbox', { name: 'Title *' }).fill('public-direct-template-title'); + await page + .getByRole('textbox', { name: 'Description *' }) + .fill('public-direct-template-description'); + await page.getByRole('button', { name: 'Update' }).click(); + + // Check that public profile is disabled. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/p/${publicProfileUrl}`); + await expect(page.locator('body')).toContainText('404 Profile not found'); + + // Go back to public profile page. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/settings/public-profile`); + await page.getByRole('switch').click(); + + // Assert values. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/p/${publicProfileUrl}`); + await expect(page.getByRole('main')).toContainText(publicProfileBio); + await expect(page.locator('body')).toContainText('public-direct-template-title'); + await expect(page.locator('body')).toContainText('public-direct-template-description'); + + await page.getByRole('link', { name: 'Sign' }).click(); + await page.getByRole('button', { name: 'Continue' }).click(); + await page.getByRole('button', { name: 'Complete' }).click(); + await page.getByRole('button', { name: 'Sign' }).click(); + + await expect(page.getByRole('heading', { name: 'Document Signed' })).toBeVisible(); + await expect(page.getByRole('heading')).toContainText('Document Signed'); +}); + +test('[PUBLIC_PROFILE]: create team profile', async ({ page }) => { + const team = await seedTeam({ + createTeamMembers: 1, + }); + + const user = team.owner; + + // Create direct template. + const directTemplate = await seedDirectTemplate({ + userId: user.id, + teamId: team.id, + }); + + // Create non team template to make sure you can only see the team one. + // Will be indirectly asserted because test should fail when 2 elements appear. + await seedDirectTemplate({ + userId: user.id, + }); + + await apiSignin({ + page, + email: user.email, + redirectPath: `/t/${team.url}/settings/public-profile`, + }); + + const publicProfileUrl = team.url; + const publicProfileBio = `public-profile-bio`; + + await page.getByRole('textbox', { name: 'Bio' }).click(); + await page.getByRole('textbox', { name: 'Bio' }).fill(publicProfileBio); + + await page.getByRole('button', { name: 'Update' }).click(); + + await expect(page.getByRole('status').first()).toContainText( + 'Your public profile has been updated.', + ); + + // Link direct template to public profile. + await page.getByRole('button', { name: 'Link template' }).click(); + await page.getByRole('cell', { name: directTemplate.title }).click(); + await page.getByRole('button', { name: 'Continue' }).click(); + + await page.getByRole('textbox', { name: 'Title *' }).fill('public-direct-template-title'); + await page + .getByRole('textbox', { name: 'Description *' }) + .fill('public-direct-template-description'); + await page.getByRole('button', { name: 'Update' }).click(); + + // Check that public profile is disabled. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/p/${publicProfileUrl}`); + await expect(page.locator('body')).toContainText('404 Profile not found'); + + // Go back to public profile page. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/settings/public-profile`); + await page.getByRole('switch').click(); + + // Assert values. + await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/p/${publicProfileUrl}`); + await expect(page.getByRole('main')).toContainText(publicProfileBio); + await expect(page.locator('body')).toContainText('public-direct-template-title'); + await expect(page.locator('body')).toContainText('public-direct-template-description'); + + await page.getByRole('link', { name: 'Sign' }).click(); + await page.getByRole('button', { name: 'Continue' }).click(); + await page.getByRole('button', { name: 'Complete' }).click(); + await page.getByRole('button', { name: 'Sign' }).click(); + + await expect(page.getByRole('heading', { name: 'Document Signed' })).toBeVisible(); + await expect(page.getByRole('heading')).toContainText('Document Signed'); +}); diff --git a/packages/auth/server/lib/session/session-cookies.ts b/packages/auth/server/lib/session/session-cookies.ts index 0905a0bb4..a68f67c99 100644 --- a/packages/auth/server/lib/session/session-cookies.ts +++ b/packages/auth/server/lib/session/session-cookies.ts @@ -30,10 +30,10 @@ const getAuthSecret = () => { export const sessionCookieOptions = { httpOnly: true, path: '/', - sameSite: useSecureCookies ? 'none' : 'lax', // Todo: This feels wrong? + sameSite: useSecureCookies ? 'none' : 'lax', // Todo: (RR7) This feels wrong? secure: useSecureCookies, domain: getCookieDomain(), - // Todo: Max age for specific auth cookies. + // Todo: (RR7) Max age for specific auth cookies. } as const; export const extractSessionCookieFromHeaders = (headers: Headers): string | null => { diff --git a/packages/auth/server/lib/utils/get-session.ts b/packages/auth/server/lib/utils/get-session.ts index 1d46f1819..66ff5ab99 100644 --- a/packages/auth/server/lib/utils/get-session.ts +++ b/packages/auth/server/lib/utils/get-session.ts @@ -38,7 +38,7 @@ export const getOptionalSession = async ( }; /** - * Todo: Rethink, this is pretty sketchy. + * Todo: (RR7) Rethink, this is pretty sketchy. */ const mapRequestToContextForCookie = (c: Context | Request) => { if (c instanceof Request) { diff --git a/packages/auth/server/lib/utils/handle-oauth-callback-url.ts b/packages/auth/server/lib/utils/handle-oauth-callback-url.ts index 30f1dd929..534b7e3a0 100644 --- a/packages/auth/server/lib/utils/handle-oauth-callback-url.ts +++ b/packages/auth/server/lib/utils/handle-oauth-callback-url.ts @@ -144,7 +144,7 @@ export const handleOAuthCallbackUrl = async (options: HandleOAuthCallbackUrlOpti }, data: { emailVerified: new Date(), - password: null, // Todo: Check this + password: null, // Todo: (RR7) Check this }, }); } @@ -182,7 +182,7 @@ export const handleOAuthCallbackUrl = async (options: HandleOAuthCallbackUrlOpti }); await onCreateUserHook(createdUser).catch((err) => { - // Todo: Add logging. + // Todo: (RR7) Add logging. console.error(err); }); diff --git a/packages/auth/server/routes/email-password.ts b/packages/auth/server/routes/email-password.ts index 058f78ed6..674cc8bbc 100644 --- a/packages/auth/server/routes/email-password.ts +++ b/packages/auth/server/routes/email-password.ts @@ -50,7 +50,7 @@ export const emailPasswordRoute = new Hono() const csrfCookieToken = await getCsrfCookie(c); - // Todo: Add logging here. + // Todo: (RR7) Add logging here. if (csrfToken !== csrfCookieToken || !csrfCookieToken) { throw new AppError(AuthenticationErrorCode.InvalidRequest, { message: 'Invalid CSRF token', diff --git a/packages/ee/server-only/stripe/webhook/handler.ts b/packages/ee/server-only/stripe/webhook/handler.ts index 4a1a84379..32f0c8516 100644 --- a/packages/ee/server-only/stripe/webhook/handler.ts +++ b/packages/ee/server-only/stripe/webhook/handler.ts @@ -51,7 +51,7 @@ export const stripeWebhookHandler = async (req: Request) => { ); } - // Todo: I'm not sure about this. + // Todo: (RR7) I'm not sure about this. const clonedReq = req.clone(); const rawBody = await clonedReq.arrayBuffer(); const body = Buffer.from(rawBody); diff --git a/packages/lib/client-only/providers/session.tsx b/packages/lib/client-only/providers/session.tsx index 0ad112321..b9ad7862c 100644 --- a/packages/lib/client-only/providers/session.tsx +++ b/packages/lib/client-only/providers/session.tsx @@ -40,7 +40,7 @@ export const useSession = () => { return { ...context.sessionData, - refresh: context.refresh, + refreshSession: context.refresh, }; }; @@ -68,7 +68,7 @@ export const SessionProvider = ({ children, initialSession }: SessionProviderPro } const teams = await trpc.team.getTeams.query().catch(() => { - // Todo: Log + // Todo: (RR7) Log return []; }); diff --git a/packages/lib/jobs/client/inngest.ts b/packages/lib/jobs/client/inngest.ts index ce91cb56a..0da2ed374 100644 --- a/packages/lib/jobs/client/inngest.ts +++ b/packages/lib/jobs/client/inngest.ts @@ -92,7 +92,7 @@ export class InngestJobProvider extends BaseJobProvider { // }; // } - // Todo: Do we need to handle the above? + // Todo: (RR7) Do we need to handle the above? public getApiHandler() { return async (context: HonoContext) => { const handler = createHonoPagesRoute({ diff --git a/packages/lib/server-only/user/create-user.ts b/packages/lib/server-only/user/create-user.ts index fd20be7a8..1b8a15a60 100644 --- a/packages/lib/server-only/user/create-user.ts +++ b/packages/lib/server-only/user/create-user.ts @@ -52,18 +52,18 @@ export const createUser = async ({ name, email, password, signature, url }: Crea data: { name, email: email.toLowerCase(), - password: hashedPassword, // Todo: Drop password. + password: hashedPassword, // Todo: (RR7) Drop password. signature, url, }, }); - // Todo: Migrate to use this after RR7. + // Todo: (RR7) Migrate to use this after RR7. // await tx.account.create({ // data: { // userId: user.id, - // type: 'emailPassword', // Todo - // provider: 'DOCUMENSO', // Todo: Enums + // type: 'emailPassword', // Todo: (RR7) + // provider: 'DOCUMENSO', // Todo: (RR7) Enums // providerAccountId: user.id.toString(), // password: hashedPassword, // }, @@ -73,7 +73,7 @@ export const createUser = async ({ name, email, password, signature, url }: Crea }); await onCreateUserHook(user).catch((err) => { - // Todo: Add logging. + // Todo: (RR7) Add logging. console.error(err); }); diff --git a/packages/prisma/schema.prisma b/packages/prisma/schema.prisma index 4c012346a..ce7e4ed8f 100644 --- a/packages/prisma/schema.prisma +++ b/packages/prisma/schema.prisma @@ -23,7 +23,7 @@ datasource db { directUrl = env("NEXT_PRIVATE_DIRECT_DATABASE_URL") } -// Todo: Remove after RR7 migration. +// Todo: (RR7) Remove after RR7 migration. enum IdentityProvider { DOCUMENSO GOOGLE @@ -41,14 +41,14 @@ model User { customerId String? @unique email String @unique emailVerified DateTime? - password String? // Todo: Remove after RR7 migration. + password String? // Todo: (RR7) Remove after RR7 migration. source String? signature String? createdAt DateTime @default(now()) updatedAt DateTime @default(now()) @updatedAt lastSignedIn DateTime @default(now()) roles Role[] @default([USER]) - identityProvider IdentityProvider @default(DOCUMENSO) // Todo: Remove after RR7 migration. + identityProvider IdentityProvider @default(DOCUMENSO) // Todo: (RR7) Remove after RR7 migration. avatarImageId String? disabled Boolean @default(false) diff --git a/packages/ui/primitives/lazy-pdf-viewer.tsx b/packages/ui/primitives/lazy-pdf-viewer.tsx index 6aff4191a..74ee72110 100644 --- a/packages/ui/primitives/lazy-pdf-viewer.tsx +++ b/packages/ui/primitives/lazy-pdf-viewer.tsx @@ -1,4 +1,4 @@ -// Todo: Not sure if this actually makes it client-only. +// Todo: (RR7) Not sure if this actually makes it client-only. import { Suspense, lazy } from 'react'; import { Trans } from '@lingui/react/macro'; From 24f3ecd94f653797ebe24f435aecbab8d76ecc63 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 16:45:54 +1100 Subject: [PATCH 03/61] fix: remove marketing url --- .env.example | 1 - .gitpod.yml | 1 - README.md | 2 - .../developers/local-development/manual.mdx | 1 - .../pages/developers/self-hosting/how-to.mdx | 1 - apps/remix/app/routes/_recipient+/_layout.tsx | 40 ++++++------------- .../routes/_unauthenticated+/share.$slug.tsx | 11 ++--- docker/production/compose.yml | 1 - packages/lib/constants/app.ts | 3 -- packages/tsconfig/process-env.d.ts | 1 - render.yaml | 2 - turbo.json | 1 - 12 files changed, 18 insertions(+), 47 deletions(-) diff --git a/.env.example b/.env.example index 41145424c..15b0b3f5c 100644 --- a/.env.example +++ b/.env.example @@ -22,7 +22,6 @@ NEXT_PRIVATE_OIDC_SKIP_VERIFY="" # [[URLS]] NEXT_PUBLIC_WEBAPP_URL="http://localhost:3000" -NEXT_PUBLIC_MARKETING_URL="http://localhost:3001" # URL used by the web app to request itself (e.g. local background jobs) NEXT_PRIVATE_INTERNAL_WEBAPP_URL="http://localhost:3000" diff --git a/.gitpod.yml b/.gitpod.yml index 6976c2239..261f8c96b 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -5,7 +5,6 @@ tasks: cp .env.example .env && set -a; source .env && export NEXT_PUBLIC_WEBAPP_URL="$(gp url 3000)" && - export NEXT_PUBLIC_MARKETING_URL="$(gp url 3001)" command: npm run d ports: diff --git a/README.md b/README.md index 3afaafeec..d7f79adda 100644 --- a/README.md +++ b/README.md @@ -166,7 +166,6 @@ git clone https://github.com//documenso - NEXTAUTH_SECRET - NEXT_PUBLIC_WEBAPP_URL - - NEXT_PUBLIC_MARKETING_URL - NEXT_PRIVATE_DATABASE_URL - NEXT_PRIVATE_DIRECT_DATABASE_URL - NEXT_PRIVATE_SMTP_FROM_NAME @@ -237,7 +236,6 @@ The following environment variables must be set: - `NEXTAUTH_SECRET` - `NEXT_PUBLIC_WEBAPP_URL` -- `NEXT_PUBLIC_MARKETING_URL` - `NEXT_PRIVATE_DATABASE_URL` - `NEXT_PRIVATE_DIRECT_DATABASE_URL` - `NEXT_PRIVATE_SMTP_FROM_NAME` diff --git a/apps/documentation/pages/developers/local-development/manual.mdx b/apps/documentation/pages/developers/local-development/manual.mdx index 9f2b5c4fc..ed98338cf 100644 --- a/apps/documentation/pages/developers/local-development/manual.mdx +++ b/apps/documentation/pages/developers/local-development/manual.mdx @@ -34,7 +34,6 @@ Set up the following environment variables in the `.env` file: ```bash NEXTAUTH_SECRET NEXT_PUBLIC_WEBAPP_URL -NEXT_PUBLIC_MARKETING_URL NEXT_PRIVATE_DATABASE_URL NEXT_PRIVATE_DIRECT_DATABASE_URL NEXT_PRIVATE_SMTP_FROM_NAME diff --git a/apps/documentation/pages/developers/self-hosting/how-to.mdx b/apps/documentation/pages/developers/self-hosting/how-to.mdx index f327a55a5..4025ce6d0 100644 --- a/apps/documentation/pages/developers/self-hosting/how-to.mdx +++ b/apps/documentation/pages/developers/self-hosting/how-to.mdx @@ -37,7 +37,6 @@ Open the `.env` file and fill in the following variables: ```bash - NEXTAUTH_SECRET - NEXT_PUBLIC_WEBAPP_URL -- NEXT_PUBLIC_MARKETING_URL - NEXT_PRIVATE_DATABASE_URL - NEXT_PRIVATE_DIRECT_DATABASE_URL - NEXT_PRIVATE_SMTP_FROM_NAME diff --git a/apps/remix/app/routes/_recipient+/_layout.tsx b/apps/remix/app/routes/_recipient+/_layout.tsx index 24228b029..e5677ccaf 100644 --- a/apps/remix/app/routes/_recipient+/_layout.tsx +++ b/apps/remix/app/routes/_recipient+/_layout.tsx @@ -6,6 +6,7 @@ import { useOptionalSession } from '@documenso/lib/client-only/providers/session import { Button } from '@documenso/ui/primitives/button'; import { Header as AuthenticatedHeader } from '~/components/general/app-header'; +import { GenericErrorLayout } from '~/components/general/generic-error-layout'; /** * A layout to handle scenarios where the user is a recipient of a given resource @@ -29,35 +30,18 @@ export default function RecipientLayout() { ); } -// Todo: (RR7) Use generic error boundary. export function ErrorBoundary() { return ( -
-
-

- 404 Not found -

- -

- Oops! Something went wrong. -

- -

- - The resource you are looking for may have been disabled, deleted or may have never - existed. - -

- -
- -
-
-
+ + + + Go Back + + + } + /> ); } diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx index 3aa8ab8e8..a2c73ac26 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx @@ -1,10 +1,10 @@ import { redirect } from 'react-router'; -import { NEXT_PUBLIC_MARKETING_URL, NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import type { Route } from './+types/share.$slug'; -// Todo: (RR7) Test meta. +// Todo: (RR7) Test on stg export function meta({ params: { slug } }: Route.MetaArgs) { return [ { title: 'Documenso - Share' }, @@ -23,7 +23,7 @@ export function meta({ params: { slug } }: Route.MetaArgs) { }, { property: 'og:images', - images: `${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`, + images: [`${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`], }, { name: 'twitter:site', @@ -35,7 +35,7 @@ export function meta({ params: { slug } }: Route.MetaArgs) { }, { name: 'twitter:images', - images: `${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`, + images: [`${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`], }, { name: 'twitter:description', @@ -51,5 +51,6 @@ export const loader = ({ request }: Route.LoaderArgs) => { return null; } - throw redirect(NEXT_PUBLIC_MARKETING_URL()); + // Is hardcoded because this whole meta is hardcoded anyway for Documenso. + throw redirect('https://documenso.com'); }; diff --git a/docker/production/compose.yml b/docker/production/compose.yml index a48475463..54ec19fa2 100644 --- a/docker/production/compose.yml +++ b/docker/production/compose.yml @@ -29,7 +29,6 @@ services: - NEXT_PRIVATE_GOOGLE_CLIENT_SECRET=${NEXT_PRIVATE_GOOGLE_CLIENT_SECRET} - NEXT_PUBLIC_WEBAPP_URL=${NEXT_PUBLIC_WEBAPP_URL:?err} - NEXT_PRIVATE_INTERNAL_WEBAPP_URL=${NEXT_PRIVATE_INTERNAL_WEBAPP_URL:-http://localhost:$PORT} - - NEXT_PUBLIC_MARKETING_URL=${NEXT_PUBLIC_MARKETING_URL:-https://documenso.com} - NEXT_PRIVATE_DATABASE_URL=${NEXT_PRIVATE_DATABASE_URL:?err} - NEXT_PRIVATE_DIRECT_DATABASE_URL=${NEXT_PRIVATE_DIRECT_DATABASE_URL:-${NEXT_PRIVATE_DATABASE_URL}} - NEXT_PUBLIC_UPLOAD_TRANSPORT=${NEXT_PUBLIC_UPLOAD_TRANSPORT:-database} diff --git a/packages/lib/constants/app.ts b/packages/lib/constants/app.ts index d137aea33..7dedabfcf 100644 --- a/packages/lib/constants/app.ts +++ b/packages/lib/constants/app.ts @@ -6,9 +6,6 @@ export const APP_DOCUMENT_UPLOAD_SIZE_LIMIT = export const NEXT_PUBLIC_WEBAPP_URL = () => env('NEXT_PUBLIC_WEBAPP_URL') ?? 'http://localhost:3000'; -export const NEXT_PUBLIC_MARKETING_URL = () => - env('NEXT_PUBLIC_MARKETING_URL') ?? 'http://localhost:3001'; - export const NEXT_PRIVATE_INTERNAL_WEBAPP_URL = env('NEXT_PRIVATE_INTERNAL_WEBAPP_URL') ?? NEXT_PUBLIC_WEBAPP_URL(); diff --git a/packages/tsconfig/process-env.d.ts b/packages/tsconfig/process-env.d.ts index dc00ef57b..143dbe30d 100644 --- a/packages/tsconfig/process-env.d.ts +++ b/packages/tsconfig/process-env.d.ts @@ -1,7 +1,6 @@ declare namespace NodeJS { export interface ProcessEnv { NEXT_PUBLIC_WEBAPP_URL?: string; - NEXT_PUBLIC_MARKETING_URL?: string; NEXT_PRIVATE_GOOGLE_CLIENT_ID?: string; NEXT_PRIVATE_GOOGLE_CLIENT_SECRET?: string; diff --git a/render.yaml b/render.yaml index 2954a8cfc..b5dba1401 100644 --- a/render.yaml +++ b/render.yaml @@ -41,8 +41,6 @@ services: name: documenso-app type: web envVarKey: RENDER_EXTERNAL_URL - - key: NEXT_PUBLIC_MARKETING_URL - value: 'http://localhost:3001' - key: NEXT_PRIVATE_INTERNAL_WEBAPP_URL value: 'http://localhost:10000' diff --git a/turbo.json b/turbo.json index a5adf232a..db492e33a 100644 --- a/turbo.json +++ b/turbo.json @@ -43,7 +43,6 @@ "NEXTAUTH_SECRET", "NEXT_PUBLIC_PROJECT", "NEXT_PUBLIC_WEBAPP_URL", - "NEXT_PUBLIC_MARKETING_URL", "NEXT_PRIVATE_INTERNAL_WEBAPP_URL", "NEXT_PUBLIC_POSTHOG_KEY", "NEXT_PUBLIC_FEATURE_BILLING_ENABLED", From ac306549139f0a07999d29ffa4fc2ecabc111516 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 18:04:36 +1100 Subject: [PATCH 04/61] fix: add auth session lifetime --- .../share.$slug.opengraph.tsx | 9 ++- apps/remix/app/routes/api+/share.ts | 27 -------- apps/remix/app/routes/api+/stripe.webhook.ts | 4 -- apps/remix/app/routes/api+/webhook.trigger.ts | 10 --- apps/remix/server/middleware.ts | 66 ------------------- apps/remix/server/router.ts | 17 +++-- apps/remix/server/trpc/hono-trpc-open-api.ts | 2 - packages/auth/server/config.ts | 5 ++ .../server/lib/session/session-cookies.ts | 3 +- packages/auth/server/lib/session/session.ts | 4 +- ...-recipient-or-sender-by-share-link-slug.ts | 4 +- packages/trpc/utils/trpc-error-handler.ts | 8 +-- 12 files changed, 29 insertions(+), 130 deletions(-) delete mode 100644 apps/remix/app/routes/api+/share.ts delete mode 100644 apps/remix/server/middleware.ts rename packages/lib/server-only/{share => document}/get-recipient-or-sender-by-share-link-slug.ts (94%) diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx index 5c3f26af4..2a6f7c6de 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.opengraph.tsx @@ -1,11 +1,10 @@ -// Todo: (RR7) Test, used AI to migrate this component from NextJS to Remix. import satori from 'satori'; import sharp from 'sharp'; import { P, match } from 'ts-pattern'; import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; +import { getRecipientOrSenderByShareLinkSlug } from '@documenso/lib/server-only/document/get-recipient-or-sender-by-share-link-slug'; -import type { ShareHandlerAPIResponse } from '../api+/share'; import type { Route } from './+types/share.$slug.opengraph'; export const runtime = 'edge'; @@ -37,9 +36,9 @@ export const loader = async ({ params }: Route.LoaderArgs) => { ), ]); - const recipientOrSender: ShareHandlerAPIResponse = await fetch( - new URL(`/api/share?slug=${slug}`, baseUrl), - ).then(async (res) => res.json()); + const recipientOrSender = await getRecipientOrSenderByShareLinkSlug({ + slug, + }); if ('error' in recipientOrSender) { return Response.json({ error: 'Not found' }, { status: 404 }); diff --git a/apps/remix/app/routes/api+/share.ts b/apps/remix/app/routes/api+/share.ts deleted file mode 100644 index 4db264848..000000000 --- a/apps/remix/app/routes/api+/share.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { getRecipientOrSenderByShareLinkSlug } from '@documenso/lib/server-only/share/get-recipient-or-sender-by-share-link-slug'; - -import type { Route } from './+types/share'; - -export type ShareHandlerAPIResponse = - | Awaited> - | { error: string }; - -// Todo: (RR7) Test -export async function loader({ request }: Route.LoaderArgs) { - try { - const url = new URL(request.url); - const slug = url.searchParams.get('slug'); - - if (typeof slug !== 'string') { - throw new Error('Invalid slug'); - } - - const data = await getRecipientOrSenderByShareLinkSlug({ - slug, - }); - - return Response.json(data); - } catch (error) { - return Response.json({ error: 'Not found' }, { status: 404 }); - } -} diff --git a/apps/remix/app/routes/api+/stripe.webhook.ts b/apps/remix/app/routes/api+/stripe.webhook.ts index 33343ae53..7be8bcc1b 100644 --- a/apps/remix/app/routes/api+/stripe.webhook.ts +++ b/apps/remix/app/routes/api+/stripe.webhook.ts @@ -1,9 +1,5 @@ import { stripeWebhookHandler } from '@documenso/ee/server-only/stripe/webhook/handler'; -// Todo: (RR7) -// export const config = { -// api: { bodyParser: false }, -// }; import type { Route } from './+types/webhook.trigger'; export async function action({ request }: Route.ActionArgs) { diff --git a/apps/remix/app/routes/api+/webhook.trigger.ts b/apps/remix/app/routes/api+/webhook.trigger.ts index c51f65331..582c86296 100644 --- a/apps/remix/app/routes/api+/webhook.trigger.ts +++ b/apps/remix/app/routes/api+/webhook.trigger.ts @@ -2,16 +2,6 @@ import { handlerTriggerWebhooks } from '@documenso/lib/server-only/webhooks/trig import type { Route } from './+types/webhook.trigger'; -// Todo: (RR7) -// export const config = { -// maxDuration: 300, -// api: { -// bodyParser: { -// sizeLimit: '50mb', -// }, -// }, -// }; - export async function action({ request }: Route.ActionArgs) { return handlerTriggerWebhooks(request); } diff --git a/apps/remix/server/middleware.ts b/apps/remix/server/middleware.ts deleted file mode 100644 index 0a1e5e168..000000000 --- a/apps/remix/server/middleware.ts +++ /dev/null @@ -1,66 +0,0 @@ -import type { Context, Next } from 'hono'; -import { getCookie } from 'hono/cookie'; - -import { AppDebugger } from '@documenso/lib/utils/debugger'; - -const debug = new AppDebugger('Middleware'); - -/** - * Middleware for initial page loads. - * - * You won't be able to easily handle sequential page loads because they will be - * called under `path.data` - * - * Example an initial page load would be `/documents` then if the user click templates - * the path here would be `/templates.data`. - */ -export const appMiddleware = async (c: Context, next: Next) => { - const { req } = c; - const { path } = req; - - // Basic paths to ignore. - if (path.startsWith('/api') || path.endsWith('.data') || path.startsWith('/__manifest')) { - return next(); - } - - debug.log('Path', path); - - const preferredTeamUrl = getCookie(c, 'preferred-team-url'); - - const referrer = c.req.header('referer'); - const referrerUrl = referrer ? new URL(referrer) : null; - const referrerPathname = referrerUrl ? referrerUrl.pathname : null; - - // // Whether to reset the preferred team url cookie if the user accesses a non team page from a team page. - // const resetPreferredTeamUrl = - // referrerPathname && - // referrerPathname.startsWith('/t/') && - // (!path.startsWith('/t/') || path === '/'); - - // // Redirect root page to `/documents` or `/t/{preferredTeamUrl}/documents`. - // if (path === '/') { - // debug.log('Redirecting from root to documents'); - - // const redirectUrlPath = formatDocumentsPath( - // resetPreferredTeamUrl ? undefined : preferredTeamUrl, - // ); - - // const redirectUrl = new URL(redirectUrlPath, req.url); - - // return c.redirect(redirectUrl); - // } - - // // Set the preferred team url cookie if user accesses a team page. - // if (path.startsWith('/t/')) { - // setCookie(c, 'preferred-team-url', path.split('/')[2]); - // return next(); - // } - - // // Clear preferred team url cookie if user accesses a non team page from a team page. - // if (resetPreferredTeamUrl || path === '/documents') { - // debug.log('Resetting preferred team url'); - - // deleteCookie(c, 'preferred-team-url'); - // return next(); - // } -}; diff --git a/apps/remix/server/router.ts b/apps/remix/server/router.ts index abb1e9fc8..40d6581fc 100644 --- a/apps/remix/server/router.ts +++ b/apps/remix/server/router.ts @@ -1,5 +1,7 @@ import { Hono } from 'hono'; +import { bodyLimit } from 'hono/body-limit'; import { contextStorage } from 'hono/context-storage'; +import { timeout } from 'hono/timeout'; import { tsRestHonoApp } from '@documenso/api/hono'; import { auth } from '@documenso/auth/server'; @@ -20,30 +22,31 @@ export interface HonoEnv { const app = new Hono(); +/** + * Global middleware limits. + */ +app.use(timeout(120000)); // Two minute timeout. +app.use(bodyLimit({ maxSize: 50 * 1024 * 1024 })); // 50mb size limit. + /** * Attach session and context to requests. */ app.use(contextStorage()); app.use(appContext); -/** - * Middleware for initial page loads. - */ -// app.use('*', appMiddleware); - // Auth server. app.route('/api/auth', auth); // Files route. app.route('/api/files', filesRoute); -// API servers. Todo: (RR7) Configure max durations, etc? +// API servers. app.route('/api/v1', tsRestHonoApp); app.use('/api/jobs/*', jobsClient.getApiHandler()); app.use('/api/trpc/*', reactRouterTrpcServer); // Unstable API server routes. Order matters for these two. app.get(`${API_V2_BETA_URL}/openapi.json`, (c) => c.json(openApiDocument)); -app.use(`${API_V2_BETA_URL}/*`, async (c) => openApiTrpcServerHandler(c)); // Todo: (RR7) Add next()? +app.use(`${API_V2_BETA_URL}/*`, async (c) => openApiTrpcServerHandler(c)); export default app; diff --git a/apps/remix/server/trpc/hono-trpc-open-api.ts b/apps/remix/server/trpc/hono-trpc-open-api.ts index bc5348ad6..2a89d6379 100644 --- a/apps/remix/server/trpc/hono-trpc-open-api.ts +++ b/apps/remix/server/trpc/hono-trpc-open-api.ts @@ -11,8 +11,6 @@ export const openApiTrpcServerHandler = async (c: Context) => { return createOpenApiFetchHandler({ endpoint: API_V2_BETA_URL, router: appRouter, - // Todo: (RR7) Test this, since it's not using the createContext params. - // Todo: (RR7) Reduce calls since we fetch on most request? maybe createContext: async () => createTrpcContext({ c, requestSource: 'apiV2' }), req: c.req.raw, onError: (opts) => handleTrpcRouterError(opts, 'apiV2'), diff --git a/packages/auth/server/config.ts b/packages/auth/server/config.ts index a91f91d9f..344b1b807 100644 --- a/packages/auth/server/config.ts +++ b/packages/auth/server/config.ts @@ -1,6 +1,11 @@ import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import { env } from '@documenso/lib/utils/env'; +/** + * How long a session should live for in milliseconds. + */ +export const AUTH_SESSION_LIFETIME = 1000 * 60 * 60 * 24 * 30; // 30 days. + export type OAuthClientOptions = { id: string; scope: string[]; diff --git a/packages/auth/server/lib/session/session-cookies.ts b/packages/auth/server/lib/session/session-cookies.ts index a68f67c99..6710b8ce7 100644 --- a/packages/auth/server/lib/session/session-cookies.ts +++ b/packages/auth/server/lib/session/session-cookies.ts @@ -9,6 +9,7 @@ import { import { appLog } from '@documenso/lib/utils/debugger'; import { env } from '@documenso/lib/utils/env'; +import { AUTH_SESSION_LIFETIME } from '../../config'; import { generateSessionToken } from './session'; export const sessionCookieName = formatSecureCookieName('sessionId'); @@ -33,7 +34,7 @@ export const sessionCookieOptions = { sameSite: useSecureCookies ? 'none' : 'lax', // Todo: (RR7) This feels wrong? secure: useSecureCookies, domain: getCookieDomain(), - // Todo: (RR7) Max age for specific auth cookies. + expires: new Date(Date.now() + AUTH_SESSION_LIFETIME), } as const; export const extractSessionCookieFromHeaders = (headers: Headers): string | null => { diff --git a/packages/auth/server/lib/session/session.ts b/packages/auth/server/lib/session/session.ts index ef357ce0a..35497f5cf 100644 --- a/packages/auth/server/lib/session/session.ts +++ b/packages/auth/server/lib/session/session.ts @@ -5,6 +5,8 @@ import { type Session, type User, UserSecurityAuditLogType } from '@prisma/clien import type { RequestMetadata } from '@documenso/lib/universal/extract-request-metadata'; import { prisma } from '@documenso/prisma'; +import { AUTH_SESSION_LIFETIME } from '../../config'; + /** * The user object to pass around the app. * @@ -54,7 +56,7 @@ export const createSession = async ( userId, updatedAt: new Date(), createdAt: new Date(), - expiresAt: new Date(Date.now() + 1000 * 60 * 60 * 24 * 30), + expiresAt: new Date(Date.now() + AUTH_SESSION_LIFETIME), ipAddress: metadata.ipAddress ?? null, userAgent: metadata.userAgent ?? null, }; diff --git a/packages/lib/server-only/share/get-recipient-or-sender-by-share-link-slug.ts b/packages/lib/server-only/document/get-recipient-or-sender-by-share-link-slug.ts similarity index 94% rename from packages/lib/server-only/share/get-recipient-or-sender-by-share-link-slug.ts rename to packages/lib/server-only/document/get-recipient-or-sender-by-share-link-slug.ts index 1cfabe6ab..2beaf5d1b 100644 --- a/packages/lib/server-only/share/get-recipient-or-sender-by-share-link-slug.ts +++ b/packages/lib/server-only/document/get-recipient-or-sender-by-share-link-slug.ts @@ -34,7 +34,9 @@ export const getRecipientOrSenderByShareLinkSlug = async ({ documentId, email, }, - include: { + select: { + email: true, + name: true, signatures: true, }, }); diff --git a/packages/trpc/utils/trpc-error-handler.ts b/packages/trpc/utils/trpc-error-handler.ts index 99fc1e976..cdd2ea157 100644 --- a/packages/trpc/utils/trpc-error-handler.ts +++ b/packages/trpc/utils/trpc-error-handler.ts @@ -1,7 +1,6 @@ import type { ErrorHandlerOptions } from '@trpc/server/unstable-core-do-not-import'; import { AppError, AppErrorCode } from '@documenso/lib/errors/app-error'; -import { env } from '@documenso/lib/utils/env'; import { buildLogger } from '@documenso/lib/utils/logger'; const logger = buildLogger(); @@ -11,11 +10,6 @@ export const handleTrpcRouterError = ( { error, path }: Pick, 'error' | 'path'>, source: 'trpc' | 'apiV1' | 'apiV2', ) => { - // Always log the error on production for now. - if (env('NODE_ENV') !== 'development') { - console.error(error); - } - const appError = AppError.parseError(error.cause || error); const isAppError = error.cause instanceof AppError; @@ -30,6 +24,8 @@ export const handleTrpcRouterError = ( const isLoggableTrpcError = !isAppError && errorCodesToAlertOn.includes(error.code); if (isLoggableAppError || isLoggableTrpcError) { + console.error(error); + logger.error(error, { method: path, context: { From 90ce52164c5884191b7c45c7c1f8274d0b123309 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 18:41:53 +1100 Subject: [PATCH 05/61] chore: add password tests --- apps/remix/app/components/forms/password.tsx | 2 +- packages/app-tests/e2e/user/password.spec.ts | 94 ++++++++++++++++++++ 2 files changed, 95 insertions(+), 1 deletion(-) create mode 100644 packages/app-tests/e2e/user/password.spec.ts diff --git a/apps/remix/app/components/forms/password.tsx b/apps/remix/app/components/forms/password.tsx index d397cdcaf..531645211 100644 --- a/apps/remix/app/components/forms/password.tsx +++ b/apps/remix/app/components/forms/password.tsx @@ -122,7 +122,7 @@ export const PasswordForm = ({ className }: PasswordFormProps) => { render={({ field }) => ( - Password + New Password diff --git a/packages/app-tests/e2e/user/password.spec.ts b/packages/app-tests/e2e/user/password.spec.ts new file mode 100644 index 000000000..6713a87a7 --- /dev/null +++ b/packages/app-tests/e2e/user/password.spec.ts @@ -0,0 +1,94 @@ +import { type Page, expect, test } from '@playwright/test'; + +import { prisma } from '@documenso/prisma'; +import { seedUser } from '@documenso/prisma/seed/users'; + +import { apiSignin, apiSignout } from '../fixtures/authentication'; + +test.use({ storageState: { cookies: [], origins: [] } }); + +test('[USER] can reset password via forgot password', async ({ page }: { page: Page }) => { + const oldPassword = 'Test123!'; + const newPassword = 'Test124!'; + + const user = await seedUser({ + password: oldPassword, + }); + + await page.goto('http://localhost:3000/signin'); + await page.getByRole('link', { name: 'Forgot your password?' }).click(); + await page.getByRole('textbox', { name: 'Email' }).fill(user.email); + await page.getByRole('button', { name: 'Reset Password' }).click(); + await expect(page.locator('body')).toContainText('Reset email sent'); + + const foundToken = await prisma.passwordResetToken.findFirstOrThrow({ + where: { + userId: user.id, + }, + include: { + user: true, + }, + }); + + await page.goto(`http://localhost:3000/reset-password/${foundToken.token}`); + + // Assert that password cannot be same as old password. + await page.getByRole('textbox', { name: 'Password', exact: true }).fill(oldPassword); + await page.getByRole('textbox', { name: 'Repeat Password' }).fill(oldPassword); + await page.getByRole('button', { name: 'Reset Password' }).click(); + await expect(page.locator('body')).toContainText( + 'Your new password cannot be the same as your old password.', + ); + + // Assert password reset. + await page.getByRole('textbox', { name: 'Password', exact: true }).fill(newPassword); + await page.getByRole('textbox', { name: 'Repeat Password' }).fill(newPassword); + await page.getByRole('button', { name: 'Reset Password' }).click(); + await expect(page.locator('body')).toContainText('Your password has been updated successfully.'); + + // Assert sign in works. + await apiSignin({ + page, + email: user.email, + password: newPassword, + }); + + await page.waitForURL('/documents'); + await expect(page).toHaveURL('/documents'); +}); + +test('[USER] can reset password via user settings', async ({ page }: { page: Page }) => { + const oldPassword = 'Test123!'; + const newPassword = 'Test124!'; + + const user = await seedUser({ + password: oldPassword, + }); + + await apiSignin({ + page, + email: user.email, + password: oldPassword, + redirectPath: '/settings/security', + }); + + await page.getByRole('textbox', { name: 'Current password' }).fill(oldPassword); + await page.getByRole('textbox', { name: 'New password' }).fill(newPassword); + await page.getByRole('textbox', { name: 'Repeat password' }).fill(newPassword); + await page.getByRole('button', { name: 'Update password' }).click(); + await expect(page.locator('body')).toContainText('Password updated'); + + await apiSignout({ + page, + }); + + // Assert sign in works. + await apiSignin({ + page, + email: user.email, + password: newPassword, + }); + + await page.waitForURL('/documents'); + await expect(page).toHaveURL('/documents'); +}); From 63e2ef0abfff25c2d4ff1352f25741c3319658c9 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 21:35:35 +1100 Subject: [PATCH 06/61] fix: static caching --- .../components/general/document/document-upload.tsx | 2 +- apps/remix/server/main.js | 10 ++++++++-- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/apps/remix/app/components/general/document/document-upload.tsx b/apps/remix/app/components/general/document/document-upload.tsx index d54c05c8c..741b6da02 100644 --- a/apps/remix/app/components/general/document/document-upload.tsx +++ b/apps/remix/app/components/general/document/document-upload.tsx @@ -85,7 +85,7 @@ export const DocumentUploadDropzone = ({ className }: DocumentUploadDropzoneProp timestamp: new Date().toISOString(), }); - void navigate(`${formatDocumentsPath(team?.url)}/${id}/edit`); + await navigate(`${formatDocumentsPath(team?.url)}/${id}/edit`); } catch (err) { const error = AppError.parseError(err); diff --git a/apps/remix/server/main.js b/apps/remix/server/main.js index 03cf53767..c6b43179c 100644 --- a/apps/remix/server/main.js +++ b/apps/remix/server/main.js @@ -19,10 +19,16 @@ server.use( onFound: (path, c) => { if (path.startsWith('./build/client/assets')) { // Hard cache assets with hashed file names. - c.header('Cache-Control', `public, immutable, max-age=31536000`); + c.header('Cache-Control', 'public, immutable, max-age=31536000'); } else { // Cache with revalidation for rest of static files. - c.header('Cache-Control', 'no-cache, stale-while-revalidate'); + c.header('Cache-Control', 'public, max-age=0, stale-while-revalidate=86400'); + } + + // Custom cache for static file pdf.worker.min.js + if (path === './build/client/pdf.worker.min.js') { + c.header('Cache-Control', 'public, max-age=3600, stale-while-revalidate=86400'); + c.header('ETag', 'pdf.worker.min.js'); } }, }), From ec07092bf6f5f77dc692250b9af1f08a05127993 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 22:29:30 +1100 Subject: [PATCH 07/61] fix: session refresh --- .../app/components/forms/avatar-image.tsx | 6 +- apps/remix/app/components/forms/profile.tsx | 8 +- .../forms/public-profile-claim-dialog.tsx | 197 ------------------ .../_unauthenticated+/verify-email.$token.tsx | 4 + .../lib/client-only/providers/session.tsx | 6 +- 5 files changed, 13 insertions(+), 208 deletions(-) delete mode 100644 apps/remix/app/components/forms/public-profile-claim-dialog.tsx diff --git a/apps/remix/app/components/forms/avatar-image.tsx b/apps/remix/app/components/forms/avatar-image.tsx index dc8881f7b..852063287 100644 --- a/apps/remix/app/components/forms/avatar-image.tsx +++ b/apps/remix/app/components/forms/avatar-image.tsx @@ -42,7 +42,7 @@ export type AvatarImageFormProps = { }; export const AvatarImageForm = ({ className }: AvatarImageFormProps) => { - const { user } = useSession(); + const { user, refreshSession } = useSession(); const { _ } = useLingui(); const { toast } = useToast(); const { revalidate } = useRevalidator(); @@ -103,13 +103,13 @@ export const AvatarImageForm = ({ className }: AvatarImageFormProps) => { teamId: team?.id, }); + await refreshSession(); + toast({ title: _(msg`Avatar Updated`), description: _(msg`Your avatar has been updated successfully.`), duration: 5000, }); - - void revalidate(); } catch (err) { const error = AppError.parseError(err); diff --git a/apps/remix/app/components/forms/profile.tsx b/apps/remix/app/components/forms/profile.tsx index c5e179e15..f6493a6cd 100644 --- a/apps/remix/app/components/forms/profile.tsx +++ b/apps/remix/app/components/forms/profile.tsx @@ -3,7 +3,6 @@ import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import { useForm } from 'react-hook-form'; -import { useRevalidator } from 'react-router'; import { z } from 'zod'; import { useSession } from '@documenso/lib/client-only/providers/session'; @@ -42,8 +41,7 @@ export type ProfileFormProps = { export const ProfileForm = ({ className }: ProfileFormProps) => { const { _ } = useLingui(); const { toast } = useToast(); - const { user } = useSession(); - const { revalidate } = useRevalidator(); + const { user, refreshSession } = useSession(); const form = useForm({ values: { @@ -64,13 +62,13 @@ export const ProfileForm = ({ className }: ProfileFormProps) => { signature, }); + await refreshSession(); + toast({ title: _(msg`Profile updated`), description: _(msg`Your profile has been updated successfully.`), duration: 5000, }); - - await revalidate(); } catch (err) { toast({ title: _(msg`An unknown error occurred`), diff --git a/apps/remix/app/components/forms/public-profile-claim-dialog.tsx b/apps/remix/app/components/forms/public-profile-claim-dialog.tsx deleted file mode 100644 index f5e55e2ef..000000000 --- a/apps/remix/app/components/forms/public-profile-claim-dialog.tsx +++ /dev/null @@ -1,197 +0,0 @@ -import React, { useState } from 'react'; - -import { zodResolver } from '@hookform/resolvers/zod'; -import { msg } from '@lingui/core/macro'; -import { useLingui } from '@lingui/react'; -import type { User } from '@prisma/client'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import profileClaimTeaserImage from '@documenso/assets/images/profile-claim-teaser.png'; -import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; -import { AppError, AppErrorCode } from '@documenso/lib/errors/app-error'; -import { trpc } from '@documenso/trpc/react'; -import { cn } from '@documenso/ui/lib/utils'; -import { Button } from '@documenso/ui/primitives/button'; -import { - Dialog, - DialogContent, - DialogDescription, - DialogHeader, - DialogTitle, -} from '@documenso/ui/primitives/dialog'; -import { - Form, - FormControl, - FormField, - FormItem, - FormLabel, - FormMessage, -} from '@documenso/ui/primitives/form/form'; -import { Input } from '@documenso/ui/primitives/input'; -import { useToast } from '@documenso/ui/primitives/use-toast'; - -import { UserProfileSkeleton } from '../general/user-profile-skeleton'; - -export const ZClaimPublicProfileFormSchema = z.object({ - url: z - .string() - .trim() - .toLowerCase() - .min(1, { message: 'Please enter a valid username.' }) - .regex(/^[a-z0-9-]+$/, { - message: 'Username can only container alphanumeric characters and dashes.', - }), -}); - -export type TClaimPublicProfileFormSchema = z.infer; - -export type ClaimPublicProfileDialogFormProps = { - open: boolean; - onOpenChange?: (open: boolean) => void; - onClaimed?: () => void; - user: User; -}; - -export const ClaimPublicProfileDialogForm = ({ - open, - onOpenChange, - onClaimed, - user, -}: ClaimPublicProfileDialogFormProps) => { - const { _ } = useLingui(); - const { toast } = useToast(); - - const [claimed, setClaimed] = useState(false); - - const baseUrl = new URL(NEXT_PUBLIC_WEBAPP_URL() ?? 'http://localhost:3000'); - - const form = useForm({ - values: { - url: user.url || '', - }, - resolver: zodResolver(ZClaimPublicProfileFormSchema), - }); - - const { mutateAsync: updatePublicProfile } = trpc.profile.updatePublicProfile.useMutation(); - - const isSubmitting = form.formState.isSubmitting; - - const onFormSubmit = async ({ url }: TClaimPublicProfileFormSchema) => { - try { - await updatePublicProfile({ - url, - }); - - setClaimed(true); - onClaimed?.(); - } catch (err) { - const error = AppError.parseError(err); - - if (error.code === 'PROFILE_URL_TAKEN') { - form.setError('url', { - type: 'manual', - message: _(msg`This username is already taken`), - }); - } else if (error.code === 'PREMIUM_PROFILE_URL') { - form.setError('url', { - type: 'manual', - message: error.message, - }); - } else if (error.code !== AppErrorCode.UNKNOWN_ERROR) { - toast({ - title: 'An error occurred', - description: error.userMessage ?? error.message, - variant: 'destructive', - }); - } else { - toast({ - title: _(msg`An unknown error occurred`), - description: _( - msg`We encountered an unknown error while attempting to save your details. Please try again later.`, - ), - variant: 'destructive', - }); - } - } - }; - - return ( - - - {!claimed && ( - <> - - - Introducing public profiles! - - - - Reserve your Documenso public profile username - - - - profile claim teaser - -
- -
- ( - - Public profile username - - - - - - - -
- {baseUrl.host}/u/{field.value || ''} -
-
- )} - /> -
- -
- -
-
- - - )} - - {claimed && ( - <> - - All set! - - - We will let you know as soon as this features is launched - - - - - -
- -
- - )} -
-
- ); -}; diff --git a/apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx b/apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx index 23fb8c68e..cf7b96a4c 100644 --- a/apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +++ b/apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx @@ -8,6 +8,7 @@ import { Link, redirect, useNavigate } from 'react-router'; import { match } from 'ts-pattern'; import { authClient } from '@documenso/auth/client'; +import { useOptionalSession } from '@documenso/lib/client-only/providers/session'; import { EMAIL_VERIFICATION_STATE } from '@documenso/lib/constants/email'; import { Button } from '@documenso/ui/primitives/button'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -29,6 +30,7 @@ export const loader = ({ params }: Route.LoaderArgs) => { export default function VerifyEmailPage({ loaderData }: Route.ComponentProps) { const { token } = loaderData; + const { refreshSession } = useOptionalSession(); const { _ } = useLingui(); const { toast } = useToast(); const navigate = useNavigate(); @@ -44,6 +46,8 @@ export default function VerifyEmailPage({ loaderData }: Route.ComponentProps) { token, }); + await refreshSession(); + setState(response.state); } catch (err) { console.error(err); diff --git a/packages/lib/client-only/providers/session.tsx b/packages/lib/client-only/providers/session.tsx index b9ad7862c..be86a040d 100644 --- a/packages/lib/client-only/providers/session.tsx +++ b/packages/lib/client-only/providers/session.tsx @@ -22,7 +22,7 @@ interface SessionProviderProps { interface SessionContextValue { sessionData: AppSession | null; - refresh: () => Promise; + refreshSession: () => Promise; } const SessionContext = createContext(null); @@ -40,7 +40,7 @@ export const useSession = () => { return { ...context.sessionData, - refreshSession: context.refresh, + refreshSession: context.refreshSession, }; }; @@ -102,7 +102,7 @@ export const SessionProvider = ({ children, initialSession }: SessionProviderPro {children} From d2f3d24542fdfc7969546eaf74daada06b24895e Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 19 Feb 2025 22:36:17 +1100 Subject: [PATCH 08/61] chore: update docs --- .../developers/local-development/index.mdx | 2 +- .../local-development/translations.mdx | 47 ++----------------- 2 files changed, 5 insertions(+), 44 deletions(-) diff --git a/apps/documentation/pages/developers/local-development/index.mdx b/apps/documentation/pages/developers/local-development/index.mdx index c92f9b385..bf9f92723 100644 --- a/apps/documentation/pages/developers/local-development/index.mdx +++ b/apps/documentation/pages/developers/local-development/index.mdx @@ -16,7 +16,7 @@ Pick the one that fits your needs the best. ## Tech Stack - [Typescript](https://www.typescriptlang.org/) - Language -- [ReactRouter](https://reactrouter.com/) - Framework +- [React Router](https://reactrouter.com/) - Framework - [Prisma](https://www.prisma.io/) - ORM - [Tailwind](https://tailwindcss.com/) - CSS - [shadcn/ui](https://ui.shadcn.com/) - Component Library diff --git a/apps/documentation/pages/developers/local-development/translations.mdx b/apps/documentation/pages/developers/local-development/translations.mdx index a776dc50c..2fbb6eb96 100644 --- a/apps/documentation/pages/developers/local-development/translations.mdx +++ b/apps/documentation/pages/developers/local-development/translations.mdx @@ -13,35 +13,13 @@ Documenso uses the following stack to handle translations: Additional reading can be found in the [Lingui documentation](https://lingui.dev/introduction). -## Requirements - -You **must** insert **`setupI18nSSR()`** when creating any of the following files: - -- Server layout.tsx -- Server page.tsx -- Server loading.tsx - -Server meaning it does not have `'use client'` in it. - -```tsx -import { setupI18nSSR } from '@documenso/lib/client-only/providers/i18n.server'; - -export default function SomePage() { - setupI18nSSR(); // Required if there are translations within the page, or nested in components. - - // Rest of code... -} -``` - -Additional information can be found [here.](https://lingui.dev/tutorials/react-rsc#pages-layouts-and-lingui) - ## Quick guide If you require more in-depth information, please see the [Lingui documentation](https://lingui.dev/introduction). ### HTML -Wrap all text to translate in **``** tags exported from **@lingui/macro** (not @lingui/react). +Wrap all text to translate in **``** tags exported from **@lingui/react/macro**. ```html

@@ -64,8 +42,9 @@ For text that is broken into elements, but represent a whole sentence, you must ### Constants outside of react components ```tsx -import { Trans, msg } from '@lingui/macro'; +import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; +import { Trans } from '@lingui/react/macro'; // Wrap text in msg`text to translate` when it's in a constant here, or another file/package. export const CONSTANT_WITH_MSG = { @@ -98,31 +77,13 @@ Lingui provides a Plural component to make it easy. See full documentation [here Lingui provides a [DateTime instance](https://lingui.dev/ref/core#i18n.date) with the configured locale. -#### Server components - -Note that the i18n instance is coming from **setupI18nSSR**. - ```tsx import { Trans } from '@lingui/macro'; import { useLingui } from '@lingui/react'; export const SomeComponent = () => { - const { i18n } = setupI18nSSR(); + const { i18n } = useLingui(); return The current date is {i18n.date(new Date(), { dateStyle: 'short' })}; }; ``` - -#### Client components - -Note that the i18n instance is coming from the **import**. - -```tsx -import { i18n } from '@lingui/core'; -import { Trans } from '@lingui/macro'; -import { useLingui } from '@lingui/react'; - -export const SomeComponent = () => { - return The current date is {i18n.date(new Date(), { dateStyle: 'short' })}; -}; -``` From 250381fec867426541a530cb16c4482ccd9eff52 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Thu, 20 Feb 2025 12:17:55 +1100 Subject: [PATCH 09/61] fix: billing --- apps/remix/app/routes/api+/stripe.webhook.ts | 2 +- apps/remix/server/router.ts | 8 ------- .../ee/server-only/stripe/webhook/handler.ts | 22 +++++++++++-------- 3 files changed, 14 insertions(+), 18 deletions(-) diff --git a/apps/remix/app/routes/api+/stripe.webhook.ts b/apps/remix/app/routes/api+/stripe.webhook.ts index 7be8bcc1b..6530125ff 100644 --- a/apps/remix/app/routes/api+/stripe.webhook.ts +++ b/apps/remix/app/routes/api+/stripe.webhook.ts @@ -3,5 +3,5 @@ import { stripeWebhookHandler } from '@documenso/ee/server-only/stripe/webhook/h import type { Route } from './+types/webhook.trigger'; export async function action({ request }: Route.ActionArgs) { - return stripeWebhookHandler(request); + return await stripeWebhookHandler(request); } diff --git a/apps/remix/server/router.ts b/apps/remix/server/router.ts index 40d6581fc..c75f6f65b 100644 --- a/apps/remix/server/router.ts +++ b/apps/remix/server/router.ts @@ -1,7 +1,5 @@ import { Hono } from 'hono'; -import { bodyLimit } from 'hono/body-limit'; import { contextStorage } from 'hono/context-storage'; -import { timeout } from 'hono/timeout'; import { tsRestHonoApp } from '@documenso/api/hono'; import { auth } from '@documenso/auth/server'; @@ -22,12 +20,6 @@ export interface HonoEnv { const app = new Hono(); -/** - * Global middleware limits. - */ -app.use(timeout(120000)); // Two minute timeout. -app.use(bodyLimit({ maxSize: 50 * 1024 * 1024 })); // 50mb size limit. - /** * Attach session and context to requests. */ diff --git a/packages/ee/server-only/stripe/webhook/handler.ts b/packages/ee/server-only/stripe/webhook/handler.ts index 32f0c8516..ce6e5b936 100644 --- a/packages/ee/server-only/stripe/webhook/handler.ts +++ b/packages/ee/server-only/stripe/webhook/handler.ts @@ -16,7 +16,7 @@ type StripeWebhookResponse = { message: string; }; -export const stripeWebhookHandler = async (req: Request) => { +export const stripeWebhookHandler = async (req: Request): Promise => { try { const isBillingEnabled = IS_BILLING_ENABLED(); @@ -51,17 +51,21 @@ export const stripeWebhookHandler = async (req: Request) => { ); } - // Todo: (RR7) I'm not sure about this. - const clonedReq = req.clone(); - const rawBody = await clonedReq.arrayBuffer(); - const body = Buffer.from(rawBody); + const payload = await req.text(); - // It was this: - // const body = await buffer(req); + if (!payload) { + return Response.json( + { + success: false, + message: 'No payload found in request', + } satisfies StripeWebhookResponse, + { status: 400 }, + ); + } - const event = stripe.webhooks.constructEvent(body, signature, webhookSecret); + const event = stripe.webhooks.constructEvent(payload, signature, webhookSecret); - await match(event.type) + return await match(event.type) .with('checkout.session.completed', async () => { // eslint-disable-next-line @typescript-eslint/consistent-type-assertions const session = event.data.object as Stripe.Checkout.Session; From 50a41d07992f38b73257f8c6b0d361ed6c0f5b39 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Thu, 20 Feb 2025 15:06:36 +1100 Subject: [PATCH 10/61] fix: pdf viewer and embeds --- .husky/pre-commit | 3 - apps/documentation/package.json | 3 +- apps/openpage-api/package.json | 3 +- .../embed/embed-authentication-required.tsx | 15 +- .../app/routes/_authenticated+/_layout.tsx | 2 +- apps/remix/app/routes/embed+/_layout.tsx | 31 ++- apps/remix/app/routes/embed+/direct.$url.tsx | 4 +- apps/remix/app/routes/embed+/sign.$url.tsx | 4 +- apps/remix/package.json | 3 +- apps/remix/public/pdf.worker.min.js | 22 --- apps/remix/server/main.js | 6 - .../server/lib/session/session-cookies.ts | 2 +- packages/lib/translations/de/web.po | 187 ++++++++---------- packages/lib/translations/en/web.po | 187 ++++++++---------- packages/lib/translations/es/web.po | 187 ++++++++---------- packages/lib/translations/fr/web.po | 187 ++++++++---------- packages/lib/translations/it/web.po | 187 ++++++++---------- packages/lib/translations/pl/web.po | 187 ++++++++---------- packages/ui/primitives/pdf-viewer.tsx | 5 +- scripts/copy-pdfjs.cjs | 12 -- 20 files changed, 572 insertions(+), 665 deletions(-) delete mode 100644 apps/remix/public/pdf.worker.min.js delete mode 100644 scripts/copy-pdfjs.cjs diff --git a/.husky/pre-commit b/.husky/pre-commit index d4d3c418f..52007e38b 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -4,9 +4,6 @@ SCRIPT_DIR="$(readlink -f "$(dirname "$0")")" MONOREPO_ROOT="$(readlink -f "$SCRIPT_DIR/../")" -echo "Copying pdf.js" -npm run copy:pdfjs --workspace apps/** - echo "Copying .well-known/ contents" node "$MONOREPO_ROOT/scripts/copy-wellknown.cjs" diff --git a/apps/documentation/package.json b/apps/documentation/package.json index fc06f6547..76def45e1 100644 --- a/apps/documentation/package.json +++ b/apps/documentation/package.json @@ -7,8 +7,7 @@ "build": "next build", "start": "next start -p 3002", "lint:fix": "next lint --fix", - "clean": "rimraf .next && rimraf node_modules", - "copy:pdfjs": "node ../../scripts/copy-pdfjs.cjs" + "clean": "rimraf .next && rimraf node_modules" }, "dependencies": { "@documenso/assets": "*", diff --git a/apps/openpage-api/package.json b/apps/openpage-api/package.json index 1a8816acb..3ceaba3e4 100644 --- a/apps/openpage-api/package.json +++ b/apps/openpage-api/package.json @@ -7,8 +7,7 @@ "build": "next build", "start": "next start", "lint:fix": "next lint --fix", - "clean": "rimraf .next && rimraf node_modules", - "copy:pdfjs": "node ../../scripts/copy-pdfjs.cjs" + "clean": "rimraf .next && rimraf node_modules" }, "dependencies": { "@documenso/prisma": "*", diff --git a/apps/remix/app/components/embed/embed-authentication-required.tsx b/apps/remix/app/components/embed/embed-authentication-required.tsx index 11d672cb4..d86256dce 100644 --- a/apps/remix/app/components/embed/embed-authentication-required.tsx +++ b/apps/remix/app/components/embed/embed-authentication-required.tsx @@ -8,11 +8,17 @@ import { BrandingLogo } from '~/components/general/branding-logo'; export type EmbedAuthenticationRequiredProps = { email?: string; returnTo: string; + isGoogleSSOEnabled?: boolean; + isOIDCSSOEnabled?: boolean; + oidcProviderLabel?: string; }; export const EmbedAuthenticationRequired = ({ email, returnTo, + isGoogleSSOEnabled, + isOIDCSSOEnabled, + oidcProviderLabel, }: EmbedAuthenticationRequiredProps) => { return (
@@ -28,7 +34,14 @@ export const EmbedAuthenticationRequired = ({ - +

); diff --git a/apps/remix/app/routes/_authenticated+/_layout.tsx b/apps/remix/app/routes/_authenticated+/_layout.tsx index 1174a8871..e06140b41 100644 --- a/apps/remix/app/routes/_authenticated+/_layout.tsx +++ b/apps/remix/app/routes/_authenticated+/_layout.tsx @@ -26,7 +26,7 @@ export const loader = async ({ request }: Route.LoaderArgs) => { const session = await getOptionalSession(request); if (!session.isAuthenticated) { - return redirect('/signin'); + throw redirect('/signin'); } const [limits, banner] = await Promise.all([ diff --git a/apps/remix/app/routes/embed+/_layout.tsx b/apps/remix/app/routes/embed+/_layout.tsx index 12a3d4868..64259aa79 100644 --- a/apps/remix/app/routes/embed+/_layout.tsx +++ b/apps/remix/app/routes/embed+/_layout.tsx @@ -1,5 +1,11 @@ import { Outlet, isRouteErrorResponse, useRouteError } from 'react-router'; +import { + IS_GOOGLE_SSO_ENABLED, + IS_OIDC_SSO_ENABLED, + OIDC_PROVIDER_LABEL, +} from '@documenso/lib/constants/auth'; + import { EmbedAuthenticationRequired } from '~/components/embed/embed-authentication-required'; import { EmbedDocumentWaitingForTurn } from '~/components/embed/embed-document-waiting-for-turn'; import { EmbedPaywall } from '~/components/embed/embed-paywall'; @@ -20,17 +26,38 @@ export function headers({ loaderHeaders }: Route.HeadersArgs) { }; } +export function loader() { + // SSR env variables. + const isGoogleSSOEnabled = IS_GOOGLE_SSO_ENABLED; + const isOIDCSSOEnabled = IS_OIDC_SSO_ENABLED; + const oidcProviderLabel = OIDC_PROVIDER_LABEL; + + return { + isGoogleSSOEnabled, + isOIDCSSOEnabled, + oidcProviderLabel, + }; +} + export default function Layout() { return ; } -export function ErrorBoundary() { +export function ErrorBoundary({ loaderData }: Route.ErrorBoundaryProps) { + const { isGoogleSSOEnabled, isOIDCSSOEnabled, oidcProviderLabel } = loaderData || {}; + const error = useRouteError(); if (isRouteErrorResponse(error)) { if (error.status === 401 && error.data.type === 'embed-authentication-required') { return ( - + ); } diff --git a/apps/remix/app/routes/embed+/direct.$url.tsx b/apps/remix/app/routes/embed+/direct.$url.tsx index 7ba228ffa..ee75ce16a 100644 --- a/apps/remix/app/routes/embed+/direct.$url.tsx +++ b/apps/remix/app/routes/embed+/direct.$url.tsx @@ -1,7 +1,7 @@ import { data } from 'react-router'; import { match } from 'ts-pattern'; -import { getSession } from '@documenso/auth/server/lib/utils/get-session'; +import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; import { isUserEnterprise } from '@documenso/ee/server-only/util/is-document-enterprise'; import { isDocumentPlatform } from '@documenso/ee/server-only/util/is-document-platform'; import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; @@ -49,7 +49,7 @@ export async function loader({ params, request }: Route.LoaderArgs) { ); } - const { user } = await getSession(request); + const { user } = await getOptionalSession(request); const { derivedRecipientAccessAuth } = extractDocumentAuthMethods({ documentAuth: template.authOptions, diff --git a/apps/remix/app/routes/embed+/sign.$url.tsx b/apps/remix/app/routes/embed+/sign.$url.tsx index 300c022aa..63680a27b 100644 --- a/apps/remix/app/routes/embed+/sign.$url.tsx +++ b/apps/remix/app/routes/embed+/sign.$url.tsx @@ -2,7 +2,7 @@ import { DocumentStatus, RecipientRole } from '@prisma/client'; import { data } from 'react-router'; import { match } from 'ts-pattern'; -import { getSession } from '@documenso/auth/server/lib/utils/get-session'; +import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; import { isUserEnterprise } from '@documenso/ee/server-only/util/is-document-enterprise'; import { isDocumentPlatform } from '@documenso/ee/server-only/util/is-document-platform'; import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; @@ -29,7 +29,7 @@ export async function loader({ params, request }: Route.LoaderArgs) { const token = params.url; - const { user } = await getSession(request); + const { user } = await getOptionalSession(request); const [document, fields, recipient] = await Promise.all([ getDocumentAndSenderByToken({ diff --git a/apps/remix/package.json b/apps/remix/package.json index 788a97396..4ab4ed4cc 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -10,7 +10,6 @@ "start": "npm run with:env -- cross-env NODE_ENV=production node build/server/main.js", "clean": "rimraf .react-router && rimraf node_modules", "typecheck": "react-router typegen && tsc", - "copy:pdfjs": "node ../../scripts/copy-pdfjs.cjs", "with:env": "dotenv -e ../../.env -e ../../.env.local --" }, "dependencies": { @@ -100,4 +99,4 @@ "vite-plugin-babel-macros": "^1.0.6", "vite-tsconfig-paths": "^5.1.4" } -} +} \ No newline at end of file diff --git a/apps/remix/public/pdf.worker.min.js b/apps/remix/public/pdf.worker.min.js deleted file mode 100644 index 122422609..000000000 --- a/apps/remix/public/pdf.worker.min.js +++ /dev/null @@ -1,22 +0,0 @@ -/** - * @licstart The following is the entire license notice for the - * JavaScript code in this page - * - * Copyright 2023 Mozilla Foundation - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * @licend The above is the entire license notice for the - * JavaScript code in this page - */ -!function webpackUniversalModuleDefinition(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=e.pdfjsWorker=t():"function"==typeof define&&define.amd?define("pdfjs-dist/build/pdf.worker",[],(()=>e.pdfjsWorker=t())):"object"==typeof exports?exports["pdfjs-dist/build/pdf.worker"]=e.pdfjsWorker=t():e["pdfjs-dist/build/pdf.worker"]=e.pdfjsWorker=t()}(globalThis,(()=>(()=>{"use strict";var e=[,(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.WorkerTask=t.WorkerMessageHandler=void 0;var r=a(2),n=a(3),i=a(4),s=a(6),o=a(10),c=a(68),l=a(73),h=a(104),u=a(105),d=a(72);class WorkerTask{constructor(e){this.name=e;this.terminated=!1;this._capability=new r.PromiseCapability}get finished(){return this._capability.promise}finish(){this._capability.resolve()}terminate(){this.terminated=!0}ensureNotTerminated(){if(this.terminated)throw new Error("Worker task was terminated")}}t.WorkerTask=WorkerTask;class WorkerMessageHandler{static setup(e,t){let a=!1;e.on("test",(function(t){if(!a){a=!0;e.send("test",t instanceof Uint8Array)}}));e.on("configure",(function(e){(0,r.setVerbosityLevel)(e.verbosity)}));e.on("GetDocRequest",(function(e){return WorkerMessageHandler.createDocumentHandler(e,t)}))}static createDocumentHandler(e,t){let a,f=!1,g=null;const p=new Set,m=(0,r.getVerbosityLevel)(),{docId:b,apiVersion:y}=e,w="3.11.174";if(y!==w)throw new Error(`The API version "${y}" does not match the Worker version "${w}".`);const S=[];for(const e in[])S.push(e);if(S.length)throw new Error("The `Array.prototype` contains unexpected enumerable properties: "+S.join(", ")+"; thus breaking e.g. `for...in` iteration of `Array`s.");const x=b+"_worker";let C=new h.MessageHandler(x,b,t);function ensureNotTerminated(){if(f)throw new Error("Worker was terminated")}function startWorkerTask(e){p.add(e)}function finishWorkerTask(e){e.finish();p.delete(e)}async function loadDocument(e){await a.ensureDoc("checkHeader");await a.ensureDoc("parseStartXRef");await a.ensureDoc("parse",[e]);await a.ensureDoc("checkFirstPage",[e]);await a.ensureDoc("checkLastPage",[e]);const t=await a.ensureDoc("isPureXfa");if(t){const e=new WorkerTask("loadXfaFonts");startWorkerTask(e);await Promise.all([a.loadXfaFonts(C,e).catch((e=>{})).then((()=>finishWorkerTask(e))),a.loadXfaImages()])}const[r,n]=await Promise.all([a.ensureDoc("numPages"),a.ensureDoc("fingerprints")]);return{numPages:r,fingerprints:n,htmlForXfa:t?await a.ensureDoc("htmlForXfa"):null}}function getPdfManager({data:e,password:t,disableAutoFetch:a,rangeChunkSize:i,length:o,docBaseUrl:c,enableXfa:l,evaluatorOptions:h}){const d={source:null,disableAutoFetch:a,docBaseUrl:c,docId:b,enableXfa:l,evaluatorOptions:h,handler:C,length:o,password:t,rangeChunkSize:i},f=new r.PromiseCapability;let p;if(e){try{d.source=e;p=new s.LocalPdfManager(d);f.resolve(p)}catch(e){f.reject(e)}return f.promise}let m,y=[];try{m=new u.PDFWorkerStream(C)}catch(e){f.reject(e);return f.promise}const w=m.getFullReader();w.headersReady.then((function(){if(w.isRangeSupported){d.source=m;d.length=w.contentLength;d.disableAutoFetch||=w.isStreamingSupported;p=new s.NetworkPdfManager(d);for(const e of y)p.sendProgressiveData(e);y=[];f.resolve(p);g=null}})).catch((function(e){f.reject(e);g=null}));let S=0;new Promise((function(e,t){const readChunk=function({value:e,done:a}){try{ensureNotTerminated();if(a){p||function(){const e=(0,n.arrayBuffersToBytes)(y);o&&e.length!==o&&(0,r.warn)("reported HTTP length is different from actual");try{d.source=e;p=new s.LocalPdfManager(d);f.resolve(p)}catch(e){f.reject(e)}y=[]}();g=null;return}S+=e.byteLength;w.isStreamingSupported||C.send("DocProgress",{loaded:S,total:Math.max(S,w.contentLength||0)});p?p.sendProgressiveData(e):y.push(e);w.read().then(readChunk,t)}catch(e){t(e)}};w.read().then(readChunk,t)})).catch((function(e){f.reject(e);g=null}));g=function(e){m.cancelAllRequests(e)};return f.promise}C.on("GetPage",(function(e){return a.getPage(e.pageIndex).then((function(e){return Promise.all([a.ensure(e,"rotate"),a.ensure(e,"ref"),a.ensure(e,"userUnit"),a.ensure(e,"view")]).then((function([e,t,a,r]){return{rotate:e,ref:t,userUnit:a,view:r}}))}))}));C.on("GetPageIndex",(function(e){const t=i.Ref.get(e.num,e.gen);return a.ensureCatalog("getPageIndex",[t])}));C.on("GetDestinations",(function(e){return a.ensureCatalog("destinations")}));C.on("GetDestination",(function(e){return a.ensureCatalog("getDestination",[e.id])}));C.on("GetPageLabels",(function(e){return a.ensureCatalog("pageLabels")}));C.on("GetPageLayout",(function(e){return a.ensureCatalog("pageLayout")}));C.on("GetPageMode",(function(e){return a.ensureCatalog("pageMode")}));C.on("GetViewerPreferences",(function(e){return a.ensureCatalog("viewerPreferences")}));C.on("GetOpenAction",(function(e){return a.ensureCatalog("openAction")}));C.on("GetAttachments",(function(e){return a.ensureCatalog("attachments")}));C.on("GetDocJSActions",(function(e){return a.ensureCatalog("jsActions")}));C.on("GetPageJSActions",(function({pageIndex:e}){return a.getPage(e).then((function(e){return a.ensure(e,"jsActions")}))}));C.on("GetOutline",(function(e){return a.ensureCatalog("documentOutline")}));C.on("GetOptionalContentConfig",(function(e){return a.ensureCatalog("optionalContentConfig")}));C.on("GetPermissions",(function(e){return a.ensureCatalog("permissions")}));C.on("GetMetadata",(function(e){return Promise.all([a.ensureDoc("documentInfo"),a.ensureCatalog("metadata")])}));C.on("GetMarkInfo",(function(e){return a.ensureCatalog("markInfo")}));C.on("GetData",(function(e){return a.requestLoadedStream().then((function(e){return e.bytes}))}));C.on("GetAnnotations",(function({pageIndex:e,intent:t}){return a.getPage(e).then((function(a){const r=new WorkerTask(`GetAnnotations: page ${e}`);startWorkerTask(r);return a.getAnnotationsData(C,r,t).then((e=>{finishWorkerTask(r);return e}),(e=>{finishWorkerTask(r);throw e}))}))}));C.on("GetFieldObjects",(function(e){return a.ensureDoc("fieldObjects")}));C.on("HasJSActions",(function(e){return a.ensureDoc("hasJSActions")}));C.on("GetCalculationOrderIds",(function(e){return a.ensureDoc("calculationOrderIds")}));C.on("SaveDocument",(async function({isPureXfa:e,numPages:t,annotationStorage:s,filename:c}){const h=[a.requestLoadedStream(),a.ensureCatalog("acroForm"),a.ensureCatalog("acroFormRef"),a.ensureDoc("startXRef"),a.ensureDoc("xref"),a.ensureDoc("linearization"),a.ensureCatalog("structTreeRoot")],u=[],f=e?null:(0,n.getNewAnnotationsMap)(s),[g,p,m,b,y,w,S]=await Promise.all(h),x=y.trailer.getRaw("Root")||null;let k;if(f){S?await S.canUpdateStructTree({pdfManager:a,newAnnotationsByPage:f})&&(k=S):await d.StructTreeRoot.canCreateStructureTree({catalogRef:x,pdfManager:a,newAnnotationsByPage:f})&&(k=null);const e=o.AnnotationFactory.generateImages(s.values(),y,a.evaluatorOptions.isOffscreenCanvasSupported),t=void 0===k?u:[];for(const[r,n]of f)t.push(a.getPage(r).then((t=>{const a=new WorkerTask(`Save (editor): page ${r}`);return t.saveNewAnnotations(C,a,n,e).finally((function(){finishWorkerTask(a)}))})));null===k?u.push(Promise.all(t).then((async e=>{await d.StructTreeRoot.createStructureTree({newAnnotationsByPage:f,xref:y,catalogRef:x,pdfManager:a,newRefs:e});return e}))):k&&u.push(Promise.all(t).then((async e=>{await k.updateStructureTree({newAnnotationsByPage:f,pdfManager:a,newRefs:e});return e})))}if(e)u.push(a.serializeXfaData(s));else for(let e=0;ee.needAppearances)),M=p instanceof i.Dict&&p.get("XFA")||null;let D=null,E=!1;if(Array.isArray(M)){for(let e=0,t=M.length;e{"string"==typeof a&&(e[t]=(0,r.stringToPDFString)(a))}));N={rootRef:x,encryptRef:y.trailer.getRaw("Encrypt")||null,newRef:y.getNewTemporaryRef(),infoRef:y.trailer.getRaw("Info")||null,info:e,fileIds:y.trailer.get("ID")||null,startXRef:w?b:y.lastXRefStreamPos??b,filename:c}}return(0,l.incrementalUpdate)({originalData:g.bytes,xrefInfo:N,newRefs:F,xref:y,hasXfa:!!M,xfaDatasetsRef:D,hasXfaDatasetsEntry:E,needAppearances:T,acroFormRef:m,acroForm:p,xfaData:O}).finally((()=>{y.resetNewTemporaryRef()}))}));C.on("GetOperatorList",(function(e,t){const n=e.pageIndex;a.getPage(n).then((function(a){const i=new WorkerTask(`GetOperatorList: page ${n}`);startWorkerTask(i);const s=m>=r.VerbosityLevel.INFOS?Date.now():0;a.getOperatorList({handler:C,sink:t,task:i,intent:e.intent,cacheKey:e.cacheKey,annotationStorage:e.annotationStorage}).then((function(e){finishWorkerTask(i);s&&(0,r.info)(`page=${n+1} - getOperatorList: time=${Date.now()-s}ms, len=${e.length}`);t.close()}),(function(e){finishWorkerTask(i);i.terminated||t.error(e)}))}))}));C.on("GetTextContent",(function(e,t){const{pageIndex:n,includeMarkedContent:i,disableNormalization:s}=e;a.getPage(n).then((function(e){const a=new WorkerTask("GetTextContent: page "+n);startWorkerTask(a);const o=m>=r.VerbosityLevel.INFOS?Date.now():0;e.extractTextContent({handler:C,task:a,sink:t,includeMarkedContent:i,disableNormalization:s}).then((function(){finishWorkerTask(a);o&&(0,r.info)(`page=${n+1} - getTextContent: time=`+(Date.now()-o)+"ms");t.close()}),(function(e){finishWorkerTask(a);a.terminated||t.error(e)}))}))}));C.on("GetStructTree",(function(e){return a.getPage(e.pageIndex).then((function(e){return a.ensure(e,"getStructTree")}))}));C.on("FontFallback",(function(e){return a.fontFallback(e.id,C)}));C.on("Cleanup",(function(e){return a.cleanup(!0)}));C.on("Terminate",(function(e){f=!0;const t=[];if(a){a.terminate(new r.AbortException("Worker was terminated."));const e=a.cleanup();t.push(e);a=null}else(0,c.clearGlobalCaches)();g&&g(new r.AbortException("Worker was terminated."));for(const e of p){t.push(e.finished);e.terminate()}return Promise.all(t).then((function(){C.destroy();C=null}))}));C.on("Ready",(function(t){!function setupDoc(e){function onSuccess(e){ensureNotTerminated();C.send("GetDoc",{pdfInfo:e})}function onFailure(e){ensureNotTerminated();if(e instanceof r.PasswordException){const t=new WorkerTask(`PasswordException: response ${e.code}`);startWorkerTask(t);C.sendWithPromise("PasswordRequest",e).then((function({password:e}){finishWorkerTask(t);a.updatePassword(e);pdfManagerReady()})).catch((function(){finishWorkerTask(t);C.send("DocException",e)}))}else e instanceof r.InvalidPDFException||e instanceof r.MissingPDFException||e instanceof r.UnexpectedResponseException||e instanceof r.UnknownErrorException?C.send("DocException",e):C.send("DocException",new r.UnknownErrorException(e.message,e.toString()))}function pdfManagerReady(){ensureNotTerminated();loadDocument(!1).then(onSuccess,(function(e){ensureNotTerminated();e instanceof n.XRefParseException?a.requestLoadedStream().then((function(){ensureNotTerminated();loadDocument(!0).then(onSuccess,onFailure)})):onFailure(e)}))}ensureNotTerminated();getPdfManager(e).then((function(e){if(f){e.terminate(new r.AbortException("Worker was terminated."));throw new Error("Worker was terminated")}a=e;a.requestLoadedStream(!0).then((e=>{C.send("DataLoaded",{length:e.bytes.byteLength})}))})).then(pdfManagerReady,onFailure)}(e);e=null}));return x}static initializeFromPort(e){const t=new h.MessageHandler("worker","main",e);WorkerMessageHandler.setup(t,e);t.send("ready",null)}}t.WorkerMessageHandler=WorkerMessageHandler;"undefined"==typeof window&&!r.isNodeJS&&"undefined"!=typeof self&&function isMessagePort(e){return"function"==typeof e.postMessage&&"onmessage"in e}(self)&&WorkerMessageHandler.initializeFromPort(self)},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.VerbosityLevel=t.Util=t.UnknownErrorException=t.UnexpectedResponseException=t.TextRenderingMode=t.RenderingIntentFlag=t.PromiseCapability=t.PermissionFlag=t.PasswordResponses=t.PasswordException=t.PageActionEventType=t.OPS=t.MissingPDFException=t.MAX_IMAGE_SIZE_TO_CACHE=t.LINE_FACTOR=t.LINE_DESCENT_FACTOR=t.InvalidPDFException=t.ImageKind=t.IDENTITY_MATRIX=t.FormatError=t.FeatureTest=t.FONT_IDENTITY_MATRIX=t.DocumentActionEventType=t.CMapCompressionType=t.BaseException=t.BASELINE_FACTOR=t.AnnotationType=t.AnnotationReplyType=t.AnnotationPrefix=t.AnnotationMode=t.AnnotationFlag=t.AnnotationFieldFlag=t.AnnotationEditorType=t.AnnotationEditorPrefix=t.AnnotationEditorParamsType=t.AnnotationBorderStyleType=t.AnnotationActionEventType=t.AbortException=void 0;t.assert=function assert(e,t){e||unreachable(t)};t.bytesToString=bytesToString;t.createValidAbsoluteUrl=function createValidAbsoluteUrl(e,t=null,a=null){if(!e)return null;try{if(a&&"string"==typeof e){if(a.addDefaultProtocol&&e.startsWith("www.")){const t=e.match(/\./g);t?.length>=2&&(e=`http://${e}`)}if(a.tryConvertEncoding)try{e=stringToUTF8String(e)}catch{}}const r=t?new URL(e,t):new URL(e);if(function _isValidProtocol(e){switch(e?.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}(r))return r}catch{}return null};t.getModificationDate=function getModificationDate(e=new Date){return[e.getUTCFullYear().toString(),(e.getUTCMonth()+1).toString().padStart(2,"0"),e.getUTCDate().toString().padStart(2,"0"),e.getUTCHours().toString().padStart(2,"0"),e.getUTCMinutes().toString().padStart(2,"0"),e.getUTCSeconds().toString().padStart(2,"0")].join("")};t.getUuid=function getUuid(){if("undefined"!=typeof crypto&&"function"==typeof crypto?.randomUUID)return crypto.randomUUID();const e=new Uint8Array(32);if("undefined"!=typeof crypto&&"function"==typeof crypto?.getRandomValues)crypto.getRandomValues(e);else for(let t=0;t<32;t++)e[t]=Math.floor(255*Math.random());return bytesToString(e)};t.getVerbosityLevel=function getVerbosityLevel(){return n};t.info=function info(e){n>=r.INFOS&&console.log(`Info: ${e}`)};t.isArrayBuffer=function isArrayBuffer(e){return"object"==typeof e&&void 0!==e?.byteLength};t.isArrayEqual=function isArrayEqual(e,t){if(e.length!==t.length)return!1;for(let a=0,r=e.length;at?t.normalize("NFKC"):l.get(a)))};t.objectFromMap=function objectFromMap(e){const t=Object.create(null);for(const[a,r]of e)t[a]=r;return t};t.objectSize=function objectSize(e){return Object.keys(e).length};t.setVerbosityLevel=function setVerbosityLevel(e){Number.isInteger(e)&&(n=e)};t.shadow=shadow;t.string32=function string32(e){return String.fromCharCode(e>>24&255,e>>16&255,e>>8&255,255&e)};t.stringToBytes=stringToBytes;t.stringToPDFString=function stringToPDFString(e){if(e[0]>="ï"){let t;"þ"===e[0]&&"ÿ"===e[1]?t="utf-16be":"ÿ"===e[0]&&"þ"===e[1]?t="utf-16le":"ï"===e[0]&&"»"===e[1]&&"¿"===e[2]&&(t="utf-8");if(t)try{const a=new TextDecoder(t,{fatal:!0}),r=stringToBytes(e);return a.decode(r)}catch(e){warn(`stringToPDFString: "${e}".`)}}const t=[];for(let a=0,r=e.length;a=r.WARNINGS&&console.log(`Warning: ${e}`)}function unreachable(e){throw new Error(e)}function shadow(e,t,a,r=!1){Object.defineProperty(e,t,{value:a,enumerable:!r,configurable:!0,writable:!1});return a}const i=function BaseExceptionClosure(){function BaseException(e,t){this.constructor===BaseException&&unreachable("Cannot initialize BaseException.");this.message=e;this.name=t}BaseException.prototype=new Error;BaseException.constructor=BaseException;return BaseException}();t.BaseException=i;t.PasswordException=class PasswordException extends i{constructor(e,t){super(e,"PasswordException");this.code=t}};t.UnknownErrorException=class UnknownErrorException extends i{constructor(e,t){super(e,"UnknownErrorException");this.details=t}};t.InvalidPDFException=class InvalidPDFException extends i{constructor(e){super(e,"InvalidPDFException")}};t.MissingPDFException=class MissingPDFException extends i{constructor(e){super(e,"MissingPDFException")}};t.UnexpectedResponseException=class UnexpectedResponseException extends i{constructor(e,t){super(e,"UnexpectedResponseException");this.status=t}};t.FormatError=class FormatError extends i{constructor(e){super(e,"FormatError")}};t.AbortException=class AbortException extends i{constructor(e){super(e,"AbortException")}};function bytesToString(e){"object"==typeof e&&void 0!==e?.length||unreachable("Invalid argument for bytesToString");const t=e.length,a=8192;if(te.toString(16).padStart(2,"0")));t.Util=class Util{static makeHexColor(e,t,a){return`#${s[e]}${s[t]}${s[a]}`}static scaleMinMax(e,t){let a;if(e[0]){if(e[0]<0){a=t[0];t[0]=t[1];t[1]=a}t[0]*=e[0];t[1]*=e[0];if(e[3]<0){a=t[2];t[2]=t[3];t[3]=a}t[2]*=e[3];t[3]*=e[3]}else{a=t[0];t[0]=t[2];t[2]=a;a=t[1];t[1]=t[3];t[3]=a;if(e[1]<0){a=t[2];t[2]=t[3];t[3]=a}t[2]*=e[1];t[3]*=e[1];if(e[2]<0){a=t[0];t[0]=t[1];t[1]=a}t[0]*=e[2];t[1]*=e[2]}t[0]+=e[4];t[1]+=e[4];t[2]+=e[5];t[3]+=e[5]}static transform(e,t){return[e[0]*t[0]+e[2]*t[1],e[1]*t[0]+e[3]*t[1],e[0]*t[2]+e[2]*t[3],e[1]*t[2]+e[3]*t[3],e[0]*t[4]+e[2]*t[5]+e[4],e[1]*t[4]+e[3]*t[5]+e[5]]}static applyTransform(e,t){return[e[0]*t[0]+e[1]*t[2]+t[4],e[0]*t[1]+e[1]*t[3]+t[5]]}static applyInverseTransform(e,t){const a=t[0]*t[3]-t[1]*t[2];return[(e[0]*t[3]-e[1]*t[2]+t[2]*t[5]-t[4]*t[3])/a,(-e[0]*t[1]+e[1]*t[0]+t[4]*t[1]-t[5]*t[0])/a]}static getAxialAlignedBoundingBox(e,t){const a=this.applyTransform(e,t),r=this.applyTransform(e.slice(2,4),t),n=this.applyTransform([e[0],e[3]],t),i=this.applyTransform([e[2],e[1]],t);return[Math.min(a[0],r[0],n[0],i[0]),Math.min(a[1],r[1],n[1],i[1]),Math.max(a[0],r[0],n[0],i[0]),Math.max(a[1],r[1],n[1],i[1])]}static inverseTransform(e){const t=e[0]*e[3]-e[1]*e[2];return[e[3]/t,-e[1]/t,-e[2]/t,e[0]/t,(e[2]*e[5]-e[4]*e[3])/t,(e[4]*e[1]-e[5]*e[0])/t]}static singularValueDecompose2dScale(e){const t=[e[0],e[2],e[1],e[3]],a=e[0]*t[0]+e[1]*t[2],r=e[0]*t[1]+e[1]*t[3],n=e[2]*t[0]+e[3]*t[2],i=e[2]*t[1]+e[3]*t[3],s=(a+i)/2,o=Math.sqrt((a+i)**2-4*(a*i-n*r))/2,c=s+o||1,l=s-o||1;return[Math.sqrt(c),Math.sqrt(l)]}static normalizeRect(e){const t=e.slice(0);if(e[0]>e[2]){t[0]=e[2];t[2]=e[0]}if(e[1]>e[3]){t[1]=e[3];t[3]=e[1]}return t}static intersect(e,t){const a=Math.max(Math.min(e[0],e[2]),Math.min(t[0],t[2])),r=Math.min(Math.max(e[0],e[2]),Math.max(t[0],t[2]));if(a>r)return null;const n=Math.max(Math.min(e[1],e[3]),Math.min(t[1],t[3])),i=Math.min(Math.max(e[1],e[3]),Math.max(t[1],t[3]));return n>i?null:[a,n,r,i]}static bezierBoundingBox(e,t,a,r,n,i,s,o){const c=[],l=[[],[]];let h,u,d,f,g,p,m,b;for(let l=0;l<2;++l){if(0===l){u=6*e-12*a+6*n;h=-3*e+9*a-9*n+3*s;d=3*a-3*e}else{u=6*t-12*r+6*i;h=-3*t+9*r-9*i+3*o;d=3*r-3*t}if(Math.abs(h)<1e-12){if(Math.abs(u)<1e-12)continue;f=-d/u;0{this.resolve=t=>{this.#e=!0;e(t)};this.reject=e=>{this.#e=!0;t(e)}}))}get settled(){return this.#e}};let c=null,l=null;t.AnnotationPrefix="pdfjs_internal_id_"},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XRefParseException=t.XRefEntryException=t.ParserEOFException=t.PDF_VERSION_REGEXP=t.MissingDataException=void 0;t.arrayBuffersToBytes=function arrayBuffersToBytes(e){const t=e.length;if(0===t)return new Uint8Array(0);if(1===t)return new Uint8Array(e[0]);let a=0;for(let r=0;r=0;t--){const r=s[t];if(r instanceof n.Dict)for(const t of r.getKeys()){const s=a[t];if(!s)continue;const o=[];_collectJS(r.getRaw(t),e,o,new n.RefSet);o.length>0&&(i[s]=o)}}if(t.has("A")){const a=[];_collectJS(t.get("A"),e,a,new n.RefSet);a.length>0&&(i.Action=a)}return(0,r.objectSize)(i)>0?i:null};t.encodeToXmlString=function encodeToXmlString(e){const t=[];let a=0;for(let r=0,n=e.length;r55295&&(n<57344||n>65533)&&r++;a=r+1}}if(0===t.length)return e;a126||35===n||40===n||41===n||60===n||62===n||91===n||93===n||123===n||125===n||47===n||37===n){a"\n"===e?"\\n":"\r"===e?"\\r":`\\${e}`))};t.getInheritableProperty=getInheritableProperty;t.getLookupTableFactory=function getLookupTableFactory(e){let t;return function(){if(e){t=Object.create(null);e(t);e=null}return t}};t.getNewAnnotationsMap=function getNewAnnotationsMap(e){if(!e)return null;const t=new Map;for(const[a,n]of e){if(!a.startsWith(r.AnnotationEditorPrefix))continue;let e=t.get(n.pageIndex);if(!e){e=[];t.set(n.pageIndex,e)}e.push(n)}return t.size>0?t:null};t.getRotationMatrix=function getRotationMatrix(e,t,a){switch(e){case 90:return[0,1,-1,0,t,0];case 180:return[-1,0,0,-1,t,a];case 270:return[0,-1,1,0,0,a];default:throw new Error("Invalid rotation")}};t.isAscii=function isAscii(e){return/^[\x00-\x7F]*$/.test(e)};t.isWhiteSpace=function isWhiteSpace(e){return 32===e||9===e||13===e||10===e};t.log2=function log2(e){if(e<=0)return 0;return Math.ceil(Math.log2(e))};t.numberToString=function numberToString(e){if(Number.isInteger(e))return e.toString();const t=Math.round(100*e);if(t%100==0)return(t/100).toString();if(t%10==0)return e.toFixed(1);return e.toFixed(2)};t.parseXFAPath=function parseXFAPath(e){const t=/(.+)\[(\d+)\]$/;return e.split(".").map((e=>{const a=e.match(t);return a?{name:a[1],pos:parseInt(a[2],10)}:{name:e,pos:0}}))};t.readInt8=function readInt8(e,t){return e[t]<<24>>24};t.readUint16=function readUint16(e,t){return e[t]<<8|e[t+1]};t.readUint32=function readUint32(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0};t.recoverJsURL=function recoverJsURL(e){const t=new RegExp("^\\s*("+["app.launchURL","window.open","xfa.host.gotoURL"].join("|").replaceAll(".","\\.")+")\\((?:'|\")([^'\"]*)(?:'|\")(?:,\\s*(\\w+)\\)|\\))","i").exec(e);if(t?.[2]){const e=t[2];let a=!1;"true"===t[3]&&"app.launchURL"===t[1]&&(a=!0);return{url:e,newWindow:a}}return null};t.stringToUTF16HexString=function stringToUTF16HexString(e){const t=[];for(let a=0,r=e.length;a>8&255).toString(16).padStart(2,"0"),(255&r).toString(16).padStart(2,"0"))}return t.join("")};t.stringToUTF16String=function stringToUTF16String(e,t=!1){const a=[];t&&a.push("þÿ");for(let t=0,r=e.length;t>8&255),String.fromCharCode(255&r))}return a.join("")};t.toRomanNumerals=function toRomanNumerals(e,t=!1){(0,r.assert)(Number.isInteger(e)&&e>0,"The number should be a positive integer.");const a=[];let n;for(;e>=1e3;){e-=1e3;a.push("M")}n=e/100|0;e%=100;a.push(s[n]);n=e/10|0;e%=10;a.push(s[10+n]);a.push(s[20+e]);const i=a.join("");return t?i.toLowerCase():i};t.validateCSSFont=function validateCSSFont(e){const t=new Set(["100","200","300","400","500","600","700","800","900","1000","normal","bold","bolder","lighter"]),{fontFamily:a,fontWeight:r,italicAngle:n}=e;if(!validateFontName(a,!0))return!1;const i=r?r.toString():"";e.fontWeight=t.has(i)?i:"400";const s=parseFloat(n);e.italicAngle=isNaN(s)||s<-90||s>90?"14":n.toString();return!0};t.validateFontName=validateFontName;var r=a(2),n=a(4),i=a(5);t.PDF_VERSION_REGEXP=/^[1-9]\.\d$/;class MissingDataException extends r.BaseException{constructor(e,t){super(`Missing data [${e}, ${t})`,"MissingDataException");this.begin=e;this.end=t}}t.MissingDataException=MissingDataException;class ParserEOFException extends r.BaseException{constructor(e){super(e,"ParserEOFException")}}t.ParserEOFException=ParserEOFException;class XRefEntryException extends r.BaseException{constructor(e){super(e,"XRefEntryException")}}t.XRefEntryException=XRefEntryException;class XRefParseException extends r.BaseException{constructor(e){super(e,"XRefParseException")}}t.XRefParseException=XRefParseException;function getInheritableProperty({dict:e,key:t,getArray:a=!1,stopWhenFound:r=!0}){let i;const s=new n.RefSet;for(;e instanceof n.Dict&&(!e.objId||!s.has(e.objId));){e.objId&&s.put(e.objId);const n=a?e.getArray(t):e.get(t);if(void 0!==n){if(r)return n;(i||=[]).push(n)}e=e.get("Parent")}return i}const s=["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM","","X","XX","XXX","XL","L","LX","LXX","LXXX","XC","","I","II","III","IV","V","VI","VII","VIII","IX"];function _collectJS(e,t,a,s){if(!e)return;let o=null;if(e instanceof n.Ref){if(s.has(e))return;o=e;s.put(o);e=t.fetch(e)}if(Array.isArray(e))for(const r of e)_collectJS(r,t,a,s);else if(e instanceof n.Dict){if((0,n.isName)(e.get("S"),"JavaScript")){const t=e.get("JS");let n;t instanceof i.BaseStream?n=t.getString():"string"==typeof t&&(n=t);n&&=(0,r.stringToPDFString)(n).replaceAll("\0","");n&&a.push(n)}_collectJS(e.getRaw("Next"),t,a,s)}o&&s.remove(o)}const o={60:"<",62:">",38:"&",34:""",39:"'"};function validateFontName(e,t=!1){const a=/^("|').*("|')$/.exec(e);if(a&&a[1]===a[2]){if(new RegExp(`[^\\\\]${a[1]}`).test(e.slice(1,-1))){t&&(0,r.warn)(`FontFamily contains unescaped ${a[1]}: ${e}.`);return!1}}else for(const a of e.split(/[ \t]+/))if(/^(\d|(-(\d|-)))/.test(a)||!/^[\w-\\]+$/.test(a)){t&&(0,r.warn)(`FontFamily contains invalid : ${e}.`);return!1}return!0}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.RefSetCache=t.RefSet=t.Ref=t.Name=t.EOF=t.Dict=t.Cmd=t.CIRCULAR_REF=void 0;t.clearPrimitiveCaches=function clearPrimitiveCaches(){s=Object.create(null);o=Object.create(null);c=Object.create(null)};t.isCmd=function isCmd(e,t){return e instanceof Cmd&&(void 0===t||e.cmd===t)};t.isDict=function isDict(e,t){return e instanceof Dict&&(void 0===t||isName(e.get("Type"),t))};t.isName=isName;t.isRefsEqual=function isRefsEqual(e,t){return e.num===t.num&&e.gen===t.gen};var r=a(2);const n=Symbol("CIRCULAR_REF");t.CIRCULAR_REF=n;const i=Symbol("EOF");t.EOF=i;let s=Object.create(null),o=Object.create(null),c=Object.create(null);class Name{constructor(e){this.name=e}static get(e){return o[e]||=new Name(e)}}t.Name=Name;class Cmd{constructor(e){this.cmd=e}static get(e){return s[e]||=new Cmd(e)}}t.Cmd=Cmd;const l=function nonSerializableClosure(){return l};class Dict{constructor(e=null){this._map=Object.create(null);this.xref=e;this.objId=null;this.suppressEncryption=!1;this.__nonSerializable__=l}assignXref(e){this.xref=e}get size(){return Object.keys(this._map).length}get(e,t,a){let r=this._map[e];if(void 0===r&&void 0!==t){r=this._map[t];void 0===r&&void 0!==a&&(r=this._map[a])}return r instanceof Ref&&this.xref?this.xref.fetch(r,this.suppressEncryption):r}async getAsync(e,t,a){let r=this._map[e];if(void 0===r&&void 0!==t){r=this._map[t];void 0===r&&void 0!==a&&(r=this._map[a])}return r instanceof Ref&&this.xref?this.xref.fetchAsync(r,this.suppressEncryption):r}getArray(e,t,a){let r=this._map[e];if(void 0===r&&void 0!==t){r=this._map[t];void 0===r&&void 0!==a&&(r=this._map[a])}r instanceof Ref&&this.xref&&(r=this.xref.fetch(r,this.suppressEncryption));if(Array.isArray(r)){r=r.slice();for(let e=0,t=r.length;e{(0,r.unreachable)("Should not call `set` on the empty dictionary.")};return(0,r.shadow)(this,"empty",e)}static merge({xref:e,dictArray:t,mergeSubDicts:a=!1}){const r=new Dict(e),n=new Map;for(const e of t)if(e instanceof Dict)for(const[t,r]of Object.entries(e._map)){let e=n.get(t);if(void 0===e){e=[];n.set(t,e)}else if(!(a&&r instanceof Dict))continue;e.push(r)}for(const[t,a]of n){if(1===a.length||!(a[0]instanceof Dict)){r._map[t]=a[0];continue}const n=new Dict(e);for(const e of a)for(const[t,a]of Object.entries(e._map))void 0===n._map[t]&&(n._map[t]=a);n.size>0&&(r._map[t]=n)}n.clear();return r.size>0?r:Dict.empty}clone(){const e=new Dict(this.xref);for(const t of this.getKeys())e.set(t,this.getRaw(t));return e}}t.Dict=Dict;class Ref{constructor(e,t){this.num=e;this.gen=t}toString(){return 0===this.gen?`${this.num}R`:`${this.num}R${this.gen}`}static fromString(e){const t=c[e];if(t)return t;const a=/^(\d+)R(\d*)$/.exec(e);return a&&"0"!==a[1]?c[e]=new Ref(parseInt(a[1]),a[2]?parseInt(a[2]):0):null}static get(e,t){const a=0===t?`${e}R`:`${e}R${t}`;return c[a]||=new Ref(e,t)}}t.Ref=Ref;class RefSet{constructor(e=null){this._set=new Set(e?._set)}has(e){return this._set.has(e.toString())}put(e){this._set.add(e.toString())}remove(e){this._set.delete(e.toString())}[Symbol.iterator](){return this._set.values()}clear(){this._set.clear()}}t.RefSet=RefSet;class RefSetCache{constructor(){this._map=new Map}get size(){return this._map.size}get(e){return this._map.get(e.toString())}has(e){return this._map.has(e.toString())}put(e,t){this._map.set(e.toString(),t)}putAlias(e,t){this._map.set(e.toString(),this.get(t))}[Symbol.iterator](){return this._map.values()}clear(){this._map.clear()}}t.RefSetCache=RefSetCache;function isName(e,t){return e instanceof Name&&(void 0===t||e.name===t)}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.BaseStream=void 0;var r=a(2);class BaseStream{constructor(){this.constructor===BaseStream&&(0,r.unreachable)("Cannot initialize BaseStream.")}get length(){(0,r.unreachable)("Abstract getter `length` accessed")}get isEmpty(){(0,r.unreachable)("Abstract getter `isEmpty` accessed")}get isDataLoaded(){return(0,r.shadow)(this,"isDataLoaded",!0)}getByte(){(0,r.unreachable)("Abstract method `getByte` called")}getBytes(e){(0,r.unreachable)("Abstract method `getBytes` called")}peekByte(){const e=this.getByte();-1!==e&&this.pos--;return e}peekBytes(e){const t=this.getBytes(e);this.pos-=t.length;return t}getUint16(){const e=this.getByte(),t=this.getByte();return-1===e||-1===t?-1:(e<<8)+t}getInt32(){return(this.getByte()<<24)+(this.getByte()<<16)+(this.getByte()<<8)+this.getByte()}getByteRange(e,t){(0,r.unreachable)("Abstract method `getByteRange` called")}getString(e){return(0,r.bytesToString)(this.getBytes(e))}skip(e){this.pos+=e||1}reset(){(0,r.unreachable)("Abstract method `reset` called")}moveStart(){(0,r.unreachable)("Abstract method `moveStart` called")}makeSubStream(e,t,a=null){(0,r.unreachable)("Abstract method `makeSubStream` called")}getBaseStreams(){return null}}t.BaseStream=BaseStream},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.NetworkPdfManager=t.LocalPdfManager=void 0;var r=a(2),n=a(7),i=a(3),s=a(9),o=a(8);class BasePdfManager{constructor(e){this.constructor===BasePdfManager&&(0,r.unreachable)("Cannot initialize BasePdfManager.");this._docBaseUrl=function parseDocBaseUrl(e){if(e){const t=(0,r.createValidAbsoluteUrl)(e);if(t)return t.href;(0,r.warn)(`Invalid absolute docBaseUrl: "${e}".`)}return null}(e.docBaseUrl);this._docId=e.docId;this._password=e.password;this.enableXfa=e.enableXfa;e.evaluatorOptions.isOffscreenCanvasSupported&&=r.FeatureTest.isOffscreenCanvasSupported;this.evaluatorOptions=e.evaluatorOptions}get docId(){return this._docId}get password(){return this._password}get docBaseUrl(){return this._docBaseUrl}get catalog(){return this.pdfDocument.catalog}ensureDoc(e,t){return this.ensure(this.pdfDocument,e,t)}ensureXRef(e,t){return this.ensure(this.pdfDocument.xref,e,t)}ensureCatalog(e,t){return this.ensure(this.pdfDocument.catalog,e,t)}getPage(e){return this.pdfDocument.getPage(e)}fontFallback(e,t){return this.pdfDocument.fontFallback(e,t)}loadXfaFonts(e,t){return this.pdfDocument.loadXfaFonts(e,t)}loadXfaImages(){return this.pdfDocument.loadXfaImages()}serializeXfaData(e){return this.pdfDocument.serializeXfaData(e)}cleanup(e=!1){return this.pdfDocument.cleanup(e)}async ensure(e,t,a){(0,r.unreachable)("Abstract method `ensure` called")}requestRange(e,t){(0,r.unreachable)("Abstract method `requestRange` called")}requestLoadedStream(e=!1){(0,r.unreachable)("Abstract method `requestLoadedStream` called")}sendProgressiveData(e){(0,r.unreachable)("Abstract method `sendProgressiveData` called")}updatePassword(e){this._password=e}terminate(e){(0,r.unreachable)("Abstract method `terminate` called")}}t.LocalPdfManager=class LocalPdfManager extends BasePdfManager{constructor(e){super(e);const t=new o.Stream(e.source);this.pdfDocument=new s.PDFDocument(this,t);this._loadedStreamPromise=Promise.resolve(t)}async ensure(e,t,a){const r=e[t];return"function"==typeof r?r.apply(e,a):r}requestRange(e,t){return Promise.resolve()}requestLoadedStream(e=!1){return this._loadedStreamPromise}terminate(e){}};t.NetworkPdfManager=class NetworkPdfManager extends BasePdfManager{constructor(e){super(e);this.streamManager=new n.ChunkedStreamManager(e.source,{msgHandler:e.handler,length:e.length,disableAutoFetch:e.disableAutoFetch,rangeChunkSize:e.rangeChunkSize});this.pdfDocument=new s.PDFDocument(this,this.streamManager.getStream())}async ensure(e,t,a){try{const r=e[t];return"function"==typeof r?r.apply(e,a):r}catch(r){if(!(r instanceof i.MissingDataException))throw r;await this.requestRange(r.begin,r.end);return this.ensure(e,t,a)}}requestRange(e,t){return this.streamManager.requestRange(e,t)}requestLoadedStream(e=!1){return this.streamManager.requestAllChunks(e)}sendProgressiveData(e){this.streamManager.onReceiveData({chunk:e})}terminate(e){this.streamManager.abort(e)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ChunkedStreamManager=t.ChunkedStream=void 0;var r=a(3),n=a(2),i=a(8);class ChunkedStream extends i.Stream{constructor(e,t,a){super(new Uint8Array(e),0,e,null);this.chunkSize=t;this._loadedChunks=new Set;this.numChunks=Math.ceil(e/t);this.manager=a;this.progressiveDataLength=0;this.lastSuccessfulEnsureByteChunk=-1}getMissingChunks(){const e=[];for(let t=0,a=this.numChunks;t=this.end?this.numChunks:Math.floor(t/this.chunkSize);for(let e=a;ethis.numChunks)&&t!==this.lastSuccessfulEnsureByteChunk){if(!this._loadedChunks.has(t))throw new r.MissingDataException(e,e+1);this.lastSuccessfulEnsureByteChunk=t}}ensureRange(e,t){if(e>=t)return;if(t<=this.progressiveDataLength)return;const a=Math.floor(e/this.chunkSize);if(a>this.numChunks)return;const n=Math.min(Math.floor((t-1)/this.chunkSize)+1,this.numChunks);for(let i=a;i=this.end)return-1;e>=this.progressiveDataLength&&this.ensureByte(e);return this.bytes[this.pos++]}getBytes(e){const t=this.bytes,a=this.pos,r=this.end;if(!e){r>this.progressiveDataLength&&this.ensureRange(a,r);return t.subarray(a,r)}let n=a+e;n>r&&(n=r);n>this.progressiveDataLength&&this.ensureRange(a,n);this.pos=n;return t.subarray(a,n)}getByteRange(e,t){e<0&&(e=0);t>this.end&&(t=this.end);t>this.progressiveDataLength&&this.ensureRange(e,t);return this.bytes.subarray(e,t)}makeSubStream(e,t,a=null){t?e+t>this.progressiveDataLength&&this.ensureRange(e,e+t):e>=this.progressiveDataLength&&this.ensureByte(e);function ChunkedStreamSubstream(){}ChunkedStreamSubstream.prototype=Object.create(this);ChunkedStreamSubstream.prototype.getMissingChunks=function(){const e=this.chunkSize,t=Math.floor(this.start/e),a=Math.floor((this.end-1)/e)+1,r=[];for(let e=t;e{const readChunk=({value:s,done:o})=>{try{if(o){const t=(0,r.arrayBuffersToBytes)(n);n=null;e(t);return}i+=s.byteLength;a.isStreamingSupported&&this.onProgress({loaded:i});n.push(s);a.read().then(readChunk,t)}catch(e){t(e)}};a.read().then(readChunk,t)})).then((t=>{this.aborted||this.onReceiveData({chunk:t,begin:e})}))}requestAllChunks(e=!1){if(!e){const e=this.stream.getMissingChunks();this._requestChunks(e)}return this._loadedStreamCapability.promise}_requestChunks(e){const t=this.currRequestId++,a=new Set;this._chunksNeededByRequest.set(t,a);for(const t of e)this.stream.hasChunk(t)||a.add(t);if(0===a.size)return Promise.resolve();const r=new n.PromiseCapability;this._promisesByRequest.set(t,r);const i=[];for(const e of a){let a=this._requestsByChunk.get(e);if(!a){a=[];this._requestsByChunk.set(e,a);i.push(e)}a.push(t)}if(i.length>0){const e=this.groupChunks(i);for(const t of e){const e=t.beginChunk*this.chunkSize,a=Math.min(t.endChunk*this.chunkSize,this.length);this.sendRequest(e,a).catch(r.reject)}}return r.promise.catch((e=>{if(!this.aborted)throw e}))}getStream(){return this.stream}requestRange(e,t){t=Math.min(t,this.length);const a=this.getBeginChunk(e),r=this.getEndChunk(t),n=[];for(let e=a;e=0&&r+1!==i){t.push({beginChunk:a,endChunk:r+1});a=i}n+1===e.length&&t.push({beginChunk:a,endChunk:i+1});r=i}return t}onProgress(e){this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize+e.loaded,total:this.length})}onReceiveData(e){const t=e.chunk,a=void 0===e.begin,r=a?this.progressiveDataLength:e.begin,n=r+t.byteLength,i=Math.floor(r/this.chunkSize),s=n0||o.push(a)}}}if(!this.disableAutoFetch&&0===this._requestsByChunk.size){let e;if(1===this.stream.numChunksLoaded){const t=this.stream.numChunks-1;this.stream.hasChunk(t)||(e=t)}else e=this.stream.nextEmptyChunk(s);Number.isInteger(e)&&this._requestChunks([e])}for(const e of o){const t=this._promisesByRequest.get(e);this._promisesByRequest.delete(e);t.resolve()}this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize,total:this.length})}onError(e){this._loadedStreamCapability.reject(e)}getBeginChunk(e){return Math.floor(e/this.chunkSize)}getEndChunk(e){return Math.floor((e-1)/this.chunkSize)+1}abort(e){this.aborted=!0;this.pdfNetworkStream?.cancelAllRequests(e);for(const t of this._promisesByRequest.values())t.reject(e)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.StringStream=t.Stream=t.NullStream=void 0;var r=a(5),n=a(2);class Stream extends r.BaseStream{constructor(e,t,a,r){super();this.bytes=e instanceof Uint8Array?e:new Uint8Array(e);this.start=t||0;this.pos=this.start;this.end=t+a||this.bytes.length;this.dict=r}get length(){return this.end-this.start}get isEmpty(){return 0===this.length}getByte(){return this.pos>=this.end?-1:this.bytes[this.pos++]}getBytes(e){const t=this.bytes,a=this.pos,r=this.end;if(!e)return t.subarray(a,r);let n=a+e;n>r&&(n=r);this.pos=n;return t.subarray(a,n)}getByteRange(e,t){e<0&&(e=0);t>this.end&&(t=this.end);return this.bytes.subarray(e,t)}reset(){this.pos=this.start}moveStart(){this.start=this.pos}makeSubStream(e,t,a=null){return new Stream(this.bytes.buffer,e,t,a)}}t.Stream=Stream;t.StringStream=class StringStream extends Stream{constructor(e){super((0,n.stringToBytes)(e))}};t.NullStream=class NullStream extends Stream{constructor(){super(new Uint8Array(0))}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Page=t.PDFDocument=void 0;var r=a(2),n=a(10),i=a(3),s=a(4),o=a(51),c=a(5),l=a(74),h=a(66),u=a(68),d=a(102),f=a(16),g=a(8),p=a(76),m=a(64),b=a(13),y=a(18),w=a(72),S=a(73),x=a(77),C=a(103);const k=[0,0,612,792];class Page{constructor({pdfManager:e,xref:t,pageIndex:a,pageDict:r,ref:n,globalIdFactory:i,fontCache:s,builtInCMapCache:o,standardFontDataCache:c,globalImageCache:l,systemFontCache:h,nonBlendModesSet:u,xfaFactory:d}){this.pdfManager=e;this.pageIndex=a;this.pageDict=r;this.xref=t;this.ref=n;this.fontCache=s;this.builtInCMapCache=o;this.standardFontDataCache=c;this.globalImageCache=l;this.systemFontCache=h;this.nonBlendModesSet=u;this.evaluatorOptions=e.evaluatorOptions;this.resourcesPromise=null;this.xfaFactory=d;const f={obj:0};this._localIdFactory=class extends i{static createObjId(){return`p${a}_${++f.obj}`}static getPageObjId(){return`p${n.toString()}`}}}_getInheritableProperty(e,t=!1){const a=(0,i.getInheritableProperty)({dict:this.pageDict,key:e,getArray:t,stopWhenFound:!1});return Array.isArray(a)?1!==a.length&&a[0]instanceof s.Dict?s.Dict.merge({xref:this.xref,dictArray:a}):a[0]:a}get content(){return this.pageDict.getArray("Contents")}get resources(){const e=this._getInheritableProperty("Resources");return(0,r.shadow)(this,"resources",e instanceof s.Dict?e:s.Dict.empty)}_getBoundingBox(e){if(this.xfaData)return this.xfaData.bbox;let t=this._getInheritableProperty(e,!0);if(Array.isArray(t)&&4===t.length){t=r.Util.normalizeRect(t);if(t[2]-t[0]>0&&t[3]-t[1]>0)return t;(0,r.warn)(`Empty, or invalid, /${e} entry.`)}return null}get mediaBox(){return(0,r.shadow)(this,"mediaBox",this._getBoundingBox("MediaBox")||k)}get cropBox(){return(0,r.shadow)(this,"cropBox",this._getBoundingBox("CropBox")||this.mediaBox)}get userUnit(){let e=this.pageDict.get("UserUnit");("number"!=typeof e||e<=0)&&(e=1);return(0,r.shadow)(this,"userUnit",e)}get view(){const{cropBox:e,mediaBox:t}=this;if(e!==t&&!(0,r.isArrayEqual)(e,t)){const a=r.Util.intersect(e,t);if(a&&a[2]-a[0]>0&&a[3]-a[1]>0)return(0,r.shadow)(this,"view",a);(0,r.warn)("Empty /CropBox and /MediaBox intersection.")}return(0,r.shadow)(this,"view",t)}get rotate(){let e=this._getInheritableProperty("Rotate")||0;e%90!=0?e=0:e>=360?e%=360:e<0&&(e=(e%360+360)%360);return(0,r.shadow)(this,"rotate",e)}_onSubStreamError(e,t){if(!this.evaluatorOptions.ignoreErrors)throw e;(0,r.warn)(`getContentStream - ignoring sub-stream (${t}): "${e}".`)}getContentStream(){return this.pdfManager.ensure(this,"content").then((e=>e instanceof c.BaseStream?e:Array.isArray(e)?new y.StreamsSequenceStream(e,this._onSubStreamError.bind(this)):new g.NullStream))}get xfaData(){return(0,r.shadow)(this,"xfaData",this.xfaFactory?{bbox:this.xfaFactory.getBoundingBox(this.pageIndex)}:null)}#t(e,t,a){for(const n of e)if(n.id){const e=s.Ref.fromString(n.id);if(!e){(0,r.warn)(`A non-linked annotation cannot be modified: ${n.id}`);continue}if(n.deleted){t.put(e);continue}a?.put(e);n.ref=e;delete n.id}}async saveNewAnnotations(e,t,a,r){if(this.xfaFactory)throw new Error("XFA: Cannot save new annotations.");const i=new b.PartialEvaluator({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}),o=new s.RefSet,c=new s.RefSet;this.#t(a,o,c);const l=this.pageDict,h=this.annotations.filter((e=>!(e instanceof s.Ref&&o.has(e)))),u=await n.AnnotationFactory.saveNewAnnotations(i,t,a,r);for(const{ref:e}of u.annotations)e instanceof s.Ref&&!c.has(e)&&h.push(e);const d=l.get("Annots");l.set("Annots",h);const f=[];await(0,S.writeObject)(this.ref,l,f,this.xref);d&&l.set("Annots",d);const g=u.dependencies;g.push({ref:this.ref,data:f.join("")},...u.annotations);return g}save(e,t,a){const n=new b.PartialEvaluator({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions});return this._parsedAnnotations.then((function(e){const i=[];for(const s of e)s.mustBePrinted(a)&&i.push(s.save(n,t,a).catch((function(e){(0,r.warn)(`save - ignoring annotation data during "${t.name}" task: "${e}".`);return null})));return Promise.all(i).then((function(e){return e.filter((e=>!!e))}))}))}loadResources(e){this.resourcesPromise||(this.resourcesPromise=this.pdfManager.ensure(this,"resources"));return this.resourcesPromise.then((()=>new p.ObjectLoader(this.resources,e,this.xref).load()))}getOperatorList({handler:e,sink:t,task:a,intent:o,cacheKey:c,annotationStorage:l=null}){const h=this.getContentStream(),u=this.loadResources(["ColorSpace","ExtGState","Font","Pattern","Properties","Shading","XObject"]),d=new b.PartialEvaluator({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}),f=this.xfaFactory?null:(0,i.getNewAnnotationsMap)(l);let g=null,p=Promise.resolve(null);if(f){const e=f.get(this.pageIndex);if(e){const t=this.pdfManager.ensureDoc("annotationGlobals");let i;const o=new Set;for(const{bitmapId:t,bitmap:a}of e)!t||a||o.has(t)||o.add(t);const{isOffscreenCanvasSupported:c}=this.evaluatorOptions;if(o.size>0){const t=e.slice();for(const[e,a]of l)e.startsWith(r.AnnotationEditorPrefix)&&a.bitmap&&o.has(a.bitmapId)&&t.push(a);i=n.AnnotationFactory.generateImages(t,this.xref,c)}else i=n.AnnotationFactory.generateImages(e,this.xref,c);g=new s.RefSet;this.#t(e,g,null);p=t.then((t=>t?n.AnnotationFactory.printNewAnnotations(t,d,a,e,i):null))}}const y=Promise.all([h,u]).then((([r])=>{const n=new m.OperatorList(o,t);e.send("StartRenderPage",{transparency:d.hasBlendModes(this.resources,this.nonBlendModesSet),pageIndex:this.pageIndex,cacheKey:c});return d.getOperatorList({stream:r,task:a,resources:this.resources,operatorList:n}).then((function(){return n}))}));return Promise.all([y,this._parsedAnnotations,p]).then((function([e,t,n]){if(n){t=t.filter((e=>!(e.ref&&g.has(e.ref))));for(let e=0,a=n.length;ee.ref&&(0,s.isRefsEqual)(e.ref,r.refToReplace)));if(i>=0){t.splice(i,1,r);n.splice(e--,1);a--}}}t=t.concat(n)}if(0===t.length||o&r.RenderingIntentFlag.ANNOTATIONS_DISABLE){e.flush(!0);return{length:e.totalLength}}const i=!!(o&r.RenderingIntentFlag.ANNOTATIONS_FORMS),c=!!(o&r.RenderingIntentFlag.ANY),h=!!(o&r.RenderingIntentFlag.DISPLAY),u=!!(o&r.RenderingIntentFlag.PRINT),f=[];for(const e of t)(c||h&&e.mustBeViewed(l,i)||u&&e.mustBePrinted(l))&&f.push(e.getOperatorList(d,a,o,i,l).catch((function(e){(0,r.warn)(`getOperatorList - ignoring annotation data during "${a.name}" task: "${e}".`);return{opList:null,separateForm:!1,separateCanvas:!1}})));return Promise.all(f).then((function(t){let a=!1,r=!1;for(const{opList:n,separateForm:i,separateCanvas:s}of t){e.addOpList(n);a||=i;r||=s}e.flush(!0,{form:a,canvas:r});return{length:e.totalLength}}))}))}extractTextContent({handler:e,task:t,includeMarkedContent:a,disableNormalization:r,sink:n}){const i=this.getContentStream(),s=this.loadResources(["ExtGState","Font","Properties","XObject"]);return Promise.all([i,s]).then((([i])=>new b.PartialEvaluator({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}).getTextContent({stream:i,task:t,resources:this.resources,includeMarkedContent:a,disableNormalization:r,sink:n,viewBox:this.view})))}async getStructTree(){const e=await this.pdfManager.ensureCatalog("structTreeRoot");if(!e)return null;await this._parsedAnnotations;return(await this.pdfManager.ensure(this,"_parseStructTree",[e])).serializable}_parseStructTree(e){const t=new w.StructTreePage(e,this.pageDict);t.parse(this.ref);return t}async getAnnotationsData(e,t,a){const n=await this._parsedAnnotations;if(0===n.length)return n;const i=[],s=[];let o;const c=!!(a&r.RenderingIntentFlag.ANY),l=!!(a&r.RenderingIntentFlag.DISPLAY),h=!!(a&r.RenderingIntentFlag.PRINT);for(const a of n){const n=c||l&&a.viewable;(n||h&&a.printable)&&i.push(a.data);if(a.hasTextContent&&n){o||=new b.PartialEvaluator({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions});s.push(a.extractTextContent(o,t,[-1/0,-1/0,1/0,1/0]).catch((function(e){(0,r.warn)(`getAnnotationsData - ignoring textContent during "${t.name}" task: "${e}".`)})))}}await Promise.all(s);return i}get annotations(){const e=this._getInheritableProperty("Annots");return(0,r.shadow)(this,"annotations",Array.isArray(e)?e:[])}get _parsedAnnotations(){const e=this.pdfManager.ensure(this,"annotations").then((async e=>{if(0===e.length)return e;const t=await this.pdfManager.ensureDoc("annotationGlobals");if(!t)return[];const a=[];for(const i of e)a.push(n.AnnotationFactory.create(this.xref,i,t,this._localIdFactory,!1,this.ref).catch((function(e){(0,r.warn)(`_parsedAnnotations: "${e}".`);return null})));const i=[];let s;for(const e of await Promise.all(a))e&&(e instanceof n.PopupAnnotation?(s||=[]).push(e):i.push(e));s&&i.push(...s);return i}));return(0,r.shadow)(this,"_parsedAnnotations",e)}get jsActions(){const e=(0,i.collectActions)(this.xref,this.pageDict,r.PageActionEventType);return(0,r.shadow)(this,"jsActions",e)}}t.Page=Page;const v=new Uint8Array([37,80,68,70,45]),F=new Uint8Array([115,116,97,114,116,120,114,101,102]),O=new Uint8Array([101,110,100,111,98,106]);function find(e,t,a=1024,r=!1){const n=t.length,i=e.peekBytes(a),s=i.length-n;if(s<=0)return!1;if(r){const a=n-1;let r=i.length-1;for(;r>=a;){let s=0;for(;s=n){e.pos+=r-a;return!0}r--}}else{let a=0;for(;a<=s;){let r=0;for(;r=n){e.pos+=a;return!0}a++}}return!1}t.PDFDocument=class PDFDocument{constructor(e,t){if(t.length<=0)throw new r.InvalidPDFException("The PDF file is empty, i.e. its size is zero bytes.");this.pdfManager=e;this.stream=t;this.xref=new C.XRef(t,e);this._pagePromises=new Map;this._version=null;const a={font:0};this._globalIdFactory=class{static getDocId(){return`g_${e.docId}`}static createFontId(){return"f"+ ++a.font}static createObjId(){(0,r.unreachable)("Abstract method `createObjId` called.")}static getPageObjId(){(0,r.unreachable)("Abstract method `getPageObjId` called.")}}}parse(e){this.xref.parse(e);this.catalog=new h.Catalog(this.pdfManager,this.xref)}get linearization(){let e=null;try{e=f.Linearization.create(this.stream)}catch(e){if(e instanceof i.MissingDataException)throw e;(0,r.info)(e)}return(0,r.shadow)(this,"linearization",e)}get startXRef(){const e=this.stream;let t=0;if(this.linearization){e.reset();find(e,O)&&(t=e.pos+6-e.start)}else{const a=1024,r=F.length;let n=!1,s=e.end;for(;!n&&s>0;){s-=a-r;s<0&&(s=0);e.pos=s;n=find(e,F,a,!0)}if(n){e.skip(9);let a;do{a=e.getByte()}while((0,i.isWhiteSpace)(a));let r="";for(;a>=32&&a<=57;){r+=String.fromCharCode(a);a=e.getByte()}t=parseInt(r,10);isNaN(t)&&(t=0)}}return(0,r.shadow)(this,"startXRef",t)}checkHeader(){const e=this.stream;e.reset();if(!find(e,v))return;e.moveStart();e.skip(v.length);let t,a="";for(;(t=e.getByte())>32&&a.length<7;)a+=String.fromCharCode(t);i.PDF_VERSION_REGEXP.test(a)?this._version=a:(0,r.warn)(`Invalid PDF header version: ${a}`)}parseStartXRef(){this.xref.setStartXRef(this.startXRef)}get numPages(){let e=0;e=this.catalog.hasActualNumPages?this.catalog.numPages:this.xfaFactory?this.xfaFactory.getNumPages():this.linearization?this.linearization.numPages:this.catalog.numPages;return(0,r.shadow)(this,"numPages",e)}_hasOnlyDocumentSignatures(e,t=0){return!!Array.isArray(e)&&e.every((e=>{if(!((e=this.xref.fetchIfRef(e))instanceof s.Dict))return!1;if(e.has("Kids")){if(++t>10){(0,r.warn)("_hasOnlyDocumentSignatures: maximum recursion depth reached");return!1}return this._hasOnlyDocumentSignatures(e.get("Kids"),t)}const a=(0,s.isName)(e.get("FT"),"Sig"),n=e.get("Rect"),i=Array.isArray(n)&&n.every((e=>0===e));return a&&i}))}get _xfaStreams(){const e=this.catalog.acroForm;if(!e)return null;const t=e.get("XFA"),a={"xdp:xdp":"",template:"",datasets:"",config:"",connectionSet:"",localeSet:"",stylesheet:"","/xdp:xdp":""};if(t instanceof c.BaseStream&&!t.isEmpty){a["xdp:xdp"]=t;return a}if(!Array.isArray(t)||0===t.length)return null;for(let e=0,r=t.length;e{y.set(e,t)}));const w=[];for(const[e,a]of y){const o=a.get("FontDescriptor");if(!(o instanceof s.Dict))continue;let c=o.get("FontFamily");c=c.replaceAll(/[ ]+(\d)/g,"$1");const l={fontFamily:c,fontWeight:o.get("FontWeight"),italicAngle:-o.get("ItalicAngle")};(0,i.validateCSSFont)(l)&&w.push(u.handleSetFont(n,[s.Name.get(e),1],null,d,t,g,null,l).catch((function(e){(0,r.warn)(`loadXfaFonts: "${e}".`);return null})))}await Promise.all(w);const S=this.xfaFactory.setFonts(f);if(!S)return;h.ignoreErrors=!0;w.length=0;f.length=0;const x=new Set;for(const e of S)(0,o.getXfaFontName)(`${e}-Regular`)||x.add(e);x.size&&S.push("PdfJS-Fallback");for(const e of S)if(!x.has(e))for(const a of[{name:"Regular",fontWeight:400,italicAngle:0},{name:"Bold",fontWeight:700,italicAngle:0},{name:"Italic",fontWeight:400,italicAngle:12},{name:"BoldItalic",fontWeight:700,italicAngle:12}]){const i=`${e}-${a.name}`,c=(0,o.getXfaFontDict)(i);w.push(u.handleSetFont(n,[s.Name.get(i),1],null,d,t,g,c,{fontFamily:e,fontWeight:a.fontWeight,italicAngle:a.italicAngle}).catch((function(e){(0,r.warn)(`loadXfaFonts: "${e}".`);return null})))}await Promise.all(w);this.xfaFactory.appendFonts(f,x)}async serializeXfaData(e){return this.xfaFactory?this.xfaFactory.serializeData(e):null}get version(){return this.catalog.version||this._version}get formInfo(){const e={hasFields:!1,hasAcroForm:!1,hasXfa:!1,hasSignatures:!1},t=this.catalog.acroForm;if(!t)return(0,r.shadow)(this,"formInfo",e);try{const a=t.get("Fields"),r=Array.isArray(a)&&a.length>0;e.hasFields=r;const n=t.get("XFA");e.hasXfa=Array.isArray(n)&&n.length>0||n instanceof c.BaseStream&&!n.isEmpty;const i=!!(1&t.get("SigFlags")),s=i&&this._hasOnlyDocumentSignatures(a);e.hasAcroForm=r&&!s;e.hasSignatures=i}catch(e){if(e instanceof i.MissingDataException)throw e;(0,r.warn)(`Cannot fetch form information: "${e}".`)}return(0,r.shadow)(this,"formInfo",e)}get documentInfo(){const e={PDFFormatVersion:this.version,Language:this.catalog.lang,EncryptFilterName:this.xref.encrypt?this.xref.encrypt.filterName:null,IsLinearized:!!this.linearization,IsAcroFormPresent:this.formInfo.hasAcroForm,IsXFAPresent:this.formInfo.hasXfa,IsCollectionPresent:!!this.catalog.collection,IsSignaturesPresent:this.formInfo.hasSignatures};let t;try{t=this.xref.trailer.get("Info")}catch(e){if(e instanceof i.MissingDataException)throw e;(0,r.info)("The document information dictionary is invalid.")}if(!(t instanceof s.Dict))return(0,r.shadow)(this,"documentInfo",e);for(const a of t.getKeys()){const n=t.get(a);switch(a){case"Title":case"Author":case"Subject":case"Keywords":case"Creator":case"Producer":case"CreationDate":case"ModDate":if("string"==typeof n){e[a]=(0,r.stringToPDFString)(n);continue}break;case"Trapped":if(n instanceof s.Name){e[a]=n;continue}break;default:let t;switch(typeof n){case"string":t=(0,r.stringToPDFString)(n);break;case"number":case"boolean":t=n;break;default:n instanceof s.Name&&(t=n)}if(void 0===t){(0,r.warn)(`Bad value, for custom key "${a}", in Info: ${n}.`);continue}e.Custom||(e.Custom=Object.create(null));e.Custom[a]=t;continue}(0,r.warn)(`Bad value, for key "${a}", in Info: ${n}.`)}return(0,r.shadow)(this,"documentInfo",e)}get fingerprints(){function validate(e){return"string"==typeof e&&e.length>0&&"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"!==e}function hexString(e){const t=[];for(const a of e){const e=a.toString(16);t.push(e.padStart(2,"0"))}return t.join("")}const e=this.xref.trailer.get("ID");let t,a;if(Array.isArray(e)&&validate(e[0])){t=(0,r.stringToBytes)(e[0]);e[1]!==e[0]&&validate(e[1])&&(a=(0,r.stringToBytes)(e[1]))}else t=(0,l.calculateMD5)(this.stream.getByteRange(0,1024),0,1024);return(0,r.shadow)(this,"fingerprints",[hexString(t),a?hexString(a):null])}async _getLinearizationPage(e){const{catalog:t,linearization:a,xref:n}=this,i=s.Ref.get(a.objectNumberFirst,0);try{const e=await n.fetchAsync(i);if(e instanceof s.Dict){let a=e.getRaw("Type");a instanceof s.Ref&&(a=await n.fetchAsync(a));if((0,s.isName)(a,"Page")||!e.has("Type")&&!e.has("Kids")){t.pageKidsCountCache.has(i)||t.pageKidsCountCache.put(i,1);t.pageIndexCache.has(i)||t.pageIndexCache.put(i,0);return[e,i]}}throw new r.FormatError("The Linearization dictionary doesn't point to a valid Page dictionary.")}catch(a){(0,r.warn)(`_getLinearizationPage: "${a.message}".`);return t.getPageDict(e)}}getPage(e){const t=this._pagePromises.get(e);if(t)return t;const{catalog:a,linearization:r,xfaFactory:n}=this;let i;i=n?Promise.resolve([s.Dict.empty,null]):r?.pageFirst===e?this._getLinearizationPage(e):a.getPageDict(e);i=i.then((([t,r])=>new Page({pdfManager:this.pdfManager,xref:this.xref,pageIndex:e,pageDict:t,ref:r,globalIdFactory:this._globalIdFactory,fontCache:a.fontCache,builtInCMapCache:a.builtInCMapCache,standardFontDataCache:a.standardFontDataCache,globalImageCache:a.globalImageCache,systemFontCache:a.systemFontCache,nonBlendModesSet:a.nonBlendModesSet,xfaFactory:n})));this._pagePromises.set(e,i);return i}async checkFirstPage(e=!1){if(!e)try{await this.getPage(0)}catch(e){if(e instanceof i.XRefEntryException){this._pagePromises.delete(0);await this.cleanup();throw new i.XRefParseException}}}async checkLastPage(e=!1){const{catalog:t,pdfManager:a}=this;t.setActualNumPages();let n;try{await Promise.all([a.ensureDoc("xfaFactory"),a.ensureDoc("linearization"),a.ensureCatalog("numPages")]);if(this.xfaFactory)return;n=this.linearization?this.linearization.numPages:t.numPages;if(!Number.isInteger(n))throw new r.FormatError("Page count is not an integer.");if(n<=1)return;await this.getPage(n-1)}catch(s){this._pagePromises.delete(n-1);await this.cleanup();if(s instanceof i.XRefEntryException&&!e)throw new i.XRefParseException;(0,r.warn)(`checkLastPage - invalid /Pages tree /Count: ${n}.`);let o;try{o=await t.getAllPageDicts(e)}catch(a){if(a instanceof i.XRefEntryException&&!e)throw new i.XRefParseException;t.setActualNumPages(1);return}for(const[e,[r,n]]of o){let i;if(r instanceof Error){i=Promise.reject(r);i.catch((()=>{}))}else i=Promise.resolve(new Page({pdfManager:a,xref:this.xref,pageIndex:e,pageDict:r,ref:n,globalIdFactory:this._globalIdFactory,fontCache:t.fontCache,builtInCMapCache:t.builtInCMapCache,standardFontDataCache:t.standardFontDataCache,globalImageCache:t.globalImageCache,systemFontCache:t.systemFontCache,nonBlendModesSet:t.nonBlendModesSet,xfaFactory:null}));this._pagePromises.set(e,i)}t.setActualNumPages(o.size)}}fontFallback(e,t){return this.catalog.fontFallback(e,t)}async cleanup(e=!1){return this.catalog?this.catalog.cleanup(e):(0,u.clearGlobalCaches)()}#a(e,t,a,i){const s=this.xref.fetchIfRef(t);if(s.has("T")){const t=(0,r.stringToPDFString)(s.get("T"));e=""===e?t:`${e}.${t}`}a.has(e)||a.set(e,[]);a.get(e).push(n.AnnotationFactory.create(this.xref,t,i,this._localIdFactory,!0,null).then((e=>e?.getFieldObject())).catch((function(e){(0,r.warn)(`#collectFieldObjects: "${e}".`);return null})));if(s.has("Kids"))for(const t of s.get("Kids"))this.#a(e,t,a,i)}get fieldObjects(){if(!this.formInfo.hasFields)return(0,r.shadow)(this,"fieldObjects",Promise.resolve(null));const e=this.pdfManager.ensureDoc("annotationGlobals").then((async e=>{if(!e)return null;const t=Object.create(null),a=new Map;for(const t of this.catalog.acroForm.get("Fields"))this.#a("",t,a,e);const r=[];for(const[e,n]of a)r.push(Promise.all(n).then((a=>{(a=a.filter((e=>!!e))).length>0&&(t[e]=a)})));await Promise.all(r);return t}));return(0,r.shadow)(this,"fieldObjects",e)}get hasJSActions(){const e=this.pdfManager.ensureDoc("_parseHasJSActions");return(0,r.shadow)(this,"hasJSActions",e)}async _parseHasJSActions(){const[e,t]=await Promise.all([this.pdfManager.ensureCatalog("jsActions"),this.pdfManager.ensureDoc("fieldObjects")]);return!!e||!!t&&Object.values(t).some((e=>e.some((e=>null!==e.actions))))}get calculationOrderIds(){const e=this.catalog.acroForm;if(!e?.has("CO"))return(0,r.shadow)(this,"calculationOrderIds",null);const t=e.get("CO");if(!Array.isArray(t)||0===t.length)return(0,r.shadow)(this,"calculationOrderIds",null);const a=[];for(const e of t)e instanceof s.Ref&&a.push(e.toString());return 0===a.length?(0,r.shadow)(this,"calculationOrderIds",null):(0,r.shadow)(this,"calculationOrderIds",a)}get annotationGlobals(){return(0,r.shadow)(this,"annotationGlobals",n.AnnotationFactory.createGlobals(this.pdfManager))}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.PopupAnnotation=t.MarkupAnnotation=t.AnnotationFactory=t.AnnotationBorderStyle=t.Annotation=void 0;t.getQuadPoints=getQuadPoints;var r=a(2),n=a(3),i=a(11),s=a(4),o=a(8),c=a(5),l=a(60),h=a(66),u=a(12),d=a(69),f=a(26),g=a(76),p=a(64),m=a(73),b=a(77);t.AnnotationFactory=class AnnotationFactory{static createGlobals(e){return Promise.all([e.ensureCatalog("acroForm"),e.ensureDoc("xfaDatasets"),e.ensureCatalog("structTreeRoot"),e.ensureCatalog("baseUrl"),e.ensureCatalog("attachments")]).then((([t,a,r,n,i])=>({pdfManager:e,acroForm:t instanceof s.Dict?t:s.Dict.empty,xfaDatasets:a,structTreeRoot:r,baseUrl:n,attachments:i})),(e=>{(0,r.warn)(`createGlobals: "${e}".`);return null}))}static async create(e,t,a,r,n,i){const s=n?await this._getPageIndex(e,t,a.pdfManager):null;return a.pdfManager.ensure(this,"_create",[e,t,a,r,n,s,i])}static _create(e,t,a,i,o=!1,c=null,l=null){const h=e.fetchIfRef(t);if(!(h instanceof s.Dict))return;const{acroForm:u,pdfManager:d}=a,f=t instanceof s.Ref?t.toString():`annot_${i.createObjId()}`;let g=h.get("Subtype");g=g instanceof s.Name?g.name:null;const p={xref:e,ref:t,dict:h,subtype:g,id:f,annotationGlobals:a,collectFields:o,needAppearances:!o&&!0===u.get("NeedAppearances"),pageIndex:c,evaluatorOptions:d.evaluatorOptions,pageRef:l};switch(g){case"Link":return new LinkAnnotation(p);case"Text":return new TextAnnotation(p);case"Widget":let e=(0,n.getInheritableProperty)({dict:h,key:"FT"});e=e instanceof s.Name?e.name:null;switch(e){case"Tx":return new TextWidgetAnnotation(p);case"Btn":return new ButtonWidgetAnnotation(p);case"Ch":return new ChoiceWidgetAnnotation(p);case"Sig":return new SignatureWidgetAnnotation(p)}(0,r.warn)(`Unimplemented widget field type "${e}", falling back to base field type.`);return new WidgetAnnotation(p);case"Popup":return new PopupAnnotation(p);case"FreeText":return new FreeTextAnnotation(p);case"Line":return new LineAnnotation(p);case"Square":return new SquareAnnotation(p);case"Circle":return new CircleAnnotation(p);case"PolyLine":return new PolylineAnnotation(p);case"Polygon":return new PolygonAnnotation(p);case"Caret":return new CaretAnnotation(p);case"Ink":return new InkAnnotation(p);case"Highlight":return new HighlightAnnotation(p);case"Underline":return new UnderlineAnnotation(p);case"Squiggly":return new SquigglyAnnotation(p);case"StrikeOut":return new StrikeOutAnnotation(p);case"Stamp":return new StampAnnotation(p);case"FileAttachment":return new FileAttachmentAnnotation(p);default:o||(g?(0,r.warn)(`Unimplemented annotation type "${g}", falling back to base annotation.`):(0,r.warn)("Annotation is missing the required /Subtype."));return new Annotation(p)}}static async _getPageIndex(e,t,a){try{const n=await e.fetchIfRefAsync(t);if(!(n instanceof s.Dict))return-1;const i=n.getRaw("P");if(i instanceof s.Ref)try{return await a.ensureCatalog("getPageIndex",[i])}catch(e){(0,r.info)(`_getPageIndex -- not a valid page reference: "${e}".`)}if(n.has("Kids"))return-1;const o=await a.ensureDoc("numPages");for(let e=0;ee/255))}function getQuadPoints(e,t){const a=e.getArray("QuadPoints");if(!Array.isArray(a)||0===a.length||a.length%8>0)return null;const r=[];for(let e=0,n=a.length/8;et[2]||st[3]))return null;r.push([{x:n,y:o},{x:i,y:o},{x:n,y:s},{x:i,y:s}])}return r}function getTransformMatrix(e,t,a){const[n,i,s,o]=r.Util.getAxialAlignedBoundingBox(t,a);if(n===s||i===o)return[1,0,0,1,e[0],e[1]];const c=(e[2]-e[0])/(s-n),l=(e[3]-e[1])/(o-i);return[c,0,0,l,e[0]-n*c,e[1]-i*l]}class Annotation{constructor(e){const{dict:t,xref:a,annotationGlobals:i}=e;this.setTitle(t.get("T"));this.setContents(t.get("Contents"));this.setModificationDate(t.get("M"));this.setFlags(t.get("F"));this.setRectangle(t.getArray("Rect"));this.setColor(t.getArray("C"));this.setBorderStyle(t);this.setAppearance(t);this.setOptionalContent(t);const o=t.get("MK");this.setBorderAndBackgroundColors(o);this.setRotation(o,t);this.ref=e.ref instanceof s.Ref?e.ref:null;this._streams=[];this.appearance&&this._streams.push(this.appearance);const c=!!(this.flags&r.AnnotationFlag.LOCKED),l=!!(this.flags&r.AnnotationFlag.LOCKEDCONTENTS);if(i.structTreeRoot){let a=t.get("StructParent");a=Number.isInteger(a)&&a>=0?a:-1;i.structTreeRoot.addAnnotationIdToPage(e.pageRef,a)}this.data={annotationFlags:this.flags,borderStyle:this.borderStyle,color:this.color,backgroundColor:this.backgroundColor,borderColor:this.borderColor,rotation:this.rotation,contentsObj:this._contents,hasAppearance:!!this.appearance,id:e.id,modificationDate:this.modificationDate,rect:this.rectangle,subtype:e.subtype,hasOwnCanvas:!1,noRotate:!!(this.flags&r.AnnotationFlag.NOROTATE),noHTML:c&&l};if(e.collectFields){const i=t.get("Kids");if(Array.isArray(i)){const e=[];for(const t of i)t instanceof s.Ref&&e.push(t.toString());0!==e.length&&(this.data.kidIds=e)}this.data.actions=(0,n.collectActions)(a,t,r.AnnotationActionEventType);this.data.fieldName=this._constructFieldName(t);this.data.pageIndex=e.pageIndex}this._isOffscreenCanvasSupported=e.evaluatorOptions.isOffscreenCanvasSupported;this._fallbackFontDict=null;this._needAppearances=!1}_hasFlag(e,t){return!!(e&t)}_isViewable(e){return!this._hasFlag(e,r.AnnotationFlag.INVISIBLE)&&!this._hasFlag(e,r.AnnotationFlag.NOVIEW)}_isPrintable(e){return this._hasFlag(e,r.AnnotationFlag.PRINT)&&!this._hasFlag(e,r.AnnotationFlag.HIDDEN)&&!this._hasFlag(e,r.AnnotationFlag.INVISIBLE)}mustBeViewed(e,t){const a=e?.get(this.data.id)?.noView;return void 0!==a?!a:this.viewable&&!this._hasFlag(this.flags,r.AnnotationFlag.HIDDEN)}mustBePrinted(e){const t=e?.get(this.data.id)?.noPrint;return void 0!==t?!t:this.printable}get viewable(){return null!==this.data.quadPoints&&(0===this.flags||this._isViewable(this.flags))}get printable(){return null!==this.data.quadPoints&&(0!==this.flags&&this._isPrintable(this.flags))}_parseStringHelper(e){const t="string"==typeof e?(0,r.stringToPDFString)(e):"";return{str:t,dir:t&&"rtl"===(0,l.bidi)(t).dir?"rtl":"ltr"}}setDefaultAppearance(e){const{dict:t,annotationGlobals:a}=e,r=(0,n.getInheritableProperty)({dict:t,key:"DA"})||a.acroForm.get("DA");this._defaultAppearance="string"==typeof r?r:"";this.data.defaultAppearanceData=(0,i.parseDefaultAppearance)(this._defaultAppearance)}setTitle(e){this._title=this._parseStringHelper(e)}setContents(e){this._contents=this._parseStringHelper(e)}setModificationDate(e){this.modificationDate="string"==typeof e?e:null}setFlags(e){this.flags=Number.isInteger(e)&&e>0?e:0}hasFlag(e){return this._hasFlag(this.flags,e)}setRectangle(e){this.rectangle=Array.isArray(e)&&4===e.length?r.Util.normalizeRect(e):[0,0,0,0]}setColor(e){this.color=getRgbColor(e)}setLineEndings(e){this.lineEndings=["None","None"];if(Array.isArray(e)&&2===e.length)for(let t=0;t<2;t++){const a=e[t];if(a instanceof s.Name)switch(a.name){case"None":continue;case"Square":case"Circle":case"Diamond":case"OpenArrow":case"ClosedArrow":case"Butt":case"ROpenArrow":case"RClosedArrow":case"Slash":this.lineEndings[t]=a.name;continue}(0,r.warn)(`Ignoring invalid lineEnding: ${a}`)}}setRotation(e,t){this.rotation=0;let a=e instanceof s.Dict?e.get("R")||0:t.get("Rotate")||0;if(Number.isInteger(a)&&0!==a){a%=360;a<0&&(a+=360);a%90==0&&(this.rotation=a)}}setBorderAndBackgroundColors(e){if(e instanceof s.Dict){this.borderColor=getRgbColor(e.getArray("BC"),null);this.backgroundColor=getRgbColor(e.getArray("BG"),null)}else this.borderColor=this.backgroundColor=null}setBorderStyle(e){this.borderStyle=new AnnotationBorderStyle;if(e instanceof s.Dict)if(e.has("BS")){const t=e.get("BS"),a=t.get("Type");if(!a||(0,s.isName)(a,"Border")){this.borderStyle.setWidth(t.get("W"),this.rectangle);this.borderStyle.setStyle(t.get("S"));this.borderStyle.setDashArray(t.getArray("D"))}}else if(e.has("Border")){const t=e.getArray("Border");if(Array.isArray(t)&&t.length>=3){this.borderStyle.setHorizontalCornerRadius(t[0]);this.borderStyle.setVerticalCornerRadius(t[1]);this.borderStyle.setWidth(t[2],this.rectangle);4===t.length&&this.borderStyle.setDashArray(t[3],!0)}}else this.borderStyle.setWidth(0)}setAppearance(e){this.appearance=null;const t=e.get("AP");if(!(t instanceof s.Dict))return;const a=t.get("N");if(a instanceof c.BaseStream){this.appearance=a;return}if(!(a instanceof s.Dict))return;const r=e.get("AS");if(!(r instanceof s.Name&&a.has(r.name)))return;const n=a.get(r.name);n instanceof c.BaseStream&&(this.appearance=n)}setOptionalContent(e){this.oc=null;const t=e.get("OC");t instanceof s.Name?(0,r.warn)("setOptionalContent: Support for /Name-entry is not implemented."):t instanceof s.Dict&&(this.oc=t)}loadResources(e,t){return t.dict.getAsync("Resources").then((t=>{if(!t)return;return new g.ObjectLoader(t,e,t.xref).load().then((function(){return t}))}))}async getOperatorList(e,t,a,n,i){const c=this.data;let l=this.appearance;const h=!!(this.data.hasOwnCanvas&&a&r.RenderingIntentFlag.DISPLAY);if(!l){if(!h)return{opList:new p.OperatorList,separateForm:!1,separateCanvas:!1};l=new o.StringStream("");l.dict=new s.Dict}const u=l.dict,d=await this.loadResources(["ExtGState","ColorSpace","Pattern","Shading","XObject","Font"],l),f=u.getArray("BBox")||[0,0,1,1],g=u.getArray("Matrix")||[1,0,0,1,0,0],m=getTransformMatrix(c.rect,f,g),b=new p.OperatorList;let y;this.oc&&(y=await e.parseMarkedContentProps(this.oc,null));void 0!==y&&b.addOp(r.OPS.beginMarkedContentProps,["OC",y]);b.addOp(r.OPS.beginAnnotation,[c.id,c.rect,m,g,h]);await e.getOperatorList({stream:l,task:t,resources:d,operatorList:b,fallbackFontDict:this._fallbackFontDict});b.addOp(r.OPS.endAnnotation,[]);void 0!==y&&b.addOp(r.OPS.endMarkedContent,[]);this.reset();return{opList:b,separateForm:!1,separateCanvas:h}}async save(e,t,a){return null}get hasTextContent(){return!1}async extractTextContent(e,t,a){if(!this.appearance)return;const n=await this.loadResources(["ExtGState","Font","Properties","XObject"],this.appearance),i=[],s=[];let o=null;const c={desiredSize:Math.Infinity,ready:!0,enqueue(e,t){for(const t of e.items)if(void 0!==t.str){o||=t.transform.slice(-2);s.push(t.str);if(t.hasEOL){i.push(s.join(""));s.length=0}}}};await e.getTextContent({stream:this.appearance,task:t,resources:n,includeMarkedContent:!0,sink:c,viewBox:a});this.reset();s.length&&i.push(s.join(""));if(i.length>1||i[0]){const e=this.appearance.dict,t=e.getArray("BBox")||[0,0,1,1],a=e.getArray("Matrix")||[1,0,0,1,0,0],n=this.data.rect,s=getTransformMatrix(n,t,a);s[4]-=n[0];s[5]-=n[1];o=r.Util.applyTransform(o,s);o=r.Util.applyTransform(o,a);this.data.textPosition=o;this.data.textContent=i}}getFieldObject(){return this.data.kidIds?{id:this.data.id,actions:this.data.actions,name:this.data.fieldName,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,type:"",kidIds:this.data.kidIds,page:this.data.pageIndex,rotation:this.rotation}:null}reset(){for(const e of this._streams)e.reset()}_constructFieldName(e){if(!e.has("T")&&!e.has("Parent")){(0,r.warn)("Unknown field name, falling back to empty field name.");return""}if(!e.has("Parent"))return(0,r.stringToPDFString)(e.get("T"));const t=[];e.has("T")&&t.unshift((0,r.stringToPDFString)(e.get("T")));let a=e;const n=new s.RefSet;e.objId&&n.put(e.objId);for(;a.has("Parent");){a=a.get("Parent");if(!(a instanceof s.Dict)||a.objId&&n.has(a.objId))break;a.objId&&n.put(a.objId);a.has("T")&&t.unshift((0,r.stringToPDFString)(a.get("T")))}return t.join(".")}}t.Annotation=Annotation;class AnnotationBorderStyle{constructor(){this.width=1;this.style=r.AnnotationBorderStyleType.SOLID;this.dashArray=[3];this.horizontalCornerRadius=0;this.verticalCornerRadius=0}setWidth(e,t=[0,0,0,0]){if(e instanceof s.Name)this.width=0;else if("number"==typeof e){if(e>0){const a=(t[2]-t[0])/2,n=(t[3]-t[1])/2;if(a>0&&n>0&&(e>a||e>n)){(0,r.warn)(`AnnotationBorderStyle.setWidth - ignoring width: ${e}`);e=1}}this.width=e}}setStyle(e){if(e instanceof s.Name)switch(e.name){case"S":this.style=r.AnnotationBorderStyleType.SOLID;break;case"D":this.style=r.AnnotationBorderStyleType.DASHED;break;case"B":this.style=r.AnnotationBorderStyleType.BEVELED;break;case"I":this.style=r.AnnotationBorderStyleType.INSET;break;case"U":this.style=r.AnnotationBorderStyleType.UNDERLINE}}setDashArray(e,t=!1){if(Array.isArray(e)&&e.length>0){let a=!0,r=!0;for(const t of e){if(!(+t>=0)){a=!1;break}t>0&&(r=!1)}if(a&&!r){this.dashArray=e;t&&this.setStyle(s.Name.get("D"))}else this.width=0}else e&&(this.width=0)}setHorizontalCornerRadius(e){Number.isInteger(e)&&(this.horizontalCornerRadius=e)}setVerticalCornerRadius(e){Number.isInteger(e)&&(this.verticalCornerRadius=e)}}t.AnnotationBorderStyle=AnnotationBorderStyle;class MarkupAnnotation extends Annotation{constructor(e){super(e);const{dict:t}=e;if(t.has("IRT")){const e=t.getRaw("IRT");this.data.inReplyTo=e instanceof s.Ref?e.toString():null;const a=t.get("RT");this.data.replyType=a instanceof s.Name?a.name:r.AnnotationReplyType.REPLY}let a=null;if(this.data.replyType===r.AnnotationReplyType.GROUP){const e=t.get("IRT");this.setTitle(e.get("T"));this.data.titleObj=this._title;this.setContents(e.get("Contents"));this.data.contentsObj=this._contents;if(e.has("CreationDate")){this.setCreationDate(e.get("CreationDate"));this.data.creationDate=this.creationDate}else this.data.creationDate=null;if(e.has("M")){this.setModificationDate(e.get("M"));this.data.modificationDate=this.modificationDate}else this.data.modificationDate=null;a=e.getRaw("Popup");if(e.has("C")){this.setColor(e.getArray("C"));this.data.color=this.color}else this.data.color=null}else{this.data.titleObj=this._title;this.setCreationDate(t.get("CreationDate"));this.data.creationDate=this.creationDate;a=t.getRaw("Popup");t.has("C")||(this.data.color=null)}this.data.popupRef=a instanceof s.Ref?a.toString():null;t.has("RC")&&(this.data.richText=b.XFAFactory.getRichTextAsHtml(t.get("RC")))}setCreationDate(e){this.creationDate="string"==typeof e?e:null}_setDefaultAppearance({xref:e,extra:t,strokeColor:a,fillColor:r,blendMode:n,strokeAlpha:i,fillAlpha:c,pointsCallback:l}){let h=Number.MAX_VALUE,u=Number.MAX_VALUE,d=Number.MIN_VALUE,f=Number.MIN_VALUE;const g=["q"];t&&g.push(t);a&&g.push(`${a[0]} ${a[1]} ${a[2]} RG`);r&&g.push(`${r[0]} ${r[1]} ${r[2]} rg`);let p=this.data.quadPoints;p||(p=[[{x:this.rectangle[0],y:this.rectangle[3]},{x:this.rectangle[2],y:this.rectangle[3]},{x:this.rectangle[0],y:this.rectangle[1]},{x:this.rectangle[2],y:this.rectangle[1]}]]);for(const e of p){const[t,a,r,n]=l(g,e);h=Math.min(h,t);d=Math.max(d,a);u=Math.min(u,r);f=Math.max(f,n)}g.push("Q");const m=new s.Dict(e),b=new s.Dict(e);b.set("Subtype",s.Name.get("Form"));const y=new o.StringStream(g.join(" "));y.dict=b;m.set("Fm0",y);const w=new s.Dict(e);n&&w.set("BM",s.Name.get(n));"number"==typeof i&&w.set("CA",i);"number"==typeof c&&w.set("ca",c);const S=new s.Dict(e);S.set("GS0",w);const x=new s.Dict(e);x.set("ExtGState",S);x.set("XObject",m);const C=new s.Dict(e);C.set("Resources",x);const k=this.data.rect=[h,u,d,f];C.set("BBox",k);this.appearance=new o.StringStream("/GS0 gs /Fm0 Do");this.appearance.dict=C;this._streams.push(this.appearance,y)}static async createNewAnnotation(e,t,a,r){const n=t.ref||=e.getNewTemporaryRef(),i=await this.createNewAppearanceStream(t,e,r),s=[];let o;if(i){const r=e.getNewTemporaryRef();o=this.createNewDict(t,e,{apRef:r});await(0,m.writeObject)(r,i,s,e);a.push({ref:r,data:s.join("")})}else o=this.createNewDict(t,e,{});Number.isInteger(t.parentTreeId)&&o.set("StructParent",t.parentTreeId);s.length=0;await(0,m.writeObject)(n,o,s,e);return{ref:n,data:s.join("")}}static async createNewPrintAnnotation(e,t,a,r){const n=await this.createNewAppearanceStream(a,t,r),i=this.createNewDict(a,t,{ap:n}),s=new this.prototype.constructor({dict:i,xref:t,annotationGlobals:e,evaluatorOptions:r.evaluatorOptions});a.ref&&(s.ref=s.refToReplace=a.ref);return s}}t.MarkupAnnotation=MarkupAnnotation;class WidgetAnnotation extends Annotation{constructor(e){super(e);const{dict:t,xref:a,annotationGlobals:i}=e,o=this.data;this._needAppearances=e.needAppearances;o.annotationType=r.AnnotationType.WIDGET;void 0===o.fieldName&&(o.fieldName=this._constructFieldName(t));void 0===o.actions&&(o.actions=(0,n.collectActions)(a,t,r.AnnotationActionEventType));let c=(0,n.getInheritableProperty)({dict:t,key:"V",getArray:!0});o.fieldValue=this._decodeFormValue(c);const l=(0,n.getInheritableProperty)({dict:t,key:"DV",getArray:!0});o.defaultFieldValue=this._decodeFormValue(l);if(void 0===c&&i.xfaDatasets){const e=this._title.str;if(e){this._hasValueFromXFA=!0;o.fieldValue=c=i.xfaDatasets.getValue(e)}}void 0===c&&null!==o.defaultFieldValue&&(o.fieldValue=o.defaultFieldValue);o.alternativeText=(0,r.stringToPDFString)(t.get("TU")||"");this.setDefaultAppearance(e);o.hasAppearance||=this._needAppearances&&void 0!==o.fieldValue&&null!==o.fieldValue;const h=(0,n.getInheritableProperty)({dict:t,key:"FT"});o.fieldType=h instanceof s.Name?h.name:null;const u=(0,n.getInheritableProperty)({dict:t,key:"DR"}),d=i.acroForm.get("DR"),f=this.appearance?.dict.get("Resources");this._fieldResources={localResources:u,acroFormResources:d,appearanceResources:f,mergedResources:s.Dict.merge({xref:a,dictArray:[u,f,d],mergeSubDicts:!0})};o.fieldFlags=(0,n.getInheritableProperty)({dict:t,key:"Ff"});(!Number.isInteger(o.fieldFlags)||o.fieldFlags<0)&&(o.fieldFlags=0);o.readOnly=this.hasFieldFlag(r.AnnotationFieldFlag.READONLY);o.required=this.hasFieldFlag(r.AnnotationFieldFlag.REQUIRED);o.hidden=this._hasFlag(o.annotationFlags,r.AnnotationFlag.HIDDEN)||this._hasFlag(o.annotationFlags,r.AnnotationFlag.NOVIEW)}_decodeFormValue(e){return Array.isArray(e)?e.filter((e=>"string"==typeof e)).map((e=>(0,r.stringToPDFString)(e))):e instanceof s.Name?(0,r.stringToPDFString)(e.name):"string"==typeof e?(0,r.stringToPDFString)(e):null}hasFieldFlag(e){return!!(this.data.fieldFlags&e)}_isViewable(e){return!this._hasFlag(e,r.AnnotationFlag.INVISIBLE)}mustBeViewed(e,t){return t?this.viewable:super.mustBeViewed(e,t)&&!this._hasFlag(this.flags,r.AnnotationFlag.NOVIEW)}getRotationMatrix(e){let t=e?.get(this.data.id)?.rotation;void 0===t&&(t=this.rotation);if(0===t)return r.IDENTITY_MATRIX;const a=this.data.rect[2]-this.data.rect[0],i=this.data.rect[3]-this.data.rect[1];return(0,n.getRotationMatrix)(t,a,i)}getBorderAndBackgroundAppearances(e){let t=e?.get(this.data.id)?.rotation;void 0===t&&(t=this.rotation);if(!this.backgroundColor&&!this.borderColor)return"";const a=this.data.rect[2]-this.data.rect[0],r=this.data.rect[3]-this.data.rect[1],n=0===t||180===t?`0 0 ${a} ${r} re`:`0 0 ${r} ${a} re`;let s="";this.backgroundColor&&(s=`${(0,i.getPdfColor)(this.backgroundColor,!0)} ${n} f `);if(this.borderColor){s+=`${this.borderStyle.width||1} w ${(0,i.getPdfColor)(this.borderColor,!1)} ${n} S `}return s}async getOperatorList(e,t,a,n,i){if(n&&!(this instanceof SignatureWidgetAnnotation)&&!this.data.noHTML&&!this.data.hasOwnCanvas)return{opList:new p.OperatorList,separateForm:!0,separateCanvas:!1};if(!this._hasText)return super.getOperatorList(e,t,a,n,i);const s=await this._getAppearance(e,t,a,i);if(this.appearance&&null===s)return super.getOperatorList(e,t,a,n,i);const c=new p.OperatorList;if(!this._defaultAppearance||null===s)return{opList:c,separateForm:!1,separateCanvas:!1};const l=!!(this.data.hasOwnCanvas&&a&r.RenderingIntentFlag.DISPLAY),h=[0,0,this.data.rect[2]-this.data.rect[0],this.data.rect[3]-this.data.rect[1]],u=getTransformMatrix(this.data.rect,h,[1,0,0,1,0,0]);let d;this.oc&&(d=await e.parseMarkedContentProps(this.oc,null));void 0!==d&&c.addOp(r.OPS.beginMarkedContentProps,["OC",d]);c.addOp(r.OPS.beginAnnotation,[this.data.id,this.data.rect,u,this.getRotationMatrix(i),l]);const f=new o.StringStream(s);await e.getOperatorList({stream:f,task:t,resources:this._fieldResources.mergedResources,operatorList:c});c.addOp(r.OPS.endAnnotation,[]);void 0!==d&&c.addOp(r.OPS.endMarkedContent,[]);return{opList:c,separateForm:!1,separateCanvas:l}}_getMKDict(e){const t=new s.Dict(null);e&&t.set("R",e);this.borderColor&&t.set("BC",getPdfColorArray(this.borderColor));this.backgroundColor&&t.set("BG",getPdfColorArray(this.backgroundColor));return t.size>0?t:null}amendSavedDict(e,t){}async save(e,t,a){const i=a?.get(this.data.id);let c=i?.value,l=i?.rotation;if(c===this.data.fieldValue||void 0===c){if(!this._hasValueFromXFA&&void 0===l)return null;c||=this.data.fieldValue}if(void 0===l&&!this._hasValueFromXFA&&Array.isArray(c)&&Array.isArray(this.data.fieldValue)&&c.length===this.data.fieldValue.length&&c.every(((e,t)=>e===this.data.fieldValue[t])))return null;void 0===l&&(l=this.rotation);let h=null;if(!this._needAppearances){h=await this._getAppearance(e,t,r.RenderingIntentFlag.SAVE,a);if(null===h)return null}let u=!1;if(h?.needAppearances){u=!0;h=null}const{xref:d}=e,f=d.fetchIfRef(this.ref);if(!(f instanceof s.Dict))return null;const g=new s.Dict(d);for(const e of f.getKeys())"AP"!==e&&g.set(e,f.getRaw(e));const p={path:this.data.fieldName,value:c},encoder=e=>(0,n.isAscii)(e)?e:(0,n.stringToUTF16String)(e,!0);g.set("V",Array.isArray(c)?c.map(encoder):encoder(c));this.amendSavedDict(a,g);const b=this._getMKDict(l);b&&g.set("MK",b);const y=[],w=[{ref:this.ref,data:"",xfa:p,needAppearances:u}];if(null!==h){const e=d.getNewTemporaryRef(),t=new s.Dict(d);g.set("AP",t);t.set("N",e);const n=this._getSaveFieldResources(d),i=new o.StringStream(h),c=i.dict=new s.Dict(d);c.set("Subtype",s.Name.get("Form"));c.set("Resources",n);c.set("BBox",[0,0,this.data.rect[2]-this.data.rect[0],this.data.rect[3]-this.data.rect[1]]);const l=this.getRotationMatrix(a);l!==r.IDENTITY_MATRIX&&c.set("Matrix",l);await(0,m.writeObject)(e,i,y,d);w.push({ref:e,data:y.join(""),xfa:null,needAppearances:!1});y.length=0}g.set("M",`D:${(0,r.getModificationDate)()}`);await(0,m.writeObject)(this.ref,g,y,d);w[0].data=y.join("");return w}async _getAppearance(e,t,a,s){if(this.hasFieldFlag(r.AnnotationFieldFlag.PASSWORD))return null;const o=s?.get(this.data.id);let c,l;if(o){c=o.formattedValue||o.value;l=o.rotation}if(void 0===l&&void 0===c&&!this._needAppearances&&(!this._hasValueFromXFA||this.appearance))return null;const h=this.getBorderAndBackgroundAppearances(s);if(void 0===c){c=this.data.fieldValue;if(!c)return`/Tx BMC q ${h}Q EMC`}Array.isArray(c)&&1===c.length&&(c=c[0]);(0,r.assert)("string"==typeof c,"Expected `value` to be a string.");c=c.trim();if(this.data.combo){const e=this.data.options.find((({exportValue:e})=>c===e));c=e?.displayValue||c}if(""===c)return`/Tx BMC q ${h}Q EMC`;void 0===l&&(l=this.rotation);let u,d=-1;if(this.data.multiLine){u=c.split(/\r\n?|\n/).map((e=>e.normalize("NFC")));d=u.length}else u=[c.replace(/\r\n?|\n/,"").normalize("NFC")];let f=this.data.rect[3]-this.data.rect[1],g=this.data.rect[2]-this.data.rect[0];90!==l&&270!==l||([g,f]=[f,g]);this._defaultAppearance||(this.data.defaultAppearanceData=(0,i.parseDefaultAppearance)(this._defaultAppearance="/Helvetica 0 Tf 0 g"));let p,m,b,y=await WidgetAnnotation._getFontData(e,t,this.data.defaultAppearanceData,this._fieldResources.mergedResources);const w=[];let S=!1;for(const e of u){const t=y.encodeString(e);t.length>1&&(S=!0);w.push(t.join(""))}if(S&&a&r.RenderingIntentFlag.SAVE)return{needAppearances:!0};if(S&&this._isOffscreenCanvasSupported){const a=this.data.comb?"monospace":"sans-serif",r=new i.FakeUnicodeFont(e.xref,a),s=r.createFontResources(u.join("")),o=s.getRaw("Font");if(this._fieldResources.mergedResources.has("Font")){const e=this._fieldResources.mergedResources.get("Font");for(const t of o.getKeys())e.set(t,o.getRaw(t))}else this._fieldResources.mergedResources.set("Font",o);const l=r.fontName.name;y=await WidgetAnnotation._getFontData(e,t,{fontName:l,fontSize:0},s);for(let e=0,t=w.length;e2)return`/Tx BMC q ${h}BT `+p+` 1 0 0 1 ${(0,n.numberToString)(2)} ${(0,n.numberToString)(v)} Tm (${(0,n.escapeString)(w[0])}) Tj ET Q EMC`;return`/Tx BMC q ${h}BT `+p+` 1 0 0 1 0 0 Tm ${this._renderText(w[0],y,m,g,k,{shift:0},2,v)} ET Q EMC`}static async _getFontData(e,t,a,r){const n=new p.OperatorList,i={font:null,clone(){return this}},{fontName:o,fontSize:c}=a;await e.handleSetFont(r,[o&&s.Name.get(o),c],null,n,t,i,null);return i.font}_getTextWidth(e,t){return t.charsToGlyphs(e).reduce(((e,t)=>e+t.width),0)/1e3}_computeFontSize(e,t,a,n,s){let{fontSize:o}=this.data.defaultAppearanceData,c=(o||12)*r.LINE_FACTOR,l=Math.round(e/c);if(!o){const roundWithTwoDigits=e=>Math.floor(100*e)/100;if(-1===s){const i=this._getTextWidth(a,n);o=roundWithTwoDigits(Math.min(e/r.LINE_FACTOR,i>t?t/i:1/0));l=1}else{const i=a.split(/\r\n?|\n/),h=[];for(const e of i){const t=n.encodeString(e).join(""),a=n.charsToGlyphs(t),r=n.getCharPositions(t);h.push({line:t,glyphs:a,positions:r})}const isTooBig=a=>{let r=0;for(const i of h){r+=this._splitLine(null,n,a,t,i).length*a;if(r>e)return!0}return!1};l=Math.max(l,s);for(;;){c=e/l;o=roundWithTwoDigits(c/r.LINE_FACTOR);if(!isTooBig(o))break;l++}}const{fontName:h,fontColor:u}=this.data.defaultAppearanceData;this._defaultAppearance=(0,i.createDefaultAppearance)({fontSize:o,fontName:h,fontColor:u})}return[this._defaultAppearance,o,e/l]}_renderText(e,t,a,r,i,s,o,c){let l;if(1===i){l=(r-this._getTextWidth(e,t)*a)/2}else if(2===i){l=r-this._getTextWidth(e,t)*a-o}else l=o;const h=(0,n.numberToString)(l-s.shift);s.shift=l;return`${h} ${c=(0,n.numberToString)(c)} Td (${(0,n.escapeString)(e)}) Tj`}_getSaveFieldResources(e){const{localResources:t,appearanceResources:a,acroFormResources:r}=this._fieldResources,n=this.data.defaultAppearanceData?.fontName;if(!n)return t||s.Dict.empty;for(const e of[t,a])if(e instanceof s.Dict){const t=e.get("Font");if(t instanceof s.Dict&&t.has(n))return e}if(r instanceof s.Dict){const a=r.get("Font");if(a instanceof s.Dict&&a.has(n)){const r=new s.Dict(e);r.set(n,a.getRaw(n));const i=new s.Dict(e);i.set("Font",r);return s.Dict.merge({xref:e,dictArray:[i,t],mergeSubDicts:!0})}}return t||s.Dict.empty}getFieldObject(){return null}}class TextWidgetAnnotation extends WidgetAnnotation{constructor(e){super(e);this.data.hasOwnCanvas=this.data.readOnly&&!this.data.noHTML;this._hasText=!0;const t=e.dict;"string"!=typeof this.data.fieldValue&&(this.data.fieldValue="");let a=(0,n.getInheritableProperty)({dict:t,key:"Q"});(!Number.isInteger(a)||a<0||a>2)&&(a=null);this.data.textAlignment=a;let i=(0,n.getInheritableProperty)({dict:t,key:"MaxLen"});(!Number.isInteger(i)||i<0)&&(i=0);this.data.maxLen=i;this.data.multiLine=this.hasFieldFlag(r.AnnotationFieldFlag.MULTILINE);this.data.comb=this.hasFieldFlag(r.AnnotationFieldFlag.COMB)&&!this.hasFieldFlag(r.AnnotationFieldFlag.MULTILINE)&&!this.hasFieldFlag(r.AnnotationFieldFlag.PASSWORD)&&!this.hasFieldFlag(r.AnnotationFieldFlag.FILESELECT)&&0!==this.data.maxLen;this.data.doNotScroll=this.hasFieldFlag(r.AnnotationFieldFlag.DONOTSCROLL)}get hasTextContent(){return!!this.appearance&&!this._needAppearances}_getCombAppearance(e,t,a,r,i,s,o,c,l,h,u){const d=i/this.data.maxLen,f=this.getBorderAndBackgroundAppearances(u),g=[],p=t.getCharPositions(a);for(const[e,t]of p)g.push(`(${(0,n.escapeString)(a.substring(e,t))}) Tj`);const m=g.join(` ${(0,n.numberToString)(d)} 0 Td `);return`/Tx BMC q ${f}BT `+e+` 1 0 0 1 ${(0,n.numberToString)(o)} ${(0,n.numberToString)(c+l)} Tm ${m} ET Q EMC`}_getMultilineAppearance(e,t,a,r,i,s,o,c,l,h,u,d){const f=[],g=i-2*c,p={shift:0};for(let e=0,n=t.length;er){c.push(e.substring(d,a));d=a;f=p;l=-1;u=-1}else{f+=p;l=a;h=n;u=t}else if(f+p>r)if(-1!==l){c.push(e.substring(d,h));d=h;t=u+1;l=-1;f=0}else{c.push(e.substring(d,a));d=a;f=p}else f+=p}d"Off"!==e));i.length=0;i.push("Off",e)}i.includes(this.data.fieldValue)||(this.data.fieldValue="Off");this.data.exportValue=i[1];const o=a.get(this.data.exportValue);this.checkedAppearance=o instanceof c.BaseStream?o:null;const l=a.get("Off");this.uncheckedAppearance=l instanceof c.BaseStream?l:null;this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(e,"check");this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance);this._fallbackFontDict=this.fallbackFontDict;null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processRadioButton(e){this.data.fieldValue=this.data.buttonValue=null;const t=e.dict.get("Parent");if(t instanceof s.Dict){this.parent=e.dict.getRaw("Parent");const a=t.get("V");a instanceof s.Name&&(this.data.fieldValue=this._decodeFormValue(a))}const a=e.dict.get("AP");if(!(a instanceof s.Dict))return;const r=a.get("N");if(!(r instanceof s.Dict))return;for(const e of r.getKeys())if("Off"!==e){this.data.buttonValue=this._decodeFormValue(e);break}const n=r.get(this.data.buttonValue);this.checkedAppearance=n instanceof c.BaseStream?n:null;const i=r.get("Off");this.uncheckedAppearance=i instanceof c.BaseStream?i:null;this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(e,"disc");this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance);this._fallbackFontDict=this.fallbackFontDict;null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processPushButton(e){const{dict:t,annotationGlobals:a}=e;if(t.has("A")||t.has("AA")||this.data.alternativeText){this.data.isTooltipOnly=!t.has("A")&&!t.has("AA");h.Catalog.parseDestDictionary({destDict:t,resultObj:this.data,docBaseUrl:a.baseUrl,docAttachments:a.attachments})}else(0,r.warn)("Push buttons without action dictionaries are not supported")}getFieldObject(){let e,t="button";if(this.data.checkBox){t="checkbox";e=this.data.exportValue}else if(this.data.radioButton){t="radiobutton";e=this.data.buttonValue}return{id:this.data.id,value:this.data.fieldValue||"Off",defaultValue:this.data.defaultFieldValue,exportValues:e,editable:!this.data.readOnly,name:this.data.fieldName,rect:this.data.rect,hidden:this.data.hidden,actions:this.data.actions,page:this.data.pageIndex,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,rotation:this.rotation,type:t}}get fallbackFontDict(){const e=new s.Dict;e.set("BaseFont",s.Name.get("ZapfDingbats"));e.set("Type",s.Name.get("FallbackType"));e.set("Subtype",s.Name.get("FallbackType"));e.set("Encoding",s.Name.get("ZapfDingbatsEncoding"));return(0,r.shadow)(this,"fallbackFontDict",e)}}class ChoiceWidgetAnnotation extends WidgetAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.indices=t.getArray("I");this.hasIndices=Array.isArray(this.indices)&&this.indices.length>0;this.data.options=[];const i=(0,n.getInheritableProperty)({dict:t,key:"Opt"});if(Array.isArray(i))for(let e=0,t=i.length;e=0&&t0?this.data.fieldValue[0]:null;return{id:this.data.id,value:t,defaultValue:this.data.defaultFieldValue,editable:!this.data.readOnly,name:this.data.fieldName,rect:this.data.rect,numItems:this.data.fieldValue.length,multipleSelection:this.data.multiSelect,hidden:this.data.hidden,actions:this.data.actions,items:this.data.options,page:this.data.pageIndex,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,rotation:this.rotation,type:e}}amendSavedDict(e,t){if(!this.hasIndices)return;let a=e?.get(this.data.id)?.value;Array.isArray(a)||(a=[a]);const r=[],{options:n}=this.data;for(let e=0,t=0,i=n.length;ea){a=r;t=e}}[g,p]=this._computeFontSize(e,h-4,t,f,-1)}const m=p*r.LINE_FACTOR,b=(m-p)/2,y=Math.floor(l/m);let w=0;if(d.length>0){const e=Math.min(...d),t=Math.max(...d);w=Math.max(0,t-y+1);w>e&&(w=e)}const S=Math.min(w+y+1,u),x=["/Tx BMC q",`1 1 ${h} ${l} re W n`];if(d.length){x.push("0.600006 0.756866 0.854904 rg");for(const e of d)w<=e&&e1)return null;e=t.join("");M.push(e);let a=0;const r=y.charsToGlyphs(e);for(const e of r)a+=e.width*O;T=Math.max(T,a)}let D=1;T>k&&(D=k/T);let E=1;const N=r.LINE_FACTOR*d,R=(r.LINE_FACTOR-r.LINE_DESCENT_FACTOR)*d,L=N*F.length;L>v&&(E=v/L);const $=d*Math.min(D,E);let _,j,U;switch(g){case 0:U=[1,0,0,1];j=[f[0],f[1],k,v];_=[f[0],f[3]-R];break;case 90:U=[0,1,-1,0];j=[f[1],-f[2],k,v];_=[f[1],-f[0]-R];break;case 180:U=[-1,0,0,-1];j=[-f[2],-f[3],k,v];_=[-f[2],-f[1]-R];break;case 270:U=[0,-1,1,0];j=[-f[3],f[0],k,v];_=[-f[3],f[2]-R]}const X=["q",`${U.join(" ")} 0 0 cm`,`${j.join(" ")} re W n`,"BT",`${(0,i.getPdfColor)(u,!0)}`,`0 Tc /Helv ${(0,n.numberToString)($)} Tf`];X.push(`${_.join(" ")} Td (${(0,n.escapeString)(M[0])}) Tj`);const H=(0,n.numberToString)(N);for(let e=1,t=M.length;e{e.push(`${n[0]} ${n[1]} m`,`${n[2]} ${n[3]} l`,"S");return[t[0].x-l,t[1].x+l,t[3].y-l,t[1].y+l]}})}}}class SquareAnnotation extends MarkupAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.data.annotationType=r.AnnotationType.SQUARE;this.data.hasOwnCanvas=this.data.noRotate;if(!this.appearance){const e=this.color?getPdfColorArray(this.color):[0,0,0],r=t.get("CA"),n=getRgbColor(t.getArray("IC"),null),i=n?getPdfColorArray(n):null,s=i?r:null;if(0===this.borderStyle.width&&!i)return;this._setDefaultAppearance({xref:a,extra:`${this.borderStyle.width} w`,strokeColor:e,fillColor:i,strokeAlpha:r,fillAlpha:s,pointsCallback:(e,t)=>{const a=t[2].x+this.borderStyle.width/2,r=t[2].y+this.borderStyle.width/2,n=t[3].x-t[2].x-this.borderStyle.width,s=t[1].y-t[3].y-this.borderStyle.width;e.push(`${a} ${r} ${n} ${s} re`);i?e.push("B"):e.push("S");return[t[0].x,t[1].x,t[3].y,t[1].y]}})}}}class CircleAnnotation extends MarkupAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.data.annotationType=r.AnnotationType.CIRCLE;if(!this.appearance){const e=this.color?getPdfColorArray(this.color):[0,0,0],r=t.get("CA"),n=getRgbColor(t.getArray("IC"),null),i=n?getPdfColorArray(n):null,s=i?r:null;if(0===this.borderStyle.width&&!i)return;const o=4/3*Math.tan(Math.PI/8);this._setDefaultAppearance({xref:a,extra:`${this.borderStyle.width} w`,strokeColor:e,fillColor:i,strokeAlpha:r,fillAlpha:s,pointsCallback:(e,t)=>{const a=t[0].x+this.borderStyle.width/2,r=t[0].y-this.borderStyle.width/2,n=t[3].x-this.borderStyle.width/2,s=t[3].y+this.borderStyle.width/2,c=a+(n-a)/2,l=r+(s-r)/2,h=(n-a)/2*o,u=(s-r)/2*o;e.push(`${c} ${s} m`,`${c+h} ${s} ${n} ${l+u} ${n} ${l} c`,`${n} ${l-u} ${c+h} ${r} ${c} ${r} c`,`${c-h} ${r} ${a} ${l-u} ${a} ${l} c`,`${a} ${l+u} ${c-h} ${s} ${c} ${s} c`,"h");i?e.push("B"):e.push("S");return[t[0].x,t[1].x,t[3].y,t[1].y]}})}}}class PolylineAnnotation extends MarkupAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.data.annotationType=r.AnnotationType.POLYLINE;this.data.hasOwnCanvas=this.data.noRotate;this.data.vertices=[];if(!(this instanceof PolygonAnnotation)){this.setLineEndings(t.getArray("LE"));this.data.lineEndings=this.lineEndings}const n=t.getArray("Vertices");if(Array.isArray(n)){for(let e=0,t=n.length;e{const a=this.data.vertices;for(let t=0,r=a.length;t{for(const t of this.data.inkLists){for(let a=0,r=t.length;ae.points)));d.set("F",4);d.set("Rotate",h);const f=new s.Dict(t);d.set("BS",f);f.set("W",u);d.set("C",Array.from(i,(e=>e/255)));d.set("CA",o);const g=new s.Dict(t);d.set("AP",g);a?g.set("N",a):g.set("N",n);return d}static async createNewAppearanceStream(e,t,a){const{color:r,rect:c,paths:l,thickness:h,opacity:u}=e,d=[`${h} w 1 J 1 j`,`${(0,i.getPdfColor)(r,!1)}`];1!==u&&d.push("/R0 gs");const f=[];for(const{bezier:e}of l){f.length=0;f.push(`${(0,n.numberToString)(e[0])} ${(0,n.numberToString)(e[1])} m`);for(let t=2,a=e.length;t{e.push(`${t[0].x} ${t[0].y} m`,`${t[1].x} ${t[1].y} l`,`${t[3].x} ${t[3].y} l`,`${t[2].x} ${t[2].y} l`,"f");return[t[0].x,t[1].x,t[3].y,t[1].y]}})}}else this.data.popupRef=null}}class UnderlineAnnotation extends MarkupAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.data.annotationType=r.AnnotationType.UNDERLINE;if(this.data.quadPoints=getQuadPoints(t,null)){if(!this.appearance){const e=this.color?getPdfColorArray(this.color):[0,0,0],r=t.get("CA");this._setDefaultAppearance({xref:a,extra:"[] 0 d 0.571 w",strokeColor:e,strokeAlpha:r,pointsCallback:(e,t)=>{e.push(`${t[2].x} ${t[2].y+1.3} m`,`${t[3].x} ${t[3].y+1.3} l`,"S");return[t[0].x,t[1].x,t[3].y,t[1].y]}})}}else this.data.popupRef=null}}class SquigglyAnnotation extends MarkupAnnotation{constructor(e){super(e);const{dict:t,xref:a}=e;this.data.annotationType=r.AnnotationType.SQUIGGLY;if(this.data.quadPoints=getQuadPoints(t,null)){if(!this.appearance){const e=this.color?getPdfColorArray(this.color):[0,0,0],r=t.get("CA");this._setDefaultAppearance({xref:a,extra:"[] 0 d 1 w",strokeColor:e,strokeAlpha:r,pointsCallback:(e,t)=>{const a=(t[0].y-t[2].y)/6;let r=a,n=t[2].x;const i=t[2].y,s=t[3].x;e.push(`${n} ${i+r} m`);do{n+=2;r=0===r?a:0;e.push(`${n} ${i+r} l`)}while(n{e.push((t[0].x+t[2].x)/2+" "+(t[0].y+t[2].y)/2+" m",(t[1].x+t[3].x)/2+" "+(t[1].y+t[3].y)/2+" l","S");return[t[0].x,t[1].x,t[3].y,t[1].y]}})}}else this.data.popupRef=null}}class StampAnnotation extends MarkupAnnotation{constructor(e){super(e);this.data.annotationType=r.AnnotationType.STAMP;this.data.hasOwnCanvas=this.data.noRotate}static async createImage(e,t){const{width:a,height:n}=e,i=new OffscreenCanvas(a,n),c=i.getContext("2d",{alpha:!0});c.drawImage(e,0,0);const l=c.getImageData(0,0,a,n).data,h=new Uint32Array(l.buffer),u=h.some(r.FeatureTest.isLittleEndian?e=>e>>>24!=255:e=>255!=(255&e));if(u){c.fillStyle="white";c.fillRect(0,0,a,n);c.drawImage(e,0,0)}const d=i.convertToBlob({type:"image/jpeg",quality:1}).then((e=>e.arrayBuffer())),f=s.Name.get("XObject"),g=s.Name.get("Image"),p=new s.Dict(t);p.set("Type",f);p.set("Subtype",g);p.set("BitsPerComponent",8);p.set("ColorSpace",s.Name.get("DeviceRGB"));p.set("Filter",s.Name.get("DCTDecode"));p.set("BBox",[0,0,a,n]);p.set("Width",a);p.set("Height",n);let m=null;if(u){const e=new Uint8Array(h.length);if(r.FeatureTest.isLittleEndian)for(let t=0,a=h.length;t>>24;else for(let t=0,a=h.length;t=0&&o<=1?o:null}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.FakeUnicodeFont=void 0;t.createDefaultAppearance=function createDefaultAppearance({fontSize:e,fontName:t,fontColor:a}){return`/${(0,n.escapePDFName)(t)} ${e} Tf ${getPdfColor(a,!0)}`};t.getPdfColor=getPdfColor;t.parseAppearanceStream=function parseAppearanceStream(e,t,a){return new AppearanceStreamEvaluator(e,t,a).parse()};t.parseDefaultAppearance=function parseDefaultAppearance(e){return new DefaultAppearanceEvaluator(e).parse()};var r=a(4),n=a(3),i=a(2),s=a(12),o=a(13),c=a(59),l=a(57),h=a(8);class DefaultAppearanceEvaluator extends o.EvaluatorPreprocessor{constructor(e){super(new h.StringStream(e))}parse(){const e={fn:0,args:[]},t={fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3)};try{for(;;){e.args.length=0;if(!this.read(e))break;if(0!==this.savedStatesDepth)continue;const{fn:a,args:n}=e;switch(0|a){case i.OPS.setFont:const[e,a]=n;e instanceof r.Name&&(t.fontName=e.name);"number"==typeof a&&a>0&&(t.fontSize=a);break;case i.OPS.setFillRGBColor:s.ColorSpace.singletons.rgb.getRgbItem(n,0,t.fontColor,0);break;case i.OPS.setFillGray:s.ColorSpace.singletons.gray.getRgbItem(n,0,t.fontColor,0);break;case i.OPS.setFillCMYKColor:s.ColorSpace.singletons.cmyk.getRgbItem(n,0,t.fontColor,0)}}}catch(e){(0,i.warn)(`parseDefaultAppearance - ignoring errors: "${e}".`)}return t}}class AppearanceStreamEvaluator extends o.EvaluatorPreprocessor{constructor(e,t,a){super(e);this.stream=e;this.evaluatorOptions=t;this.xref=a;this.resources=e.dict?.get("Resources")}parse(){const e={fn:0,args:[]};let t={scaleFactor:1,fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3),fillColorSpace:s.ColorSpace.singletons.gray},a=!1;const n=[];try{for(;;){e.args.length=0;if(a||!this.read(e))break;const{fn:o,args:c}=e;switch(0|o){case i.OPS.save:n.push({scaleFactor:t.scaleFactor,fontSize:t.fontSize,fontName:t.fontName,fontColor:t.fontColor.slice(),fillColorSpace:t.fillColorSpace});break;case i.OPS.restore:t=n.pop()||t;break;case i.OPS.setTextMatrix:t.scaleFactor*=Math.hypot(c[0],c[1]);break;case i.OPS.setFont:const[e,o]=c;e instanceof r.Name&&(t.fontName=e.name);"number"==typeof o&&o>0&&(t.fontSize=o*t.scaleFactor);break;case i.OPS.setFillColorSpace:t.fillColorSpace=s.ColorSpace.parse({cs:c[0],xref:this.xref,resources:this.resources,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:this._localColorSpaceCache});break;case i.OPS.setFillColor:t.fillColorSpace.getRgbItem(c,0,t.fontColor,0);break;case i.OPS.setFillRGBColor:s.ColorSpace.singletons.rgb.getRgbItem(c,0,t.fontColor,0);break;case i.OPS.setFillGray:s.ColorSpace.singletons.gray.getRgbItem(c,0,t.fontColor,0);break;case i.OPS.setFillCMYKColor:s.ColorSpace.singletons.cmyk.getRgbItem(c,0,t.fontColor,0);break;case i.OPS.showText:case i.OPS.showSpacedText:case i.OPS.nextLineShowText:case i.OPS.nextLineSetSpacingShowText:a=!0}}}catch(e){(0,i.warn)(`parseAppearanceStream - ignoring errors: "${e}".`)}this.stream.reset();delete t.scaleFactor;delete t.fillColorSpace;return t}get _localColorSpaceCache(){return(0,i.shadow)(this,"_localColorSpaceCache",new c.LocalColorSpaceCache)}get _pdfFunctionFactory(){const e=new l.PDFFunctionFactory({xref:this.xref,isEvalSupported:this.evaluatorOptions.isEvalSupported});return(0,i.shadow)(this,"_pdfFunctionFactory",e)}}function getPdfColor(e,t){if(e[0]===e[1]&&e[1]===e[2]){const a=e[0]/255;return`${(0,n.numberToString)(a)} ${t?"g":"G"}`}return Array.from(e,(e=>(0,n.numberToString)(e/255))).join(" ")+" "+(t?"rg":"RG")}class FakeUnicodeFont{constructor(e,t){this.xref=e;this.widths=null;this.firstChar=1/0;this.lastChar=-1/0;this.fontFamily=t;const a=new OffscreenCanvas(1,1);this.ctxMeasure=a.getContext("2d");FakeUnicodeFont._fontNameId||(FakeUnicodeFont._fontNameId=1);this.fontName=r.Name.get(`InvalidPDFjsFont_${t}_${FakeUnicodeFont._fontNameId++}`)}get toUnicodeRef(){if(!FakeUnicodeFont._toUnicodeRef){const e="/CIDInit /ProcSet findresource begin\n12 dict begin\nbegincmap\n/CIDSystemInfo\n<< /Registry (Adobe)\n/Ordering (UCS) /Supplement 0 >> def\n/CMapName /Adobe-Identity-UCS def\n/CMapType 2 def\n1 begincodespacerange\n<0000> \nendcodespacerange\n1 beginbfrange\n<0000> <0000>\nendbfrange\nendcmap CMapName currentdict /CMap defineresource pop end end",t=FakeUnicodeFont.toUnicodeStream=new h.StringStream(e),a=new r.Dict(this.xref);t.dict=a;a.set("Length",e.length);FakeUnicodeFont._toUnicodeRef=this.xref.getNewPersistentRef(t)}return FakeUnicodeFont._toUnicodeRef}get fontDescriptorRef(){if(!FakeUnicodeFont._fontDescriptorRef){const e=new r.Dict(this.xref);e.set("Type",r.Name.get("FontDescriptor"));e.set("FontName",this.fontName);e.set("FontFamily","MyriadPro Regular");e.set("FontBBox",[0,0,0,0]);e.set("FontStretch",r.Name.get("Normal"));e.set("FontWeight",400);e.set("ItalicAngle",0);FakeUnicodeFont._fontDescriptorRef=this.xref.getNewPersistentRef(e)}return FakeUnicodeFont._fontDescriptorRef}get descendantFontRef(){const e=new r.Dict(this.xref);e.set("BaseFont",this.fontName);e.set("Type",r.Name.get("Font"));e.set("Subtype",r.Name.get("CIDFontType0"));e.set("CIDToGIDMap",r.Name.get("Identity"));e.set("FirstChar",this.firstChar);e.set("LastChar",this.lastChar);e.set("FontDescriptor",this.fontDescriptorRef);e.set("DW",1e3);const t=[],a=[...this.widths.entries()].sort();let n=null,i=null;for(const[e,r]of a)if(n)if(e===n+i.length)i.push(r);else{t.push(n,i);n=e;i=[r]}else{n=e;i=[r]}n&&t.push(n,i);e.set("W",t);const s=new r.Dict(this.xref);s.set("Ordering","Identity");s.set("Registry","Adobe");s.set("Supplement",0);e.set("CIDSystemInfo",s);return this.xref.getNewPersistentRef(e)}get baseFontRef(){const e=new r.Dict(this.xref);e.set("BaseFont",this.fontName);e.set("Type",r.Name.get("Font"));e.set("Subtype",r.Name.get("Type0"));e.set("Encoding",r.Name.get("Identity-H"));e.set("DescendantFonts",[this.descendantFontRef]);e.set("ToUnicode",this.toUnicodeRef);return this.xref.getNewPersistentRef(e)}get resources(){const e=new r.Dict(this.xref),t=new r.Dict(this.xref);t.set(this.fontName.name,this.baseFontRef);e.set("Font",t);return e}_createContext(){this.widths=new Map;this.ctxMeasure.font=`1000px ${this.fontFamily}`;return this.ctxMeasure}createFontResources(e){const t=this._createContext();for(const a of e.split(/\r\n?|\n/))for(const e of a.split("")){const a=e.charCodeAt(0);if(this.widths.has(a))continue;const r=t.measureText(e),n=Math.ceil(r.width);this.widths.set(a,n);this.firstChar=Math.min(a,this.firstChar);this.lastChar=Math.max(a,this.lastChar)}return this.resources}createAppearance(e,t,a,s,o,c){const l=this._createContext(),u=[];let d=-1/0;for(const t of e.split(/\r\n?|\n/)){u.push(t);const e=l.measureText(t).width;d=Math.max(d,e);for(const e of t.split("")){const t=e.charCodeAt(0);let a=this.widths.get(t);if(void 0===a){const r=l.measureText(e);a=Math.ceil(r.width);this.widths.set(t,a);this.firstChar=Math.min(t,this.firstChar);this.lastChar=Math.max(t,this.lastChar)}}}d*=s/1e3;const[f,g,p,m]=t;let b=p-f,y=m-g;a%180!=0&&([b,y]=[y,b]);let w=1;d>b&&(w=b/d);let S=1;const x=i.LINE_FACTOR*s,C=i.LINE_DESCENT_FACTOR*s,k=x*u.length;k>y&&(S=y/k);const v=s*Math.min(w,S),F=["q",`0 0 ${(0,n.numberToString)(b)} ${(0,n.numberToString)(y)} re W n`,"BT",`1 0 0 1 0 ${(0,n.numberToString)(y+C)} Tm 0 Tc ${getPdfColor(o,!0)}`,`/${this.fontName.name} ${(0,n.numberToString)(v)} Tf`],{resources:O}=this;if(1!==(c="number"==typeof c&&c>=0&&c<=1?c:1)){F.push("/R0 gs");const e=new r.Dict(this.xref),t=new r.Dict(this.xref);t.set("ca",c);t.set("CA",c);t.set("Type",r.Name.get("ExtGState"));e.set("R0",t);O.set("ExtGState",e)}const T=(0,n.numberToString)(x);for(const e of u)F.push(`0 -${T} Td <${(0,n.stringToUTF16HexString)(e)}> Tj`);F.push("ET","Q");const M=F.join("\n"),D=new r.Dict(this.xref);D.set("Subtype",r.Name.get("Form"));D.set("Type",r.Name.get("XObject"));D.set("BBox",[0,0,b,y]);D.set("Length",M.length);D.set("Resources",O);if(a){const e=(0,n.getRotationMatrix)(a,b,y);D.set("Matrix",e)}const E=new h.StringStream(M);E.dict=D;return E}}t.FakeUnicodeFont=FakeUnicodeFont},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ColorSpace=void 0;var r=a(2),n=a(4),i=a(5),s=a(3);class ColorSpace{constructor(e,t){this.constructor===ColorSpace&&(0,r.unreachable)("Cannot initialize ColorSpace.");this.name=e;this.numComps=t}getRgb(e,t){const a=new Uint8ClampedArray(3);this.getRgbItem(e,t,a,0);return a}getRgbItem(e,t,a,n){(0,r.unreachable)("Should not call ColorSpace.getRgbItem")}getRgbBuffer(e,t,a,n,i,s,o){(0,r.unreachable)("Should not call ColorSpace.getRgbBuffer")}getOutputLength(e,t){(0,r.unreachable)("Should not call ColorSpace.getOutputLength")}isPassthrough(e){return!1}isDefaultDecode(e,t){return ColorSpace.isDefaultDecode(e,this.numComps)}fillRgb(e,t,a,r,n,i,s,o,c){const l=t*a;let h=null;const u=1<u&&"DeviceGray"!==this.name&&"DeviceRGB"!==this.name){const t=s<=8?new Uint8Array(u):new Uint16Array(u);for(let e=0;e=.99554525?1:this.#m(0,1,1.055*e**(1/2.4)-.055)}#m(e,t,a){return Math.max(e,Math.min(t,a))}#b(e){return e<0?-this.#b(-e):e>8?((e+16)/116)**3:e*CalRGBCS.#u}#y(e,t,a){if(0===e[0]&&0===e[1]&&0===e[2]){a[0]=t[0];a[1]=t[1];a[2]=t[2];return}const r=this.#b(0),n=(1-r)/(1-this.#b(e[0])),i=1-n,s=(1-r)/(1-this.#b(e[1])),o=1-s,c=(1-r)/(1-this.#b(e[2])),l=1-c;a[0]=t[0]*n+i;a[1]=t[1]*s+o;a[2]=t[2]*c+l}#w(e,t,a){if(1===e[0]&&1===e[2]){a[0]=t[0];a[1]=t[1];a[2]=t[2];return}const r=a;this.#d(CalRGBCS.#n,t,r);const n=CalRGBCS.#c;this.#f(e,r,n);this.#d(CalRGBCS.#i,n,a)}#S(e,t,a){const r=a;this.#d(CalRGBCS.#n,t,r);const n=CalRGBCS.#c;this.#g(e,r,n);this.#d(CalRGBCS.#i,n,a)}#r(e,t,a,r,n){const i=this.#m(0,1,e[t]*n),s=this.#m(0,1,e[t+1]*n),o=this.#m(0,1,e[t+2]*n),c=1===i?1:i**this.GR,l=1===s?1:s**this.GG,h=1===o?1:o**this.GB,u=this.MXA*c+this.MXB*l+this.MXC*h,d=this.MYA*c+this.MYB*l+this.MYC*h,f=this.MZA*c+this.MZB*l+this.MZC*h,g=CalRGBCS.#l;g[0]=u;g[1]=d;g[2]=f;const p=CalRGBCS.#h;this.#w(this.whitePoint,g,p);const m=CalRGBCS.#l;this.#y(this.blackPoint,p,m);const b=CalRGBCS.#h;this.#S(CalRGBCS.#o,m,b);const y=CalRGBCS.#l;this.#d(CalRGBCS.#s,b,y);a[r]=255*this.#p(y[0]);a[r+1]=255*this.#p(y[1]);a[r+2]=255*this.#p(y[2])}getRgbItem(e,t,a,r){this.#r(e,t,a,r,1)}getRgbBuffer(e,t,a,r,n,i,s){const o=1/((1<this.amax||this.bmin>this.bmax){(0,r.info)("Invalid Range, falling back to defaults");this.amin=-100;this.amax=100;this.bmin=-100;this.bmax=100}}#x(e){return e>=6/29?e**3:108/841*(e-4/29)}#A(e,t,a,r){return a+e*(r-a)/t}#r(e,t,a,r,n){let i=e[t],s=e[t+1],o=e[t+2];if(!1!==a){i=this.#A(i,a,0,100);s=this.#A(s,a,this.amin,this.amax);o=this.#A(o,a,this.bmin,this.bmax)}s>this.amax?s=this.amax:sthis.bmax?o=this.bmax:o{Object.defineProperty(t,"__esModule",{value:!0});t.PartialEvaluator=t.EvaluatorPreprocessor=void 0;var r=a(2),n=a(14),i=a(4),s=a(34),o=a(37),c=a(41),l=a(50),h=a(51),u=a(42),d=a(57),f=a(16),g=a(59),p=a(8),m=a(5),b=a(60),y=a(12),w=a(18),S=a(38),x=a(61),C=a(39),k=a(45),v=a(40),F=a(62),O=a(63),T=a(64),M=a(65);const D=Object.freeze({maxImageSize:-1,disableFontFace:!1,ignoreErrors:!1,isEvalSupported:!0,isOffscreenCanvasSupported:!1,canvasMaxAreaInBytes:-1,fontExtraProperties:!1,useSystemFonts:!0,cMapUrl:null,standardFontDataUrl:null}),E=1,N=2,R=Promise.resolve();function normalizeBlendMode(e,t=!1){if(Array.isArray(e)){for(const t of e){const e=normalizeBlendMode(t,!0);if(e)return e}(0,r.warn)(`Unsupported blend mode Array: ${e}`);return"source-over"}if(!(e instanceof i.Name))return t?null:"source-over";switch(e.name){case"Normal":case"Compatible":return"source-over";case"Multiply":return"multiply";case"Screen":return"screen";case"Overlay":return"overlay";case"Darken":return"darken";case"Lighten":return"lighten";case"ColorDodge":return"color-dodge";case"ColorBurn":return"color-burn";case"HardLight":return"hard-light";case"SoftLight":return"soft-light";case"Difference":return"difference";case"Exclusion":return"exclusion";case"Hue":return"hue";case"Saturation":return"saturation";case"Color":return"color";case"Luminosity":return"luminosity"}if(t)return null;(0,r.warn)(`Unsupported blend mode: ${e.name}`);return"source-over"}function incrementCachedImageMaskCount(e){e.fn===r.OPS.paintImageMaskXObject&&e.args[0]?.count>0&&e.args[0].count++}class TimeSlotManager{static TIME_SLOT_DURATION_MS=20;static CHECK_TIME_EVERY=100;constructor(){this.reset()}check(){if(++this.checkedd){const e="Image exceeded maximum allowed size and was removed.";if(this.options.ignoreErrors){(0,r.warn)(e);return}throw new Error(e)}let f;c.has("OC")&&(f=await this.parseMarkedContentProps(c.get("OC"),e));let g,p;if(c.get("IM","ImageMask")||!1){const e=c.get("I","Interpolate"),a=h+7>>3,o=t.getBytes(a*u),d=c.getArray("D","Decode");if(this.parsingType3Font){g=M.PDFImage.createRawMask({imgArray:o,width:h,height:u,imageIsFromDecodeStream:t instanceof w.DecodeStream,inverseDecode:d?.[0]>0,interpolate:e});g.cached=!!i;p=[g];n.addImageOps(r.OPS.paintImageMaskXObject,p,f);if(i){const e={fn:r.OPS.paintImageMaskXObject,args:p,optionalContent:f};s.set(i,l,e);l&&this._regionalImageCache.set(null,l,e)}return}g=await M.PDFImage.createMask({imgArray:o,width:h,height:u,imageIsFromDecodeStream:t instanceof w.DecodeStream,inverseDecode:d?.[0]>0,interpolate:e,isOffscreenCanvasSupported:this.options.isOffscreenCanvasSupported});if(g.isSingleOpaquePixel){n.addImageOps(r.OPS.paintSolidColorImageMask,[],f);if(i){const e={fn:r.OPS.paintSolidColorImageMask,args:[],optionalContent:f};s.set(i,l,e);l&&this._regionalImageCache.set(null,l,e)}return}const m=`mask_${this.idFactory.createObjId()}`;n.addDependency(m);this._sendImgData(m,g);p=[{data:m,width:g.width,height:g.height,interpolate:g.interpolate,count:1}];n.addImageOps(r.OPS.paintImageMaskXObject,p,f);if(i){const e={fn:r.OPS.paintImageMaskXObject,args:p,optionalContent:f};s.set(i,l,e);l&&this._regionalImageCache.set(null,l,e)}return}if(a&&!c.has("SMask")&&!c.has("Mask")&&h+u<200){const i=new M.PDFImage({xref:this.xref,res:e,image:t,isInline:a,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:o});g=await i.createImageData(!0,!1);n.isOffscreenCanvasSupported=this.options.isOffscreenCanvasSupported;n.addImageOps(r.OPS.paintInlineImageXObject,[g],f);return}let m=`img_${this.idFactory.createObjId()}`,b=!1;if(this.parsingType3Font)m=`${this.idFactory.getDocId()}_type3_${m}`;else if(l){b=this.globalImageCache.shouldCache(l,this.pageIndex);b&&(m=`${this.idFactory.getDocId()}_${m}`)}n.addDependency(m);p=[m,h,u];M.PDFImage.buildImage({xref:this.xref,res:e,image:t,isInline:a,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:o}).then((async e=>{g=await e.createImageData(!1,this.options.isOffscreenCanvasSupported);if(i&&l&&b){const e=g.bitmap?g.width*g.height*4:g.data.length;this.globalImageCache.addByteSize(l,e)}return this._sendImgData(m,g,b)})).catch((e=>{(0,r.warn)(`Unable to decode image "${m}": "${e}".`);return this._sendImgData(m,null,b)}));n.addImageOps(r.OPS.paintImageXObject,p,f);if(i){const e={fn:r.OPS.paintImageXObject,args:p,optionalContent:f};s.set(i,l,e);if(l){this._regionalImageCache.set(null,l,e);if(b){(0,r.assert)(!a,"Cannot cache an inline image globally.");this.globalImageCache.setData(l,{objId:m,fn:r.OPS.paintImageXObject,args:p,optionalContent:f,byteSize:0})}}}}handleSMask(e,t,a,r,n,i){const s=e.get("G"),o={subtype:e.get("S").name,backdrop:e.get("BC")},c=e.get("TR");if((0,d.isPDFFunction)(c)){const e=this._pdfFunctionFactory.create(c),t=new Uint8Array(256),a=new Float32Array(1);for(let r=0;r<256;r++){a[0]=r/255;e(a,0,a,0);t[r]=255*a[0]|0}o.transferMap=t}return this.buildFormXObject(t,s,o,a,r,n.state.clone(),i)}handleTransferFunction(e){let t;if(Array.isArray(e))t=e;else{if(!(0,d.isPDFFunction)(e))return null;t=[e]}const a=[];let r=0,n=0;for(const e of t){const t=this.xref.fetchIfRef(e);r++;if((0,i.isName)(t,"Identity")){a.push(null);continue}if(!(0,d.isPDFFunction)(t))return null;const s=this._pdfFunctionFactory.create(t),o=new Uint8Array(256),c=new Float32Array(1);for(let e=0;e<256;e++){c[0]=e/255;s(c,0,c,0);o[e]=255*c[0]|0}a.push(o);n++}return 1!==r&&4!==r||0===n?null:a}handleTilingType(e,t,a,n,s,o,c,h){const u=new T.OperatorList,d=i.Dict.merge({xref:this.xref,dictArray:[s.get("Resources"),a]});return this.getOperatorList({stream:n,task:c,resources:d,operatorList:u}).then((function(){const a=u.getIR(),r=(0,l.getTilingPatternIR)(a,s,t);o.addDependencies(u.dependencies);o.addOp(e,r);s.objId&&h.set(null,s.objId,{operatorListIR:a,dict:s})})).catch((e=>{if(!(e instanceof r.AbortException)){if(!this.options.ignoreErrors)throw e;(0,r.warn)(`handleTilingType - ignoring pattern: "${e}".`)}}))}handleSetFont(e,t,a,r,n,o,c=null,l=null){const h=t?.[0]instanceof i.Name?t[0].name:null;return this.loadFont(h,a,e,c,l).then((t=>t.font.isType3Font?t.loadType3Data(this,e,n).then((function(){r.addDependencies(t.type3Dependencies);return t})).catch((e=>new TranslatedFont({loadedName:"g_font_error",font:new s.ErrorFont(`Type3 font load error: ${e}`),dict:t.font,evaluatorOptions:this.options}))):t)).then((e=>{o.font=e.font;e.send(this.handler);return e.loadedName}))}handleText(e,t){const a=t.font,n=a.charsToGlyphs(e);if(a.data){(!!(t.textRenderingMode&r.TextRenderingMode.ADD_TO_PATH_FLAG)||"Pattern"===t.fillColorSpace.name||a.disableFontFace||this.options.disableFontFace)&&PartialEvaluator.buildFontPaths(a,n,this.handler,this.options)}return n}ensureStateFont(e){if(e.font)return;const t=new r.FormatError("Missing setFont (Tf) operator before text rendering operator.");if(!this.options.ignoreErrors)throw t;(0,r.warn)(`ensureStateFont: "${t}".`)}async setGState({resources:e,gState:t,operatorList:a,cacheKey:n,task:s,stateManager:o,localGStateCache:c,localColorSpaceCache:l}){const h=t.objId;let u=!0;const d=[];let f=Promise.resolve();for(const n of t.getKeys()){const c=t.get(n);switch(n){case"Type":break;case"LW":case"LC":case"LJ":case"ML":case"D":case"RI":case"FL":case"CA":case"ca":d.push([n,c]);break;case"Font":u=!1;f=f.then((()=>this.handleSetFont(e,null,c[0],a,s,o.state).then((function(e){a.addDependency(e);d.push([n,[e,c[1]]])}))));break;case"BM":d.push([n,normalizeBlendMode(c)]);break;case"SMask":if((0,i.isName)(c,"None")){d.push([n,!1]);break}if(c instanceof i.Dict){u=!1;f=f.then((()=>this.handleSMask(c,e,a,s,o,l)));d.push([n,!0])}else(0,r.warn)("Unsupported SMask type");break;case"TR":const t=this.handleTransferFunction(c);d.push([n,t]);break;case"OP":case"op":case"OPM":case"BG":case"BG2":case"UCR":case"UCR2":case"TR2":case"HT":case"SM":case"SA":case"AIS":case"TK":(0,r.info)("graphic state operator "+n);break;default:(0,r.info)("Unknown graphic state operator "+n)}}return f.then((function(){d.length>0&&a.addOp(r.OPS.setGState,[d]);u&&c.set(n,h,d)}))}loadFont(e,t,a,n=null,o=null){const errorFont=async()=>new TranslatedFont({loadedName:"g_font_error",font:new s.ErrorFont(`Font "${e}" is not available.`),dict:t,evaluatorOptions:this.options});let c;if(t)t instanceof i.Ref&&(c=t);else{const t=a.get("Font");t&&(c=t.getRaw(e))}if(c){if(this.parsingType3Font&&this.type3FontRefs.has(c))return errorFont();if(this.fontCache.has(c))return this.fontCache.get(c);t=this.xref.fetchIfRef(c)}if(!(t instanceof i.Dict)){if(!this.options.ignoreErrors&&!this.parsingType3Font){(0,r.warn)(`Font "${e}" is not available.`);return errorFont()}(0,r.warn)(`Font "${e}" is not available -- attempting to fallback to a default font.`);t=n||PartialEvaluator.fallbackFontDict}if(t.cacheKey&&this.fontCache.has(t.cacheKey))return this.fontCache.get(t.cacheKey);const l=new r.PromiseCapability;let h;try{h=this.preEvaluateFont(t);h.cssFontInfo=o}catch(e){(0,r.warn)(`loadFont - preEvaluateFont failed: "${e}".`);return errorFont()}const{descriptor:u,hash:d}=h,f=c instanceof i.Ref;let g;if(d&&u instanceof i.Dict){const e=u.fontAliases||=Object.create(null);if(e[d]){const t=e[d].aliasRef;if(f&&t&&this.fontCache.has(t)){this.fontCache.putAlias(c,t);return this.fontCache.get(c)}}else e[d]={fontID:this.idFactory.createFontId()};f&&(e[d].aliasRef=c);g=e[d].fontID}else g=this.idFactory.createFontId();(0,r.assert)(g?.startsWith("f"),'The "fontID" must be (correctly) defined.');if(f)this.fontCache.put(c,l.promise);else{t.cacheKey=`cacheKey_${g}`;this.fontCache.put(t.cacheKey,l.promise)}t.loadedName=`${this.idFactory.getDocId()}_${g}`;this.translateFont(h).then((e=>{l.resolve(new TranslatedFont({loadedName:t.loadedName,font:e,dict:t,evaluatorOptions:this.options}))})).catch((e=>{(0,r.warn)(`loadFont - translateFont failed: "${e}".`);l.resolve(new TranslatedFont({loadedName:t.loadedName,font:new s.ErrorFont(e instanceof Error?e.message:e),dict:t,evaluatorOptions:this.options}))}));return l.promise}buildPath(e,t,a,n=!1){const i=e.length-1;a||(a=[]);if(i<0||e.fnArray[i]!==r.OPS.constructPath){if(n){(0,r.warn)(`Encountered path operator "${t}" inside of a text object.`);e.addOp(r.OPS.save,null)}let i;switch(t){case r.OPS.rectangle:const e=a[0]+a[2],t=a[1]+a[3];i=[Math.min(a[0],e),Math.max(a[0],e),Math.min(a[1],t),Math.max(a[1],t)];break;case r.OPS.moveTo:case r.OPS.lineTo:i=[a[0],a[0],a[1],a[1]];break;default:i=[1/0,-1/0,1/0,-1/0]}e.addOp(r.OPS.constructPath,[[t],a,i]);n&&e.addOp(r.OPS.restore,null)}else{const n=e.argsArray[i];n[0].push(t);n[1].push(...a);const s=n[2];switch(t){case r.OPS.rectangle:const e=a[0]+a[2],t=a[1]+a[3];s[0]=Math.min(s[0],a[0],e);s[1]=Math.max(s[1],a[0],e);s[2]=Math.min(s[2],a[1],t);s[3]=Math.max(s[3],a[1],t);break;case r.OPS.moveTo:case r.OPS.lineTo:s[0]=Math.min(s[0],a[0]);s[1]=Math.max(s[1],a[0]);s[2]=Math.min(s[2],a[1]);s[3]=Math.max(s[3],a[1])}}}parseColorSpace({cs:e,resources:t,localColorSpaceCache:a}){return y.ColorSpace.parseAsync({cs:e,xref:this.xref,resources:t,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:a}).catch((e=>{if(e instanceof r.AbortException)return null;if(this.options.ignoreErrors){(0,r.warn)(`parseColorSpace - ignoring ColorSpace: "${e}".`);return null}throw e}))}parseShading({shading:e,resources:t,localColorSpaceCache:a,localShadingPatternCache:r}){let n=r.get(e);if(!n){const i=l.Pattern.parseShading(e,this.xref,t,this._pdfFunctionFactory,a).getIR();n=`pattern_${this.idFactory.createObjId()}`;this.parsingType3Font&&(n=`${this.idFactory.getDocId()}_type3_${n}`);r.set(e,n);this.parsingType3Font?this.handler.send("commonobj",[n,"Pattern",i]):this.handler.send("obj",[n,this.pageIndex,"Pattern",i])}return n}handleColorN(e,t,a,n,s,o,c,h,u,d){const f=a.pop();if(f instanceof i.Name){const g=s.getRaw(f.name),p=g instanceof i.Ref&&u.getByRef(g);if(p)try{const r=n.base?n.base.getRgb(a,0):null,i=(0,l.getTilingPatternIR)(p.operatorListIR,p.dict,r);e.addOp(t,i);return}catch{}const b=this.xref.fetchIfRef(g);if(b){const i=b instanceof m.BaseStream?b.dict:b,s=i.get("PatternType");if(s===E){const r=n.base?n.base.getRgb(a,0):null;return this.handleTilingType(t,r,o,b,i,e,c,u)}if(s===N){const a=i.get("Shading"),r=i.getArray("Matrix"),n=this.parseShading({shading:a,resources:o,localColorSpaceCache:h,localShadingPatternCache:d});e.addOp(t,["Shading",n,r]);return}throw new r.FormatError(`Unknown PatternType: ${s}`)}}throw new r.FormatError(`Unknown PatternName: ${f}`)}_parseVisibilityExpression(e,t,a){if(++t>10){(0,r.warn)("Visibility expression is too deeply nested");return}const n=e.length,s=this.xref.fetchIfRef(e[0]);if(!(n<2)&&s instanceof i.Name){switch(s.name){case"And":case"Or":case"Not":a.push(s.name);break;default:(0,r.warn)(`Invalid operator ${s.name} in visibility expression`);return}for(let r=1;r0)return{type:"OCMD",expression:t}}const t=a.get("OCGs");if(Array.isArray(t)||t instanceof i.Dict){const e=[];if(Array.isArray(t))for(const a of t)e.push(a.toString());else e.push(t.objId);return{type:n,ids:e,policy:a.get("P")instanceof i.Name?a.get("P").name:null,expression:null}}if(t instanceof i.Ref)return{type:n,id:t.toString()}}return null}getOperatorList({stream:e,task:t,resources:a,operatorList:n,initialState:s=null,fallbackFontDict:o=null}){a||=i.Dict.empty;s||=new EvalState;if(!n)throw new Error('getOperatorList: missing "operatorList" parameter');const c=this,l=this.xref;let h=!1;const u=new g.LocalImageCache,d=new g.LocalColorSpaceCache,f=new g.LocalGStateCache,p=new g.LocalTilingPatternCache,b=new Map,w=a.get("XObject")||i.Dict.empty,S=a.get("Pattern")||i.Dict.empty,x=new StateManager(s),C=new EvaluatorPreprocessor(e,l,x),k=new TimeSlotManager;function closePendingRestoreOPS(e){for(let e=0,t=C.savedStatesDepth;e0&&n.addOp(r.OPS.setGState,[t]);e=null;continue}}next(new Promise((function(e,s){if(!D)throw new r.FormatError("GState must be referred to by name.");const o=a.get("ExtGState");if(!(o instanceof i.Dict))throw new r.FormatError("ExtGState should be a dictionary.");const l=o.get(M);if(!(l instanceof i.Dict))throw new r.FormatError("GState should be a dictionary.");c.setGState({resources:a,gState:l,operatorList:n,cacheKey:M,task:t,stateManager:x,localGStateCache:f,localColorSpaceCache:d}).then(e,s)})).catch((function(e){if(!(e instanceof r.AbortException)){if(!c.options.ignoreErrors)throw e;(0,r.warn)(`getOperatorList - ignoring ExtGState: "${e}".`)}})));return;case r.OPS.moveTo:case r.OPS.lineTo:case r.OPS.curveTo:case r.OPS.curveTo2:case r.OPS.curveTo3:case r.OPS.closePath:case r.OPS.rectangle:c.buildPath(n,s,e,h);continue;case r.OPS.markPoint:case r.OPS.markPointProps:case r.OPS.beginCompat:case r.OPS.endCompat:continue;case r.OPS.beginMarkedContentProps:if(!(e[0]instanceof i.Name)){(0,r.warn)(`Expected name for beginMarkedContentProps arg0=${e[0]}`);continue}if("OC"===e[0].name){next(c.parseMarkedContentProps(e[1],a).then((e=>{n.addOp(r.OPS.beginMarkedContentProps,["OC",e])})).catch((e=>{if(!(e instanceof r.AbortException)){if(!c.options.ignoreErrors)throw e;(0,r.warn)(`getOperatorList - ignoring beginMarkedContentProps: "${e}".`)}})));return}e=[e[0].name,e[1]instanceof i.Dict?e[1].get("MCID"):null];break;case r.OPS.beginMarkedContent:case r.OPS.endMarkedContent:default:if(null!==e){for(F=0,O=e.length;F{if(!(e instanceof r.AbortException)){if(!this.options.ignoreErrors)throw e;(0,r.warn)(`getOperatorList - ignoring errors during "${t.name}" task: "${e}".`);closePendingRestoreOPS()}}))}getTextContent({stream:e,task:t,resources:a,stateManager:n=null,includeMarkedContent:s=!1,sink:o,seenStyles:c=new Set,viewBox:l,markedContentData:h=null,disableNormalization:u=!1}){a||=i.Dict.empty;n||=new StateManager(new TextState);s&&(h||={level:0});const d={items:[],styles:Object.create(null)},f={initialized:!1,str:[],totalWidth:0,totalHeight:0,width:0,height:0,vertical:!1,prevTransform:null,textAdvanceScale:0,spaceInFlowMin:0,spaceInFlowMax:0,trackingSpaceMin:1/0,negativeSpaceMax:-1/0,notASpace:-1/0,transform:null,fontName:null,hasEOL:!1},p=[" "," "];let y=0;function saveLastChar(e){const t=(y+1)%2,a=" "!==p[y]&&" "===p[t];p[y]=e;y=t;return a}function shouldAddWhitepsace(){return" "!==p[y]&&" "===p[(y+1)%2]}function resetLastChars(){p[0]=p[1]=" ";y=0}const w=this,S=this.xref,x=[];let C=null;const k=new g.LocalImageCache,v=new g.LocalGStateCache,F=new EvaluatorPreprocessor(e,S,n);let O;function pushWhitespace({width:e=0,height:t=0,transform:a=f.prevTransform,fontName:r=f.fontName}){d.items.push({str:" ",dir:"ltr",width:e,height:t,transform:a,fontName:r,hasEOL:!1})}function getCurrentTextTransform(){const e=O.font,t=[O.fontSize*O.textHScale,0,0,O.fontSize,0,O.textRise];if(e.isType3Font&&(O.fontSize<=1||e.isCharBBox)&&!(0,r.isArrayEqual)(O.fontMatrix,r.FONT_IDENTITY_MATRIX)){const a=e.bbox[3]-e.bbox[1];a>0&&(t[3]*=a*O.fontMatrix[3])}return r.Util.transform(O.ctm,r.Util.transform(O.textMatrix,t))}function ensureTextContentItem(){if(f.initialized)return f;const{font:e,loadedName:t}=O;if(!c.has(t)){c.add(t);d.styles[t]={fontFamily:e.fallbackName,ascent:e.ascent,descent:e.descent,vertical:e.vertical}}f.fontName=t;const a=f.transform=getCurrentTextTransform();if(e.vertical){f.width=f.totalWidth=Math.hypot(a[0],a[1]);f.height=f.totalHeight=0;f.vertical=!0}else{f.width=f.totalWidth=0;f.height=f.totalHeight=Math.hypot(a[2],a[3]);f.vertical=!1}const r=Math.hypot(O.textLineMatrix[0],O.textLineMatrix[1]),n=Math.hypot(O.ctm[0],O.ctm[1]);f.textAdvanceScale=n*r;const{fontSize:i}=O;f.trackingSpaceMin=.102*i;f.notASpace=.03*i;f.negativeSpaceMax=-.2*i;f.spaceInFlowMin=.102*i;f.spaceInFlowMax=.6*i;f.hasEOL=!1;f.initialized=!0;return f}function updateAdvanceScale(){if(!f.initialized)return;const e=Math.hypot(O.textLineMatrix[0],O.textLineMatrix[1]),t=Math.hypot(O.ctm[0],O.ctm[1])*e;if(t!==f.textAdvanceScale){if(f.vertical){f.totalHeight+=f.height*f.textAdvanceScale;f.height=0}else{f.totalWidth+=f.width*f.textAdvanceScale;f.width=0}f.textAdvanceScale=t}}function handleSetFont(e,n){return w.loadFont(e,n,a).then((function(e){return e.font.isType3Font?e.loadType3Data(w,a,t).catch((function(){})).then((function(){return e})):e})).then((function(e){O.loadedName=e.loadedName;O.font=e.font;O.fontMatrix=e.font.fontMatrix||r.FONT_IDENTITY_MATRIX}))}function applyInverseRotation(e,t,a){const r=Math.hypot(a[0],a[1]);return[(a[0]*e+a[1]*t)/r,(a[2]*e+a[3]*t)/r]}function compareWithLastPosition(e){const t=getCurrentTextTransform();let a=t[4],r=t[5];if(O.font?.vertical){if(al[2]||r+el[3])return!1}else if(a+el[2]||rl[3])return!1;if(!O.font||!f.prevTransform)return!0;let n=f.prevTransform[4],i=f.prevTransform[5];if(n===a&&i===r)return!0;let s=-1;t[0]&&0===t[1]&&0===t[2]?s=t[0]>0?0:180:t[1]&&0===t[0]&&0===t[3]&&(s=t[1]>0?90:270);switch(s){case 0:break;case 90:[a,r]=[r,a];[n,i]=[i,n];break;case 180:[a,r,n,i]=[-a,-r,-n,-i];break;case 270:[a,r]=[-r,-a];[n,i]=[-i,-n];break;default:[a,r]=applyInverseRotation(a,r,t);[n,i]=applyInverseRotation(n,i,f.prevTransform)}if(O.font.vertical){const e=(i-r)/f.textAdvanceScale,t=a-n,s=Math.sign(f.height);if(e.5*f.width){appendEOL();return!0}resetLastChars();flushTextContentItem();return!0}if(Math.abs(t)>f.width){appendEOL();return!0}e<=s*f.notASpace&&resetLastChars();if(e<=s*f.trackingSpaceMin)if(shouldAddWhitepsace()){resetLastChars();flushTextContentItem();pushWhitespace({height:Math.abs(e)})}else f.height+=e;else if(!addFakeSpaces(e,f.prevTransform,s))if(0===f.str.length){resetLastChars();pushWhitespace({height:Math.abs(e)})}else f.height+=e;Math.abs(t)>.25*f.width&&flushTextContentItem();return!0}const o=(a-n)/f.textAdvanceScale,c=r-i,h=Math.sign(f.width);if(o.5*f.height){appendEOL();return!0}resetLastChars();flushTextContentItem();return!0}if(Math.abs(c)>f.height){appendEOL();return!0}o<=h*f.notASpace&&resetLastChars();if(o<=h*f.trackingSpaceMin)if(shouldAddWhitepsace()){resetLastChars();flushTextContentItem();pushWhitespace({width:Math.abs(o)})}else f.width+=o;else if(!addFakeSpaces(o,f.prevTransform,h))if(0===f.str.length){resetLastChars();pushWhitespace({width:Math.abs(o)})}else f.width+=o;Math.abs(c)>.25*f.height&&flushTextContentItem();return!0}function buildTextContentItem({chars:e,extraSpacing:t}){const a=O.font;if(!e){const e=O.charSpacing+t;e&&(a.vertical?O.translateTextMatrix(0,-e):O.translateTextMatrix(e*O.textHScale,0));return}const r=a.charsToGlyphs(e),n=O.fontMatrix[0]*O.fontSize;for(let e=0,i=r.length;e0){const e=x.join("");x.length=0;buildTextContentItem({chars:e,extraSpacing:0})}break;case r.OPS.showText:if(!n.state.font){w.ensureStateFont(n.state);continue}buildTextContentItem({chars:b[0],extraSpacing:0});break;case r.OPS.nextLineShowText:if(!n.state.font){w.ensureStateFont(n.state);continue}O.carriageReturn();buildTextContentItem({chars:b[0],extraSpacing:0});break;case r.OPS.nextLineSetSpacingShowText:if(!n.state.font){w.ensureStateFont(n.state);continue}O.wordSpacing=b[0];O.charSpacing=b[1];O.carriageReturn();buildTextContentItem({chars:b[2],extraSpacing:0});break;case r.OPS.paintXObject:flushTextContentItem();C||(C=a.get("XObject")||i.Dict.empty);var D=b[0]instanceof i.Name,E=b[0].name;if(D&&k.getByName(E))break;next(new Promise((function(e,d){if(!D)throw new r.FormatError("XObject must be referred to by name.");let f=C.getRaw(E);if(f instanceof i.Ref){if(k.getByRef(f)){e();return}if(w.globalImageCache.getData(f,w.pageIndex)){e();return}f=S.fetch(f)}if(!(f instanceof m.BaseStream))throw new r.FormatError("XObject should be a stream");const g=f.dict.get("Subtype");if(!(g instanceof i.Name))throw new r.FormatError("XObject should have a Name subtype");if("Form"!==g.name){k.set(E,f.dict.objId,!0);e();return}const p=n.state.clone(),b=new StateManager(p),y=f.dict.getArray("Matrix");Array.isArray(y)&&6===y.length&&b.transform(y);enqueueChunk();const x={enqueueInvoked:!1,enqueue(e,t){this.enqueueInvoked=!0;o.enqueue(e,t)},get desiredSize(){return o.desiredSize},get ready(){return o.ready}};w.getTextContent({stream:f,task:t,resources:f.dict.get("Resources")||a,stateManager:b,includeMarkedContent:s,sink:x,seenStyles:c,viewBox:l,markedContentData:h,disableNormalization:u}).then((function(){x.enqueueInvoked||k.set(E,f.dict.objId,!0);e()}),d)})).catch((function(e){if(!(e instanceof r.AbortException)){if(!w.options.ignoreErrors)throw e;(0,r.warn)(`getTextContent - ignoring XObject: "${e}".`)}})));return;case r.OPS.setGState:D=b[0]instanceof i.Name;E=b[0].name;if(D&&v.getByName(E))break;next(new Promise((function(e,t){if(!D)throw new r.FormatError("GState must be referred to by name.");const n=a.get("ExtGState");if(!(n instanceof i.Dict))throw new r.FormatError("ExtGState should be a dictionary.");const s=n.get(E);if(!(s instanceof i.Dict))throw new r.FormatError("GState should be a dictionary.");const o=s.get("Font");if(o){flushTextContentItem();O.fontName=null;O.fontSize=o[1];handleSetFont(null,o[0]).then(e,t)}else{v.set(E,s.objId,!0);e()}})).catch((function(e){if(!(e instanceof r.AbortException)){if(!w.options.ignoreErrors)throw e;(0,r.warn)(`getTextContent - ignoring ExtGState: "${e}".`)}})));return;case r.OPS.beginMarkedContent:flushTextContentItem();if(s){h.level++;d.items.push({type:"beginMarkedContent",tag:b[0]instanceof i.Name?b[0].name:null})}break;case r.OPS.beginMarkedContentProps:flushTextContentItem();if(s){h.level++;let e=null;b[1]instanceof i.Dict&&(e=b[1].get("MCID"));d.items.push({type:"beginMarkedContentProps",id:Number.isInteger(e)?`${w.idFactory.getPageObjId()}_mc${e}`:null,tag:b[0]instanceof i.Name?b[0].name:null})}break;case r.OPS.endMarkedContent:flushTextContentItem();if(s){if(0===h.level)break;h.level--;d.items.push({type:"endMarkedContent"})}break;case r.OPS.restore:!e||e.font===O.font&&e.fontSize===O.fontSize&&e.fontName===O.fontName||flushTextContentItem()}if(d.items.length>=o.desiredSize){p=!0;break}}if(p)next(R);else{flushTextContentItem();enqueueChunk();e()}})).catch((e=>{if(!(e instanceof r.AbortException)){if(!this.options.ignoreErrors)throw e;(0,r.warn)(`getTextContent - ignoring errors during "${t.name}" task: "${e}".`);flushTextContentItem();enqueueChunk()}}))}extractDataStructures(e,t,a){const n=this.xref;let s;const l=this.readToUnicode(a.toUnicode||e.get("ToUnicode")||t.get("ToUnicode"));if(a.composite){const t=e.get("CIDSystemInfo");t instanceof i.Dict&&(a.cidSystemInfo={registry:(0,r.stringToPDFString)(t.get("Registry")),ordering:(0,r.stringToPDFString)(t.get("Ordering")),supplement:t.get("Supplement")});try{const t=e.get("CIDToGIDMap");t instanceof m.BaseStream&&(s=t.getBytes())}catch(e){if(!this.options.ignoreErrors)throw e;(0,r.warn)(`extractDataStructures - ignoring CIDToGIDMap data: "${e}".`)}}const h=[];let u,d=null;if(e.has("Encoding")){u=e.get("Encoding");if(u instanceof i.Dict){d=u.get("BaseEncoding");d=d instanceof i.Name?d.name:null;if(u.has("Differences")){const e=u.get("Differences");let t=0;for(const a of e){const e=n.fetchIfRef(a);if("number"==typeof e)t=e;else{if(!(e instanceof i.Name))throw new r.FormatError(`Invalid entry in 'Differences' array: ${e}`);h[t++]=e.name}}}}else if(u instanceof i.Name)d=u.name;else{const e="Encoding is not a Name nor a Dict";if(!this.options.ignoreErrors)throw new r.FormatError(e);(0,r.warn)(e)}"MacRomanEncoding"!==d&&"MacExpertEncoding"!==d&&"WinAnsiEncoding"!==d&&(d=null)}const f=!a.file||a.isInternalFont,g=(0,c.getSymbolsFonts)()[a.name];d&&f&&g&&(d=null);if(d)a.defaultEncoding=(0,o.getEncoding)(d);else{const e=!!(a.flags&S.FontFlags.Symbolic),t=!!(a.flags&S.FontFlags.Nonsymbolic);u=o.StandardEncoding;"TrueType"!==a.type||t||(u=o.WinAnsiEncoding);if(e||g){u=o.MacRomanEncoding;f&&(/Symbol/i.test(a.name)?u=o.SymbolSetEncoding:/Dingbats/i.test(a.name)?u=o.ZapfDingbatsEncoding:/Wingdings/i.test(a.name)&&(u=o.WinAnsiEncoding))}a.defaultEncoding=u}a.differences=h;a.baseEncodingName=d;a.hasEncoding=!!d||h.length>0;a.dict=e;return l.then((e=>{a.toUnicode=e;return this.buildToUnicode(a)})).then((e=>{a.toUnicode=e;s&&(a.cidToGidMap=this.readCidToGidMap(s,e));return a}))}_simpleFontToUnicode(e,t=!1){(0,r.assert)(!e.composite,"Must be a simple font.");const a=[],n=e.defaultEncoding.slice(),i=e.baseEncodingName,s=e.differences;for(const e in s){const t=s[e];".notdef"!==t&&(n[e]=t)}const c=(0,C.getGlyphsUnicode)();for(const r in n){let s=n[r];if(""===s)continue;let l=c[s];if(void 0!==l){a[r]=String.fromCharCode(l);continue}let h=0;switch(s[0]){case"G":3===s.length&&(h=parseInt(s.substring(1),16));break;case"g":5===s.length&&(h=parseInt(s.substring(1),16));break;case"C":case"c":if(s.length>=3&&s.length<=4){const a=s.substring(1);if(t){h=parseInt(a,16);break}h=+a;if(Number.isNaN(h)&&Number.isInteger(parseInt(a,16)))return this._simpleFontToUnicode(e,!0)}break;case"u":l=(0,v.getUnicodeForGlyph)(s,c);-1!==l&&(h=l);break;default:switch(s){case"f_h":case"f_t":case"T_h":a[r]=s.replaceAll("_","");continue}}if(h>0&&h<=1114111&&Number.isInteger(h)){if(i&&h===+r){const e=(0,o.getEncoding)(i);if(e&&(s=e[r])){a[r]=String.fromCharCode(c[s]);continue}}a[r]=String.fromCodePoint(h)}}return a}async buildToUnicode(e){e.hasIncludedToUnicodeMap=e.toUnicode?.length>0;if(e.hasIncludedToUnicodeMap){!e.composite&&e.hasEncoding&&(e.fallbackToUnicode=this._simpleFontToUnicode(e));return e.toUnicode}if(!e.composite)return new u.ToUnicodeMap(this._simpleFontToUnicode(e));if(e.composite&&(e.cMap.builtInCMap&&!(e.cMap instanceof n.IdentityCMap)||"Adobe"===e.cidSystemInfo.registry&&("GB1"===e.cidSystemInfo.ordering||"CNS1"===e.cidSystemInfo.ordering||"Japan1"===e.cidSystemInfo.ordering||"Korea1"===e.cidSystemInfo.ordering))){const{registry:t,ordering:a}=e.cidSystemInfo,s=i.Name.get(`${t}-${a}-UCS2`),o=await n.CMapFactory.create({encoding:s,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null}),c=[],l=[];e.cMap.forEach((function(e,t){if(t>65535)throw new r.FormatError("Max size of CID is 65,535");const a=o.lookup(t);if(a){l.length=0;for(let e=0,t=a.length;e{if(e instanceof r.AbortException)return null;if(this.options.ignoreErrors){(0,r.warn)(`readToUnicode - ignoring ToUnicode data: "${e}".`);return null}throw e})):Promise.resolve(null):Promise.resolve(null)}readCidToGidMap(e,t){const a=[];for(let r=0,n=e.length;r>1;(0!==n||t.has(i))&&(a[i]=n)}return a}extractWidths(e,t,a){const r=this.xref;let n=[],s=0;const o=[];let c,l,h,u,d,f,g,p;if(a.composite){s=e.has("DW")?e.get("DW"):1e3;p=e.get("W");if(p)for(l=0,h=p.length;l{if(g){const e=[];let a=u;for(const t of g)e[a++]=this.xref.fetchIfRef(t);t.widths=e}else t.widths=this.buildCharCodeToWidth(n.widths,t);return new s.Font(e,y,t)}))}(e=new i.Dict(null)).set("FontName",i.Name.get(l));e.set("FontBBox",t.getArray("FontBBox")||[0,0,0,0])}let y=e.get("FontName"),w=t.get("BaseFont");"string"==typeof y&&(y=i.Name.get(y));"string"==typeof w&&(w=i.Name.get(w));const C=y?.name,k=w?.name;if(!m&&C!==k){(0,r.info)(`The FontDescriptor's FontName is "${C}" but should be the same as the Font's BaseFont "${k}".`);C&&k&&(k.startsWith(C)||!(0,c.isKnownFontName)(C)&&(0,c.isKnownFontName)(k))&&(y=null)}y||=w;if(!(y instanceof i.Name))throw new r.FormatError("invalid font name");let v,F,O,T,M;try{v=e.get("FontFile","FontFile2","FontFile3")}catch(e){if(!this.options.ignoreErrors)throw e;(0,r.warn)(`translateFont - fetching "${y.name}" font file: "${e}".`);v=new p.NullStream}let D=!1,E=null,N=null;if(v){if(v.dict){const e=v.dict.get("Subtype");e instanceof i.Name&&(F=e.name);O=v.dict.get("Length1");T=v.dict.get("Length2");M=v.dict.get("Length3")}}else if(g){const e=(0,h.getXfaFontName)(y.name);if(e){g.fontFamily=`${g.fontFamily}-PdfJS-XFA`;g.metrics=e.metrics||null;E=e.factors||null;v=await this.fetchStandardFontData(e.name);D=!!v;a=t=(0,h.getXfaFontDict)(y.name);o=!0}}else if(!m){const e=(0,c.getStandardFontName)(y.name);if(e){v=await this.fetchStandardFontData(e);D=!!v}!D&&this.options.useSystemFonts&&(N=(0,x.getFontSubstitution)(this.systemFontCache,this.idFactory,this.options.standardFontDataUrl,y.name,e))}b={type:l,name:y.name,subtype:F,file:v,length1:O,length2:T,length3:M,isInternalFont:D,loadedName:a.loadedName,composite:o,fixedPitch:!1,fontMatrix:t.getArray("FontMatrix")||r.FONT_IDENTITY_MATRIX,firstChar:u,lastChar:d,toUnicode:f,bbox:e.getArray("FontBBox")||t.getArray("FontBBox"),ascent:e.get("Ascent"),descent:e.get("Descent"),xHeight:e.get("XHeight")||0,capHeight:e.get("CapHeight")||0,flags:e.get("Flags"),italicAngle:e.get("ItalicAngle")||0,isType3Font:m,cssFontInfo:g,scaleFactors:E,systemFontInfo:N};if(o){const e=a.get("Encoding");e instanceof i.Name&&(b.cidEncoding=e.name);const t=await n.CMapFactory.create({encoding:e,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});b.cMap=t;b.vertical=b.cMap.vertical}return this.extractDataStructures(t,a,b).then((a=>{this.extractWidths(t,e,a);return new s.Font(y.name,v,a)}))}static buildFontPaths(e,t,a,n){function buildPath(t){const i=`${e.loadedName}_path_${t}`;try{if(e.renderer.hasBuiltPath(t))return;a.send("commonobj",[i,"FontPath",e.renderer.getPathJs(t)])}catch(e){if(n.ignoreErrors){(0,r.warn)(`buildFontPaths - ignoring ${i} glyph: "${e}".`);return}throw e}}for(const e of t){buildPath(e.fontChar);const t=e.accent;t?.fontChar&&buildPath(t.fontChar)}}static get fallbackFontDict(){const e=new i.Dict;e.set("BaseFont",i.Name.get("Helvetica"));e.set("Type",i.Name.get("FallbackType"));e.set("Subtype",i.Name.get("FallbackType"));e.set("Encoding",i.Name.get("WinAnsiEncoding"));return(0,r.shadow)(this,"fallbackFontDict",e)}}t.PartialEvaluator=PartialEvaluator;class TranslatedFont{constructor({loadedName:e,font:t,dict:a,evaluatorOptions:r}){this.loadedName=e;this.font=t;this.dict=a;this._evaluatorOptions=r||D;this.type3Loaded=null;this.type3Dependencies=t.isType3Font?new Set:null;this.sent=!1}send(e){if(!this.sent){this.sent=!0;e.send("commonobj",[this.loadedName,"Font",this.font.exportData(this._evaluatorOptions.fontExtraProperties)])}}fallback(e){if(this.font.data){this.font.disableFontFace=!0;PartialEvaluator.buildFontPaths(this.font,this.font.glyphCacheValues,e,this._evaluatorOptions)}}loadType3Data(e,t,a){if(this.type3Loaded)return this.type3Loaded;if(!this.font.isType3Font)throw new Error("Must be a Type3 font.");const n=e.clone({ignoreErrors:!1});n.parsingType3Font=!0;const s=new i.RefSet(e.type3FontRefs);this.dict.objId&&!s.has(this.dict.objId)&&s.put(this.dict.objId);n.type3FontRefs=s;const o=this.font,c=this.type3Dependencies;let l=Promise.resolve();const h=this.dict.get("CharProcs"),u=this.dict.get("Resources")||t,d=Object.create(null),f=r.Util.normalizeRect(o.bbox||[0,0,0,0]),g=f[2]-f[0],p=f[3]-f[1],m=Math.hypot(g,p);for(const e of h.getKeys())l=l.then((()=>{const t=h.get(e),i=new T.OperatorList;return n.getOperatorList({stream:t,task:a,resources:u,operatorList:i}).then((()=>{i.fnArray[0]===r.OPS.setCharWidthAndBounds&&this._removeType3ColorOperators(i,m);d[e]=i.getIR();for(const e of i.dependencies)c.add(e)})).catch((function(t){(0,r.warn)(`Type3 font resource "${e}" is not available.`);const a=new T.OperatorList;d[e]=a.getIR()}))}));this.type3Loaded=l.then((()=>{o.charProcOperatorList=d;if(this._bbox){o.isCharBBox=!0;o.bbox=this._bbox}}));return this.type3Loaded}_removeType3ColorOperators(e,t=NaN){const a=r.Util.normalizeRect(e.argsArray[0].slice(2)),n=a[2]-a[0],i=a[3]-a[1],s=Math.hypot(n,i);if(0===n||0===i){e.fnArray.splice(0,1);e.argsArray.splice(0,1)}else if(0===t||Math.round(s/t)>=10){this._bbox||(this._bbox=[1/0,1/0,-1/0,-1/0]);this._bbox[0]=Math.min(this._bbox[0],a[0]);this._bbox[1]=Math.min(this._bbox[1],a[1]);this._bbox[2]=Math.max(this._bbox[2],a[2]);this._bbox[3]=Math.max(this._bbox[3],a[3])}let o=0,c=e.length;for(;o=r.OPS.moveTo&&s<=r.OPS.endPath;if(i.variableArgs)c>o&&(0,r.info)(`Command ${n}: expected [0, ${o}] args, but received ${c} args.`);else{if(c!==o){const e=this.nonProcessedArgs;for(;c>o;){e.push(t.shift());c--}for(;cEvaluatorPreprocessor.MAX_INVALID_PATH_OPS)throw new r.FormatError(`Invalid ${e}`);(0,r.warn)(`Skipping ${e}`);null!==t&&(t.length=0);continue}}this.preprocessCommand(s,t);e.fn=s;e.args=t;return!0}if(a===i.EOF)return!1;if(null!==a){null===t&&(t=[]);t.push(a);if(t.length>33)throw new r.FormatError("Too many arguments")}}}preprocessCommand(e,t){switch(0|e){case r.OPS.save:this.stateManager.save();break;case r.OPS.restore:this.stateManager.restore();break;case r.OPS.transform:this.stateManager.transform(t)}}}t.EvaluatorPreprocessor=EvaluatorPreprocessor},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.IdentityCMap=t.CMapFactory=t.CMap=void 0;var r=a(2),n=a(4),i=a(5),s=a(15),o=a(16),c=a(3),l=a(8);const h=["Adobe-GB1-UCS2","Adobe-CNS1-UCS2","Adobe-Japan1-UCS2","Adobe-Korea1-UCS2","78-EUC-H","78-EUC-V","78-H","78-RKSJ-H","78-RKSJ-V","78-V","78ms-RKSJ-H","78ms-RKSJ-V","83pv-RKSJ-H","90ms-RKSJ-H","90ms-RKSJ-V","90msp-RKSJ-H","90msp-RKSJ-V","90pv-RKSJ-H","90pv-RKSJ-V","Add-H","Add-RKSJ-H","Add-RKSJ-V","Add-V","Adobe-CNS1-0","Adobe-CNS1-1","Adobe-CNS1-2","Adobe-CNS1-3","Adobe-CNS1-4","Adobe-CNS1-5","Adobe-CNS1-6","Adobe-GB1-0","Adobe-GB1-1","Adobe-GB1-2","Adobe-GB1-3","Adobe-GB1-4","Adobe-GB1-5","Adobe-Japan1-0","Adobe-Japan1-1","Adobe-Japan1-2","Adobe-Japan1-3","Adobe-Japan1-4","Adobe-Japan1-5","Adobe-Japan1-6","Adobe-Korea1-0","Adobe-Korea1-1","Adobe-Korea1-2","B5-H","B5-V","B5pc-H","B5pc-V","CNS-EUC-H","CNS-EUC-V","CNS1-H","CNS1-V","CNS2-H","CNS2-V","ETHK-B5-H","ETHK-B5-V","ETen-B5-H","ETen-B5-V","ETenms-B5-H","ETenms-B5-V","EUC-H","EUC-V","Ext-H","Ext-RKSJ-H","Ext-RKSJ-V","Ext-V","GB-EUC-H","GB-EUC-V","GB-H","GB-V","GBK-EUC-H","GBK-EUC-V","GBK2K-H","GBK2K-V","GBKp-EUC-H","GBKp-EUC-V","GBT-EUC-H","GBT-EUC-V","GBT-H","GBT-V","GBTpc-EUC-H","GBTpc-EUC-V","GBpc-EUC-H","GBpc-EUC-V","H","HKdla-B5-H","HKdla-B5-V","HKdlb-B5-H","HKdlb-B5-V","HKgccs-B5-H","HKgccs-B5-V","HKm314-B5-H","HKm314-B5-V","HKm471-B5-H","HKm471-B5-V","HKscs-B5-H","HKscs-B5-V","Hankaku","Hiragana","KSC-EUC-H","KSC-EUC-V","KSC-H","KSC-Johab-H","KSC-Johab-V","KSC-V","KSCms-UHC-H","KSCms-UHC-HW-H","KSCms-UHC-HW-V","KSCms-UHC-V","KSCpc-EUC-H","KSCpc-EUC-V","Katakana","NWP-H","NWP-V","RKSJ-H","RKSJ-V","Roman","UniCNS-UCS2-H","UniCNS-UCS2-V","UniCNS-UTF16-H","UniCNS-UTF16-V","UniCNS-UTF32-H","UniCNS-UTF32-V","UniCNS-UTF8-H","UniCNS-UTF8-V","UniGB-UCS2-H","UniGB-UCS2-V","UniGB-UTF16-H","UniGB-UTF16-V","UniGB-UTF32-H","UniGB-UTF32-V","UniGB-UTF8-H","UniGB-UTF8-V","UniJIS-UCS2-H","UniJIS-UCS2-HW-H","UniJIS-UCS2-HW-V","UniJIS-UCS2-V","UniJIS-UTF16-H","UniJIS-UTF16-V","UniJIS-UTF32-H","UniJIS-UTF32-V","UniJIS-UTF8-H","UniJIS-UTF8-V","UniJIS2004-UTF16-H","UniJIS2004-UTF16-V","UniJIS2004-UTF32-H","UniJIS2004-UTF32-V","UniJIS2004-UTF8-H","UniJIS2004-UTF8-V","UniJISPro-UCS2-HW-V","UniJISPro-UCS2-V","UniJISPro-UTF8-V","UniJISX0213-UTF32-H","UniJISX0213-UTF32-V","UniJISX02132004-UTF32-H","UniJISX02132004-UTF32-V","UniKS-UCS2-H","UniKS-UCS2-V","UniKS-UTF16-H","UniKS-UTF16-V","UniKS-UTF32-H","UniKS-UTF32-V","UniKS-UTF8-H","UniKS-UTF8-V","V","WP-Symbol"],u=2**24-1;class CMap{constructor(e=!1){this.codespaceRanges=[[],[],[],[]];this.numCodespaceRanges=0;this._map=[];this.name="";this.vertical=!1;this.useCMap=null;this.builtInCMap=e}addCodespaceRange(e,t,a){this.codespaceRanges[e-1].push(t,a);this.numCodespaceRanges++}mapCidRange(e,t,a){if(t-e>u)throw new Error("mapCidRange - ignoring data above MAX_MAP_RANGE.");for(;e<=t;)this._map[e++]=a++}mapBfRange(e,t,a){if(t-e>u)throw new Error("mapBfRange - ignoring data above MAX_MAP_RANGE.");const r=a.length-1;for(;e<=t;){this._map[e++]=a;const t=a.charCodeAt(r)+1;t>255?a=a.substring(0,r-1)+String.fromCharCode(a.charCodeAt(r-1)+1)+"\0":a=a.substring(0,r)+String.fromCharCode(t)}}mapBfRangeToArray(e,t,a){if(t-e>u)throw new Error("mapBfRangeToArray - ignoring data above MAX_MAP_RANGE.");const r=a.length;let n=0;for(;e<=t&&n>>0;const s=n[i];for(let e=0,t=s.length;e=t&&r<=n){a.charcode=r;a.length=i+1;return}}}a.charcode=0;a.length=1}getCharCodeLength(e){const t=this.codespaceRanges;for(let a=0,r=t.length;a=n&&e<=i)return a+1}}return 1}get length(){return this._map.length}get isIdentityCMap(){if("Identity-H"!==this.name&&"Identity-V"!==this.name)return!1;if(65536!==this._map.length)return!1;for(let e=0;e<65536;e++)if(this._map[e]!==e)return!1;return!0}}t.CMap=CMap;class IdentityCMap extends CMap{constructor(e,t){super();this.vertical=e;this.addCodespaceRange(t,0,65535)}mapCidRange(e,t,a){(0,r.unreachable)("should not call mapCidRange")}mapBfRange(e,t,a){(0,r.unreachable)("should not call mapBfRange")}mapBfRangeToArray(e,t,a){(0,r.unreachable)("should not call mapBfRangeToArray")}mapOne(e,t){(0,r.unreachable)("should not call mapCidOne")}lookup(e){return Number.isInteger(e)&&e<=65535?e:void 0}contains(e){return Number.isInteger(e)&&e<=65535}forEach(e){for(let t=0;t<=65535;t++)e(t,t)}charCodeOf(e){return Number.isInteger(e)&&e<=65535?e:-1}getMap(){const e=new Array(65536);for(let t=0;t<=65535;t++)e[t]=t;return e}get length(){return 65536}get isIdentityCMap(){(0,r.unreachable)("should not access .isIdentityCMap")}}t.IdentityCMap=IdentityCMap;function strToInt(e){let t=0;for(let a=0;a>>0}function expectString(e){if("string"!=typeof e)throw new r.FormatError("Malformed CMap: expected string.")}function expectInt(e){if(!Number.isInteger(e))throw new r.FormatError("Malformed CMap: expected int.")}function parseBfChar(e,t){for(;;){let a=t.getObj();if(a===n.EOF)break;if((0,n.isCmd)(a,"endbfchar"))return;expectString(a);const r=strToInt(a);a=t.getObj();expectString(a);const i=a;e.mapOne(r,i)}}function parseBfRange(e,t){for(;;){let a=t.getObj();if(a===n.EOF)break;if((0,n.isCmd)(a,"endbfrange"))return;expectString(a);const r=strToInt(a);a=t.getObj();expectString(a);const i=strToInt(a);a=t.getObj();if(Number.isInteger(a)||"string"==typeof a){const t=Number.isInteger(a)?String.fromCharCode(a):a;e.mapBfRange(r,i,t)}else{if(!(0,n.isCmd)(a,"["))break;{a=t.getObj();const s=[];for(;!(0,n.isCmd)(a,"]")&&a!==n.EOF;){s.push(a);a=t.getObj()}e.mapBfRangeToArray(r,i,s)}}}throw new r.FormatError("Invalid bf range.")}function parseCidChar(e,t){for(;;){let a=t.getObj();if(a===n.EOF)break;if((0,n.isCmd)(a,"endcidchar"))return;expectString(a);const r=strToInt(a);a=t.getObj();expectInt(a);const i=a;e.mapOne(r,i)}}function parseCidRange(e,t){for(;;){let a=t.getObj();if(a===n.EOF)break;if((0,n.isCmd)(a,"endcidrange"))return;expectString(a);const r=strToInt(a);a=t.getObj();expectString(a);const i=strToInt(a);a=t.getObj();expectInt(a);const s=a;e.mapCidRange(r,i,s)}}function parseCodespaceRange(e,t){for(;;){let a=t.getObj();if(a===n.EOF)break;if((0,n.isCmd)(a,"endcodespacerange"))return;if("string"!=typeof a)break;const r=strToInt(a);a=t.getObj();if("string"!=typeof a)break;const i=strToInt(a);e.addCodespaceRange(a.length,r,i)}throw new r.FormatError("Invalid codespace range.")}function parseWMode(e,t){const a=t.getObj();Number.isInteger(a)&&(e.vertical=!!a)}function parseCMapName(e,t){const a=t.getObj();a instanceof n.Name&&(e.name=a.name)}async function parseCMap(e,t,a,i){let s,o;e:for(;;)try{const a=t.getObj();if(a===n.EOF)break;if(a instanceof n.Name){"WMode"===a.name?parseWMode(e,t):"CMapName"===a.name&&parseCMapName(e,t);s=a}else if(a instanceof n.Cmd)switch(a.cmd){case"endcmap":break e;case"usecmap":s instanceof n.Name&&(o=s.name);break;case"begincodespacerange":parseCodespaceRange(e,t);break;case"beginbfchar":parseBfChar(e,t);break;case"begincidchar":parseCidChar(e,t);break;case"beginbfrange":parseBfRange(e,t);break;case"begincidrange":parseCidRange(e,t)}}catch(e){if(e instanceof c.MissingDataException)throw e;(0,r.warn)("Invalid cMap data: "+e);continue}!i&&o&&(i=o);return i?extendCMap(e,a,i):e}async function extendCMap(e,t,a){e.useCMap=await createBuiltInCMap(a,t);if(0===e.numCodespaceRanges){const t=e.useCMap.codespaceRanges;for(let a=0;aextendCMap(i,t,e)));if(n===r.CMapCompressionType.NONE){const e=new o.Lexer(new l.Stream(a));return parseCMap(i,e,t,null)}throw new Error(`Invalid CMap "compressionType" value: ${n}`)}t.CMapFactory=class CMapFactory{static async create({encoding:e,fetchBuiltInCMap:t,useCMap:a}){if(e instanceof n.Name)return createBuiltInCMap(e.name,t);if(e instanceof i.BaseStream){const r=await parseCMap(new CMap,new o.Lexer(e),t,a);return r.isIdentityCMap?createBuiltInCMap(r.name,t):r}throw new Error("Encoding required.")}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.BinaryCMapReader=void 0;var r=a(2);function hexToInt(e,t){let a=0;for(let r=0;r<=t;r++)a=a<<8|e[r];return a>>>0}function hexToStr(e,t){return 1===t?String.fromCharCode(e[0],e[1]):3===t?String.fromCharCode(e[0],e[1],e[2],e[3]):String.fromCharCode(...e.subarray(0,t+1))}function addHex(e,t,a){let r=0;for(let n=a;n>=0;n--){r+=e[n]+t[n];e[n]=255&r;r>>=8}}function incHex(e,t){let a=1;for(let r=t;r>=0&&a>0;r--){a+=e[r];e[r]=255&a;a>>=8}}const n=16;class BinaryCMapStream{constructor(e){this.buffer=e;this.pos=0;this.end=e.length;this.tmpBuf=new Uint8Array(19)}readByte(){return this.pos>=this.end?-1:this.buffer[this.pos++]}readNumber(){let e,t=0;do{const a=this.readByte();if(a<0)throw new r.FormatError("unexpected EOF in bcmap");e=!(128&a);t=t<<7|127&a}while(!e);return t}readSigned(){const e=this.readNumber();return 1&e?~(e>>>1):e>>>1}readHex(e,t){e.set(this.buffer.subarray(this.pos,this.pos+t+1));this.pos+=t+1}readHexNumber(e,t){let a;const n=this.tmpBuf;let i=0;do{const e=this.readByte();if(e<0)throw new r.FormatError("unexpected EOF in bcmap");a=!(128&e);n[i++]=127&e}while(!a);let s=t,o=0,c=0;for(;s>=0;){for(;c<8&&n.length>0;){o|=n[--i]<>=8;c-=8}}readHexSigned(e,t){this.readHexNumber(e,t);const a=1&e[t]?255:0;let r=0;for(let n=0;n<=t;n++){r=(1&r)<<8|e[n];e[n]=r>>1^a}}readString(){const e=this.readNumber(),t=new Array(e);for(let a=0;a=0;){const e=f>>5;if(7===e){switch(31&f){case 0:r.readString();break;case 1:s=r.readString()}continue}const a=!!(16&f),i=15&f;if(i+1>n)throw new Error("BinaryCMapReader.process: Invalid dataSize.");const g=1,p=r.readNumber();switch(e){case 0:r.readHex(o,i);r.readHexNumber(c,i);addHex(c,o,i);t.addCodespaceRange(i+1,hexToInt(o,i),hexToInt(c,i));for(let e=1;e{Object.defineProperty(t,"__esModule",{value:!0});t.Parser=t.Linearization=t.Lexer=void 0;var r=a(2),n=a(4),i=a(3),s=a(8),o=a(17),c=a(19),l=a(20),h=a(22),u=a(23),d=a(26),f=a(29),g=a(31),p=a(32),m=a(33);class Parser{constructor({lexer:e,xref:t,allowStreams:a=!1,recoveryMode:r=!1}){this.lexer=e;this.xref=t;this.allowStreams=a;this.recoveryMode=r;this.imageCache=Object.create(null);this._imageId=0;this.refill()}refill(){this.buf1=this.lexer.getObj();this.buf2=this.lexer.getObj()}shift(){if(this.buf2 instanceof n.Cmd&&"ID"===this.buf2.cmd){this.buf1=this.buf2;this.buf2=null}else{this.buf1=this.buf2;this.buf2=this.lexer.getObj()}}tryShift(){try{this.shift();return!0}catch(e){if(e instanceof i.MissingDataException)throw e;return!1}}getObj(e=null){const t=this.buf1;this.shift();if(t instanceof n.Cmd)switch(t.cmd){case"BI":return this.makeInlineImage(e);case"[":const a=[];for(;!(0,n.isCmd)(this.buf1,"]")&&this.buf1!==n.EOF;)a.push(this.getObj(e));if(this.buf1===n.EOF){if(this.recoveryMode)return a;throw new i.ParserEOFException("End of file inside array.")}this.shift();return a;case"<<":const s=new n.Dict(this.xref);for(;!(0,n.isCmd)(this.buf1,">>")&&this.buf1!==n.EOF;){if(!(this.buf1 instanceof n.Name)){(0,r.info)("Malformed dictionary: key must be a name object");this.shift();continue}const t=this.buf1.name;this.shift();if(this.buf1===n.EOF)break;s.set(t,this.getObj(e))}if(this.buf1===n.EOF){if(this.recoveryMode)return s;throw new i.ParserEOFException("End of file inside dictionary.")}if((0,n.isCmd)(this.buf2,"stream"))return this.allowStreams?this.makeStream(s,e):s;this.shift();return s;default:return t}if(Number.isInteger(t)){if(Number.isInteger(this.buf1)&&(0,n.isCmd)(this.buf2,"R")){const e=n.Ref.get(t,this.buf1);this.shift();this.shift();return e}return t}return"string"==typeof t&&e?e.decryptString(t):t}findDefaultInlineStreamEnd(e){const{knownCommands:t}=this.lexer,a=e.pos;let o,c,l=0;for(;-1!==(o=e.getByte());)if(0===l)l=69===o?1:0;else if(1===l)l=73===o?2:0;else if(32===o||10===o||13===o){c=e.pos;const a=e.peekBytes(15),i=a.length;if(0===i)break;for(let e=0;e127))){l=0;break}}if(2!==l)continue;if(!t){(0,r.warn)("findDefaultInlineStreamEnd - `lexer.knownCommands` is undefined.");continue}const h=new Lexer(new s.Stream(a.slice()),t);h._hexStringWarn=()=>{};let u=0;for(;;){const e=h.getObj();if(e===n.EOF){l=0;break}if(e instanceof n.Cmd){const a=t[e.cmd];if(!a){l=0;break}if(a.variableArgs?u<=a.numArgs:u===a.numArgs)break;u=0}else u++}if(2===l)break}else l=0;if(-1===o){(0,r.warn)("findDefaultInlineStreamEnd: Reached the end of the stream without finding a valid EI marker");if(c){(0,r.warn)('... trying to recover by using the last "EI" occurrence.');e.skip(-(e.pos-c))}}let h=4;e.skip(-h);o=e.peekByte();e.skip(h);(0,i.isWhiteSpace)(o)||h--;return e.pos-h-a}findDCTDecodeInlineStreamEnd(e){const t=e.pos;let a,n,i=!1;for(;-1!==(a=e.getByte());)if(255===a){switch(e.getByte()){case 0:break;case 255:e.skip(-1);break;case 217:i=!0;break;case 192:case 193:case 194:case 195:case 197:case 198:case 199:case 201:case 202:case 203:case 205:case 206:case 207:case 196:case 204:case 218:case 219:case 220:case 221:case 222:case 223:case 224:case 225:case 226:case 227:case 228:case 229:case 230:case 231:case 232:case 233:case 234:case 235:case 236:case 237:case 238:case 239:case 254:n=e.getUint16();n>2?e.skip(n-2):e.skip(-2)}if(i)break}const s=e.pos-t;if(-1===a){(0,r.warn)("Inline DCTDecode image stream: EOI marker not found, searching for /EI/ instead.");e.skip(-s);return this.findDefaultInlineStreamEnd(e)}this.inlineStreamSkipEI(e);return s}findASCII85DecodeInlineStreamEnd(e){const t=e.pos;let a;for(;-1!==(a=e.getByte());)if(126===a){const t=e.pos;a=e.peekByte();for(;(0,i.isWhiteSpace)(a);){e.skip();a=e.peekByte()}if(62===a){e.skip();break}if(e.pos>t){const t=e.peekBytes(2);if(69===t[0]&&73===t[1])break}}const n=e.pos-t;if(-1===a){(0,r.warn)("Inline ASCII85Decode image stream: EOD marker not found, searching for /EI/ instead.");e.skip(-n);return this.findDefaultInlineStreamEnd(e)}this.inlineStreamSkipEI(e);return n}findASCIIHexDecodeInlineStreamEnd(e){const t=e.pos;let a;for(;-1!==(a=e.getByte())&&62!==a;);const n=e.pos-t;if(-1===a){(0,r.warn)("Inline ASCIIHexDecode image stream: EOD marker not found, searching for /EI/ instead.");e.skip(-n);return this.findDefaultInlineStreamEnd(e)}this.inlineStreamSkipEI(e);return n}inlineStreamSkipEI(e){let t,a=0;for(;-1!==(t=e.getByte());)if(0===a)a=69===t?1:0;else if(1===a)a=73===t?2:0;else if(2===a)break}makeInlineImage(e){const t=this.lexer,a=t.stream,i=Object.create(null);let s;for(;!(0,n.isCmd)(this.buf1,"ID")&&this.buf1!==n.EOF;){if(!(this.buf1 instanceof n.Name))throw new r.FormatError("Dictionary key must be a name object");const t=this.buf1.name;this.shift();if(this.buf1===n.EOF)break;i[t]=this.getObj(e)}-1!==t.beginInlineImagePos&&(s=a.pos-t.beginInlineImagePos);const o=this.xref.fetchIfRef(i.F||i.Filter);let c;if(o instanceof n.Name)c=o.name;else if(Array.isArray(o)){const e=this.xref.fetchIfRef(o[0]);e instanceof n.Name&&(c=e.name)}const l=a.pos;let h,u;switch(c){case"DCT":case"DCTDecode":h=this.findDCTDecodeInlineStreamEnd(a);break;case"A85":case"ASCII85Decode":h=this.findASCII85DecodeInlineStreamEnd(a);break;case"AHx":case"ASCIIHexDecode":h=this.findASCIIHexDecodeInlineStreamEnd(a);break;default:h=this.findDefaultInlineStreamEnd(a)}if(h<1e3&&s>0){const e=a.pos;a.pos=t.beginInlineImagePos;u=function getInlineImageCacheKey(e){const t=[],a=e.length;let r=0;for(;r=r){a.pos+=s;return a.pos-e}s++}a.pos+=i}return-1}makeStream(e,t){const a=this.lexer;let s=a.stream;a.skipToNextLine();const o=s.pos-1;let c=e.get("Length");if(!Number.isInteger(c)){(0,r.info)(`Bad length "${c&&c.toString()}" in stream.`);c=0}s.pos=o+c;a.nextChar();if(this.tryShift()&&(0,n.isCmd)(this.buf2,"endstream"))this.shift();else{const e=new Uint8Array([101,110,100,115,116,114,101,97,109]);let t=this._findStreamLength(o,e);if(t<0){const a=1;for(let n=1;n<=a;n++){const a=e.length-n,c=e.slice(0,a),l=this._findStreamLength(o,c);if(l>=0){const e=s.peekBytes(a+1)[a];if(!(0,i.isWhiteSpace)(e))break;(0,r.info)(`Found "${(0,r.bytesToString)(c)}" when searching for endstream command.`);t=l;break}}if(t<0)throw new r.FormatError("Missing endstream command.")}c=t;a.nextChar();this.shift();this.shift()}this.shift();s=s.makeSubStream(o,c,e);t&&(s=t.createStream(s,c));s=this.filter(s,e,c);s.dict=e;return s}filter(e,t,a){let i=t.get("F","Filter"),s=t.get("DP","DecodeParms");if(i instanceof n.Name){Array.isArray(s)&&(0,r.warn)("/DecodeParms should not be an Array, when /Filter is a Name.");return this.makeFilter(e,i.name,a,s)}let o=a;if(Array.isArray(i)){const t=i,a=s;for(let c=0,l=t.length;c=48&&e<=57?15&e:e>=65&&e<=70||e>=97&&e<=102?9+(15&e):-1}class Lexer{constructor(e,t=null){this.stream=e;this.nextChar();this.strBuf=[];this.knownCommands=t;this._hexStringNumWarn=0;this.beginInlineImagePos=-1}nextChar(){return this.currentChar=this.stream.getByte()}peekChar(){return this.stream.peekByte()}getNumber(){let e=this.currentChar,t=!1,a=0,n=1;if(45===e){n=-1;e=this.nextChar();45===e&&(e=this.nextChar())}else 43===e&&(e=this.nextChar());if(10===e||13===e)do{e=this.nextChar()}while(10===e||13===e);if(46===e){a=10;e=this.nextChar()}if(e<48||e>57){const t=`Invalid number: ${String.fromCharCode(e)} (charCode ${e})`;if((0,i.isWhiteSpace)(e)||-1===e){(0,r.info)(`Lexer.getNumber - "${t}".`);return 0}throw new r.FormatError(t)}let s=e-48,o=0,c=1;for(;(e=this.nextChar())>=0;)if(e>=48&&e<=57){const r=e-48;if(t)o=10*o+r;else{0!==a&&(a*=10);s=10*s+r}}else if(46===e){if(0!==a)break;a=1}else if(45===e)(0,r.warn)("Badly formatted number: minus sign in the middle");else{if(69!==e&&101!==e)break;e=this.peekChar();if(43===e||45===e){c=45===e?-1:1;this.nextChar()}else if(e<48||e>57)break;t=!0}0!==a&&(s/=a);t&&(s*=10**(c*o));return n*s}getString(){let e=1,t=!1;const a=this.strBuf;a.length=0;let n=this.nextChar();for(;;){let i=!1;switch(0|n){case-1:(0,r.warn)("Unterminated string");t=!0;break;case 40:++e;a.push("(");break;case 41:if(0==--e){this.nextChar();t=!0}else a.push(")");break;case 92:n=this.nextChar();switch(n){case-1:(0,r.warn)("Unterminated string");t=!0;break;case 110:a.push("\n");break;case 114:a.push("\r");break;case 116:a.push("\t");break;case 98:a.push("\b");break;case 102:a.push("\f");break;case 92:case 40:case 41:a.push(String.fromCharCode(n));break;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:let e=15&n;n=this.nextChar();i=!0;if(n>=48&&n<=55){e=(e<<3)+(15&n);n=this.nextChar();if(n>=48&&n<=55){i=!1;e=(e<<3)+(15&n)}}a.push(String.fromCharCode(e));break;case 13:10===this.peekChar()&&this.nextChar();break;case 10:break;default:a.push(String.fromCharCode(n))}break;default:a.push(String.fromCharCode(n))}if(t)break;i||(n=this.nextChar())}return a.join("")}getName(){let e,t;const a=this.strBuf;a.length=0;for(;(e=this.nextChar())>=0&&!b[e];)if(35===e){e=this.nextChar();if(b[e]){(0,r.warn)("Lexer_getName: NUMBER SIGN (#) should be followed by a hexadecimal number.");a.push("#");break}const n=toHexDigit(e);if(-1!==n){t=e;e=this.nextChar();const i=toHexDigit(e);if(-1===i){(0,r.warn)(`Lexer_getName: Illegal digit (${String.fromCharCode(e)}) in hexadecimal number.`);a.push("#",String.fromCharCode(t));if(b[e])break;a.push(String.fromCharCode(e));continue}a.push(String.fromCharCode(n<<4|i))}else a.push("#",String.fromCharCode(e))}else a.push(String.fromCharCode(e));a.length>127&&(0,r.warn)(`Name token is longer than allowed by the spec: ${a.length}`);return n.Name.get(a.join(""))}_hexStringWarn(e){5!=this._hexStringNumWarn++?this._hexStringNumWarn>5||(0,r.warn)(`getHexString - ignoring invalid character: ${e}`):(0,r.warn)("getHexString - ignoring additional invalid characters.")}getHexString(){const e=this.strBuf;e.length=0;let t,a,n=this.currentChar,i=!0;this._hexStringNumWarn=0;for(;;){if(n<0){(0,r.warn)("Unterminated hex string");break}if(62===n){this.nextChar();break}if(1!==b[n]){if(i){t=toHexDigit(n);if(-1===t){this._hexStringWarn(n);n=this.nextChar();continue}}else{a=toHexDigit(n);if(-1===a){this._hexStringWarn(n);n=this.nextChar();continue}e.push(String.fromCharCode(t<<4|a))}i=!i;n=this.nextChar()}else n=this.nextChar()}return e.join("")}getObj(){let e=!1,t=this.currentChar;for(;;){if(t<0)return n.EOF;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(1!==b[t])break;t=this.nextChar()}switch(0|t){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 43:case 45:case 46:return this.getNumber();case 40:return this.getString();case 47:return this.getName();case 91:this.nextChar();return n.Cmd.get("[");case 93:this.nextChar();return n.Cmd.get("]");case 60:t=this.nextChar();if(60===t){this.nextChar();return n.Cmd.get("<<")}return this.getHexString();case 62:t=this.nextChar();if(62===t){this.nextChar();return n.Cmd.get(">>")}return n.Cmd.get(">");case 123:this.nextChar();return n.Cmd.get("{");case 125:this.nextChar();return n.Cmd.get("}");case 41:this.nextChar();throw new r.FormatError(`Illegal character: ${t}`)}let a=String.fromCharCode(t);if(t<32||t>127){const e=this.peekChar();if(e>=32&&e<=127){this.nextChar();return n.Cmd.get(a)}}const i=this.knownCommands;let s=void 0!==i?.[a];for(;(t=this.nextChar())>=0&&!b[t];){const e=a+String.fromCharCode(t);if(s&&void 0===i[e])break;if(128===a.length)throw new r.FormatError(`Command token too long: ${a.length}`);a=e;s=void 0!==i?.[a]}if("true"===a)return!0;if("false"===a)return!1;if("null"===a)return null;"BI"===a&&(this.beginInlineImagePos=this.stream.pos);return n.Cmd.get(a)}skipToNextLine(){let e=this.currentChar;for(;e>=0;){if(13===e){e=this.nextChar();10===e&&this.nextChar();break}if(10===e){this.nextChar();break}e=this.nextChar()}}}t.Lexer=Lexer;t.Linearization=class Linearization{static create(e){function getInt(e,t,a=!1){const r=e.get(t);if(Number.isInteger(r)&&(a?r>=0:r>0))return r;throw new Error(`The "${t}" parameter in the linearization dictionary is invalid.`)}const t=new Parser({lexer:new Lexer(e),xref:null}),a=t.getObj(),r=t.getObj(),i=t.getObj(),s=t.getObj();let o,c;if(!(Number.isInteger(a)&&Number.isInteger(r)&&(0,n.isCmd)(i,"obj")&&s instanceof n.Dict&&"number"==typeof(o=s.get("Linearized"))&&o>0))return null;if((c=getInt(s,"L"))!==e.length)throw new Error('The "L" parameter in the linearization dictionary does not equal the stream length.');return{length:c,hints:function getHints(e){const t=e.get("H");let a;if(Array.isArray(t)&&(2===(a=t.length)||4===a)){for(let e=0;e0))throw new Error(`Hint (${e}) in the linearization dictionary is invalid.`)}return t}throw new Error("Hint array in the linearization dictionary is invalid.")}(s),objectNumberFirst:getInt(s,"O"),endFirst:getInt(s,"E"),numPages:getInt(s,"N"),mainXRefEntriesOffset:getInt(s,"T"),pageFirst:s.has("P")?getInt(s,"P",!0):0}}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Ascii85Stream=void 0;var r=a(18),n=a(3);class Ascii85Stream extends r.DecodeStream{constructor(e,t){t&&(t*=.8);super(t);this.str=e;this.dict=e.dict;this.input=new Uint8Array(5)}readBlock(){const e=this.str;let t=e.getByte();for(;(0,n.isWhiteSpace)(t);)t=e.getByte();if(-1===t||126===t){this.eof=!0;return}const a=this.bufferLength;let r,i;if(122===t){r=this.ensureBuffer(a+4);for(i=0;i<4;++i)r[a+i]=0;this.bufferLength+=4}else{const s=this.input;s[0]=t;for(i=1;i<5;++i){t=e.getByte();for(;(0,n.isWhiteSpace)(t);)t=e.getByte();s[i]=t;if(-1===t||126===t)break}r=this.ensureBuffer(a+i-1);this.bufferLength+=i-1;if(i<5){for(;i<5;++i)s[i]=117;this.eof=!0}let o=0;for(i=0;i<5;++i)o=85*o+(s[i]-33);for(i=3;i>=0;--i){r[a+i]=255&o;o>>=8}}}}t.Ascii85Stream=Ascii85Stream},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.StreamsSequenceStream=t.DecodeStream=void 0;var r=a(5),n=a(8);const i=new Uint8Array(0);class DecodeStream extends r.BaseStream{constructor(e){super();this._rawMinBufferLength=e||0;this.pos=0;this.bufferLength=0;this.eof=!1;this.buffer=i;this.minBufferLength=512;if(e)for(;this.minBufferLengthr&&(a=r)}else{for(;!this.eof;)this.readBlock();a=this.bufferLength}this.pos=a;return this.buffer.subarray(t,a)}reset(){this.pos=0}makeSubStream(e,t,a=null){if(void 0===t)for(;!this.eof;)this.readBlock();else{const a=e+t;for(;this.bufferLength<=a&&!this.eof;)this.readBlock()}return new n.Stream(this.buffer,e,t,a)}getBaseStreams(){return this.str?this.str.getBaseStreams():null}}t.DecodeStream=DecodeStream;t.StreamsSequenceStream=class StreamsSequenceStream extends DecodeStream{constructor(e,t=null){let a=0;for(const t of e)a+=t instanceof DecodeStream?t._rawMinBufferLength:t.length;super(a);this.streams=e;this._onError=t}readBlock(){const e=this.streams;if(0===e.length){this.eof=!0;return}const t=e.shift();let a;try{a=t.getBytes()}catch(e){if(this._onError){this._onError(e,t.dict?.objId);return}throw e}const r=this.bufferLength,n=r+a.length;this.ensureBuffer(n).set(a,r);this.bufferLength=n}getBaseStreams(){const e=[];for(const t of this.streams){const a=t.getBaseStreams();a&&e.push(...a)}return e.length>0?e:null}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.AsciiHexStream=void 0;var r=a(18);class AsciiHexStream extends r.DecodeStream{constructor(e,t){t&&(t*=.5);super(t);this.str=e;this.dict=e.dict;this.firstDigit=-1}readBlock(){const e=this.str.getBytes(8e3);if(!e.length){this.eof=!0;return}const t=e.length+1>>1,a=this.ensureBuffer(this.bufferLength+t);let r=this.bufferLength,n=this.firstDigit;for(const t of e){let e;if(t>=48&&t<=57)e=15&t;else{if(!(t>=65&&t<=70||t>=97&&t<=102)){if(62===t){this.eof=!0;break}continue}e=9+(15&t)}if(n<0)n=e;else{a[r++]=n<<4|e;n=-1}}if(n>=0&&this.eof){a[r++]=n<<4;n=-1}this.firstDigit=n;this.bufferLength=r}}t.AsciiHexStream=AsciiHexStream},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CCITTFaxStream=void 0;var r=a(21),n=a(18),i=a(4);class CCITTFaxStream extends n.DecodeStream{constructor(e,t,a){super(t);this.str=e;this.dict=e.dict;a instanceof i.Dict||(a=i.Dict.empty);const n={next:()=>e.getByte()};this.ccittFaxDecoder=new r.CCITTFaxDecoder(n,{K:a.get("K"),EndOfLine:a.get("EndOfLine"),EncodedByteAlign:a.get("EncodedByteAlign"),Columns:a.get("Columns"),Rows:a.get("Rows"),EndOfBlock:a.get("EndOfBlock"),BlackIs1:a.get("BlackIs1")})}readBlock(){for(;!this.eof;){const e=this.ccittFaxDecoder.readNextChar();if(-1===e){this.eof=!0;return}this.ensureBuffer(this.bufferLength+1);this.buffer[this.bufferLength++]=e}}}t.CCITTFaxStream=CCITTFaxStream},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CCITTFaxDecoder=void 0;var r=a(2);const n=-1,i=[[-1,-1],[-1,-1],[7,8],[7,7],[6,6],[6,6],[6,5],[6,5],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[3,3],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2]],s=[[-1,-1],[12,-2],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[11,1792],[11,1792],[12,1984],[12,2048],[12,2112],[12,2176],[12,2240],[12,2304],[11,1856],[11,1856],[11,1920],[11,1920],[12,2368],[12,2432],[12,2496],[12,2560]],o=[[-1,-1],[-1,-1],[-1,-1],[-1,-1],[8,29],[8,29],[8,30],[8,30],[8,45],[8,45],[8,46],[8,46],[7,22],[7,22],[7,22],[7,22],[7,23],[7,23],[7,23],[7,23],[8,47],[8,47],[8,48],[8,48],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[7,20],[7,20],[7,20],[7,20],[8,33],[8,33],[8,34],[8,34],[8,35],[8,35],[8,36],[8,36],[8,37],[8,37],[8,38],[8,38],[7,19],[7,19],[7,19],[7,19],[8,31],[8,31],[8,32],[8,32],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[8,53],[8,53],[8,54],[8,54],[7,26],[7,26],[7,26],[7,26],[8,39],[8,39],[8,40],[8,40],[8,41],[8,41],[8,42],[8,42],[8,43],[8,43],[8,44],[8,44],[7,21],[7,21],[7,21],[7,21],[7,28],[7,28],[7,28],[7,28],[8,61],[8,61],[8,62],[8,62],[8,63],[8,63],[8,0],[8,0],[8,320],[8,320],[8,384],[8,384],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[7,27],[7,27],[7,27],[7,27],[8,59],[8,59],[8,60],[8,60],[9,1472],[9,1536],[9,1600],[9,1728],[7,18],[7,18],[7,18],[7,18],[7,24],[7,24],[7,24],[7,24],[8,49],[8,49],[8,50],[8,50],[8,51],[8,51],[8,52],[8,52],[7,25],[7,25],[7,25],[7,25],[8,55],[8,55],[8,56],[8,56],[8,57],[8,57],[8,58],[8,58],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[8,448],[8,448],[8,512],[8,512],[9,704],[9,768],[8,640],[8,640],[8,576],[8,576],[9,832],[9,896],[9,960],[9,1024],[9,1088],[9,1152],[9,1216],[9,1280],[9,1344],[9,1408],[7,256],[7,256],[7,256],[7,256],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7]],c=[[-1,-1],[-1,-1],[12,-2],[12,-2],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[11,1792],[11,1792],[11,1792],[11,1792],[12,1984],[12,1984],[12,2048],[12,2048],[12,2112],[12,2112],[12,2176],[12,2176],[12,2240],[12,2240],[12,2304],[12,2304],[11,1856],[11,1856],[11,1856],[11,1856],[11,1920],[11,1920],[11,1920],[11,1920],[12,2368],[12,2368],[12,2432],[12,2432],[12,2496],[12,2496],[12,2560],[12,2560],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[12,52],[12,52],[13,640],[13,704],[13,768],[13,832],[12,55],[12,55],[12,56],[12,56],[13,1280],[13,1344],[13,1408],[13,1472],[12,59],[12,59],[12,60],[12,60],[13,1536],[13,1600],[11,24],[11,24],[11,24],[11,24],[11,25],[11,25],[11,25],[11,25],[13,1664],[13,1728],[12,320],[12,320],[12,384],[12,384],[12,448],[12,448],[13,512],[13,576],[12,53],[12,53],[12,54],[12,54],[13,896],[13,960],[13,1024],[13,1088],[13,1152],[13,1216],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64]],l=[[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[11,23],[11,23],[12,50],[12,51],[12,44],[12,45],[12,46],[12,47],[12,57],[12,58],[12,61],[12,256],[10,16],[10,16],[10,16],[10,16],[10,17],[10,17],[10,17],[10,17],[12,48],[12,49],[12,62],[12,63],[12,30],[12,31],[12,32],[12,33],[12,40],[12,41],[11,22],[11,22],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[12,128],[12,192],[12,26],[12,27],[12,28],[12,29],[11,19],[11,19],[11,20],[11,20],[12,34],[12,35],[12,36],[12,37],[12,38],[12,39],[11,21],[11,21],[12,42],[12,43],[10,0],[10,0],[10,0],[10,0],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12]],h=[[-1,-1],[-1,-1],[-1,-1],[-1,-1],[6,9],[6,8],[5,7],[5,7],[4,6],[4,6],[4,6],[4,6],[4,5],[4,5],[4,5],[4,5],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2]];t.CCITTFaxDecoder=class CCITTFaxDecoder{constructor(e,t={}){if(!e||"function"!=typeof e.next)throw new Error('CCITTFaxDecoder - invalid "source" parameter.');this.source=e;this.eof=!1;this.encoding=t.K||0;this.eoline=t.EndOfLine||!1;this.byteAlign=t.EncodedByteAlign||!1;this.columns=t.Columns||1728;this.rows=t.Rows||0;this.eoblock=t.EndOfBlock??!0;this.black=t.BlackIs1||!1;this.codingLine=new Uint32Array(this.columns+1);this.refLine=new Uint32Array(this.columns+2);this.codingLine[0]=this.columns;this.codingPos=0;this.row=0;this.nextLine2D=this.encoding<0;this.inputBits=0;this.inputBuf=0;this.outputBits=0;this.rowsDone=!1;let a;for(;0===(a=this._lookBits(12));)this._eatBits(1);1===a&&this._eatBits(12);if(this.encoding>0){this.nextLine2D=!this._lookBits(1);this._eatBits(1)}}readNextChar(){if(this.eof)return-1;const e=this.refLine,t=this.codingLine,a=this.columns;let i,s,o,c,l;if(0===this.outputBits){this.rowsDone&&(this.eof=!0);if(this.eof)return-1;this.err=!1;let o,l,h;if(this.nextLine2D){for(c=0;t[c]=64);do{l+=h=this._getWhiteCode()}while(h>=64)}else{do{o+=h=this._getWhiteCode()}while(h>=64);do{l+=h=this._getBlackCode()}while(h>=64)}this._addPixels(t[this.codingPos]+o,s);t[this.codingPos]0?--i:++i;for(;e[i]<=t[this.codingPos]&&e[i]0?--i:++i;for(;e[i]<=t[this.codingPos]&&e[i]0?--i:++i;for(;e[i]<=t[this.codingPos]&&e[i]=64);else do{o+=h=this._getWhiteCode()}while(h>=64);this._addPixels(t[this.codingPos]+o,s);s^=1}}let u=!1;this.byteAlign&&(this.inputBits&=-8);if(this.eoblock||this.row!==this.rows-1){o=this._lookBits(12);if(this.eoline)for(;o!==n&&1!==o;){this._eatBits(1);o=this._lookBits(12)}else for(;0===o;){this._eatBits(1);o=this._lookBits(12)}if(1===o){this._eatBits(12);u=!0}else o===n&&(this.eof=!0)}else this.rowsDone=!0;if(!this.eof&&this.encoding>0&&!this.rowsDone){this.nextLine2D=!this._lookBits(1);this._eatBits(1)}if(this.eoblock&&u&&this.byteAlign){o=this._lookBits(12);if(1===o){this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}if(this.encoding>=0)for(c=0;c<4;++c){o=this._lookBits(12);1!==o&&(0,r.info)("bad rtc code: "+o);this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}}this.eof=!0}}else if(this.err&&this.eoline){for(;;){o=this._lookBits(13);if(o===n){this.eof=!0;return-1}if(o>>1==1)break;this._eatBits(1)}this._eatBits(12);if(this.encoding>0){this._eatBits(1);this.nextLine2D=!(1&o)}}this.outputBits=t[0]>0?t[this.codingPos=0]:t[this.codingPos=1];this.row++}if(this.outputBits>=8){l=1&this.codingPos?0:255;this.outputBits-=8;if(0===this.outputBits&&t[this.codingPos]o){l<<=o;1&this.codingPos||(l|=255>>8-o);this.outputBits-=o;o=0}else{l<<=this.outputBits;1&this.codingPos||(l|=255>>8-this.outputBits);o-=this.outputBits;this.outputBits=0;if(t[this.codingPos]0){l<<=o;o=0}}}while(o)}this.black&&(l^=255);return l}_addPixels(e,t){const a=this.codingLine;let n=this.codingPos;if(e>a[n]){if(e>this.columns){(0,r.info)("row is wrong length");this.err=!0;e=this.columns}1&n^t&&++n;a[n]=e}this.codingPos=n}_addPixelsNeg(e,t){const a=this.codingLine;let n=this.codingPos;if(e>a[n]){if(e>this.columns){(0,r.info)("row is wrong length");this.err=!0;e=this.columns}1&n^t&&++n;a[n]=e}else if(e0&&e=i){const t=a[e-i];if(t[0]===r){this._eatBits(r);return[!0,t[1],!0]}}}return[!1,0,!1]}_getTwoDimCode(){let e,t=0;if(this.eoblock){t=this._lookBits(7);e=i[t];if(e?.[0]>0){this._eatBits(e[0]);return e[1]}}else{const e=this._findTableCode(1,7,i);if(e[0]&&e[2])return e[1]}(0,r.info)("Bad two dim code");return n}_getWhiteCode(){let e,t=0;if(this.eoblock){t=this._lookBits(12);if(t===n)return 1;e=t>>5==0?s[t]:o[t>>3];if(e[0]>0){this._eatBits(e[0]);return e[1]}}else{let e=this._findTableCode(1,9,o);if(e[0])return e[1];e=this._findTableCode(11,12,s);if(e[0])return e[1]}(0,r.info)("bad white code");this._eatBits(1);return 1}_getBlackCode(){let e,t;if(this.eoblock){e=this._lookBits(13);if(e===n)return 1;t=e>>7==0?c[e]:e>>9==0&&e>>7!=0?l[(e>>1)-64]:h[e>>7];if(t[0]>0){this._eatBits(t[0]);return t[1]}}else{let e=this._findTableCode(2,6,h);if(e[0])return e[1];e=this._findTableCode(7,12,l,64);if(e[0])return e[1];e=this._findTableCode(10,13,c);if(e[0])return e[1]}(0,r.info)("bad black code");this._eatBits(1);return 1}_lookBits(e){let t;for(;this.inputBits>16-e;this.inputBuf=this.inputBuf<<8|t;this.inputBits+=8}return this.inputBuf>>this.inputBits-e&65535>>16-e}_eatBits(e){(this.inputBits-=e)<0&&(this.inputBits=0)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.FlateStream=void 0;var r=a(18),n=a(2);const i=new Int32Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),s=new Int32Array([3,4,5,6,7,8,9,10,65547,65549,65551,65553,131091,131095,131099,131103,196643,196651,196659,196667,262211,262227,262243,262259,327811,327843,327875,327907,258,258,258]),o=new Int32Array([1,2,3,4,65541,65543,131081,131085,196625,196633,262177,262193,327745,327777,393345,393409,459009,459137,524801,525057,590849,591361,657409,658433,724993,727041,794625,798721,868353,876545]),c=[new Int32Array([459008,524368,524304,524568,459024,524400,524336,590016,459016,524384,524320,589984,524288,524416,524352,590048,459012,524376,524312,589968,459028,524408,524344,590032,459020,524392,524328,59e4,524296,524424,524360,590064,459010,524372,524308,524572,459026,524404,524340,590024,459018,524388,524324,589992,524292,524420,524356,590056,459014,524380,524316,589976,459030,524412,524348,590040,459022,524396,524332,590008,524300,524428,524364,590072,459009,524370,524306,524570,459025,524402,524338,590020,459017,524386,524322,589988,524290,524418,524354,590052,459013,524378,524314,589972,459029,524410,524346,590036,459021,524394,524330,590004,524298,524426,524362,590068,459011,524374,524310,524574,459027,524406,524342,590028,459019,524390,524326,589996,524294,524422,524358,590060,459015,524382,524318,589980,459031,524414,524350,590044,459023,524398,524334,590012,524302,524430,524366,590076,459008,524369,524305,524569,459024,524401,524337,590018,459016,524385,524321,589986,524289,524417,524353,590050,459012,524377,524313,589970,459028,524409,524345,590034,459020,524393,524329,590002,524297,524425,524361,590066,459010,524373,524309,524573,459026,524405,524341,590026,459018,524389,524325,589994,524293,524421,524357,590058,459014,524381,524317,589978,459030,524413,524349,590042,459022,524397,524333,590010,524301,524429,524365,590074,459009,524371,524307,524571,459025,524403,524339,590022,459017,524387,524323,589990,524291,524419,524355,590054,459013,524379,524315,589974,459029,524411,524347,590038,459021,524395,524331,590006,524299,524427,524363,590070,459011,524375,524311,524575,459027,524407,524343,590030,459019,524391,524327,589998,524295,524423,524359,590062,459015,524383,524319,589982,459031,524415,524351,590046,459023,524399,524335,590014,524303,524431,524367,590078,459008,524368,524304,524568,459024,524400,524336,590017,459016,524384,524320,589985,524288,524416,524352,590049,459012,524376,524312,589969,459028,524408,524344,590033,459020,524392,524328,590001,524296,524424,524360,590065,459010,524372,524308,524572,459026,524404,524340,590025,459018,524388,524324,589993,524292,524420,524356,590057,459014,524380,524316,589977,459030,524412,524348,590041,459022,524396,524332,590009,524300,524428,524364,590073,459009,524370,524306,524570,459025,524402,524338,590021,459017,524386,524322,589989,524290,524418,524354,590053,459013,524378,524314,589973,459029,524410,524346,590037,459021,524394,524330,590005,524298,524426,524362,590069,459011,524374,524310,524574,459027,524406,524342,590029,459019,524390,524326,589997,524294,524422,524358,590061,459015,524382,524318,589981,459031,524414,524350,590045,459023,524398,524334,590013,524302,524430,524366,590077,459008,524369,524305,524569,459024,524401,524337,590019,459016,524385,524321,589987,524289,524417,524353,590051,459012,524377,524313,589971,459028,524409,524345,590035,459020,524393,524329,590003,524297,524425,524361,590067,459010,524373,524309,524573,459026,524405,524341,590027,459018,524389,524325,589995,524293,524421,524357,590059,459014,524381,524317,589979,459030,524413,524349,590043,459022,524397,524333,590011,524301,524429,524365,590075,459009,524371,524307,524571,459025,524403,524339,590023,459017,524387,524323,589991,524291,524419,524355,590055,459013,524379,524315,589975,459029,524411,524347,590039,459021,524395,524331,590007,524299,524427,524363,590071,459011,524375,524311,524575,459027,524407,524343,590031,459019,524391,524327,589999,524295,524423,524359,590063,459015,524383,524319,589983,459031,524415,524351,590047,459023,524399,524335,590015,524303,524431,524367,590079]),9],l=[new Int32Array([327680,327696,327688,327704,327684,327700,327692,327708,327682,327698,327690,327706,327686,327702,327694,0,327681,327697,327689,327705,327685,327701,327693,327709,327683,327699,327691,327707,327687,327703,327695,0]),5];class FlateStream extends r.DecodeStream{constructor(e,t){super(t);this.str=e;this.dict=e.dict;const a=e.getByte(),r=e.getByte();if(-1===a||-1===r)throw new n.FormatError(`Invalid header in flate stream: ${a}, ${r}`);if(8!=(15&a))throw new n.FormatError(`Unknown compression method in flate stream: ${a}, ${r}`);if(((a<<8)+r)%31!=0)throw new n.FormatError(`Bad FCHECK in flate stream: ${a}, ${r}`);if(32&r)throw new n.FormatError(`FDICT bit set in flate stream: ${a}, ${r}`);this.codeSize=0;this.codeBuf=0}getBits(e){const t=this.str;let a,r=this.codeSize,i=this.codeBuf;for(;r>e;this.codeSize=r-=e;return a}getCode(e){const t=this.str,a=e[0],r=e[1];let i,s=this.codeSize,o=this.codeBuf;for(;s>16,h=65535&c;if(l<1||s>l;this.codeSize=s-l;return h}generateHuffmanTable(e){const t=e.length;let a,r=0;for(a=0;ar&&(r=e[a]);const n=1<>=1}for(a=e;a>=1;if(0===u){let t;if(-1===(t=a.getByte()))throw new n.FormatError("Bad block header in flate stream");let r=t;if(-1===(t=a.getByte()))throw new n.FormatError("Bad block header in flate stream");r|=t<<8;if(-1===(t=a.getByte()))throw new n.FormatError("Bad block header in flate stream");let i=t;if(-1===(t=a.getByte()))throw new n.FormatError("Bad block header in flate stream");i|=t<<8;if(i!==(65535&~r)&&(0!==r||0!==i))throw new n.FormatError("Bad uncompressed block length in flate stream");this.codeBuf=0;this.codeSize=0;const s=this.bufferLength,o=s+r;e=this.ensureBuffer(o);this.bufferLength=o;if(0===r)-1===a.peekByte()&&(this.eof=!0);else{const t=a.getBytes(r);e.set(t,s);t.length0;)u[o++]=g}r=this.generateHuffmanTable(u.subarray(0,e));h=this.generateHuffmanTable(u.subarray(e,l))}}e=this.buffer;let d=e?e.length:0,f=this.bufferLength;for(;;){let a=this.getCode(r);if(a<256){if(f+1>=d){e=this.ensureBuffer(f+1);d=e.length}e[f++]=a;continue}if(256===a){this.bufferLength=f;return}a-=257;a=s[a];let n=a>>16;n>0&&(n=this.getBits(n));t=(65535&a)+n;a=this.getCode(h);a=o[a];n=a>>16;n>0&&(n=this.getBits(n));const i=(65535&a)+n;if(f+t>=d){e=this.ensureBuffer(f+t);d=e.length}for(let a=0;a{Object.defineProperty(t,"__esModule",{value:!0});t.Jbig2Stream=void 0;var r=a(5),n=a(18),i=a(4),s=a(24),o=a(2);class Jbig2Stream extends n.DecodeStream{constructor(e,t,a){super(t);this.stream=e;this.dict=e.dict;this.maybeLength=t;this.params=a}get bytes(){return(0,o.shadow)(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(){if(this.eof)return;const e=new s.Jbig2Image,t=[];if(this.params instanceof i.Dict){const e=this.params.get("JBIG2Globals");if(e instanceof r.BaseStream){const a=e.getBytes();t.push({data:a,start:0,end:a.length})}}t.push({data:this.bytes,start:0,end:this.bytes.length});const a=e.parseChunks(t),n=a.length;for(let e=0;e{Object.defineProperty(t,"__esModule",{value:!0});t.Jbig2Image=void 0;var r=a(2),n=a(3),i=a(25),s=a(21);class Jbig2Error extends r.BaseException{constructor(e){super(`JBIG2 error: ${e}`,"Jbig2Error")}}class ContextCache{getContexts(e){return e in this?this[e]:this[e]=new Int8Array(65536)}}class DecodingContext{constructor(e,t,a){this.data=e;this.start=t;this.end=a}get decoder(){const e=new i.ArithmeticDecoder(this.data,this.start,this.end);return(0,r.shadow)(this,"decoder",e)}get contextCache(){const e=new ContextCache;return(0,r.shadow)(this,"contextCache",e)}}const o=2**31-1,c=-(2**31);function decodeInteger(e,t,a){const r=e.getContexts(t);let n=1;function readBits(e){let t=0;for(let i=0;i>>0}const i=readBits(1),s=readBits(1)?readBits(1)?readBits(1)?readBits(1)?readBits(1)?readBits(32)+4436:readBits(12)+340:readBits(8)+84:readBits(6)+20:readBits(4)+4:readBits(2);let l;0===i?l=s:s>0&&(l=-s);return l>=c&&l<=o?l:null}function decodeIAID(e,t,a){const r=e.getContexts("IAID");let n=1;for(let e=0;e=O&&$=T){q=q<<1&y;for(b=0;b=0&&j=0){U=N[_][j];U&&(q|=U<=e?l<<=1:l=l<<1|k[o][c]}for(p=0;p=x||c<0||c>=S?l<<=1:l=l<<1|r[o][c]}const u=v.readBit(F,l);t[s]=u}}return k}function decodeTextRegion(e,t,a,r,n,i,s,o,c,l,h,u,d,f,g,p,m,b,y){if(e&&t)throw new Jbig2Error("refinement with Huffman is not supported");const w=[];let S,x;for(S=0;S1&&(n=e?y.readBits(b):decodeInteger(k,"IAIT",C));const i=s*v+n,F=e?f.symbolIDTable.decode(y):decodeIAID(k,C,c),O=t&&(e?y.readBit():decodeInteger(k,"IARI",C));let T=o[F],M=T[0].length,D=T.length;if(O){const e=decodeInteger(k,"IARDW",C),t=decodeInteger(k,"IARDH",C);M+=e;D+=t;T=decodeRefinement(M,D,g,T,(e>>1)+decodeInteger(k,"IARDX",C),(t>>1)+decodeInteger(k,"IARDY",C),!1,p,m)}const E=i-(1&u?0:D-1),N=r-(2&u?M-1:0);let R,L,$;if(l){for(R=0;R>5&7;const h=[31&o];let u=t+6;if(7===o){c=536870911&(0,n.readUint32)(e,u-1);u+=3;let t=c+7>>3;h[0]=e[u++];for(;--t>0;)h.push(e[u++])}else if(5===o||6===o)throw new Jbig2Error("invalid referred-to flags");a.retainBits=h;let d=4;a.number<=256?d=1:a.number<=65536&&(d=2);const f=[];let p,m;for(p=0;p>>24&255;i[3]=t.height>>16&255;i[4]=t.height>>8&255;i[5]=255&t.height;for(p=u,m=e.length;p>2&3;e.huffmanDWSelector=t>>4&3;e.bitmapSizeSelector=t>>6&1;e.aggregationInstancesSelector=t>>7&1;e.bitmapCodingContextUsed=!!(256&t);e.bitmapCodingContextRetained=!!(512&t);e.template=t>>10&3;e.refinementTemplate=t>>12&1;h+=2;if(!e.huffman){l=0===e.template?4:1;o=[];for(c=0;c>2&3;u.stripSize=1<>4&3;u.transposed=!!(64&d);u.combinationOperator=d>>7&3;u.defaultPixelValue=d>>9&1;u.dsOffset=d<<17>>27;u.refinementTemplate=d>>15&1;if(u.huffman){const e=(0,n.readUint16)(r,h);h+=2;u.huffmanFS=3&e;u.huffmanDS=e>>2&3;u.huffmanDT=e>>4&3;u.huffmanRefinementDW=e>>6&3;u.huffmanRefinementDH=e>>8&3;u.huffmanRefinementDX=e>>10&3;u.huffmanRefinementDY=e>>12&3;u.huffmanRefinementSizeSelector=!!(16384&e)}if(u.refinement&&!u.refinementTemplate){o=[];for(c=0;c<2;c++){o.push({x:(0,n.readInt8)(r,h),y:(0,n.readInt8)(r,h+1)});h+=2}u.refinementAt=o}u.numberOfSymbolInstances=(0,n.readUint32)(r,h);h+=4;s=[u,a.referredTo,r,h,i];break;case 16:const f={},p=r[h++];f.mmr=!!(1&p);f.template=p>>1&3;f.patternWidth=r[h++];f.patternHeight=r[h++];f.maxPatternIndex=(0,n.readUint32)(r,h);h+=4;s=[f,a.number,r,h,i];break;case 22:case 23:const m={};m.info=readRegionSegmentInformation(r,h);h+=g;const b=r[h++];m.mmr=!!(1&b);m.template=b>>1&3;m.enableSkip=!!(8&b);m.combinationOperator=b>>4&7;m.defaultPixelValue=b>>7&1;m.gridWidth=(0,n.readUint32)(r,h);h+=4;m.gridHeight=(0,n.readUint32)(r,h);h+=4;m.gridOffsetX=4294967295&(0,n.readUint32)(r,h);h+=4;m.gridOffsetY=4294967295&(0,n.readUint32)(r,h);h+=4;m.gridVectorX=(0,n.readUint16)(r,h);h+=2;m.gridVectorY=(0,n.readUint16)(r,h);h+=2;s=[m,a.referredTo,r,h,i];break;case 38:case 39:const y={};y.info=readRegionSegmentInformation(r,h);h+=g;const w=r[h++];y.mmr=!!(1&w);y.template=w>>1&3;y.prediction=!!(8&w);if(!y.mmr){l=0===y.template?4:1;o=[];for(c=0;c>2&1;S.combinationOperator=x>>3&3;S.requiresBuffer=!!(32&x);S.combinationOperatorOverride=!!(64&x);s=[S];break;case 49:case 50:case 51:case 62:break;case 53:s=[a.number,r,h,i];break;default:throw new Jbig2Error(`segment type ${a.typeName}(${a.type}) is not implemented`)}const u="on"+a.typeName;u in t&&t[u].apply(t,s)}function processSegments(e,t){for(let a=0,r=e.length;a>3,a=new Uint8ClampedArray(t*e.height);e.defaultPixelValue&&a.fill(255);this.buffer=a}drawBitmap(e,t){const a=this.currentPageInfo,r=e.width,n=e.height,i=a.width+7>>3,s=a.combinationOperatorOverride?e.combinationOperator:a.combinationOperator,o=this.buffer,c=128>>(7&e.x);let l,h,u,d,f=e.y*i+(e.x>>3);switch(s){case 0:for(l=0;l>=1;if(!u){u=128;d++}}f+=i}break;case 2:for(l=0;l>=1;if(!u){u=128;d++}}f+=i}break;default:throw new Jbig2Error(`operator ${s} is not supported`)}}onImmediateGenericRegion(e,t,a,r){const n=e.info,i=new DecodingContext(t,a,r),s=decodeBitmap(e.mmr,n.width,n.height,e.template,e.prediction,null,e.at,i);this.drawBitmap(n,s)}onImmediateLosslessGenericRegion(){this.onImmediateGenericRegion(...arguments)}onSymbolDictionary(e,t,a,r,i,s){let o,c;if(e.huffman){o=function getSymbolDictionaryHuffmanTables(e,t,a){let r,n,i,s,o=0;switch(e.huffmanDHSelector){case 0:case 1:r=getStandardTable(e.huffmanDHSelector+4);break;case 3:r=getCustomHuffmanTable(o,t,a);o++;break;default:throw new Jbig2Error("invalid Huffman DH selector")}switch(e.huffmanDWSelector){case 0:case 1:n=getStandardTable(e.huffmanDWSelector+2);break;case 3:n=getCustomHuffmanTable(o,t,a);o++;break;default:throw new Jbig2Error("invalid Huffman DW selector")}if(e.bitmapSizeSelector){i=getCustomHuffmanTable(o,t,a);o++}else i=getStandardTable(1);s=e.aggregationInstancesSelector?getCustomHuffmanTable(o,t,a):getStandardTable(1);return{tableDeltaHeight:r,tableDeltaWidth:n,tableBitmapSize:i,tableAggregateInstances:s}}(e,a,this.customTables);c=new Reader(r,i,s)}let l=this.symbols;l||(this.symbols=l={});const h=[];for(const e of a){const t=l[e];t&&h.push(...t)}const u=new DecodingContext(r,i,s);l[t]=function decodeSymbolDictionary(e,t,a,r,i,s,o,c,l,h,u,d){if(e&&t)throw new Jbig2Error("symbol refinement with Huffman is not supported");const f=[];let g=0,p=(0,n.log2)(a.length+r);const m=u.decoder,b=u.contextCache;let y,w;if(e){y=getStandardTable(1);w=[];p=Math.max(p,1)}for(;f.length1)y=decodeTextRegion(e,t,r,g,0,n,1,a.concat(f),p,0,0,1,0,s,l,h,u,0,d);else{const e=decodeIAID(b,m,p),t=decodeInteger(b,"IARDX",m),n=decodeInteger(b,"IARDY",m);y=decodeRefinement(r,g,l,e=32){let a,r,s;switch(t){case 32:if(0===e)throw new Jbig2Error("no previous value in symbol ID table");r=n.readBits(2)+3;a=i[e-1].prefixLength;break;case 33:r=n.readBits(3)+3;a=0;break;case 34:r=n.readBits(7)+11;a=0;break;default:throw new Jbig2Error("invalid code length in symbol ID table")}for(s=0;s=0;b--){M=e?decodeMMRBitmap(T,l,h,!0):decodeBitmap(!1,l,h,a,!1,null,F,p);O[b]=M}for(D=0;D=0;y--){N^=O[y][D][E];R|=N<>8;_=d+D*f-E*g>>8;if($>=0&&$+C<=r&&_>=0&&_+k<=i)for(b=0;b=i)){U=m[t];j=L[b];for(y=0;y=0&&e>1&7),l=1+(r>>4&7),h=[];let u,d,f=i;do{u=o.readBits(c);d=o.readBits(l);h.push(new HuffmanLine([f,u,d,0]));f+=1<>t&1;if(t<=0)this.children[a]=new HuffmanTreeNode(e);else{let r=this.children[a];r||(this.children[a]=r=new HuffmanTreeNode(null));r.buildTree(e,t-1)}}decodeNode(e){if(this.isLeaf){if(this.isOOB)return null;const t=e.readBits(this.rangeLength);return this.rangeLow+(this.isLowerRange?-t:t)}const t=this.children[e.readBit()];if(!t)throw new Jbig2Error("invalid Huffman data");return t.decodeNode(e)}}class HuffmanTable{constructor(e,t){t||this.assignPrefixCodes(e);this.rootNode=new HuffmanTreeNode(null);for(let t=0,a=e.length;t0&&this.rootNode.buildTree(a,a.prefixLength-1)}}decode(e){return this.rootNode.decodeNode(e)}assignPrefixCodes(e){const t=e.length;let a=0;for(let r=0;r=this.end)throw new Jbig2Error("end of data while reading bit");this.currentByte=this.data[this.position++];this.shift=7}const e=this.currentByte>>this.shift&1;this.shift--;return e}readBits(e){let t,a=0;for(t=e-1;t>=0;t--)a|=this.readBit()<=this.end?-1:this.data[this.position++]}}function getCustomHuffmanTable(e,t,a){let r=0;for(let n=0,i=t.length;n>a&1;a--}}if(r&&!l){const e=5;for(let t=0;t{Object.defineProperty(t,"__esModule",{value:!0});t.ArithmeticDecoder=void 0;const a=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{qe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];t.ArithmeticDecoder=class ArithmeticDecoder{constructor(e,t,a){this.data=e;this.bp=t;this.dataEnd=a;this.chigh=e[t];this.clow=0;this.byteIn();this.chigh=this.chigh<<7&65535|this.clow>>9&127;this.clow=this.clow<<7&65535;this.ct-=7;this.a=32768}byteIn(){const e=this.data;let t=this.bp;if(255===e[t])if(e[t+1]>143){this.clow+=65280;this.ct=8}else{t++;this.clow+=e[t]<<9;this.ct=7;this.bp=t}else{t++;this.clow+=t65535){this.chigh+=this.clow>>16;this.clow&=65535}}readBit(e,t){let r=e[t]>>1,n=1&e[t];const i=a[r],s=i.qe;let o,c=this.a-s;if(this.chigh>15&1;this.clow=this.clow<<1&65535;this.ct--}while(0==(32768&c));this.a=c;e[t]=r<<1|n;return o}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.JpegStream=void 0;var r=a(18),n=a(4),i=a(27),s=a(2);class JpegStream extends r.DecodeStream{constructor(e,t,a){let r;for(;-1!==(r=e.getByte());)if(255===r){e.skip(-1);break}super(t);this.stream=e;this.dict=e.dict;this.maybeLength=t;this.params=a}get bytes(){return(0,s.shadow)(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(){if(this.eof)return;const e={decodeTransform:void 0,colorTransform:void 0},t=this.dict.getArray("D","Decode");if((this.forceRGBA||this.forceRGB)&&Array.isArray(t)){const a=this.dict.get("BPC","BitsPerComponent")||8,r=t.length,n=new Int32Array(r);let i=!1;const s=(1<{Object.defineProperty(t,"__esModule",{value:!0});t.JpegImage=void 0;var r=a(2),n=a(28),i=a(3);class JpegError extends r.BaseException{constructor(e){super(`JPEG error: ${e}`,"JpegError")}}class DNLMarkerError extends r.BaseException{constructor(e,t){super(e,"DNLMarkerError");this.scanLines=t}}class EOIMarkerError extends r.BaseException{constructor(e){super(e,"EOIMarkerError")}}const s=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),o=4017,c=799,l=3406,h=2276,u=1567,d=3784,f=5793,g=2896;function buildHuffmanTable(e,t){let a,r,n=0,i=16;for(;i>0&&!e[i-1];)i--;const s=[{children:[],index:0}];let o,c=s[0];for(a=0;a0;)c=s.pop();c.index++;s.push(c);for(;s.length<=a;){s.push(o={children:[],index:0});c.children[c.index]=o.children;c=o}n++}if(a+10){b--;return m>>b&1}m=e[t++];if(255===m){const r=e[t++];if(r){if(220===r&&d){t+=2;const r=(0,i.readUint16)(e,t);t+=2;if(r>0&&r!==a.scanLines)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",r)}else if(217===r){if(d){const e=x*(8===a.precision?8:0);if(e>0&&Math.round(a.scanLines/e)>=5)throw new DNLMarkerError("Found EOI marker (0xFFD9) while parsing scan data, possibly caused by incorrect `scanLines` parameter",e)}throw new EOIMarkerError("Found EOI marker (0xFFD9) while parsing scan data")}throw new JpegError(`unexpected marker ${(m<<8|r).toString(16)}`)}}b=7;return m>>>7}function decodeHuffman(e){let t=e;for(;;){t=t[readBit()];switch(typeof t){case"number":return t;case"object":continue}throw new JpegError("invalid huffman sequence")}}function receive(e){let t=0;for(;e>0;){t=t<<1|readBit();e--}return t}function receiveAndExtend(e){if(1===e)return 1===readBit()?1:-1;const t=receive(e);return t>=1<0){y--;return}let a=c;const r=l;for(;a<=r;){const r=decodeHuffman(e.huffmanTableAC),n=15&r,i=r>>4;if(0===n){if(i<15){y=receive(i)+(1<>4;if(0===n)if(o<15){y=receive(o)+(1<>4;if(0===r){if(i<15)break;n+=16;continue}n+=i;const o=s[n];e.blockData[t+o]=receiveAndExtend(r);n++}};let D,E=0;const N=1===C?n[0].blocksPerLine*n[0].blocksPerColumn:f*a.mcusPerColumn;let R,L;for(;E<=N;){const a=o?Math.min(N-E,o):N;if(a>0){for(v=0;v0?"unexpected":"excessive";(0,r.warn)(`decodeScan - ${e} MCU data, current marker is: ${D.invalid}`);t=D.offset}if(!(D.marker>=65488&&D.marker<=65495))break;t+=2}return t-p}function quantizeAndInverse(e,t,a){const r=e.quantizationTable,n=e.blockData;let i,s,p,m,b,y,w,S,x,C,k,v,F,O,T,M,D;if(!r)throw new JpegError("missing required Quantization Table.");for(let e=0;e<64;e+=8){x=n[t+e];C=n[t+e+1];k=n[t+e+2];v=n[t+e+3];F=n[t+e+4];O=n[t+e+5];T=n[t+e+6];M=n[t+e+7];x*=r[e];if(0!=(C|k|v|F|O|T|M)){C*=r[e+1];k*=r[e+2];v*=r[e+3];F*=r[e+4];O*=r[e+5];T*=r[e+6];M*=r[e+7];i=f*x+128>>8;s=f*F+128>>8;p=k;m=T;b=g*(C-M)+128>>8;S=g*(C+M)+128>>8;y=v<<4;w=O<<4;i=i+s+1>>1;s=i-s;D=p*d+m*u+128>>8;p=p*u-m*d+128>>8;m=D;b=b+w+1>>1;w=b-w;S=S+y+1>>1;y=S-y;i=i+m+1>>1;m=i-m;s=s+p+1>>1;p=s-p;D=b*h+S*l+2048>>12;b=b*l-S*h+2048>>12;S=D;D=y*c+w*o+2048>>12;y=y*o-w*c+2048>>12;w=D;a[e]=i+S;a[e+7]=i-S;a[e+1]=s+w;a[e+6]=s-w;a[e+2]=p+y;a[e+5]=p-y;a[e+3]=m+b;a[e+4]=m-b}else{D=f*x+512>>10;a[e]=D;a[e+1]=D;a[e+2]=D;a[e+3]=D;a[e+4]=D;a[e+5]=D;a[e+6]=D;a[e+7]=D}}for(let e=0;e<8;++e){x=a[e];C=a[e+8];k=a[e+16];v=a[e+24];F=a[e+32];O=a[e+40];T=a[e+48];M=a[e+56];if(0!=(C|k|v|F|O|T|M)){i=f*x+2048>>12;s=f*F+2048>>12;p=k;m=T;b=g*(C-M)+2048>>12;S=g*(C+M)+2048>>12;y=v;w=O;i=4112+(i+s+1>>1);s=i-s;D=p*d+m*u+2048>>12;p=p*u-m*d+2048>>12;m=D;b=b+w+1>>1;w=b-w;S=S+y+1>>1;y=S-y;i=i+m+1>>1;m=i-m;s=s+p+1>>1;p=s-p;D=b*h+S*l+2048>>12;b=b*l-S*h+2048>>12;S=D;D=y*c+w*o+2048>>12;y=y*o-w*c+2048>>12;w=D;x=i+S;M=i-S;C=s+w;T=s-w;k=p+y;O=p-y;v=m+b;F=m-b;x<16?x=0:x>=4080?x=255:x>>=4;C<16?C=0:C>=4080?C=255:C>>=4;k<16?k=0:k>=4080?k=255:k>>=4;v<16?v=0:v>=4080?v=255:v>>=4;F<16?F=0:F>=4080?F=255:F>>=4;O<16?O=0:O>=4080?O=255:O>>=4;T<16?T=0:T>=4080?T=255:T>>=4;M<16?M=0:M>=4080?M=255:M>>=4;n[t+e]=x;n[t+e+8]=C;n[t+e+16]=k;n[t+e+24]=v;n[t+e+32]=F;n[t+e+40]=O;n[t+e+48]=T;n[t+e+56]=M}else{D=f*x+8192>>14;D=D<-2040?0:D>=2024?255:D+2056>>4;n[t+e]=D;n[t+e+8]=D;n[t+e+16]=D;n[t+e+24]=D;n[t+e+32]=D;n[t+e+40]=D;n[t+e+48]=D;n[t+e+56]=D}}}function buildComponentData(e,t){const a=t.blocksPerLine,r=t.blocksPerColumn,n=new Int16Array(64);for(let e=0;e=r)return null;const s=(0,i.readUint16)(e,t);if(s>=65472&&s<=65534)return{invalid:null,marker:s,offset:t};let o=(0,i.readUint16)(e,n);for(;!(o>=65472&&o<=65534);){if(++n>=r)return null;o=(0,i.readUint16)(e,n)}return{invalid:s.toString(16),marker:o,offset:n}}t.JpegImage=class JpegImage{constructor({decodeTransform:e=null,colorTransform:t=-1}={}){this._decodeTransform=e;this._colorTransform=t}parse(e,{dnlScanLines:t=null}={}){function readDataBlock(){const t=(0,i.readUint16)(e,o);o+=2;let a=o+t-2;const n=findNextFileMarker(e,a,o);if(n?.invalid){(0,r.warn)("readDataBlock - incorrect length, current marker is: "+n.invalid);a=n.offset}const s=e.subarray(o,a);o+=s.length;return s}function prepareComponents(e){const t=Math.ceil(e.samplesPerLine/8/e.maxH),a=Math.ceil(e.scanLines/8/e.maxV);for(const r of e.components){const n=Math.ceil(Math.ceil(e.samplesPerLine/8)*r.h/e.maxH),i=Math.ceil(Math.ceil(e.scanLines/8)*r.v/e.maxV),s=t*r.h,o=64*(a*r.v)*(s+1);r.blockData=new Int16Array(o);r.blocksPerLine=n;r.blocksPerColumn=i}e.mcusPerLine=t;e.mcusPerColumn=a}let a,n,o=0,c=null,l=null,h=0;const u=[],d=[],f=[];let g=(0,i.readUint16)(e,o);o+=2;if(65496!==g)throw new JpegError("SOI not found");g=(0,i.readUint16)(e,o);o+=2;e:for(;65497!==g;){let p,m,b;switch(g){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:const y=readDataBlock();65504===g&&74===y[0]&&70===y[1]&&73===y[2]&&70===y[3]&&0===y[4]&&(c={version:{major:y[5],minor:y[6]},densityUnits:y[7],xDensity:y[8]<<8|y[9],yDensity:y[10]<<8|y[11],thumbWidth:y[12],thumbHeight:y[13],thumbData:y.subarray(14,14+3*y[12]*y[13])});65518===g&&65===y[0]&&100===y[1]&&111===y[2]&&98===y[3]&&101===y[4]&&(l={version:y[5]<<8|y[6],flags0:y[7]<<8|y[8],flags1:y[9]<<8|y[10],transformCode:y[11]});break;case 65499:const w=(0,i.readUint16)(e,o);o+=2;const S=w+o-2;let x;for(;o>4==0)for(m=0;m<64;m++){x=s[m];a[x]=e[o++]}else{if(t>>4!=1)throw new JpegError("DQT - invalid table spec");for(m=0;m<64;m++){x=s[m];a[x]=(0,i.readUint16)(e,o);o+=2}}u[15&t]=a}break;case 65472:case 65473:case 65474:if(a)throw new JpegError("Only single frame JPEGs supported");o+=2;a={};a.extended=65473===g;a.progressive=65474===g;a.precision=e[o++];const C=(0,i.readUint16)(e,o);o+=2;a.scanLines=t||C;a.samplesPerLine=(0,i.readUint16)(e,o);o+=2;a.components=[];a.componentIds={};const k=e[o++];let v=0,F=0;for(p=0;p>4,n=15&e[o+1];v>4==0?f:d)[15&t]=buildHuffmanTable(a,n)}break;case 65501:o+=2;n=(0,i.readUint16)(e,o);o+=2;break;case 65498:const T=1==++h&&!t;o+=2;const M=e[o++],D=[];for(p=0;p>4];n.huffmanTableAC=d[15&i];D.push(n)}const E=e[o++],N=e[o++],R=e[o++];try{const t=decodeScan(e,o,a,D,n,E,N,R>>4,15&R,T);o+=t}catch(t){if(t instanceof DNLMarkerError){(0,r.warn)(`${t.message} -- attempting to re-parse the JPEG image.`);return this.parse(e,{dnlScanLines:t.scanLines})}if(t instanceof EOIMarkerError){(0,r.warn)(`${t.message} -- ignoring the rest of the image data.`);break e}throw t}break;case 65500:o+=4;break;case 65535:255!==e[o]&&o--;break;default:const L=findNextFileMarker(e,o-2,o-3);if(L?.invalid){(0,r.warn)("JpegImage.parse - unexpected data, current marker is: "+L.invalid);o=L.offset;break}if(!L||o>=e.length-1){(0,r.warn)("JpegImage.parse - reached the end of the image data without finding an EOI marker (0xFFD9).");break e}throw new JpegError("JpegImage.parse - unknown marker: "+g.toString(16))}g=(0,i.readUint16)(e,o);o+=2}this.width=a.samplesPerLine;this.height=a.scanLines;this.jfif=c;this.adobe=l;this.components=[];for(const e of a.components){const t=u[e.quantizationId];t&&(e.quantizationTable=t);this.components.push({index:e.index,output:buildComponentData(0,e),scaleX:e.h/a.maxH,scaleY:e.v/a.maxV,blocksPerLine:e.blocksPerLine,blocksPerColumn:e.blocksPerColumn})}this.numComponents=this.components.length}_getLinearizedBlockData(e,t,a=!1){const r=this.width/e,n=this.height/t;let i,s,o,c,l,h,u,d,f,g,p,m=0;const b=this.components.length,y=e*t*b,w=new Uint8ClampedArray(y),S=new Uint32Array(e),x=4294967288;let C;for(u=0;u>8)+k[f+1];return w}get _isColorConversionNeeded(){return this.adobe?!!this.adobe.transformCode:3===this.numComponents?0!==this._colorTransform&&(82!==this.components[0].index||71!==this.components[1].index||66!==this.components[2].index):1===this._colorTransform}_convertYccToRgb(e){let t,a,r;for(let n=0,i=e.length;n4)throw new JpegError("Unsupported color mode");const s=this._getLinearizedBlockData(e,t,i);if(1===this.numComponents&&(a||r)){const e=s.length*(a?4:3),t=new Uint8ClampedArray(e);let r=0;if(a)(0,n.grayToRGBA)(s,new Uint32Array(t.buffer));else for(const e of s){t[r++]=e;t[r++]=e;t[r++]=e}return t}if(3===this.numComponents&&this._isColorConversionNeeded){if(a){const e=new Uint8ClampedArray(s.length/3*4);return this._convertYccToRgba(s,e)}return this._convertYccToRgb(s)}if(4===this.numComponents){if(this._isColorConversionNeeded)return a?this._convertYcckToRgba(s):r?this._convertYcckToRgb(s):this._convertYcckToCmyk(s);if(a)return this._convertCmykToRgba(s);if(r)return this._convertCmykToRgb(s)}return s}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.convertBlackAndWhiteToRGBA=convertBlackAndWhiteToRGBA;t.convertToRGBA=function convertToRGBA(e){switch(e.kind){case r.ImageKind.GRAYSCALE_1BPP:return convertBlackAndWhiteToRGBA(e);case r.ImageKind.RGB_24BPP:return function convertRGBToRGBA({src:e,srcPos:t=0,dest:a,destPos:n=0,width:i,height:s}){let o=0;const c=e.length>>2,l=new Uint32Array(e.buffer,t,c);if(r.FeatureTest.isLittleEndian){for(;o>>24|t<<8|4278190080;a[n+2]=t>>>16|r<<16|4278190080;a[n+3]=r>>>8|4278190080}for(let t=4*o,r=e.length;t>>8|255;a[n+2]=t<<16|r>>>16|255;a[n+3]=r<<8|255}for(let t=4*o,r=e.length;t>3,d=7&n,f=e.length;a=new Uint32Array(a.buffer);let g=0;for(let r=0;r{Object.defineProperty(t,"__esModule",{value:!0});t.JpxStream=void 0;var r=a(18),n=a(30),i=a(2);class JpxStream extends r.DecodeStream{constructor(e,t,a){super(t);this.stream=e;this.dict=e.dict;this.maybeLength=t;this.params=a}get bytes(){return(0,i.shadow)(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(){if(this.eof)return;const e=new n.JpxImage;e.parse(this.bytes);const t=e.width,a=e.height,r=e.componentsCount,i=e.tiles.length;if(1===i)this.buffer=e.tiles[0].items;else{const n=new Uint8ClampedArray(t*a*r);for(let a=0;a{Object.defineProperty(t,"__esModule",{value:!0});t.JpxImage=void 0;var r=a(2),n=a(3),i=a(25);class JpxError extends r.BaseException{constructor(e){super(`JPX error: ${e}`,"JpxError")}}const s={LL:0,LH:1,HL:1,HH:2};t.JpxImage=class JpxImage{constructor(){this.failOnCorruptedImage=!1}parse(e){if(65359===(0,n.readUint16)(e,0)){this.parseCodestream(e,0,e.length);return}const t=e.length;let a=0;for(;a>24&255,o>>16&255,o>>8&255,255&o);(0,r.warn)(`Unsupported header type ${o} (${i}).`)}l&&(a+=c)}}parseImageProperties(e){let t=e.getByte();for(;t>=0;){const a=t;t=e.getByte();if(65361===(a<<8|t)){e.skip(4);const t=e.getInt32()>>>0,a=e.getInt32()>>>0,r=e.getInt32()>>>0,n=e.getInt32()>>>0;e.skip(16);const i=e.getUint16();this.width=t-r;this.height=a-n;this.componentsCount=i;this.bitsPerComponent=8;return}}throw new JpxError("No size marker found in JPX stream")}parseCodestream(e,t,a){const i={};let s=!1;try{let o=t;for(;o+1>5;l=[];for(;a>3;t.mu=0}else{t.epsilon=e[a]>>3;t.mu=(7&e[a])<<8|e[a+1];a+=2}l.push(t)}b.SPqcds=l;if(i.mainHeader)i.QCD=b;else{i.currentTile.QCD=b;i.currentTile.QCC=[]}break;case 65373:f=(0,n.readUint16)(e,o);const y={};a=o+2;let w;if(i.SIZ.Csiz<257)w=e[a++];else{w=(0,n.readUint16)(e,a);a+=2}c=e[a++];switch(31&c){case 0:h=8;u=!0;break;case 1:h=16;u=!1;break;case 2:h=16;u=!0;break;default:throw new Error("Invalid SQcd value "+c)}y.noQuantization=8===h;y.scalarExpounded=u;y.guardBits=c>>5;l=[];for(;a>3;t.mu=0}else{t.epsilon=e[a]>>3;t.mu=(7&e[a])<<8|e[a+1];a+=2}l.push(t)}y.SPqcds=l;i.mainHeader?i.QCC[w]=y:i.currentTile.QCC[w]=y;break;case 65362:f=(0,n.readUint16)(e,o);const S={};a=o+2;const x=e[a++];S.entropyCoderWithCustomPrecincts=!!(1&x);S.sopMarkerUsed=!!(2&x);S.ephMarkerUsed=!!(4&x);S.progressionOrder=e[a++];S.layersCount=(0,n.readUint16)(e,a);a+=2;S.multipleComponentTransform=e[a++];S.decompositionLevelsCount=e[a++];S.xcb=2+(15&e[a++]);S.ycb=2+(15&e[a++]);const C=e[a++];S.selectiveArithmeticCodingBypass=!!(1&C);S.resetContextProbabilities=!!(2&C);S.terminationOnEachCodingPass=!!(4&C);S.verticallyStripe=!!(8&C);S.predictableTermination=!!(16&C);S.segmentationSymbolUsed=!!(32&C);S.reversibleTransformation=e[a++];if(S.entropyCoderWithCustomPrecincts){const t=[];for(;a>4})}S.precinctsSizes=t}const k=[];S.selectiveArithmeticCodingBypass&&k.push("selectiveArithmeticCodingBypass");S.terminationOnEachCodingPass&&k.push("terminationOnEachCodingPass");S.verticallyStripe&&k.push("verticallyStripe");S.predictableTermination&&k.push("predictableTermination");if(k.length>0){s=!0;(0,r.warn)(`JPX: Unsupported COD options (${k.join(", ")}).`)}if(i.mainHeader)i.COD=S;else{i.currentTile.COD=S;i.currentTile.COC=[]}break;case 65424:f=(0,n.readUint16)(e,o);d={};d.index=(0,n.readUint16)(e,o+2);d.length=(0,n.readUint32)(e,o+4);d.dataEnd=d.length+o-2;d.partIndex=e[o+8];d.partsCount=e[o+9];i.mainHeader=!1;if(0===d.partIndex){d.COD=i.COD;d.COC=i.COC.slice(0);d.QCD=i.QCD;d.QCC=i.QCC.slice(0)}i.currentTile=d;break;case 65427:d=i.currentTile;if(0===d.partIndex){initializeTile(i,d.index);buildPackets(i)}f=d.dataEnd-o;parseTilePackets(i,e,o,f);break;case 65363:(0,r.warn)("JPX: Codestream code 0xFF53 (COC) is not implemented.");case 65365:case 65367:case 65368:case 65380:f=(0,n.readUint16)(e,o);break;default:throw new Error("Unknown codestream code: "+t.toString(16))}o+=f}}catch(e){if(s||this.failOnCorruptedImage)throw new JpxError(e.message);(0,r.warn)(`JPX: Trying to recover from: "${e.message}".`)}this.tiles=function transformComponents(e){const t=e.SIZ,a=e.components,r=t.Csiz,n=[];for(let t=0,i=e.tiles.length;t>2);c[b++]=e+m>>h;c[b++]=e>>h;c[b++]=e+p>>h}else for(d=0;d>h;c[b++]=g-.34413*p-.71414*m>>h;c[b++]=g+1.772*p>>h}if(e)for(d=0,b=3;d>h}else for(let e=0;e>h;b+=r}}n.push(l)}return n}(i);this.width=i.SIZ.Xsiz-i.SIZ.XOsiz;this.height=i.SIZ.Ysiz-i.SIZ.YOsiz;this.componentsCount=i.SIZ.Csiz}};function calculateComponentDimensions(e,t){e.x0=Math.ceil(t.XOsiz/e.XRsiz);e.x1=Math.ceil(t.Xsiz/e.XRsiz);e.y0=Math.ceil(t.YOsiz/e.YRsiz);e.y1=Math.ceil(t.Ysiz/e.YRsiz);e.width=e.x1-e.x0;e.height=e.y1-e.y0}function calculateTileGrids(e,t){const a=e.SIZ,r=[];let n;const i=Math.ceil((a.Xsiz-a.XTOsiz)/a.XTsiz),s=Math.ceil((a.Ysiz-a.YTOsiz)/a.YTsiz);for(let e=0;e0?Math.min(r.xcb,n.PPx-1):Math.min(r.xcb,n.PPx);n.ycb_=a>0?Math.min(r.ycb,n.PPy-1):Math.min(r.ycb,n.PPy);return n}function buildPrecincts(e,t,a){const r=1<t.trx0?Math.ceil(t.trx1/r)-Math.floor(t.trx0/r):0,l=t.try1>t.try0?Math.ceil(t.try1/n)-Math.floor(t.try0/n):0,h=c*l;t.precinctParameters={precinctWidth:r,precinctHeight:n,numprecinctswide:c,numprecinctshigh:l,numprecincts:h,precinctWidthInSubband:s,precinctHeightInSubband:o}}function buildCodeblocks(e,t,a){const r=a.xcb_,n=a.ycb_,i=1<>r,c=t.tby0>>n,l=t.tbx1+i-1>>r,h=t.tby1+s-1>>n,u=t.resolution.precinctParameters,d=[],f=[];let g,p,m,b;for(p=c;pe.cbxMax&&(e.cbxMax=g);pe.cbyMax&&(e.cbyMax=p)}else f[b]=e={cbxMin:g,cbyMin:p,cbxMax:g,cbyMax:p};m.precinct=e}t.codeblockParameters={codeblockWidth:r,codeblockHeight:n,numcodeblockwide:l-o+1,numcodeblockhigh:h-c+1};t.codeblocks=d;t.precincts=f}function createPacket(e,t,a){const r=[],n=e.subbands;for(let e=0,a=n.length;ee.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[c],a=t.precinctParameters.numprecincts;for(;he.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[o],a=t.precinctParameters.numprecincts;for(;he.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[o],a=t.precinctParameters.numprecincts;if(!(l>=a)){for(;s=0;--e){const a=t.resolutions[e],r=g*a.precinctParameters.precinctWidth,n=g*a.precinctParameters.precinctHeight;h=Math.min(h,r);u=Math.min(u,n);d=Math.max(d,a.precinctParameters.numprecinctswide);f=Math.max(f,a.precinctParameters.numprecinctshigh);l[e]={width:r,height:n};g<<=1}a=Math.min(a,h);r=Math.min(r,u);n=Math.max(n,d);i=Math.max(i,f);s[o]={resolutions:l,minWidth:h,minHeight:u,maxNumWide:d,maxNumHigh:f}}return{components:s,minWidth:a,minHeight:r,maxNumWide:n,maxNumHigh:i}}function buildPackets(e){const t=e.SIZ,a=e.currentTile.index,r=e.tiles[a],n=t.Csiz;for(let e=0;e>>o&(1<0;){const e=i.shift();o=e.codeblock;void 0===o.data&&(o.data=[]);o.data.push({data:t,start:a+s,end:a+s+e.dataLength,codingpasses:e.codingpasses});s+=e.dataLength}}return s}function copyCoefficients(e,t,a,r,n,s,o,c,l){const h=r.tbx0,u=r.tby0,d=r.tbx1-r.tbx0,f=r.codeblocks,g="H"===r.type.charAt(0)?1:0,p="H"===r.type.charAt(1)?t:0;for(let a=0,m=f.length;a=s?j:j*(1<0?1-e:0)}const p=t.subbands[r],m=s[p.type];copyCoefficients(i,a,0,p,g?1:2**(f+m-o)*(1+n/2048),h+o-1,g,u,d)}m.push({width:a,height:n,items:i})}const y=p.calculate(m,r.tcx0,r.tcy0);return{left:r.tcx0,top:r.tcy0,width:y.width,height:y.height,items:y.items}}function initializeTile(e,t){const a=e.SIZ.Csiz,r=e.tiles[t];for(let t=0;t>=1;t>>=1;r++}r--;a=this.levels[r];a.items[a.index]=n;this.currentLevel=r;delete this.value}incrementValue(){const e=this.levels[this.currentLevel];e.items[e.index]++}nextLevel(){let e=this.currentLevel,t=this.levels[e];const a=t.items[t.index];e--;if(e<0){this.value=a;return!1}this.currentLevel=e;t=this.levels[e];t.items[t.index]=a;return!0}}class InclusionTree{constructor(e,t,a){const r=(0,n.log2)(Math.max(e,t))+1;this.levels=[];for(let n=0;na){this.currentLevel=r;this.propagateValues();return!1}e>>=1;t>>=1;r++}this.currentLevel=r-1;return!0}incrementValue(e){const t=this.levels[this.currentLevel];t.items[t.index]=e+1;this.propagateValues()}propagateValues(){let e=this.currentLevel,t=this.levels[e];const a=t.items[t.index];for(;--e>=0;){t=this.levels[e];t.items[t.index]=a}}nextLevel(){let e=this.currentLevel,t=this.levels[e];const a=t.items[t.index];t.items[t.index]=255;e--;if(e<0)return!1;this.currentLevel=e;t=this.levels[e];t.items[t.index]=a;return!0}}class BitModel{static UNIFORM_CONTEXT=17;static RUNLENGTH_CONTEXT=18;static LLAndLHContextsLabel=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]);static HLContextLabel=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]);static HHContextLabel=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);constructor(e,t,a,r,n){this.width=e;this.height=t;let i;i="HH"===a?BitModel.HHContextLabel:"HL"===a?BitModel.HLContextLabel:BitModel.LLAndLHContextsLabel;this.contextLabelTable=i;const s=e*t;this.neighborsSignificance=new Uint8Array(s);this.coefficentsSign=new Uint8Array(s);let o;o=n>14?new Uint32Array(s):n>6?new Uint16Array(s):new Uint8Array(s);this.coefficentsMagnitude=o;this.processingFlags=new Uint8Array(s);const c=new Uint8Array(s);if(0!==r)for(let e=0;e0,o=t+10){c=a-n;s&&(r[c-1]+=16);o&&(r[c+1]+=16);r[c]+=4}if(e+1=a)break;s[d]&=-2;if(r[d]||!i[d])continue;const g=c[i[d]];if(e.readBit(o,g)){const e=this.decodeSignBit(t,u,d);n[d]=e;r[d]=1;this.setNeighborsSignificance(t,u,d);s[d]|=2}l[d]++;s[d]|=1}}}decodeSignBit(e,t,a){const r=this.width,n=this.height,i=this.coefficentsMagnitude,s=this.coefficentsSign;let o,c,l,h,u,d;h=t>0&&0!==i[a-1];if(t+10&&0!==i[a-r];if(e+1=0){u=9+o;d=this.decoder.readBit(this.contexts,u)}else{u=9-o;d=1^this.decoder.readBit(this.contexts,u)}return d}runMagnitudeRefinementPass(){const e=this.decoder,t=this.width,a=this.height,r=this.coefficentsMagnitude,n=this.neighborsSignificance,i=this.contexts,s=this.bitsDecoded,o=this.processingFlags,c=t*a,l=4*t;for(let a,h=0;h>1;let n,i,s,o;const c=-1.586134342059924,l=-.052980118572961,h=.882911075530934,u=.443506852043971,d=1.230174104914001;n=(t|=0)-3;for(i=r+4;i--;n+=2)e[n]*=.8128930661159609;n=t-2;s=u*e[n-1];for(i=r+3;i--;n+=2){o=u*e[n+1];e[n]=d*e[n]-s-o;if(!i--)break;n+=2;s=u*e[n+1];e[n]=d*e[n]-s-o}n=t-1;s=h*e[n-1];for(i=r+2;i--;n+=2){o=h*e[n+1];e[n]-=s+o;if(!i--)break;n+=2;s=h*e[n+1];e[n]-=s+o}n=t;s=l*e[n-1];for(i=r+1;i--;n+=2){o=l*e[n+1];e[n]-=s+o;if(!i--)break;n+=2;s=l*e[n+1];e[n]-=s+o}if(0!==r){n=t+1;s=c*e[n-1];for(i=r;i--;n+=2){o=c*e[n+1];e[n]-=s+o;if(!i--)break;n+=2;s=c*e[n+1];e[n]-=s+o}}}}class ReversibleTransform extends Transform{filter(e,t,a){const r=a>>1;let n,i;for(n=t|=0,i=r+1;i--;n+=2)e[n]-=e[n-1]+e[n+1]+2>>2;for(n=t+1,i=r;i--;n+=2)e[n]+=e[n-1]+e[n+1]>>1}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.LZWStream=void 0;var r=a(18);class LZWStream extends r.DecodeStream{constructor(e,t,a){super(t);this.str=e;this.dict=e.dict;this.cachedData=0;this.bitsCached=0;const r=4096,n={earlyChange:a,codeLength:9,nextCode:258,dictionaryValues:new Uint8Array(r),dictionaryLengths:new Uint16Array(r),dictionaryPrevCodes:new Uint16Array(r),currentSequence:new Uint8Array(r),currentSequenceLength:0};for(let e=0;e<256;++e){n.dictionaryValues[e]=e;n.dictionaryLengths[e]=1}this.lzwState=n}readBits(e){let t=this.bitsCached,a=this.cachedData;for(;t>>t&(1<0;if(e<256){d[0]=e;f=1}else{if(!(e>=258)){if(256===e){h=9;s=258;f=0;continue}this.eof=!0;delete this.lzwState;break}if(e=0;t--){d[t]=o[a];a=l[a]}}else d[f++]=d[0]}if(n){l[s]=u;c[s]=c[u]+1;o[s]=d[0];s++;h=s+i&s+i-1?h:0|Math.min(Math.log(s+i)/.6931471805599453+1,12)}u=e;g+=f;if(r{Object.defineProperty(t,"__esModule",{value:!0});t.PredictorStream=void 0;var r=a(18),n=a(4),i=a(2);class PredictorStream extends r.DecodeStream{constructor(e,t,a){super(t);if(!(a instanceof n.Dict))return e;const r=this.predictor=a.get("Predictor")||1;if(r<=1)return e;if(2!==r&&(r<10||r>15))throw new i.FormatError(`Unsupported predictor: ${r}`);this.readBlock=2===r?this.readBlockTiff:this.readBlockPng;this.str=e;this.dict=e.dict;const s=this.colors=a.get("Colors")||1,o=this.bits=a.get("BPC","BitsPerComponent")||8,c=this.columns=a.get("Columns")||1;this.pixBytes=s*o+7>>3;this.rowBytes=c*s*o+7>>3;return this}readBlockTiff(){const e=this.rowBytes,t=this.bufferLength,a=this.ensureBuffer(t+e),r=this.bits,n=this.colors,i=this.str.getBytes(e);this.eof=!i.length;if(this.eof)return;let s,o=0,c=0,l=0,h=0,u=t;if(1===r&&1===n)for(s=0;s>1;e^=e>>2;e^=e>>4;o=(1&e)<<7;a[u++]=e}else if(8===r){for(s=0;s>8&255;a[u++]=255&e}}else{const e=new Uint8Array(n+1),u=(1<>l-r)&u;l-=r;c=c<=8){a[f++]=c>>h-8&255;h-=8}}h>0&&(a[f++]=(c<<8-h)+(o&(1<<8-h)-1))}this.bufferLength+=e}readBlockPng(){const e=this.rowBytes,t=this.pixBytes,a=this.str.getByte(),r=this.str.getBytes(e);this.eof=!r.length;if(this.eof)return;const n=this.bufferLength,s=this.ensureBuffer(n+e);let o=s.subarray(n-e,n);0===o.length&&(o=new Uint8Array(e));let c,l,h,u=n;switch(a){case 0:for(c=0;c>1)+r[c];for(;c>1)+r[c]&255;u++}break;case 4:for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0});t.RunLengthStream=void 0;var r=a(18);class RunLengthStream extends r.DecodeStream{constructor(e,t){super(t);this.str=e;this.dict=e.dict}readBlock(){const e=this.str.getBytes(2);if(!e||e.length<2||128===e[0]){this.eof=!0;return}let t,a=this.bufferLength,r=e[0];if(r<128){t=this.ensureBuffer(a+r+1);t[a++]=e[1];if(r>0){const e=this.str.getBytes(r);t.set(e,a);a+=r}}else{r=257-r;const n=e[1];t=this.ensureBuffer(a+r+1);for(let e=0;e{Object.defineProperty(t,"__esModule",{value:!0});t.Font=t.ErrorFont=void 0;var r=a(2),n=a(35),i=a(38),s=a(40),o=a(39),c=a(37),l=a(41),h=a(42),u=a(43),d=a(44),f=a(45),g=a(46),p=a(14),m=a(47),b=a(3),y=a(8),w=a(48);const S=[[57344,63743],[1048576,1114109]],x=1e3,C=["ascent","bbox","black","bold","charProcOperatorList","composite","cssFontInfo","data","defaultVMetrics","defaultWidth","descent","fallbackName","fontMatrix","isInvalidPDFjsFont","isType3Font","italic","loadedName","mimetype","missingFile","name","remeasure","subtype","systemFontInfo","type","vertical"],k=["cMap","defaultEncoding","differences","isMonospace","isSerifFont","isSymbolicFont","seacMap","toFontChar","toUnicode","vmetrics","widths"];function adjustWidths(e){if(!e.fontMatrix)return;if(e.fontMatrix[0]===r.FONT_IDENTITY_MATRIX[0])return;const t=.001/e.fontMatrix[0],a=e.widths;for(const e in a)a[e]*=t;e.defaultWidth*=t}function amendFallbackToUnicode(e){if(!e.fallbackToUnicode)return;if(e.toUnicode instanceof h.IdentityToUnicodeMap)return;const t=[];for(const a in e.fallbackToUnicode)e.toUnicode.has(a)||(t[a]=e.fallbackToUnicode[a]);t.length>0&&e.toUnicode.amend(t)}class Glyph{constructor(e,t,a,r,n,i,s,o,c){this.originalCharCode=e;this.fontChar=t;this.unicode=a;this.accent=r;this.width=n;this.vmetric=i;this.operatorListId=s;this.isSpace=o;this.isInFont=c}get category(){return(0,r.shadow)(this,"category",(0,s.getCharUnicodeCategory)(this.unicode),!0)}}function int16(e,t){return(e<<8)+t}function writeSignedInt16(e,t,a){e[t+1]=a;e[t]=a>>>8}function signedInt16(e,t){const a=(e<<8)+t;return 32768&a?a-65536:a}function string16(e){return String.fromCharCode(e>>8&255,255&e)}function safeString16(e){e>32767?e=32767:e<-32768&&(e=-32768);return String.fromCharCode(e>>8&255,255&e)}function isTrueTypeCollectionFile(e){const t=e.peekBytes(4);return"ttcf"===(0,r.bytesToString)(t)}function getFontFileType(e,{type:t,subtype:a,composite:n}){let i,s;if(function isTrueTypeFile(e){const t=e.peekBytes(4);return 65536===(0,b.readUint32)(t,0)||"true"===(0,r.bytesToString)(t)}(e)||isTrueTypeCollectionFile(e))i=n?"CIDFontType2":"TrueType";else if(function isOpenTypeFile(e){const t=e.peekBytes(4);return"OTTO"===(0,r.bytesToString)(t)}(e))i=n?"CIDFontType2":"OpenType";else if(function isType1File(e){const t=e.peekBytes(2);return 37===t[0]&&33===t[1]||128===t[0]&&1===t[1]}(e))i=n?"CIDFontType0":"MMType1"===t?"MMType1":"Type1";else if(function isCFFFile(e){const t=e.peekBytes(4);return t[0]>=1&&t[3]>=1&&t[3]<=4}(e))if(n){i="CIDFontType0";s="CIDFontType0C"}else{i="MMType1"===t?"MMType1":"Type1";s="Type1C"}else{(0,r.warn)("getFontFileType: Unable to detect correct font file Type/Subtype.");i=t;s=a}return[i,s]}function applyStandardFontGlyphMap(e,t){for(const a in t)e[+a]=t[a]}function buildToFontChar(e,t,a){const r=[];let n;for(let a=0,i=e.length;au){l++;if(l>=S.length){(0,r.warn)("Ran out of space in font private use area.");break}h=S[l][0];u=S[l][1]}const p=h++;0===g&&(g=a);let m=n.get(f);"string"==typeof m&&(m=m.codePointAt(0));if(m&&!(d=m,S[0][0]<=d&&d<=S[0][1]||S[1][0]<=d&&d<=S[1][1])&&!c.has(g)){s.set(m,g);c.add(g)}i[p]=g;o[f]=p}var d;return{toFontChar:o,charCodeToGlyphId:i,toUnicodeExtraMap:s,nextAvailableFontCharCode:h}}function createCmapTable(e,t,a){const n=function getRanges(e,t,a){const r=[];for(const t in e)e[t]>=a||r.push({fontCharCode:0|t,glyphId:e[t]});if(t)for(const[e,n]of t)n>=a||r.push({fontCharCode:e,glyphId:n});0===r.length&&r.push({fontCharCode:0,glyphId:0});r.sort((function fontGetRangesSort(e,t){return e.fontCharCode-t.fontCharCode}));const n=[],i=r.length;for(let e=0;e65535?2:1;let s,o,c,l,h="\0\0"+string16(i)+"\0\0"+(0,r.string32)(4+8*i);for(s=n.length-1;s>=0&&!(n[s][0]<=65535);--s);const u=s+1;n[s][0]<65535&&65535===n[s][1]&&(n[s][1]=65534);const d=n[s][1]<65535?1:0,f=u+d,g=m.OpenTypeFileBuilder.getSearchParams(f,2);let p,b,y,w,S="",x="",C="",k="",v="",F=0;for(s=0,o=u;s0){x+="ÿÿ";S+="ÿÿ";C+="\0";k+="\0\0"}const O="\0\0"+string16(2*f)+string16(g.range)+string16(g.entry)+string16(g.rangeShift)+x+"\0\0"+S+C+k+v;let T="",M="";if(i>1){h+="\0\0\n"+(0,r.string32)(4+8*i+4+O.length);T="";for(s=0,o=n.length;se||!l)&&(l=e);h 123 are reserved for internal usage");c|=1<65535&&(h=65535)}else{l=0;h=255}const d=e.bbox||[0,0,0,0],f=a.unitsPerEm||1/(e.fontMatrix||r.FONT_IDENTITY_MATRIX)[0],g=e.ascentScaled?1:f/x,p=a.ascent||Math.round(g*(e.ascent||d[3]));let m=a.descent||Math.round(g*(e.descent||d[1]));m>0&&e.descent>0&&d[1]<0&&(m=-m);const b=a.yMax||p,y=-a.yMin||-m;return"\0$ô\0\0\0Š»\0\0\0ŒŠ»\0\0ß\x001\0\0\0\0"+String.fromCharCode(e.fixedPitch?9:0)+"\0\0\0\0\0\0"+(0,r.string32)(n)+(0,r.string32)(i)+(0,r.string32)(o)+(0,r.string32)(c)+"*21*"+string16(e.italicAngle?1:0)+string16(l||e.firstChar)+string16(h||e.lastChar)+string16(p)+string16(m)+"\0d"+string16(b)+string16(y)+"\0\0\0\0\0\0\0\0"+string16(e.xHeight)+string16(e.capHeight)+string16(0)+string16(l||e.firstChar)+"\0"}function createPostTable(e){const t=Math.floor(65536*e.italicAngle);return"\0\0\0"+(0,r.string32)(t)+"\0\0\0\0"+(0,r.string32)(e.fixedPitch?1:0)+"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}function createPostscriptName(e){return e.replaceAll(/[^\x21-\x7E]|[[\](){}<>/%]/g,"").slice(0,63)}function createNameTable(e,t){t||(t=[[],[]]);const a=[t[0][0]||"Original licence",t[0][1]||e,t[0][2]||"Unknown",t[0][3]||"uniqueID",t[0][4]||e,t[0][5]||"Version 0.11",t[0][6]||createPostscriptName(e),t[0][7]||"Unknown",t[0][8]||"Unknown",t[0][9]||"Unknown"],r=[];let n,i,s,o,c;for(n=0,i=a.length;n0;if((d||g)&&"CIDFontType2"===a&&this.cidEncoding.startsWith("Identity-")){const a=e.cidToGidMap,r=[];applyStandardFontGlyphMap(r,(0,l.getGlyphMapForStandardFonts)());/Arial-?Black/i.test(t)?applyStandardFontGlyphMap(r,(0,l.getSupplementalGlyphMapForArialBlack)()):/Calibri/i.test(t)&&applyStandardFontGlyphMap(r,(0,l.getSupplementalGlyphMapForCalibri)());if(a){for(const e in r){const t=r[e];void 0!==a[t]&&(r[+e]=a[t])}a.length!==this.toUnicode.length&&e.hasIncludedToUnicodeMap&&this.toUnicode instanceof h.IdentityToUnicodeMap&&this.toUnicode.forEach((function(e,t){const n=r[e];void 0===a[n]&&(r[+e]=t)}))}this.toUnicode instanceof h.IdentityToUnicodeMap||this.toUnicode.forEach((function(e,t){r[+e]=t}));this.toFontChar=r;this.toUnicode=new h.ToUnicodeMap(r)}else if(/Symbol/i.test(r))this.toFontChar=buildToFontChar(c.SymbolSetEncoding,(0,o.getGlyphsUnicode)(),this.differences);else if(/Dingbats/i.test(r))this.toFontChar=buildToFontChar(c.ZapfDingbatsEncoding,(0,o.getDingbatsGlyphsUnicode)(),this.differences);else if(d){const e=buildToFontChar(this.defaultEncoding,(0,o.getGlyphsUnicode)(),this.differences);"CIDFontType2"!==a||this.cidEncoding.startsWith("Identity-")||this.toUnicode instanceof h.IdentityToUnicodeMap||this.toUnicode.forEach((function(t,a){e[+t]=a}));this.toFontChar=e}else{const e=(0,o.getGlyphsUnicode)(),a=[];this.toUnicode.forEach(((t,r)=>{if(!this.composite){const a=this.differences[t]||this.defaultEncoding[t],n=(0,s.getUnicodeForGlyph)(a,e);-1!==n&&(r=n)}a[+t]=r}));this.composite&&this.toUnicode instanceof h.IdentityToUnicodeMap&&/Tahoma|Verdana/i.test(t)&&applyStandardFontGlyphMap(a,(0,l.getGlyphMapForStandardFonts)());this.toFontChar=a}amendFallbackToUnicode(e);this.loadedName=r.split("-")[0]}checkAndRepair(e,t,a){const s=["OS/2","cmap","head","hhea","hmtx","maxp","name","post","loca","glyf","fpgm","prep","cvt ","CFF "];function readTables(e,t){const a=Object.create(null);a["OS/2"]=null;a.cmap=null;a.head=null;a.hhea=null;a.hmtx=null;a.maxp=null;a.name=null;a.post=null;for(let r=0;r>>0,r=e.getInt32()>>>0,n=e.getInt32()>>>0,i=e.pos;e.pos=e.start||0;e.skip(r);const s=e.getBytes(n);e.pos=i;if("head"===t){s[8]=s[9]=s[10]=s[11]=0;s[17]|=32}return{tag:t,checksum:a,length:n,offset:r,data:s}}function readOpenTypeHeader(e){return{version:e.getString(4),numTables:e.getUint16(),searchRange:e.getUint16(),entrySelector:e.getUint16(),rangeShift:e.getUint16()}}function sanitizeGlyph(e,t,a,r,n,i){const s={length:0,sizeOfInstructions:0};if(t<0||t>=e.length||a>e.length||a-t<=12)return s;const o=e.subarray(t,a),c=signedInt16(o[2],o[3]),l=signedInt16(o[4],o[5]),h=signedInt16(o[6],o[7]),u=signedInt16(o[8],o[9]);if(c>h){writeSignedInt16(o,2,h);writeSignedInt16(o,6,c)}if(l>u){writeSignedInt16(o,4,u);writeSignedInt16(o,8,l)}const d=signedInt16(o[0],o[1]);if(d<0){if(d<-1)return s;r.set(o,n);s.length=o.length;return s}let f,g=10,p=0;for(f=0;fo.length)return s;if(!i&&b>0){r.set(o.subarray(0,m),n);r.set([0,0],n+m);r.set(o.subarray(y,S),n+m+2);S-=b;o.length-S>3&&(S=S+3&-4);s.length=S;return s}if(o.length-S>3){S=S+3&-4;r.set(o.subarray(0,S),n);s.length=S;return s}r.set(o,n);s.length=o.length;return s}function readNameTable(e){const a=(t.start||0)+e.offset;t.pos=a;const r=[[],[]],n=[],i=e.length,s=a+i;if(0!==t.getUint16()||i<6)return[r,n];const o=t.getUint16(),c=t.getUint16();let l,h;for(l=0;ls)continue;t.pos=i;const o=e.name;if(e.encoding){let a="";for(let r=0,n=e.length;r0&&(h+=e-1)}}else{if(b||w){(0,r.warn)("TT: nested FDEFs not allowed");m=!0}b=!0;d=h;s=f.pop();t.functionsDefined[s]={data:c,i:h}}else if(!b&&!w){s=f.at(-1);if(isNaN(s))(0,r.info)("TT: CALL empty stack (or invalid entry).");else{t.functionsUsed[s]=!0;if(s in t.functionsStackDeltas){const e=f.length+t.functionsStackDeltas[s];if(e<0){(0,r.warn)("TT: CALL invalid functions stack delta.");t.hintsValid=!1;return}f.length=e}else if(s in t.functionsDefined&&!p.includes(s)){g.push({data:c,i:h,stackTop:f.length-1});p.push(s);o=t.functionsDefined[s];if(!o){(0,r.warn)("TT: CALL non-existent function");t.hintsValid=!1;return}c=o.data;h=o.i}}}if(!b&&!w){let t=0;e<=142?t=l[e]:e>=192&&e<=223?t=-1:e>=224&&(t=-2);if(e>=113&&e<=117){n=f.pop();isNaN(n)||(t=2*-n)}for(;t<0&&f.length>0;){f.pop();t++}for(;t>0;){f.push(NaN);t--}}}t.tooComplexToFollowFunctions=m;const S=[c];h>c.length&&S.push(new Uint8Array(h-c.length));if(d>u){(0,r.warn)("TT: complementing a missing function tail");S.push(new Uint8Array([34,45]))}!function foldTTTable(e,t){if(t.length>1){let a,r,n=0;for(a=0,r=t.length;a>>0,s=[];for(let t=0;t>>0);const o={ttcTag:t,majorVersion:a,minorVersion:n,numFonts:i,offsetTable:s};switch(a){case 1:return o;case 2:o.dsigTag=e.getInt32()>>>0;o.dsigLength=e.getInt32()>>>0;o.dsigOffset=e.getInt32()>>>0;return o}throw new r.FormatError(`Invalid TrueType Collection majorVersion: ${a}.`)}(e),i=t.split("+");let s;for(let o=0;o0||!(a.cMap instanceof p.IdentityCMap));if("OTTO"===d.version&&!t||!f.head||!f.hhea||!f.maxp||!f.post){w=new y.Stream(f["CFF "].data);b=new u.CFFFont(w,a);adjustWidths(a);return this.convert(e,b,a)}delete f.glyf;delete f.loca;delete f.fpgm;delete f.prep;delete f["cvt "];this.isOpenType=!0}if(!f.maxp)throw new r.FormatError('Required "maxp" table is not found');t.pos=(t.start||0)+f.maxp.offset;const x=t.getInt32(),C=t.getUint16();if(a.scaleFactors?.length===C&&S){const{scaleFactors:e}=a,t=int16(f.head.data[50],f.head.data[51]),r=new g.GlyfTable({glyfTable:f.glyf.data,isGlyphLocationsLong:t,locaTable:f.loca.data,numGlyphs:C});r.scale(e);const{glyf:n,loca:i,isLocationLong:s}=r.write();f.glyf.data=n;f.loca.data=i;if(s!==!!t){f.head.data[50]=0;f.head.data[51]=s?1:0}const o=f.hmtx.data;for(let t=0;t>8&255;o[a+1]=255&r;writeSignedInt16(o,a+2,Math.round(e[t]*signedInt16(o[a+2],o[a+3])))}}let k=C+1,v=!0;if(k>65535){v=!1;k=C;(0,r.warn)("Not enough space in glyfs to duplicate first glyph.")}let F=0,O=0;if(x>=65536&&f.maxp.length>=22){t.pos+=8;if(t.getUint16()>2){f.maxp.data[14]=0;f.maxp.data[15]=2}t.pos+=4;F=t.getUint16();t.pos+=4;O=t.getUint16()}f.maxp.data[4]=k>>8;f.maxp.data[5]=255&k;const T=function sanitizeTTPrograms(e,t,a,n){const i={functionsDefined:[],functionsUsed:[],functionsStackDeltas:[],tooComplexToFollowFunctions:!1,hintsValid:!0};e&&sanitizeTTProgram(e,i);t&&sanitizeTTProgram(t,i);e&&function checkInvalidFunctions(e,t){if(!e.tooComplexToFollowFunctions)if(e.functionsDefined.length>t){(0,r.warn)("TT: more functions defined than expected");e.hintsValid=!1}else for(let a=0,n=e.functionsUsed.length;at){(0,r.warn)("TT: invalid function id: "+a);e.hintsValid=!1;return}if(e.functionsUsed[a]&&!e.functionsDefined[a]){(0,r.warn)("TT: undefined function: "+a);e.hintsValid=!1;return}}}(i,n);if(a&&1&a.length){const e=new Uint8Array(a.length+1);e.set(a.data);a.data=e}return i.hintsValid}(f.fpgm,f.prep,f["cvt "],F);if(!T){delete f.fpgm;delete f.prep;delete f["cvt "]}!function sanitizeMetrics(e,t,a,n,i,s){if(!t){a&&(a.data=null);return}e.pos=(e.start||0)+t.offset;e.pos+=4;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;e.pos+=2;const o=e.getUint16();e.pos+=8;e.pos+=2;let c=e.getUint16();if(0!==o){if(!(2&int16(n.data[44],n.data[45]))){t.data[22]=0;t.data[23]=0}}if(c>i){(0,r.info)(`The numOfMetrics (${c}) should not be greater than the numGlyphs (${i}).`);c=i;t.data[34]=(65280&c)>>8;t.data[35]=255&c}const l=i-c-(a.length-4*c>>1);if(l>0){const e=new Uint8Array(a.length+2*l);e.set(a.data);if(s){e[a.length]=a.data[2];e[a.length+1]=a.data[3]}a.data=e}}(t,f.hhea,f.hmtx,f.head,k,v);if(!f.head)throw new r.FormatError('Required "head" table is not found');!function sanitizeHead(e,t,a){const n=e.data,i=function int32(e,t,a,r){return(e<<24)+(t<<16)+(a<<8)+r}(n[0],n[1],n[2],n[3]);if(i>>16!=1){(0,r.info)("Attempting to fix invalid version in head table: "+i);n[0]=0;n[1]=1;n[2]=0;n[3]=0}const s=int16(n[50],n[51]);if(s<0||s>1){(0,r.info)("Attempting to fix invalid indexToLocFormat in head table: "+s);const e=t+1;if(a===e<<1){n[50]=0;n[51]=0}else{if(a!==e<<2)throw new r.FormatError("Could not fix indexToLocFormat: "+s);n[50]=0;n[51]=1}}}(f.head,C,S?f.loca.length:0);let M=Object.create(null);if(S){const e=int16(f.head.data[50],f.head.data[51]),t=function sanitizeGlyphLocations(e,t,a,r,n,i,s){let o,c,l;if(r){o=4;c=function fontItemDecodeLong(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]};l=function fontItemEncodeLong(e,t,a){e[t]=a>>>24&255;e[t+1]=a>>16&255;e[t+2]=a>>8&255;e[t+3]=255&a}}else{o=2;c=function fontItemDecode(e,t){return e[t]<<9|e[t+1]<<1};l=function fontItemEncode(e,t,a){e[t]=a>>9&255;e[t+1]=a>>1&255}}const h=i?a+1:a,u=o*(1+h),d=new Uint8Array(u);d.set(e.data.subarray(0,u));e.data=d;const f=t.data,g=f.length,p=new Uint8Array(g);let m,b;const y=[];for(m=0,b=0;mg&&(e=g);y.push({index:m,offset:e,endOffset:0})}y.sort(((e,t)=>e.offset-t.offset));for(m=0;me.index-t.index));for(m=0;ms&&(s=e.sizeOfInstructions);S+=t;l(d,b,S)}if(0===S){const e=new Uint8Array([0,1,0,0,0,0,0,0,0,0,0,0,0,0,49,0]);for(m=0,b=o;ma+S)t.data=p.subarray(0,a+S);else{t.data=new Uint8Array(a+S);t.data.set(p.subarray(0,S))}t.data.set(p.subarray(0,a),S);l(e.data,d.length-o,S+a)}else t.data=p.subarray(0,S);return{missingGlyphs:w,maxSizeOfInstructions:s}}(f.loca,f.glyf,C,e,T,v,O);M=t.missingGlyphs;if(x>=65536&&f.maxp.length>=22){f.maxp.data[26]=t.maxSizeOfInstructions>>8;f.maxp.data[27]=255&t.maxSizeOfInstructions}}if(!f.hhea)throw new r.FormatError('Required "hhea" table is not found');if(0===f.hhea.data[10]&&0===f.hhea.data[11]){f.hhea.data[10]=255;f.hhea.data[11]=255}const D={unitsPerEm:int16(f.head.data[18],f.head.data[19]),yMax:signedInt16(f.head.data[42],f.head.data[43]),yMin:signedInt16(f.head.data[38],f.head.data[39]),ascent:signedInt16(f.hhea.data[4],f.hhea.data[5]),descent:signedInt16(f.hhea.data[6],f.hhea.data[7]),lineGap:signedInt16(f.hhea.data[8],f.hhea.data[9])};this.ascent=D.ascent/D.unitsPerEm;this.descent=D.descent/D.unitsPerEm;this.lineGap=D.lineGap/D.unitsPerEm;if(this.cssFontInfo?.lineHeight){this.lineHeight=this.cssFontInfo.metrics.lineHeight;this.lineGap=this.cssFontInfo.metrics.lineGap}else this.lineHeight=this.ascent-this.descent+this.lineGap;f.post&&function readPostScriptTable(e,a,n){const s=(t.start||0)+e.offset;t.pos=s;const o=s+e.length,c=t.getInt32();t.skip(28);let l,h,u=!0;switch(c){case 65536:l=i.MacStandardGlyphOrdering;break;case 131072:const e=t.getUint16();if(e!==n){u=!1;break}const s=[];for(h=0;h=32768){u=!1;break}s.push(e)}if(!u)break;const d=[],f=[];for(;t.pos65535)throw new r.FormatError("Max size of CID is 65,535");let i=-1;t?i=n:void 0!==e[n]&&(i=e[n]);i>=0&&i>>0;let h=!1;if(c?.platformId!==r||c?.encodingId!==i){if(0!==r||0!==i&&1!==i&&3!==i)if(1===r&&0===i)h=!0;else if(3!==r||1!==i||!n&&c){if(a&&3===r&&0===i){h=!0;let a=!0;if(e>3;e.push(r);a=Math.max(r,a)}const r=[];for(let e=0;e<=a;e++)r.push({firstCode:t.getUint16(),entryCount:t.getUint16(),idDelta:signedInt16(t.getByte(),t.getByte()),idRangePos:t.pos+t.getUint16()});for(let a=0;a<256;a++)if(0===e[a]){t.pos=r[0].idRangePos+2*a;g=t.getUint16();d.push({charCode:a,glyphId:g})}else{const n=r[e[a]];for(f=0;f>1;t.skip(6);const a=[];let r;for(r=0;r>1)-(e-r);i.offsetIndex=n;o=Math.max(o,n+i.end-i.start+1)}else i.offsetIndex=-1}const c=[];for(f=0;f>>0;for(f=0;f>>0,a=t.getInt32()>>>0;let r=t.getInt32()>>>0;for(let t=e;t<=a;t++)d.push({charCode:t,glyphId:r++})}}}d.sort((function(e,t){return e.charCode-t.charCode}));for(let e=1;e=61440&&t<=61695&&(t&=255);E[t]=e.glyphId}if(a.glyphNames&&(u.length||this.differences.length))for(let e=0;e<256;++e){if(!d&&void 0!==E[e])continue;const t=this.differences[e]||u[e];if(!t)continue;const r=a.glyphNames.indexOf(t);r>0&&hasGlyph(r)&&(E[e]=r)}}0===E.length&&(E[0]=0);let N=k-1;v||(N=0);if(!a.cssFontInfo){const e=adjustMapping(E,hasGlyph,N,this.toUnicode);this.toFontChar=e.toFontChar;f.cmap={tag:"cmap",data:createCmapTable(e.charCodeToGlyphId,e.toUnicodeExtraMap,k)};f["OS/2"]&&function validateOS2Table(e,t){t.pos=(t.start||0)+e.offset;const a=t.getUint16();t.skip(60);const r=t.getUint16();if(a<4&&768&r)return!1;if(t.getUint16()>t.getUint16())return!1;t.skip(6);if(0===t.getUint16())return!1;e.data[8]=e.data[9]=0;return!0}(f["OS/2"],t)||(f["OS/2"]={tag:"OS/2",data:createOS2Table(a,e.charCodeToGlyphId,D)})}if(!S)try{w=new y.Stream(f["CFF "].data);b=new n.CFFParser(w,a,i.SEAC_ANALYSIS_ENABLED).parse();b.duplicateFirstGlyph();const e=new n.CFFCompiler(b);f["CFF "].data=e.compile()}catch{(0,r.warn)("Failed to compile font "+a.loadedName)}if(f.name){const[t,r]=readNameTable(f.name);f.name.data=createNameTable(e,t);this.psName=t[0][6]||null;a.composite||function adjustTrueTypeToUnicode(e,t,a){if(e.isInternalFont)return;if(e.hasIncludedToUnicodeMap)return;if(e.hasEncoding)return;if(e.toUnicode instanceof h.IdentityToUnicodeMap)return;if(!t)return;if(0===a.length)return;if(e.defaultEncoding===c.WinAnsiEncoding)return;for(const e of a)if(!isWinNameRecord(e))return;const r=c.WinAnsiEncoding,n=[],i=(0,o.getGlyphsUnicode)();for(const e in r){const t=r[e];if(""===t)continue;const a=i[t];void 0!==a&&(n[e]=String.fromCharCode(a))}n.length>0&&e.toUnicode.amend(n)}(a,this.isSymbolicFont,r)}else f.name={tag:"name",data:createNameTable(this.name)};const R=new m.OpenTypeFileBuilder(d.version);for(const e in f)R.addTable(e,f[e].data);return R.toArray()}convert(e,t,a){a.fixedPitch=!1;a.builtInEncoding&&function adjustType1ToUnicode(e,t){if(e.isInternalFont)return;if(e.hasIncludedToUnicodeMap)return;if(t===e.defaultEncoding)return;if(e.toUnicode instanceof h.IdentityToUnicodeMap)return;const a=[],r=(0,o.getGlyphsUnicode)();for(const n in t){if(e.hasEncoding&&(e.baseEncodingName||void 0!==e.differences[n]))continue;const i=t[n],o=(0,s.getUnicodeForGlyph)(i,r);-1!==o&&(a[n]=String.fromCharCode(o))}a.length>0&&e.toUnicode.amend(a)}(a,a.builtInEncoding);let n=1;t instanceof u.CFFFont&&(n=t.numGlyphs-1);const l=t.getGlyphMapping(a);let d=null,f=l,g=null;if(!a.cssFontInfo){d=adjustMapping(l,t.hasGlyphId.bind(t),n,this.toUnicode);this.toFontChar=d.toFontChar;f=d.charCodeToGlyphId;g=d.toUnicodeExtraMap}const p=t.numGlyphs;function getCharCodes(e,t){let a=null;for(const r in e)t===e[r]&&(a||=[]).push(0|r);return a}function createCharCode(e,t){for(const a in e)if(t===e[a])return 0|a;d.charCodeToGlyphId[d.nextAvailableFontCharCode]=t;return d.nextAvailableFontCharCode++}const b=t.seacs;if(d&&i.SEAC_ANALYSIS_ENABLED&&b?.length){const e=a.fontMatrix||r.FONT_IDENTITY_MATRIX,n=t.getCharset(),i=Object.create(null);for(let t in b){t|=0;const a=b[t],r=c.StandardEncoding[a[2]],s=c.StandardEncoding[a[3]],o=n.indexOf(r),h=n.indexOf(s);if(o<0||h<0)continue;const u={x:a[0]*e[0]+a[1]*e[2]+e[4],y:a[0]*e[1]+a[1]*e[3]+e[5]},f=getCharCodes(l,t);if(f)for(const e of f){const t=d.charCodeToGlyphId,a=createCharCode(t,o),r=createCharCode(t,h);i[e]={baseFontCharCode:a,accentFontCharCode:r,accentOffset:u}}}a.seacMap=i}const y=1/(a.fontMatrix||r.FONT_IDENTITY_MATRIX)[0],w=new m.OpenTypeFileBuilder("OTTO");w.addTable("CFF ",t.data);w.addTable("OS/2",createOS2Table(a,f));w.addTable("cmap",createCmapTable(f,g,p));w.addTable("head","\0\0\0\0\0\0\0\0\0\0_<õ\0\0"+safeString16(y)+"\0\0\0\0ž\v~'\0\0\0\0ž\v~'\0\0"+safeString16(a.descent)+"ÿ"+safeString16(a.ascent)+string16(a.italicAngle?2:0)+"\0\0\0\0\0\0\0");w.addTable("hhea","\0\0\0"+safeString16(a.ascent)+safeString16(a.descent)+"\0\0ÿÿ\0\0\0\0\0\0"+safeString16(a.capHeight)+safeString16(Math.tan(a.italicAngle)*a.xHeight)+"\0\0\0\0\0\0\0\0\0\0\0\0"+string16(p));w.addTable("hmtx",function fontFieldsHmtx(){const e=t.charstrings,a=t.cff?t.cff.widths:null;let r="\0\0\0\0";for(let t=1,n=p;tt.length%2==1,r=this.toUnicode instanceof h.IdentityToUnicodeMap?e=>this.toUnicode.charCodeOf(e):e=>this.toUnicode.charCodeOf(String.fromCodePoint(e));for(let n=0,i=e.length;n55295&&(i<57344||i>65533)&&n++;if(this.toUnicode){const e=r(i);if(-1!==e){if(hasCurrentBufErrors()){t.push(a.join(""));a.length=0}for(let t=(this.cMap?this.cMap.getCharCodeLength(e):1)-1;t>=0;t--)a.push(String.fromCharCode(e>>8*t&255));continue}}if(!hasCurrentBufErrors()){t.push(a.join(""));a.length=0}a.push(String.fromCodePoint(i))}t.push(a.join(""));return t}};t.ErrorFont=class ErrorFont{constructor(e){this.error=e;this.loadedName="g_font_error";this.missingFile=!0}charsToGlyphs(){return[]}encodeString(e){return[e]}exportData(e=!1){return{error:this.error}}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CFFTopDict=t.CFFStrings=t.CFFStandardStrings=t.CFFPrivateDict=t.CFFParser=t.CFFIndex=t.CFFHeader=t.CFFFDSelect=t.CFFCompiler=t.CFFCharset=t.CFF=void 0;var r=a(2),n=a(36),i=a(37);const s=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"];t.CFFStandardStrings=s;const o=391,c=[null,{id:"hstem",min:2,stackClearing:!0,stem:!0},null,{id:"vstem",min:2,stackClearing:!0,stem:!0},{id:"vmoveto",min:1,stackClearing:!0},{id:"rlineto",min:2,resetStack:!0},{id:"hlineto",min:1,resetStack:!0},{id:"vlineto",min:1,resetStack:!0},{id:"rrcurveto",min:6,resetStack:!0},null,{id:"callsubr",min:1,undefStack:!0},{id:"return",min:0,undefStack:!0},null,null,{id:"endchar",min:0,stackClearing:!0},null,null,null,{id:"hstemhm",min:2,stackClearing:!0,stem:!0},{id:"hintmask",min:0,stackClearing:!0},{id:"cntrmask",min:0,stackClearing:!0},{id:"rmoveto",min:2,stackClearing:!0},{id:"hmoveto",min:1,stackClearing:!0},{id:"vstemhm",min:2,stackClearing:!0,stem:!0},{id:"rcurveline",min:8,resetStack:!0},{id:"rlinecurve",min:8,resetStack:!0},{id:"vvcurveto",min:4,resetStack:!0},{id:"hhcurveto",min:4,resetStack:!0},null,{id:"callgsubr",min:1,undefStack:!0},{id:"vhcurveto",min:4,resetStack:!0},{id:"hvcurveto",min:4,resetStack:!0}],l=[null,null,null,{id:"and",min:2,stackDelta:-1},{id:"or",min:2,stackDelta:-1},{id:"not",min:1,stackDelta:0},null,null,null,{id:"abs",min:1,stackDelta:0},{id:"add",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]+e[t-1]}},{id:"sub",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]-e[t-1]}},{id:"div",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]/e[t-1]}},null,{id:"neg",min:1,stackDelta:0,stackFn(e,t){e[t-1]=-e[t-1]}},{id:"eq",min:2,stackDelta:-1},null,null,{id:"drop",min:1,stackDelta:-1},null,{id:"put",min:2,stackDelta:-2},{id:"get",min:1,stackDelta:0},{id:"ifelse",min:4,stackDelta:-3},{id:"random",min:0,stackDelta:1},{id:"mul",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]*e[t-1]}},null,{id:"sqrt",min:1,stackDelta:0},{id:"dup",min:1,stackDelta:1},{id:"exch",min:2,stackDelta:0},{id:"index",min:2,stackDelta:0},{id:"roll",min:3,stackDelta:-2},null,null,null,{id:"hflex",min:7,resetStack:!0},{id:"flex",min:13,resetStack:!0},{id:"hflex1",min:9,resetStack:!0},{id:"flex1",min:11,resetStack:!0}];t.CFFParser=class CFFParser{constructor(e,t,a){this.bytes=e.getBytes();this.properties=t;this.seacAnalysisEnabled=!!a}parse(){const e=this.properties,t=new CFF;this.cff=t;const a=this.parseHeader(),r=this.parseIndex(a.endPos),n=this.parseIndex(r.endPos),i=this.parseIndex(n.endPos),s=this.parseIndex(i.endPos),o=this.parseDict(n.obj.get(0)),c=this.createDict(CFFTopDict,o,t.strings);t.header=a.obj;t.names=this.parseNameIndex(r.obj);t.strings=this.parseStringIndex(i.obj);t.topDict=c;t.globalSubrIndex=s.obj;this.parsePrivateDict(t.topDict);t.isCIDFont=c.hasName("ROS");const l=c.getByName("CharStrings"),h=this.parseIndex(l).obj,u=c.getByName("FontMatrix");u&&(e.fontMatrix=u);const d=c.getByName("FontBBox");if(d){e.ascent=Math.max(d[3],d[1]);e.descent=Math.min(d[1],d[3]);e.ascentScaled=!0}let f,g;if(t.isCIDFont){const e=this.parseIndex(c.getByName("FDArray")).obj;for(let a=0,r=e.count;a=t)throw new r.FormatError("Invalid CFF header");if(0!==a){(0,r.info)("cff data is shifted");e=e.subarray(a);this.bytes=e}const n=e[0],i=e[1],s=e[2],o=e[3];return{obj:new CFFHeader(n,i,s,o),endPos:s}}parseDict(e){let t=0;function parseOperand(){let a=e[t++];if(30===a)return function parseFloatOperand(){let a="";const r=15,n=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"],i=e.length;for(;t>4,o=15&i;if(s===r)break;a+=n[s];if(o===r)break;a+=n[o]}return parseFloat(a)}();if(28===a){a=e[t++];a=(a<<24|e[t++]<<16)>>16;return a}if(29===a){a=e[t++];a=a<<8|e[t++];a=a<<8|e[t++];a=a<<8|e[t++];return a}if(a>=32&&a<=246)return a-139;if(a>=247&&a<=250)return 256*(a-247)+e[t++]+108;if(a>=251&&a<=254)return-256*(a-251)-e[t++]-108;(0,r.warn)('CFFParser_parseDict: "'+a+'" is a reserved command.');return NaN}let a=[];const n=[];t=0;const i=e.length;for(;t10)return!1;let i=e.stackSize;const s=e.stack;let o=t.length;for(let h=0;h>16;h+=2;i++}else if(14===u){if(i>=4){i-=4;if(this.seacAnalysisEnabled){e.seac=s.slice(i,i+4);return!1}}d=c[u]}else if(u>=32&&u<=246){s[i]=u-139;i++}else if(u>=247&&u<=254){s[i]=u<251?(u-247<<8)+t[h]+108:-(u-251<<8)-t[h]-108;h++;i++}else if(255===u){s[i]=(t[h]<<24|t[h+1]<<16|t[h+2]<<8|t[h+3])/65536;h+=4;i++}else if(19===u||20===u){e.hints+=i>>1;if(0===e.hints){t.copyWithin(h-1,h,-1);h-=1;o-=1;continue}h+=e.hints+7>>3;i%=2;d=c[u]}else{if(10===u||29===u){const t=10===u?a:n;if(!t){d=c[u];(0,r.warn)("Missing subrsIndex for "+d.id);return!1}let o=32768;t.count<1240?o=107:t.count<33900&&(o=1131);const l=s[--i]+o;if(l<0||l>=t.count||isNaN(l)){d=c[u];(0,r.warn)("Out of bounds subrIndex for "+d.id);return!1}e.stackSize=i;e.callDepth++;if(!this.parseCharString(e,t.get(l),a,n))return!1;e.callDepth--;i=e.stackSize;continue}if(11===u){e.stackSize=i;return!0}if(0===u&&h===t.length){t[h-1]=14;d=c[14]}else{if(9===u){t.copyWithin(h-1,h,-1);h-=1;o-=1;continue}d=c[u]}}if(d){if(d.stem){e.hints+=i>>1;if(3===u||23===u)e.hasVStems=!0;else if(e.hasVStems&&(1===u||18===u)){(0,r.warn)("CFF stem hints are in wrong order");t[h-1]=1===u?3:23}}if("min"in d&&!e.undefStack&&i=2&&d.stem?i%=2:i>1&&(0,r.warn)("Found too many parameters for stack-clearing command");i>0&&(e.width=s[i-1])}if("stackDelta"in d){"stackFn"in d&&d.stackFn(s,i);i+=d.stackDelta}else if(d.stackClearing)i=0;else if(d.resetStack){i=0;e.undefStack=!1}else if(d.undefStack){i=0;e.undefStack=!0;e.firstStackClearing=!1}}}o=i.length){(0,r.warn)("Invalid fd index for glyph index.");d=!1}if(d){g=i[e].privateDict;f=g.subrsIndex}}else t&&(f=t);d&&(d=this.parseCharString(u,l,f,a));if(null!==u.width){const e=g.getByName("nominalWidthX");c[h]=e+u.width}else{const e=g.getByName("defaultWidthX");c[h]=e}null!==u.seac&&(o[h]=u.seac);d||e.set(h,new Uint8Array([14]))}return{charStrings:e,seacs:o,widths:c}}emptyPrivateDictionary(e){const t=this.createDict(CFFPrivateDict,[],e.strings);e.setByKey(18,[0,0]);e.privateDict=t}parsePrivateDict(e){if(!e.hasName("Private")){this.emptyPrivateDictionary(e);return}const t=e.getByName("Private");if(!Array.isArray(t)||2!==t.length){e.removeByName("Private");return}const a=t[0],r=t[1];if(0===a||r>=this.bytes.length){this.emptyPrivateDictionary(e);return}const n=r+a,i=this.bytes.subarray(r,n),s=this.parseDict(i),o=this.createDict(CFFPrivateDict,s,e.strings);e.privateDict=o;0===o.getByName("ExpansionFactor")&&o.setByName("ExpansionFactor",.06);if(!o.getByName("Subrs"))return;const c=o.getByName("Subrs"),l=r+c;if(0===c||l>=this.bytes.length){this.emptyPrivateDictionary(e);return}const h=this.parseIndex(l);o.subrsIndex=h.obj}parseCharsets(e,t,a,i){if(0===e)return new CFFCharset(!0,d.ISO_ADOBE,n.ISOAdobeCharset);if(1===e)return new CFFCharset(!0,d.EXPERT,n.ExpertCharset);if(2===e)return new CFFCharset(!0,d.EXPERT_SUBSET,n.ExpertSubsetCharset);const s=this.bytes,o=e,c=s[e++],l=[i?0:".notdef"];let h,u,f;t-=1;switch(c){case 0:for(f=0;f=65535){(0,r.warn)("Not enough space in charstrings to duplicate first glyph.");return}const e=this.charStrings.get(0);this.charStrings.add(e);this.isCIDFont&&this.fdSelect.fdSelect.push(this.fdSelect.fdSelect[0])}hasGlyphId(e){if(e<0||e>=this.charStrings.count)return!1;return this.charStrings.get(e).length>0}}t.CFF=CFF;class CFFHeader{constructor(e,t,a,r){this.major=e;this.minor=t;this.hdrSize=a;this.offSize=r}}t.CFFHeader=CFFHeader;class CFFStrings{constructor(){this.strings=[]}get(e){return e>=0&&e<=390?s[e]:e-o<=this.strings.length?this.strings[e-o]:s[0]}getSID(e){let t=s.indexOf(e);if(-1!==t)return t;t=this.strings.indexOf(e);return-1!==t?t+o:-1}add(e){this.strings.push(e)}get count(){return this.strings.length}}t.CFFStrings=CFFStrings;class CFFIndex{constructor(){this.objects=[];this.length=0}add(e){this.length+=e.length;this.objects.push(e)}set(e,t){this.length+=t.length-this.objects[e].length;this.objects[e]=t}get(e){return this.objects[e]}get count(){return this.objects.length}}t.CFFIndex=CFFIndex;class CFFDict{constructor(e,t){this.keyToNameMap=e.keyToNameMap;this.nameToKeyMap=e.nameToKeyMap;this.defaults=e.defaults;this.types=e.types;this.opcodes=e.opcodes;this.order=e.order;this.strings=t;this.values=Object.create(null)}setByKey(e,t){if(!(e in this.keyToNameMap))return!1;if(0===t.length)return!0;for(const a of t)if(isNaN(a)){(0,r.warn)(`Invalid CFFDict value: "${t}" for key "${e}".`);return!0}const a=this.types[e];"num"!==a&&"sid"!==a&&"offset"!==a||(t=t[0]);this.values[e]=t;return!0}setByName(e,t){if(!(e in this.nameToKeyMap))throw new r.FormatError(`Invalid dictionary name "${e}"`);this.values[this.nameToKeyMap[e]]=t}hasName(e){return this.nameToKeyMap[e]in this.values}getByName(e){if(!(e in this.nameToKeyMap))throw new r.FormatError(`Invalid dictionary name ${e}"`);const t=this.nameToKeyMap[e];return t in this.values?this.values[t]:this.defaults[t]}removeByName(e){delete this.values[this.nameToKeyMap[e]]}static createTables(e){const t={keyToNameMap:{},nameToKeyMap:{},defaults:{},types:{},opcodes:{},order:[]};for(const a of e){const e=Array.isArray(a[0])?(a[0][0]<<8)+a[0][1]:a[0];t.keyToNameMap[e]=a[1];t.nameToKeyMap[a[1]]=e;t.types[e]=a[2];t.defaults[e]=a[3];t.opcodes[e]=Array.isArray(a[0])?a[0]:[a[0]];t.order.push(e)}return t}}const h=[[[12,30],"ROS",["sid","sid","num"],null],[[12,20],"SyntheticBase","num",null],[0,"version","sid",null],[1,"Notice","sid",null],[[12,0],"Copyright","sid",null],[2,"FullName","sid",null],[3,"FamilyName","sid",null],[4,"Weight","sid",null],[[12,1],"isFixedPitch","num",0],[[12,2],"ItalicAngle","num",0],[[12,3],"UnderlinePosition","num",-100],[[12,4],"UnderlineThickness","num",50],[[12,5],"PaintType","num",0],[[12,6],"CharstringType","num",2],[[12,7],"FontMatrix",["num","num","num","num","num","num"],[.001,0,0,.001,0,0]],[13,"UniqueID","num",null],[5,"FontBBox",["num","num","num","num"],[0,0,0,0]],[[12,8],"StrokeWidth","num",0],[14,"XUID","array",null],[15,"charset","offset",0],[16,"Encoding","offset",0],[17,"CharStrings","offset",0],[18,"Private",["offset","offset"],null],[[12,21],"PostScript","sid",null],[[12,22],"BaseFontName","sid",null],[[12,23],"BaseFontBlend","delta",null],[[12,31],"CIDFontVersion","num",0],[[12,32],"CIDFontRevision","num",0],[[12,33],"CIDFontType","num",0],[[12,34],"CIDCount","num",8720],[[12,35],"UIDBase","num",null],[[12,37],"FDSelect","offset",null],[[12,36],"FDArray","offset",null],[[12,38],"FontName","sid",null]];class CFFTopDict extends CFFDict{static get tables(){return(0,r.shadow)(this,"tables",this.createTables(h))}constructor(e){super(CFFTopDict.tables,e);this.privateDict=null}}t.CFFTopDict=CFFTopDict;const u=[[6,"BlueValues","delta",null],[7,"OtherBlues","delta",null],[8,"FamilyBlues","delta",null],[9,"FamilyOtherBlues","delta",null],[[12,9],"BlueScale","num",.039625],[[12,10],"BlueShift","num",7],[[12,11],"BlueFuzz","num",1],[10,"StdHW","num",null],[11,"StdVW","num",null],[[12,12],"StemSnapH","delta",null],[[12,13],"StemSnapV","delta",null],[[12,14],"ForceBold","num",0],[[12,17],"LanguageGroup","num",0],[[12,18],"ExpansionFactor","num",.06],[[12,19],"initialRandomSeed","num",0],[20,"defaultWidthX","num",0],[21,"nominalWidthX","num",0],[19,"Subrs","offset",null]];class CFFPrivateDict extends CFFDict{static get tables(){return(0,r.shadow)(this,"tables",this.createTables(u))}constructor(e){super(CFFPrivateDict.tables,e);this.subrsIndex=null}}t.CFFPrivateDict=CFFPrivateDict;const d={ISO_ADOBE:0,EXPERT:1,EXPERT_SUBSET:2};class CFFCharset{constructor(e,t,a,r){this.predefined=e;this.format=t;this.charset=a;this.raw=r}}t.CFFCharset=CFFCharset;class CFFEncoding{constructor(e,t,a,r){this.predefined=e;this.format=t;this.encoding=a;this.raw=r}}class CFFFDSelect{constructor(e,t){this.format=e;this.fdSelect=t}getFDIndex(e){return e<0||e>=this.fdSelect.length?-1:this.fdSelect[e]}}t.CFFFDSelect=CFFFDSelect;class CFFOffsetTracker{constructor(){this.offsets=Object.create(null)}isTracking(e){return e in this.offsets}track(e,t){if(e in this.offsets)throw new r.FormatError(`Already tracking location of ${e}`);this.offsets[e]=t}offset(e){for(const t in this.offsets)this.offsets[t]+=e}setEntryLocation(e,t,a){if(!(e in this.offsets))throw new r.FormatError(`Not tracking location of ${e}`);const n=a.data,i=this.offsets[e];for(let e=0,a=t.length;e>24&255;n[o]=h>>16&255;n[c]=h>>8&255;n[l]=255&h}}}class CFFCompiler{constructor(e){this.cff=e}compile(){const e=this.cff,t={data:[],length:0,add(e){try{this.data.push(...e)}catch{this.data=this.data.concat(e)}this.length=this.data.length}},a=this.compileHeader(e.header);t.add(a);const n=this.compileNameIndex(e.names);t.add(n);if(e.isCIDFont&&e.topDict.hasName("FontMatrix")){const t=e.topDict.getByName("FontMatrix");e.topDict.removeByName("FontMatrix");for(const a of e.fdArray){let e=t.slice(0);a.hasName("FontMatrix")&&(e=r.Util.transform(e,a.getByName("FontMatrix")));a.setByName("FontMatrix",e)}}const i=e.topDict.getByName("XUID");i?.length>16&&e.topDict.removeByName("XUID");e.topDict.setByName("charset",0);let s=this.compileTopDicts([e.topDict],t.length,e.isCIDFont);t.add(s.output);const o=s.trackers[0],c=this.compileStringIndex(e.strings.strings);t.add(c);const l=this.compileIndex(e.globalSubrIndex);t.add(l);if(e.encoding&&e.topDict.hasName("Encoding"))if(e.encoding.predefined)o.setEntryLocation("Encoding",[e.encoding.format],t);else{const a=this.compileEncoding(e.encoding);o.setEntryLocation("Encoding",[t.length],t);t.add(a)}const h=this.compileCharset(e.charset,e.charStrings.count,e.strings,e.isCIDFont);o.setEntryLocation("charset",[t.length],t);t.add(h);const u=this.compileCharStrings(e.charStrings);o.setEntryLocation("CharStrings",[t.length],t);t.add(u);if(e.isCIDFont){o.setEntryLocation("FDSelect",[t.length],t);const a=this.compileFDSelect(e.fdSelect);t.add(a);s=this.compileTopDicts(e.fdArray,t.length,!0);o.setEntryLocation("FDArray",[t.length],t);t.add(s.output);const r=s.trackers;this.compilePrivateDicts(e.fdArray,r,t)}this.compilePrivateDicts([e.topDict],[o],t);t.add([0]);return t.data}encodeNumber(e){return Number.isInteger(e)?this.encodeInteger(e):this.encodeFloat(e)}static get EncodeFloatRegExp(){return(0,r.shadow)(this,"EncodeFloatRegExp",/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/)}encodeFloat(e){let t=e.toString();const a=CFFCompiler.EncodeFloatRegExp.exec(t);if(a){const r=parseFloat("1e"+((a[2]?+a[2]:0)+a[1].length));t=(Math.round(e*r)/r).toString()}let r,n,i="";for(r=0,n=t.length;r=-107&&e<=107?[e+139]:e>=108&&e<=1131?[247+((e-=108)>>8),255&e]:e>=-1131&&e<=-108?[251+((e=-e-108)>>8),255&e]:e>=-32768&&e<=32767?[28,e>>8&255,255&e]:[29,e>>24&255,e>>16&255,e>>8&255,255&e];return t}compileHeader(e){return[e.major,e.minor,4,e.offSize]}compileNameIndex(e){const t=new CFFIndex;for(const a of e){const e=Math.min(a.length,127);let n=new Array(e);for(let t=0;t"~"||"["===e||"]"===e||"("===e||")"===e||"{"===e||"}"===e||"<"===e||">"===e||"/"===e||"%"===e)&&(e="_");n[t]=e}n=n.join("");""===n&&(n="Bad_Font_Name");t.add((0,r.stringToBytes)(n))}return this.compileIndex(t)}compileTopDicts(e,t,a){const r=[];let n=new CFFIndex;for(const i of e){if(a){i.removeByName("CIDFontVersion");i.removeByName("CIDFontRevision");i.removeByName("CIDFontType");i.removeByName("CIDCount");i.removeByName("UIDBase")}const e=new CFFOffsetTracker,s=this.compileDict(i,e);r.push(e);n.add(s);e.offset(t)}n=this.compileIndex(n,r);return{trackers:r,output:n}}compilePrivateDicts(e,t,a){for(let n=0,i=e.length;n>8&255,255&s]);else{i=new Uint8Array(1+2*s);i[0]=0;let t=0;const n=e.charset.length;let o=!1;for(let s=1;s>8&255;i[s+1]=255&c}}return this.compileTypedArray(i)}compileEncoding(e){return this.compileTypedArray(e.raw)}compileFDSelect(e){const t=e.format;let a,r;switch(t){case 0:a=new Uint8Array(1+e.fdSelect.length);a[0]=t;for(r=0;r>8&255,255&n,i];for(r=1;r>8&255,255&r,t);i=t}}const o=(s.length-3)/3;s[1]=o>>8&255;s[2]=255&o;s.push(r>>8&255,255&r);a=new Uint8Array(s)}return this.compileTypedArray(a)}compileTypedArray(e){return Array.from(e)}compileIndex(e,t=[]){const a=e.objects,r=a.length;if(0===r)return[0,0];const n=[r>>8&255,255&r];let i,s,o=1;for(i=0;i>8&255,255&c):3===s?n.push(c>>16&255,c>>8&255,255&c):n.push(c>>>24&255,c>>16&255,c>>8&255,255&c);a[i]&&(c+=a[i].length)}for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0});t.ISOAdobeCharset=t.ExpertSubsetCharset=t.ExpertCharset=void 0;t.ISOAdobeCharset=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"];t.ExpertCharset=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"];t.ExpertSubsetCharset=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"]},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ZapfDingbatsEncoding=t.WinAnsiEncoding=t.SymbolSetEncoding=t.StandardEncoding=t.MacRomanEncoding=t.ExpertEncoding=void 0;t.getEncoding=function getEncoding(e){switch(e){case"WinAnsiEncoding":return s;case"StandardEncoding":return i;case"MacRomanEncoding":return n;case"SymbolSetEncoding":return o;case"ZapfDingbatsEncoding":return c;case"ExpertEncoding":return a;case"MacExpertEncoding":return r;default:return null}};const a=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"];t.ExpertEncoding=a;const r=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","centoldstyle","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","","threequartersemdash","","questionsmall","","","","","Ethsmall","","","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","","","","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hypheninferior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","asuperior","centsuperior","","","","","Aacutesmall","Agravesmall","Acircumflexsmall","Adieresissmall","Atildesmall","Aringsmall","Ccedillasmall","Eacutesmall","Egravesmall","Ecircumflexsmall","Edieresissmall","Iacutesmall","Igravesmall","Icircumflexsmall","Idieresissmall","Ntildesmall","Oacutesmall","Ogravesmall","Ocircumflexsmall","Odieresissmall","Otildesmall","Uacutesmall","Ugravesmall","Ucircumflexsmall","Udieresissmall","","eightsuperior","fourinferior","threeinferior","sixinferior","eightinferior","seveninferior","Scaronsmall","","centinferior","twoinferior","","Dieresissmall","","Caronsmall","osuperior","fiveinferior","","commainferior","periodinferior","Yacutesmall","","dollarinferior","","","Thornsmall","","nineinferior","zeroinferior","Zcaronsmall","AEsmall","Oslashsmall","questiondownsmall","oneinferior","Lslashsmall","","","","","","","Cedillasmall","","","","","","OEsmall","figuredash","hyphensuperior","","","","","exclamdownsmall","","Ydieresissmall","","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","ninesuperior","zerosuperior","","esuperior","rsuperior","tsuperior","","","isuperior","ssuperior","dsuperior","","","","","","lsuperior","Ogoneksmall","Brevesmall","Macronsmall","bsuperior","nsuperior","msuperior","commasuperior","periodsuperior","Dotaccentsmall","Ringsmall","","","",""],n=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","space","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron"];t.MacRomanEncoding=n;const i=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls","","","",""];t.StandardEncoding=i;const s=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","bullet","Euro","bullet","quotesinglbase","florin","quotedblbase","ellipsis","dagger","daggerdbl","circumflex","perthousand","Scaron","guilsinglleft","OE","bullet","Zcaron","bullet","bullet","quoteleft","quoteright","quotedblleft","quotedblright","bullet","endash","emdash","tilde","trademark","scaron","guilsinglright","oe","bullet","zcaron","Ydieresis","space","exclamdown","cent","sterling","currency","yen","brokenbar","section","dieresis","copyright","ordfeminine","guillemotleft","logicalnot","hyphen","registered","macron","degree","plusminus","twosuperior","threesuperior","acute","mu","paragraph","periodcentered","cedilla","onesuperior","ordmasculine","guillemotright","onequarter","onehalf","threequarters","questiondown","Agrave","Aacute","Acircumflex","Atilde","Adieresis","Aring","AE","Ccedilla","Egrave","Eacute","Ecircumflex","Edieresis","Igrave","Iacute","Icircumflex","Idieresis","Eth","Ntilde","Ograve","Oacute","Ocircumflex","Otilde","Odieresis","multiply","Oslash","Ugrave","Uacute","Ucircumflex","Udieresis","Yacute","Thorn","germandbls","agrave","aacute","acircumflex","atilde","adieresis","aring","ae","ccedilla","egrave","eacute","ecircumflex","edieresis","igrave","iacute","icircumflex","idieresis","eth","ntilde","ograve","oacute","ocircumflex","otilde","odieresis","divide","oslash","ugrave","uacute","ucircumflex","udieresis","yacute","thorn","ydieresis"];t.WinAnsiEncoding=s;const o=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","universal","numbersign","existential","percent","ampersand","suchthat","parenleft","parenright","asteriskmath","plus","comma","minus","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","congruent","Alpha","Beta","Chi","Delta","Epsilon","Phi","Gamma","Eta","Iota","theta1","Kappa","Lambda","Mu","Nu","Omicron","Pi","Theta","Rho","Sigma","Tau","Upsilon","sigma1","Omega","Xi","Psi","Zeta","bracketleft","therefore","bracketright","perpendicular","underscore","radicalex","alpha","beta","chi","delta","epsilon","phi","gamma","eta","iota","phi1","kappa","lambda","mu","nu","omicron","pi","theta","rho","sigma","tau","upsilon","omega1","omega","xi","psi","zeta","braceleft","bar","braceright","similar","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Euro","Upsilon1","minute","lessequal","fraction","infinity","florin","club","diamond","heart","spade","arrowboth","arrowleft","arrowup","arrowright","arrowdown","degree","plusminus","second","greaterequal","multiply","proportional","partialdiff","bullet","divide","notequal","equivalence","approxequal","ellipsis","arrowvertex","arrowhorizex","carriagereturn","aleph","Ifraktur","Rfraktur","weierstrass","circlemultiply","circleplus","emptyset","intersection","union","propersuperset","reflexsuperset","notsubset","propersubset","reflexsubset","element","notelement","angle","gradient","registerserif","copyrightserif","trademarkserif","product","radical","dotmath","logicalnot","logicaland","logicalor","arrowdblboth","arrowdblleft","arrowdblup","arrowdblright","arrowdbldown","lozenge","angleleft","registersans","copyrightsans","trademarksans","summation","parenlefttp","parenleftex","parenleftbt","bracketlefttp","bracketleftex","bracketleftbt","bracelefttp","braceleftmid","braceleftbt","braceex","","angleright","integral","integraltp","integralex","integralbt","parenrighttp","parenrightex","parenrightbt","bracketrighttp","bracketrightex","bracketrightbt","bracerighttp","bracerightmid","bracerightbt",""];t.SymbolSetEncoding=o;const c=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","a1","a2","a202","a3","a4","a5","a119","a118","a117","a11","a12","a13","a14","a15","a16","a105","a17","a18","a19","a20","a21","a22","a23","a24","a25","a26","a27","a28","a6","a7","a8","a9","a10","a29","a30","a31","a32","a33","a34","a35","a36","a37","a38","a39","a40","a41","a42","a43","a44","a45","a46","a47","a48","a49","a50","a51","a52","a53","a54","a55","a56","a57","a58","a59","a60","a61","a62","a63","a64","a65","a66","a67","a68","a69","a70","a71","a72","a73","a74","a203","a75","a204","a76","a77","a78","a79","a81","a82","a83","a84","a97","a98","a99","a100","","a89","a90","a93","a94","a91","a92","a205","a85","a206","a86","a87","a88","a95","a96","","","","","","","","","","","","","","","","","","","","a101","a102","a103","a104","a106","a107","a108","a112","a111","a110","a109","a120","a121","a122","a123","a124","a125","a126","a127","a128","a129","a130","a131","a132","a133","a134","a135","a136","a137","a138","a139","a140","a141","a142","a143","a144","a145","a146","a147","a148","a149","a150","a151","a152","a153","a154","a155","a156","a157","a158","a159","a160","a161","a163","a164","a196","a165","a192","a166","a167","a168","a169","a170","a171","a172","a173","a162","a174","a175","a176","a177","a178","a179","a193","a180","a199","a181","a200","a182","","a201","a183","a184","a197","a185","a194","a198","a186","a195","a187","a188","a189","a190","a191",""];t.ZapfDingbatsEncoding=c},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.SEAC_ANALYSIS_ENABLED=t.MacStandardGlyphOrdering=t.FontFlags=void 0;t.normalizeFontName=function normalizeFontName(e){return e.replaceAll(/[,_]/g,"-").replaceAll(/\s/g,"")};t.recoverGlyphName=recoverGlyphName;t.type1FontGlyphMapping=function type1FontGlyphMapping(e,t,a){const i=Object.create(null);let s,c,l;const h=!!(e.flags&o.Symbolic);if(e.isInternalFont){l=t;for(c=0;c=0?s:0}}else if(e.baseEncodingName){l=(0,r.getEncoding)(e.baseEncodingName);for(c=0;c=0?s:0}}else if(h)for(c in t)i[c]=t[c];else{l=r.StandardEncoding;for(c=0;c=0?s:0}}const u=e.differences;let d;if(u)for(c in u){const e=u[c];s=a.indexOf(e);if(-1===s){d||(d=(0,n.getGlyphsUnicode)());const t=recoverGlyphName(e,d);t!==e&&(s=a.indexOf(t))}i[c]=s>=0?s:0}return i};var r=a(37),n=a(39),i=a(40),s=a(2);t.SEAC_ANALYSIS_ENABLED=!0;const o={FixedPitch:1,Serif:2,Symbolic:4,Script:8,Nonsymbolic:32,Italic:64,AllCap:65536,SmallCap:131072,ForceBold:262144};t.FontFlags=o;t.MacStandardGlyphOrdering=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function recoverGlyphName(e,t){if(void 0!==t[e])return e;const a=(0,i.getUnicodeForGlyph)(e,t);if(-1!==a)for(const e in t)if(t[e]===a)return e;(0,s.info)("Unable to recover a standard glyph name for: "+e);return e}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.getGlyphsUnicode=t.getDingbatsGlyphsUnicode=void 0;var r=a(3);const n=(0,r.getLookupTableFactory)((function(e){e.A=65;e.AE=198;e.AEacute=508;e.AEmacron=482;e.AEsmall=63462;e.Aacute=193;e.Aacutesmall=63457;e.Abreve=258;e.Abreveacute=7854;e.Abrevecyrillic=1232;e.Abrevedotbelow=7862;e.Abrevegrave=7856;e.Abrevehookabove=7858;e.Abrevetilde=7860;e.Acaron=461;e.Acircle=9398;e.Acircumflex=194;e.Acircumflexacute=7844;e.Acircumflexdotbelow=7852;e.Acircumflexgrave=7846;e.Acircumflexhookabove=7848;e.Acircumflexsmall=63458;e.Acircumflextilde=7850;e.Acute=63177;e.Acutesmall=63412;e.Acyrillic=1040;e.Adblgrave=512;e.Adieresis=196;e.Adieresiscyrillic=1234;e.Adieresismacron=478;e.Adieresissmall=63460;e.Adotbelow=7840;e.Adotmacron=480;e.Agrave=192;e.Agravesmall=63456;e.Ahookabove=7842;e.Aiecyrillic=1236;e.Ainvertedbreve=514;e.Alpha=913;e.Alphatonos=902;e.Amacron=256;e.Amonospace=65313;e.Aogonek=260;e.Aring=197;e.Aringacute=506;e.Aringbelow=7680;e.Aringsmall=63461;e.Asmall=63329;e.Atilde=195;e.Atildesmall=63459;e.Aybarmenian=1329;e.B=66;e.Bcircle=9399;e.Bdotaccent=7682;e.Bdotbelow=7684;e.Becyrillic=1041;e.Benarmenian=1330;e.Beta=914;e.Bhook=385;e.Blinebelow=7686;e.Bmonospace=65314;e.Brevesmall=63220;e.Bsmall=63330;e.Btopbar=386;e.C=67;e.Caarmenian=1342;e.Cacute=262;e.Caron=63178;e.Caronsmall=63221;e.Ccaron=268;e.Ccedilla=199;e.Ccedillaacute=7688;e.Ccedillasmall=63463;e.Ccircle=9400;e.Ccircumflex=264;e.Cdot=266;e.Cdotaccent=266;e.Cedillasmall=63416;e.Chaarmenian=1353;e.Cheabkhasiancyrillic=1212;e.Checyrillic=1063;e.Chedescenderabkhasiancyrillic=1214;e.Chedescendercyrillic=1206;e.Chedieresiscyrillic=1268;e.Cheharmenian=1347;e.Chekhakassiancyrillic=1227;e.Cheverticalstrokecyrillic=1208;e.Chi=935;e.Chook=391;e.Circumflexsmall=63222;e.Cmonospace=65315;e.Coarmenian=1361;e.Csmall=63331;e.D=68;e.DZ=497;e.DZcaron=452;e.Daarmenian=1332;e.Dafrican=393;e.Dcaron=270;e.Dcedilla=7696;e.Dcircle=9401;e.Dcircumflexbelow=7698;e.Dcroat=272;e.Ddotaccent=7690;e.Ddotbelow=7692;e.Decyrillic=1044;e.Deicoptic=1006;e.Delta=8710;e.Deltagreek=916;e.Dhook=394;e.Dieresis=63179;e.DieresisAcute=63180;e.DieresisGrave=63181;e.Dieresissmall=63400;e.Digammagreek=988;e.Djecyrillic=1026;e.Dlinebelow=7694;e.Dmonospace=65316;e.Dotaccentsmall=63223;e.Dslash=272;e.Dsmall=63332;e.Dtopbar=395;e.Dz=498;e.Dzcaron=453;e.Dzeabkhasiancyrillic=1248;e.Dzecyrillic=1029;e.Dzhecyrillic=1039;e.E=69;e.Eacute=201;e.Eacutesmall=63465;e.Ebreve=276;e.Ecaron=282;e.Ecedillabreve=7708;e.Echarmenian=1333;e.Ecircle=9402;e.Ecircumflex=202;e.Ecircumflexacute=7870;e.Ecircumflexbelow=7704;e.Ecircumflexdotbelow=7878;e.Ecircumflexgrave=7872;e.Ecircumflexhookabove=7874;e.Ecircumflexsmall=63466;e.Ecircumflextilde=7876;e.Ecyrillic=1028;e.Edblgrave=516;e.Edieresis=203;e.Edieresissmall=63467;e.Edot=278;e.Edotaccent=278;e.Edotbelow=7864;e.Efcyrillic=1060;e.Egrave=200;e.Egravesmall=63464;e.Eharmenian=1335;e.Ehookabove=7866;e.Eightroman=8551;e.Einvertedbreve=518;e.Eiotifiedcyrillic=1124;e.Elcyrillic=1051;e.Elevenroman=8554;e.Emacron=274;e.Emacronacute=7702;e.Emacrongrave=7700;e.Emcyrillic=1052;e.Emonospace=65317;e.Encyrillic=1053;e.Endescendercyrillic=1186;e.Eng=330;e.Enghecyrillic=1188;e.Enhookcyrillic=1223;e.Eogonek=280;e.Eopen=400;e.Epsilon=917;e.Epsilontonos=904;e.Ercyrillic=1056;e.Ereversed=398;e.Ereversedcyrillic=1069;e.Escyrillic=1057;e.Esdescendercyrillic=1194;e.Esh=425;e.Esmall=63333;e.Eta=919;e.Etarmenian=1336;e.Etatonos=905;e.Eth=208;e.Ethsmall=63472;e.Etilde=7868;e.Etildebelow=7706;e.Euro=8364;e.Ezh=439;e.Ezhcaron=494;e.Ezhreversed=440;e.F=70;e.Fcircle=9403;e.Fdotaccent=7710;e.Feharmenian=1366;e.Feicoptic=996;e.Fhook=401;e.Fitacyrillic=1138;e.Fiveroman=8548;e.Fmonospace=65318;e.Fourroman=8547;e.Fsmall=63334;e.G=71;e.GBsquare=13191;e.Gacute=500;e.Gamma=915;e.Gammaafrican=404;e.Gangiacoptic=1002;e.Gbreve=286;e.Gcaron=486;e.Gcedilla=290;e.Gcircle=9404;e.Gcircumflex=284;e.Gcommaaccent=290;e.Gdot=288;e.Gdotaccent=288;e.Gecyrillic=1043;e.Ghadarmenian=1346;e.Ghemiddlehookcyrillic=1172;e.Ghestrokecyrillic=1170;e.Gheupturncyrillic=1168;e.Ghook=403;e.Gimarmenian=1331;e.Gjecyrillic=1027;e.Gmacron=7712;e.Gmonospace=65319;e.Grave=63182;e.Gravesmall=63328;e.Gsmall=63335;e.Gsmallhook=667;e.Gstroke=484;e.H=72;e.H18533=9679;e.H18543=9642;e.H18551=9643;e.H22073=9633;e.HPsquare=13259;e.Haabkhasiancyrillic=1192;e.Hadescendercyrillic=1202;e.Hardsigncyrillic=1066;e.Hbar=294;e.Hbrevebelow=7722;e.Hcedilla=7720;e.Hcircle=9405;e.Hcircumflex=292;e.Hdieresis=7718;e.Hdotaccent=7714;e.Hdotbelow=7716;e.Hmonospace=65320;e.Hoarmenian=1344;e.Horicoptic=1e3;e.Hsmall=63336;e.Hungarumlaut=63183;e.Hungarumlautsmall=63224;e.Hzsquare=13200;e.I=73;e.IAcyrillic=1071;e.IJ=306;e.IUcyrillic=1070;e.Iacute=205;e.Iacutesmall=63469;e.Ibreve=300;e.Icaron=463;e.Icircle=9406;e.Icircumflex=206;e.Icircumflexsmall=63470;e.Icyrillic=1030;e.Idblgrave=520;e.Idieresis=207;e.Idieresisacute=7726;e.Idieresiscyrillic=1252;e.Idieresissmall=63471;e.Idot=304;e.Idotaccent=304;e.Idotbelow=7882;e.Iebrevecyrillic=1238;e.Iecyrillic=1045;e.Ifraktur=8465;e.Igrave=204;e.Igravesmall=63468;e.Ihookabove=7880;e.Iicyrillic=1048;e.Iinvertedbreve=522;e.Iishortcyrillic=1049;e.Imacron=298;e.Imacroncyrillic=1250;e.Imonospace=65321;e.Iniarmenian=1339;e.Iocyrillic=1025;e.Iogonek=302;e.Iota=921;e.Iotaafrican=406;e.Iotadieresis=938;e.Iotatonos=906;e.Ismall=63337;e.Istroke=407;e.Itilde=296;e.Itildebelow=7724;e.Izhitsacyrillic=1140;e.Izhitsadblgravecyrillic=1142;e.J=74;e.Jaarmenian=1345;e.Jcircle=9407;e.Jcircumflex=308;e.Jecyrillic=1032;e.Jheharmenian=1355;e.Jmonospace=65322;e.Jsmall=63338;e.K=75;e.KBsquare=13189;e.KKsquare=13261;e.Kabashkircyrillic=1184;e.Kacute=7728;e.Kacyrillic=1050;e.Kadescendercyrillic=1178;e.Kahookcyrillic=1219;e.Kappa=922;e.Kastrokecyrillic=1182;e.Kaverticalstrokecyrillic=1180;e.Kcaron=488;e.Kcedilla=310;e.Kcircle=9408;e.Kcommaaccent=310;e.Kdotbelow=7730;e.Keharmenian=1364;e.Kenarmenian=1343;e.Khacyrillic=1061;e.Kheicoptic=998;e.Khook=408;e.Kjecyrillic=1036;e.Klinebelow=7732;e.Kmonospace=65323;e.Koppacyrillic=1152;e.Koppagreek=990;e.Ksicyrillic=1134;e.Ksmall=63339;e.L=76;e.LJ=455;e.LL=63167;e.Lacute=313;e.Lambda=923;e.Lcaron=317;e.Lcedilla=315;e.Lcircle=9409;e.Lcircumflexbelow=7740;e.Lcommaaccent=315;e.Ldot=319;e.Ldotaccent=319;e.Ldotbelow=7734;e.Ldotbelowmacron=7736;e.Liwnarmenian=1340;e.Lj=456;e.Ljecyrillic=1033;e.Llinebelow=7738;e.Lmonospace=65324;e.Lslash=321;e.Lslashsmall=63225;e.Lsmall=63340;e.M=77;e.MBsquare=13190;e.Macron=63184;e.Macronsmall=63407;e.Macute=7742;e.Mcircle=9410;e.Mdotaccent=7744;e.Mdotbelow=7746;e.Menarmenian=1348;e.Mmonospace=65325;e.Msmall=63341;e.Mturned=412;e.Mu=924;e.N=78;e.NJ=458;e.Nacute=323;e.Ncaron=327;e.Ncedilla=325;e.Ncircle=9411;e.Ncircumflexbelow=7754;e.Ncommaaccent=325;e.Ndotaccent=7748;e.Ndotbelow=7750;e.Nhookleft=413;e.Nineroman=8552;e.Nj=459;e.Njecyrillic=1034;e.Nlinebelow=7752;e.Nmonospace=65326;e.Nowarmenian=1350;e.Nsmall=63342;e.Ntilde=209;e.Ntildesmall=63473;e.Nu=925;e.O=79;e.OE=338;e.OEsmall=63226;e.Oacute=211;e.Oacutesmall=63475;e.Obarredcyrillic=1256;e.Obarreddieresiscyrillic=1258;e.Obreve=334;e.Ocaron=465;e.Ocenteredtilde=415;e.Ocircle=9412;e.Ocircumflex=212;e.Ocircumflexacute=7888;e.Ocircumflexdotbelow=7896;e.Ocircumflexgrave=7890;e.Ocircumflexhookabove=7892;e.Ocircumflexsmall=63476;e.Ocircumflextilde=7894;e.Ocyrillic=1054;e.Odblacute=336;e.Odblgrave=524;e.Odieresis=214;e.Odieresiscyrillic=1254;e.Odieresissmall=63478;e.Odotbelow=7884;e.Ogoneksmall=63227;e.Ograve=210;e.Ogravesmall=63474;e.Oharmenian=1365;e.Ohm=8486;e.Ohookabove=7886;e.Ohorn=416;e.Ohornacute=7898;e.Ohorndotbelow=7906;e.Ohorngrave=7900;e.Ohornhookabove=7902;e.Ohorntilde=7904;e.Ohungarumlaut=336;e.Oi=418;e.Oinvertedbreve=526;e.Omacron=332;e.Omacronacute=7762;e.Omacrongrave=7760;e.Omega=8486;e.Omegacyrillic=1120;e.Omegagreek=937;e.Omegaroundcyrillic=1146;e.Omegatitlocyrillic=1148;e.Omegatonos=911;e.Omicron=927;e.Omicrontonos=908;e.Omonospace=65327;e.Oneroman=8544;e.Oogonek=490;e.Oogonekmacron=492;e.Oopen=390;e.Oslash=216;e.Oslashacute=510;e.Oslashsmall=63480;e.Osmall=63343;e.Ostrokeacute=510;e.Otcyrillic=1150;e.Otilde=213;e.Otildeacute=7756;e.Otildedieresis=7758;e.Otildesmall=63477;e.P=80;e.Pacute=7764;e.Pcircle=9413;e.Pdotaccent=7766;e.Pecyrillic=1055;e.Peharmenian=1354;e.Pemiddlehookcyrillic=1190;e.Phi=934;e.Phook=420;e.Pi=928;e.Piwrarmenian=1363;e.Pmonospace=65328;e.Psi=936;e.Psicyrillic=1136;e.Psmall=63344;e.Q=81;e.Qcircle=9414;e.Qmonospace=65329;e.Qsmall=63345;e.R=82;e.Raarmenian=1356;e.Racute=340;e.Rcaron=344;e.Rcedilla=342;e.Rcircle=9415;e.Rcommaaccent=342;e.Rdblgrave=528;e.Rdotaccent=7768;e.Rdotbelow=7770;e.Rdotbelowmacron=7772;e.Reharmenian=1360;e.Rfraktur=8476;e.Rho=929;e.Ringsmall=63228;e.Rinvertedbreve=530;e.Rlinebelow=7774;e.Rmonospace=65330;e.Rsmall=63346;e.Rsmallinverted=641;e.Rsmallinvertedsuperior=694;e.S=83;e.SF010000=9484;e.SF020000=9492;e.SF030000=9488;e.SF040000=9496;e.SF050000=9532;e.SF060000=9516;e.SF070000=9524;e.SF080000=9500;e.SF090000=9508;e.SF100000=9472;e.SF110000=9474;e.SF190000=9569;e.SF200000=9570;e.SF210000=9558;e.SF220000=9557;e.SF230000=9571;e.SF240000=9553;e.SF250000=9559;e.SF260000=9565;e.SF270000=9564;e.SF280000=9563;e.SF360000=9566;e.SF370000=9567;e.SF380000=9562;e.SF390000=9556;e.SF400000=9577;e.SF410000=9574;e.SF420000=9568;e.SF430000=9552;e.SF440000=9580;e.SF450000=9575;e.SF460000=9576;e.SF470000=9572;e.SF480000=9573;e.SF490000=9561;e.SF500000=9560;e.SF510000=9554;e.SF520000=9555;e.SF530000=9579;e.SF540000=9578;e.Sacute=346;e.Sacutedotaccent=7780;e.Sampigreek=992;e.Scaron=352;e.Scarondotaccent=7782;e.Scaronsmall=63229;e.Scedilla=350;e.Schwa=399;e.Schwacyrillic=1240;e.Schwadieresiscyrillic=1242;e.Scircle=9416;e.Scircumflex=348;e.Scommaaccent=536;e.Sdotaccent=7776;e.Sdotbelow=7778;e.Sdotbelowdotaccent=7784;e.Seharmenian=1357;e.Sevenroman=8550;e.Shaarmenian=1351;e.Shacyrillic=1064;e.Shchacyrillic=1065;e.Sheicoptic=994;e.Shhacyrillic=1210;e.Shimacoptic=1004;e.Sigma=931;e.Sixroman=8549;e.Smonospace=65331;e.Softsigncyrillic=1068;e.Ssmall=63347;e.Stigmagreek=986;e.T=84;e.Tau=932;e.Tbar=358;e.Tcaron=356;e.Tcedilla=354;e.Tcircle=9417;e.Tcircumflexbelow=7792;e.Tcommaaccent=354;e.Tdotaccent=7786;e.Tdotbelow=7788;e.Tecyrillic=1058;e.Tedescendercyrillic=1196;e.Tenroman=8553;e.Tetsecyrillic=1204;e.Theta=920;e.Thook=428;e.Thorn=222;e.Thornsmall=63486;e.Threeroman=8546;e.Tildesmall=63230;e.Tiwnarmenian=1359;e.Tlinebelow=7790;e.Tmonospace=65332;e.Toarmenian=1337;e.Tonefive=444;e.Tonesix=388;e.Tonetwo=423;e.Tretroflexhook=430;e.Tsecyrillic=1062;e.Tshecyrillic=1035;e.Tsmall=63348;e.Twelveroman=8555;e.Tworoman=8545;e.U=85;e.Uacute=218;e.Uacutesmall=63482;e.Ubreve=364;e.Ucaron=467;e.Ucircle=9418;e.Ucircumflex=219;e.Ucircumflexbelow=7798;e.Ucircumflexsmall=63483;e.Ucyrillic=1059;e.Udblacute=368;e.Udblgrave=532;e.Udieresis=220;e.Udieresisacute=471;e.Udieresisbelow=7794;e.Udieresiscaron=473;e.Udieresiscyrillic=1264;e.Udieresisgrave=475;e.Udieresismacron=469;e.Udieresissmall=63484;e.Udotbelow=7908;e.Ugrave=217;e.Ugravesmall=63481;e.Uhookabove=7910;e.Uhorn=431;e.Uhornacute=7912;e.Uhorndotbelow=7920;e.Uhorngrave=7914;e.Uhornhookabove=7916;e.Uhorntilde=7918;e.Uhungarumlaut=368;e.Uhungarumlautcyrillic=1266;e.Uinvertedbreve=534;e.Ukcyrillic=1144;e.Umacron=362;e.Umacroncyrillic=1262;e.Umacrondieresis=7802;e.Umonospace=65333;e.Uogonek=370;e.Upsilon=933;e.Upsilon1=978;e.Upsilonacutehooksymbolgreek=979;e.Upsilonafrican=433;e.Upsilondieresis=939;e.Upsilondieresishooksymbolgreek=980;e.Upsilonhooksymbol=978;e.Upsilontonos=910;e.Uring=366;e.Ushortcyrillic=1038;e.Usmall=63349;e.Ustraightcyrillic=1198;e.Ustraightstrokecyrillic=1200;e.Utilde=360;e.Utildeacute=7800;e.Utildebelow=7796;e.V=86;e.Vcircle=9419;e.Vdotbelow=7806;e.Vecyrillic=1042;e.Vewarmenian=1358;e.Vhook=434;e.Vmonospace=65334;e.Voarmenian=1352;e.Vsmall=63350;e.Vtilde=7804;e.W=87;e.Wacute=7810;e.Wcircle=9420;e.Wcircumflex=372;e.Wdieresis=7812;e.Wdotaccent=7814;e.Wdotbelow=7816;e.Wgrave=7808;e.Wmonospace=65335;e.Wsmall=63351;e.X=88;e.Xcircle=9421;e.Xdieresis=7820;e.Xdotaccent=7818;e.Xeharmenian=1341;e.Xi=926;e.Xmonospace=65336;e.Xsmall=63352;e.Y=89;e.Yacute=221;e.Yacutesmall=63485;e.Yatcyrillic=1122;e.Ycircle=9422;e.Ycircumflex=374;e.Ydieresis=376;e.Ydieresissmall=63487;e.Ydotaccent=7822;e.Ydotbelow=7924;e.Yericyrillic=1067;e.Yerudieresiscyrillic=1272;e.Ygrave=7922;e.Yhook=435;e.Yhookabove=7926;e.Yiarmenian=1349;e.Yicyrillic=1031;e.Yiwnarmenian=1362;e.Ymonospace=65337;e.Ysmall=63353;e.Ytilde=7928;e.Yusbigcyrillic=1130;e.Yusbigiotifiedcyrillic=1132;e.Yuslittlecyrillic=1126;e.Yuslittleiotifiedcyrillic=1128;e.Z=90;e.Zaarmenian=1334;e.Zacute=377;e.Zcaron=381;e.Zcaronsmall=63231;e.Zcircle=9423;e.Zcircumflex=7824;e.Zdot=379;e.Zdotaccent=379;e.Zdotbelow=7826;e.Zecyrillic=1047;e.Zedescendercyrillic=1176;e.Zedieresiscyrillic=1246;e.Zeta=918;e.Zhearmenian=1338;e.Zhebrevecyrillic=1217;e.Zhecyrillic=1046;e.Zhedescendercyrillic=1174;e.Zhedieresiscyrillic=1244;e.Zlinebelow=7828;e.Zmonospace=65338;e.Zsmall=63354;e.Zstroke=437;e.a=97;e.aabengali=2438;e.aacute=225;e.aadeva=2310;e.aagujarati=2694;e.aagurmukhi=2566;e.aamatragurmukhi=2622;e.aarusquare=13059;e.aavowelsignbengali=2494;e.aavowelsigndeva=2366;e.aavowelsigngujarati=2750;e.abbreviationmarkarmenian=1375;e.abbreviationsigndeva=2416;e.abengali=2437;e.abopomofo=12570;e.abreve=259;e.abreveacute=7855;e.abrevecyrillic=1233;e.abrevedotbelow=7863;e.abrevegrave=7857;e.abrevehookabove=7859;e.abrevetilde=7861;e.acaron=462;e.acircle=9424;e.acircumflex=226;e.acircumflexacute=7845;e.acircumflexdotbelow=7853;e.acircumflexgrave=7847;e.acircumflexhookabove=7849;e.acircumflextilde=7851;e.acute=180;e.acutebelowcmb=791;e.acutecmb=769;e.acutecomb=769;e.acutedeva=2388;e.acutelowmod=719;e.acutetonecmb=833;e.acyrillic=1072;e.adblgrave=513;e.addakgurmukhi=2673;e.adeva=2309;e.adieresis=228;e.adieresiscyrillic=1235;e.adieresismacron=479;e.adotbelow=7841;e.adotmacron=481;e.ae=230;e.aeacute=509;e.aekorean=12624;e.aemacron=483;e.afii00208=8213;e.afii08941=8356;e.afii10017=1040;e.afii10018=1041;e.afii10019=1042;e.afii10020=1043;e.afii10021=1044;e.afii10022=1045;e.afii10023=1025;e.afii10024=1046;e.afii10025=1047;e.afii10026=1048;e.afii10027=1049;e.afii10028=1050;e.afii10029=1051;e.afii10030=1052;e.afii10031=1053;e.afii10032=1054;e.afii10033=1055;e.afii10034=1056;e.afii10035=1057;e.afii10036=1058;e.afii10037=1059;e.afii10038=1060;e.afii10039=1061;e.afii10040=1062;e.afii10041=1063;e.afii10042=1064;e.afii10043=1065;e.afii10044=1066;e.afii10045=1067;e.afii10046=1068;e.afii10047=1069;e.afii10048=1070;e.afii10049=1071;e.afii10050=1168;e.afii10051=1026;e.afii10052=1027;e.afii10053=1028;e.afii10054=1029;e.afii10055=1030;e.afii10056=1031;e.afii10057=1032;e.afii10058=1033;e.afii10059=1034;e.afii10060=1035;e.afii10061=1036;e.afii10062=1038;e.afii10063=63172;e.afii10064=63173;e.afii10065=1072;e.afii10066=1073;e.afii10067=1074;e.afii10068=1075;e.afii10069=1076;e.afii10070=1077;e.afii10071=1105;e.afii10072=1078;e.afii10073=1079;e.afii10074=1080;e.afii10075=1081;e.afii10076=1082;e.afii10077=1083;e.afii10078=1084;e.afii10079=1085;e.afii10080=1086;e.afii10081=1087;e.afii10082=1088;e.afii10083=1089;e.afii10084=1090;e.afii10085=1091;e.afii10086=1092;e.afii10087=1093;e.afii10088=1094;e.afii10089=1095;e.afii10090=1096;e.afii10091=1097;e.afii10092=1098;e.afii10093=1099;e.afii10094=1100;e.afii10095=1101;e.afii10096=1102;e.afii10097=1103;e.afii10098=1169;e.afii10099=1106;e.afii10100=1107;e.afii10101=1108;e.afii10102=1109;e.afii10103=1110;e.afii10104=1111;e.afii10105=1112;e.afii10106=1113;e.afii10107=1114;e.afii10108=1115;e.afii10109=1116;e.afii10110=1118;e.afii10145=1039;e.afii10146=1122;e.afii10147=1138;e.afii10148=1140;e.afii10192=63174;e.afii10193=1119;e.afii10194=1123;e.afii10195=1139;e.afii10196=1141;e.afii10831=63175;e.afii10832=63176;e.afii10846=1241;e.afii299=8206;e.afii300=8207;e.afii301=8205;e.afii57381=1642;e.afii57388=1548;e.afii57392=1632;e.afii57393=1633;e.afii57394=1634;e.afii57395=1635;e.afii57396=1636;e.afii57397=1637;e.afii57398=1638;e.afii57399=1639;e.afii57400=1640;e.afii57401=1641;e.afii57403=1563;e.afii57407=1567;e.afii57409=1569;e.afii57410=1570;e.afii57411=1571;e.afii57412=1572;e.afii57413=1573;e.afii57414=1574;e.afii57415=1575;e.afii57416=1576;e.afii57417=1577;e.afii57418=1578;e.afii57419=1579;e.afii57420=1580;e.afii57421=1581;e.afii57422=1582;e.afii57423=1583;e.afii57424=1584;e.afii57425=1585;e.afii57426=1586;e.afii57427=1587;e.afii57428=1588;e.afii57429=1589;e.afii57430=1590;e.afii57431=1591;e.afii57432=1592;e.afii57433=1593;e.afii57434=1594;e.afii57440=1600;e.afii57441=1601;e.afii57442=1602;e.afii57443=1603;e.afii57444=1604;e.afii57445=1605;e.afii57446=1606;e.afii57448=1608;e.afii57449=1609;e.afii57450=1610;e.afii57451=1611;e.afii57452=1612;e.afii57453=1613;e.afii57454=1614;e.afii57455=1615;e.afii57456=1616;e.afii57457=1617;e.afii57458=1618;e.afii57470=1607;e.afii57505=1700;e.afii57506=1662;e.afii57507=1670;e.afii57508=1688;e.afii57509=1711;e.afii57511=1657;e.afii57512=1672;e.afii57513=1681;e.afii57514=1722;e.afii57519=1746;e.afii57534=1749;e.afii57636=8362;e.afii57645=1470;e.afii57658=1475;e.afii57664=1488;e.afii57665=1489;e.afii57666=1490;e.afii57667=1491;e.afii57668=1492;e.afii57669=1493;e.afii57670=1494;e.afii57671=1495;e.afii57672=1496;e.afii57673=1497;e.afii57674=1498;e.afii57675=1499;e.afii57676=1500;e.afii57677=1501;e.afii57678=1502;e.afii57679=1503;e.afii57680=1504;e.afii57681=1505;e.afii57682=1506;e.afii57683=1507;e.afii57684=1508;e.afii57685=1509;e.afii57686=1510;e.afii57687=1511;e.afii57688=1512;e.afii57689=1513;e.afii57690=1514;e.afii57694=64298;e.afii57695=64299;e.afii57700=64331;e.afii57705=64287;e.afii57716=1520;e.afii57717=1521;e.afii57718=1522;e.afii57723=64309;e.afii57793=1460;e.afii57794=1461;e.afii57795=1462;e.afii57796=1467;e.afii57797=1464;e.afii57798=1463;e.afii57799=1456;e.afii57800=1458;e.afii57801=1457;e.afii57802=1459;e.afii57803=1474;e.afii57804=1473;e.afii57806=1465;e.afii57807=1468;e.afii57839=1469;e.afii57841=1471;e.afii57842=1472;e.afii57929=700;e.afii61248=8453;e.afii61289=8467;e.afii61352=8470;e.afii61573=8236;e.afii61574=8237;e.afii61575=8238;e.afii61664=8204;e.afii63167=1645;e.afii64937=701;e.agrave=224;e.agujarati=2693;e.agurmukhi=2565;e.ahiragana=12354;e.ahookabove=7843;e.aibengali=2448;e.aibopomofo=12574;e.aideva=2320;e.aiecyrillic=1237;e.aigujarati=2704;e.aigurmukhi=2576;e.aimatragurmukhi=2632;e.ainarabic=1593;e.ainfinalarabic=65226;e.aininitialarabic=65227;e.ainmedialarabic=65228;e.ainvertedbreve=515;e.aivowelsignbengali=2504;e.aivowelsigndeva=2376;e.aivowelsigngujarati=2760;e.akatakana=12450;e.akatakanahalfwidth=65393;e.akorean=12623;e.alef=1488;e.alefarabic=1575;e.alefdageshhebrew=64304;e.aleffinalarabic=65166;e.alefhamzaabovearabic=1571;e.alefhamzaabovefinalarabic=65156;e.alefhamzabelowarabic=1573;e.alefhamzabelowfinalarabic=65160;e.alefhebrew=1488;e.aleflamedhebrew=64335;e.alefmaddaabovearabic=1570;e.alefmaddaabovefinalarabic=65154;e.alefmaksuraarabic=1609;e.alefmaksurafinalarabic=65264;e.alefmaksurainitialarabic=65267;e.alefmaksuramedialarabic=65268;e.alefpatahhebrew=64302;e.alefqamatshebrew=64303;e.aleph=8501;e.allequal=8780;e.alpha=945;e.alphatonos=940;e.amacron=257;e.amonospace=65345;e.ampersand=38;e.ampersandmonospace=65286;e.ampersandsmall=63270;e.amsquare=13250;e.anbopomofo=12578;e.angbopomofo=12580;e.angbracketleft=12296;e.angbracketright=12297;e.angkhankhuthai=3674;e.angle=8736;e.anglebracketleft=12296;e.anglebracketleftvertical=65087;e.anglebracketright=12297;e.anglebracketrightvertical=65088;e.angleleft=9001;e.angleright=9002;e.angstrom=8491;e.anoteleia=903;e.anudattadeva=2386;e.anusvarabengali=2434;e.anusvaradeva=2306;e.anusvaragujarati=2690;e.aogonek=261;e.apaatosquare=13056;e.aparen=9372;e.apostrophearmenian=1370;e.apostrophemod=700;e.apple=63743;e.approaches=8784;e.approxequal=8776;e.approxequalorimage=8786;e.approximatelyequal=8773;e.araeaekorean=12686;e.araeakorean=12685;e.arc=8978;e.arighthalfring=7834;e.aring=229;e.aringacute=507;e.aringbelow=7681;e.arrowboth=8596;e.arrowdashdown=8675;e.arrowdashleft=8672;e.arrowdashright=8674;e.arrowdashup=8673;e.arrowdblboth=8660;e.arrowdbldown=8659;e.arrowdblleft=8656;e.arrowdblright=8658;e.arrowdblup=8657;e.arrowdown=8595;e.arrowdownleft=8601;e.arrowdownright=8600;e.arrowdownwhite=8681;e.arrowheaddownmod=709;e.arrowheadleftmod=706;e.arrowheadrightmod=707;e.arrowheadupmod=708;e.arrowhorizex=63719;e.arrowleft=8592;e.arrowleftdbl=8656;e.arrowleftdblstroke=8653;e.arrowleftoverright=8646;e.arrowleftwhite=8678;e.arrowright=8594;e.arrowrightdblstroke=8655;e.arrowrightheavy=10142;e.arrowrightoverleft=8644;e.arrowrightwhite=8680;e.arrowtableft=8676;e.arrowtabright=8677;e.arrowup=8593;e.arrowupdn=8597;e.arrowupdnbse=8616;e.arrowupdownbase=8616;e.arrowupleft=8598;e.arrowupleftofdown=8645;e.arrowupright=8599;e.arrowupwhite=8679;e.arrowvertex=63718;e.asciicircum=94;e.asciicircummonospace=65342;e.asciitilde=126;e.asciitildemonospace=65374;e.ascript=593;e.ascriptturned=594;e.asmallhiragana=12353;e.asmallkatakana=12449;e.asmallkatakanahalfwidth=65383;e.asterisk=42;e.asteriskaltonearabic=1645;e.asteriskarabic=1645;e.asteriskmath=8727;e.asteriskmonospace=65290;e.asterisksmall=65121;e.asterism=8258;e.asuperior=63209;e.asymptoticallyequal=8771;e.at=64;e.atilde=227;e.atmonospace=65312;e.atsmall=65131;e.aturned=592;e.aubengali=2452;e.aubopomofo=12576;e.audeva=2324;e.augujarati=2708;e.augurmukhi=2580;e.aulengthmarkbengali=2519;e.aumatragurmukhi=2636;e.auvowelsignbengali=2508;e.auvowelsigndeva=2380;e.auvowelsigngujarati=2764;e.avagrahadeva=2365;e.aybarmenian=1377;e.ayin=1506;e.ayinaltonehebrew=64288;e.ayinhebrew=1506;e.b=98;e.babengali=2476;e.backslash=92;e.backslashmonospace=65340;e.badeva=2348;e.bagujarati=2732;e.bagurmukhi=2604;e.bahiragana=12400;e.bahtthai=3647;e.bakatakana=12496;e.bar=124;e.barmonospace=65372;e.bbopomofo=12549;e.bcircle=9425;e.bdotaccent=7683;e.bdotbelow=7685;e.beamedsixteenthnotes=9836;e.because=8757;e.becyrillic=1073;e.beharabic=1576;e.behfinalarabic=65168;e.behinitialarabic=65169;e.behiragana=12409;e.behmedialarabic=65170;e.behmeeminitialarabic=64671;e.behmeemisolatedarabic=64520;e.behnoonfinalarabic=64621;e.bekatakana=12505;e.benarmenian=1378;e.bet=1489;e.beta=946;e.betasymbolgreek=976;e.betdagesh=64305;e.betdageshhebrew=64305;e.bethebrew=1489;e.betrafehebrew=64332;e.bhabengali=2477;e.bhadeva=2349;e.bhagujarati=2733;e.bhagurmukhi=2605;e.bhook=595;e.bihiragana=12403;e.bikatakana=12499;e.bilabialclick=664;e.bindigurmukhi=2562;e.birusquare=13105;e.blackcircle=9679;e.blackdiamond=9670;e.blackdownpointingtriangle=9660;e.blackleftpointingpointer=9668;e.blackleftpointingtriangle=9664;e.blacklenticularbracketleft=12304;e.blacklenticularbracketleftvertical=65083;e.blacklenticularbracketright=12305;e.blacklenticularbracketrightvertical=65084;e.blacklowerlefttriangle=9699;e.blacklowerrighttriangle=9698;e.blackrectangle=9644;e.blackrightpointingpointer=9658;e.blackrightpointingtriangle=9654;e.blacksmallsquare=9642;e.blacksmilingface=9787;e.blacksquare=9632;e.blackstar=9733;e.blackupperlefttriangle=9700;e.blackupperrighttriangle=9701;e.blackuppointingsmalltriangle=9652;e.blackuppointingtriangle=9650;e.blank=9251;e.blinebelow=7687;e.block=9608;e.bmonospace=65346;e.bobaimaithai=3610;e.bohiragana=12412;e.bokatakana=12508;e.bparen=9373;e.bqsquare=13251;e.braceex=63732;e.braceleft=123;e.braceleftbt=63731;e.braceleftmid=63730;e.braceleftmonospace=65371;e.braceleftsmall=65115;e.bracelefttp=63729;e.braceleftvertical=65079;e.braceright=125;e.bracerightbt=63742;e.bracerightmid=63741;e.bracerightmonospace=65373;e.bracerightsmall=65116;e.bracerighttp=63740;e.bracerightvertical=65080;e.bracketleft=91;e.bracketleftbt=63728;e.bracketleftex=63727;e.bracketleftmonospace=65339;e.bracketlefttp=63726;e.bracketright=93;e.bracketrightbt=63739;e.bracketrightex=63738;e.bracketrightmonospace=65341;e.bracketrighttp=63737;e.breve=728;e.brevebelowcmb=814;e.brevecmb=774;e.breveinvertedbelowcmb=815;e.breveinvertedcmb=785;e.breveinverteddoublecmb=865;e.bridgebelowcmb=810;e.bridgeinvertedbelowcmb=826;e.brokenbar=166;e.bstroke=384;e.bsuperior=63210;e.btopbar=387;e.buhiragana=12406;e.bukatakana=12502;e.bullet=8226;e.bulletinverse=9688;e.bulletoperator=8729;e.bullseye=9678;e.c=99;e.caarmenian=1390;e.cabengali=2458;e.cacute=263;e.cadeva=2330;e.cagujarati=2714;e.cagurmukhi=2586;e.calsquare=13192;e.candrabindubengali=2433;e.candrabinducmb=784;e.candrabindudeva=2305;e.candrabindugujarati=2689;e.capslock=8682;e.careof=8453;e.caron=711;e.caronbelowcmb=812;e.caroncmb=780;e.carriagereturn=8629;e.cbopomofo=12568;e.ccaron=269;e.ccedilla=231;e.ccedillaacute=7689;e.ccircle=9426;e.ccircumflex=265;e.ccurl=597;e.cdot=267;e.cdotaccent=267;e.cdsquare=13253;e.cedilla=184;e.cedillacmb=807;e.cent=162;e.centigrade=8451;e.centinferior=63199;e.centmonospace=65504;e.centoldstyle=63394;e.centsuperior=63200;e.chaarmenian=1401;e.chabengali=2459;e.chadeva=2331;e.chagujarati=2715;e.chagurmukhi=2587;e.chbopomofo=12564;e.cheabkhasiancyrillic=1213;e.checkmark=10003;e.checyrillic=1095;e.chedescenderabkhasiancyrillic=1215;e.chedescendercyrillic=1207;e.chedieresiscyrillic=1269;e.cheharmenian=1395;e.chekhakassiancyrillic=1228;e.cheverticalstrokecyrillic=1209;e.chi=967;e.chieuchacirclekorean=12919;e.chieuchaparenkorean=12823;e.chieuchcirclekorean=12905;e.chieuchkorean=12618;e.chieuchparenkorean=12809;e.chochangthai=3594;e.chochanthai=3592;e.chochingthai=3593;e.chochoethai=3596;e.chook=392;e.cieucacirclekorean=12918;e.cieucaparenkorean=12822;e.cieuccirclekorean=12904;e.cieuckorean=12616;e.cieucparenkorean=12808;e.cieucuparenkorean=12828;e.circle=9675;e.circlecopyrt=169;e.circlemultiply=8855;e.circleot=8857;e.circleplus=8853;e.circlepostalmark=12342;e.circlewithlefthalfblack=9680;e.circlewithrighthalfblack=9681;e.circumflex=710;e.circumflexbelowcmb=813;e.circumflexcmb=770;e.clear=8999;e.clickalveolar=450;e.clickdental=448;e.clicklateral=449;e.clickretroflex=451;e.club=9827;e.clubsuitblack=9827;e.clubsuitwhite=9831;e.cmcubedsquare=13220;e.cmonospace=65347;e.cmsquaredsquare=13216;e.coarmenian=1409;e.colon=58;e.colonmonetary=8353;e.colonmonospace=65306;e.colonsign=8353;e.colonsmall=65109;e.colontriangularhalfmod=721;e.colontriangularmod=720;e.comma=44;e.commaabovecmb=787;e.commaaboverightcmb=789;e.commaaccent=63171;e.commaarabic=1548;e.commaarmenian=1373;e.commainferior=63201;e.commamonospace=65292;e.commareversedabovecmb=788;e.commareversedmod=701;e.commasmall=65104;e.commasuperior=63202;e.commaturnedabovecmb=786;e.commaturnedmod=699;e.compass=9788;e.congruent=8773;e.contourintegral=8750;e.control=8963;e.controlACK=6;e.controlBEL=7;e.controlBS=8;e.controlCAN=24;e.controlCR=13;e.controlDC1=17;e.controlDC2=18;e.controlDC3=19;e.controlDC4=20;e.controlDEL=127;e.controlDLE=16;e.controlEM=25;e.controlENQ=5;e.controlEOT=4;e.controlESC=27;e.controlETB=23;e.controlETX=3;e.controlFF=12;e.controlFS=28;e.controlGS=29;e.controlHT=9;e.controlLF=10;e.controlNAK=21;e.controlNULL=0;e.controlRS=30;e.controlSI=15;e.controlSO=14;e.controlSOT=2;e.controlSTX=1;e.controlSUB=26;e.controlSYN=22;e.controlUS=31;e.controlVT=11;e.copyright=169;e.copyrightsans=63721;e.copyrightserif=63193;e.cornerbracketleft=12300;e.cornerbracketlefthalfwidth=65378;e.cornerbracketleftvertical=65089;e.cornerbracketright=12301;e.cornerbracketrighthalfwidth=65379;e.cornerbracketrightvertical=65090;e.corporationsquare=13183;e.cosquare=13255;e.coverkgsquare=13254;e.cparen=9374;e.cruzeiro=8354;e.cstretched=663;e.curlyand=8911;e.curlyor=8910;e.currency=164;e.cyrBreve=63185;e.cyrFlex=63186;e.cyrbreve=63188;e.cyrflex=63189;e.d=100;e.daarmenian=1380;e.dabengali=2470;e.dadarabic=1590;e.dadeva=2342;e.dadfinalarabic=65214;e.dadinitialarabic=65215;e.dadmedialarabic=65216;e.dagesh=1468;e.dageshhebrew=1468;e.dagger=8224;e.daggerdbl=8225;e.dagujarati=2726;e.dagurmukhi=2598;e.dahiragana=12384;e.dakatakana=12480;e.dalarabic=1583;e.dalet=1491;e.daletdagesh=64307;e.daletdageshhebrew=64307;e.dalethebrew=1491;e.dalfinalarabic=65194;e.dammaarabic=1615;e.dammalowarabic=1615;e.dammatanaltonearabic=1612;e.dammatanarabic=1612;e.danda=2404;e.dargahebrew=1447;e.dargalefthebrew=1447;e.dasiapneumatacyrilliccmb=1157;e.dblGrave=63187;e.dblanglebracketleft=12298;e.dblanglebracketleftvertical=65085;e.dblanglebracketright=12299;e.dblanglebracketrightvertical=65086;e.dblarchinvertedbelowcmb=811;e.dblarrowleft=8660;e.dblarrowright=8658;e.dbldanda=2405;e.dblgrave=63190;e.dblgravecmb=783;e.dblintegral=8748;e.dbllowline=8215;e.dbllowlinecmb=819;e.dbloverlinecmb=831;e.dblprimemod=698;e.dblverticalbar=8214;e.dblverticallineabovecmb=782;e.dbopomofo=12553;e.dbsquare=13256;e.dcaron=271;e.dcedilla=7697;e.dcircle=9427;e.dcircumflexbelow=7699;e.dcroat=273;e.ddabengali=2465;e.ddadeva=2337;e.ddagujarati=2721;e.ddagurmukhi=2593;e.ddalarabic=1672;e.ddalfinalarabic=64393;e.dddhadeva=2396;e.ddhabengali=2466;e.ddhadeva=2338;e.ddhagujarati=2722;e.ddhagurmukhi=2594;e.ddotaccent=7691;e.ddotbelow=7693;e.decimalseparatorarabic=1643;e.decimalseparatorpersian=1643;e.decyrillic=1076;e.degree=176;e.dehihebrew=1453;e.dehiragana=12391;e.deicoptic=1007;e.dekatakana=12487;e.deleteleft=9003;e.deleteright=8998;e.delta=948;e.deltaturned=397;e.denominatorminusonenumeratorbengali=2552;e.dezh=676;e.dhabengali=2471;e.dhadeva=2343;e.dhagujarati=2727;e.dhagurmukhi=2599;e.dhook=599;e.dialytikatonos=901;e.dialytikatonoscmb=836;e.diamond=9830;e.diamondsuitwhite=9826;e.dieresis=168;e.dieresisacute=63191;e.dieresisbelowcmb=804;e.dieresiscmb=776;e.dieresisgrave=63192;e.dieresistonos=901;e.dihiragana=12386;e.dikatakana=12482;e.dittomark=12291;e.divide=247;e.divides=8739;e.divisionslash=8725;e.djecyrillic=1106;e.dkshade=9619;e.dlinebelow=7695;e.dlsquare=13207;e.dmacron=273;e.dmonospace=65348;e.dnblock=9604;e.dochadathai=3598;e.dodekthai=3604;e.dohiragana=12393;e.dokatakana=12489;e.dollar=36;e.dollarinferior=63203;e.dollarmonospace=65284;e.dollaroldstyle=63268;e.dollarsmall=65129;e.dollarsuperior=63204;e.dong=8363;e.dorusquare=13094;e.dotaccent=729;e.dotaccentcmb=775;e.dotbelowcmb=803;e.dotbelowcomb=803;e.dotkatakana=12539;e.dotlessi=305;e.dotlessj=63166;e.dotlessjstrokehook=644;e.dotmath=8901;e.dottedcircle=9676;e.doubleyodpatah=64287;e.doubleyodpatahhebrew=64287;e.downtackbelowcmb=798;e.downtackmod=725;e.dparen=9375;e.dsuperior=63211;e.dtail=598;e.dtopbar=396;e.duhiragana=12389;e.dukatakana=12485;e.dz=499;e.dzaltone=675;e.dzcaron=454;e.dzcurl=677;e.dzeabkhasiancyrillic=1249;e.dzecyrillic=1109;e.dzhecyrillic=1119;e.e=101;e.eacute=233;e.earth=9793;e.ebengali=2447;e.ebopomofo=12572;e.ebreve=277;e.ecandradeva=2317;e.ecandragujarati=2701;e.ecandravowelsigndeva=2373;e.ecandravowelsigngujarati=2757;e.ecaron=283;e.ecedillabreve=7709;e.echarmenian=1381;e.echyiwnarmenian=1415;e.ecircle=9428;e.ecircumflex=234;e.ecircumflexacute=7871;e.ecircumflexbelow=7705;e.ecircumflexdotbelow=7879;e.ecircumflexgrave=7873;e.ecircumflexhookabove=7875;e.ecircumflextilde=7877;e.ecyrillic=1108;e.edblgrave=517;e.edeva=2319;e.edieresis=235;e.edot=279;e.edotaccent=279;e.edotbelow=7865;e.eegurmukhi=2575;e.eematragurmukhi=2631;e.efcyrillic=1092;e.egrave=232;e.egujarati=2703;e.eharmenian=1383;e.ehbopomofo=12573;e.ehiragana=12360;e.ehookabove=7867;e.eibopomofo=12575;e.eight=56;e.eightarabic=1640;e.eightbengali=2542;e.eightcircle=9319;e.eightcircleinversesansserif=10129;e.eightdeva=2414;e.eighteencircle=9329;e.eighteenparen=9349;e.eighteenperiod=9369;e.eightgujarati=2798;e.eightgurmukhi=2670;e.eighthackarabic=1640;e.eighthangzhou=12328;e.eighthnotebeamed=9835;e.eightideographicparen=12839;e.eightinferior=8328;e.eightmonospace=65304;e.eightoldstyle=63288;e.eightparen=9339;e.eightperiod=9359;e.eightpersian=1784;e.eightroman=8567;e.eightsuperior=8312;e.eightthai=3672;e.einvertedbreve=519;e.eiotifiedcyrillic=1125;e.ekatakana=12456;e.ekatakanahalfwidth=65396;e.ekonkargurmukhi=2676;e.ekorean=12628;e.elcyrillic=1083;e.element=8712;e.elevencircle=9322;e.elevenparen=9342;e.elevenperiod=9362;e.elevenroman=8570;e.ellipsis=8230;e.ellipsisvertical=8942;e.emacron=275;e.emacronacute=7703;e.emacrongrave=7701;e.emcyrillic=1084;e.emdash=8212;e.emdashvertical=65073;e.emonospace=65349;e.emphasismarkarmenian=1371;e.emptyset=8709;e.enbopomofo=12579;e.encyrillic=1085;e.endash=8211;e.endashvertical=65074;e.endescendercyrillic=1187;e.eng=331;e.engbopomofo=12581;e.enghecyrillic=1189;e.enhookcyrillic=1224;e.enspace=8194;e.eogonek=281;e.eokorean=12627;e.eopen=603;e.eopenclosed=666;e.eopenreversed=604;e.eopenreversedclosed=606;e.eopenreversedhook=605;e.eparen=9376;e.epsilon=949;e.epsilontonos=941;e.equal=61;e.equalmonospace=65309;e.equalsmall=65126;e.equalsuperior=8316;e.equivalence=8801;e.erbopomofo=12582;e.ercyrillic=1088;e.ereversed=600;e.ereversedcyrillic=1101;e.escyrillic=1089;e.esdescendercyrillic=1195;e.esh=643;e.eshcurl=646;e.eshortdeva=2318;e.eshortvowelsigndeva=2374;e.eshreversedloop=426;e.eshsquatreversed=645;e.esmallhiragana=12359;e.esmallkatakana=12455;e.esmallkatakanahalfwidth=65386;e.estimated=8494;e.esuperior=63212;e.eta=951;e.etarmenian=1384;e.etatonos=942;e.eth=240;e.etilde=7869;e.etildebelow=7707;e.etnahtafoukhhebrew=1425;e.etnahtafoukhlefthebrew=1425;e.etnahtahebrew=1425;e.etnahtalefthebrew=1425;e.eturned=477;e.eukorean=12641;e.euro=8364;e.evowelsignbengali=2503;e.evowelsigndeva=2375;e.evowelsigngujarati=2759;e.exclam=33;e.exclamarmenian=1372;e.exclamdbl=8252;e.exclamdown=161;e.exclamdownsmall=63393;e.exclammonospace=65281;e.exclamsmall=63265;e.existential=8707;e.ezh=658;e.ezhcaron=495;e.ezhcurl=659;e.ezhreversed=441;e.ezhtail=442;e.f=102;e.fadeva=2398;e.fagurmukhi=2654;e.fahrenheit=8457;e.fathaarabic=1614;e.fathalowarabic=1614;e.fathatanarabic=1611;e.fbopomofo=12552;e.fcircle=9429;e.fdotaccent=7711;e.feharabic=1601;e.feharmenian=1414;e.fehfinalarabic=65234;e.fehinitialarabic=65235;e.fehmedialarabic=65236;e.feicoptic=997;e.female=9792;e.ff=64256;e.f_f=64256;e.ffi=64259;e.f_f_i=64259;e.ffl=64260;e.f_f_l=64260;e.fi=64257;e.f_i=64257;e.fifteencircle=9326;e.fifteenparen=9346;e.fifteenperiod=9366;e.figuredash=8210;e.filledbox=9632;e.filledrect=9644;e.finalkaf=1498;e.finalkafdagesh=64314;e.finalkafdageshhebrew=64314;e.finalkafhebrew=1498;e.finalmem=1501;e.finalmemhebrew=1501;e.finalnun=1503;e.finalnunhebrew=1503;e.finalpe=1507;e.finalpehebrew=1507;e.finaltsadi=1509;e.finaltsadihebrew=1509;e.firsttonechinese=713;e.fisheye=9673;e.fitacyrillic=1139;e.five=53;e.fivearabic=1637;e.fivebengali=2539;e.fivecircle=9316;e.fivecircleinversesansserif=10126;e.fivedeva=2411;e.fiveeighths=8541;e.fivegujarati=2795;e.fivegurmukhi=2667;e.fivehackarabic=1637;e.fivehangzhou=12325;e.fiveideographicparen=12836;e.fiveinferior=8325;e.fivemonospace=65301;e.fiveoldstyle=63285;e.fiveparen=9336;e.fiveperiod=9356;e.fivepersian=1781;e.fiveroman=8564;e.fivesuperior=8309;e.fivethai=3669;e.fl=64258;e.f_l=64258;e.florin=402;e.fmonospace=65350;e.fmsquare=13209;e.fofanthai=3615;e.fofathai=3613;e.fongmanthai=3663;e.forall=8704;e.four=52;e.fourarabic=1636;e.fourbengali=2538;e.fourcircle=9315;e.fourcircleinversesansserif=10125;e.fourdeva=2410;e.fourgujarati=2794;e.fourgurmukhi=2666;e.fourhackarabic=1636;e.fourhangzhou=12324;e.fourideographicparen=12835;e.fourinferior=8324;e.fourmonospace=65300;e.fournumeratorbengali=2551;e.fouroldstyle=63284;e.fourparen=9335;e.fourperiod=9355;e.fourpersian=1780;e.fourroman=8563;e.foursuperior=8308;e.fourteencircle=9325;e.fourteenparen=9345;e.fourteenperiod=9365;e.fourthai=3668;e.fourthtonechinese=715;e.fparen=9377;e.fraction=8260;e.franc=8355;e.g=103;e.gabengali=2455;e.gacute=501;e.gadeva=2327;e.gafarabic=1711;e.gaffinalarabic=64403;e.gafinitialarabic=64404;e.gafmedialarabic=64405;e.gagujarati=2711;e.gagurmukhi=2583;e.gahiragana=12364;e.gakatakana=12460;e.gamma=947;e.gammalatinsmall=611;e.gammasuperior=736;e.gangiacoptic=1003;e.gbopomofo=12557;e.gbreve=287;e.gcaron=487;e.gcedilla=291;e.gcircle=9430;e.gcircumflex=285;e.gcommaaccent=291;e.gdot=289;e.gdotaccent=289;e.gecyrillic=1075;e.gehiragana=12370;e.gekatakana=12466;e.geometricallyequal=8785;e.gereshaccenthebrew=1436;e.gereshhebrew=1523;e.gereshmuqdamhebrew=1437;e.germandbls=223;e.gershayimaccenthebrew=1438;e.gershayimhebrew=1524;e.getamark=12307;e.ghabengali=2456;e.ghadarmenian=1394;e.ghadeva=2328;e.ghagujarati=2712;e.ghagurmukhi=2584;e.ghainarabic=1594;e.ghainfinalarabic=65230;e.ghaininitialarabic=65231;e.ghainmedialarabic=65232;e.ghemiddlehookcyrillic=1173;e.ghestrokecyrillic=1171;e.gheupturncyrillic=1169;e.ghhadeva=2394;e.ghhagurmukhi=2650;e.ghook=608;e.ghzsquare=13203;e.gihiragana=12366;e.gikatakana=12462;e.gimarmenian=1379;e.gimel=1490;e.gimeldagesh=64306;e.gimeldageshhebrew=64306;e.gimelhebrew=1490;e.gjecyrillic=1107;e.glottalinvertedstroke=446;e.glottalstop=660;e.glottalstopinverted=662;e.glottalstopmod=704;e.glottalstopreversed=661;e.glottalstopreversedmod=705;e.glottalstopreversedsuperior=740;e.glottalstopstroke=673;e.glottalstopstrokereversed=674;e.gmacron=7713;e.gmonospace=65351;e.gohiragana=12372;e.gokatakana=12468;e.gparen=9378;e.gpasquare=13228;e.gradient=8711;e.grave=96;e.gravebelowcmb=790;e.gravecmb=768;e.gravecomb=768;e.gravedeva=2387;e.gravelowmod=718;e.gravemonospace=65344;e.gravetonecmb=832;e.greater=62;e.greaterequal=8805;e.greaterequalorless=8923;e.greatermonospace=65310;e.greaterorequivalent=8819;e.greaterorless=8823;e.greateroverequal=8807;e.greatersmall=65125;e.gscript=609;e.gstroke=485;e.guhiragana=12368;e.guillemotleft=171;e.guillemotright=187;e.guilsinglleft=8249;e.guilsinglright=8250;e.gukatakana=12464;e.guramusquare=13080;e.gysquare=13257;e.h=104;e.haabkhasiancyrillic=1193;e.haaltonearabic=1729;e.habengali=2489;e.hadescendercyrillic=1203;e.hadeva=2361;e.hagujarati=2745;e.hagurmukhi=2617;e.haharabic=1581;e.hahfinalarabic=65186;e.hahinitialarabic=65187;e.hahiragana=12399;e.hahmedialarabic=65188;e.haitusquare=13098;e.hakatakana=12495;e.hakatakanahalfwidth=65418;e.halantgurmukhi=2637;e.hamzaarabic=1569;e.hamzalowarabic=1569;e.hangulfiller=12644;e.hardsigncyrillic=1098;e.harpoonleftbarbup=8636;e.harpoonrightbarbup=8640;e.hasquare=13258;e.hatafpatah=1458;e.hatafpatah16=1458;e.hatafpatah23=1458;e.hatafpatah2f=1458;e.hatafpatahhebrew=1458;e.hatafpatahnarrowhebrew=1458;e.hatafpatahquarterhebrew=1458;e.hatafpatahwidehebrew=1458;e.hatafqamats=1459;e.hatafqamats1b=1459;e.hatafqamats28=1459;e.hatafqamats34=1459;e.hatafqamatshebrew=1459;e.hatafqamatsnarrowhebrew=1459;e.hatafqamatsquarterhebrew=1459;e.hatafqamatswidehebrew=1459;e.hatafsegol=1457;e.hatafsegol17=1457;e.hatafsegol24=1457;e.hatafsegol30=1457;e.hatafsegolhebrew=1457;e.hatafsegolnarrowhebrew=1457;e.hatafsegolquarterhebrew=1457;e.hatafsegolwidehebrew=1457;e.hbar=295;e.hbopomofo=12559;e.hbrevebelow=7723;e.hcedilla=7721;e.hcircle=9431;e.hcircumflex=293;e.hdieresis=7719;e.hdotaccent=7715;e.hdotbelow=7717;e.he=1492;e.heart=9829;e.heartsuitblack=9829;e.heartsuitwhite=9825;e.hedagesh=64308;e.hedageshhebrew=64308;e.hehaltonearabic=1729;e.heharabic=1607;e.hehebrew=1492;e.hehfinalaltonearabic=64423;e.hehfinalalttwoarabic=65258;e.hehfinalarabic=65258;e.hehhamzaabovefinalarabic=64421;e.hehhamzaaboveisolatedarabic=64420;e.hehinitialaltonearabic=64424;e.hehinitialarabic=65259;e.hehiragana=12408;e.hehmedialaltonearabic=64425;e.hehmedialarabic=65260;e.heiseierasquare=13179;e.hekatakana=12504;e.hekatakanahalfwidth=65421;e.hekutaarusquare=13110;e.henghook=615;e.herutusquare=13113;e.het=1495;e.hethebrew=1495;e.hhook=614;e.hhooksuperior=689;e.hieuhacirclekorean=12923;e.hieuhaparenkorean=12827;e.hieuhcirclekorean=12909;e.hieuhkorean=12622;e.hieuhparenkorean=12813;e.hihiragana=12402;e.hikatakana=12498;e.hikatakanahalfwidth=65419;e.hiriq=1460;e.hiriq14=1460;e.hiriq21=1460;e.hiriq2d=1460;e.hiriqhebrew=1460;e.hiriqnarrowhebrew=1460;e.hiriqquarterhebrew=1460;e.hiriqwidehebrew=1460;e.hlinebelow=7830;e.hmonospace=65352;e.hoarmenian=1392;e.hohipthai=3627;e.hohiragana=12411;e.hokatakana=12507;e.hokatakanahalfwidth=65422;e.holam=1465;e.holam19=1465;e.holam26=1465;e.holam32=1465;e.holamhebrew=1465;e.holamnarrowhebrew=1465;e.holamquarterhebrew=1465;e.holamwidehebrew=1465;e.honokhukthai=3630;e.hookabovecomb=777;e.hookcmb=777;e.hookpalatalizedbelowcmb=801;e.hookretroflexbelowcmb=802;e.hoonsquare=13122;e.horicoptic=1001;e.horizontalbar=8213;e.horncmb=795;e.hotsprings=9832;e.house=8962;e.hparen=9379;e.hsuperior=688;e.hturned=613;e.huhiragana=12405;e.huiitosquare=13107;e.hukatakana=12501;e.hukatakanahalfwidth=65420;e.hungarumlaut=733;e.hungarumlautcmb=779;e.hv=405;e.hyphen=45;e.hypheninferior=63205;e.hyphenmonospace=65293;e.hyphensmall=65123;e.hyphensuperior=63206;e.hyphentwo=8208;e.i=105;e.iacute=237;e.iacyrillic=1103;e.ibengali=2439;e.ibopomofo=12583;e.ibreve=301;e.icaron=464;e.icircle=9432;e.icircumflex=238;e.icyrillic=1110;e.idblgrave=521;e.ideographearthcircle=12943;e.ideographfirecircle=12939;e.ideographicallianceparen=12863;e.ideographiccallparen=12858;e.ideographiccentrecircle=12965;e.ideographicclose=12294;e.ideographiccomma=12289;e.ideographiccommaleft=65380;e.ideographiccongratulationparen=12855;e.ideographiccorrectcircle=12963;e.ideographicearthparen=12847;e.ideographicenterpriseparen=12861;e.ideographicexcellentcircle=12957;e.ideographicfestivalparen=12864;e.ideographicfinancialcircle=12950;e.ideographicfinancialparen=12854;e.ideographicfireparen=12843;e.ideographichaveparen=12850;e.ideographichighcircle=12964;e.ideographiciterationmark=12293;e.ideographiclaborcircle=12952;e.ideographiclaborparen=12856;e.ideographicleftcircle=12967;e.ideographiclowcircle=12966;e.ideographicmedicinecircle=12969;e.ideographicmetalparen=12846;e.ideographicmoonparen=12842;e.ideographicnameparen=12852;e.ideographicperiod=12290;e.ideographicprintcircle=12958;e.ideographicreachparen=12867;e.ideographicrepresentparen=12857;e.ideographicresourceparen=12862;e.ideographicrightcircle=12968;e.ideographicsecretcircle=12953;e.ideographicselfparen=12866;e.ideographicsocietyparen=12851;e.ideographicspace=12288;e.ideographicspecialparen=12853;e.ideographicstockparen=12849;e.ideographicstudyparen=12859;e.ideographicsunparen=12848;e.ideographicsuperviseparen=12860;e.ideographicwaterparen=12844;e.ideographicwoodparen=12845;e.ideographiczero=12295;e.ideographmetalcircle=12942;e.ideographmooncircle=12938;e.ideographnamecircle=12948;e.ideographsuncircle=12944;e.ideographwatercircle=12940;e.ideographwoodcircle=12941;e.ideva=2311;e.idieresis=239;e.idieresisacute=7727;e.idieresiscyrillic=1253;e.idotbelow=7883;e.iebrevecyrillic=1239;e.iecyrillic=1077;e.ieungacirclekorean=12917;e.ieungaparenkorean=12821;e.ieungcirclekorean=12903;e.ieungkorean=12615;e.ieungparenkorean=12807;e.igrave=236;e.igujarati=2695;e.igurmukhi=2567;e.ihiragana=12356;e.ihookabove=7881;e.iibengali=2440;e.iicyrillic=1080;e.iideva=2312;e.iigujarati=2696;e.iigurmukhi=2568;e.iimatragurmukhi=2624;e.iinvertedbreve=523;e.iishortcyrillic=1081;e.iivowelsignbengali=2496;e.iivowelsigndeva=2368;e.iivowelsigngujarati=2752;e.ij=307;e.ikatakana=12452;e.ikatakanahalfwidth=65394;e.ikorean=12643;e.ilde=732;e.iluyhebrew=1452;e.imacron=299;e.imacroncyrillic=1251;e.imageorapproximatelyequal=8787;e.imatragurmukhi=2623;e.imonospace=65353;e.increment=8710;e.infinity=8734;e.iniarmenian=1387;e.integral=8747;e.integralbottom=8993;e.integralbt=8993;e.integralex=63733;e.integraltop=8992;e.integraltp=8992;e.intersection=8745;e.intisquare=13061;e.invbullet=9688;e.invcircle=9689;e.invsmileface=9787;e.iocyrillic=1105;e.iogonek=303;e.iota=953;e.iotadieresis=970;e.iotadieresistonos=912;e.iotalatin=617;e.iotatonos=943;e.iparen=9380;e.irigurmukhi=2674;e.ismallhiragana=12355;e.ismallkatakana=12451;e.ismallkatakanahalfwidth=65384;e.issharbengali=2554;e.istroke=616;e.isuperior=63213;e.iterationhiragana=12445;e.iterationkatakana=12541;e.itilde=297;e.itildebelow=7725;e.iubopomofo=12585;e.iucyrillic=1102;e.ivowelsignbengali=2495;e.ivowelsigndeva=2367;e.ivowelsigngujarati=2751;e.izhitsacyrillic=1141;e.izhitsadblgravecyrillic=1143;e.j=106;e.jaarmenian=1393;e.jabengali=2460;e.jadeva=2332;e.jagujarati=2716;e.jagurmukhi=2588;e.jbopomofo=12560;e.jcaron=496;e.jcircle=9433;e.jcircumflex=309;e.jcrossedtail=669;e.jdotlessstroke=607;e.jecyrillic=1112;e.jeemarabic=1580;e.jeemfinalarabic=65182;e.jeeminitialarabic=65183;e.jeemmedialarabic=65184;e.jeharabic=1688;e.jehfinalarabic=64395;e.jhabengali=2461;e.jhadeva=2333;e.jhagujarati=2717;e.jhagurmukhi=2589;e.jheharmenian=1403;e.jis=12292;e.jmonospace=65354;e.jparen=9381;e.jsuperior=690;e.k=107;e.kabashkircyrillic=1185;e.kabengali=2453;e.kacute=7729;e.kacyrillic=1082;e.kadescendercyrillic=1179;e.kadeva=2325;e.kaf=1499;e.kafarabic=1603;e.kafdagesh=64315;e.kafdageshhebrew=64315;e.kaffinalarabic=65242;e.kafhebrew=1499;e.kafinitialarabic=65243;e.kafmedialarabic=65244;e.kafrafehebrew=64333;e.kagujarati=2709;e.kagurmukhi=2581;e.kahiragana=12363;e.kahookcyrillic=1220;e.kakatakana=12459;e.kakatakanahalfwidth=65398;e.kappa=954;e.kappasymbolgreek=1008;e.kapyeounmieumkorean=12657;e.kapyeounphieuphkorean=12676;e.kapyeounpieupkorean=12664;e.kapyeounssangpieupkorean=12665;e.karoriisquare=13069;e.kashidaautoarabic=1600;e.kashidaautonosidebearingarabic=1600;e.kasmallkatakana=12533;e.kasquare=13188;e.kasraarabic=1616;e.kasratanarabic=1613;e.kastrokecyrillic=1183;e.katahiraprolongmarkhalfwidth=65392;e.kaverticalstrokecyrillic=1181;e.kbopomofo=12558;e.kcalsquare=13193;e.kcaron=489;e.kcedilla=311;e.kcircle=9434;e.kcommaaccent=311;e.kdotbelow=7731;e.keharmenian=1412;e.kehiragana=12369;e.kekatakana=12465;e.kekatakanahalfwidth=65401;e.kenarmenian=1391;e.kesmallkatakana=12534;e.kgreenlandic=312;e.khabengali=2454;e.khacyrillic=1093;e.khadeva=2326;e.khagujarati=2710;e.khagurmukhi=2582;e.khaharabic=1582;e.khahfinalarabic=65190;e.khahinitialarabic=65191;e.khahmedialarabic=65192;e.kheicoptic=999;e.khhadeva=2393;e.khhagurmukhi=2649;e.khieukhacirclekorean=12920;e.khieukhaparenkorean=12824;e.khieukhcirclekorean=12906;e.khieukhkorean=12619;e.khieukhparenkorean=12810;e.khokhaithai=3586;e.khokhonthai=3589;e.khokhuatthai=3587;e.khokhwaithai=3588;e.khomutthai=3675;e.khook=409;e.khorakhangthai=3590;e.khzsquare=13201;e.kihiragana=12365;e.kikatakana=12461;e.kikatakanahalfwidth=65399;e.kiroguramusquare=13077;e.kiromeetorusquare=13078;e.kirosquare=13076;e.kiyeokacirclekorean=12910;e.kiyeokaparenkorean=12814;e.kiyeokcirclekorean=12896;e.kiyeokkorean=12593;e.kiyeokparenkorean=12800;e.kiyeoksioskorean=12595;e.kjecyrillic=1116;e.klinebelow=7733;e.klsquare=13208;e.kmcubedsquare=13222;e.kmonospace=65355;e.kmsquaredsquare=13218;e.kohiragana=12371;e.kohmsquare=13248;e.kokaithai=3585;e.kokatakana=12467;e.kokatakanahalfwidth=65402;e.kooposquare=13086;e.koppacyrillic=1153;e.koreanstandardsymbol=12927;e.koroniscmb=835;e.kparen=9382;e.kpasquare=13226;e.ksicyrillic=1135;e.ktsquare=13263;e.kturned=670;e.kuhiragana=12367;e.kukatakana=12463;e.kukatakanahalfwidth=65400;e.kvsquare=13240;e.kwsquare=13246;e.l=108;e.labengali=2482;e.lacute=314;e.ladeva=2354;e.lagujarati=2738;e.lagurmukhi=2610;e.lakkhangyaothai=3653;e.lamaleffinalarabic=65276;e.lamalefhamzaabovefinalarabic=65272;e.lamalefhamzaaboveisolatedarabic=65271;e.lamalefhamzabelowfinalarabic=65274;e.lamalefhamzabelowisolatedarabic=65273;e.lamalefisolatedarabic=65275;e.lamalefmaddaabovefinalarabic=65270;e.lamalefmaddaaboveisolatedarabic=65269;e.lamarabic=1604;e.lambda=955;e.lambdastroke=411;e.lamed=1500;e.lameddagesh=64316;e.lameddageshhebrew=64316;e.lamedhebrew=1500;e.lamfinalarabic=65246;e.lamhahinitialarabic=64714;e.laminitialarabic=65247;e.lamjeeminitialarabic=64713;e.lamkhahinitialarabic=64715;e.lamlamhehisolatedarabic=65010;e.lammedialarabic=65248;e.lammeemhahinitialarabic=64904;e.lammeeminitialarabic=64716;e.largecircle=9711;e.lbar=410;e.lbelt=620;e.lbopomofo=12556;e.lcaron=318;e.lcedilla=316;e.lcircle=9435;e.lcircumflexbelow=7741;e.lcommaaccent=316;e.ldot=320;e.ldotaccent=320;e.ldotbelow=7735;e.ldotbelowmacron=7737;e.leftangleabovecmb=794;e.lefttackbelowcmb=792;e.less=60;e.lessequal=8804;e.lessequalorgreater=8922;e.lessmonospace=65308;e.lessorequivalent=8818;e.lessorgreater=8822;e.lessoverequal=8806;e.lesssmall=65124;e.lezh=622;e.lfblock=9612;e.lhookretroflex=621;e.lira=8356;e.liwnarmenian=1388;e.lj=457;e.ljecyrillic=1113;e.ll=63168;e.lladeva=2355;e.llagujarati=2739;e.llinebelow=7739;e.llladeva=2356;e.llvocalicbengali=2529;e.llvocalicdeva=2401;e.llvocalicvowelsignbengali=2531;e.llvocalicvowelsigndeva=2403;e.lmiddletilde=619;e.lmonospace=65356;e.lmsquare=13264;e.lochulathai=3628;e.logicaland=8743;e.logicalnot=172;e.logicalnotreversed=8976;e.logicalor=8744;e.lolingthai=3621;e.longs=383;e.lowlinecenterline=65102;e.lowlinecmb=818;e.lowlinedashed=65101;e.lozenge=9674;e.lparen=9383;e.lslash=322;e.lsquare=8467;e.lsuperior=63214;e.ltshade=9617;e.luthai=3622;e.lvocalicbengali=2444;e.lvocalicdeva=2316;e.lvocalicvowelsignbengali=2530;e.lvocalicvowelsigndeva=2402;e.lxsquare=13267;e.m=109;e.mabengali=2478;e.macron=175;e.macronbelowcmb=817;e.macroncmb=772;e.macronlowmod=717;e.macronmonospace=65507;e.macute=7743;e.madeva=2350;e.magujarati=2734;e.magurmukhi=2606;e.mahapakhhebrew=1444;e.mahapakhlefthebrew=1444;e.mahiragana=12414;e.maichattawalowleftthai=63637;e.maichattawalowrightthai=63636;e.maichattawathai=3659;e.maichattawaupperleftthai=63635;e.maieklowleftthai=63628;e.maieklowrightthai=63627;e.maiekthai=3656;e.maiekupperleftthai=63626;e.maihanakatleftthai=63620;e.maihanakatthai=3633;e.maitaikhuleftthai=63625;e.maitaikhuthai=3655;e.maitholowleftthai=63631;e.maitholowrightthai=63630;e.maithothai=3657;e.maithoupperleftthai=63629;e.maitrilowleftthai=63634;e.maitrilowrightthai=63633;e.maitrithai=3658;e.maitriupperleftthai=63632;e.maiyamokthai=3654;e.makatakana=12510;e.makatakanahalfwidth=65423;e.male=9794;e.mansyonsquare=13127;e.maqafhebrew=1470;e.mars=9794;e.masoracirclehebrew=1455;e.masquare=13187;e.mbopomofo=12551;e.mbsquare=13268;e.mcircle=9436;e.mcubedsquare=13221;e.mdotaccent=7745;e.mdotbelow=7747;e.meemarabic=1605;e.meemfinalarabic=65250;e.meeminitialarabic=65251;e.meemmedialarabic=65252;e.meemmeeminitialarabic=64721;e.meemmeemisolatedarabic=64584;e.meetorusquare=13133;e.mehiragana=12417;e.meizierasquare=13182;e.mekatakana=12513;e.mekatakanahalfwidth=65426;e.mem=1502;e.memdagesh=64318;e.memdageshhebrew=64318;e.memhebrew=1502;e.menarmenian=1396;e.merkhahebrew=1445;e.merkhakefulahebrew=1446;e.merkhakefulalefthebrew=1446;e.merkhalefthebrew=1445;e.mhook=625;e.mhzsquare=13202;e.middledotkatakanahalfwidth=65381;e.middot=183;e.mieumacirclekorean=12914;e.mieumaparenkorean=12818;e.mieumcirclekorean=12900;e.mieumkorean=12609;e.mieumpansioskorean=12656;e.mieumparenkorean=12804;e.mieumpieupkorean=12654;e.mieumsioskorean=12655;e.mihiragana=12415;e.mikatakana=12511;e.mikatakanahalfwidth=65424;e.minus=8722;e.minusbelowcmb=800;e.minuscircle=8854;e.minusmod=727;e.minusplus=8723;e.minute=8242;e.miribaarusquare=13130;e.mirisquare=13129;e.mlonglegturned=624;e.mlsquare=13206;e.mmcubedsquare=13219;e.mmonospace=65357;e.mmsquaredsquare=13215;e.mohiragana=12418;e.mohmsquare=13249;e.mokatakana=12514;e.mokatakanahalfwidth=65427;e.molsquare=13270;e.momathai=3617;e.moverssquare=13223;e.moverssquaredsquare=13224;e.mparen=9384;e.mpasquare=13227;e.mssquare=13235;e.msuperior=63215;e.mturned=623;e.mu=181;e.mu1=181;e.muasquare=13186;e.muchgreater=8811;e.muchless=8810;e.mufsquare=13196;e.mugreek=956;e.mugsquare=13197;e.muhiragana=12416;e.mukatakana=12512;e.mukatakanahalfwidth=65425;e.mulsquare=13205;e.multiply=215;e.mumsquare=13211;e.munahhebrew=1443;e.munahlefthebrew=1443;e.musicalnote=9834;e.musicalnotedbl=9835;e.musicflatsign=9837;e.musicsharpsign=9839;e.mussquare=13234;e.muvsquare=13238;e.muwsquare=13244;e.mvmegasquare=13241;e.mvsquare=13239;e.mwmegasquare=13247;e.mwsquare=13245;e.n=110;e.nabengali=2472;e.nabla=8711;e.nacute=324;e.nadeva=2344;e.nagujarati=2728;e.nagurmukhi=2600;e.nahiragana=12394;e.nakatakana=12490;e.nakatakanahalfwidth=65413;e.napostrophe=329;e.nasquare=13185;e.nbopomofo=12555;e.nbspace=160;e.ncaron=328;e.ncedilla=326;e.ncircle=9437;e.ncircumflexbelow=7755;e.ncommaaccent=326;e.ndotaccent=7749;e.ndotbelow=7751;e.nehiragana=12397;e.nekatakana=12493;e.nekatakanahalfwidth=65416;e.newsheqelsign=8362;e.nfsquare=13195;e.ngabengali=2457;e.ngadeva=2329;e.ngagujarati=2713;e.ngagurmukhi=2585;e.ngonguthai=3591;e.nhiragana=12435;e.nhookleft=626;e.nhookretroflex=627;e.nieunacirclekorean=12911;e.nieunaparenkorean=12815;e.nieuncieuckorean=12597;e.nieuncirclekorean=12897;e.nieunhieuhkorean=12598;e.nieunkorean=12596;e.nieunpansioskorean=12648;e.nieunparenkorean=12801;e.nieunsioskorean=12647;e.nieuntikeutkorean=12646;e.nihiragana=12395;e.nikatakana=12491;e.nikatakanahalfwidth=65414;e.nikhahitleftthai=63641;e.nikhahitthai=3661;e.nine=57;e.ninearabic=1641;e.ninebengali=2543;e.ninecircle=9320;e.ninecircleinversesansserif=10130;e.ninedeva=2415;e.ninegujarati=2799;e.ninegurmukhi=2671;e.ninehackarabic=1641;e.ninehangzhou=12329;e.nineideographicparen=12840;e.nineinferior=8329;e.ninemonospace=65305;e.nineoldstyle=63289;e.nineparen=9340;e.nineperiod=9360;e.ninepersian=1785;e.nineroman=8568;e.ninesuperior=8313;e.nineteencircle=9330;e.nineteenparen=9350;e.nineteenperiod=9370;e.ninethai=3673;e.nj=460;e.njecyrillic=1114;e.nkatakana=12531;e.nkatakanahalfwidth=65437;e.nlegrightlong=414;e.nlinebelow=7753;e.nmonospace=65358;e.nmsquare=13210;e.nnabengali=2467;e.nnadeva=2339;e.nnagujarati=2723;e.nnagurmukhi=2595;e.nnnadeva=2345;e.nohiragana=12398;e.nokatakana=12494;e.nokatakanahalfwidth=65417;e.nonbreakingspace=160;e.nonenthai=3603;e.nonuthai=3609;e.noonarabic=1606;e.noonfinalarabic=65254;e.noonghunnaarabic=1722;e.noonghunnafinalarabic=64415;e.nooninitialarabic=65255;e.noonjeeminitialarabic=64722;e.noonjeemisolatedarabic=64587;e.noonmedialarabic=65256;e.noonmeeminitialarabic=64725;e.noonmeemisolatedarabic=64590;e.noonnoonfinalarabic=64653;e.notcontains=8716;e.notelement=8713;e.notelementof=8713;e.notequal=8800;e.notgreater=8815;e.notgreaternorequal=8817;e.notgreaternorless=8825;e.notidentical=8802;e.notless=8814;e.notlessnorequal=8816;e.notparallel=8742;e.notprecedes=8832;e.notsubset=8836;e.notsucceeds=8833;e.notsuperset=8837;e.nowarmenian=1398;e.nparen=9385;e.nssquare=13233;e.nsuperior=8319;e.ntilde=241;e.nu=957;e.nuhiragana=12396;e.nukatakana=12492;e.nukatakanahalfwidth=65415;e.nuktabengali=2492;e.nuktadeva=2364;e.nuktagujarati=2748;e.nuktagurmukhi=2620;e.numbersign=35;e.numbersignmonospace=65283;e.numbersignsmall=65119;e.numeralsigngreek=884;e.numeralsignlowergreek=885;e.numero=8470;e.nun=1504;e.nundagesh=64320;e.nundageshhebrew=64320;e.nunhebrew=1504;e.nvsquare=13237;e.nwsquare=13243;e.nyabengali=2462;e.nyadeva=2334;e.nyagujarati=2718;e.nyagurmukhi=2590;e.o=111;e.oacute=243;e.oangthai=3629;e.obarred=629;e.obarredcyrillic=1257;e.obarreddieresiscyrillic=1259;e.obengali=2451;e.obopomofo=12571;e.obreve=335;e.ocandradeva=2321;e.ocandragujarati=2705;e.ocandravowelsigndeva=2377;e.ocandravowelsigngujarati=2761;e.ocaron=466;e.ocircle=9438;e.ocircumflex=244;e.ocircumflexacute=7889;e.ocircumflexdotbelow=7897;e.ocircumflexgrave=7891;e.ocircumflexhookabove=7893;e.ocircumflextilde=7895;e.ocyrillic=1086;e.odblacute=337;e.odblgrave=525;e.odeva=2323;e.odieresis=246;e.odieresiscyrillic=1255;e.odotbelow=7885;e.oe=339;e.oekorean=12634;e.ogonek=731;e.ogonekcmb=808;e.ograve=242;e.ogujarati=2707;e.oharmenian=1413;e.ohiragana=12362;e.ohookabove=7887;e.ohorn=417;e.ohornacute=7899;e.ohorndotbelow=7907;e.ohorngrave=7901;e.ohornhookabove=7903;e.ohorntilde=7905;e.ohungarumlaut=337;e.oi=419;e.oinvertedbreve=527;e.okatakana=12458;e.okatakanahalfwidth=65397;e.okorean=12631;e.olehebrew=1451;e.omacron=333;e.omacronacute=7763;e.omacrongrave=7761;e.omdeva=2384;e.omega=969;e.omega1=982;e.omegacyrillic=1121;e.omegalatinclosed=631;e.omegaroundcyrillic=1147;e.omegatitlocyrillic=1149;e.omegatonos=974;e.omgujarati=2768;e.omicron=959;e.omicrontonos=972;e.omonospace=65359;e.one=49;e.onearabic=1633;e.onebengali=2535;e.onecircle=9312;e.onecircleinversesansserif=10122;e.onedeva=2407;e.onedotenleader=8228;e.oneeighth=8539;e.onefitted=63196;e.onegujarati=2791;e.onegurmukhi=2663;e.onehackarabic=1633;e.onehalf=189;e.onehangzhou=12321;e.oneideographicparen=12832;e.oneinferior=8321;e.onemonospace=65297;e.onenumeratorbengali=2548;e.oneoldstyle=63281;e.oneparen=9332;e.oneperiod=9352;e.onepersian=1777;e.onequarter=188;e.oneroman=8560;e.onesuperior=185;e.onethai=3665;e.onethird=8531;e.oogonek=491;e.oogonekmacron=493;e.oogurmukhi=2579;e.oomatragurmukhi=2635;e.oopen=596;e.oparen=9386;e.openbullet=9702;e.option=8997;e.ordfeminine=170;e.ordmasculine=186;e.orthogonal=8735;e.oshortdeva=2322;e.oshortvowelsigndeva=2378;e.oslash=248;e.oslashacute=511;e.osmallhiragana=12361;e.osmallkatakana=12457;e.osmallkatakanahalfwidth=65387;e.ostrokeacute=511;e.osuperior=63216;e.otcyrillic=1151;e.otilde=245;e.otildeacute=7757;e.otildedieresis=7759;e.oubopomofo=12577;e.overline=8254;e.overlinecenterline=65098;e.overlinecmb=773;e.overlinedashed=65097;e.overlinedblwavy=65100;e.overlinewavy=65099;e.overscore=175;e.ovowelsignbengali=2507;e.ovowelsigndeva=2379;e.ovowelsigngujarati=2763;e.p=112;e.paampssquare=13184;e.paasentosquare=13099;e.pabengali=2474;e.pacute=7765;e.padeva=2346;e.pagedown=8671;e.pageup=8670;e.pagujarati=2730;e.pagurmukhi=2602;e.pahiragana=12401;e.paiyannoithai=3631;e.pakatakana=12497;e.palatalizationcyrilliccmb=1156;e.palochkacyrillic=1216;e.pansioskorean=12671;e.paragraph=182;e.parallel=8741;e.parenleft=40;e.parenleftaltonearabic=64830;e.parenleftbt=63725;e.parenleftex=63724;e.parenleftinferior=8333;e.parenleftmonospace=65288;e.parenleftsmall=65113;e.parenleftsuperior=8317;e.parenlefttp=63723;e.parenleftvertical=65077;e.parenright=41;e.parenrightaltonearabic=64831;e.parenrightbt=63736;e.parenrightex=63735;e.parenrightinferior=8334;e.parenrightmonospace=65289;e.parenrightsmall=65114;e.parenrightsuperior=8318;e.parenrighttp=63734;e.parenrightvertical=65078;e.partialdiff=8706;e.paseqhebrew=1472;e.pashtahebrew=1433;e.pasquare=13225;e.patah=1463;e.patah11=1463;e.patah1d=1463;e.patah2a=1463;e.patahhebrew=1463;e.patahnarrowhebrew=1463;e.patahquarterhebrew=1463;e.patahwidehebrew=1463;e.pazerhebrew=1441;e.pbopomofo=12550;e.pcircle=9439;e.pdotaccent=7767;e.pe=1508;e.pecyrillic=1087;e.pedagesh=64324;e.pedageshhebrew=64324;e.peezisquare=13115;e.pefinaldageshhebrew=64323;e.peharabic=1662;e.peharmenian=1402;e.pehebrew=1508;e.pehfinalarabic=64343;e.pehinitialarabic=64344;e.pehiragana=12410;e.pehmedialarabic=64345;e.pekatakana=12506;e.pemiddlehookcyrillic=1191;e.perafehebrew=64334;e.percent=37;e.percentarabic=1642;e.percentmonospace=65285;e.percentsmall=65130;e.period=46;e.periodarmenian=1417;e.periodcentered=183;e.periodhalfwidth=65377;e.periodinferior=63207;e.periodmonospace=65294;e.periodsmall=65106;e.periodsuperior=63208;e.perispomenigreekcmb=834;e.perpendicular=8869;e.perthousand=8240;e.peseta=8359;e.pfsquare=13194;e.phabengali=2475;e.phadeva=2347;e.phagujarati=2731;e.phagurmukhi=2603;e.phi=966;e.phi1=981;e.phieuphacirclekorean=12922;e.phieuphaparenkorean=12826;e.phieuphcirclekorean=12908;e.phieuphkorean=12621;e.phieuphparenkorean=12812;e.philatin=632;e.phinthuthai=3642;e.phisymbolgreek=981;e.phook=421;e.phophanthai=3614;e.phophungthai=3612;e.phosamphaothai=3616;e.pi=960;e.pieupacirclekorean=12915;e.pieupaparenkorean=12819;e.pieupcieuckorean=12662;e.pieupcirclekorean=12901;e.pieupkiyeokkorean=12658;e.pieupkorean=12610;e.pieupparenkorean=12805;e.pieupsioskiyeokkorean=12660;e.pieupsioskorean=12612;e.pieupsiostikeutkorean=12661;e.pieupthieuthkorean=12663;e.pieuptikeutkorean=12659;e.pihiragana=12404;e.pikatakana=12500;e.pisymbolgreek=982;e.piwrarmenian=1411;e.planckover2pi=8463;e.planckover2pi1=8463;e.plus=43;e.plusbelowcmb=799;e.pluscircle=8853;e.plusminus=177;e.plusmod=726;e.plusmonospace=65291;e.plussmall=65122;e.plussuperior=8314;e.pmonospace=65360;e.pmsquare=13272;e.pohiragana=12413;e.pointingindexdownwhite=9759;e.pointingindexleftwhite=9756;e.pointingindexrightwhite=9758;e.pointingindexupwhite=9757;e.pokatakana=12509;e.poplathai=3611;e.postalmark=12306;e.postalmarkface=12320;e.pparen=9387;e.precedes=8826;e.prescription=8478;e.primemod=697;e.primereversed=8245;e.product=8719;e.projective=8965;e.prolongedkana=12540;e.propellor=8984;e.propersubset=8834;e.propersuperset=8835;e.proportion=8759;e.proportional=8733;e.psi=968;e.psicyrillic=1137;e.psilipneumatacyrilliccmb=1158;e.pssquare=13232;e.puhiragana=12407;e.pukatakana=12503;e.pvsquare=13236;e.pwsquare=13242;e.q=113;e.qadeva=2392;e.qadmahebrew=1448;e.qafarabic=1602;e.qaffinalarabic=65238;e.qafinitialarabic=65239;e.qafmedialarabic=65240;e.qamats=1464;e.qamats10=1464;e.qamats1a=1464;e.qamats1c=1464;e.qamats27=1464;e.qamats29=1464;e.qamats33=1464;e.qamatsde=1464;e.qamatshebrew=1464;e.qamatsnarrowhebrew=1464;e.qamatsqatanhebrew=1464;e.qamatsqatannarrowhebrew=1464;e.qamatsqatanquarterhebrew=1464;e.qamatsqatanwidehebrew=1464;e.qamatsquarterhebrew=1464;e.qamatswidehebrew=1464;e.qarneyparahebrew=1439;e.qbopomofo=12561;e.qcircle=9440;e.qhook=672;e.qmonospace=65361;e.qof=1511;e.qofdagesh=64327;e.qofdageshhebrew=64327;e.qofhebrew=1511;e.qparen=9388;e.quarternote=9833;e.qubuts=1467;e.qubuts18=1467;e.qubuts25=1467;e.qubuts31=1467;e.qubutshebrew=1467;e.qubutsnarrowhebrew=1467;e.qubutsquarterhebrew=1467;e.qubutswidehebrew=1467;e.question=63;e.questionarabic=1567;e.questionarmenian=1374;e.questiondown=191;e.questiondownsmall=63423;e.questiongreek=894;e.questionmonospace=65311;e.questionsmall=63295;e.quotedbl=34;e.quotedblbase=8222;e.quotedblleft=8220;e.quotedblmonospace=65282;e.quotedblprime=12318;e.quotedblprimereversed=12317;e.quotedblright=8221;e.quoteleft=8216;e.quoteleftreversed=8219;e.quotereversed=8219;e.quoteright=8217;e.quoterightn=329;e.quotesinglbase=8218;e.quotesingle=39;e.quotesinglemonospace=65287;e.r=114;e.raarmenian=1404;e.rabengali=2480;e.racute=341;e.radeva=2352;e.radical=8730;e.radicalex=63717;e.radoverssquare=13230;e.radoverssquaredsquare=13231;e.radsquare=13229;e.rafe=1471;e.rafehebrew=1471;e.ragujarati=2736;e.ragurmukhi=2608;e.rahiragana=12425;e.rakatakana=12521;e.rakatakanahalfwidth=65431;e.ralowerdiagonalbengali=2545;e.ramiddlediagonalbengali=2544;e.ramshorn=612;e.ratio=8758;e.rbopomofo=12566;e.rcaron=345;e.rcedilla=343;e.rcircle=9441;e.rcommaaccent=343;e.rdblgrave=529;e.rdotaccent=7769;e.rdotbelow=7771;e.rdotbelowmacron=7773;e.referencemark=8251;e.reflexsubset=8838;e.reflexsuperset=8839;e.registered=174;e.registersans=63720;e.registerserif=63194;e.reharabic=1585;e.reharmenian=1408;e.rehfinalarabic=65198;e.rehiragana=12428;e.rekatakana=12524;e.rekatakanahalfwidth=65434;e.resh=1512;e.reshdageshhebrew=64328;e.reshhebrew=1512;e.reversedtilde=8765;e.reviahebrew=1431;e.reviamugrashhebrew=1431;e.revlogicalnot=8976;e.rfishhook=638;e.rfishhookreversed=639;e.rhabengali=2525;e.rhadeva=2397;e.rho=961;e.rhook=637;e.rhookturned=635;e.rhookturnedsuperior=693;e.rhosymbolgreek=1009;e.rhotichookmod=734;e.rieulacirclekorean=12913;e.rieulaparenkorean=12817;e.rieulcirclekorean=12899;e.rieulhieuhkorean=12608;e.rieulkiyeokkorean=12602;e.rieulkiyeoksioskorean=12649;e.rieulkorean=12601;e.rieulmieumkorean=12603;e.rieulpansioskorean=12652;e.rieulparenkorean=12803;e.rieulphieuphkorean=12607;e.rieulpieupkorean=12604;e.rieulpieupsioskorean=12651;e.rieulsioskorean=12605;e.rieulthieuthkorean=12606;e.rieultikeutkorean=12650;e.rieulyeorinhieuhkorean=12653;e.rightangle=8735;e.righttackbelowcmb=793;e.righttriangle=8895;e.rihiragana=12426;e.rikatakana=12522;e.rikatakanahalfwidth=65432;e.ring=730;e.ringbelowcmb=805;e.ringcmb=778;e.ringhalfleft=703;e.ringhalfleftarmenian=1369;e.ringhalfleftbelowcmb=796;e.ringhalfleftcentered=723;e.ringhalfright=702;e.ringhalfrightbelowcmb=825;e.ringhalfrightcentered=722;e.rinvertedbreve=531;e.rittorusquare=13137;e.rlinebelow=7775;e.rlongleg=636;e.rlonglegturned=634;e.rmonospace=65362;e.rohiragana=12429;e.rokatakana=12525;e.rokatakanahalfwidth=65435;e.roruathai=3619;e.rparen=9389;e.rrabengali=2524;e.rradeva=2353;e.rragurmukhi=2652;e.rreharabic=1681;e.rrehfinalarabic=64397;e.rrvocalicbengali=2528;e.rrvocalicdeva=2400;e.rrvocalicgujarati=2784;e.rrvocalicvowelsignbengali=2500;e.rrvocalicvowelsigndeva=2372;e.rrvocalicvowelsigngujarati=2756;e.rsuperior=63217;e.rtblock=9616;e.rturned=633;e.rturnedsuperior=692;e.ruhiragana=12427;e.rukatakana=12523;e.rukatakanahalfwidth=65433;e.rupeemarkbengali=2546;e.rupeesignbengali=2547;e.rupiah=63197;e.ruthai=3620;e.rvocalicbengali=2443;e.rvocalicdeva=2315;e.rvocalicgujarati=2699;e.rvocalicvowelsignbengali=2499;e.rvocalicvowelsigndeva=2371;e.rvocalicvowelsigngujarati=2755;e.s=115;e.sabengali=2488;e.sacute=347;e.sacutedotaccent=7781;e.sadarabic=1589;e.sadeva=2360;e.sadfinalarabic=65210;e.sadinitialarabic=65211;e.sadmedialarabic=65212;e.sagujarati=2744;e.sagurmukhi=2616;e.sahiragana=12373;e.sakatakana=12469;e.sakatakanahalfwidth=65403;e.sallallahoualayhewasallamarabic=65018;e.samekh=1505;e.samekhdagesh=64321;e.samekhdageshhebrew=64321;e.samekhhebrew=1505;e.saraaathai=3634;e.saraaethai=3649;e.saraaimaimalaithai=3652;e.saraaimaimuanthai=3651;e.saraamthai=3635;e.saraathai=3632;e.saraethai=3648;e.saraiileftthai=63622;e.saraiithai=3637;e.saraileftthai=63621;e.saraithai=3636;e.saraothai=3650;e.saraueeleftthai=63624;e.saraueethai=3639;e.saraueleftthai=63623;e.sarauethai=3638;e.sarauthai=3640;e.sarauuthai=3641;e.sbopomofo=12569;e.scaron=353;e.scarondotaccent=7783;e.scedilla=351;e.schwa=601;e.schwacyrillic=1241;e.schwadieresiscyrillic=1243;e.schwahook=602;e.scircle=9442;e.scircumflex=349;e.scommaaccent=537;e.sdotaccent=7777;e.sdotbelow=7779;e.sdotbelowdotaccent=7785;e.seagullbelowcmb=828;e.second=8243;e.secondtonechinese=714;e.section=167;e.seenarabic=1587;e.seenfinalarabic=65202;e.seeninitialarabic=65203;e.seenmedialarabic=65204;e.segol=1462;e.segol13=1462;e.segol1f=1462;e.segol2c=1462;e.segolhebrew=1462;e.segolnarrowhebrew=1462;e.segolquarterhebrew=1462;e.segoltahebrew=1426;e.segolwidehebrew=1462;e.seharmenian=1405;e.sehiragana=12379;e.sekatakana=12475;e.sekatakanahalfwidth=65406;e.semicolon=59;e.semicolonarabic=1563;e.semicolonmonospace=65307;e.semicolonsmall=65108;e.semivoicedmarkkana=12444;e.semivoicedmarkkanahalfwidth=65439;e.sentisquare=13090;e.sentosquare=13091;e.seven=55;e.sevenarabic=1639;e.sevenbengali=2541;e.sevencircle=9318;e.sevencircleinversesansserif=10128;e.sevendeva=2413;e.seveneighths=8542;e.sevengujarati=2797;e.sevengurmukhi=2669;e.sevenhackarabic=1639;e.sevenhangzhou=12327;e.sevenideographicparen=12838;e.seveninferior=8327;e.sevenmonospace=65303;e.sevenoldstyle=63287;e.sevenparen=9338;e.sevenperiod=9358;e.sevenpersian=1783;e.sevenroman=8566;e.sevensuperior=8311;e.seventeencircle=9328;e.seventeenparen=9348;e.seventeenperiod=9368;e.seventhai=3671;e.sfthyphen=173;e.shaarmenian=1399;e.shabengali=2486;e.shacyrillic=1096;e.shaddaarabic=1617;e.shaddadammaarabic=64609;e.shaddadammatanarabic=64606;e.shaddafathaarabic=64608;e.shaddakasraarabic=64610;e.shaddakasratanarabic=64607;e.shade=9618;e.shadedark=9619;e.shadelight=9617;e.shademedium=9618;e.shadeva=2358;e.shagujarati=2742;e.shagurmukhi=2614;e.shalshelethebrew=1427;e.shbopomofo=12565;e.shchacyrillic=1097;e.sheenarabic=1588;e.sheenfinalarabic=65206;e.sheeninitialarabic=65207;e.sheenmedialarabic=65208;e.sheicoptic=995;e.sheqel=8362;e.sheqelhebrew=8362;e.sheva=1456;e.sheva115=1456;e.sheva15=1456;e.sheva22=1456;e.sheva2e=1456;e.shevahebrew=1456;e.shevanarrowhebrew=1456;e.shevaquarterhebrew=1456;e.shevawidehebrew=1456;e.shhacyrillic=1211;e.shimacoptic=1005;e.shin=1513;e.shindagesh=64329;e.shindageshhebrew=64329;e.shindageshshindot=64300;e.shindageshshindothebrew=64300;e.shindageshsindot=64301;e.shindageshsindothebrew=64301;e.shindothebrew=1473;e.shinhebrew=1513;e.shinshindot=64298;e.shinshindothebrew=64298;e.shinsindot=64299;e.shinsindothebrew=64299;e.shook=642;e.sigma=963;e.sigma1=962;e.sigmafinal=962;e.sigmalunatesymbolgreek=1010;e.sihiragana=12375;e.sikatakana=12471;e.sikatakanahalfwidth=65404;e.siluqhebrew=1469;e.siluqlefthebrew=1469;e.similar=8764;e.sindothebrew=1474;e.siosacirclekorean=12916;e.siosaparenkorean=12820;e.sioscieuckorean=12670;e.sioscirclekorean=12902;e.sioskiyeokkorean=12666;e.sioskorean=12613;e.siosnieunkorean=12667;e.siosparenkorean=12806;e.siospieupkorean=12669;e.siostikeutkorean=12668;e.six=54;e.sixarabic=1638;e.sixbengali=2540;e.sixcircle=9317;e.sixcircleinversesansserif=10127;e.sixdeva=2412;e.sixgujarati=2796;e.sixgurmukhi=2668;e.sixhackarabic=1638;e.sixhangzhou=12326;e.sixideographicparen=12837;e.sixinferior=8326;e.sixmonospace=65302;e.sixoldstyle=63286;e.sixparen=9337;e.sixperiod=9357;e.sixpersian=1782;e.sixroman=8565;e.sixsuperior=8310;e.sixteencircle=9327;e.sixteencurrencydenominatorbengali=2553;e.sixteenparen=9347;e.sixteenperiod=9367;e.sixthai=3670;e.slash=47;e.slashmonospace=65295;e.slong=383;e.slongdotaccent=7835;e.smileface=9786;e.smonospace=65363;e.sofpasuqhebrew=1475;e.softhyphen=173;e.softsigncyrillic=1100;e.sohiragana=12381;e.sokatakana=12477;e.sokatakanahalfwidth=65407;e.soliduslongoverlaycmb=824;e.solidusshortoverlaycmb=823;e.sorusithai=3625;e.sosalathai=3624;e.sosothai=3595;e.sosuathai=3626;e.space=32;e.spacehackarabic=32;e.spade=9824;e.spadesuitblack=9824;e.spadesuitwhite=9828;e.sparen=9390;e.squarebelowcmb=827;e.squarecc=13252;e.squarecm=13213;e.squarediagonalcrosshatchfill=9641;e.squarehorizontalfill=9636;e.squarekg=13199;e.squarekm=13214;e.squarekmcapital=13262;e.squareln=13265;e.squarelog=13266;e.squaremg=13198;e.squaremil=13269;e.squaremm=13212;e.squaremsquared=13217;e.squareorthogonalcrosshatchfill=9638;e.squareupperlefttolowerrightfill=9639;e.squareupperrighttolowerleftfill=9640;e.squareverticalfill=9637;e.squarewhitewithsmallblack=9635;e.srsquare=13275;e.ssabengali=2487;e.ssadeva=2359;e.ssagujarati=2743;e.ssangcieuckorean=12617;e.ssanghieuhkorean=12677;e.ssangieungkorean=12672;e.ssangkiyeokkorean=12594;e.ssangnieunkorean=12645;e.ssangpieupkorean=12611;e.ssangsioskorean=12614;e.ssangtikeutkorean=12600;e.ssuperior=63218;e.sterling=163;e.sterlingmonospace=65505;e.strokelongoverlaycmb=822;e.strokeshortoverlaycmb=821;e.subset=8834;e.subsetnotequal=8842;e.subsetorequal=8838;e.succeeds=8827;e.suchthat=8715;e.suhiragana=12377;e.sukatakana=12473;e.sukatakanahalfwidth=65405;e.sukunarabic=1618;e.summation=8721;e.sun=9788;e.superset=8835;e.supersetnotequal=8843;e.supersetorequal=8839;e.svsquare=13276;e.syouwaerasquare=13180;e.t=116;e.tabengali=2468;e.tackdown=8868;e.tackleft=8867;e.tadeva=2340;e.tagujarati=2724;e.tagurmukhi=2596;e.taharabic=1591;e.tahfinalarabic=65218;e.tahinitialarabic=65219;e.tahiragana=12383;e.tahmedialarabic=65220;e.taisyouerasquare=13181;e.takatakana=12479;e.takatakanahalfwidth=65408;e.tatweelarabic=1600;e.tau=964;e.tav=1514;e.tavdages=64330;e.tavdagesh=64330;e.tavdageshhebrew=64330;e.tavhebrew=1514;e.tbar=359;e.tbopomofo=12554;e.tcaron=357;e.tccurl=680;e.tcedilla=355;e.tcheharabic=1670;e.tchehfinalarabic=64379;e.tchehinitialarabic=64380;e.tchehmedialarabic=64381;e.tcircle=9443;e.tcircumflexbelow=7793;e.tcommaaccent=355;e.tdieresis=7831;e.tdotaccent=7787;e.tdotbelow=7789;e.tecyrillic=1090;e.tedescendercyrillic=1197;e.teharabic=1578;e.tehfinalarabic=65174;e.tehhahinitialarabic=64674;e.tehhahisolatedarabic=64524;e.tehinitialarabic=65175;e.tehiragana=12390;e.tehjeeminitialarabic=64673;e.tehjeemisolatedarabic=64523;e.tehmarbutaarabic=1577;e.tehmarbutafinalarabic=65172;e.tehmedialarabic=65176;e.tehmeeminitialarabic=64676;e.tehmeemisolatedarabic=64526;e.tehnoonfinalarabic=64627;e.tekatakana=12486;e.tekatakanahalfwidth=65411;e.telephone=8481;e.telephoneblack=9742;e.telishagedolahebrew=1440;e.telishaqetanahebrew=1449;e.tencircle=9321;e.tenideographicparen=12841;e.tenparen=9341;e.tenperiod=9361;e.tenroman=8569;e.tesh=679;e.tet=1496;e.tetdagesh=64312;e.tetdageshhebrew=64312;e.tethebrew=1496;e.tetsecyrillic=1205;e.tevirhebrew=1435;e.tevirlefthebrew=1435;e.thabengali=2469;e.thadeva=2341;e.thagujarati=2725;e.thagurmukhi=2597;e.thalarabic=1584;e.thalfinalarabic=65196;e.thanthakhatlowleftthai=63640;e.thanthakhatlowrightthai=63639;e.thanthakhatthai=3660;e.thanthakhatupperleftthai=63638;e.theharabic=1579;e.thehfinalarabic=65178;e.thehinitialarabic=65179;e.thehmedialarabic=65180;e.thereexists=8707;e.therefore=8756;e.theta=952;e.theta1=977;e.thetasymbolgreek=977;e.thieuthacirclekorean=12921;e.thieuthaparenkorean=12825;e.thieuthcirclekorean=12907;e.thieuthkorean=12620;e.thieuthparenkorean=12811;e.thirteencircle=9324;e.thirteenparen=9344;e.thirteenperiod=9364;e.thonangmonthothai=3601;e.thook=429;e.thophuthaothai=3602;e.thorn=254;e.thothahanthai=3607;e.thothanthai=3600;e.thothongthai=3608;e.thothungthai=3606;e.thousandcyrillic=1154;e.thousandsseparatorarabic=1644;e.thousandsseparatorpersian=1644;e.three=51;e.threearabic=1635;e.threebengali=2537;e.threecircle=9314;e.threecircleinversesansserif=10124;e.threedeva=2409;e.threeeighths=8540;e.threegujarati=2793;e.threegurmukhi=2665;e.threehackarabic=1635;e.threehangzhou=12323;e.threeideographicparen=12834;e.threeinferior=8323;e.threemonospace=65299;e.threenumeratorbengali=2550;e.threeoldstyle=63283;e.threeparen=9334;e.threeperiod=9354;e.threepersian=1779;e.threequarters=190;e.threequartersemdash=63198;e.threeroman=8562;e.threesuperior=179;e.threethai=3667;e.thzsquare=13204;e.tihiragana=12385;e.tikatakana=12481;e.tikatakanahalfwidth=65409;e.tikeutacirclekorean=12912;e.tikeutaparenkorean=12816;e.tikeutcirclekorean=12898;e.tikeutkorean=12599;e.tikeutparenkorean=12802;e.tilde=732;e.tildebelowcmb=816;e.tildecmb=771;e.tildecomb=771;e.tildedoublecmb=864;e.tildeoperator=8764;e.tildeoverlaycmb=820;e.tildeverticalcmb=830;e.timescircle=8855;e.tipehahebrew=1430;e.tipehalefthebrew=1430;e.tippigurmukhi=2672;e.titlocyrilliccmb=1155;e.tiwnarmenian=1407;e.tlinebelow=7791;e.tmonospace=65364;e.toarmenian=1385;e.tohiragana=12392;e.tokatakana=12488;e.tokatakanahalfwidth=65412;e.tonebarextrahighmod=741;e.tonebarextralowmod=745;e.tonebarhighmod=742;e.tonebarlowmod=744;e.tonebarmidmod=743;e.tonefive=445;e.tonesix=389;e.tonetwo=424;e.tonos=900;e.tonsquare=13095;e.topatakthai=3599;e.tortoiseshellbracketleft=12308;e.tortoiseshellbracketleftsmall=65117;e.tortoiseshellbracketleftvertical=65081;e.tortoiseshellbracketright=12309;e.tortoiseshellbracketrightsmall=65118;e.tortoiseshellbracketrightvertical=65082;e.totaothai=3605;e.tpalatalhook=427;e.tparen=9391;e.trademark=8482;e.trademarksans=63722;e.trademarkserif=63195;e.tretroflexhook=648;e.triagdn=9660;e.triaglf=9668;e.triagrt=9658;e.triagup=9650;e.ts=678;e.tsadi=1510;e.tsadidagesh=64326;e.tsadidageshhebrew=64326;e.tsadihebrew=1510;e.tsecyrillic=1094;e.tsere=1461;e.tsere12=1461;e.tsere1e=1461;e.tsere2b=1461;e.tserehebrew=1461;e.tserenarrowhebrew=1461;e.tserequarterhebrew=1461;e.tserewidehebrew=1461;e.tshecyrillic=1115;e.tsuperior=63219;e.ttabengali=2463;e.ttadeva=2335;e.ttagujarati=2719;e.ttagurmukhi=2591;e.tteharabic=1657;e.ttehfinalarabic=64359;e.ttehinitialarabic=64360;e.ttehmedialarabic=64361;e.tthabengali=2464;e.tthadeva=2336;e.tthagujarati=2720;e.tthagurmukhi=2592;e.tturned=647;e.tuhiragana=12388;e.tukatakana=12484;e.tukatakanahalfwidth=65410;e.tusmallhiragana=12387;e.tusmallkatakana=12483;e.tusmallkatakanahalfwidth=65391;e.twelvecircle=9323;e.twelveparen=9343;e.twelveperiod=9363;e.twelveroman=8571;e.twentycircle=9331;e.twentyhangzhou=21316;e.twentyparen=9351;e.twentyperiod=9371;e.two=50;e.twoarabic=1634;e.twobengali=2536;e.twocircle=9313;e.twocircleinversesansserif=10123;e.twodeva=2408;e.twodotenleader=8229;e.twodotleader=8229;e.twodotleadervertical=65072;e.twogujarati=2792;e.twogurmukhi=2664;e.twohackarabic=1634;e.twohangzhou=12322;e.twoideographicparen=12833;e.twoinferior=8322;e.twomonospace=65298;e.twonumeratorbengali=2549;e.twooldstyle=63282;e.twoparen=9333;e.twoperiod=9353;e.twopersian=1778;e.tworoman=8561;e.twostroke=443;e.twosuperior=178;e.twothai=3666;e.twothirds=8532;e.u=117;e.uacute=250;e.ubar=649;e.ubengali=2441;e.ubopomofo=12584;e.ubreve=365;e.ucaron=468;e.ucircle=9444;e.ucircumflex=251;e.ucircumflexbelow=7799;e.ucyrillic=1091;e.udattadeva=2385;e.udblacute=369;e.udblgrave=533;e.udeva=2313;e.udieresis=252;e.udieresisacute=472;e.udieresisbelow=7795;e.udieresiscaron=474;e.udieresiscyrillic=1265;e.udieresisgrave=476;e.udieresismacron=470;e.udotbelow=7909;e.ugrave=249;e.ugujarati=2697;e.ugurmukhi=2569;e.uhiragana=12358;e.uhookabove=7911;e.uhorn=432;e.uhornacute=7913;e.uhorndotbelow=7921;e.uhorngrave=7915;e.uhornhookabove=7917;e.uhorntilde=7919;e.uhungarumlaut=369;e.uhungarumlautcyrillic=1267;e.uinvertedbreve=535;e.ukatakana=12454;e.ukatakanahalfwidth=65395;e.ukcyrillic=1145;e.ukorean=12636;e.umacron=363;e.umacroncyrillic=1263;e.umacrondieresis=7803;e.umatragurmukhi=2625;e.umonospace=65365;e.underscore=95;e.underscoredbl=8215;e.underscoremonospace=65343;e.underscorevertical=65075;e.underscorewavy=65103;e.union=8746;e.universal=8704;e.uogonek=371;e.uparen=9392;e.upblock=9600;e.upperdothebrew=1476;e.upsilon=965;e.upsilondieresis=971;e.upsilondieresistonos=944;e.upsilonlatin=650;e.upsilontonos=973;e.uptackbelowcmb=797;e.uptackmod=724;e.uragurmukhi=2675;e.uring=367;e.ushortcyrillic=1118;e.usmallhiragana=12357;e.usmallkatakana=12453;e.usmallkatakanahalfwidth=65385;e.ustraightcyrillic=1199;e.ustraightstrokecyrillic=1201;e.utilde=361;e.utildeacute=7801;e.utildebelow=7797;e.uubengali=2442;e.uudeva=2314;e.uugujarati=2698;e.uugurmukhi=2570;e.uumatragurmukhi=2626;e.uuvowelsignbengali=2498;e.uuvowelsigndeva=2370;e.uuvowelsigngujarati=2754;e.uvowelsignbengali=2497;e.uvowelsigndeva=2369;e.uvowelsigngujarati=2753;e.v=118;e.vadeva=2357;e.vagujarati=2741;e.vagurmukhi=2613;e.vakatakana=12535;e.vav=1493;e.vavdagesh=64309;e.vavdagesh65=64309;e.vavdageshhebrew=64309;e.vavhebrew=1493;e.vavholam=64331;e.vavholamhebrew=64331;e.vavvavhebrew=1520;e.vavyodhebrew=1521;e.vcircle=9445;e.vdotbelow=7807;e.vecyrillic=1074;e.veharabic=1700;e.vehfinalarabic=64363;e.vehinitialarabic=64364;e.vehmedialarabic=64365;e.vekatakana=12537;e.venus=9792;e.verticalbar=124;e.verticallineabovecmb=781;e.verticallinebelowcmb=809;e.verticallinelowmod=716;e.verticallinemod=712;e.vewarmenian=1406;e.vhook=651;e.vikatakana=12536;e.viramabengali=2509;e.viramadeva=2381;e.viramagujarati=2765;e.visargabengali=2435;e.visargadeva=2307;e.visargagujarati=2691;e.vmonospace=65366;e.voarmenian=1400;e.voicediterationhiragana=12446;e.voicediterationkatakana=12542;e.voicedmarkkana=12443;e.voicedmarkkanahalfwidth=65438;e.vokatakana=12538;e.vparen=9393;e.vtilde=7805;e.vturned=652;e.vuhiragana=12436;e.vukatakana=12532;e.w=119;e.wacute=7811;e.waekorean=12633;e.wahiragana=12431;e.wakatakana=12527;e.wakatakanahalfwidth=65436;e.wakorean=12632;e.wasmallhiragana=12430;e.wasmallkatakana=12526;e.wattosquare=13143;e.wavedash=12316;e.wavyunderscorevertical=65076;e.wawarabic=1608;e.wawfinalarabic=65262;e.wawhamzaabovearabic=1572;e.wawhamzaabovefinalarabic=65158;e.wbsquare=13277;e.wcircle=9446;e.wcircumflex=373;e.wdieresis=7813;e.wdotaccent=7815;e.wdotbelow=7817;e.wehiragana=12433;e.weierstrass=8472;e.wekatakana=12529;e.wekorean=12638;e.weokorean=12637;e.wgrave=7809;e.whitebullet=9702;e.whitecircle=9675;e.whitecircleinverse=9689;e.whitecornerbracketleft=12302;e.whitecornerbracketleftvertical=65091;e.whitecornerbracketright=12303;e.whitecornerbracketrightvertical=65092;e.whitediamond=9671;e.whitediamondcontainingblacksmalldiamond=9672;e.whitedownpointingsmalltriangle=9663;e.whitedownpointingtriangle=9661;e.whiteleftpointingsmalltriangle=9667;e.whiteleftpointingtriangle=9665;e.whitelenticularbracketleft=12310;e.whitelenticularbracketright=12311;e.whiterightpointingsmalltriangle=9657;e.whiterightpointingtriangle=9655;e.whitesmallsquare=9643;e.whitesmilingface=9786;e.whitesquare=9633;e.whitestar=9734;e.whitetelephone=9743;e.whitetortoiseshellbracketleft=12312;e.whitetortoiseshellbracketright=12313;e.whiteuppointingsmalltriangle=9653;e.whiteuppointingtriangle=9651;e.wihiragana=12432;e.wikatakana=12528;e.wikorean=12639;e.wmonospace=65367;e.wohiragana=12434;e.wokatakana=12530;e.wokatakanahalfwidth=65382;e.won=8361;e.wonmonospace=65510;e.wowaenthai=3623;e.wparen=9394;e.wring=7832;e.wsuperior=695;e.wturned=653;e.wynn=447;e.x=120;e.xabovecmb=829;e.xbopomofo=12562;e.xcircle=9447;e.xdieresis=7821;e.xdotaccent=7819;e.xeharmenian=1389;e.xi=958;e.xmonospace=65368;e.xparen=9395;e.xsuperior=739;e.y=121;e.yaadosquare=13134;e.yabengali=2479;e.yacute=253;e.yadeva=2351;e.yaekorean=12626;e.yagujarati=2735;e.yagurmukhi=2607;e.yahiragana=12420;e.yakatakana=12516;e.yakatakanahalfwidth=65428;e.yakorean=12625;e.yamakkanthai=3662;e.yasmallhiragana=12419;e.yasmallkatakana=12515;e.yasmallkatakanahalfwidth=65388;e.yatcyrillic=1123;e.ycircle=9448;e.ycircumflex=375;e.ydieresis=255;e.ydotaccent=7823;e.ydotbelow=7925;e.yeharabic=1610;e.yehbarreearabic=1746;e.yehbarreefinalarabic=64431;e.yehfinalarabic=65266;e.yehhamzaabovearabic=1574;e.yehhamzaabovefinalarabic=65162;e.yehhamzaaboveinitialarabic=65163;e.yehhamzaabovemedialarabic=65164;e.yehinitialarabic=65267;e.yehmedialarabic=65268;e.yehmeeminitialarabic=64733;e.yehmeemisolatedarabic=64600;e.yehnoonfinalarabic=64660;e.yehthreedotsbelowarabic=1745;e.yekorean=12630;e.yen=165;e.yenmonospace=65509;e.yeokorean=12629;e.yeorinhieuhkorean=12678;e.yerahbenyomohebrew=1450;e.yerahbenyomolefthebrew=1450;e.yericyrillic=1099;e.yerudieresiscyrillic=1273;e.yesieungkorean=12673;e.yesieungpansioskorean=12675;e.yesieungsioskorean=12674;e.yetivhebrew=1434;e.ygrave=7923;e.yhook=436;e.yhookabove=7927;e.yiarmenian=1397;e.yicyrillic=1111;e.yikorean=12642;e.yinyang=9775;e.yiwnarmenian=1410;e.ymonospace=65369;e.yod=1497;e.yoddagesh=64313;e.yoddageshhebrew=64313;e.yodhebrew=1497;e.yodyodhebrew=1522;e.yodyodpatahhebrew=64287;e.yohiragana=12424;e.yoikorean=12681;e.yokatakana=12520;e.yokatakanahalfwidth=65430;e.yokorean=12635;e.yosmallhiragana=12423;e.yosmallkatakana=12519;e.yosmallkatakanahalfwidth=65390;e.yotgreek=1011;e.yoyaekorean=12680;e.yoyakorean=12679;e.yoyakthai=3618;e.yoyingthai=3597;e.yparen=9396;e.ypogegrammeni=890;e.ypogegrammenigreekcmb=837;e.yr=422;e.yring=7833;e.ysuperior=696;e.ytilde=7929;e.yturned=654;e.yuhiragana=12422;e.yuikorean=12684;e.yukatakana=12518;e.yukatakanahalfwidth=65429;e.yukorean=12640;e.yusbigcyrillic=1131;e.yusbigiotifiedcyrillic=1133;e.yuslittlecyrillic=1127;e.yuslittleiotifiedcyrillic=1129;e.yusmallhiragana=12421;e.yusmallkatakana=12517;e.yusmallkatakanahalfwidth=65389;e.yuyekorean=12683;e.yuyeokorean=12682;e.yyabengali=2527;e.yyadeva=2399;e.z=122;e.zaarmenian=1382;e.zacute=378;e.zadeva=2395;e.zagurmukhi=2651;e.zaharabic=1592;e.zahfinalarabic=65222;e.zahinitialarabic=65223;e.zahiragana=12374;e.zahmedialarabic=65224;e.zainarabic=1586;e.zainfinalarabic=65200;e.zakatakana=12470;e.zaqefgadolhebrew=1429;e.zaqefqatanhebrew=1428;e.zarqahebrew=1432;e.zayin=1494;e.zayindagesh=64310;e.zayindageshhebrew=64310;e.zayinhebrew=1494;e.zbopomofo=12567;e.zcaron=382;e.zcircle=9449;e.zcircumflex=7825;e.zcurl=657;e.zdot=380;e.zdotaccent=380;e.zdotbelow=7827;e.zecyrillic=1079;e.zedescendercyrillic=1177;e.zedieresiscyrillic=1247;e.zehiragana=12380;e.zekatakana=12476;e.zero=48;e.zeroarabic=1632;e.zerobengali=2534;e.zerodeva=2406;e.zerogujarati=2790;e.zerogurmukhi=2662;e.zerohackarabic=1632;e.zeroinferior=8320;e.zeromonospace=65296;e.zerooldstyle=63280;e.zeropersian=1776;e.zerosuperior=8304;e.zerothai=3664;e.zerowidthjoiner=65279;e.zerowidthnonjoiner=8204;e.zerowidthspace=8203;e.zeta=950;e.zhbopomofo=12563;e.zhearmenian=1386;e.zhebrevecyrillic=1218;e.zhecyrillic=1078;e.zhedescendercyrillic=1175;e.zhedieresiscyrillic=1245;e.zihiragana=12376;e.zikatakana=12472;e.zinorhebrew=1454;e.zlinebelow=7829;e.zmonospace=65370;e.zohiragana=12382;e.zokatakana=12478;e.zparen=9397;e.zretroflexhook=656;e.zstroke=438;e.zuhiragana=12378;e.zukatakana=12474;e[".notdef"]=0;e.angbracketleftbig=9001;e.angbracketleftBig=9001;e.angbracketleftbigg=9001;e.angbracketleftBigg=9001;e.angbracketrightBig=9002;e.angbracketrightbig=9002;e.angbracketrightBigg=9002;e.angbracketrightbigg=9002;e.arrowhookleft=8618;e.arrowhookright=8617;e.arrowlefttophalf=8636;e.arrowleftbothalf=8637;e.arrownortheast=8599;e.arrownorthwest=8598;e.arrowrighttophalf=8640;e.arrowrightbothalf=8641;e.arrowsoutheast=8600;e.arrowsouthwest=8601;e.backslashbig=8726;e.backslashBig=8726;e.backslashBigg=8726;e.backslashbigg=8726;e.bardbl=8214;e.bracehtipdownleft=65079;e.bracehtipdownright=65079;e.bracehtipupleft=65080;e.bracehtipupright=65080;e.braceleftBig=123;e.braceleftbig=123;e.braceleftbigg=123;e.braceleftBigg=123;e.bracerightBig=125;e.bracerightbig=125;e.bracerightbigg=125;e.bracerightBigg=125;e.bracketleftbig=91;e.bracketleftBig=91;e.bracketleftbigg=91;e.bracketleftBigg=91;e.bracketrightBig=93;e.bracketrightbig=93;e.bracketrightbigg=93;e.bracketrightBigg=93;e.ceilingleftbig=8968;e.ceilingleftBig=8968;e.ceilingleftBigg=8968;e.ceilingleftbigg=8968;e.ceilingrightbig=8969;e.ceilingrightBig=8969;e.ceilingrightbigg=8969;e.ceilingrightBigg=8969;e.circledotdisplay=8857;e.circledottext=8857;e.circlemultiplydisplay=8855;e.circlemultiplytext=8855;e.circleplusdisplay=8853;e.circleplustext=8853;e.contintegraldisplay=8750;e.contintegraltext=8750;e.coproductdisplay=8720;e.coproducttext=8720;e.floorleftBig=8970;e.floorleftbig=8970;e.floorleftbigg=8970;e.floorleftBigg=8970;e.floorrightbig=8971;e.floorrightBig=8971;e.floorrightBigg=8971;e.floorrightbigg=8971;e.hatwide=770;e.hatwider=770;e.hatwidest=770;e.intercal=7488;e.integraldisplay=8747;e.integraltext=8747;e.intersectiondisplay=8898;e.intersectiontext=8898;e.logicalanddisplay=8743;e.logicalandtext=8743;e.logicalordisplay=8744;e.logicalortext=8744;e.parenleftBig=40;e.parenleftbig=40;e.parenleftBigg=40;e.parenleftbigg=40;e.parenrightBig=41;e.parenrightbig=41;e.parenrightBigg=41;e.parenrightbigg=41;e.prime=8242;e.productdisplay=8719;e.producttext=8719;e.radicalbig=8730;e.radicalBig=8730;e.radicalBigg=8730;e.radicalbigg=8730;e.radicalbt=8730;e.radicaltp=8730;e.radicalvertex=8730;e.slashbig=47;e.slashBig=47;e.slashBigg=47;e.slashbigg=47;e.summationdisplay=8721;e.summationtext=8721;e.tildewide=732;e.tildewider=732;e.tildewidest=732;e.uniondisplay=8899;e.unionmultidisplay=8846;e.unionmultitext=8846;e.unionsqdisplay=8852;e.unionsqtext=8852;e.uniontext=8899;e.vextenddouble=8741;e.vextendsingle=8739}));t.getGlyphsUnicode=n;const i=(0,r.getLookupTableFactory)((function(e){e.space=32;e.a1=9985;e.a2=9986;e.a202=9987;e.a3=9988;e.a4=9742;e.a5=9990;e.a119=9991;e.a118=9992;e.a117=9993;e.a11=9755;e.a12=9758;e.a13=9996;e.a14=9997;e.a15=9998;e.a16=9999;e.a105=1e4;e.a17=10001;e.a18=10002;e.a19=10003;e.a20=10004;e.a21=10005;e.a22=10006;e.a23=10007;e.a24=10008;e.a25=10009;e.a26=10010;e.a27=10011;e.a28=10012;e.a6=10013;e.a7=10014;e.a8=10015;e.a9=10016;e.a10=10017;e.a29=10018;e.a30=10019;e.a31=10020;e.a32=10021;e.a33=10022;e.a34=10023;e.a35=9733;e.a36=10025;e.a37=10026;e.a38=10027;e.a39=10028;e.a40=10029;e.a41=10030;e.a42=10031;e.a43=10032;e.a44=10033;e.a45=10034;e.a46=10035;e.a47=10036;e.a48=10037;e.a49=10038;e.a50=10039;e.a51=10040;e.a52=10041;e.a53=10042;e.a54=10043;e.a55=10044;e.a56=10045;e.a57=10046;e.a58=10047;e.a59=10048;e.a60=10049;e.a61=10050;e.a62=10051;e.a63=10052;e.a64=10053;e.a65=10054;e.a66=10055;e.a67=10056;e.a68=10057;e.a69=10058;e.a70=10059;e.a71=9679;e.a72=10061;e.a73=9632;e.a74=10063;e.a203=10064;e.a75=10065;e.a204=10066;e.a76=9650;e.a77=9660;e.a78=9670;e.a79=10070;e.a81=9687;e.a82=10072;e.a83=10073;e.a84=10074;e.a97=10075;e.a98=10076;e.a99=10077;e.a100=10078;e.a101=10081;e.a102=10082;e.a103=10083;e.a104=10084;e.a106=10085;e.a107=10086;e.a108=10087;e.a112=9827;e.a111=9830;e.a110=9829;e.a109=9824;e.a120=9312;e.a121=9313;e.a122=9314;e.a123=9315;e.a124=9316;e.a125=9317;e.a126=9318;e.a127=9319;e.a128=9320;e.a129=9321;e.a130=10102;e.a131=10103;e.a132=10104;e.a133=10105;e.a134=10106;e.a135=10107;e.a136=10108;e.a137=10109;e.a138=10110;e.a139=10111;e.a140=10112;e.a141=10113;e.a142=10114;e.a143=10115;e.a144=10116;e.a145=10117;e.a146=10118;e.a147=10119;e.a148=10120;e.a149=10121;e.a150=10122;e.a151=10123;e.a152=10124;e.a153=10125;e.a154=10126;e.a155=10127;e.a156=10128;e.a157=10129;e.a158=10130;e.a159=10131;e.a160=10132;e.a161=8594;e.a163=8596;e.a164=8597;e.a196=10136;e.a165=10137;e.a192=10138;e.a166=10139;e.a167=10140;e.a168=10141;e.a169=10142;e.a170=10143;e.a171=10144;e.a172=10145;e.a173=10146;e.a162=10147;e.a174=10148;e.a175=10149;e.a176=10150;e.a177=10151;e.a178=10152;e.a179=10153;e.a193=10154;e.a180=10155;e.a199=10156;e.a181=10157;e.a200=10158;e.a182=10159;e.a201=10161;e.a183=10162;e.a184=10163;e.a197=10164;e.a185=10165;e.a194=10166;e.a198=10167;e.a186=10168;e.a195=10169;e.a187=10170;e.a188=10171;e.a189=10172;e.a190=10173;e.a191=10174;e.a89=10088;e.a90=10089;e.a93=10090;e.a94=10091;e.a91=10092;e.a92=10093;e.a205=10094;e.a85=10095;e.a206=10096;e.a86=10097;e.a87=10098;e.a88=10099;e.a95=10100;e.a96=10101;e[".notdef"]=0}));t.getDingbatsGlyphsUnicode=i},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.clearUnicodeCaches=function clearUnicodeCaches(){s.clear()};t.getCharUnicodeCategory=function getCharUnicodeCategory(e){const t=s.get(e);if(t)return t;const a=e.match(i),r={isWhitespace:!!a?.[1],isZeroWidthDiacritic:!!a?.[2],isInvisibleFormatMark:!!a?.[3]};s.set(e,r);return r};t.getUnicodeForGlyph=function getUnicodeForGlyph(e,t){let a=t[e];if(void 0!==a)return a;if(!e)return-1;if("u"===e[0]){const t=e.length;let r;if(7===t&&"n"===e[1]&&"i"===e[2])r=e.substring(3);else{if(!(t>=5&&t<=7))return-1;r=e.substring(1)}if(r===r.toUpperCase()){a=parseInt(r,16);if(a>=0)return a}}return-1};t.getUnicodeRangeFor=function getUnicodeRangeFor(e,t=-1){if(-1!==t){const a=n[t];for(let r=0,n=a.length;r=a[r]&&e<=a[r+1])return t}for(let t=0,a=n.length;t=a[r]&&e<=a[r+1])return t}return-1};t.mapSpecialUnicodeValues=function mapSpecialUnicodeValues(e){if(e>=65520&&e<=65535)return 0;if(e>=62976&&e<=63743)return r()[e]||e;if(173===e)return 45;return e};const r=(0,a(3).getLookupTableFactory)((function(e){e[63721]=169;e[63193]=169;e[63720]=174;e[63194]=174;e[63722]=8482;e[63195]=8482;e[63729]=9127;e[63730]=9128;e[63731]=9129;e[63740]=9131;e[63741]=9132;e[63742]=9133;e[63726]=9121;e[63727]=9122;e[63728]=9123;e[63737]=9124;e[63738]=9125;e[63739]=9126;e[63723]=9115;e[63724]=9116;e[63725]=9117;e[63734]=9118;e[63735]=9119;e[63736]=9120}));const n=[[0,127],[128,255],[256,383],[384,591],[592,687,7424,7551,7552,7615],[688,767,42752,42783],[768,879,7616,7679],[880,1023],[11392,11519],[1024,1279,1280,1327,11744,11775,42560,42655],[1328,1423],[1424,1535],[42240,42559],[1536,1791,1872,1919],[1984,2047],[2304,2431],[2432,2559],[2560,2687],[2688,2815],[2816,2943],[2944,3071],[3072,3199],[3200,3327],[3328,3455],[3584,3711],[3712,3839],[4256,4351,11520,11567],[6912,7039],[4352,4607],[7680,7935,11360,11391,42784,43007],[7936,8191],[8192,8303,11776,11903],[8304,8351],[8352,8399],[8400,8447],[8448,8527],[8528,8591],[8592,8703,10224,10239,10496,10623,11008,11263],[8704,8959,10752,11007,10176,10223,10624,10751],[8960,9215],[9216,9279],[9280,9311],[9312,9471],[9472,9599],[9600,9631],[9632,9727],[9728,9983],[9984,10175],[12288,12351],[12352,12447],[12448,12543,12784,12799],[12544,12591,12704,12735],[12592,12687],[43072,43135],[12800,13055],[13056,13311],[44032,55215],[55296,57343],[67840,67871],[19968,40959,11904,12031,12032,12255,12272,12287,13312,19903,131072,173791,12688,12703],[57344,63743],[12736,12783,63744,64255,194560,195103],[64256,64335],[64336,65023],[65056,65071],[65040,65055],[65104,65135],[65136,65279],[65280,65519],[65520,65535],[3840,4095],[1792,1871],[1920,1983],[3456,3583],[4096,4255],[4608,4991,4992,5023,11648,11743],[5024,5119],[5120,5759],[5760,5791],[5792,5887],[6016,6143],[6144,6319],[10240,10495],[40960,42127],[5888,5919,5920,5951,5952,5983,5984,6015],[66304,66351],[66352,66383],[66560,66639],[118784,119039,119040,119295,119296,119375],[119808,120831],[1044480,1048573],[65024,65039,917760,917999],[917504,917631],[6400,6479],[6480,6527],[6528,6623],[6656,6687],[11264,11359],[11568,11647],[19904,19967],[43008,43055],[65536,65663,65664,65791,65792,65855],[65856,65935],[66432,66463],[66464,66527],[66640,66687],[66688,66735],[67584,67647],[68096,68191],[119552,119647],[73728,74751,74752,74879],[119648,119679],[7040,7103],[7168,7247],[7248,7295],[43136,43231],[43264,43311],[43312,43359],[43520,43615],[65936,65999],[66e3,66047],[66208,66271,66176,66207,67872,67903],[127024,127135,126976,127023]];const i=new RegExp("^(\\s)|(\\p{Mn})|(\\p{Cf})$","u"),s=new Map},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.getSerifFonts=t.getNonStdFontMap=t.getGlyphMapForStandardFonts=t.getFontNameToFileMap=void 0;t.getStandardFontName=function getStandardFontName(e){const t=(0,n.normalizeFontName)(e);return i()[t]};t.getSymbolsFonts=t.getSupplementalGlyphMapForCalibri=t.getSupplementalGlyphMapForArialBlack=t.getStdFontMap=void 0;t.isKnownFontName=function isKnownFontName(e){const t=(0,n.normalizeFontName)(e);return!!(i()[t]||o()[t]||c()[t]||l()[t])};var r=a(3),n=a(38);const i=(0,r.getLookupTableFactory)((function(e){e["Times-Roman"]="Times-Roman";e.Helvetica="Helvetica";e.Courier="Courier";e.Symbol="Symbol";e["Times-Bold"]="Times-Bold";e["Helvetica-Bold"]="Helvetica-Bold";e["Courier-Bold"]="Courier-Bold";e.ZapfDingbats="ZapfDingbats";e["Times-Italic"]="Times-Italic";e["Helvetica-Oblique"]="Helvetica-Oblique";e["Courier-Oblique"]="Courier-Oblique";e["Times-BoldItalic"]="Times-BoldItalic";e["Helvetica-BoldOblique"]="Helvetica-BoldOblique";e["Courier-BoldOblique"]="Courier-BoldOblique";e.ArialNarrow="Helvetica";e["ArialNarrow-Bold"]="Helvetica-Bold";e["ArialNarrow-BoldItalic"]="Helvetica-BoldOblique";e["ArialNarrow-Italic"]="Helvetica-Oblique";e.ArialBlack="Helvetica";e["ArialBlack-Bold"]="Helvetica-Bold";e["ArialBlack-BoldItalic"]="Helvetica-BoldOblique";e["ArialBlack-Italic"]="Helvetica-Oblique";e["Arial-Black"]="Helvetica";e["Arial-Black-Bold"]="Helvetica-Bold";e["Arial-Black-BoldItalic"]="Helvetica-BoldOblique";e["Arial-Black-Italic"]="Helvetica-Oblique";e.Arial="Helvetica";e["Arial-Bold"]="Helvetica-Bold";e["Arial-BoldItalic"]="Helvetica-BoldOblique";e["Arial-Italic"]="Helvetica-Oblique";e.ArialMT="Helvetica";e["Arial-BoldItalicMT"]="Helvetica-BoldOblique";e["Arial-BoldMT"]="Helvetica-Bold";e["Arial-ItalicMT"]="Helvetica-Oblique";e["Arial-BoldItalicMT-BoldItalic"]="Helvetica-BoldOblique";e["Arial-BoldMT-Bold"]="Helvetica-Bold";e["Arial-ItalicMT-Italic"]="Helvetica-Oblique";e.ArialUnicodeMS="Helvetica";e["ArialUnicodeMS-Bold"]="Helvetica-Bold";e["ArialUnicodeMS-BoldItalic"]="Helvetica-BoldOblique";e["ArialUnicodeMS-Italic"]="Helvetica-Oblique";e["Courier-BoldItalic"]="Courier-BoldOblique";e["Courier-Italic"]="Courier-Oblique";e.CourierNew="Courier";e["CourierNew-Bold"]="Courier-Bold";e["CourierNew-BoldItalic"]="Courier-BoldOblique";e["CourierNew-Italic"]="Courier-Oblique";e["CourierNewPS-BoldItalicMT"]="Courier-BoldOblique";e["CourierNewPS-BoldMT"]="Courier-Bold";e["CourierNewPS-ItalicMT"]="Courier-Oblique";e.CourierNewPSMT="Courier";e["Helvetica-BoldItalic"]="Helvetica-BoldOblique";e["Helvetica-Italic"]="Helvetica-Oblique";e["Symbol-Bold"]="Symbol";e["Symbol-BoldItalic"]="Symbol";e["Symbol-Italic"]="Symbol";e.TimesNewRoman="Times-Roman";e["TimesNewRoman-Bold"]="Times-Bold";e["TimesNewRoman-BoldItalic"]="Times-BoldItalic";e["TimesNewRoman-Italic"]="Times-Italic";e.TimesNewRomanPS="Times-Roman";e["TimesNewRomanPS-Bold"]="Times-Bold";e["TimesNewRomanPS-BoldItalic"]="Times-BoldItalic";e["TimesNewRomanPS-BoldItalicMT"]="Times-BoldItalic";e["TimesNewRomanPS-BoldMT"]="Times-Bold";e["TimesNewRomanPS-Italic"]="Times-Italic";e["TimesNewRomanPS-ItalicMT"]="Times-Italic";e.TimesNewRomanPSMT="Times-Roman";e["TimesNewRomanPSMT-Bold"]="Times-Bold";e["TimesNewRomanPSMT-BoldItalic"]="Times-BoldItalic";e["TimesNewRomanPSMT-Italic"]="Times-Italic"}));t.getStdFontMap=i;const s=(0,r.getLookupTableFactory)((function(e){e.Courier="FoxitFixed.pfb";e["Courier-Bold"]="FoxitFixedBold.pfb";e["Courier-BoldOblique"]="FoxitFixedBoldItalic.pfb";e["Courier-Oblique"]="FoxitFixedItalic.pfb";e.Helvetica="LiberationSans-Regular.ttf";e["Helvetica-Bold"]="LiberationSans-Bold.ttf";e["Helvetica-BoldOblique"]="LiberationSans-BoldItalic.ttf";e["Helvetica-Oblique"]="LiberationSans-Italic.ttf";e["Times-Roman"]="FoxitSerif.pfb";e["Times-Bold"]="FoxitSerifBold.pfb";e["Times-BoldItalic"]="FoxitSerifBoldItalic.pfb";e["Times-Italic"]="FoxitSerifItalic.pfb";e.Symbol="FoxitSymbol.pfb";e.ZapfDingbats="FoxitDingbats.pfb";e["LiberationSans-Regular"]="LiberationSans-Regular.ttf";e["LiberationSans-Bold"]="LiberationSans-Bold.ttf";e["LiberationSans-Italic"]="LiberationSans-Italic.ttf";e["LiberationSans-BoldItalic"]="LiberationSans-BoldItalic.ttf"}));t.getFontNameToFileMap=s;const o=(0,r.getLookupTableFactory)((function(e){e.Calibri="Helvetica";e["Calibri-Bold"]="Helvetica-Bold";e["Calibri-BoldItalic"]="Helvetica-BoldOblique";e["Calibri-Italic"]="Helvetica-Oblique";e.CenturyGothic="Helvetica";e["CenturyGothic-Bold"]="Helvetica-Bold";e["CenturyGothic-BoldItalic"]="Helvetica-BoldOblique";e["CenturyGothic-Italic"]="Helvetica-Oblique";e.ComicSansMS="Comic Sans MS";e["ComicSansMS-Bold"]="Comic Sans MS-Bold";e["ComicSansMS-BoldItalic"]="Comic Sans MS-BoldItalic";e["ComicSansMS-Italic"]="Comic Sans MS-Italic";e.Impact="Helvetica";e["ItcSymbol-Bold"]="Helvetica-Bold";e["ItcSymbol-BoldItalic"]="Helvetica-BoldOblique";e["ItcSymbol-Book"]="Helvetica";e["ItcSymbol-BookItalic"]="Helvetica-Oblique";e["ItcSymbol-Medium"]="Helvetica";e["ItcSymbol-MediumItalic"]="Helvetica-Oblique";e.LucidaConsole="Courier";e["LucidaConsole-Bold"]="Courier-Bold";e["LucidaConsole-BoldItalic"]="Courier-BoldOblique";e["LucidaConsole-Italic"]="Courier-Oblique";e["LucidaSans-Demi"]="Helvetica-Bold";e["MS-Gothic"]="MS Gothic";e["MS-Gothic-Bold"]="MS Gothic-Bold";e["MS-Gothic-BoldItalic"]="MS Gothic-BoldItalic";e["MS-Gothic-Italic"]="MS Gothic-Italic";e["MS-Mincho"]="MS Mincho";e["MS-Mincho-Bold"]="MS Mincho-Bold";e["MS-Mincho-BoldItalic"]="MS Mincho-BoldItalic";e["MS-Mincho-Italic"]="MS Mincho-Italic";e["MS-PGothic"]="MS PGothic";e["MS-PGothic-Bold"]="MS PGothic-Bold";e["MS-PGothic-BoldItalic"]="MS PGothic-BoldItalic";e["MS-PGothic-Italic"]="MS PGothic-Italic";e["MS-PMincho"]="MS PMincho";e["MS-PMincho-Bold"]="MS PMincho-Bold";e["MS-PMincho-BoldItalic"]="MS PMincho-BoldItalic";e["MS-PMincho-Italic"]="MS PMincho-Italic";e.NuptialScript="Times-Italic";e.SegoeUISymbol="Helvetica"}));t.getNonStdFontMap=o;const c=(0,r.getLookupTableFactory)((function(e){e["Adobe Jenson"]=!0;e["Adobe Text"]=!0;e.Albertus=!0;e.Aldus=!0;e.Alexandria=!0;e.Algerian=!0;e["American Typewriter"]=!0;e.Antiqua=!0;e.Apex=!0;e.Arno=!0;e.Aster=!0;e.Aurora=!0;e.Baskerville=!0;e.Bell=!0;e.Bembo=!0;e["Bembo Schoolbook"]=!0;e.Benguiat=!0;e["Berkeley Old Style"]=!0;e["Bernhard Modern"]=!0;e["Berthold City"]=!0;e.Bodoni=!0;e["Bauer Bodoni"]=!0;e["Book Antiqua"]=!0;e.Bookman=!0;e["Bordeaux Roman"]=!0;e["Californian FB"]=!0;e.Calisto=!0;e.Calvert=!0;e.Capitals=!0;e.Cambria=!0;e.Cartier=!0;e.Caslon=!0;e.Catull=!0;e.Centaur=!0;e["Century Old Style"]=!0;e["Century Schoolbook"]=!0;e.Chaparral=!0;e["Charis SIL"]=!0;e.Cheltenham=!0;e["Cholla Slab"]=!0;e.Clarendon=!0;e.Clearface=!0;e.Cochin=!0;e.Colonna=!0;e["Computer Modern"]=!0;e["Concrete Roman"]=!0;e.Constantia=!0;e["Cooper Black"]=!0;e.Corona=!0;e.Ecotype=!0;e.Egyptienne=!0;e.Elephant=!0;e.Excelsior=!0;e.Fairfield=!0;e["FF Scala"]=!0;e.Folkard=!0;e.Footlight=!0;e.FreeSerif=!0;e["Friz Quadrata"]=!0;e.Garamond=!0;e.Gentium=!0;e.Georgia=!0;e.Gloucester=!0;e["Goudy Old Style"]=!0;e["Goudy Schoolbook"]=!0;e["Goudy Pro Font"]=!0;e.Granjon=!0;e["Guardian Egyptian"]=!0;e.Heather=!0;e.Hercules=!0;e["High Tower Text"]=!0;e.Hiroshige=!0;e["Hoefler Text"]=!0;e["Humana Serif"]=!0;e.Imprint=!0;e["Ionic No. 5"]=!0;e.Janson=!0;e.Joanna=!0;e.Korinna=!0;e.Lexicon=!0;e.LiberationSerif=!0;e["Liberation Serif"]=!0;e["Linux Libertine"]=!0;e.Literaturnaya=!0;e.Lucida=!0;e["Lucida Bright"]=!0;e.Melior=!0;e.Memphis=!0;e.Miller=!0;e.Minion=!0;e.Modern=!0;e["Mona Lisa"]=!0;e["Mrs Eaves"]=!0;e["MS Serif"]=!0;e["Museo Slab"]=!0;e["New York"]=!0;e["Nimbus Roman"]=!0;e["NPS Rawlinson Roadway"]=!0;e.NuptialScript=!0;e.Palatino=!0;e.Perpetua=!0;e.Plantin=!0;e["Plantin Schoolbook"]=!0;e.Playbill=!0;e["Poor Richard"]=!0;e["Rawlinson Roadway"]=!0;e.Renault=!0;e.Requiem=!0;e.Rockwell=!0;e.Roman=!0;e["Rotis Serif"]=!0;e.Sabon=!0;e.Scala=!0;e.Seagull=!0;e.Sistina=!0;e.Souvenir=!0;e.STIX=!0;e["Stone Informal"]=!0;e["Stone Serif"]=!0;e.Sylfaen=!0;e.Times=!0;e.Trajan=!0;e["Trinité"]=!0;e["Trump Mediaeval"]=!0;e.Utopia=!0;e["Vale Type"]=!0;e["Bitstream Vera"]=!0;e["Vera Serif"]=!0;e.Versailles=!0;e.Wanted=!0;e.Weiss=!0;e["Wide Latin"]=!0;e.Windsor=!0;e.XITS=!0}));t.getSerifFonts=c;const l=(0,r.getLookupTableFactory)((function(e){e.Dingbats=!0;e.Symbol=!0;e.ZapfDingbats=!0;e.Wingdings=!0;e["Wingdings-Bold"]=!0;e["Wingdings-Regular"]=!0}));t.getSymbolsFonts=l;const h=(0,r.getLookupTableFactory)((function(e){e[2]=10;e[3]=32;e[4]=33;e[5]=34;e[6]=35;e[7]=36;e[8]=37;e[9]=38;e[10]=39;e[11]=40;e[12]=41;e[13]=42;e[14]=43;e[15]=44;e[16]=45;e[17]=46;e[18]=47;e[19]=48;e[20]=49;e[21]=50;e[22]=51;e[23]=52;e[24]=53;e[25]=54;e[26]=55;e[27]=56;e[28]=57;e[29]=58;e[30]=894;e[31]=60;e[32]=61;e[33]=62;e[34]=63;e[35]=64;e[36]=65;e[37]=66;e[38]=67;e[39]=68;e[40]=69;e[41]=70;e[42]=71;e[43]=72;e[44]=73;e[45]=74;e[46]=75;e[47]=76;e[48]=77;e[49]=78;e[50]=79;e[51]=80;e[52]=81;e[53]=82;e[54]=83;e[55]=84;e[56]=85;e[57]=86;e[58]=87;e[59]=88;e[60]=89;e[61]=90;e[62]=91;e[63]=92;e[64]=93;e[65]=94;e[66]=95;e[67]=96;e[68]=97;e[69]=98;e[70]=99;e[71]=100;e[72]=101;e[73]=102;e[74]=103;e[75]=104;e[76]=105;e[77]=106;e[78]=107;e[79]=108;e[80]=109;e[81]=110;e[82]=111;e[83]=112;e[84]=113;e[85]=114;e[86]=115;e[87]=116;e[88]=117;e[89]=118;e[90]=119;e[91]=120;e[92]=121;e[93]=122;e[94]=123;e[95]=124;e[96]=125;e[97]=126;e[98]=196;e[99]=197;e[100]=199;e[101]=201;e[102]=209;e[103]=214;e[104]=220;e[105]=225;e[106]=224;e[107]=226;e[108]=228;e[109]=227;e[110]=229;e[111]=231;e[112]=233;e[113]=232;e[114]=234;e[115]=235;e[116]=237;e[117]=236;e[118]=238;e[119]=239;e[120]=241;e[121]=243;e[122]=242;e[123]=244;e[124]=246;e[125]=245;e[126]=250;e[127]=249;e[128]=251;e[129]=252;e[130]=8224;e[131]=176;e[132]=162;e[133]=163;e[134]=167;e[135]=8226;e[136]=182;e[137]=223;e[138]=174;e[139]=169;e[140]=8482;e[141]=180;e[142]=168;e[143]=8800;e[144]=198;e[145]=216;e[146]=8734;e[147]=177;e[148]=8804;e[149]=8805;e[150]=165;e[151]=181;e[152]=8706;e[153]=8721;e[154]=8719;e[156]=8747;e[157]=170;e[158]=186;e[159]=8486;e[160]=230;e[161]=248;e[162]=191;e[163]=161;e[164]=172;e[165]=8730;e[166]=402;e[167]=8776;e[168]=8710;e[169]=171;e[170]=187;e[171]=8230;e[179]=8220;e[180]=8221;e[181]=8216;e[182]=8217;e[200]=193;e[203]=205;e[207]=211;e[210]=218;e[223]=711;e[224]=321;e[225]=322;e[226]=352;e[227]=353;e[228]=381;e[229]=382;e[233]=221;e[234]=253;e[252]=263;e[253]=268;e[254]=269;e[258]=258;e[260]=260;e[261]=261;e[265]=280;e[266]=281;e[267]=282;e[268]=283;e[269]=313;e[275]=323;e[276]=324;e[278]=328;e[283]=344;e[284]=345;e[285]=346;e[286]=347;e[292]=367;e[295]=377;e[296]=378;e[298]=380;e[305]=963;e[306]=964;e[307]=966;e[308]=8215;e[309]=8252;e[310]=8319;e[311]=8359;e[312]=8592;e[313]=8593;e[337]=9552;e[493]=1039;e[494]=1040;e[672]=1488;e[673]=1489;e[674]=1490;e[675]=1491;e[676]=1492;e[677]=1493;e[678]=1494;e[679]=1495;e[680]=1496;e[681]=1497;e[682]=1498;e[683]=1499;e[684]=1500;e[685]=1501;e[686]=1502;e[687]=1503;e[688]=1504;e[689]=1505;e[690]=1506;e[691]=1507;e[692]=1508;e[693]=1509;e[694]=1510;e[695]=1511;e[696]=1512;e[697]=1513;e[698]=1514;e[705]=1524;e[706]=8362;e[710]=64288;e[711]=64298;e[759]=1617;e[761]=1776;e[763]=1778;e[775]=1652;e[777]=1764;e[778]=1780;e[779]=1781;e[780]=1782;e[782]=771;e[783]=64726;e[786]=8363;e[788]=8532;e[790]=768;e[791]=769;e[792]=768;e[795]=803;e[797]=64336;e[798]=64337;e[799]=64342;e[800]=64343;e[801]=64344;e[802]=64345;e[803]=64362;e[804]=64363;e[805]=64364;e[2424]=7821;e[2425]=7822;e[2426]=7823;e[2427]=7824;e[2428]=7825;e[2429]=7826;e[2430]=7827;e[2433]=7682;e[2678]=8045;e[2679]=8046;e[2830]=1552;e[2838]=686;e[2840]=751;e[2842]=753;e[2843]=754;e[2844]=755;e[2846]=757;e[2856]=767;e[2857]=848;e[2858]=849;e[2862]=853;e[2863]=854;e[2864]=855;e[2865]=861;e[2866]=862;e[2906]=7460;e[2908]=7462;e[2909]=7463;e[2910]=7464;e[2912]=7466;e[2913]=7467;e[2914]=7468;e[2916]=7470;e[2917]=7471;e[2918]=7472;e[2920]=7474;e[2921]=7475;e[2922]=7476;e[2924]=7478;e[2925]=7479;e[2926]=7480;e[2928]=7482;e[2929]=7483;e[2930]=7484;e[2932]=7486;e[2933]=7487;e[2934]=7488;e[2936]=7490;e[2937]=7491;e[2938]=7492;e[2940]=7494;e[2941]=7495;e[2942]=7496;e[2944]=7498;e[2946]=7500;e[2948]=7502;e[2950]=7504;e[2951]=7505;e[2952]=7506;e[2954]=7508;e[2955]=7509;e[2956]=7510;e[2958]=7512;e[2959]=7513;e[2960]=7514;e[2962]=7516;e[2963]=7517;e[2964]=7518;e[2966]=7520;e[2967]=7521;e[2968]=7522;e[2970]=7524;e[2971]=7525;e[2972]=7526;e[2974]=7528;e[2975]=7529;e[2976]=7530;e[2978]=1537;e[2979]=1538;e[2980]=1539;e[2982]=1549;e[2983]=1551;e[2984]=1552;e[2986]=1554;e[2987]=1555;e[2988]=1556;e[2990]=1623;e[2991]=1624;e[2995]=1775;e[2999]=1791;e[3002]=64290;e[3003]=64291;e[3004]=64292;e[3006]=64294;e[3007]=64295;e[3008]=64296;e[3011]=1900;e[3014]=8223;e[3015]=8244;e[3017]=7532;e[3018]=7533;e[3019]=7534;e[3075]=7590;e[3076]=7591;e[3079]=7594;e[3080]=7595;e[3083]=7598;e[3084]=7599;e[3087]=7602;e[3088]=7603;e[3091]=7606;e[3092]=7607;e[3095]=7610;e[3096]=7611;e[3099]=7614;e[3100]=7615;e[3103]=7618;e[3104]=7619;e[3107]=8337;e[3108]=8338;e[3116]=1884;e[3119]=1885;e[3120]=1885;e[3123]=1886;e[3124]=1886;e[3127]=1887;e[3128]=1887;e[3131]=1888;e[3132]=1888;e[3135]=1889;e[3136]=1889;e[3139]=1890;e[3140]=1890;e[3143]=1891;e[3144]=1891;e[3147]=1892;e[3148]=1892;e[3153]=580;e[3154]=581;e[3157]=584;e[3158]=585;e[3161]=588;e[3162]=589;e[3165]=891;e[3166]=892;e[3169]=1274;e[3170]=1275;e[3173]=1278;e[3174]=1279;e[3181]=7622;e[3182]=7623;e[3282]=11799;e[3316]=578;e[3379]=42785;e[3393]=1159;e[3416]=8377}));t.getGlyphMapForStandardFonts=h;const u=(0,r.getLookupTableFactory)((function(e){e[227]=322;e[264]=261;e[291]=346}));t.getSupplementalGlyphMapForArialBlack=u;const d=(0,r.getLookupTableFactory)((function(e){e[1]=32;e[4]=65;e[5]=192;e[6]=193;e[9]=196;e[17]=66;e[18]=67;e[21]=268;e[24]=68;e[28]=69;e[29]=200;e[30]=201;e[32]=282;e[38]=70;e[39]=71;e[44]=72;e[47]=73;e[48]=204;e[49]=205;e[58]=74;e[60]=75;e[62]=76;e[68]=77;e[69]=78;e[75]=79;e[76]=210;e[80]=214;e[87]=80;e[89]=81;e[90]=82;e[92]=344;e[94]=83;e[97]=352;e[100]=84;e[104]=85;e[109]=220;e[115]=86;e[116]=87;e[121]=88;e[122]=89;e[124]=221;e[127]=90;e[129]=381;e[258]=97;e[259]=224;e[260]=225;e[263]=228;e[268]=261;e[271]=98;e[272]=99;e[273]=263;e[275]=269;e[282]=100;e[286]=101;e[287]=232;e[288]=233;e[290]=283;e[295]=281;e[296]=102;e[336]=103;e[346]=104;e[349]=105;e[350]=236;e[351]=237;e[361]=106;e[364]=107;e[367]=108;e[371]=322;e[373]=109;e[374]=110;e[381]=111;e[382]=242;e[383]=243;e[386]=246;e[393]=112;e[395]=113;e[396]=114;e[398]=345;e[400]=115;e[401]=347;e[403]=353;e[410]=116;e[437]=117;e[442]=252;e[448]=118;e[449]=119;e[454]=120;e[455]=121;e[457]=253;e[460]=122;e[462]=382;e[463]=380;e[853]=44;e[855]=58;e[856]=46;e[876]=47;e[878]=45;e[882]=45;e[894]=40;e[895]=41;e[896]=91;e[897]=93;e[923]=64;e[1004]=48;e[1005]=49;e[1006]=50;e[1007]=51;e[1008]=52;e[1009]=53;e[1010]=54;e[1011]=55;e[1012]=56;e[1013]=57;e[1081]=37;e[1085]=43;e[1086]=45}));t.getSupplementalGlyphMapForCalibri=d},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ToUnicodeMap=t.IdentityToUnicodeMap=void 0;var r=a(2);t.ToUnicodeMap=class ToUnicodeMap{constructor(e=[]){this._map=e}get length(){return this._map.length}forEach(e){for(const t in this._map)e(t,this._map[t].charCodeAt(0))}has(e){return void 0!==this._map[e]}get(e){return this._map[e]}charCodeOf(e){const t=this._map;if(t.length<=65536)return t.indexOf(e);for(const a in t)if(t[a]===e)return 0|a;return-1}amend(e){for(const t in e)this._map[t]=e[t]}};t.IdentityToUnicodeMap=class IdentityToUnicodeMap{constructor(e,t){this.firstChar=e;this.lastChar=t}get length(){return this.lastChar+1-this.firstChar}forEach(e){for(let t=this.firstChar,a=this.lastChar;t<=a;t++)e(t,t)}has(e){return this.firstChar<=e&&e<=this.lastChar}get(e){if(this.firstChar<=e&&e<=this.lastChar)return String.fromCharCode(e)}charCodeOf(e){return Number.isInteger(e)&&e>=this.firstChar&&e<=this.lastChar?e:-1}amend(e){(0,r.unreachable)("Should not call amend()")}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CFFFont=void 0;var r=a(35),n=a(38),i=a(2);t.CFFFont=class CFFFont{constructor(e,t){this.properties=t;const a=new r.CFFParser(e,t,n.SEAC_ANALYSIS_ENABLED);this.cff=a.parse();this.cff.duplicateFirstGlyph();const s=new r.CFFCompiler(this.cff);this.seacs=this.cff.seacs;try{this.data=s.compile()}catch{(0,i.warn)("Failed to compile font "+t.loadedName);this.data=e}this._createBuiltInEncoding()}get numGlyphs(){return this.cff.charStrings.count}getCharset(){return this.cff.charset.charset}getGlyphMapping(){const e=this.cff,t=this.properties,{cidToGidMap:a,cMap:r}=t,i=e.charset.charset;let s,o;if(t.composite){let t,n;if(a?.length>0){t=Object.create(null);for(let e=0,r=a.length;e=0){const r=a[t];r&&(n[e]=r)}}n.length>0&&(this.properties.builtInEncoding=n)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.FontRendererFactory=void 0;var r=a(2),n=a(35),i=a(39),s=a(37),o=a(8);function getUint32(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function getUint16(e,t){return e[t]<<8|e[t+1]}function getInt16(e,t){return(e[t]<<24|e[t+1]<<16)>>16}function getInt8(e,t){return e[t]<<24>>24}function getFloat214(e,t){return getInt16(e,t)/16384}function getSubroutineBias(e){const t=e.length;let a=32768;t<1240?a=107:t<33900&&(a=1131);return a}function parseCmap(e,t,a){const n=1===getUint16(e,t+2)?getUint32(e,t+8):getUint32(e,t+16),i=getUint16(e,t+n);let s,o,c;if(4===i){getUint16(e,t+n+2);const a=getUint16(e,t+n+6)>>1;o=t+n+14;s=[];for(c=0;c>1;a0;)h.push({flags:i})}for(a=0;a>1;S=!0;break;case 4:c+=i.pop();moveTo(o,c);S=!0;break;case 5:for(;i.length>0;){o+=i.shift();c+=i.shift();lineTo(o,c)}break;case 6:for(;i.length>0;){o+=i.shift();lineTo(o,c);if(0===i.length)break;c+=i.shift();lineTo(o,c)}break;case 7:for(;i.length>0;){c+=i.shift();lineTo(o,c);if(0===i.length)break;o+=i.shift();lineTo(o,c)}break;case 8:for(;i.length>0;){u=o+i.shift();f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g+i.shift();bezierCurveTo(u,f,d,g,o,c)}break;case 10:y=i.pop();w=null;if(a.isCFFCIDFont){const e=a.fdSelect.getFDIndex(n);if(e>=0&&eMath.abs(c-t)?o+=i.shift():c+=i.shift();bezierCurveTo(u,f,d,g,o,c);break;default:throw new r.FormatError(`unknown operator: 12 ${x}`)}break;case 14:if(i.length>=4){const e=i.pop(),r=i.pop();c=i.pop();o=i.pop();t.push({cmd:"save"},{cmd:"translate",args:[o,c]});let n=lookupCmap(a.cmap,String.fromCharCode(a.glyphNameMap[s.StandardEncoding[e]]));compileCharString(a.glyphs[n.glyphId],t,a,n.glyphId);t.push({cmd:"restore"});n=lookupCmap(a.cmap,String.fromCharCode(a.glyphNameMap[s.StandardEncoding[r]]));compileCharString(a.glyphs[n.glyphId],t,a,n.glyphId)}return;case 19:case 20:l+=i.length>>1;h+=l+7>>3;S=!0;break;case 21:c+=i.pop();o+=i.pop();moveTo(o,c);S=!0;break;case 22:o+=i.pop();moveTo(o,c);S=!0;break;case 24:for(;i.length>2;){u=o+i.shift();f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g+i.shift();bezierCurveTo(u,f,d,g,o,c)}o+=i.shift();c+=i.shift();lineTo(o,c);break;case 25:for(;i.length>6;){o+=i.shift();c+=i.shift();lineTo(o,c)}u=o+i.shift();f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g+i.shift();bezierCurveTo(u,f,d,g,o,c);break;case 26:i.length%2&&(o+=i.shift());for(;i.length>0;){u=o;f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d;c=g+i.shift();bezierCurveTo(u,f,d,g,o,c)}break;case 27:i.length%2&&(c+=i.shift());for(;i.length>0;){u=o+i.shift();f=c;d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g;bezierCurveTo(u,f,d,g,o,c)}break;case 28:i.push((e[h]<<24|e[h+1]<<16)>>16);h+=2;break;case 29:y=i.pop()+a.gsubrsBias;w=a.gsubrs[y];w&&parse(w);break;case 30:for(;i.length>0;){u=o;f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g+(1===i.length?i.shift():0);bezierCurveTo(u,f,d,g,o,c);if(0===i.length)break;u=o+i.shift();f=c;d=u+i.shift();g=f+i.shift();c=g+i.shift();o=d+(1===i.length?i.shift():0);bezierCurveTo(u,f,d,g,o,c)}break;case 31:for(;i.length>0;){u=o+i.shift();f=c;d=u+i.shift();g=f+i.shift();c=g+i.shift();o=d+(1===i.length?i.shift():0);bezierCurveTo(u,f,d,g,o,c);if(0===i.length)break;u=o;f=c+i.shift();d=u+i.shift();g=f+i.shift();o=d+i.shift();c=g+(1===i.length?i.shift():0);bezierCurveTo(u,f,d,g,o,c)}break;default:if(x<32)throw new r.FormatError(`unknown operator: ${x}`);if(x<247)i.push(x-139);else if(x<251)i.push(256*(x-247)+e[h++]+108);else if(x<255)i.push(256*-(x-251)-e[h++]-108);else{i.push((e[h]<<24|e[h+1]<<16|e[h+2]<<8|e[h+3])/65536);h+=4}}S&&(i.length=0)}}(e)}const c=[];class CompiledFont{constructor(e){this.constructor===CompiledFont&&(0,r.unreachable)("Cannot initialize CompiledFont.");this.fontMatrix=e;this.compiledGlyphs=Object.create(null);this.compiledCharCodeToGlyphId=Object.create(null)}getPathJs(e){const{charCode:t,glyphId:a}=lookupCmap(this.cmap,e);let r=this.compiledGlyphs[a];if(!r)try{r=this.compileGlyph(this.glyphs[a],a);this.compiledGlyphs[a]=r}catch(e){this.compiledGlyphs[a]=c;void 0===this.compiledCharCodeToGlyphId[t]&&(this.compiledCharCodeToGlyphId[t]=a);throw e}void 0===this.compiledCharCodeToGlyphId[t]&&(this.compiledCharCodeToGlyphId[t]=a);return r}compileGlyph(e,t){if(!e||0===e.length||14===e[0])return c;let a=this.fontMatrix;if(this.isCFFCIDFont){const e=this.fdSelect.getFDIndex(t);if(e>=0&&e2*getUint16(e,t)}const i=[];let s=n(t,0);for(let a=r;a{Object.defineProperty(t,"__esModule",{value:!0});t.getMetrics=t.getFontBasicMetrics=void 0;var r=a(3);const n=(0,r.getLookupTableFactory)((function(e){e.Courier=600;e["Courier-Bold"]=600;e["Courier-BoldOblique"]=600;e["Courier-Oblique"]=600;e.Helvetica=(0,r.getLookupTableFactory)((function(e){e.space=278;e.exclam=278;e.quotedbl=355;e.numbersign=556;e.dollar=556;e.percent=889;e.ampersand=667;e.quoteright=222;e.parenleft=333;e.parenright=333;e.asterisk=389;e.plus=584;e.comma=278;e.hyphen=333;e.period=278;e.slash=278;e.zero=556;e.one=556;e.two=556;e.three=556;e.four=556;e.five=556;e.six=556;e.seven=556;e.eight=556;e.nine=556;e.colon=278;e.semicolon=278;e.less=584;e.equal=584;e.greater=584;e.question=556;e.at=1015;e.A=667;e.B=667;e.C=722;e.D=722;e.E=667;e.F=611;e.G=778;e.H=722;e.I=278;e.J=500;e.K=667;e.L=556;e.M=833;e.N=722;e.O=778;e.P=667;e.Q=778;e.R=722;e.S=667;e.T=611;e.U=722;e.V=667;e.W=944;e.X=667;e.Y=667;e.Z=611;e.bracketleft=278;e.backslash=278;e.bracketright=278;e.asciicircum=469;e.underscore=556;e.quoteleft=222;e.a=556;e.b=556;e.c=500;e.d=556;e.e=556;e.f=278;e.g=556;e.h=556;e.i=222;e.j=222;e.k=500;e.l=222;e.m=833;e.n=556;e.o=556;e.p=556;e.q=556;e.r=333;e.s=500;e.t=278;e.u=556;e.v=500;e.w=722;e.x=500;e.y=500;e.z=500;e.braceleft=334;e.bar=260;e.braceright=334;e.asciitilde=584;e.exclamdown=333;e.cent=556;e.sterling=556;e.fraction=167;e.yen=556;e.florin=556;e.section=556;e.currency=556;e.quotesingle=191;e.quotedblleft=333;e.guillemotleft=556;e.guilsinglleft=333;e.guilsinglright=333;e.fi=500;e.fl=500;e.endash=556;e.dagger=556;e.daggerdbl=556;e.periodcentered=278;e.paragraph=537;e.bullet=350;e.quotesinglbase=222;e.quotedblbase=333;e.quotedblright=333;e.guillemotright=556;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=611;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=1e3;e.ordfeminine=370;e.Lslash=556;e.Oslash=778;e.OE=1e3;e.ordmasculine=365;e.ae=889;e.dotlessi=278;e.lslash=222;e.oslash=611;e.oe=944;e.germandbls=611;e.Idieresis=278;e.eacute=556;e.abreve=556;e.uhungarumlaut=556;e.ecaron=556;e.Ydieresis=667;e.divide=584;e.Yacute=667;e.Acircumflex=667;e.aacute=556;e.Ucircumflex=722;e.yacute=500;e.scommaaccent=500;e.ecircumflex=556;e.Uring=722;e.Udieresis=722;e.aogonek=556;e.Uacute=722;e.uogonek=556;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=737;e.Emacron=667;e.ccaron=500;e.aring=556;e.Ncommaaccent=722;e.lacute=222;e.agrave=556;e.Tcommaaccent=611;e.Cacute=722;e.atilde=556;e.Edotaccent=667;e.scaron=500;e.scedilla=500;e.iacute=278;e.lozenge=471;e.Rcaron=722;e.Gcommaaccent=778;e.ucircumflex=556;e.acircumflex=556;e.Amacron=667;e.rcaron=333;e.ccedilla=500;e.Zdotaccent=611;e.Thorn=667;e.Omacron=778;e.Racute=722;e.Sacute=667;e.dcaron=643;e.Umacron=722;e.uring=556;e.threesuperior=333;e.Ograve=778;e.Agrave=667;e.Abreve=667;e.multiply=584;e.uacute=556;e.Tcaron=611;e.partialdiff=476;e.ydieresis=500;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=556;e.edieresis=556;e.cacute=500;e.nacute=556;e.umacron=556;e.Ncaron=722;e.Iacute=278;e.plusminus=584;e.brokenbar=260;e.registered=737;e.Gbreve=778;e.Idotaccent=278;e.summation=600;e.Egrave=667;e.racute=333;e.omacron=556;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=722;e.lcommaaccent=222;e.tcaron=317;e.eogonek=556;e.Uogonek=722;e.Aacute=667;e.Adieresis=667;e.egrave=556;e.zacute=500;e.iogonek=222;e.Oacute=778;e.oacute=556;e.amacron=556;e.sacute=500;e.idieresis=278;e.Ocircumflex=778;e.Ugrave=722;e.Delta=612;e.thorn=556;e.twosuperior=333;e.Odieresis=778;e.mu=556;e.igrave=278;e.ohungarumlaut=556;e.Eogonek=667;e.dcroat=556;e.threequarters=834;e.Scedilla=667;e.lcaron=299;e.Kcommaaccent=667;e.Lacute=556;e.trademark=1e3;e.edotaccent=556;e.Igrave=278;e.Imacron=278;e.Lcaron=556;e.onehalf=834;e.lessequal=549;e.ocircumflex=556;e.ntilde=556;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=556;e.gbreve=556;e.onequarter=834;e.Scaron=667;e.Scommaaccent=667;e.Ohungarumlaut=778;e.degree=400;e.ograve=556;e.Ccaron=722;e.ugrave=556;e.radical=453;e.Dcaron=722;e.rcommaaccent=333;e.Ntilde=722;e.otilde=556;e.Rcommaaccent=722;e.Lcommaaccent=556;e.Atilde=667;e.Aogonek=667;e.Aring=667;e.Otilde=778;e.zdotaccent=500;e.Ecaron=667;e.Iogonek=278;e.kcommaaccent=500;e.minus=584;e.Icircumflex=278;e.ncaron=556;e.tcommaaccent=278;e.logicalnot=584;e.odieresis=556;e.udieresis=556;e.notequal=549;e.gcommaaccent=556;e.eth=556;e.zcaron=500;e.ncommaaccent=556;e.onesuperior=333;e.imacron=278;e.Euro=556}));e["Helvetica-Bold"]=(0,r.getLookupTableFactory)((function(e){e.space=278;e.exclam=333;e.quotedbl=474;e.numbersign=556;e.dollar=556;e.percent=889;e.ampersand=722;e.quoteright=278;e.parenleft=333;e.parenright=333;e.asterisk=389;e.plus=584;e.comma=278;e.hyphen=333;e.period=278;e.slash=278;e.zero=556;e.one=556;e.two=556;e.three=556;e.four=556;e.five=556;e.six=556;e.seven=556;e.eight=556;e.nine=556;e.colon=333;e.semicolon=333;e.less=584;e.equal=584;e.greater=584;e.question=611;e.at=975;e.A=722;e.B=722;e.C=722;e.D=722;e.E=667;e.F=611;e.G=778;e.H=722;e.I=278;e.J=556;e.K=722;e.L=611;e.M=833;e.N=722;e.O=778;e.P=667;e.Q=778;e.R=722;e.S=667;e.T=611;e.U=722;e.V=667;e.W=944;e.X=667;e.Y=667;e.Z=611;e.bracketleft=333;e.backslash=278;e.bracketright=333;e.asciicircum=584;e.underscore=556;e.quoteleft=278;e.a=556;e.b=611;e.c=556;e.d=611;e.e=556;e.f=333;e.g=611;e.h=611;e.i=278;e.j=278;e.k=556;e.l=278;e.m=889;e.n=611;e.o=611;e.p=611;e.q=611;e.r=389;e.s=556;e.t=333;e.u=611;e.v=556;e.w=778;e.x=556;e.y=556;e.z=500;e.braceleft=389;e.bar=280;e.braceright=389;e.asciitilde=584;e.exclamdown=333;e.cent=556;e.sterling=556;e.fraction=167;e.yen=556;e.florin=556;e.section=556;e.currency=556;e.quotesingle=238;e.quotedblleft=500;e.guillemotleft=556;e.guilsinglleft=333;e.guilsinglright=333;e.fi=611;e.fl=611;e.endash=556;e.dagger=556;e.daggerdbl=556;e.periodcentered=278;e.paragraph=556;e.bullet=350;e.quotesinglbase=278;e.quotedblbase=500;e.quotedblright=500;e.guillemotright=556;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=611;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=1e3;e.ordfeminine=370;e.Lslash=611;e.Oslash=778;e.OE=1e3;e.ordmasculine=365;e.ae=889;e.dotlessi=278;e.lslash=278;e.oslash=611;e.oe=944;e.germandbls=611;e.Idieresis=278;e.eacute=556;e.abreve=556;e.uhungarumlaut=611;e.ecaron=556;e.Ydieresis=667;e.divide=584;e.Yacute=667;e.Acircumflex=722;e.aacute=556;e.Ucircumflex=722;e.yacute=556;e.scommaaccent=556;e.ecircumflex=556;e.Uring=722;e.Udieresis=722;e.aogonek=556;e.Uacute=722;e.uogonek=611;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=737;e.Emacron=667;e.ccaron=556;e.aring=556;e.Ncommaaccent=722;e.lacute=278;e.agrave=556;e.Tcommaaccent=611;e.Cacute=722;e.atilde=556;e.Edotaccent=667;e.scaron=556;e.scedilla=556;e.iacute=278;e.lozenge=494;e.Rcaron=722;e.Gcommaaccent=778;e.ucircumflex=611;e.acircumflex=556;e.Amacron=722;e.rcaron=389;e.ccedilla=556;e.Zdotaccent=611;e.Thorn=667;e.Omacron=778;e.Racute=722;e.Sacute=667;e.dcaron=743;e.Umacron=722;e.uring=611;e.threesuperior=333;e.Ograve=778;e.Agrave=722;e.Abreve=722;e.multiply=584;e.uacute=611;e.Tcaron=611;e.partialdiff=494;e.ydieresis=556;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=556;e.edieresis=556;e.cacute=556;e.nacute=611;e.umacron=611;e.Ncaron=722;e.Iacute=278;e.plusminus=584;e.brokenbar=280;e.registered=737;e.Gbreve=778;e.Idotaccent=278;e.summation=600;e.Egrave=667;e.racute=389;e.omacron=611;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=722;e.lcommaaccent=278;e.tcaron=389;e.eogonek=556;e.Uogonek=722;e.Aacute=722;e.Adieresis=722;e.egrave=556;e.zacute=500;e.iogonek=278;e.Oacute=778;e.oacute=611;e.amacron=556;e.sacute=556;e.idieresis=278;e.Ocircumflex=778;e.Ugrave=722;e.Delta=612;e.thorn=611;e.twosuperior=333;e.Odieresis=778;e.mu=611;e.igrave=278;e.ohungarumlaut=611;e.Eogonek=667;e.dcroat=611;e.threequarters=834;e.Scedilla=667;e.lcaron=400;e.Kcommaaccent=722;e.Lacute=611;e.trademark=1e3;e.edotaccent=556;e.Igrave=278;e.Imacron=278;e.Lcaron=611;e.onehalf=834;e.lessequal=549;e.ocircumflex=611;e.ntilde=611;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=556;e.gbreve=611;e.onequarter=834;e.Scaron=667;e.Scommaaccent=667;e.Ohungarumlaut=778;e.degree=400;e.ograve=611;e.Ccaron=722;e.ugrave=611;e.radical=549;e.Dcaron=722;e.rcommaaccent=389;e.Ntilde=722;e.otilde=611;e.Rcommaaccent=722;e.Lcommaaccent=611;e.Atilde=722;e.Aogonek=722;e.Aring=722;e.Otilde=778;e.zdotaccent=500;e.Ecaron=667;e.Iogonek=278;e.kcommaaccent=556;e.minus=584;e.Icircumflex=278;e.ncaron=611;e.tcommaaccent=333;e.logicalnot=584;e.odieresis=611;e.udieresis=611;e.notequal=549;e.gcommaaccent=611;e.eth=611;e.zcaron=500;e.ncommaaccent=611;e.onesuperior=333;e.imacron=278;e.Euro=556}));e["Helvetica-BoldOblique"]=(0,r.getLookupTableFactory)((function(e){e.space=278;e.exclam=333;e.quotedbl=474;e.numbersign=556;e.dollar=556;e.percent=889;e.ampersand=722;e.quoteright=278;e.parenleft=333;e.parenright=333;e.asterisk=389;e.plus=584;e.comma=278;e.hyphen=333;e.period=278;e.slash=278;e.zero=556;e.one=556;e.two=556;e.three=556;e.four=556;e.five=556;e.six=556;e.seven=556;e.eight=556;e.nine=556;e.colon=333;e.semicolon=333;e.less=584;e.equal=584;e.greater=584;e.question=611;e.at=975;e.A=722;e.B=722;e.C=722;e.D=722;e.E=667;e.F=611;e.G=778;e.H=722;e.I=278;e.J=556;e.K=722;e.L=611;e.M=833;e.N=722;e.O=778;e.P=667;e.Q=778;e.R=722;e.S=667;e.T=611;e.U=722;e.V=667;e.W=944;e.X=667;e.Y=667;e.Z=611;e.bracketleft=333;e.backslash=278;e.bracketright=333;e.asciicircum=584;e.underscore=556;e.quoteleft=278;e.a=556;e.b=611;e.c=556;e.d=611;e.e=556;e.f=333;e.g=611;e.h=611;e.i=278;e.j=278;e.k=556;e.l=278;e.m=889;e.n=611;e.o=611;e.p=611;e.q=611;e.r=389;e.s=556;e.t=333;e.u=611;e.v=556;e.w=778;e.x=556;e.y=556;e.z=500;e.braceleft=389;e.bar=280;e.braceright=389;e.asciitilde=584;e.exclamdown=333;e.cent=556;e.sterling=556;e.fraction=167;e.yen=556;e.florin=556;e.section=556;e.currency=556;e.quotesingle=238;e.quotedblleft=500;e.guillemotleft=556;e.guilsinglleft=333;e.guilsinglright=333;e.fi=611;e.fl=611;e.endash=556;e.dagger=556;e.daggerdbl=556;e.periodcentered=278;e.paragraph=556;e.bullet=350;e.quotesinglbase=278;e.quotedblbase=500;e.quotedblright=500;e.guillemotright=556;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=611;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=1e3;e.ordfeminine=370;e.Lslash=611;e.Oslash=778;e.OE=1e3;e.ordmasculine=365;e.ae=889;e.dotlessi=278;e.lslash=278;e.oslash=611;e.oe=944;e.germandbls=611;e.Idieresis=278;e.eacute=556;e.abreve=556;e.uhungarumlaut=611;e.ecaron=556;e.Ydieresis=667;e.divide=584;e.Yacute=667;e.Acircumflex=722;e.aacute=556;e.Ucircumflex=722;e.yacute=556;e.scommaaccent=556;e.ecircumflex=556;e.Uring=722;e.Udieresis=722;e.aogonek=556;e.Uacute=722;e.uogonek=611;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=737;e.Emacron=667;e.ccaron=556;e.aring=556;e.Ncommaaccent=722;e.lacute=278;e.agrave=556;e.Tcommaaccent=611;e.Cacute=722;e.atilde=556;e.Edotaccent=667;e.scaron=556;e.scedilla=556;e.iacute=278;e.lozenge=494;e.Rcaron=722;e.Gcommaaccent=778;e.ucircumflex=611;e.acircumflex=556;e.Amacron=722;e.rcaron=389;e.ccedilla=556;e.Zdotaccent=611;e.Thorn=667;e.Omacron=778;e.Racute=722;e.Sacute=667;e.dcaron=743;e.Umacron=722;e.uring=611;e.threesuperior=333;e.Ograve=778;e.Agrave=722;e.Abreve=722;e.multiply=584;e.uacute=611;e.Tcaron=611;e.partialdiff=494;e.ydieresis=556;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=556;e.edieresis=556;e.cacute=556;e.nacute=611;e.umacron=611;e.Ncaron=722;e.Iacute=278;e.plusminus=584;e.brokenbar=280;e.registered=737;e.Gbreve=778;e.Idotaccent=278;e.summation=600;e.Egrave=667;e.racute=389;e.omacron=611;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=722;e.lcommaaccent=278;e.tcaron=389;e.eogonek=556;e.Uogonek=722;e.Aacute=722;e.Adieresis=722;e.egrave=556;e.zacute=500;e.iogonek=278;e.Oacute=778;e.oacute=611;e.amacron=556;e.sacute=556;e.idieresis=278;e.Ocircumflex=778;e.Ugrave=722;e.Delta=612;e.thorn=611;e.twosuperior=333;e.Odieresis=778;e.mu=611;e.igrave=278;e.ohungarumlaut=611;e.Eogonek=667;e.dcroat=611;e.threequarters=834;e.Scedilla=667;e.lcaron=400;e.Kcommaaccent=722;e.Lacute=611;e.trademark=1e3;e.edotaccent=556;e.Igrave=278;e.Imacron=278;e.Lcaron=611;e.onehalf=834;e.lessequal=549;e.ocircumflex=611;e.ntilde=611;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=556;e.gbreve=611;e.onequarter=834;e.Scaron=667;e.Scommaaccent=667;e.Ohungarumlaut=778;e.degree=400;e.ograve=611;e.Ccaron=722;e.ugrave=611;e.radical=549;e.Dcaron=722;e.rcommaaccent=389;e.Ntilde=722;e.otilde=611;e.Rcommaaccent=722;e.Lcommaaccent=611;e.Atilde=722;e.Aogonek=722;e.Aring=722;e.Otilde=778;e.zdotaccent=500;e.Ecaron=667;e.Iogonek=278;e.kcommaaccent=556;e.minus=584;e.Icircumflex=278;e.ncaron=611;e.tcommaaccent=333;e.logicalnot=584;e.odieresis=611;e.udieresis=611;e.notequal=549;e.gcommaaccent=611;e.eth=611;e.zcaron=500;e.ncommaaccent=611;e.onesuperior=333;e.imacron=278;e.Euro=556}));e["Helvetica-Oblique"]=(0,r.getLookupTableFactory)((function(e){e.space=278;e.exclam=278;e.quotedbl=355;e.numbersign=556;e.dollar=556;e.percent=889;e.ampersand=667;e.quoteright=222;e.parenleft=333;e.parenright=333;e.asterisk=389;e.plus=584;e.comma=278;e.hyphen=333;e.period=278;e.slash=278;e.zero=556;e.one=556;e.two=556;e.three=556;e.four=556;e.five=556;e.six=556;e.seven=556;e.eight=556;e.nine=556;e.colon=278;e.semicolon=278;e.less=584;e.equal=584;e.greater=584;e.question=556;e.at=1015;e.A=667;e.B=667;e.C=722;e.D=722;e.E=667;e.F=611;e.G=778;e.H=722;e.I=278;e.J=500;e.K=667;e.L=556;e.M=833;e.N=722;e.O=778;e.P=667;e.Q=778;e.R=722;e.S=667;e.T=611;e.U=722;e.V=667;e.W=944;e.X=667;e.Y=667;e.Z=611;e.bracketleft=278;e.backslash=278;e.bracketright=278;e.asciicircum=469;e.underscore=556;e.quoteleft=222;e.a=556;e.b=556;e.c=500;e.d=556;e.e=556;e.f=278;e.g=556;e.h=556;e.i=222;e.j=222;e.k=500;e.l=222;e.m=833;e.n=556;e.o=556;e.p=556;e.q=556;e.r=333;e.s=500;e.t=278;e.u=556;e.v=500;e.w=722;e.x=500;e.y=500;e.z=500;e.braceleft=334;e.bar=260;e.braceright=334;e.asciitilde=584;e.exclamdown=333;e.cent=556;e.sterling=556;e.fraction=167;e.yen=556;e.florin=556;e.section=556;e.currency=556;e.quotesingle=191;e.quotedblleft=333;e.guillemotleft=556;e.guilsinglleft=333;e.guilsinglright=333;e.fi=500;e.fl=500;e.endash=556;e.dagger=556;e.daggerdbl=556;e.periodcentered=278;e.paragraph=537;e.bullet=350;e.quotesinglbase=222;e.quotedblbase=333;e.quotedblright=333;e.guillemotright=556;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=611;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=1e3;e.ordfeminine=370;e.Lslash=556;e.Oslash=778;e.OE=1e3;e.ordmasculine=365;e.ae=889;e.dotlessi=278;e.lslash=222;e.oslash=611;e.oe=944;e.germandbls=611;e.Idieresis=278;e.eacute=556;e.abreve=556;e.uhungarumlaut=556;e.ecaron=556;e.Ydieresis=667;e.divide=584;e.Yacute=667;e.Acircumflex=667;e.aacute=556;e.Ucircumflex=722;e.yacute=500;e.scommaaccent=500;e.ecircumflex=556;e.Uring=722;e.Udieresis=722;e.aogonek=556;e.Uacute=722;e.uogonek=556;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=737;e.Emacron=667;e.ccaron=500;e.aring=556;e.Ncommaaccent=722;e.lacute=222;e.agrave=556;e.Tcommaaccent=611;e.Cacute=722;e.atilde=556;e.Edotaccent=667;e.scaron=500;e.scedilla=500;e.iacute=278;e.lozenge=471;e.Rcaron=722;e.Gcommaaccent=778;e.ucircumflex=556;e.acircumflex=556;e.Amacron=667;e.rcaron=333;e.ccedilla=500;e.Zdotaccent=611;e.Thorn=667;e.Omacron=778;e.Racute=722;e.Sacute=667;e.dcaron=643;e.Umacron=722;e.uring=556;e.threesuperior=333;e.Ograve=778;e.Agrave=667;e.Abreve=667;e.multiply=584;e.uacute=556;e.Tcaron=611;e.partialdiff=476;e.ydieresis=500;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=556;e.edieresis=556;e.cacute=500;e.nacute=556;e.umacron=556;e.Ncaron=722;e.Iacute=278;e.plusminus=584;e.brokenbar=260;e.registered=737;e.Gbreve=778;e.Idotaccent=278;e.summation=600;e.Egrave=667;e.racute=333;e.omacron=556;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=722;e.lcommaaccent=222;e.tcaron=317;e.eogonek=556;e.Uogonek=722;e.Aacute=667;e.Adieresis=667;e.egrave=556;e.zacute=500;e.iogonek=222;e.Oacute=778;e.oacute=556;e.amacron=556;e.sacute=500;e.idieresis=278;e.Ocircumflex=778;e.Ugrave=722;e.Delta=612;e.thorn=556;e.twosuperior=333;e.Odieresis=778;e.mu=556;e.igrave=278;e.ohungarumlaut=556;e.Eogonek=667;e.dcroat=556;e.threequarters=834;e.Scedilla=667;e.lcaron=299;e.Kcommaaccent=667;e.Lacute=556;e.trademark=1e3;e.edotaccent=556;e.Igrave=278;e.Imacron=278;e.Lcaron=556;e.onehalf=834;e.lessequal=549;e.ocircumflex=556;e.ntilde=556;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=556;e.gbreve=556;e.onequarter=834;e.Scaron=667;e.Scommaaccent=667;e.Ohungarumlaut=778;e.degree=400;e.ograve=556;e.Ccaron=722;e.ugrave=556;e.radical=453;e.Dcaron=722;e.rcommaaccent=333;e.Ntilde=722;e.otilde=556;e.Rcommaaccent=722;e.Lcommaaccent=556;e.Atilde=667;e.Aogonek=667;e.Aring=667;e.Otilde=778;e.zdotaccent=500;e.Ecaron=667;e.Iogonek=278;e.kcommaaccent=500;e.minus=584;e.Icircumflex=278;e.ncaron=556;e.tcommaaccent=278;e.logicalnot=584;e.odieresis=556;e.udieresis=556;e.notequal=549;e.gcommaaccent=556;e.eth=556;e.zcaron=500;e.ncommaaccent=556;e.onesuperior=333;e.imacron=278;e.Euro=556}));e.Symbol=(0,r.getLookupTableFactory)((function(e){e.space=250;e.exclam=333;e.universal=713;e.numbersign=500;e.existential=549;e.percent=833;e.ampersand=778;e.suchthat=439;e.parenleft=333;e.parenright=333;e.asteriskmath=500;e.plus=549;e.comma=250;e.minus=549;e.period=250;e.slash=278;e.zero=500;e.one=500;e.two=500;e.three=500;e.four=500;e.five=500;e.six=500;e.seven=500;e.eight=500;e.nine=500;e.colon=278;e.semicolon=278;e.less=549;e.equal=549;e.greater=549;e.question=444;e.congruent=549;e.Alpha=722;e.Beta=667;e.Chi=722;e.Delta=612;e.Epsilon=611;e.Phi=763;e.Gamma=603;e.Eta=722;e.Iota=333;e.theta1=631;e.Kappa=722;e.Lambda=686;e.Mu=889;e.Nu=722;e.Omicron=722;e.Pi=768;e.Theta=741;e.Rho=556;e.Sigma=592;e.Tau=611;e.Upsilon=690;e.sigma1=439;e.Omega=768;e.Xi=645;e.Psi=795;e.Zeta=611;e.bracketleft=333;e.therefore=863;e.bracketright=333;e.perpendicular=658;e.underscore=500;e.radicalex=500;e.alpha=631;e.beta=549;e.chi=549;e.delta=494;e.epsilon=439;e.phi=521;e.gamma=411;e.eta=603;e.iota=329;e.phi1=603;e.kappa=549;e.lambda=549;e.mu=576;e.nu=521;e.omicron=549;e.pi=549;e.theta=521;e.rho=549;e.sigma=603;e.tau=439;e.upsilon=576;e.omega1=713;e.omega=686;e.xi=493;e.psi=686;e.zeta=494;e.braceleft=480;e.bar=200;e.braceright=480;e.similar=549;e.Euro=750;e.Upsilon1=620;e.minute=247;e.lessequal=549;e.fraction=167;e.infinity=713;e.florin=500;e.club=753;e.diamond=753;e.heart=753;e.spade=753;e.arrowboth=1042;e.arrowleft=987;e.arrowup=603;e.arrowright=987;e.arrowdown=603;e.degree=400;e.plusminus=549;e.second=411;e.greaterequal=549;e.multiply=549;e.proportional=713;e.partialdiff=494;e.bullet=460;e.divide=549;e.notequal=549;e.equivalence=549;e.approxequal=549;e.ellipsis=1e3;e.arrowvertex=603;e.arrowhorizex=1e3;e.carriagereturn=658;e.aleph=823;e.Ifraktur=686;e.Rfraktur=795;e.weierstrass=987;e.circlemultiply=768;e.circleplus=768;e.emptyset=823;e.intersection=768;e.union=768;e.propersuperset=713;e.reflexsuperset=713;e.notsubset=713;e.propersubset=713;e.reflexsubset=713;e.element=713;e.notelement=713;e.angle=768;e.gradient=713;e.registerserif=790;e.copyrightserif=790;e.trademarkserif=890;e.product=823;e.radical=549;e.dotmath=250;e.logicalnot=713;e.logicaland=603;e.logicalor=603;e.arrowdblboth=1042;e.arrowdblleft=987;e.arrowdblup=603;e.arrowdblright=987;e.arrowdbldown=603;e.lozenge=494;e.angleleft=329;e.registersans=790;e.copyrightsans=790;e.trademarksans=786;e.summation=713;e.parenlefttp=384;e.parenleftex=384;e.parenleftbt=384;e.bracketlefttp=384;e.bracketleftex=384;e.bracketleftbt=384;e.bracelefttp=494;e.braceleftmid=494;e.braceleftbt=494;e.braceex=494;e.angleright=329;e.integral=274;e.integraltp=686;e.integralex=686;e.integralbt=686;e.parenrighttp=384;e.parenrightex=384;e.parenrightbt=384;e.bracketrighttp=384;e.bracketrightex=384;e.bracketrightbt=384;e.bracerighttp=494;e.bracerightmid=494;e.bracerightbt=494;e.apple=790}));e["Times-Roman"]=(0,r.getLookupTableFactory)((function(e){e.space=250;e.exclam=333;e.quotedbl=408;e.numbersign=500;e.dollar=500;e.percent=833;e.ampersand=778;e.quoteright=333;e.parenleft=333;e.parenright=333;e.asterisk=500;e.plus=564;e.comma=250;e.hyphen=333;e.period=250;e.slash=278;e.zero=500;e.one=500;e.two=500;e.three=500;e.four=500;e.five=500;e.six=500;e.seven=500;e.eight=500;e.nine=500;e.colon=278;e.semicolon=278;e.less=564;e.equal=564;e.greater=564;e.question=444;e.at=921;e.A=722;e.B=667;e.C=667;e.D=722;e.E=611;e.F=556;e.G=722;e.H=722;e.I=333;e.J=389;e.K=722;e.L=611;e.M=889;e.N=722;e.O=722;e.P=556;e.Q=722;e.R=667;e.S=556;e.T=611;e.U=722;e.V=722;e.W=944;e.X=722;e.Y=722;e.Z=611;e.bracketleft=333;e.backslash=278;e.bracketright=333;e.asciicircum=469;e.underscore=500;e.quoteleft=333;e.a=444;e.b=500;e.c=444;e.d=500;e.e=444;e.f=333;e.g=500;e.h=500;e.i=278;e.j=278;e.k=500;e.l=278;e.m=778;e.n=500;e.o=500;e.p=500;e.q=500;e.r=333;e.s=389;e.t=278;e.u=500;e.v=500;e.w=722;e.x=500;e.y=500;e.z=444;e.braceleft=480;e.bar=200;e.braceright=480;e.asciitilde=541;e.exclamdown=333;e.cent=500;e.sterling=500;e.fraction=167;e.yen=500;e.florin=500;e.section=500;e.currency=500;e.quotesingle=180;e.quotedblleft=444;e.guillemotleft=500;e.guilsinglleft=333;e.guilsinglright=333;e.fi=556;e.fl=556;e.endash=500;e.dagger=500;e.daggerdbl=500;e.periodcentered=250;e.paragraph=453;e.bullet=350;e.quotesinglbase=333;e.quotedblbase=444;e.quotedblright=444;e.guillemotright=500;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=444;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=889;e.ordfeminine=276;e.Lslash=611;e.Oslash=722;e.OE=889;e.ordmasculine=310;e.ae=667;e.dotlessi=278;e.lslash=278;e.oslash=500;e.oe=722;e.germandbls=500;e.Idieresis=333;e.eacute=444;e.abreve=444;e.uhungarumlaut=500;e.ecaron=444;e.Ydieresis=722;e.divide=564;e.Yacute=722;e.Acircumflex=722;e.aacute=444;e.Ucircumflex=722;e.yacute=500;e.scommaaccent=389;e.ecircumflex=444;e.Uring=722;e.Udieresis=722;e.aogonek=444;e.Uacute=722;e.uogonek=500;e.Edieresis=611;e.Dcroat=722;e.commaaccent=250;e.copyright=760;e.Emacron=611;e.ccaron=444;e.aring=444;e.Ncommaaccent=722;e.lacute=278;e.agrave=444;e.Tcommaaccent=611;e.Cacute=667;e.atilde=444;e.Edotaccent=611;e.scaron=389;e.scedilla=389;e.iacute=278;e.lozenge=471;e.Rcaron=667;e.Gcommaaccent=722;e.ucircumflex=500;e.acircumflex=444;e.Amacron=722;e.rcaron=333;e.ccedilla=444;e.Zdotaccent=611;e.Thorn=556;e.Omacron=722;e.Racute=667;e.Sacute=556;e.dcaron=588;e.Umacron=722;e.uring=500;e.threesuperior=300;e.Ograve=722;e.Agrave=722;e.Abreve=722;e.multiply=564;e.uacute=500;e.Tcaron=611;e.partialdiff=476;e.ydieresis=500;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=611;e.adieresis=444;e.edieresis=444;e.cacute=444;e.nacute=500;e.umacron=500;e.Ncaron=722;e.Iacute=333;e.plusminus=564;e.brokenbar=200;e.registered=760;e.Gbreve=722;e.Idotaccent=333;e.summation=600;e.Egrave=611;e.racute=333;e.omacron=500;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=667;e.lcommaaccent=278;e.tcaron=326;e.eogonek=444;e.Uogonek=722;e.Aacute=722;e.Adieresis=722;e.egrave=444;e.zacute=444;e.iogonek=278;e.Oacute=722;e.oacute=500;e.amacron=444;e.sacute=389;e.idieresis=278;e.Ocircumflex=722;e.Ugrave=722;e.Delta=612;e.thorn=500;e.twosuperior=300;e.Odieresis=722;e.mu=500;e.igrave=278;e.ohungarumlaut=500;e.Eogonek=611;e.dcroat=500;e.threequarters=750;e.Scedilla=556;e.lcaron=344;e.Kcommaaccent=722;e.Lacute=611;e.trademark=980;e.edotaccent=444;e.Igrave=333;e.Imacron=333;e.Lcaron=611;e.onehalf=750;e.lessequal=549;e.ocircumflex=500;e.ntilde=500;e.Uhungarumlaut=722;e.Eacute=611;e.emacron=444;e.gbreve=500;e.onequarter=750;e.Scaron=556;e.Scommaaccent=556;e.Ohungarumlaut=722;e.degree=400;e.ograve=500;e.Ccaron=667;e.ugrave=500;e.radical=453;e.Dcaron=722;e.rcommaaccent=333;e.Ntilde=722;e.otilde=500;e.Rcommaaccent=667;e.Lcommaaccent=611;e.Atilde=722;e.Aogonek=722;e.Aring=722;e.Otilde=722;e.zdotaccent=444;e.Ecaron=611;e.Iogonek=333;e.kcommaaccent=500;e.minus=564;e.Icircumflex=333;e.ncaron=500;e.tcommaaccent=278;e.logicalnot=564;e.odieresis=500;e.udieresis=500;e.notequal=549;e.gcommaaccent=500;e.eth=500;e.zcaron=444;e.ncommaaccent=500;e.onesuperior=300;e.imacron=278;e.Euro=500}));e["Times-Bold"]=(0,r.getLookupTableFactory)((function(e){e.space=250;e.exclam=333;e.quotedbl=555;e.numbersign=500;e.dollar=500;e.percent=1e3;e.ampersand=833;e.quoteright=333;e.parenleft=333;e.parenright=333;e.asterisk=500;e.plus=570;e.comma=250;e.hyphen=333;e.period=250;e.slash=278;e.zero=500;e.one=500;e.two=500;e.three=500;e.four=500;e.five=500;e.six=500;e.seven=500;e.eight=500;e.nine=500;e.colon=333;e.semicolon=333;e.less=570;e.equal=570;e.greater=570;e.question=500;e.at=930;e.A=722;e.B=667;e.C=722;e.D=722;e.E=667;e.F=611;e.G=778;e.H=778;e.I=389;e.J=500;e.K=778;e.L=667;e.M=944;e.N=722;e.O=778;e.P=611;e.Q=778;e.R=722;e.S=556;e.T=667;e.U=722;e.V=722;e.W=1e3;e.X=722;e.Y=722;e.Z=667;e.bracketleft=333;e.backslash=278;e.bracketright=333;e.asciicircum=581;e.underscore=500;e.quoteleft=333;e.a=500;e.b=556;e.c=444;e.d=556;e.e=444;e.f=333;e.g=500;e.h=556;e.i=278;e.j=333;e.k=556;e.l=278;e.m=833;e.n=556;e.o=500;e.p=556;e.q=556;e.r=444;e.s=389;e.t=333;e.u=556;e.v=500;e.w=722;e.x=500;e.y=500;e.z=444;e.braceleft=394;e.bar=220;e.braceright=394;e.asciitilde=520;e.exclamdown=333;e.cent=500;e.sterling=500;e.fraction=167;e.yen=500;e.florin=500;e.section=500;e.currency=500;e.quotesingle=278;e.quotedblleft=500;e.guillemotleft=500;e.guilsinglleft=333;e.guilsinglright=333;e.fi=556;e.fl=556;e.endash=500;e.dagger=500;e.daggerdbl=500;e.periodcentered=250;e.paragraph=540;e.bullet=350;e.quotesinglbase=333;e.quotedblbase=500;e.quotedblright=500;e.guillemotright=500;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=500;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=1e3;e.ordfeminine=300;e.Lslash=667;e.Oslash=778;e.OE=1e3;e.ordmasculine=330;e.ae=722;e.dotlessi=278;e.lslash=278;e.oslash=500;e.oe=722;e.germandbls=556;e.Idieresis=389;e.eacute=444;e.abreve=500;e.uhungarumlaut=556;e.ecaron=444;e.Ydieresis=722;e.divide=570;e.Yacute=722;e.Acircumflex=722;e.aacute=500;e.Ucircumflex=722;e.yacute=500;e.scommaaccent=389;e.ecircumflex=444;e.Uring=722;e.Udieresis=722;e.aogonek=500;e.Uacute=722;e.uogonek=556;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=747;e.Emacron=667;e.ccaron=444;e.aring=500;e.Ncommaaccent=722;e.lacute=278;e.agrave=500;e.Tcommaaccent=667;e.Cacute=722;e.atilde=500;e.Edotaccent=667;e.scaron=389;e.scedilla=389;e.iacute=278;e.lozenge=494;e.Rcaron=722;e.Gcommaaccent=778;e.ucircumflex=556;e.acircumflex=500;e.Amacron=722;e.rcaron=444;e.ccedilla=444;e.Zdotaccent=667;e.Thorn=611;e.Omacron=778;e.Racute=722;e.Sacute=556;e.dcaron=672;e.Umacron=722;e.uring=556;e.threesuperior=300;e.Ograve=778;e.Agrave=722;e.Abreve=722;e.multiply=570;e.uacute=556;e.Tcaron=667;e.partialdiff=494;e.ydieresis=500;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=500;e.edieresis=444;e.cacute=444;e.nacute=556;e.umacron=556;e.Ncaron=722;e.Iacute=389;e.plusminus=570;e.brokenbar=220;e.registered=747;e.Gbreve=778;e.Idotaccent=389;e.summation=600;e.Egrave=667;e.racute=444;e.omacron=500;e.Zacute=667;e.Zcaron=667;e.greaterequal=549;e.Eth=722;e.Ccedilla=722;e.lcommaaccent=278;e.tcaron=416;e.eogonek=444;e.Uogonek=722;e.Aacute=722;e.Adieresis=722;e.egrave=444;e.zacute=444;e.iogonek=278;e.Oacute=778;e.oacute=500;e.amacron=500;e.sacute=389;e.idieresis=278;e.Ocircumflex=778;e.Ugrave=722;e.Delta=612;e.thorn=556;e.twosuperior=300;e.Odieresis=778;e.mu=556;e.igrave=278;e.ohungarumlaut=500;e.Eogonek=667;e.dcroat=556;e.threequarters=750;e.Scedilla=556;e.lcaron=394;e.Kcommaaccent=778;e.Lacute=667;e.trademark=1e3;e.edotaccent=444;e.Igrave=389;e.Imacron=389;e.Lcaron=667;e.onehalf=750;e.lessequal=549;e.ocircumflex=500;e.ntilde=556;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=444;e.gbreve=500;e.onequarter=750;e.Scaron=556;e.Scommaaccent=556;e.Ohungarumlaut=778;e.degree=400;e.ograve=500;e.Ccaron=722;e.ugrave=556;e.radical=549;e.Dcaron=722;e.rcommaaccent=444;e.Ntilde=722;e.otilde=500;e.Rcommaaccent=722;e.Lcommaaccent=667;e.Atilde=722;e.Aogonek=722;e.Aring=722;e.Otilde=778;e.zdotaccent=444;e.Ecaron=667;e.Iogonek=389;e.kcommaaccent=556;e.minus=570;e.Icircumflex=389;e.ncaron=556;e.tcommaaccent=333;e.logicalnot=570;e.odieresis=500;e.udieresis=556;e.notequal=549;e.gcommaaccent=500;e.eth=500;e.zcaron=444;e.ncommaaccent=556;e.onesuperior=300;e.imacron=278;e.Euro=500}));e["Times-BoldItalic"]=(0,r.getLookupTableFactory)((function(e){e.space=250;e.exclam=389;e.quotedbl=555;e.numbersign=500;e.dollar=500;e.percent=833;e.ampersand=778;e.quoteright=333;e.parenleft=333;e.parenright=333;e.asterisk=500;e.plus=570;e.comma=250;e.hyphen=333;e.period=250;e.slash=278;e.zero=500;e.one=500;e.two=500;e.three=500;e.four=500;e.five=500;e.six=500;e.seven=500;e.eight=500;e.nine=500;e.colon=333;e.semicolon=333;e.less=570;e.equal=570;e.greater=570;e.question=500;e.at=832;e.A=667;e.B=667;e.C=667;e.D=722;e.E=667;e.F=667;e.G=722;e.H=778;e.I=389;e.J=500;e.K=667;e.L=611;e.M=889;e.N=722;e.O=722;e.P=611;e.Q=722;e.R=667;e.S=556;e.T=611;e.U=722;e.V=667;e.W=889;e.X=667;e.Y=611;e.Z=611;e.bracketleft=333;e.backslash=278;e.bracketright=333;e.asciicircum=570;e.underscore=500;e.quoteleft=333;e.a=500;e.b=500;e.c=444;e.d=500;e.e=444;e.f=333;e.g=500;e.h=556;e.i=278;e.j=278;e.k=500;e.l=278;e.m=778;e.n=556;e.o=500;e.p=500;e.q=500;e.r=389;e.s=389;e.t=278;e.u=556;e.v=444;e.w=667;e.x=500;e.y=444;e.z=389;e.braceleft=348;e.bar=220;e.braceright=348;e.asciitilde=570;e.exclamdown=389;e.cent=500;e.sterling=500;e.fraction=167;e.yen=500;e.florin=500;e.section=500;e.currency=500;e.quotesingle=278;e.quotedblleft=500;e.guillemotleft=500;e.guilsinglleft=333;e.guilsinglright=333;e.fi=556;e.fl=556;e.endash=500;e.dagger=500;e.daggerdbl=500;e.periodcentered=250;e.paragraph=500;e.bullet=350;e.quotesinglbase=333;e.quotedblbase=500;e.quotedblright=500;e.guillemotright=500;e.ellipsis=1e3;e.perthousand=1e3;e.questiondown=500;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=1e3;e.AE=944;e.ordfeminine=266;e.Lslash=611;e.Oslash=722;e.OE=944;e.ordmasculine=300;e.ae=722;e.dotlessi=278;e.lslash=278;e.oslash=500;e.oe=722;e.germandbls=500;e.Idieresis=389;e.eacute=444;e.abreve=500;e.uhungarumlaut=556;e.ecaron=444;e.Ydieresis=611;e.divide=570;e.Yacute=611;e.Acircumflex=667;e.aacute=500;e.Ucircumflex=722;e.yacute=444;e.scommaaccent=389;e.ecircumflex=444;e.Uring=722;e.Udieresis=722;e.aogonek=500;e.Uacute=722;e.uogonek=556;e.Edieresis=667;e.Dcroat=722;e.commaaccent=250;e.copyright=747;e.Emacron=667;e.ccaron=444;e.aring=500;e.Ncommaaccent=722;e.lacute=278;e.agrave=500;e.Tcommaaccent=611;e.Cacute=667;e.atilde=500;e.Edotaccent=667;e.scaron=389;e.scedilla=389;e.iacute=278;e.lozenge=494;e.Rcaron=667;e.Gcommaaccent=722;e.ucircumflex=556;e.acircumflex=500;e.Amacron=667;e.rcaron=389;e.ccedilla=444;e.Zdotaccent=611;e.Thorn=611;e.Omacron=722;e.Racute=667;e.Sacute=556;e.dcaron=608;e.Umacron=722;e.uring=556;e.threesuperior=300;e.Ograve=722;e.Agrave=667;e.Abreve=667;e.multiply=570;e.uacute=556;e.Tcaron=611;e.partialdiff=494;e.ydieresis=444;e.Nacute=722;e.icircumflex=278;e.Ecircumflex=667;e.adieresis=500;e.edieresis=444;e.cacute=444;e.nacute=556;e.umacron=556;e.Ncaron=722;e.Iacute=389;e.plusminus=570;e.brokenbar=220;e.registered=747;e.Gbreve=722;e.Idotaccent=389;e.summation=600;e.Egrave=667;e.racute=389;e.omacron=500;e.Zacute=611;e.Zcaron=611;e.greaterequal=549;e.Eth=722;e.Ccedilla=667;e.lcommaaccent=278;e.tcaron=366;e.eogonek=444;e.Uogonek=722;e.Aacute=667;e.Adieresis=667;e.egrave=444;e.zacute=389;e.iogonek=278;e.Oacute=722;e.oacute=500;e.amacron=500;e.sacute=389;e.idieresis=278;e.Ocircumflex=722;e.Ugrave=722;e.Delta=612;e.thorn=500;e.twosuperior=300;e.Odieresis=722;e.mu=576;e.igrave=278;e.ohungarumlaut=500;e.Eogonek=667;e.dcroat=500;e.threequarters=750;e.Scedilla=556;e.lcaron=382;e.Kcommaaccent=667;e.Lacute=611;e.trademark=1e3;e.edotaccent=444;e.Igrave=389;e.Imacron=389;e.Lcaron=611;e.onehalf=750;e.lessequal=549;e.ocircumflex=500;e.ntilde=556;e.Uhungarumlaut=722;e.Eacute=667;e.emacron=444;e.gbreve=500;e.onequarter=750;e.Scaron=556;e.Scommaaccent=556;e.Ohungarumlaut=722;e.degree=400;e.ograve=500;e.Ccaron=667;e.ugrave=556;e.radical=549;e.Dcaron=722;e.rcommaaccent=389;e.Ntilde=722;e.otilde=500;e.Rcommaaccent=667;e.Lcommaaccent=611;e.Atilde=667;e.Aogonek=667;e.Aring=667;e.Otilde=722;e.zdotaccent=389;e.Ecaron=667;e.Iogonek=389;e.kcommaaccent=500;e.minus=606;e.Icircumflex=389;e.ncaron=556;e.tcommaaccent=278;e.logicalnot=606;e.odieresis=500;e.udieresis=556;e.notequal=549;e.gcommaaccent=500;e.eth=500;e.zcaron=389;e.ncommaaccent=556;e.onesuperior=300;e.imacron=278;e.Euro=500}));e["Times-Italic"]=(0,r.getLookupTableFactory)((function(e){e.space=250;e.exclam=333;e.quotedbl=420;e.numbersign=500;e.dollar=500;e.percent=833;e.ampersand=778;e.quoteright=333;e.parenleft=333;e.parenright=333;e.asterisk=500;e.plus=675;e.comma=250;e.hyphen=333;e.period=250;e.slash=278;e.zero=500;e.one=500;e.two=500;e.three=500;e.four=500;e.five=500;e.six=500;e.seven=500;e.eight=500;e.nine=500;e.colon=333;e.semicolon=333;e.less=675;e.equal=675;e.greater=675;e.question=500;e.at=920;e.A=611;e.B=611;e.C=667;e.D=722;e.E=611;e.F=611;e.G=722;e.H=722;e.I=333;e.J=444;e.K=667;e.L=556;e.M=833;e.N=667;e.O=722;e.P=611;e.Q=722;e.R=611;e.S=500;e.T=556;e.U=722;e.V=611;e.W=833;e.X=611;e.Y=556;e.Z=556;e.bracketleft=389;e.backslash=278;e.bracketright=389;e.asciicircum=422;e.underscore=500;e.quoteleft=333;e.a=500;e.b=500;e.c=444;e.d=500;e.e=444;e.f=278;e.g=500;e.h=500;e.i=278;e.j=278;e.k=444;e.l=278;e.m=722;e.n=500;e.o=500;e.p=500;e.q=500;e.r=389;e.s=389;e.t=278;e.u=500;e.v=444;e.w=667;e.x=444;e.y=444;e.z=389;e.braceleft=400;e.bar=275;e.braceright=400;e.asciitilde=541;e.exclamdown=389;e.cent=500;e.sterling=500;e.fraction=167;e.yen=500;e.florin=500;e.section=500;e.currency=500;e.quotesingle=214;e.quotedblleft=556;e.guillemotleft=500;e.guilsinglleft=333;e.guilsinglright=333;e.fi=500;e.fl=500;e.endash=500;e.dagger=500;e.daggerdbl=500;e.periodcentered=250;e.paragraph=523;e.bullet=350;e.quotesinglbase=333;e.quotedblbase=556;e.quotedblright=556;e.guillemotright=500;e.ellipsis=889;e.perthousand=1e3;e.questiondown=500;e.grave=333;e.acute=333;e.circumflex=333;e.tilde=333;e.macron=333;e.breve=333;e.dotaccent=333;e.dieresis=333;e.ring=333;e.cedilla=333;e.hungarumlaut=333;e.ogonek=333;e.caron=333;e.emdash=889;e.AE=889;e.ordfeminine=276;e.Lslash=556;e.Oslash=722;e.OE=944;e.ordmasculine=310;e.ae=667;e.dotlessi=278;e.lslash=278;e.oslash=500;e.oe=667;e.germandbls=500;e.Idieresis=333;e.eacute=444;e.abreve=500;e.uhungarumlaut=500;e.ecaron=444;e.Ydieresis=556;e.divide=675;e.Yacute=556;e.Acircumflex=611;e.aacute=500;e.Ucircumflex=722;e.yacute=444;e.scommaaccent=389;e.ecircumflex=444;e.Uring=722;e.Udieresis=722;e.aogonek=500;e.Uacute=722;e.uogonek=500;e.Edieresis=611;e.Dcroat=722;e.commaaccent=250;e.copyright=760;e.Emacron=611;e.ccaron=444;e.aring=500;e.Ncommaaccent=667;e.lacute=278;e.agrave=500;e.Tcommaaccent=556;e.Cacute=667;e.atilde=500;e.Edotaccent=611;e.scaron=389;e.scedilla=389;e.iacute=278;e.lozenge=471;e.Rcaron=611;e.Gcommaaccent=722;e.ucircumflex=500;e.acircumflex=500;e.Amacron=611;e.rcaron=389;e.ccedilla=444;e.Zdotaccent=556;e.Thorn=611;e.Omacron=722;e.Racute=611;e.Sacute=500;e.dcaron=544;e.Umacron=722;e.uring=500;e.threesuperior=300;e.Ograve=722;e.Agrave=611;e.Abreve=611;e.multiply=675;e.uacute=500;e.Tcaron=556;e.partialdiff=476;e.ydieresis=444;e.Nacute=667;e.icircumflex=278;e.Ecircumflex=611;e.adieresis=500;e.edieresis=444;e.cacute=444;e.nacute=500;e.umacron=500;e.Ncaron=667;e.Iacute=333;e.plusminus=675;e.brokenbar=275;e.registered=760;e.Gbreve=722;e.Idotaccent=333;e.summation=600;e.Egrave=611;e.racute=389;e.omacron=500;e.Zacute=556;e.Zcaron=556;e.greaterequal=549;e.Eth=722;e.Ccedilla=667;e.lcommaaccent=278;e.tcaron=300;e.eogonek=444;e.Uogonek=722;e.Aacute=611;e.Adieresis=611;e.egrave=444;e.zacute=389;e.iogonek=278;e.Oacute=722;e.oacute=500;e.amacron=500;e.sacute=389;e.idieresis=278;e.Ocircumflex=722;e.Ugrave=722;e.Delta=612;e.thorn=500;e.twosuperior=300;e.Odieresis=722;e.mu=500;e.igrave=278;e.ohungarumlaut=500;e.Eogonek=611;e.dcroat=500;e.threequarters=750;e.Scedilla=500;e.lcaron=300;e.Kcommaaccent=667;e.Lacute=556;e.trademark=980;e.edotaccent=444;e.Igrave=333;e.Imacron=333;e.Lcaron=611;e.onehalf=750;e.lessequal=549;e.ocircumflex=500;e.ntilde=500;e.Uhungarumlaut=722;e.Eacute=611;e.emacron=444;e.gbreve=500;e.onequarter=750;e.Scaron=500;e.Scommaaccent=500;e.Ohungarumlaut=722;e.degree=400;e.ograve=500;e.Ccaron=667;e.ugrave=500;e.radical=453;e.Dcaron=722;e.rcommaaccent=389;e.Ntilde=667;e.otilde=500;e.Rcommaaccent=611;e.Lcommaaccent=556;e.Atilde=611;e.Aogonek=611;e.Aring=611;e.Otilde=722;e.zdotaccent=389;e.Ecaron=611;e.Iogonek=333;e.kcommaaccent=444;e.minus=675;e.Icircumflex=333;e.ncaron=500;e.tcommaaccent=278;e.logicalnot=675;e.odieresis=500;e.udieresis=500;e.notequal=549;e.gcommaaccent=500;e.eth=500;e.zcaron=389;e.ncommaaccent=500;e.onesuperior=300;e.imacron=278;e.Euro=500}));e.ZapfDingbats=(0,r.getLookupTableFactory)((function(e){e.space=278;e.a1=974;e.a2=961;e.a202=974;e.a3=980;e.a4=719;e.a5=789;e.a119=790;e.a118=791;e.a117=690;e.a11=960;e.a12=939;e.a13=549;e.a14=855;e.a15=911;e.a16=933;e.a105=911;e.a17=945;e.a18=974;e.a19=755;e.a20=846;e.a21=762;e.a22=761;e.a23=571;e.a24=677;e.a25=763;e.a26=760;e.a27=759;e.a28=754;e.a6=494;e.a7=552;e.a8=537;e.a9=577;e.a10=692;e.a29=786;e.a30=788;e.a31=788;e.a32=790;e.a33=793;e.a34=794;e.a35=816;e.a36=823;e.a37=789;e.a38=841;e.a39=823;e.a40=833;e.a41=816;e.a42=831;e.a43=923;e.a44=744;e.a45=723;e.a46=749;e.a47=790;e.a48=792;e.a49=695;e.a50=776;e.a51=768;e.a52=792;e.a53=759;e.a54=707;e.a55=708;e.a56=682;e.a57=701;e.a58=826;e.a59=815;e.a60=789;e.a61=789;e.a62=707;e.a63=687;e.a64=696;e.a65=689;e.a66=786;e.a67=787;e.a68=713;e.a69=791;e.a70=785;e.a71=791;e.a72=873;e.a73=761;e.a74=762;e.a203=762;e.a75=759;e.a204=759;e.a76=892;e.a77=892;e.a78=788;e.a79=784;e.a81=438;e.a82=138;e.a83=277;e.a84=415;e.a97=392;e.a98=392;e.a99=668;e.a100=668;e.a89=390;e.a90=390;e.a93=317;e.a94=317;e.a91=276;e.a92=276;e.a205=509;e.a85=509;e.a206=410;e.a86=410;e.a87=234;e.a88=234;e.a95=334;e.a96=334;e.a101=732;e.a102=544;e.a103=544;e.a104=910;e.a106=667;e.a107=760;e.a108=760;e.a112=776;e.a111=595;e.a110=694;e.a109=626;e.a120=788;e.a121=788;e.a122=788;e.a123=788;e.a124=788;e.a125=788;e.a126=788;e.a127=788;e.a128=788;e.a129=788;e.a130=788;e.a131=788;e.a132=788;e.a133=788;e.a134=788;e.a135=788;e.a136=788;e.a137=788;e.a138=788;e.a139=788;e.a140=788;e.a141=788;e.a142=788;e.a143=788;e.a144=788;e.a145=788;e.a146=788;e.a147=788;e.a148=788;e.a149=788;e.a150=788;e.a151=788;e.a152=788;e.a153=788;e.a154=788;e.a155=788;e.a156=788;e.a157=788;e.a158=788;e.a159=788;e.a160=894;e.a161=838;e.a163=1016;e.a164=458;e.a196=748;e.a165=924;e.a192=748;e.a166=918;e.a167=927;e.a168=928;e.a169=928;e.a170=834;e.a171=873;e.a172=828;e.a173=924;e.a162=924;e.a174=917;e.a175=930;e.a176=931;e.a177=463;e.a178=883;e.a179=836;e.a193=836;e.a180=867;e.a199=867;e.a181=696;e.a200=696;e.a182=874;e.a201=874;e.a183=760;e.a184=946;e.a197=771;e.a185=865;e.a194=771;e.a198=888;e.a186=967;e.a195=888;e.a187=831;e.a188=873;e.a189=927;e.a190=970;e.a191=918}))}));t.getMetrics=n;const i=(0,r.getLookupTableFactory)((function(e){e.Courier={ascent:629,descent:-157,capHeight:562,xHeight:-426};e["Courier-Bold"]={ascent:629,descent:-157,capHeight:562,xHeight:439};e["Courier-Oblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426};e["Courier-BoldOblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426};e.Helvetica={ascent:718,descent:-207,capHeight:718,xHeight:523};e["Helvetica-Bold"]={ascent:718,descent:-207,capHeight:718,xHeight:532};e["Helvetica-Oblique"]={ascent:718,descent:-207,capHeight:718,xHeight:523};e["Helvetica-BoldOblique"]={ascent:718,descent:-207,capHeight:718,xHeight:532};e["Times-Roman"]={ascent:683,descent:-217,capHeight:662,xHeight:450};e["Times-Bold"]={ascent:683,descent:-217,capHeight:676,xHeight:461};e["Times-Italic"]={ascent:683,descent:-217,capHeight:653,xHeight:441};e["Times-BoldItalic"]={ascent:683,descent:-217,capHeight:669,xHeight:462};e.Symbol={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN};e.ZapfDingbats={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN}}));t.getFontBasicMetrics=i},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.GlyfTable=void 0;t.GlyfTable=class GlyfTable{constructor({glyfTable:e,isGlyphLocationsLong:t,locaTable:a,numGlyphs:r}){this.glyphs=[];const n=new DataView(a.buffer,a.byteOffset,a.byteLength),i=new DataView(e.buffer,e.byteOffset,e.byteLength),s=t?4:2;let o=t?n.getUint32(0):2*n.getUint16(0),c=0;for(let e=0;ee+(t.getSize()+3&-4)),0)}write(){const e=this.getSize(),t=new DataView(new ArrayBuffer(e)),a=e>131070,r=a?4:2,n=new DataView(new ArrayBuffer((this.glyphs.length+1)*r));a?n.setUint32(0,0):n.setUint16(0,0);let i=0,s=0;for(const e of this.glyphs){i+=e.write(i,t);i=i+3&-4;s+=r;a?n.setUint32(s,i):n.setUint16(s,i>>1)}return{isLocationLong:a,loca:new Uint8Array(n.buffer),glyf:new Uint8Array(t.buffer)}}scale(e){for(let t=0,a=this.glyphs.length;te+t.getSize()),0);return this.header.getSize()+e}write(e,t){if(!this.header)return 0;const a=e;e+=this.header.write(e,t);if(this.simple)e+=this.simple.write(e,t);else for(const a of this.composites)e+=a.write(e,t);return e-a}scale(e){if(!this.header)return;const t=(this.header.xMin+this.header.xMax)/2;this.header.scale(t,e);if(this.simple)this.simple.scale(t,e);else for(const a of this.composites)a.scale(t,e)}}class GlyphHeader{constructor({numberOfContours:e,xMin:t,yMin:a,xMax:r,yMax:n}){this.numberOfContours=e;this.xMin=t;this.yMin=a;this.xMax=r;this.yMax=n}static parse(e,t){return[10,new GlyphHeader({numberOfContours:t.getInt16(e),xMin:t.getInt16(e+2),yMin:t.getInt16(e+4),xMax:t.getInt16(e+6),yMax:t.getInt16(e+8)})]}getSize(){return 10}write(e,t){t.setInt16(e,this.numberOfContours);t.setInt16(e+2,this.xMin);t.setInt16(e+4,this.yMin);t.setInt16(e+6,this.xMax);t.setInt16(e+8,this.yMax);return 10}scale(e,t){this.xMin=Math.round(e+(this.xMin-e)*t);this.xMax=Math.round(e+(this.xMax-e)*t)}}class Contour{constructor({flags:e,xCoordinates:t,yCoordinates:a}){this.xCoordinates=t;this.yCoordinates=a;this.flags=e}}class SimpleGlyph{constructor({contours:e,instructions:t}){this.contours=e;this.instructions=t}static parse(e,t,a){const r=[];for(let n=0;n255?e+=2:o>0&&(e+=1);t=i;o=Math.abs(s-a);o>255?e+=2:o>0&&(e+=1);a=s}}return e}write(e,t){const a=e,r=[],n=[],i=[];let s=0,o=0;for(const a of this.contours){for(let e=0,t=a.xCoordinates.length;e=0?18:2;r.push(e)}else r.push(l)}s=c;const h=a.yCoordinates[e];l=h-o;if(0===l){t|=32;n.push(0)}else{const e=Math.abs(l);if(e<=255){t|=l>=0?36:4;n.push(e)}else n.push(l)}o=h;i.push(t)}t.setUint16(e,r.length-1);e+=2}t.setUint16(e,this.instructions.length);e+=2;if(this.instructions.length){new Uint8Array(t.buffer,0,t.buffer.byteLength).set(this.instructions,e);e+=this.instructions.length}for(const a of i)t.setUint8(e++,a);for(let a=0,n=r.length;a=-128&&this.argument1<=127&&this.argument2>=-128&&this.argument2<=127||(e+=2):this.argument1>=0&&this.argument1<=255&&this.argument2>=0&&this.argument2<=255||(e+=2);return e}write(e,t){const a=e;2&this.flags?this.argument1>=-128&&this.argument1<=127&&this.argument2>=-128&&this.argument2<=127||(this.flags|=1):this.argument1>=0&&this.argument1<=255&&this.argument2>=0&&this.argument2<=255||(this.flags|=1);t.setUint16(e,this.flags);t.setUint16(e+2,this.glyphIndex);e+=4;if(1&this.flags){if(2&this.flags){t.setInt16(e,this.argument1);t.setInt16(e+2,this.argument2)}else{t.setUint16(e,this.argument1);t.setUint16(e+2,this.argument2)}e+=4}else{t.setUint8(e,this.argument1);t.setUint8(e+1,this.argument2);e+=2}if(256&this.flags){t.setUint16(e,this.instructions.length);e+=2;if(this.instructions.length){new Uint8Array(t.buffer,0,t.buffer.byteLength).set(this.instructions,e);e+=this.instructions.length}}return e-a}scale(e,t){}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.OpenTypeFileBuilder=void 0;var r=a(3),n=a(2);function writeInt16(e,t,a){e[t]=a>>8&255;e[t+1]=255&a}function writeInt32(e,t,a){e[t]=a>>24&255;e[t+1]=a>>16&255;e[t+2]=a>>8&255;e[t+3]=255&a}function writeData(e,t,a){if(a instanceof Uint8Array)e.set(a,t);else if("string"==typeof a)for(let r=0,n=a.length;ra;){a<<=1;r++}const n=a*t;return{range:n,entry:r,rangeShift:t*e-n}}toArray(){let e=this.sfnt;const t=this.tables,a=Object.keys(t);a.sort();const i=a.length;let s,o,c,l,h,u=12+16*i;const d=[u];for(s=0;s>>0;d.push(u)}const f=new Uint8Array(u);for(s=0;s>>0}writeInt32(f,u+4,e);writeInt32(f,u+8,d[s]);writeInt32(f,u+12,t[h].length);u+=16}return f}addTable(e,t){if(e in this.tables)throw new Error("Table "+e+" already exists");this.tables[e]=t}}t.OpenTypeFileBuilder=OpenTypeFileBuilder},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Type1Font=void 0;var r=a(35),n=a(2),i=a(38),s=a(3),o=a(8),c=a(49);function findBlock(e,t,a){const r=e.length,n=t.length,i=r-n;let o=a,c=!1;for(;o=n){o+=a;for(;o=0&&(r[e]=n)}}return(0,i.type1FontGlyphMapping)(e,r,a)}hasGlyphId(e){if(e<0||e>=this.numGlyphs)return!1;if(0===e)return!0;return this.charstrings[e-1].charstring.length>0}getSeacs(e){const t=[];for(let a=0,r=e.length;a0;e--)t[e]-=t[e-1];g.setByName(e,t)}s.topDict.privateDict=g;const m=new r.CFFIndex;for(u=0,d=n.length;u{Object.defineProperty(t,"__esModule",{value:!0});t.Type1Parser=void 0;var r=a(37),n=a(3),i=a(8),s=a(2);const o=[4],c=[5],l=[6],h=[7],u=[8],d=[12,35],f=[14],g=[21],p=[22],m=[30],b=[31];class Type1CharString{constructor(){this.width=0;this.lsb=0;this.flexing=!1;this.output=[];this.stack=[]}convert(e,t,a){const r=e.length;let n,i,y,w=!1;for(let S=0;Sr)return!0;const n=r-e;for(let e=n;e>8&255,255&t);else{t=65536*t|0;this.output.push(255,t>>24&255,t>>16&255,t>>8&255,255&t)}}this.output.push(...t);a?this.stack.splice(n,e):this.stack.length=0;return!1}}function isHexDigit(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function decrypt(e,t,a){if(a>=e.length)return new Uint8Array(0);let r,n,i=0|t;for(r=0;r>8;i=52845*(t+i)+22719&65535}return o}function isSpecial(e){return 47===e||91===e||93===e||123===e||125===e||40===e||41===e}t.Type1Parser=class Type1Parser{constructor(e,t,a){if(t){const t=e.getBytes(),a=!((isHexDigit(t[0])||(0,n.isWhiteSpace)(t[0]))&&isHexDigit(t[1])&&isHexDigit(t[2])&&isHexDigit(t[3])&&isHexDigit(t[4])&&isHexDigit(t[5])&&isHexDigit(t[6])&&isHexDigit(t[7]));e=new i.Stream(a?decrypt(t,55665,4):function decryptAscii(e,t,a){let r=0|t;const n=e.length,i=new Uint8Array(n>>>1);let s,o;for(s=0,o=0;s>8;r=52845*(e+r)+22719&65535}}return i.slice(a,o)}(t,55665,4))}this.seacAnalysisEnabled=!!a;this.stream=e;this.nextChar()}readNumberArray(){this.getToken();const e=[];for(;;){const t=this.getToken();if(null===t||"]"===t||"}"===t)break;e.push(parseFloat(t||0))}return e}readNumber(){const e=this.getToken();return parseFloat(e||0)}readInt(){const e=this.getToken();return 0|parseInt(e||0,10)}readBoolean(){return"true"===this.getToken()?1:0}nextChar(){return this.currentChar=this.stream.getByte()}prevChar(){this.stream.skip(-2);return this.currentChar=this.stream.getByte()}getToken(){let e=!1,t=this.currentChar;for(;;){if(-1===t)return null;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(!(0,n.isWhiteSpace)(t))break;t=this.nextChar()}if(isSpecial(t)){this.nextChar();return String.fromCharCode(t)}let a="";do{a+=String.fromCharCode(t);t=this.nextChar()}while(t>=0&&!(0,n.isWhiteSpace)(t)&&!isSpecial(t));return a}readCharStrings(e,t){return-1===t?e:decrypt(e,4330,t)}extractFontProgram(e){const t=this.stream,a=[],r=[],n=Object.create(null);n.lenIV=4;const i={subrs:[],charstrings:[],properties:{privateData:n}};let s,o,c,l;for(;null!==(s=this.getToken());)if("/"===s){s=this.getToken();switch(s){case"CharStrings":this.getToken();this.getToken();this.getToken();this.getToken();for(;;){s=this.getToken();if(null===s||"end"===s)break;if("/"!==s)continue;const e=this.getToken();o=this.readInt();this.getToken();c=o>0?t.getBytes(o):new Uint8Array(0);l=i.properties.privateData.lenIV;const a=this.readCharStrings(c,l);this.nextChar();s=this.getToken();"noaccess"===s?this.getToken():"/"===s&&this.prevChar();r.push({glyph:e,encoded:a})}break;case"Subrs":this.readInt();this.getToken();for(;"dup"===this.getToken();){const e=this.readInt();o=this.readInt();this.getToken();c=o>0?t.getBytes(o):new Uint8Array(0);l=i.properties.privateData.lenIV;const r=this.readCharStrings(c,l);this.nextChar();s=this.getToken();"noaccess"===s&&this.getToken();a[e]=r}break;case"BlueValues":case"OtherBlues":case"FamilyBlues":case"FamilyOtherBlues":const e=this.readNumberArray();e.length>0&&e.length,0;break;case"StemSnapH":case"StemSnapV":i.properties.privateData[s]=this.readNumberArray();break;case"StdHW":case"StdVW":i.properties.privateData[s]=this.readNumberArray()[0];break;case"BlueShift":case"lenIV":case"BlueFuzz":case"BlueScale":case"LanguageGroup":i.properties.privateData[s]=this.readNumber();break;case"ExpansionFactor":i.properties.privateData[s]=this.readNumber()||.06;break;case"ForceBold":i.properties.privateData[s]=this.readBoolean()}}for(const{encoded:t,glyph:n}of r){const r=new Type1CharString,s=r.convert(t,a,this.seacAnalysisEnabled);let o=r.output;s&&(o=[14]);const c={glyphName:n,charstring:o,width:r.width,lsb:r.lsb,seac:r.seac};".notdef"===n?i.charstrings.unshift(c):i.charstrings.push(c);if(e.builtInEncoding){const t=e.builtInEncoding.indexOf(n);t>-1&&void 0===e.widths[t]&&t>=e.firstChar&&t<=e.lastChar&&(e.widths[t]=r.width)}}return i}extractFontHeader(e){let t;for(;null!==(t=this.getToken());)if("/"===t){t=this.getToken();switch(t){case"FontMatrix":const a=this.readNumberArray();e.fontMatrix=a;break;case"Encoding":const n=this.getToken();let i;if(/^\d+$/.test(n)){i=[];const e=0|parseInt(n,10);this.getToken();for(let a=0;a{Object.defineProperty(t,"__esModule",{value:!0});t.Pattern=void 0;t.clearPatternCaches=function clearPatternCaches(){f=Object.create(null)};t.getTilingPatternIR=function getTilingPatternIR(e,t,a){const n=t.getArray("Matrix"),i=r.Util.normalizeRect(t.getArray("BBox")),s=t.get("XStep"),o=t.get("YStep"),c=t.get("PaintType"),l=t.get("TilingType");if(i[2]-i[0]==0||i[3]-i[1]==0)throw new r.FormatError(`Invalid getTilingPatternIR /BBox array: [${i}].`);return["TilingPattern",a,e,n,i,s,o,c,l]};var r=a(2),n=a(5),i=a(12),s=a(3);const o=2,c=3,l=4,h=5,u=6,d=7;t.Pattern=class Pattern{constructor(){(0,r.unreachable)("Cannot initialize Pattern.")}static parseShading(e,t,a,i,f){const g=e instanceof n.BaseStream?e.dict:e,p=g.get("ShadingType");try{switch(p){case o:case c:return new RadialAxialShading(g,t,a,i,f);case l:case h:case u:case d:return new MeshShading(e,t,a,i,f);default:throw new r.FormatError("Unsupported ShadingType: "+p)}}catch(e){if(e instanceof s.MissingDataException)throw e;(0,r.warn)(e);return new DummyShading}}};class BaseShading{static SMALL_NUMBER=1e-6;constructor(){this.constructor===BaseShading&&(0,r.unreachable)("Cannot initialize BaseShading.")}getIR(){(0,r.unreachable)("Abstract method `getIR` called.")}}class RadialAxialShading extends BaseShading{constructor(e,t,a,n,s){super();this.coordsArr=e.getArray("Coords");this.shadingType=e.get("ShadingType");const o=i.ColorSpace.parse({cs:e.getRaw("CS")||e.getRaw("ColorSpace"),xref:t,resources:a,pdfFunctionFactory:n,localColorSpaceCache:s}),l=e.getArray("BBox");this.bbox=Array.isArray(l)&&4===l.length?r.Util.normalizeRect(l):null;let h=0,u=1;if(e.has("Domain")){const t=e.getArray("Domain");h=t[0];u=t[1]}let d=!1,f=!1;if(e.has("Extend")){const t=e.getArray("Extend");d=t[0];f=t[1]}if(!(this.shadingType!==c||d&&f)){const[e,t,a,n,i,s]=this.coordsArr,o=Math.hypot(e-n,t-i);a<=s+o&&s<=a+o&&(0,r.warn)("Unsupported radial gradient.")}this.extendStart=d;this.extendEnd=f;const g=e.getRaw("Function"),p=n.createFromArray(g),m=(u-h)/840,b=this.colorStops=[];if(h>=u||m<=0){(0,r.info)("Bad shading domain.");return}const y=new Float32Array(o.numComps),w=new Float32Array(1);let S,x=0;w[0]=h;p(w,0,y,0);let C=o.getRgb(y,0);const k=r.Util.makeHexColor(C[0],C[1],C[2]);b.push([0,k]);let v=1;w[0]=h+m;p(w,0,y,0);let F=o.getRgb(y,0),O=F[0]-C[0]+1,T=F[1]-C[1]+1,M=F[2]-C[2]+1,D=F[0]-C[0]-1,E=F[1]-C[1]-1,N=F[2]-C[2]-1;for(let e=2;e<840;e++){w[0]=h+e*m;p(w,0,y,0);S=o.getRgb(y,0);const t=e-x;O=Math.min(O,(S[0]-C[0]+1)/t);T=Math.min(T,(S[1]-C[1]+1)/t);M=Math.min(M,(S[2]-C[2]+1)/t);D=Math.max(D,(S[0]-C[0]-1)/t);E=Math.max(E,(S[1]-C[1]-1)/t);N=Math.max(N,(S[2]-C[2]-1)/t);if(!(D<=O&&E<=T&&N<=M)){const e=r.Util.makeHexColor(F[0],F[1],F[2]);b.push([v/840,e]);O=S[0]-F[0]+1;T=S[1]-F[1]+1;M=S[2]-F[2]+1;D=S[0]-F[0]-1;E=S[1]-F[1]-1;N=S[2]-F[2]-1;x=v;C=F}v=e;F=S}const R=r.Util.makeHexColor(F[0],F[1],F[2]);b.push([1,R]);let L="transparent";if(e.has("Background")){S=o.getRgb(e.get("Background"),0);L=r.Util.makeHexColor(S[0],S[1],S[2])}if(!d){b.unshift([0,L]);b[1][0]+=BaseShading.SMALL_NUMBER}if(!f){b.at(-1)[0]-=BaseShading.SMALL_NUMBER;b.push([1,L])}this.colorStops=b}getIR(){const e=this.coordsArr,t=this.shadingType;let a,n,i,s,l;if(t===o){n=[e[0],e[1]];i=[e[2],e[3]];s=null;l=null;a="axial"}else if(t===c){n=[e[0],e[1]];i=[e[3],e[4]];s=e[2];l=e[5];a="radial"}else(0,r.unreachable)(`getPattern type unknown: ${t}`);return["RadialAxial",a,this.bbox,this.colorStops,n,i,s,l]}}class MeshStreamReader{constructor(e,t){this.stream=e;this.context=t;this.buffer=0;this.bufferLength=0;const a=t.numComps;this.tmpCompsBuf=new Float32Array(a);const r=t.colorSpace.numComps;this.tmpCsCompsBuf=t.colorFn?new Float32Array(r):this.tmpCompsBuf}get hasData(){if(this.stream.end)return this.stream.pos0)return!0;const e=this.stream.getByte();if(e<0)return!1;this.buffer=e;this.bufferLength=8;return!0}readBits(e){let t=this.buffer,a=this.bufferLength;if(32===e){if(0===a)return(this.stream.getByte()<<24|this.stream.getByte()<<16|this.stream.getByte()<<8|this.stream.getByte())>>>0;t=t<<24|this.stream.getByte()<<16|this.stream.getByte()<<8|this.stream.getByte();const e=this.stream.getByte();this.buffer=e&(1<>a)>>>0}if(8===e&&0===a)return this.stream.getByte();for(;a>a}align(){this.buffer=0;this.bufferLength=0}readFlag(){return this.readBits(this.context.bitsPerFlag)}readCoordinate(){const e=this.context.bitsPerCoordinate,t=this.readBits(e),a=this.readBits(e),r=this.context.decode,n=e<32?1/((1<i?i:e;t=t>s?s:t;a=a{Object.defineProperty(t,"__esModule",{value:!0});t.getXfaFontDict=function getXfaFontDict(e){const t=function getXfaFontWidths(e){const t=getXfaFontName(e);if(!t)return null;const{baseWidths:a,baseMapping:r,factors:n}=t,i=n?a.map(((e,t)=>e*n[t])):a;let s,o=-2;const c=[];for(const[e,t]of r.map(((e,t)=>[e,t])).sort((([e],[t])=>e-t)))if(-1!==e)if(e===o+1){s.push(i[t]);o+=1}else{o=e;s=[i[t]];c.push(e,s)}return c}(e),a=new n.Dict(null);a.set("BaseFont",n.Name.get(e));a.set("Type",n.Name.get("Font"));a.set("Subtype",n.Name.get("CIDFontType2"));a.set("Encoding",n.Name.get("Identity-H"));a.set("CIDToGIDMap",n.Name.get("Identity"));a.set("W",t);a.set("FirstChar",t[0]);a.set("LastChar",t.at(-2)+t.at(-1).length-1);const r=new n.Dict(null);a.set("FontDescriptor",r);const i=new n.Dict(null);i.set("Ordering","Identity");i.set("Registry","Adobe");i.set("Supplement",0);a.set("CIDSystemInfo",i);return a};t.getXfaFontName=getXfaFontName;var r=a(52),n=a(4),i=a(53),s=a(54),o=a(55),c=a(56),l=a(3),h=a(38);const u=(0,l.getLookupTableFactory)((function(e){e["MyriadPro-Regular"]=e["PdfJS-Fallback-Regular"]={name:"LiberationSans-Regular",factors:o.MyriadProRegularFactors,baseWidths:s.LiberationSansRegularWidths,baseMapping:s.LiberationSansRegularMapping,metrics:o.MyriadProRegularMetrics};e["MyriadPro-Bold"]=e["PdfJS-Fallback-Bold"]={name:"LiberationSans-Bold",factors:o.MyriadProBoldFactors,baseWidths:s.LiberationSansBoldWidths,baseMapping:s.LiberationSansBoldMapping,metrics:o.MyriadProBoldMetrics};e["MyriadPro-It"]=e["MyriadPro-Italic"]=e["PdfJS-Fallback-Italic"]={name:"LiberationSans-Italic",factors:o.MyriadProItalicFactors,baseWidths:s.LiberationSansItalicWidths,baseMapping:s.LiberationSansItalicMapping,metrics:o.MyriadProItalicMetrics};e["MyriadPro-BoldIt"]=e["MyriadPro-BoldItalic"]=e["PdfJS-Fallback-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:o.MyriadProBoldItalicFactors,baseWidths:s.LiberationSansBoldItalicWidths,baseMapping:s.LiberationSansBoldItalicMapping,metrics:o.MyriadProBoldItalicMetrics};e.ArialMT=e.Arial=e["Arial-Regular"]={name:"LiberationSans-Regular",baseWidths:s.LiberationSansRegularWidths,baseMapping:s.LiberationSansRegularMapping};e["Arial-BoldMT"]=e["Arial-Bold"]={name:"LiberationSans-Bold",baseWidths:s.LiberationSansBoldWidths,baseMapping:s.LiberationSansBoldMapping};e["Arial-ItalicMT"]=e["Arial-Italic"]={name:"LiberationSans-Italic",baseWidths:s.LiberationSansItalicWidths,baseMapping:s.LiberationSansItalicMapping};e["Arial-BoldItalicMT"]=e["Arial-BoldItalic"]={name:"LiberationSans-BoldItalic",baseWidths:s.LiberationSansBoldItalicWidths,baseMapping:s.LiberationSansBoldItalicMapping};e["Calibri-Regular"]={name:"LiberationSans-Regular",factors:r.CalibriRegularFactors,baseWidths:s.LiberationSansRegularWidths,baseMapping:s.LiberationSansRegularMapping,metrics:r.CalibriRegularMetrics};e["Calibri-Bold"]={name:"LiberationSans-Bold",factors:r.CalibriBoldFactors,baseWidths:s.LiberationSansBoldWidths,baseMapping:s.LiberationSansBoldMapping,metrics:r.CalibriBoldMetrics};e["Calibri-Italic"]={name:"LiberationSans-Italic",factors:r.CalibriItalicFactors,baseWidths:s.LiberationSansItalicWidths,baseMapping:s.LiberationSansItalicMapping,metrics:r.CalibriItalicMetrics};e["Calibri-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:r.CalibriBoldItalicFactors,baseWidths:s.LiberationSansBoldItalicWidths,baseMapping:s.LiberationSansBoldItalicMapping,metrics:r.CalibriBoldItalicMetrics};e["Segoeui-Regular"]={name:"LiberationSans-Regular",factors:c.SegoeuiRegularFactors,baseWidths:s.LiberationSansRegularWidths,baseMapping:s.LiberationSansRegularMapping,metrics:c.SegoeuiRegularMetrics};e["Segoeui-Bold"]={name:"LiberationSans-Bold",factors:c.SegoeuiBoldFactors,baseWidths:s.LiberationSansBoldWidths,baseMapping:s.LiberationSansBoldMapping,metrics:c.SegoeuiBoldMetrics};e["Segoeui-Italic"]={name:"LiberationSans-Italic",factors:c.SegoeuiItalicFactors,baseWidths:s.LiberationSansItalicWidths,baseMapping:s.LiberationSansItalicMapping,metrics:c.SegoeuiItalicMetrics};e["Segoeui-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:c.SegoeuiBoldItalicFactors,baseWidths:s.LiberationSansBoldItalicWidths,baseMapping:s.LiberationSansBoldItalicMapping,metrics:c.SegoeuiBoldItalicMetrics};e["Helvetica-Regular"]=e.Helvetica={name:"LiberationSans-Regular",factors:i.HelveticaRegularFactors,baseWidths:s.LiberationSansRegularWidths,baseMapping:s.LiberationSansRegularMapping,metrics:i.HelveticaRegularMetrics};e["Helvetica-Bold"]={name:"LiberationSans-Bold",factors:i.HelveticaBoldFactors,baseWidths:s.LiberationSansBoldWidths,baseMapping:s.LiberationSansBoldMapping,metrics:i.HelveticaBoldMetrics};e["Helvetica-Italic"]={name:"LiberationSans-Italic",factors:i.HelveticaItalicFactors,baseWidths:s.LiberationSansItalicWidths,baseMapping:s.LiberationSansItalicMapping,metrics:i.HelveticaItalicMetrics};e["Helvetica-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:i.HelveticaBoldItalicFactors,baseWidths:s.LiberationSansBoldItalicWidths,baseMapping:s.LiberationSansBoldItalicMapping,metrics:i.HelveticaBoldItalicMetrics}}));function getXfaFontName(e){const t=(0,h.normalizeFontName)(e);return u()[t]}},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CalibriRegularMetrics=t.CalibriRegularFactors=t.CalibriItalicMetrics=t.CalibriItalicFactors=t.CalibriBoldMetrics=t.CalibriBoldItalicMetrics=t.CalibriBoldItalicFactors=t.CalibriBoldFactors=void 0;t.CalibriBoldFactors=[1.3877,1,1,1,.97801,.92482,.89552,.91133,.81988,.97566,.98152,.93548,.93548,1.2798,.85284,.92794,1,.96134,1.54657,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.82845,.82845,.85284,.85284,.85284,.75859,.92138,.83908,.7762,.73293,.87289,.73133,.7514,.81921,.87356,.95958,.59526,.75727,.69225,1.04924,.9121,.86943,.79795,.88198,.77958,.70864,.81055,.90399,.88653,.96017,.82577,.77892,.78257,.97507,1.54657,.97507,.85284,.89552,.90176,.88762,.8785,.75241,.8785,.90518,.95015,.77618,.8785,.88401,.91916,.86304,.88401,.91488,.8785,.8801,.8785,.8785,.91343,.7173,1.04106,.8785,.85075,.95794,.82616,.85162,.79492,.88331,1.69808,.88331,.85284,.97801,.89552,.91133,.89552,.91133,1.7801,.89552,1.24487,1.13254,1.12401,.96839,.85284,.68787,.70645,.85592,.90747,1.01466,1.0088,.90323,1,1.07463,1,.91056,.75806,1.19118,.96839,.78864,.82845,.84133,.75859,.83908,.83908,.83908,.83908,.83908,.83908,.77539,.73293,.73133,.73133,.73133,.73133,.95958,.95958,.95958,.95958,.88506,.9121,.86943,.86943,.86943,.86943,.86943,.85284,.87508,.90399,.90399,.90399,.90399,.77892,.79795,.90807,.88762,.88762,.88762,.88762,.88762,.88762,.8715,.75241,.90518,.90518,.90518,.90518,.88401,.88401,.88401,.88401,.8785,.8785,.8801,.8801,.8801,.8801,.8801,.90747,.89049,.8785,.8785,.8785,.8785,.85162,.8785,.85162,.83908,.88762,.83908,.88762,.83908,.88762,.73293,.75241,.73293,.75241,.73293,.75241,.73293,.75241,.87289,.83016,.88506,.93125,.73133,.90518,.73133,.90518,.73133,.90518,.73133,.90518,.73133,.90518,.81921,.77618,.81921,.77618,.81921,.77618,1,1,.87356,.8785,.91075,.89608,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.76229,.90167,.59526,.91916,1,1,.86304,.69225,.88401,1,1,.70424,.79468,.91926,.88175,.70823,.94903,.9121,.8785,1,1,.9121,.8785,.87802,.88656,.8785,.86943,.8801,.86943,.8801,.86943,.8801,.87402,.89291,.77958,.91343,1,1,.77958,.91343,.70864,.7173,.70864,.7173,.70864,.7173,.70864,.7173,1,1,.81055,.75841,.81055,1.06452,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.96017,.95794,.77892,.85162,.77892,.78257,.79492,.78257,.79492,.78257,.79492,.9297,.56892,.83908,.88762,.77539,.8715,.87508,.89049,1,1,.81055,1.04106,1.20528,1.20528,1,1.15543,.70674,.98387,.94721,1.33431,1.45894,.95161,1.06303,.83908,.80352,.57184,.6965,.56289,.82001,.56029,.81235,1.02988,.83908,.7762,.68156,.80367,.73133,.78257,.87356,.86943,.95958,.75727,.89019,1.04924,.9121,.7648,.86943,.87356,.79795,.78275,.81055,.77892,.9762,.82577,.99819,.84896,.95958,.77892,.96108,1.01407,.89049,1.02988,.94211,.96108,.8936,.84021,.87842,.96399,.79109,.89049,1.00813,1.02988,.86077,.87445,.92099,.84723,.86513,.8801,.75638,.85714,.78216,.79586,.87965,.94211,.97747,.78287,.97926,.84971,1.02988,.94211,.8801,.94211,.84971,.73133,1,1,1,1,1,1,1,1,1,1,1,1,.90264,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.90518,1,1,1,1,1,1,1,1,1,1,1,1,.90548,1,1,1,1,1,1,.96017,.95794,.96017,.95794,.96017,.95794,.77892,.85162,1,1,.89552,.90527,1,.90363,.92794,.92794,.92794,.92794,.87012,.87012,.87012,.89552,.89552,1.42259,.71143,1.06152,1,1,1.03372,1.03372,.97171,1.4956,2.2807,.93835,.83406,.91133,.84107,.91133,1,1,1,.72021,1,1.23108,.83489,.88525,.88525,.81499,.90527,1.81055,.90527,1.81055,1.31006,1.53711,.94434,1.08696,1,.95018,.77192,.85284,.90747,1.17534,.69825,.9716,1.37077,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.08004,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,.90727,.90727,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.CalibriBoldMetrics={lineHeight:1.2207,lineGap:.2207};t.CalibriBoldItalicFactors=[1.3877,1,1,1,.97801,.92482,.89552,.91133,.81988,.97566,.98152,.93548,.93548,1.2798,.85284,.92794,1,.96134,1.56239,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.82845,.82845,.85284,.85284,.85284,.75859,.92138,.83908,.7762,.71805,.87289,.73133,.7514,.81921,.87356,.95958,.59526,.75727,.69225,1.04924,.90872,.85938,.79795,.87068,.77958,.69766,.81055,.90399,.88653,.96068,.82577,.77892,.78257,.97507,1.529,.97507,.85284,.89552,.90176,.94908,.86411,.74012,.86411,.88323,.95015,.86411,.86331,.88401,.91916,.86304,.88401,.9039,.86331,.86331,.86411,.86411,.90464,.70852,1.04106,.86331,.84372,.95794,.82616,.84548,.79492,.88331,1.69808,.88331,.85284,.97801,.89552,.91133,.89552,.91133,1.7801,.89552,1.24487,1.13254,1.19129,.96839,.85284,.68787,.70645,.85592,.90747,1.01466,1.0088,.90323,1,1.07463,1,.91056,.75806,1.19118,.96839,.78864,.82845,.84133,.75859,.83908,.83908,.83908,.83908,.83908,.83908,.77539,.71805,.73133,.73133,.73133,.73133,.95958,.95958,.95958,.95958,.88506,.90872,.85938,.85938,.85938,.85938,.85938,.85284,.87068,.90399,.90399,.90399,.90399,.77892,.79795,.90807,.94908,.94908,.94908,.94908,.94908,.94908,.85887,.74012,.88323,.88323,.88323,.88323,.88401,.88401,.88401,.88401,.8785,.86331,.86331,.86331,.86331,.86331,.86331,.90747,.89049,.86331,.86331,.86331,.86331,.84548,.86411,.84548,.83908,.94908,.83908,.94908,.83908,.94908,.71805,.74012,.71805,.74012,.71805,.74012,.71805,.74012,.87289,.79538,.88506,.92726,.73133,.88323,.73133,.88323,.73133,.88323,.73133,.88323,.73133,.88323,.81921,.86411,.81921,.86411,.81921,.86411,1,1,.87356,.86331,.91075,.8777,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.76467,.90167,.59526,.91916,1,1,.86304,.69225,.88401,1,1,.70424,.77312,.91926,.88175,.70823,.94903,.90872,.86331,1,1,.90872,.86331,.86906,.88116,.86331,.85938,.86331,.85938,.86331,.85938,.86331,.87402,.86549,.77958,.90464,1,1,.77958,.90464,.69766,.70852,.69766,.70852,.69766,.70852,.69766,.70852,1,1,.81055,.75841,.81055,1.06452,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.96068,.95794,.77892,.84548,.77892,.78257,.79492,.78257,.79492,.78257,.79492,.9297,.56892,.83908,.94908,.77539,.85887,.87068,.89049,1,1,.81055,1.04106,1.20528,1.20528,1,1.15543,.70088,.98387,.94721,1.33431,1.45894,.95161,1.48387,.83908,.80352,.57118,.6965,.56347,.79179,.55853,.80346,1.02988,.83908,.7762,.67174,.86036,.73133,.78257,.87356,.86441,.95958,.75727,.89019,1.04924,.90872,.74889,.85938,.87891,.79795,.7957,.81055,.77892,.97447,.82577,.97466,.87179,.95958,.77892,.94252,.95612,.8753,1.02988,.92733,.94252,.87411,.84021,.8728,.95612,.74081,.8753,1.02189,1.02988,.84814,.87445,.91822,.84723,.85668,.86331,.81344,.87581,.76422,.82046,.96057,.92733,.99375,.78022,.95452,.86015,1.02988,.92733,.86331,.92733,.86015,.73133,1,1,1,1,1,1,1,1,1,1,1,1,.90631,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.88323,1,1,1,1,1,1,1,1,1,1,1,1,.85174,1,1,1,1,1,1,.96068,.95794,.96068,.95794,.96068,.95794,.77892,.84548,1,1,.89552,.90527,1,.90363,.92794,.92794,.92794,.89807,.87012,.87012,.87012,.89552,.89552,1.42259,.71094,1.06152,1,1,1.03372,1.03372,.97171,1.4956,2.2807,.92972,.83406,.91133,.83326,.91133,1,1,1,.72021,1,1.23108,.83489,.88525,.88525,.81499,.90616,1.81055,.90527,1.81055,1.3107,1.53711,.94434,1.08696,1,.95018,.77192,.85284,.90747,1.17534,.69825,.9716,1.37077,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.08004,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,.90727,.90727,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.CalibriBoldItalicMetrics={lineHeight:1.2207,lineGap:.2207};t.CalibriItalicFactors=[1.3877,1,1,1,1.17223,1.1293,.89552,.91133,.80395,1.02269,1.15601,.91056,.91056,1.2798,.85284,.89807,1,.90861,1.39543,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.96309,.96309,.85284,.85284,.85284,.83319,.88071,.8675,.81552,.72346,.85193,.73206,.7522,.81105,.86275,.90685,.6377,.77892,.75593,1.02638,.89249,.84118,.77452,.85374,.75186,.67789,.79776,.88844,.85066,.94309,.77818,.7306,.76659,1.10369,1.38313,1.10369,1.06139,.89552,.8739,.9245,.9245,.83203,.9245,.85865,1.09842,.9245,.9245,1.03297,1.07692,.90918,1.03297,.94959,.9245,.92274,.9245,.9245,1.02933,.77832,1.20562,.9245,.8916,.98986,.86621,.89453,.79004,.94152,1.77256,.94152,.85284,.97801,.89552,.91133,.89552,.91133,1.91729,.89552,1.17889,1.13254,1.16359,.92098,.85284,.68787,.71353,.84737,.90747,1.0088,1.0044,.87683,1,1.09091,1,.92229,.739,1.15642,.92098,.76288,.80504,.80972,.75859,.8675,.8675,.8675,.8675,.8675,.8675,.76318,.72346,.73206,.73206,.73206,.73206,.90685,.90685,.90685,.90685,.86477,.89249,.84118,.84118,.84118,.84118,.84118,.85284,.84557,.88844,.88844,.88844,.88844,.7306,.77452,.86331,.9245,.9245,.9245,.9245,.9245,.9245,.84843,.83203,.85865,.85865,.85865,.85865,.82601,.82601,.82601,.82601,.94469,.9245,.92274,.92274,.92274,.92274,.92274,.90747,.86651,.9245,.9245,.9245,.9245,.89453,.9245,.89453,.8675,.9245,.8675,.9245,.8675,.9245,.72346,.83203,.72346,.83203,.72346,.83203,.72346,.83203,.85193,.8875,.86477,.99034,.73206,.85865,.73206,.85865,.73206,.85865,.73206,.85865,.73206,.85865,.81105,.9245,.81105,.9245,.81105,.9245,1,1,.86275,.9245,.90872,.93591,.90685,.82601,.90685,.82601,.90685,.82601,.90685,1.03297,.90685,.82601,.77896,1.05611,.6377,1.07692,1,1,.90918,.75593,1.03297,1,1,.76032,.9375,.98156,.93407,.77261,1.11429,.89249,.9245,1,1,.89249,.9245,.92534,.86698,.9245,.84118,.92274,.84118,.92274,.84118,.92274,.8667,.86291,.75186,1.02933,1,1,.75186,1.02933,.67789,.77832,.67789,.77832,.67789,.77832,.67789,.77832,1,1,.79776,.97655,.79776,1.23023,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.94309,.98986,.7306,.89453,.7306,.76659,.79004,.76659,.79004,.76659,.79004,1.09231,.54873,.8675,.9245,.76318,.84843,.84557,.86651,1,1,.79776,1.20562,1.18622,1.18622,1,1.1437,.67009,.96334,.93695,1.35191,1.40909,.95161,1.48387,.8675,.90861,.6192,.7363,.64824,.82411,.56321,.85696,1.23516,.8675,.81552,.7286,.84134,.73206,.76659,.86275,.84369,.90685,.77892,.85871,1.02638,.89249,.75828,.84118,.85984,.77452,.76466,.79776,.7306,.90782,.77818,.903,.87291,.90685,.7306,.99058,1.03667,.94635,1.23516,.9849,.99058,.92393,.8916,.942,1.03667,.75026,.94635,1.0297,1.23516,.90918,.94048,.98217,.89746,.84153,.92274,.82507,.88832,.84438,.88178,1.03525,.9849,1.00225,.78086,.97248,.89404,1.23516,.9849,.92274,.9849,.89404,.73206,1,1,1,1,1,1,1,1,1,1,1,1,.89693,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.85865,1,1,1,1,1,1,1,1,1,1,1,1,.90933,1,1,1,1,1,1,.94309,.98986,.94309,.98986,.94309,.98986,.7306,.89453,1,1,.89552,.90527,1,.90186,1.12308,1.12308,1.12308,1.12308,1.2566,1.2566,1.2566,.89552,.89552,1.42259,.68994,1.03809,1,1,1.0176,1.0176,1.11523,1.4956,2.01462,.97858,.82616,.91133,.83437,.91133,1,1,1,.70508,1,1.23108,.79801,.84426,.84426,.774,.90572,1.81055,.90749,1.81055,1.28809,1.55469,.94434,1.07806,1,.97094,.7589,.85284,.90747,1.19658,.69825,.97622,1.33512,.90747,.90747,.85284,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.0336,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,1.05859,1.05859,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.CalibriItalicMetrics={lineHeight:1.2207,lineGap:.2207};t.CalibriRegularFactors=[1.3877,1,1,1,1.17223,1.1293,.89552,.91133,.80395,1.02269,1.15601,.91056,.91056,1.2798,.85284,.89807,1,.90861,1.39016,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.96309,.96309,.85284,.85284,.85284,.83319,.88071,.8675,.81552,.73834,.85193,.73206,.7522,.81105,.86275,.90685,.6377,.77892,.75593,1.02638,.89385,.85122,.77452,.86503,.75186,.68887,.79776,.88844,.85066,.94258,.77818,.7306,.76659,1.10369,1.39016,1.10369,1.06139,.89552,.8739,.86128,.94469,.8457,.94469,.89464,1.09842,.84636,.94469,1.03297,1.07692,.90918,1.03297,.95897,.94469,.9482,.94469,.94469,1.04692,.78223,1.20562,.94469,.90332,.98986,.86621,.90527,.79004,.94152,1.77256,.94152,.85284,.97801,.89552,.91133,.89552,.91133,1.91729,.89552,1.17889,1.13254,1.08707,.92098,.85284,.68787,.71353,.84737,.90747,1.0088,1.0044,.87683,1,1.09091,1,.92229,.739,1.15642,.92098,.76288,.80504,.80972,.75859,.8675,.8675,.8675,.8675,.8675,.8675,.76318,.73834,.73206,.73206,.73206,.73206,.90685,.90685,.90685,.90685,.86477,.89385,.85122,.85122,.85122,.85122,.85122,.85284,.85311,.88844,.88844,.88844,.88844,.7306,.77452,.86331,.86128,.86128,.86128,.86128,.86128,.86128,.8693,.8457,.89464,.89464,.89464,.89464,.82601,.82601,.82601,.82601,.94469,.94469,.9482,.9482,.9482,.9482,.9482,.90747,.86651,.94469,.94469,.94469,.94469,.90527,.94469,.90527,.8675,.86128,.8675,.86128,.8675,.86128,.73834,.8457,.73834,.8457,.73834,.8457,.73834,.8457,.85193,.92454,.86477,.9921,.73206,.89464,.73206,.89464,.73206,.89464,.73206,.89464,.73206,.89464,.81105,.84636,.81105,.84636,.81105,.84636,1,1,.86275,.94469,.90872,.95786,.90685,.82601,.90685,.82601,.90685,.82601,.90685,1.03297,.90685,.82601,.77741,1.05611,.6377,1.07692,1,1,.90918,.75593,1.03297,1,1,.76032,.90452,.98156,1.11842,.77261,1.11429,.89385,.94469,1,1,.89385,.94469,.95877,.86901,.94469,.85122,.9482,.85122,.9482,.85122,.9482,.8667,.90016,.75186,1.04692,1,1,.75186,1.04692,.68887,.78223,.68887,.78223,.68887,.78223,.68887,.78223,1,1,.79776,.92188,.79776,1.23023,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.94258,.98986,.7306,.90527,.7306,.76659,.79004,.76659,.79004,.76659,.79004,1.09231,.54873,.8675,.86128,.76318,.8693,.85311,.86651,1,1,.79776,1.20562,1.18622,1.18622,1,1.1437,.67742,.96334,.93695,1.35191,1.40909,.95161,1.48387,.86686,.90861,.62267,.74359,.65649,.85498,.56963,.88254,1.23516,.8675,.81552,.75443,.84503,.73206,.76659,.86275,.85122,.90685,.77892,.85746,1.02638,.89385,.75657,.85122,.86275,.77452,.74171,.79776,.7306,.95165,.77818,.89772,.88831,.90685,.7306,.98142,1.02191,.96576,1.23516,.99018,.98142,.9236,.89258,.94035,1.02191,.78848,.96576,.9561,1.23516,.90918,.92578,.95424,.89746,.83969,.9482,.80113,.89442,.85208,.86155,.98022,.99018,1.00452,.81209,.99247,.89181,1.23516,.99018,.9482,.99018,.89181,.73206,1,1,1,1,1,1,1,1,1,1,1,1,.88844,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.89464,1,1,1,1,1,1,1,1,1,1,1,1,.96766,1,1,1,1,1,1,.94258,.98986,.94258,.98986,.94258,.98986,.7306,.90527,1,1,.89552,.90527,1,.90186,1.12308,1.12308,1.12308,1.12308,1.2566,1.2566,1.2566,.89552,.89552,1.42259,.69043,1.03809,1,1,1.0176,1.0176,1.11523,1.4956,2.01462,.99331,.82616,.91133,.84286,.91133,1,1,1,.70508,1,1.23108,.79801,.84426,.84426,.774,.90527,1.81055,.90527,1.81055,1.28809,1.55469,.94434,1.07806,1,.97094,.7589,.85284,.90747,1.19658,.69825,.97622,1.33512,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.0336,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,1.05859,1.05859,1,1,1,1.07185,.99413,.96334,1.08065,1,1,1,1,1,1,1,1,1,1,1];t.CalibriRegularMetrics={lineHeight:1.2207,lineGap:.2207}},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.HelveticaRegularMetrics=t.HelveticaRegularFactors=t.HelveticaItalicMetrics=t.HelveticaItalicFactors=t.HelveticaBoldMetrics=t.HelveticaBoldItalicMetrics=t.HelveticaBoldItalicFactors=t.HelveticaBoldFactors=void 0;t.HelveticaBoldFactors=[.76116,1,1,1.0006,.99998,.99974,.99973,.99973,.99982,.99977,1.00087,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99998,1,1.00003,1.00003,1.00003,1.00026,.9999,.99977,.99977,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,.99973,.99977,1.00026,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,.99998,1.0006,.99998,1.00003,.99973,.99998,.99973,1.00026,.99973,1.00026,.99973,.99998,1.00026,1.00026,1.0006,1.0006,.99973,1.0006,.99982,1.00026,1.00026,1.00026,1.00026,.99959,.99973,.99998,1.00026,.99973,1.00022,.99973,.99973,1,.99959,1.00077,.99959,1.00003,.99998,.99973,.99973,.99973,.99973,1.00077,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.99973,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,.99977,.99977,.99977,.99977,.99977,.99977,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,.99973,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.06409,1.00026,1.00026,1.00026,1.00026,1.00026,.99973,1.00026,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,1.03374,.99977,1.00026,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,.99977,1.00026,.99977,1.00026,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.00042,.99973,.99973,1.0006,.99977,.99973,.99973,1.00026,1.0006,1.00026,1.0006,1.00026,1.03828,1.00026,.99999,1.00026,1.0006,.99977,1.00026,.99977,1.00026,.99977,1.00026,.9993,.9998,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1,1.00016,.99977,.99959,.99977,.99959,.99977,.99959,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00026,.99998,1.00026,.8121,1.00026,.99998,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,1.00016,1.00022,1.00001,.99973,1.00001,1.00026,1,1.00026,1,1.00026,1,1.0006,.99973,.99977,.99973,1,.99982,1.00022,1.00026,1.00001,.99973,1.00026,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,1.00034,.99977,1,.99997,1.00026,1.00078,1.00036,.99973,1.00013,1.0006,.99977,.99977,.99988,.85148,1.00001,1.00026,.99977,1.00022,1.0006,.99977,1.00001,.99999,.99977,1.00069,1.00022,.99977,1.00001,.99984,1.00026,1.00001,1.00024,1.00001,.9999,1,1.0006,1.00001,1.00041,.99962,1.00026,1.0006,.99995,1.00041,.99942,.99973,.99927,1.00082,.99902,1.00026,1.00087,1.0006,1.00069,.99973,.99867,.99973,.9993,1.00026,1.00049,1.00056,1,.99988,.99935,.99995,.99954,1.00055,.99945,1.00032,1.0006,.99995,1.00026,.99995,1.00032,1.00001,1.00008,.99971,1.00019,.9994,1.00001,1.0006,1.00044,.99973,1.00023,1.00047,1,.99942,.99561,.99989,1.00035,.99977,1.00035,.99977,1.00019,.99944,1.00001,1.00021,.99926,1.00035,1.00035,.99942,1.00048,.99999,.99977,1.00022,1.00035,1.00001,.99977,1.00026,.99989,1.00057,1.00001,.99936,1.00052,1.00012,.99996,1.00043,1,1.00035,.9994,.99976,1.00035,.99973,1.00052,1.00041,1.00119,1.00037,.99973,1.00002,.99986,1.00041,1.00041,.99902,.9996,1.00034,.99999,1.00026,.99999,1.00026,.99973,1.00052,.99973,1,.99973,1.00041,1.00075,.9994,1.0003,.99999,1,1.00041,.99955,1,.99915,.99973,.99973,1.00026,1.00119,.99955,.99973,1.0006,.99911,1.0006,1.00026,.99972,1.00026,.99902,1.00041,.99973,.99999,1,1,1.00038,1.0005,1.00016,1.00022,1.00016,1.00022,1.00016,1.00022,1.00001,.99973,1,1,.99973,1,1,.99955,1.0006,1.0006,1.0006,1.0006,1,1,1,.99973,.99973,.99972,1,1,1.00106,.99999,.99998,.99998,.99999,.99998,1.66475,1,.99973,.99973,1.00023,.99973,.99971,1.00047,1.00023,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1,1,1,1,1,1,1,.99972,1,1.20985,1.39713,1.00003,1.00031,1.00015,1,.99561,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.99972,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1];t.HelveticaBoldMetrics={lineHeight:1.2,lineGap:.2};t.HelveticaBoldItalicFactors=[.76116,1,1,1.0006,.99998,.99974,.99973,.99973,.99982,.99977,1.00087,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99998,1,1.00003,1.00003,1.00003,1.00026,.9999,.99977,.99977,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,.99973,.99977,1.00026,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,.99998,1.0006,.99998,1.00003,.99973,.99998,.99973,1.00026,.99973,1.00026,.99973,.99998,1.00026,1.00026,1.0006,1.0006,.99973,1.0006,.99982,1.00026,1.00026,1.00026,1.00026,.99959,.99973,.99998,1.00026,.99973,1.00022,.99973,.99973,1,.99959,1.00077,.99959,1.00003,.99998,.99973,.99973,.99973,.99973,1.00077,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.99973,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,.99977,.99977,.99977,.99977,.99977,.99977,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,.99973,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.06409,1.00026,1.00026,1.00026,1.00026,1.00026,.99973,1.00026,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,1.0044,.99977,1.00026,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,.99977,1.00026,.99977,1.00026,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99971,.99973,.99973,1.0006,.99977,.99973,.99973,1.00026,1.0006,1.00026,1.0006,1.00026,1.01011,1.00026,.99999,1.00026,1.0006,.99977,1.00026,.99977,1.00026,.99977,1.00026,.9993,.9998,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1,1.00016,.99977,.99959,.99977,.99959,.99977,.99959,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00026,.99998,1.00026,.8121,1.00026,.99998,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,1.00016,1.00022,1.00001,.99973,1.00001,1.00026,1,1.00026,1,1.00026,1,1.0006,.99973,.99977,.99973,1,.99982,1.00022,1.00026,1.00001,.99973,1.00026,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99977,1,1,1.00026,.99969,.99972,.99981,.9998,1.0006,.99977,.99977,1.00022,.91155,1.00001,1.00026,.99977,1.00022,1.0006,.99977,1.00001,.99999,.99977,.99966,1.00022,1.00032,1.00001,.99944,1.00026,1.00001,.99968,1.00001,1.00047,1,1.0006,1.00001,.99981,1.00101,1.00026,1.0006,.99948,.99981,1.00064,.99973,.99942,1.00101,1.00061,1.00026,1.00069,1.0006,1.00014,.99973,1.01322,.99973,1.00065,1.00026,1.00012,.99923,1,1.00064,1.00076,.99948,1.00055,1.00063,1.00007,.99943,1.0006,.99948,1.00026,.99948,.99943,1.00001,1.00001,1.00029,1.00038,1.00035,1.00001,1.0006,1.0006,.99973,.99978,1.00001,1.00057,.99989,.99967,.99964,.99967,.99977,.99999,.99977,1.00038,.99977,1.00001,.99973,1.00066,.99967,.99967,1.00041,.99998,.99999,.99977,1.00022,.99967,1.00001,.99977,1.00026,.99964,1.00031,1.00001,.99999,.99999,1,1.00023,1,1,.99999,1.00035,1.00001,.99999,.99973,.99977,.99999,1.00058,.99973,.99973,.99955,.9995,1.00026,1.00026,1.00032,.99989,1.00034,.99999,1.00026,1.00026,1.00026,.99973,.45998,.99973,1.00026,.99973,1.00001,.99999,.99982,.99994,.99996,1,1.00042,1.00044,1.00029,1.00023,.99973,.99973,1.00026,.99949,1.00002,.99973,1.0006,1.0006,1.0006,.99975,1.00026,1.00026,1.00032,.98685,.99973,1.00026,1,1,.99966,1.00044,1.00016,1.00022,1.00016,1.00022,1.00016,1.00022,1.00001,.99973,1,1,.99973,1,1,.99955,1.0006,1.0006,1.0006,1.0006,1,1,1,.99973,.99973,.99972,1,1,1.00106,.99999,.99998,.99998,.99999,.99998,1.66475,1,.99973,.99973,1,.99973,.99971,.99978,1,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1.00098,1,1,1,1.00049,1,1,.99972,1,1.20985,1.39713,1.00003,1.00031,1.00015,1,.99561,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.99972,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1];t.HelveticaBoldItalicMetrics={lineHeight:1.35,lineGap:.2};t.HelveticaItalicFactors=[.76116,1,1,1.0006,1.0006,1.00006,.99973,.99973,.99982,1.00001,1.00043,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.0006,1,1.00003,1.00003,1.00003,.99973,.99987,1.00001,1.00001,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,1,1.00001,.99973,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,1.0006,1.0006,1.0006,.99949,.99973,.99998,.99973,.99973,1,.99973,.99973,1.0006,.99973,.99973,.99924,.99924,1,.99924,.99999,.99973,.99973,.99973,.99973,.99998,1,1.0006,.99973,1,.99977,1,1,1,1.00005,1.0009,1.00005,1.00003,.99998,.99973,.99973,.99973,.99973,1.0009,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.9998,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,1.00001,1.00001,1.00001,1.00001,1.00001,1.00001,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,1,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.06409,1.00026,.99973,.99973,.99973,.99973,1,.99973,1,1.00001,.99973,1.00001,.99973,1.00001,.99973,.99977,1,.99977,1,.99977,1,.99977,1,.99977,1.0288,.99977,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,.99977,.99973,.99977,.99973,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99924,1.0006,1.0006,.99946,1.00034,1,.99924,1.00001,1,1,.99973,.99924,.99973,.99924,.99973,1.06311,.99973,1.00024,.99973,.99924,.99977,.99973,.99977,.99973,.99977,.99973,1.00041,.9998,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1,1.00016,.99977,.99998,.99977,.99998,.99977,.99998,1.00001,1,1.00001,1,1.00001,1,1.00001,1,1.00026,1.0006,1.00026,.89547,1.00026,1.0006,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,1.00016,.99977,1.00001,1,1.00001,1.00026,1,1.00026,1,1.00026,1,.99924,.99973,1.00001,.99973,1,.99982,1.00022,1.00026,1.00001,1,1.00026,1.0006,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,1.00001,1,1.00054,.99977,1.00084,1.00007,.99973,1.00013,.99924,1.00001,1.00001,.99945,.91221,1.00001,1.00026,.99977,1.00022,1.0006,1.00001,1.00001,.99999,.99977,.99933,1.00022,1.00054,1.00001,1.00065,1.00026,1.00001,1.0001,1.00001,1.00052,1,1.0006,1.00001,.99945,.99897,.99968,.99924,1.00036,.99945,.99949,1,1.0006,.99897,.99918,.99968,.99911,.99924,1,.99962,1.01487,1,1.0005,.99973,1.00012,1.00043,1,.99995,.99994,1.00036,.99947,1.00019,1.00063,1.00025,.99924,1.00036,.99973,1.00036,1.00025,1.00001,1.00001,1.00027,1.0001,1.00068,1.00001,1.0006,1.0006,1,1.00008,.99957,.99972,.9994,.99954,.99975,1.00051,1.00001,1.00019,1.00001,1.0001,.99986,1.00001,1.00001,1.00038,.99954,.99954,.9994,1.00066,.99999,.99977,1.00022,1.00054,1.00001,.99977,1.00026,.99975,1.0001,1.00001,.99993,.9995,.99955,1.00016,.99978,.99974,1.00019,1.00022,.99955,1.00053,.99973,1.00089,1.00005,.99967,1.00048,.99973,1.00002,1.00034,.99973,.99973,.99964,1.00006,1.00066,.99947,.99973,.98894,.99973,1,.44898,1,.99946,1,1.00039,1.00082,.99991,.99991,.99985,1.00022,1.00023,1.00061,1.00006,.99966,.99973,.99973,.99973,1.00019,1.0008,1,.99924,.99924,.99924,.99983,1.00044,.99973,.99964,.98332,1,.99973,1,1,.99962,.99895,1.00016,.99977,1.00016,.99977,1.00016,.99977,1.00001,1,1,1,.99973,1,1,.99955,.99924,.99924,.99924,.99924,.99998,.99998,.99998,.99973,.99973,.99972,1,1,1.00267,.99999,.99998,.99998,1,.99998,1.66475,1,.99973,.99973,1.00023,.99973,1.00423,.99925,.99999,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1.00049,1,1.00245,1,1,1,1,.96329,1,1.20985,1.39713,1.00003,.8254,1.00015,1,1.00035,1.00027,1.00031,1.00031,1.00003,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.95317,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1];t.HelveticaItalicMetrics={lineHeight:1.35,lineGap:.2};t.HelveticaRegularFactors=[.76116,1,1,1.0006,1.0006,1.00006,.99973,.99973,.99982,1.00001,1.00043,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.0006,1,1.00003,1.00003,1.00003,.99973,.99987,1.00001,1.00001,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,1,1.00001,.99973,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,1.0006,1.0006,1.0006,.99949,.99973,.99998,.99973,.99973,1,.99973,.99973,1.0006,.99973,.99973,.99924,.99924,1,.99924,.99999,.99973,.99973,.99973,.99973,.99998,1,1.0006,.99973,1,.99977,1,1,1,1.00005,1.0009,1.00005,1.00003,.99998,.99973,.99973,.99973,.99973,1.0009,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.9998,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,1.00001,1.00001,1.00001,1.00001,1.00001,1.00001,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,1,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.06409,1.00026,.99973,.99973,.99973,.99973,1,.99973,1,1.00001,.99973,1.00001,.99973,1.00001,.99973,.99977,1,.99977,1,.99977,1,.99977,1,.99977,1.04596,.99977,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,.99977,.99973,.99977,.99973,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99924,1.0006,1.0006,1.00019,1.00034,1,.99924,1.00001,1,1,.99973,.99924,.99973,.99924,.99973,1.02572,.99973,1.00005,.99973,.99924,.99977,.99973,.99977,.99973,.99977,.99973,.99999,.9998,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1,1.00016,.99977,.99998,.99977,.99998,.99977,.99998,1.00001,1,1.00001,1,1.00001,1,1.00001,1,1.00026,1.0006,1.00026,.84533,1.00026,1.0006,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,1.00016,.99977,1.00001,1,1.00001,1.00026,1,1.00026,1,1.00026,1,.99924,.99973,1.00001,.99973,1,.99982,1.00022,1.00026,1.00001,1,1.00026,1.0006,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99928,1,.99977,1.00013,1.00055,.99947,.99945,.99941,.99924,1.00001,1.00001,1.0004,.91621,1.00001,1.00026,.99977,1.00022,1.0006,1.00001,1.00005,.99999,.99977,1.00015,1.00022,.99977,1.00001,.99973,1.00026,1.00001,1.00019,1.00001,.99946,1,1.0006,1.00001,.99978,1.00045,.99973,.99924,1.00023,.99978,.99966,1,1.00065,1.00045,1.00019,.99973,.99973,.99924,1,1,.96499,1,1.00055,.99973,1.00008,1.00027,1,.9997,.99995,1.00023,.99933,1.00019,1.00015,1.00031,.99924,1.00023,.99973,1.00023,1.00031,1.00001,.99928,1.00029,1.00092,1.00035,1.00001,1.0006,1.0006,1,.99988,.99975,1,1.00082,.99561,.9996,1.00035,1.00001,.99962,1.00001,1.00092,.99964,1.00001,.99963,.99999,1.00035,1.00035,1.00082,.99962,.99999,.99977,1.00022,1.00035,1.00001,.99977,1.00026,.9996,.99967,1.00001,1.00034,1.00074,1.00054,1.00053,1.00063,.99971,.99962,1.00035,.99975,.99977,.99973,1.00043,.99953,1.0007,.99915,.99973,1.00008,.99892,1.00073,1.00073,1.00114,.99915,1.00073,.99955,.99973,1.00092,.99973,1,.99998,1,1.0003,1,1.00043,1.00001,.99969,1.0003,1,1.00035,1.00001,.9995,1,1.00092,.99973,.99973,.99973,1.0007,.9995,1,.99924,1.0006,.99924,.99972,1.00062,.99973,1.00114,1.00073,1,.99955,1,1,1.00047,.99968,1.00016,.99977,1.00016,.99977,1.00016,.99977,1.00001,1,1,1,.99973,1,1,.99955,.99924,.99924,.99924,.99924,.99998,.99998,.99998,.99973,.99973,.99972,1,1,1.00267,.99999,.99998,.99998,1,.99998,1.66475,1,.99973,.99973,1.00023,.99973,.99971,.99925,1.00023,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1,1,1,1,1,1,1,.96329,1,1.20985,1.39713,1.00003,.8254,1.00015,1,1.00035,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.95317,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.HelveticaRegularMetrics={lineHeight:1.2,lineGap:.2}},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.LiberationSansRegularWidths=t.LiberationSansRegularMapping=t.LiberationSansItalicWidths=t.LiberationSansItalicMapping=t.LiberationSansBoldWidths=t.LiberationSansBoldMapping=t.LiberationSansBoldItalicWidths=t.LiberationSansBoldItalicMapping=void 0;t.LiberationSansBoldWidths=[365,0,333,278,333,474,556,556,889,722,238,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,333,333,584,584,584,611,975,722,722,722,722,667,611,778,722,278,556,722,611,833,722,778,667,778,722,667,611,722,667,944,667,667,611,333,278,333,584,556,333,556,611,556,611,556,333,611,611,278,278,556,278,889,611,611,611,611,389,556,333,611,556,778,556,556,500,389,280,389,584,333,556,556,556,556,280,556,333,737,370,556,584,737,552,400,549,333,333,333,576,556,278,333,333,365,556,834,834,834,611,722,722,722,722,722,722,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,556,556,556,556,556,278,278,278,278,611,611,611,611,611,611,611,549,611,611,611,611,611,556,611,556,722,556,722,556,722,556,722,556,722,556,722,556,722,556,722,719,722,611,667,556,667,556,667,556,667,556,667,556,778,611,778,611,778,611,778,611,722,611,722,611,278,278,278,278,278,278,278,278,278,278,785,556,556,278,722,556,556,611,278,611,278,611,385,611,479,611,278,722,611,722,611,722,611,708,723,611,778,611,778,611,778,611,1e3,944,722,389,722,389,722,389,667,556,667,556,667,556,667,556,611,333,611,479,611,333,722,611,722,611,722,611,722,611,722,611,722,611,944,778,667,556,667,611,500,611,500,611,500,278,556,722,556,1e3,889,778,611,667,556,611,333,333,333,333,333,333,333,333,333,333,333,465,722,333,853,906,474,825,927,838,278,722,722,601,719,667,611,722,778,278,722,667,833,722,644,778,722,667,600,611,667,821,667,809,802,278,667,615,451,611,278,582,615,610,556,606,475,460,611,541,278,558,556,612,556,445,611,766,619,520,684,446,582,715,576,753,845,278,582,611,582,845,667,669,885,567,711,667,278,276,556,1094,1062,875,610,722,622,719,722,719,722,567,712,667,904,626,719,719,610,702,833,722,778,719,667,722,611,622,854,667,730,703,1005,1019,870,979,719,711,1031,719,556,618,615,417,635,556,709,497,615,615,500,635,740,604,611,604,611,556,490,556,875,556,615,581,833,844,729,854,615,552,854,583,556,556,611,417,552,556,278,281,278,969,906,611,500,615,556,604,778,611,487,447,944,778,944,778,944,778,667,556,333,333,556,1e3,1e3,552,278,278,278,278,500,500,500,556,556,350,1e3,1e3,240,479,333,333,604,333,167,396,556,556,1094,556,885,489,1115,1e3,768,600,834,834,834,834,1e3,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,722,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,611,611,333,333,333,333,333,333,333,333,222,222,333,333,333,333,333,333,333,333];t.LiberationSansBoldMapping=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1];t.LiberationSansBoldItalicWidths=[365,0,333,278,333,474,556,556,889,722,238,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,333,333,584,584,584,611,975,722,722,722,722,667,611,778,722,278,556,722,611,833,722,778,667,778,722,667,611,722,667,944,667,667,611,333,278,333,584,556,333,556,611,556,611,556,333,611,611,278,278,556,278,889,611,611,611,611,389,556,333,611,556,778,556,556,500,389,280,389,584,333,556,556,556,556,280,556,333,737,370,556,584,737,552,400,549,333,333,333,576,556,278,333,333,365,556,834,834,834,611,722,722,722,722,722,722,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,556,556,556,556,556,278,278,278,278,611,611,611,611,611,611,611,549,611,611,611,611,611,556,611,556,722,556,722,556,722,556,722,556,722,556,722,556,722,556,722,740,722,611,667,556,667,556,667,556,667,556,667,556,778,611,778,611,778,611,778,611,722,611,722,611,278,278,278,278,278,278,278,278,278,278,782,556,556,278,722,556,556,611,278,611,278,611,396,611,479,611,278,722,611,722,611,722,611,708,723,611,778,611,778,611,778,611,1e3,944,722,389,722,389,722,389,667,556,667,556,667,556,667,556,611,333,611,479,611,333,722,611,722,611,722,611,722,611,722,611,722,611,944,778,667,556,667,611,500,611,500,611,500,278,556,722,556,1e3,889,778,611,667,556,611,333,333,333,333,333,333,333,333,333,333,333,333,722,333,854,906,473,844,930,847,278,722,722,610,671,667,611,722,778,278,722,667,833,722,657,778,718,667,590,611,667,822,667,829,781,278,667,620,479,611,278,591,620,621,556,610,479,492,611,558,278,566,556,603,556,450,611,712,605,532,664,409,591,704,578,773,834,278,591,611,591,834,667,667,886,614,719,667,278,278,556,1094,1042,854,622,719,677,719,722,708,722,614,722,667,927,643,719,719,615,687,833,722,778,719,667,722,611,677,781,667,729,708,979,989,854,1e3,708,719,1042,729,556,619,604,534,618,556,736,510,611,611,507,622,740,604,611,611,611,556,889,556,885,556,646,583,889,935,707,854,594,552,865,589,556,556,611,469,563,556,278,278,278,969,906,611,507,619,556,611,778,611,575,467,944,778,944,778,944,778,667,556,333,333,556,1e3,1e3,552,278,278,278,278,500,500,500,556,556,350,1e3,1e3,240,479,333,333,604,333,167,396,556,556,1104,556,885,516,1146,1e3,768,600,834,834,834,834,999,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,722,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,611,611,333,333,333,333,333,333,333,333,222,222,333,333,333,333,333,333,333,333];t.LiberationSansBoldItalicMapping=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1];t.LiberationSansItalicWidths=[365,0,333,278,278,355,556,556,889,667,191,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,278,278,584,584,584,556,1015,667,667,722,722,667,611,778,722,278,500,667,556,833,722,778,667,778,722,667,611,722,667,944,667,667,611,278,278,278,469,556,333,556,556,500,556,556,278,556,556,222,222,500,222,833,556,556,556,556,333,500,278,556,500,722,500,500,500,334,260,334,584,333,556,556,556,556,260,556,333,737,370,556,584,737,552,400,549,333,333,333,576,537,278,333,333,365,556,834,834,834,611,667,667,667,667,667,667,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,500,556,556,556,556,278,278,278,278,556,556,556,556,556,556,556,549,611,556,556,556,556,500,556,500,667,556,667,556,667,556,722,500,722,500,722,500,722,500,722,625,722,556,667,556,667,556,667,556,667,556,667,556,778,556,778,556,778,556,778,556,722,556,722,556,278,278,278,278,278,278,278,222,278,278,733,444,500,222,667,500,500,556,222,556,222,556,281,556,400,556,222,722,556,722,556,722,556,615,723,556,778,556,778,556,778,556,1e3,944,722,333,722,333,722,333,667,500,667,500,667,500,667,500,611,278,611,354,611,278,722,556,722,556,722,556,722,556,722,556,722,556,944,722,667,500,667,611,500,611,500,611,500,222,556,667,556,1e3,889,778,611,667,500,611,278,333,333,333,333,333,333,333,333,333,333,333,667,278,789,846,389,794,865,775,222,667,667,570,671,667,611,722,778,278,667,667,833,722,648,778,725,667,600,611,667,837,667,831,761,278,667,570,439,555,222,550,570,571,500,556,439,463,555,542,222,500,492,548,500,447,556,670,573,486,603,374,550,652,546,728,779,222,550,556,550,779,667,667,843,544,708,667,278,278,500,1066,982,844,589,715,639,724,667,651,667,544,704,667,917,614,715,715,589,686,833,722,778,725,667,722,611,639,795,667,727,673,920,923,805,886,651,694,1022,682,556,562,522,493,553,556,688,465,556,556,472,564,686,550,556,556,556,500,833,500,835,500,572,518,830,851,621,736,526,492,752,534,556,556,556,378,496,500,222,222,222,910,828,556,472,565,500,556,778,556,492,339,944,722,944,722,944,722,667,500,333,333,556,1e3,1e3,552,222,222,222,222,333,333,333,556,556,350,1e3,1e3,188,354,333,333,500,333,167,365,556,556,1094,556,885,323,1083,1e3,768,600,834,834,834,834,1e3,500,998,500,1e3,500,500,494,612,823,713,584,549,713,979,719,274,549,549,584,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,500,500,333,333,333,333,333,333,333,333,222,222,294,294,324,324,316,328,398,285];t.LiberationSansItalicMapping=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1];t.LiberationSansRegularWidths=[365,0,333,278,278,355,556,556,889,667,191,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,278,278,584,584,584,556,1015,667,667,722,722,667,611,778,722,278,500,667,556,833,722,778,667,778,722,667,611,722,667,944,667,667,611,278,278,278,469,556,333,556,556,500,556,556,278,556,556,222,222,500,222,833,556,556,556,556,333,500,278,556,500,722,500,500,500,334,260,334,584,333,556,556,556,556,260,556,333,737,370,556,584,737,552,400,549,333,333,333,576,537,278,333,333,365,556,834,834,834,611,667,667,667,667,667,667,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,500,556,556,556,556,278,278,278,278,556,556,556,556,556,556,556,549,611,556,556,556,556,500,556,500,667,556,667,556,667,556,722,500,722,500,722,500,722,500,722,615,722,556,667,556,667,556,667,556,667,556,667,556,778,556,778,556,778,556,778,556,722,556,722,556,278,278,278,278,278,278,278,222,278,278,735,444,500,222,667,500,500,556,222,556,222,556,292,556,334,556,222,722,556,722,556,722,556,604,723,556,778,556,778,556,778,556,1e3,944,722,333,722,333,722,333,667,500,667,500,667,500,667,500,611,278,611,375,611,278,722,556,722,556,722,556,722,556,722,556,722,556,944,722,667,500,667,611,500,611,500,611,500,222,556,667,556,1e3,889,778,611,667,500,611,278,333,333,333,333,333,333,333,333,333,333,333,667,278,784,838,384,774,855,752,222,667,667,551,668,667,611,722,778,278,667,668,833,722,650,778,722,667,618,611,667,798,667,835,748,278,667,578,446,556,222,547,578,575,500,557,446,441,556,556,222,500,500,576,500,448,556,690,569,482,617,395,547,648,525,713,781,222,547,556,547,781,667,667,865,542,719,667,278,278,500,1057,1010,854,583,722,635,719,667,656,667,542,677,667,923,604,719,719,583,656,833,722,778,719,667,722,611,635,760,667,740,667,917,938,792,885,656,719,1010,722,556,573,531,365,583,556,669,458,559,559,438,583,688,552,556,542,556,500,458,500,823,500,573,521,802,823,625,719,521,510,750,542,556,556,556,365,510,500,222,278,222,906,812,556,438,559,500,552,778,556,489,411,944,722,944,722,944,722,667,500,333,333,556,1e3,1e3,552,222,222,222,222,333,333,333,556,556,350,1e3,1e3,188,354,333,333,500,333,167,365,556,556,1094,556,885,323,1073,1e3,768,600,834,834,834,834,1e3,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,719,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,500,500,333,333,333,333,333,333,333,333,222,222,294,294,324,324,316,328,398,285];t.LiberationSansRegularMapping=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.MyriadProRegularMetrics=t.MyriadProRegularFactors=t.MyriadProItalicMetrics=t.MyriadProItalicFactors=t.MyriadProBoldMetrics=t.MyriadProBoldItalicMetrics=t.MyriadProBoldItalicFactors=t.MyriadProBoldFactors=void 0;t.MyriadProBoldFactors=[1.36898,1,1,.72706,.80479,.83734,.98894,.99793,.9897,.93884,.86209,.94292,.94292,1.16661,1.02058,.93582,.96694,.93582,1.19137,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.78076,.78076,1.02058,1.02058,1.02058,.72851,.78966,.90838,.83637,.82391,.96376,.80061,.86275,.8768,.95407,1.0258,.73901,.85022,.83655,1.0156,.95546,.92179,.87107,.92179,.82114,.8096,.89713,.94438,.95353,.94083,.91905,.90406,.9446,.94292,1.18777,.94292,1.02058,.89903,.90088,.94938,.97898,.81093,.97571,.94938,1.024,.9577,.95933,.98621,1.0474,.97455,.98981,.9672,.95933,.9446,.97898,.97407,.97646,.78036,1.10208,.95442,.95298,.97579,.9332,.94039,.938,.80687,1.01149,.80687,1.02058,.80479,.99793,.99793,.99793,.99793,1.01149,1.00872,.90088,.91882,1.0213,.8361,1.02058,.62295,.54324,.89022,1.08595,1,1,.90088,1,.97455,.93582,.90088,1,1.05686,.8361,.99642,.99642,.99642,.72851,.90838,.90838,.90838,.90838,.90838,.90838,.868,.82391,.80061,.80061,.80061,.80061,1.0258,1.0258,1.0258,1.0258,.97484,.95546,.92179,.92179,.92179,.92179,.92179,1.02058,.92179,.94438,.94438,.94438,.94438,.90406,.86958,.98225,.94938,.94938,.94938,.94938,.94938,.94938,.9031,.81093,.94938,.94938,.94938,.94938,.98621,.98621,.98621,.98621,.93969,.95933,.9446,.9446,.9446,.9446,.9446,1.08595,.9446,.95442,.95442,.95442,.95442,.94039,.97898,.94039,.90838,.94938,.90838,.94938,.90838,.94938,.82391,.81093,.82391,.81093,.82391,.81093,.82391,.81093,.96376,.84313,.97484,.97571,.80061,.94938,.80061,.94938,.80061,.94938,.80061,.94938,.80061,.94938,.8768,.9577,.8768,.9577,.8768,.9577,1,1,.95407,.95933,.97069,.95933,1.0258,.98621,1.0258,.98621,1.0258,.98621,1.0258,.98621,1.0258,.98621,.887,1.01591,.73901,1.0474,1,1,.97455,.83655,.98981,1,1,.83655,.73977,.83655,.73903,.84638,1.033,.95546,.95933,1,1,.95546,.95933,.8271,.95417,.95933,.92179,.9446,.92179,.9446,.92179,.9446,.936,.91964,.82114,.97646,1,1,.82114,.97646,.8096,.78036,.8096,.78036,1,1,.8096,.78036,1,1,.89713,.77452,.89713,1.10208,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94083,.97579,.90406,.94039,.90406,.9446,.938,.9446,.938,.9446,.938,1,.99793,.90838,.94938,.868,.9031,.92179,.9446,1,1,.89713,1.10208,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90989,.9358,.91945,.83181,.75261,.87992,.82976,.96034,.83689,.97268,1.0078,.90838,.83637,.8019,.90157,.80061,.9446,.95407,.92436,1.0258,.85022,.97153,1.0156,.95546,.89192,.92179,.92361,.87107,.96318,.89713,.93704,.95638,.91905,.91709,.92796,1.0258,.93704,.94836,1.0373,.95933,1.0078,.95871,.94836,.96174,.92601,.9498,.98607,.95776,.95933,1.05453,1.0078,.98275,.9314,.95617,.91701,1.05993,.9446,.78367,.9553,1,.86832,1.0128,.95871,.99394,.87548,.96361,.86774,1.0078,.95871,.9446,.95871,.86774,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.94083,.97579,.94083,.97579,.94083,.97579,.90406,.94039,.96694,1,.89903,1,1,1,.93582,.93582,.93582,1,.908,.908,.918,.94219,.94219,.96544,1,1.285,1,1,.81079,.81079,1,1,.74854,1,1,1,1,.99793,1,1,1,.65,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.17173,1,.80535,.76169,1.02058,1.0732,1.05486,1,1,1.30692,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.16161,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.MyriadProBoldMetrics={lineHeight:1.2,lineGap:.2};t.MyriadProBoldItalicFactors=[1.36898,1,1,.66227,.80779,.81625,.97276,.97276,.97733,.92222,.83266,.94292,.94292,1.16148,1.02058,.93582,.96694,.93582,1.17337,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.78076,.78076,1.02058,1.02058,1.02058,.71541,.76813,.85576,.80591,.80729,.94299,.77512,.83655,.86523,.92222,.98621,.71743,.81698,.79726,.98558,.92222,.90637,.83809,.90637,.80729,.76463,.86275,.90699,.91605,.9154,.85308,.85458,.90531,.94292,1.21296,.94292,1.02058,.89903,1.18616,.99613,.91677,.78216,.91677,.90083,.98796,.9135,.92168,.95381,.98981,.95298,.95381,.93459,.92168,.91513,.92004,.91677,.95077,.748,1.04502,.91677,.92061,.94236,.89544,.89364,.9,.80687,.8578,.80687,1.02058,.80779,.97276,.97276,.97276,.97276,.8578,.99973,1.18616,.91339,1.08074,.82891,1.02058,.55509,.71526,.89022,1.08595,1,1,1.18616,1,.96736,.93582,1.18616,1,1.04864,.82711,.99043,.99043,.99043,.71541,.85576,.85576,.85576,.85576,.85576,.85576,.845,.80729,.77512,.77512,.77512,.77512,.98621,.98621,.98621,.98621,.95961,.92222,.90637,.90637,.90637,.90637,.90637,1.02058,.90251,.90699,.90699,.90699,.90699,.85458,.83659,.94951,.99613,.99613,.99613,.99613,.99613,.99613,.85811,.78216,.90083,.90083,.90083,.90083,.95381,.95381,.95381,.95381,.9135,.92168,.91513,.91513,.91513,.91513,.91513,1.08595,.91677,.91677,.91677,.91677,.91677,.89364,.92332,.89364,.85576,.99613,.85576,.99613,.85576,.99613,.80729,.78216,.80729,.78216,.80729,.78216,.80729,.78216,.94299,.76783,.95961,.91677,.77512,.90083,.77512,.90083,.77512,.90083,.77512,.90083,.77512,.90083,.86523,.9135,.86523,.9135,.86523,.9135,1,1,.92222,.92168,.92222,.92168,.98621,.95381,.98621,.95381,.98621,.95381,.98621,.95381,.98621,.95381,.86036,.97096,.71743,.98981,1,1,.95298,.79726,.95381,1,1,.79726,.6894,.79726,.74321,.81691,1.0006,.92222,.92168,1,1,.92222,.92168,.79464,.92098,.92168,.90637,.91513,.90637,.91513,.90637,.91513,.909,.87514,.80729,.95077,1,1,.80729,.95077,.76463,.748,.76463,.748,1,1,.76463,.748,1,1,.86275,.72651,.86275,1.04502,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.9154,.94236,.85458,.89364,.85458,.90531,.9,.90531,.9,.90531,.9,1,.97276,.85576,.99613,.845,.85811,.90251,.91677,1,1,.86275,1.04502,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.00899,1.30628,.85576,.80178,.66862,.7927,.69323,.88127,.72459,.89711,.95381,.85576,.80591,.7805,.94729,.77512,.90531,.92222,.90637,.98621,.81698,.92655,.98558,.92222,.85359,.90637,.90976,.83809,.94523,.86275,.83509,.93157,.85308,.83392,.92346,.98621,.83509,.92886,.91324,.92168,.95381,.90646,.92886,.90557,.86847,.90276,.91324,.86842,.92168,.99531,.95381,.9224,.85408,.92699,.86847,1.0051,.91513,.80487,.93481,1,.88159,1.05214,.90646,.97355,.81539,.89398,.85923,.95381,.90646,.91513,.90646,.85923,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.9154,.94236,.9154,.94236,.9154,.94236,.85458,.89364,.96694,1,.89903,1,1,1,.91782,.91782,.91782,1,.896,.896,.896,.9332,.9332,.95973,1,1.26,1,1,.80479,.80178,1,1,.85633,1,1,1,1,.97276,1,1,1,.698,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.14542,1,.79199,.78694,1.02058,1.03493,1.05486,1,1,1.23026,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.20006,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.MyriadProBoldItalicMetrics={lineHeight:1.2,lineGap:.2};t.MyriadProItalicFactors=[1.36898,1,1,.65507,.84943,.85639,.88465,.88465,.86936,.88307,.86948,.85283,.85283,1.06383,1.02058,.75945,.9219,.75945,1.17337,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.75945,.75945,1.02058,1.02058,1.02058,.69046,.70926,.85158,.77812,.76852,.89591,.70466,.76125,.80094,.86822,.83864,.728,.77212,.79475,.93637,.87514,.8588,.76013,.8588,.72421,.69866,.77598,.85991,.80811,.87832,.78112,.77512,.8562,1.0222,1.18417,1.0222,1.27014,.89903,1.15012,.93859,.94399,.846,.94399,.81453,1.0186,.94219,.96017,1.03075,1.02175,.912,1.03075,.96998,.96017,.93859,.94399,.94399,.95493,.746,1.12658,.94578,.91,.979,.882,.882,.83,.85034,.83537,.85034,1.02058,.70869,.88465,.88465,.88465,.88465,.83537,.90083,1.15012,.9161,.94565,.73541,1.02058,.53609,.69353,.79519,1.08595,1,1,1.15012,1,.91974,.75945,1.15012,1,.9446,.73361,.9005,.9005,.9005,.62864,.85158,.85158,.85158,.85158,.85158,.85158,.773,.76852,.70466,.70466,.70466,.70466,.83864,.83864,.83864,.83864,.90561,.87514,.8588,.8588,.8588,.8588,.8588,1.02058,.85751,.85991,.85991,.85991,.85991,.77512,.76013,.88075,.93859,.93859,.93859,.93859,.93859,.93859,.8075,.846,.81453,.81453,.81453,.81453,.82424,.82424,.82424,.82424,.9278,.96017,.93859,.93859,.93859,.93859,.93859,1.08595,.8562,.94578,.94578,.94578,.94578,.882,.94578,.882,.85158,.93859,.85158,.93859,.85158,.93859,.76852,.846,.76852,.846,.76852,.846,.76852,.846,.89591,.8544,.90561,.94399,.70466,.81453,.70466,.81453,.70466,.81453,.70466,.81453,.70466,.81453,.80094,.94219,.80094,.94219,.80094,.94219,1,1,.86822,.96017,.86822,.96017,.83864,.82424,.83864,.82424,.83864,.82424,.83864,1.03075,.83864,.82424,.81402,1.02738,.728,1.02175,1,1,.912,.79475,1.03075,1,1,.79475,.83911,.79475,.66266,.80553,1.06676,.87514,.96017,1,1,.87514,.96017,.86865,.87396,.96017,.8588,.93859,.8588,.93859,.8588,.93859,.867,.84759,.72421,.95493,1,1,.72421,.95493,.69866,.746,.69866,.746,1,1,.69866,.746,1,1,.77598,.88417,.77598,1.12658,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.87832,.979,.77512,.882,.77512,.8562,.83,.8562,.83,.8562,.83,1,.88465,.85158,.93859,.773,.8075,.85751,.8562,1,1,.77598,1.12658,1.15012,1.15012,1.15012,1.15012,1.15012,1.15313,1.15012,1.15012,1.15012,1.08106,1.03901,.85158,.77025,.62264,.7646,.65351,.86026,.69461,.89947,1.03075,.85158,.77812,.76449,.88836,.70466,.8562,.86822,.8588,.83864,.77212,.85308,.93637,.87514,.82352,.8588,.85701,.76013,.89058,.77598,.8156,.82565,.78112,.77899,.89386,.83864,.8156,.9486,.92388,.96186,1.03075,.91123,.9486,.93298,.878,.93942,.92388,.84596,.96186,.95119,1.03075,.922,.88787,.95829,.88,.93559,.93859,.78815,.93758,1,.89217,1.03737,.91123,.93969,.77487,.85769,.86799,1.03075,.91123,.93859,.91123,.86799,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.87832,.979,.87832,.979,.87832,.979,.77512,.882,.9219,1,.89903,1,1,1,.87321,.87321,.87321,1,1.027,1.027,1.027,.86847,.86847,.79121,1,1.124,1,1,.73572,.73572,1,1,.85034,1,1,1,1,.88465,1,1,1,.669,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.04828,1,.74948,.75187,1.02058,.98391,1.02119,1,1,1.06233,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.05233,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.MyriadProItalicMetrics={lineHeight:1.2,lineGap:.2};t.MyriadProRegularFactors=[1.36898,1,1,.76305,.82784,.94935,.89364,.92241,.89073,.90706,.98472,.85283,.85283,1.0664,1.02058,.74505,.9219,.74505,1.23456,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.74505,.74505,1.02058,1.02058,1.02058,.73002,.72601,.91755,.8126,.80314,.92222,.73764,.79726,.83051,.90284,.86023,.74,.8126,.84869,.96518,.91115,.8858,.79761,.8858,.74498,.73914,.81363,.89591,.83659,.89633,.85608,.8111,.90531,1.0222,1.22736,1.0222,1.27014,.89903,.90088,.86667,1.0231,.896,1.01411,.90083,1.05099,1.00512,.99793,1.05326,1.09377,.938,1.06226,1.00119,.99793,.98714,1.0231,1.01231,.98196,.792,1.19137,.99074,.962,1.01915,.926,.942,.856,.85034,.92006,.85034,1.02058,.69067,.92241,.92241,.92241,.92241,.92006,.9332,.90088,.91882,.93484,.75339,1.02058,.56866,.54324,.79519,1.08595,1,1,.90088,1,.95325,.74505,.90088,1,.97198,.75339,.91009,.91009,.91009,.66466,.91755,.91755,.91755,.91755,.91755,.91755,.788,.80314,.73764,.73764,.73764,.73764,.86023,.86023,.86023,.86023,.92915,.91115,.8858,.8858,.8858,.8858,.8858,1.02058,.8858,.89591,.89591,.89591,.89591,.8111,.79611,.89713,.86667,.86667,.86667,.86667,.86667,.86667,.86936,.896,.90083,.90083,.90083,.90083,.84224,.84224,.84224,.84224,.97276,.99793,.98714,.98714,.98714,.98714,.98714,1.08595,.89876,.99074,.99074,.99074,.99074,.942,1.0231,.942,.91755,.86667,.91755,.86667,.91755,.86667,.80314,.896,.80314,.896,.80314,.896,.80314,.896,.92222,.93372,.92915,1.01411,.73764,.90083,.73764,.90083,.73764,.90083,.73764,.90083,.73764,.90083,.83051,1.00512,.83051,1.00512,.83051,1.00512,1,1,.90284,.99793,.90976,.99793,.86023,.84224,.86023,.84224,.86023,.84224,.86023,1.05326,.86023,.84224,.82873,1.07469,.74,1.09377,1,1,.938,.84869,1.06226,1,1,.84869,.83704,.84869,.81441,.85588,1.08927,.91115,.99793,1,1,.91115,.99793,.91887,.90991,.99793,.8858,.98714,.8858,.98714,.8858,.98714,.894,.91434,.74498,.98196,1,1,.74498,.98196,.73914,.792,.73914,.792,1,1,.73914,.792,1,1,.81363,.904,.81363,1.19137,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89633,1.01915,.8111,.942,.8111,.90531,.856,.90531,.856,.90531,.856,1,.92241,.91755,.86667,.788,.86936,.8858,.89876,1,1,.81363,1.19137,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90388,1.03901,.92138,.78105,.7154,.86169,.80513,.94007,.82528,.98612,1.06226,.91755,.8126,.81884,.92819,.73764,.90531,.90284,.8858,.86023,.8126,.91172,.96518,.91115,.83089,.8858,.87791,.79761,.89297,.81363,.88157,.89992,.85608,.81992,.94307,.86023,.88157,.95308,.98699,.99793,1.06226,.95817,.95308,.97358,.928,.98088,.98699,.92761,.99793,.96017,1.06226,.986,.944,.95978,.938,.96705,.98714,.80442,.98972,1,.89762,1.04552,.95817,.99007,.87064,.91879,.88888,1.06226,.95817,.98714,.95817,.88888,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.89633,1.01915,.89633,1.01915,.89633,1.01915,.8111,.942,.9219,1,.89903,1,1,1,.93173,.93173,.93173,1,1.06304,1.06304,1.06904,.89903,.89903,.80549,1,1.156,1,1,.76575,.76575,1,1,.72458,1,1,1,1,.92241,1,1,1,.619,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.07257,1,.74705,.71119,1.02058,1.024,1.02119,1,1,1.1536,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.05638,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.MyriadProRegularMetrics={lineHeight:1.2,lineGap:.2}},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.SegoeuiRegularMetrics=t.SegoeuiRegularFactors=t.SegoeuiItalicMetrics=t.SegoeuiItalicFactors=t.SegoeuiBoldMetrics=t.SegoeuiBoldItalicMetrics=t.SegoeuiBoldItalicFactors=t.SegoeuiBoldFactors=void 0;t.SegoeuiBoldFactors=[1.76738,1,1,.99297,.9824,1.04016,1.06497,1.03424,.97529,1.17647,1.23203,1.1085,1.1085,1.16939,1.2107,.9754,1.21408,.9754,1.59578,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,.81378,.81378,1.2107,1.2107,1.2107,.71703,.97847,.97363,.88776,.8641,1.02096,.79795,.85132,.914,1.06085,1.1406,.8007,.89858,.83693,1.14889,1.09398,.97489,.92094,.97489,.90399,.84041,.95923,1.00135,1,1.06467,.98243,.90996,.99361,1.1085,1.56942,1.1085,1.2107,.74627,.94282,.96752,1.01519,.86304,1.01359,.97278,1.15103,1.01359,.98561,1.02285,1.02285,1.00527,1.02285,1.0302,.99041,1.0008,1.01519,1.01359,1.02258,.79104,1.16862,.99041,.97454,1.02511,.99298,.96752,.95801,.94856,1.16579,.94856,1.2107,.9824,1.03424,1.03424,1,1.03424,1.16579,.8727,1.3871,1.18622,1.10818,1.04478,1.2107,1.18622,.75155,.94994,1.28826,1.21408,1.21408,.91056,1,.91572,.9754,.64663,1.18328,1.24866,1.04478,1.14169,1.15749,1.17389,.71703,.97363,.97363,.97363,.97363,.97363,.97363,.93506,.8641,.79795,.79795,.79795,.79795,1.1406,1.1406,1.1406,1.1406,1.02096,1.09398,.97426,.97426,.97426,.97426,.97426,1.2107,.97489,1.00135,1.00135,1.00135,1.00135,.90996,.92094,1.02798,.96752,.96752,.96752,.96752,.96752,.96752,.93136,.86304,.97278,.97278,.97278,.97278,1.02285,1.02285,1.02285,1.02285,.97122,.99041,1,1,1,1,1,1.28826,1.0008,.99041,.99041,.99041,.99041,.96752,1.01519,.96752,.97363,.96752,.97363,.96752,.97363,.96752,.8641,.86304,.8641,.86304,.8641,.86304,.8641,.86304,1.02096,1.03057,1.02096,1.03517,.79795,.97278,.79795,.97278,.79795,.97278,.79795,.97278,.79795,.97278,.914,1.01359,.914,1.01359,.914,1.01359,1,1,1.06085,.98561,1.06085,1.00879,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,.97138,1.08692,.8007,1.02285,1,1,1.00527,.83693,1.02285,1,1,.83693,.9455,.83693,.90418,.83693,1.13005,1.09398,.99041,1,1,1.09398,.99041,.96692,1.09251,.99041,.97489,1.0008,.97489,1.0008,.97489,1.0008,.93994,.97931,.90399,1.02258,1,1,.90399,1.02258,.84041,.79104,.84041,.79104,.84041,.79104,.84041,.79104,1,1,.95923,1.07034,.95923,1.16862,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.06467,1.02511,.90996,.96752,.90996,.99361,.95801,.99361,.95801,.99361,.95801,1.07733,1.03424,.97363,.96752,.93506,.93136,.97489,1.0008,1,1,.95923,1.16862,1.15103,1.15103,1.01173,1.03959,.75953,.81378,.79912,1.15103,1.21994,.95161,.87815,1.01149,.81525,.7676,.98167,1.01134,1.02546,.84097,1.03089,1.18102,.97363,.88776,.85134,.97826,.79795,.99361,1.06085,.97489,1.1406,.89858,1.0388,1.14889,1.09398,.86039,.97489,1.0595,.92094,.94793,.95923,.90996,.99346,.98243,1.02112,.95493,1.1406,.90996,1.03574,1.02597,1.0008,1.18102,1.06628,1.03574,1.0192,1.01932,1.00886,.97531,1.0106,1.0008,1.13189,1.18102,1.02277,.98683,1.0016,.99561,1.07237,1.0008,.90434,.99921,.93803,.8965,1.23085,1.06628,1.04983,.96268,1.0499,.98439,1.18102,1.06628,1.0008,1.06628,.98439,.79795,1,1,1,1,1,1,1,1,1,1,1,1,1.09466,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.97278,1,1,1,1,1,1,1,1,1,1,1,1,1.02065,1,1,1,1,1,1,1.06467,1.02511,1.06467,1.02511,1.06467,1.02511,.90996,.96752,1,1.21408,.89903,1,1,.75155,1.04394,1.04394,1.04394,1.04394,.98633,.98633,.98633,.73047,.73047,1.20642,.91211,1.25635,1.222,1.02956,1.03372,1.03372,.96039,1.24633,1,1.12454,.93503,1.03424,1.19687,1.03424,1,1,1,.771,1,1,1.15749,1.15749,1.15749,1.10948,.86279,.94434,.86279,.94434,.86182,1,1,1.16897,1,.96085,.90137,1.2107,1.18416,1.13973,.69825,.9716,2.10339,1.29004,1.29004,1.21172,1.29004,1.29004,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18874,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.09193,1.09193,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.SegoeuiBoldMetrics={lineHeight:1.33008,lineGap:0};t.SegoeuiBoldItalicFactors=[1.76738,1,1,.98946,1.03959,1.04016,1.02809,1.036,.97639,1.10953,1.23203,1.11144,1.11144,1.16939,1.21237,.9754,1.21261,.9754,1.59754,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,.81378,.81378,1.21237,1.21237,1.21237,.73541,.97847,.97363,.89723,.87897,1.0426,.79429,.85292,.91149,1.05815,1.1406,.79631,.90128,.83853,1.04396,1.10615,.97552,.94436,.97552,.88641,.80527,.96083,1.00135,1,1.06777,.9817,.91142,.99361,1.11144,1.57293,1.11144,1.21237,.74627,1.31818,1.06585,.97042,.83055,.97042,.93503,1.1261,.97042,.97922,1.14236,.94552,1.01054,1.14236,1.02471,.97922,.94165,.97042,.97042,1.0276,.78929,1.1261,.97922,.95874,1.02197,.98507,.96752,.97168,.95107,1.16579,.95107,1.21237,1.03959,1.036,1.036,1,1.036,1.16579,.87357,1.31818,1.18754,1.26781,1.05356,1.21237,1.18622,.79487,.94994,1.29004,1.24047,1.24047,1.31818,1,.91484,.9754,1.31818,1.1349,1.24866,1.05356,1.13934,1.15574,1.17389,.73541,.97363,.97363,.97363,.97363,.97363,.97363,.94385,.87897,.79429,.79429,.79429,.79429,1.1406,1.1406,1.1406,1.1406,1.0426,1.10615,.97552,.97552,.97552,.97552,.97552,1.21237,.97552,1.00135,1.00135,1.00135,1.00135,.91142,.94436,.98721,1.06585,1.06585,1.06585,1.06585,1.06585,1.06585,.96705,.83055,.93503,.93503,.93503,.93503,1.14236,1.14236,1.14236,1.14236,.93125,.97922,.94165,.94165,.94165,.94165,.94165,1.29004,.94165,.97922,.97922,.97922,.97922,.96752,.97042,.96752,.97363,1.06585,.97363,1.06585,.97363,1.06585,.87897,.83055,.87897,.83055,.87897,.83055,.87897,.83055,1.0426,1.0033,1.0426,.97042,.79429,.93503,.79429,.93503,.79429,.93503,.79429,.93503,.79429,.93503,.91149,.97042,.91149,.97042,.91149,.97042,1,1,1.05815,.97922,1.05815,.97922,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,.97441,1.04302,.79631,1.01582,1,1,1.01054,.83853,1.14236,1,1,.83853,1.09125,.83853,.90418,.83853,1.19508,1.10615,.97922,1,1,1.10615,.97922,1.01034,1.10466,.97922,.97552,.94165,.97552,.94165,.97552,.94165,.91602,.91981,.88641,1.0276,1,1,.88641,1.0276,.80527,.78929,.80527,.78929,.80527,.78929,.80527,.78929,1,1,.96083,1.05403,.95923,1.16862,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.06777,1.02197,.91142,.96752,.91142,.99361,.97168,.99361,.97168,.99361,.97168,1.23199,1.036,.97363,1.06585,.94385,.96705,.97552,.94165,1,1,.96083,1.1261,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,.95161,1.27126,1.00811,.83284,.77702,.99137,.95253,1.0347,.86142,1.07205,1.14236,.97363,.89723,.86869,1.09818,.79429,.99361,1.05815,.97552,1.1406,.90128,1.06662,1.04396,1.10615,.84918,.97552,1.04694,.94436,.98015,.96083,.91142,1.00356,.9817,1.01945,.98999,1.1406,.91142,1.04961,.9898,1.00639,1.14236,1.07514,1.04961,.99607,1.02897,1.008,.9898,.95134,1.00639,1.11121,1.14236,1.00518,.97981,1.02186,1,1.08578,.94165,.99314,.98387,.93028,.93377,1.35125,1.07514,1.10687,.93491,1.04232,1.00351,1.14236,1.07514,.94165,1.07514,1.00351,.79429,1,1,1,1,1,1,1,1,1,1,1,1,1.09097,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.93503,1,1,1,1,1,1,1,1,1,1,1,1,.96609,1,1,1,1,1,1,1.06777,1.02197,1.06777,1.02197,1.06777,1.02197,.91142,.96752,1,1.21261,.89903,1,1,.75155,1.04745,1.04745,1.04745,1.04394,.98633,.98633,.98633,.72959,.72959,1.20502,.91406,1.26514,1.222,1.02956,1.03372,1.03372,.96039,1.24633,1,1.09125,.93327,1.03336,1.16541,1.036,1,1,1,.771,1,1,1.15574,1.15574,1.15574,1.15574,.86364,.94434,.86279,.94434,.86224,1,1,1.16798,1,.96085,.90068,1.21237,1.18416,1.13904,.69825,.9716,2.10339,1.29004,1.29004,1.21339,1.29004,1.29004,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18775,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.13269,1.13269,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.SegoeuiBoldItalicMetrics={lineHeight:1.33008,lineGap:0};t.SegoeuiItalicFactors=[1.76738,1,1,.98946,1.14763,1.05365,1.06234,.96927,.92586,1.15373,1.18414,.91349,.91349,1.07403,1.17308,.78383,1.20088,.78383,1.42531,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.78383,.78383,1.17308,1.17308,1.17308,.77349,.94565,.94729,.85944,.88506,.9858,.74817,.80016,.88449,.98039,.95782,.69238,.89898,.83231,.98183,1.03989,.96924,.86237,.96924,.80595,.74524,.86091,.95402,.94143,.98448,.8858,.83089,.93285,1.0949,1.39016,1.0949,1.45994,.74627,1.04839,.97454,.97454,.87207,.97454,.87533,1.06151,.97454,1.00176,1.16484,1.08132,.98047,1.16484,1.02989,1.01054,.96225,.97454,.97454,1.06598,.79004,1.16344,1.00351,.94629,.9973,.91016,.96777,.9043,.91082,.92481,.91082,1.17308,.95748,.96927,.96927,1,.96927,.92481,.80597,1.04839,1.23393,1.1781,.9245,1.17308,1.20808,.63218,.94261,1.24822,1.09971,1.09971,1.04839,1,.85273,.78032,1.04839,1.09971,1.22326,.9245,1.09836,1.13525,1.15222,.70424,.94729,.94729,.94729,.94729,.94729,.94729,.85498,.88506,.74817,.74817,.74817,.74817,.95782,.95782,.95782,.95782,.9858,1.03989,.96924,.96924,.96924,.96924,.96924,1.17308,.96924,.95402,.95402,.95402,.95402,.83089,.86237,.88409,.97454,.97454,.97454,.97454,.97454,.97454,.92916,.87207,.87533,.87533,.87533,.87533,.93146,.93146,.93146,.93146,.93854,1.01054,.96225,.96225,.96225,.96225,.96225,1.24822,.8761,1.00351,1.00351,1.00351,1.00351,.96777,.97454,.96777,.94729,.97454,.94729,.97454,.94729,.97454,.88506,.87207,.88506,.87207,.88506,.87207,.88506,.87207,.9858,.95391,.9858,.97454,.74817,.87533,.74817,.87533,.74817,.87533,.74817,.87533,.74817,.87533,.88449,.97454,.88449,.97454,.88449,.97454,1,1,.98039,1.00176,.98039,1.00176,.95782,.93146,.95782,.93146,.95782,.93146,.95782,1.16484,.95782,.93146,.84421,1.12761,.69238,1.08132,1,1,.98047,.83231,1.16484,1,1,.84723,1.04861,.84723,.78755,.83231,1.23736,1.03989,1.01054,1,1,1.03989,1.01054,.9857,1.03849,1.01054,.96924,.96225,.96924,.96225,.96924,.96225,.92383,.90171,.80595,1.06598,1,1,.80595,1.06598,.74524,.79004,.74524,.79004,.74524,.79004,.74524,.79004,1,1,.86091,1.02759,.85771,1.16344,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.98448,.9973,.83089,.96777,.83089,.93285,.9043,.93285,.9043,.93285,.9043,1.31868,.96927,.94729,.97454,.85498,.92916,.96924,.8761,1,1,.86091,1.16344,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,.81965,.81965,.94729,.78032,.71022,.90883,.84171,.99877,.77596,1.05734,1.2,.94729,.85944,.82791,.9607,.74817,.93285,.98039,.96924,.95782,.89898,.98316,.98183,1.03989,.78614,.96924,.97642,.86237,.86075,.86091,.83089,.90082,.8858,.97296,1.01284,.95782,.83089,1.0976,1.04,1.03342,1.2,1.0675,1.0976,.98205,1.03809,1.05097,1.04,.95364,1.03342,1.05401,1.2,1.02148,1.0119,1.04724,1.0127,1.02732,.96225,.8965,.97783,.93574,.94818,1.30679,1.0675,1.11826,.99821,1.0557,1.0326,1.2,1.0675,.96225,1.0675,1.0326,.74817,1,1,1,1,1,1,1,1,1,1,1,1,1.03754,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.87533,1,1,1,1,1,1,1,1,1,1,1,1,.98705,1,1,1,1,1,1,.98448,.9973,.98448,.9973,.98448,.9973,.83089,.96777,1,1.20088,.89903,1,1,.75155,.94945,.94945,.94945,.94945,1.12317,1.12317,1.12317,.67603,.67603,1.15621,.73584,1.21191,1.22135,1.06483,.94868,.94868,.95996,1.24633,1,1.07497,.87709,.96927,1.01473,.96927,1,1,1,.77295,1,1,1.09836,1.09836,1.09836,1.01522,.86321,.94434,.8649,.94434,.86182,1,1,1.083,1,.91578,.86438,1.17308,1.18416,1.14589,.69825,.97622,1.96791,1.24822,1.24822,1.17308,1.24822,1.24822,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.17984,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.10742,1.10742,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1];t.SegoeuiItalicMetrics={lineHeight:1.33008,lineGap:0};t.SegoeuiRegularFactors=[1.76738,1,1,.98594,1.02285,1.10454,1.06234,.96927,.92037,1.19985,1.2046,.90616,.90616,1.07152,1.1714,.78032,1.20088,.78032,1.40246,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.78032,.78032,1.1714,1.1714,1.1714,.80597,.94084,.96706,.85944,.85734,.97093,.75842,.79936,.88198,.9831,.95782,.71387,.86969,.84636,1.07796,1.03584,.96924,.83968,.96924,.82826,.79649,.85771,.95132,.93119,.98965,.88433,.8287,.93365,1.08612,1.3638,1.08612,1.45786,.74627,.80499,.91484,1.05707,.92383,1.05882,.9403,1.12654,1.05882,1.01756,1.09011,1.09011,.99414,1.09011,1.034,1.01756,1.05356,1.05707,1.05882,1.04399,.84863,1.21968,1.01756,.95801,1.00068,.91797,.96777,.9043,.90351,.92105,.90351,1.1714,.85337,.96927,.96927,.99912,.96927,.92105,.80597,1.2434,1.20808,1.05937,.90957,1.1714,1.20808,.75155,.94261,1.24644,1.09971,1.09971,.84751,1,.85273,.78032,.61584,1.05425,1.17914,.90957,1.08665,1.11593,1.14169,.73381,.96706,.96706,.96706,.96706,.96706,.96706,.86035,.85734,.75842,.75842,.75842,.75842,.95782,.95782,.95782,.95782,.97093,1.03584,.96924,.96924,.96924,.96924,.96924,1.1714,.96924,.95132,.95132,.95132,.95132,.8287,.83968,.89049,.91484,.91484,.91484,.91484,.91484,.91484,.93575,.92383,.9403,.9403,.9403,.9403,.8717,.8717,.8717,.8717,1.00527,1.01756,1.05356,1.05356,1.05356,1.05356,1.05356,1.24644,.95923,1.01756,1.01756,1.01756,1.01756,.96777,1.05707,.96777,.96706,.91484,.96706,.91484,.96706,.91484,.85734,.92383,.85734,.92383,.85734,.92383,.85734,.92383,.97093,1.0969,.97093,1.05882,.75842,.9403,.75842,.9403,.75842,.9403,.75842,.9403,.75842,.9403,.88198,1.05882,.88198,1.05882,.88198,1.05882,1,1,.9831,1.01756,.9831,1.01756,.95782,.8717,.95782,.8717,.95782,.8717,.95782,1.09011,.95782,.8717,.84784,1.11551,.71387,1.09011,1,1,.99414,.84636,1.09011,1,1,.84636,1.0536,.84636,.94298,.84636,1.23297,1.03584,1.01756,1,1,1.03584,1.01756,1.00323,1.03444,1.01756,.96924,1.05356,.96924,1.05356,.96924,1.05356,.93066,.98293,.82826,1.04399,1,1,.82826,1.04399,.79649,.84863,.79649,.84863,.79649,.84863,.79649,.84863,1,1,.85771,1.17318,.85771,1.21968,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.98965,1.00068,.8287,.96777,.8287,.93365,.9043,.93365,.9043,.93365,.9043,1.08571,.96927,.96706,.91484,.86035,.93575,.96924,.95923,1,1,.85771,1.21968,1.11437,1.11437,.93109,.91202,.60411,.84164,.55572,1.01173,.97361,.81818,.81818,.96635,.78032,.72727,.92366,.98601,1.03405,.77968,1.09799,1.2,.96706,.85944,.85638,.96491,.75842,.93365,.9831,.96924,.95782,.86969,.94152,1.07796,1.03584,.78437,.96924,.98715,.83968,.83491,.85771,.8287,.94492,.88433,.9287,1.0098,.95782,.8287,1.0625,.98248,1.03424,1.2,1.01071,1.0625,.95246,1.03809,1.04912,.98248,1.00221,1.03424,1.05443,1.2,1.04785,.99609,1.00169,1.05176,.99346,1.05356,.9087,1.03004,.95542,.93117,1.23362,1.01071,1.07831,1.02512,1.05205,1.03502,1.2,1.01071,1.05356,1.01071,1.03502,.75842,1,1,1,1,1,1,1,1,1,1,1,1,1.03719,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.9403,1,1,1,1,1,1,1,1,1,1,1,1,1.04021,1,1,1,1,1,1,.98965,1.00068,.98965,1.00068,.98965,1.00068,.8287,.96777,1,1.20088,.89903,1,1,.75155,1.03077,1.03077,1.03077,1.03077,1.13196,1.13196,1.13196,.67428,.67428,1.16039,.73291,1.20996,1.22135,1.06483,.94868,.94868,.95996,1.24633,1,1.07497,.87796,.96927,1.01518,.96927,1,1,1,.77295,1,1,1.10539,1.10539,1.11358,1.06967,.86279,.94434,.86279,.94434,.86182,1,1,1.083,1,.91578,.86507,1.1714,1.18416,1.14589,.69825,.97622,1.9697,1.24822,1.24822,1.17238,1.24822,1.24822,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18083,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.10938,1.10938,1,1,1,1.05425,1.09971,1.09971,1.09971,1,1,1,1,1,1,1,1,1,1,1];t.SegoeuiRegularMetrics={lineHeight:1.33008,lineGap:0}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.PostScriptEvaluator=t.PostScriptCompiler=t.PDFFunctionFactory=void 0;t.isPDFFunction=function isPDFFunction(e){let t;if(e instanceof r.Dict)t=e;else{if(!(e instanceof s.BaseStream))return!1;t=e.dict}return t.has("FunctionType")};var r=a(4),n=a(2),i=a(58),s=a(5),o=a(59);t.PDFFunctionFactory=class PDFFunctionFactory{constructor({xref:e,isEvalSupported:t=!0}){this.xref=e;this.isEvalSupported=!1!==t}create(e){const t=this.getCached(e);if(t)return t;const a=PDFFunction.parse({xref:this.xref,isEvalSupported:this.isEvalSupported,fn:e instanceof r.Ref?this.xref.fetch(e):e});this._cache(e,a);return a}createFromArray(e){const t=this.getCached(e);if(t)return t;const a=PDFFunction.parseArray({xref:this.xref,isEvalSupported:this.isEvalSupported,fnObj:e instanceof r.Ref?this.xref.fetch(e):e});this._cache(e,a);return a}getCached(e){let t;e instanceof r.Ref?t=e:e instanceof r.Dict?t=e.objId:e instanceof s.BaseStream&&(t=e.dict?.objId);if(t){const e=this._localFunctionCache.getByRef(t);if(e)return e}return null}_cache(e,t){if(!t)throw new Error('PDFFunctionFactory._cache - expected "parsedFunction" argument.');let a;e instanceof r.Ref?a=e:e instanceof r.Dict?a=e.objId:e instanceof s.BaseStream&&(a=e.dict?.objId);a&&this._localFunctionCache.set(null,a,t)}get _localFunctionCache(){return(0,n.shadow)(this,"_localFunctionCache",new o.LocalFunctionCache)}};function toNumberArray(e){if(!Array.isArray(e))return null;const t=e.length;for(let a=0;a>c)*h;l&=(1<a?e=a:e0&&(d=s[u-1]);let f=r[1];u>1,u=s.length>>1,d=new PostScriptEvaluator(l),f=Object.create(null);let g=8192;const p=new Float32Array(u);return function constructPostScriptFn(e,t,a,r){let n,i,s="";const c=p;for(n=0;ne&&(i=e)}m[n]=i}if(g>0){g--;f[s]=m}a.set(m,r)}}}class PostScriptStack{static MAX_STACK_SIZE=100;constructor(e){this.stack=e?Array.from(e):[]}push(e){if(this.stack.length>=PostScriptStack.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");this.stack.push(e)}pop(){if(this.stack.length<=0)throw new Error("PostScript function stack underflow.");return this.stack.pop()}copy(e){if(this.stack.length+e>=PostScriptStack.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");const t=this.stack;for(let a=t.length-e,r=e-1;r>=0;r--,a++)t.push(t[a])}index(e){this.push(this.stack[this.stack.length-e-1])}roll(e,t){const a=this.stack,r=a.length-e,n=a.length-1,i=r+(t-Math.floor(t/e)*e);for(let e=r,t=n;e0?t.push(o<>c);break;case"ceiling":o=t.pop();t.push(Math.ceil(o));break;case"copy":o=t.pop();t.copy(o);break;case"cos":o=t.pop();t.push(Math.cos(o%360/180*Math.PI));break;case"cvi":o=0|t.pop();t.push(o);break;case"cvr":break;case"div":c=t.pop();o=t.pop();t.push(o/c);break;case"dup":t.copy(1);break;case"eq":c=t.pop();o=t.pop();t.push(o===c);break;case"exch":t.roll(2,1);break;case"exp":c=t.pop();o=t.pop();t.push(o**c);break;case"false":t.push(!1);break;case"floor":o=t.pop();t.push(Math.floor(o));break;case"ge":c=t.pop();o=t.pop();t.push(o>=c);break;case"gt":c=t.pop();o=t.pop();t.push(o>c);break;case"idiv":c=t.pop();o=t.pop();t.push(o/c|0);break;case"index":o=t.pop();t.index(o);break;case"le":c=t.pop();o=t.pop();t.push(o<=c);break;case"ln":o=t.pop();t.push(Math.log(o));break;case"log":o=t.pop();t.push(Math.log10(o));break;case"lt":c=t.pop();o=t.pop();t.push(o=t?new AstLiteral(t):e.max<=t?e:new AstMin(e,t)}class PostScriptCompiler{compile(e,t,a){const r=[],n=[],i=t.length>>1,s=a.length>>1;let o,c,l,h,u,d,f,g,p=0;for(let e=0;et.min){o.unshift("Math.max(",i,", ");o.push(")")}if(s{Object.defineProperty(t,"__esModule",{value:!0});t.PostScriptParser=t.PostScriptLexer=void 0;var r=a(2),n=a(4),i=a(3);t.PostScriptParser=class PostScriptParser{constructor(e){this.lexer=e;this.operators=[];this.token=null;this.prev=null}nextToken(){this.prev=this.token;this.token=this.lexer.getToken()}accept(e){if(this.token.type===e){this.nextToken();return!0}return!1}expect(e){if(this.accept(e))return!0;throw new r.FormatError(`Unexpected symbol: found ${this.token.type} expected ${e}.`)}parse(){this.nextToken();this.expect(s.LBRACE);this.parseBlock();this.expect(s.RBRACE);return this.operators}parseBlock(){for(;;)if(this.accept(s.NUMBER))this.operators.push(this.prev.value);else if(this.accept(s.OPERATOR))this.operators.push(this.prev.value);else{if(!this.accept(s.LBRACE))return;this.parseCondition()}}parseCondition(){const e=this.operators.length;this.operators.push(null,null);this.parseBlock();this.expect(s.RBRACE);if(this.accept(s.IF)){this.operators[e]=this.operators.length;this.operators[e+1]="jz"}else{if(!this.accept(s.LBRACE))throw new r.FormatError("PS Function: error parsing conditional.");{const t=this.operators.length;this.operators.push(null,null);const a=this.operators.length;this.parseBlock();this.expect(s.RBRACE);this.expect(s.IFELSE);this.operators[t]=this.operators.length;this.operators[t+1]="j";this.operators[e]=a;this.operators[e+1]="jz"}}}};const s={LBRACE:0,RBRACE:1,NUMBER:2,OPERATOR:3,IF:4,IFELSE:5};class PostScriptToken{static get opCache(){return(0,r.shadow)(this,"opCache",Object.create(null))}constructor(e,t){this.type=e;this.value=t}static getOperator(e){return PostScriptToken.opCache[e]||=new PostScriptToken(s.OPERATOR,e)}static get LBRACE(){return(0,r.shadow)(this,"LBRACE",new PostScriptToken(s.LBRACE,"{"))}static get RBRACE(){return(0,r.shadow)(this,"RBRACE",new PostScriptToken(s.RBRACE,"}"))}static get IF(){return(0,r.shadow)(this,"IF",new PostScriptToken(s.IF,"IF"))}static get IFELSE(){return(0,r.shadow)(this,"IFELSE",new PostScriptToken(s.IFELSE,"IFELSE"))}}t.PostScriptLexer=class PostScriptLexer{constructor(e){this.stream=e;this.nextChar();this.strBuf=[]}nextChar(){return this.currentChar=this.stream.getByte()}getToken(){let e=!1,t=this.currentChar;for(;;){if(t<0)return n.EOF;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(!(0,i.isWhiteSpace)(t))break;t=this.nextChar()}switch(0|t){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 43:case 45:case 46:return new PostScriptToken(s.NUMBER,this.getNumber());case 123:this.nextChar();return PostScriptToken.LBRACE;case 125:this.nextChar();return PostScriptToken.RBRACE}const a=this.strBuf;a.length=0;a[0]=String.fromCharCode(t);for(;(t=this.nextChar())>=0&&(t>=65&&t<=90||t>=97&&t<=122);)a.push(String.fromCharCode(t));const r=a.join("");switch(r.toLowerCase()){case"if":return PostScriptToken.IF;case"ifelse":return PostScriptToken.IFELSE;default:return PostScriptToken.getOperator(r)}}getNumber(){let e=this.currentChar;const t=this.strBuf;t.length=0;t[0]=String.fromCharCode(e);for(;(e=this.nextChar())>=0&&(e>=48&&e<=57||45===e||46===e);)t.push(String.fromCharCode(e));const a=parseFloat(t.join(""));if(isNaN(a))throw new r.FormatError(`Invalid floating point number: ${a}`);return a}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.RegionalImageCache=t.LocalTilingPatternCache=t.LocalImageCache=t.LocalGStateCache=t.LocalFunctionCache=t.LocalColorSpaceCache=t.GlobalImageCache=void 0;var r=a(2),n=a(4);class BaseLocalCache{constructor(e){this.constructor===BaseLocalCache&&(0,r.unreachable)("Cannot initialize BaseLocalCache.");this._onlyRefs=!0===e?.onlyRefs;if(!this._onlyRefs){this._nameRefMap=new Map;this._imageMap=new Map}this._imageCache=new n.RefSetCache}getByName(e){this._onlyRefs&&(0,r.unreachable)("Should not call `getByName` method.");const t=this._nameRefMap.get(e);return t?this.getByRef(t):this._imageMap.get(e)||null}getByRef(e){return this._imageCache.get(e)||null}set(e,t,a){(0,r.unreachable)("Abstract method `set` called.")}}t.LocalImageCache=class LocalImageCache extends BaseLocalCache{set(e,t=null,a){if("string"!=typeof e)throw new Error('LocalImageCache.set - expected "name" argument.');if(t){if(this._imageCache.has(t))return;this._nameRefMap.set(e,t);this._imageCache.put(t,a)}else this._imageMap.has(e)||this._imageMap.set(e,a)}};t.LocalColorSpaceCache=class LocalColorSpaceCache extends BaseLocalCache{set(e=null,t=null,a){if("string"!=typeof e&&!t)throw new Error('LocalColorSpaceCache.set - expected "name" and/or "ref" argument.');if(t){if(this._imageCache.has(t))return;null!==e&&this._nameRefMap.set(e,t);this._imageCache.put(t,a)}else this._imageMap.has(e)||this._imageMap.set(e,a)}};t.LocalFunctionCache=class LocalFunctionCache extends BaseLocalCache{constructor(e){super({onlyRefs:!0})}set(e=null,t,a){if(!t)throw new Error('LocalFunctionCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,a)}};t.LocalGStateCache=class LocalGStateCache extends BaseLocalCache{set(e,t=null,a){if("string"!=typeof e)throw new Error('LocalGStateCache.set - expected "name" argument.');if(t){if(this._imageCache.has(t))return;this._nameRefMap.set(e,t);this._imageCache.put(t,a)}else this._imageMap.has(e)||this._imageMap.set(e,a)}};t.LocalTilingPatternCache=class LocalTilingPatternCache extends BaseLocalCache{constructor(e){super({onlyRefs:!0})}set(e=null,t,a){if(!t)throw new Error('LocalTilingPatternCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,a)}};t.RegionalImageCache=class RegionalImageCache extends BaseLocalCache{constructor(e){super({onlyRefs:!0})}set(e=null,t,a){if(!t)throw new Error('RegionalImageCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,a)}};class GlobalImageCache{static NUM_PAGES_THRESHOLD=2;static MIN_IMAGES_TO_CACHE=10;static MAX_BYTE_SIZE=5*r.MAX_IMAGE_SIZE_TO_CACHE;constructor(){this._refCache=new n.RefSetCache;this._imageCache=new n.RefSetCache}get _byteSize(){let e=0;for(const t of this._imageCache)e+=t.byteSize;return e}get _cacheLimitReached(){return!(this._imageCache.size{Object.defineProperty(t,"__esModule",{value:!0});t.bidi=function bidi(e,t=-1,a=!1){let c=!0;const l=e.length;if(0===l||a)return createBidiText(e,c,a);s.length=l;o.length=l;let h,u,d=0;for(h=0;h4){c=!0;t=0}else{c=!1;t=1}const f=[];for(h=0;h=0&&"ET"===o[e];--e)o[e]="EN";for(let e=h+1;e0&&(t=o[h-1]);let a=m;e+1w&&isOdd(w)&&(x=w)}for(w=S;w>=x;--w){let e=-1;for(h=0,u=f.length;h=0){reverseValues(s,e,h);e=-1}}else e<0&&(e=h);e>=0&&reverseValues(s,e,f.length)}for(h=0,u=s.length;h"!==e||(s[h]="")}return createBidiText(s.join(""),c)};var r=a(2);const n=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],i=["AN","AN","AN","AN","AN","AN","ON","ON","AL","ET","ET","AL","CS","AL","ON","ON","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","AN","AN","AN","AN","AN","AN","AN","AN","AN","ET","AN","AN","AL","AL","AL","NSM","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","ON","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","NSM","NSM","ON","NSM","NSM","NSM","NSM","AL","AL","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","AL","AL","AL","AL","AL","AL"];function isOdd(e){return 0!=(1&e)}function isEven(e){return 0==(1&e)}function findUnequal(e,t,a){let r,n;for(r=t,n=e.length;r{Object.defineProperty(t,"__esModule",{value:!0});t.getFontSubstitution=function getFontSubstitution(e,t,a,u,d){const f=u=(0,r.normalizeFontName)(u);let g=e.get(f);if(g)return g;let p=l.get(u);if(!p)for(const[e,t]of h)if(u.startsWith(e)){u=`${t}${u.substring(e.length)}`;p=l.get(u);break}let m=!1;if(!p){p=l.get(d);m=!0}const b=`${t.getDocId()}_s${t.createFontId()}`;if(!p){if(!(0,n.validateFontName)(u)){e.set(f,null);return null}const t=/bold/gi.test(u),a=/oblique|italic/gi.test(u);g={css:b,guessFallback:!0,loadedName:b,baseFontName:u,src:`local(${u})`,style:t&&a&&c||t&&s||a&&o||i};e.set(f,g);return g}const y=[];m&&(0,n.validateFontName)(u)&&y.push(`local(${u})`);const{style:w,ultimate:S}=generateFont(p,y,a),x=null===S;g={css:`${b}${x?"":`,${S}`}`,guessFallback:x,loadedName:b,baseFontName:u,src:y.join(","),style:w};e.set(f,g);return g};var r=a(38),n=a(3);const i={style:"normal",weight:"normal"},s={style:"normal",weight:"bold"},o={style:"italic",weight:"normal"},c={style:"italic",weight:"bold"},l=new Map([["Times-Roman",{local:["Times New Roman","Times-Roman","Times","Liberation Serif","Nimbus Roman","Nimbus Roman L","Tinos","Thorndale","TeX Gyre Termes","FreeSerif","DejaVu Serif","Bitstream Vera Serif","Ubuntu"],style:i,ultimate:"serif"}],["Times-Bold",{alias:"Times-Roman",style:s,ultimate:"serif"}],["Times-Italic",{alias:"Times-Roman",style:o,ultimate:"serif"}],["Times-BoldItalic",{alias:"Times-Roman",style:c,ultimate:"serif"}],["Helvetica",{local:["Helvetica","Helvetica Neue","Arial","Arial Nova","Liberation Sans","Arimo","Nimbus Sans","Nimbus Sans L","A030","TeX Gyre Heros","FreeSans","DejaVu Sans","Albany","Bitstream Vera Sans","Arial Unicode MS","Microsoft Sans Serif","Apple Symbols","Cantarell"],path:"LiberationSans-Regular.ttf",style:i,ultimate:"sans-serif"}],["Helvetica-Bold",{alias:"Helvetica",path:"LiberationSans-Bold.ttf",style:s,ultimate:"sans-serif"}],["Helvetica-Oblique",{alias:"Helvetica",path:"LiberationSans-Italic.ttf",style:o,ultimate:"sans-serif"}],["Helvetica-BoldOblique",{alias:"Helvetica",path:"LiberationSans-BoldItalic.ttf",style:c,ultimate:"sans-serif"}],["Courier",{local:["Courier","Courier New","Liberation Mono","Nimbus Mono","Nimbus Mono L","Cousine","Cumberland","TeX Gyre Cursor","FreeMono"],style:i,ultimate:"monospace"}],["Courier-Bold",{alias:"Courier",style:s,ultimate:"monospace"}],["Courier-Oblique",{alias:"Courier",style:o,ultimate:"monospace"}],["Courier-BoldOblique",{alias:"Courier",style:c,ultimate:"monospace"}],["ArialBlack",{local:["Arial Black"],style:{style:"normal",weight:"900"},fallback:"Helvetica-Bold"}],["ArialBlack-Bold",{alias:"ArialBlack"}],["ArialBlack-Italic",{alias:"ArialBlack",style:{style:"italic",weight:"900"},fallback:"Helvetica-BoldOblique"}],["ArialBlack-BoldItalic",{alias:"ArialBlack-Italic"}],["ArialNarrow",{local:["Arial Narrow","Liberation Sans Narrow","Helvetica Condensed","Nimbus Sans Narrow","TeX Gyre Heros Cn"],style:i,fallback:"Helvetica"}],["ArialNarrow-Bold",{alias:"ArialNarrow",style:s,fallback:"Helvetica-Bold"}],["ArialNarrow-Italic",{alias:"ArialNarrow",style:o,fallback:"Helvetica-Oblique"}],["ArialNarrow-BoldItalic",{alias:"ArialNarrow",style:c,fallback:"Helvetica-BoldOblique"}],["Calibri",{local:["Calibri","Carlito"],style:i,fallback:"Helvetica"}],["Calibri-Bold",{alias:"Calibri",style:s,fallback:"Helvetica-Bold"}],["Calibri-Italic",{alias:"Calibri",style:o,fallback:"Helvetica-Oblique"}],["Calibri-BoldItalic",{alias:"Calibri",style:c,fallback:"Helvetica-BoldOblique"}],["Wingdings",{local:["Wingdings","URW Dingbats"],style:i}],["Wingdings-Regular",{alias:"Wingdings"}],["Wingdings-Bold",{alias:"Wingdings"}]]),h=new Map([["Arial-Black","ArialBlack"]]);function generateFont({alias:e,local:t,path:a,fallback:r,style:n,ultimate:i},h,u,d=!0,f=!0,g=""){const p={style:null,ultimate:null};if(t){const e=g?` ${g}`:"";for(const a of t)h.push(`local(${a}${e})`)}if(e){const t=l.get(e),i=g||function getStyleToAppend(e){switch(e){case s:return"Bold";case o:return"Italic";case c:return"Bold Italic";default:if("bold"===e?.weight)return"Bold";if("italic"===e?.style)return"Italic"}return""}(n);Object.assign(p,generateFont(t,h,u,d&&!r,f&&!a,i))}n&&(p.style=n);i&&(p.ultimate=i);if(d&&r){const e=l.get(r),{ultimate:t}=generateFont(e,h,u,d,f&&!a,g);p.ultimate||=t}f&&a&&u&&h.push(`url(${u}${a})`);return p}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ImageResizer=void 0;var r=a(2);class ImageResizer{constructor(e,t){this._imgData=e;this._isMask=t}static needsToBeResized(e,t){if(e<=this._goodSquareLength&&t<=this._goodSquareLength)return!1;const{MAX_DIM:a}=this;if(e>a||t>a)return!0;const r=e*t;if(this._hasMaxArea)return r>this.MAX_AREA;if(r(this.MAX_AREA=this._goodSquareLength**2)}static get MAX_DIM(){return(0,r.shadow)(this,"MAX_DIM",this._guessMax(2048,65537,0,1))}static get MAX_AREA(){this._hasMaxArea=!0;return(0,r.shadow)(this,"MAX_AREA",this._guessMax(ImageResizer._goodSquareLength,this.MAX_DIM,128,0)**2)}static set MAX_AREA(e){if(e>=0){this._hasMaxArea=!0;(0,r.shadow)(this,"MAX_AREA",e)}}static setMaxArea(e){this._hasMaxArea||(this.MAX_AREA=e>>2)}static _areGoodDims(e,t){try{const a=new OffscreenCanvas(e,t),r=a.getContext("2d");r.fillRect(0,0,1,1);const n=r.getImageData(0,0,1,1).data[3];a.width=a.height=1;return 0!==n}catch{return!1}}static _guessMax(e,t,a,r){for(;e+a+1>3,r=a+3&-4;if(a!==r){const e=new Uint8Array(r*t);let n=0;for(let s=0,o=t*a;s{Object.defineProperty(t,"__esModule",{value:!0});t.MurmurHash3_64=void 0;var r=a(2);const n=3285377520,i=4294901760,s=65535;t.MurmurHash3_64=class MurmurHash3_64{constructor(e){this.h1=e?4294967295&e:n;this.h2=e?4294967295&e:n}update(e){let t,a;if("string"==typeof e){t=new Uint8Array(2*e.length);a=0;for(let r=0,n=e.length;r>>8;t[a++]=255&n}}}else{if(!(0,r.isArrayBuffer)(e))throw new Error("Wrong data format in MurmurHash3_64_update. Input must be a string or array.");t=e.slice();a=t.byteLength}const n=a>>2,o=a-4*n,c=new Uint32Array(t.buffer,0,n);let l=0,h=0,u=this.h1,d=this.h2;const f=3432918353,g=461845907,p=11601,m=13715;for(let e=0;e>>17;l=l*g&i|l*m&s;u^=l;u=u<<13|u>>>19;u=5*u+3864292196}else{h=c[e];h=h*f&i|h*p&s;h=h<<15|h>>>17;h=h*g&i|h*m&s;d^=h;d=d<<13|d>>>19;d=5*d+3864292196}l=0;switch(o){case 3:l^=t[4*n+2]<<16;case 2:l^=t[4*n+1]<<8;case 1:l^=t[4*n];l=l*f&i|l*p&s;l=l<<15|l>>>17;l=l*g&i|l*m&s;1&n?u^=l:d^=l}this.h1=u;this.h2=d}hexdigest(){let e=this.h1,t=this.h2;e^=t>>>1;e=3981806797*e&i|36045*e&s;t=4283543511*t&i|(2950163797*(t<<16|e>>>16)&i)>>>16;e^=t>>>1;e=444984403*e&i|60499*e&s;t=3301882366*t&i|(3120437893*(t<<16|e>>>16)&i)>>>16;e^=t>>>1;return(e>>>0).toString(16).padStart(8,"0")+(t>>>0).toString(16).padStart(8,"0")}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.OperatorList=void 0;var r=a(2);function addState(e,t,a,r,n){let i=e;for(let e=0,a=t.length-1;e1e3){h=Math.max(h,f);g+=d+2;f=0;d=0}u.push({transform:t,x:f,y:g,w:a.width,h:a.height});f+=a.width+2;d=Math.max(d,a.height)}const p=Math.max(h,f)+1,m=g+d+1,b=new Uint8Array(p*m*4),y=p<<2;for(let e=0;e=0;){t[i-4]=t[i];t[i-3]=t[i+1];t[i-2]=t[i+2];t[i-1]=t[i+3];t[i+a]=t[i+a-4];t[i+a+1]=t[i+a-3];t[i+a+2]=t[i+a-2];t[i+a+3]=t[i+a-1];i-=y}}const w={width:p,height:m};if(e.isOffscreenCanvasSupported){const e=new OffscreenCanvas(p,m);e.getContext("2d").putImageData(new ImageData(new Uint8ClampedArray(b.buffer),p,m),0,0);w.bitmap=e.transferToImageBitmap();w.data=null}else{w.kind=r.ImageKind.RGBA_32BPP;w.data=b}a.splice(s,4*l,r.OPS.paintInlineImageXObjectGroup);n.splice(s,4*l,[w,u]);return s+1}));addState(n,[r.OPS.save,r.OPS.transform,r.OPS.paintImageMaskXObject,r.OPS.restore],null,(function iterateImageMaskGroup(e,t){const a=e.fnArray,n=(t-(e.iCurr-3))%4;switch(n){case 0:return a[t]===r.OPS.save;case 1:return a[t]===r.OPS.transform;case 2:return a[t]===r.OPS.paintImageMaskXObject;case 3:return a[t]===r.OPS.restore}throw new Error(`iterateImageMaskGroup - invalid pos: ${n}`)}),(function foundImageMaskGroup(e,t){const a=e.fnArray,n=e.argsArray,i=e.iCurr,s=i-3,o=i-2,c=i-1;let l=Math.floor((t-s)/4);if(l<10)return t-(t-s)%4;let h,u,d=!1;const f=n[c][0],g=n[o][0],p=n[o][1],m=n[o][2],b=n[o][3];if(p===m){d=!0;h=o+4;let e=c+4;for(let t=1;t=4&&a[i-4]===a[s]&&a[i-3]===a[o]&&a[i-2]===a[c]&&a[i-1]===a[l]&&r[i-4][0]===h&&r[i-4][1]===u){d++;f-=5}let g=f+4;for(let e=1;e=a)break}r=(r||n)[e[t]];if(r&&!Array.isArray(r)){s.iCurr=t;t++;if(!r.checkFn||(0,r.checkFn)(s)){i=r;r=null}else r=null}else t++}this.state=r;this.match=i;this.lastProcessed=t}flush(){for(;this.match;){const e=this.queue.fnArray.length;this.lastProcessed=(0,this.match.processFn)(this.context,e);this.match=null;this.state=null;this._optimize()}}reset(){this.state=null;this.match=null;this.lastProcessed=0}}class OperatorList{static CHUNK_SIZE=1e3;static CHUNK_SIZE_ABOUT=this.CHUNK_SIZE-5;constructor(e=0,t){this._streamSink=t;this.fnArray=[];this.argsArray=[];this.optimizer=!t||e&r.RenderingIntentFlag.OPLIST?new NullOptimizer(this):new QueueOptimizer(this);this.dependencies=new Set;this._totalLength=0;this.weight=0;this._resolved=t?null:Promise.resolve()}set isOffscreenCanvasSupported(e){this.optimizer.isOffscreenCanvasSupported=e}get length(){return this.argsArray.length}get ready(){return this._resolved||this._streamSink.ready}get totalLength(){return this._totalLength+this.length}addOp(e,t){this.optimizer.push(e,t);this.weight++;this._streamSink&&(this.weight>=OperatorList.CHUNK_SIZE||this.weight>=OperatorList.CHUNK_SIZE_ABOUT&&(e===r.OPS.restore||e===r.OPS.endText))&&this.flush()}addImageOps(e,t,a){void 0!==a&&this.addOp(r.OPS.beginMarkedContentProps,["OC",a]);this.addOp(e,t);void 0!==a&&this.addOp(r.OPS.endMarkedContent,[])}addDependency(e){if(!this.dependencies.has(e)){this.dependencies.add(e);this.addOp(r.OPS.dependency,[e])}}addDependencies(e){for(const t of e)this.addDependency(t)}addOpList(e){if(e instanceof OperatorList){for(const t of e.dependencies)this.dependencies.add(t);for(let t=0,a=e.length;t{Object.defineProperty(t,"__esModule",{value:!0});t.PDFImage=void 0;var r=a(2),n=a(28),i=a(5),s=a(12),o=a(18),c=a(62),l=a(26),h=a(30),u=a(4);function decodeAndClamp(e,t,a,r){(e=t+e*a)<0?e=0:e>r&&(e=r);return e}function resizeImageMask(e,t,a,r,n,i){const s=n*i;let o;o=t<=8?new Uint8Array(s):t<=16?new Uint16Array(s):new Uint32Array(s);const c=a/n,l=r/i;let h,u,d,f,g=0;const p=new Uint16Array(n),m=a;for(h=0;h0&&Number.isInteger(a.height)&&a.height>0&&(a.width!==b||a.height!==y)){(0,r.warn)("PDFImage - using the Width/Height of the image data, rather than the image dictionary.");b=a.width;y=a.height}if(b<1||y<1)throw new r.FormatError(`Invalid image width: ${b} or height: ${y}`);this.width=b;this.height=y;this.interpolate=g.get("I","Interpolate");this.imageMask=g.get("IM","ImageMask")||!1;this.matte=g.get("Matte")||!1;let w=a.bitsPerComponent;if(!w){w=g.get("BPC","BitsPerComponent");if(!w){if(!this.imageMask)throw new r.FormatError(`Bits per component missing in image: ${this.imageMask}`);w=1}}this.bpc=w;if(!this.imageMask){let i=g.getRaw("CS")||g.getRaw("ColorSpace");if(!i){(0,r.info)("JPX images (which do not require color spaces)");switch(a.numComps){case 1:i=u.Name.get("DeviceGray");break;case 3:i=u.Name.get("DeviceRGB");break;case 4:i=u.Name.get("DeviceCMYK");break;default:throw new Error(`JPX images with ${a.numComps} color components not supported.`)}}this.colorSpace=s.ColorSpace.parse({cs:i,xref:e,resources:n?t:null,pdfFunctionFactory:d,localColorSpaceCache:f});this.numComps=this.colorSpace.numComps}this.decode=g.getArray("D","Decode");this.needsDecode=!1;if(this.decode&&(this.colorSpace&&!this.colorSpace.isDefaultDecode(this.decode,w)||l&&!s.ColorSpace.isDefaultDecode(this.decode,1))){this.needsDecode=!0;const e=(1<>3)*a,o=e.byteLength;let c,l;if(!r||n&&!(s===o))if(n){c=new Uint8Array(s);c.set(e);c.fill(255,o)}else c=new Uint8Array(e);else c=e;if(n)for(l=0;l>7&1;s[d+1]=u>>6&1;s[d+2]=u>>5&1;s[d+3]=u>>4&1;s[d+4]=u>>3&1;s[d+5]=u>>2&1;s[d+6]=u>>1&1;s[d+7]=1&u;d+=8}if(d>=1}}}}else{let a=0;u=0;for(d=0,h=i;d>r;n<0?n=0:n>l&&(n=l);s[d]=n;u&=(1<o[r+1]){t=255;break}}c[u]=t}}}if(c)for(u=0,f=3,d=t*n;u>3,f=t&&c.ImageResizer.needsToBeResized(a,n);if(!e){let e;"DeviceGray"===this.colorSpace.name&&1===u?e=r.ImageKind.GRAYSCALE_1BPP:"DeviceRGB"!==this.colorSpace.name||8!==u||this.needsDecode||(e=r.ImageKind.RGB_24BPP);if(e&&!this.smask&&!this.mask&&a===o&&n===h){const s=this.getImageBytes(h*d,{});if(t)return f?c.ImageResizer.createImage({data:s,kind:e,width:a,height:n,interpolate:this.interpolate},this.needsDecode):this.createBitmap(e,o,h,s);i.kind=e;i.data=s;if(this.needsDecode){(0,r.assert)(e===r.ImageKind.GRAYSCALE_1BPP,"PDFImage.createImageData: The image must be grayscale.");const t=i.data;for(let e=0,a=t.length;e>3,o=this.getImageBytes(n*s,{internal:!0}),c=this.getComponents(o);let l,h;if(1===i){h=a*n;if(this.needsDecode)for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0});t.Catalog=void 0;var r=a(3),n=a(2),i=a(4),s=a(67),o=a(5),c=a(68),l=a(12),h=a(69),u=a(59),d=a(70),f=a(72);function fetchDestination(e){e instanceof i.Dict&&(e=e.get("D"));return Array.isArray(e)?e:null}class Catalog{constructor(e,t){this.pdfManager=e;this.xref=t;this._catDict=t.getCatalogObj();if(!(this._catDict instanceof i.Dict))throw new n.FormatError("Catalog object is not a dictionary.");this.toplevelPagesDict;this._actualNumPages=null;this.fontCache=new i.RefSetCache;this.builtInCMapCache=new Map;this.standardFontDataCache=new Map;this.globalImageCache=new u.GlobalImageCache;this.pageKidsCountCache=new i.RefSetCache;this.pageIndexCache=new i.RefSetCache;this.nonBlendModesSet=new i.RefSet;this.systemFontCache=new Map}cloneDict(){return this._catDict.clone()}get version(){const e=this._catDict.get("Version");if(e instanceof i.Name){if(r.PDF_VERSION_REGEXP.test(e.name))return(0,n.shadow)(this,"version",e.name);(0,n.warn)(`Invalid PDF catalog version: ${e.name}`)}return(0,n.shadow)(this,"version",null)}get lang(){const e=this._catDict.get("Lang");return(0,n.shadow)(this,"lang","string"==typeof e?(0,n.stringToPDFString)(e):null)}get needsRendering(){const e=this._catDict.get("NeedsRendering");return(0,n.shadow)(this,"needsRendering","boolean"==typeof e&&e)}get collection(){let e=null;try{const t=this._catDict.get("Collection");t instanceof i.Dict&&t.size>0&&(e=t)}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.info)("Cannot fetch Collection entry; assuming no collection is present.")}return(0,n.shadow)(this,"collection",e)}get acroForm(){let e=null;try{const t=this._catDict.get("AcroForm");t instanceof i.Dict&&t.size>0&&(e=t)}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.info)("Cannot fetch AcroForm entry; assuming no forms are present.")}return(0,n.shadow)(this,"acroForm",e)}get acroFormRef(){const e=this._catDict.getRaw("AcroForm");return(0,n.shadow)(this,"acroFormRef",e instanceof i.Ref?e:null)}get metadata(){const e=this._catDict.getRaw("Metadata");if(!(e instanceof i.Ref))return(0,n.shadow)(this,"metadata",null);let t=null;try{const a=this.xref.fetch(e,!this.xref.encrypt?.encryptMetadata);if(a instanceof o.BaseStream&&a.dict instanceof i.Dict){const e=a.dict.get("Type"),r=a.dict.get("Subtype");if((0,i.isName)(e,"Metadata")&&(0,i.isName)(r,"XML")){const e=(0,n.stringToUTF8String)(a.getString());e&&(t=new d.MetadataParser(e).serializable)}}}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.info)(`Skipping invalid Metadata: "${e}".`)}return(0,n.shadow)(this,"metadata",t)}get markInfo(){let e=null;try{e=this._readMarkInfo()}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)("Unable to read mark info.")}return(0,n.shadow)(this,"markInfo",e)}_readMarkInfo(){const e=this._catDict.get("MarkInfo");if(!(e instanceof i.Dict))return null;const t={Marked:!1,UserProperties:!1,Suspects:!1};for(const a in t){const r=e.get(a);"boolean"==typeof r&&(t[a]=r)}return t}get structTreeRoot(){let e=null;try{e=this._readStructTreeRoot()}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)("Unable read to structTreeRoot info.")}return(0,n.shadow)(this,"structTreeRoot",e)}_readStructTreeRoot(){const e=this._catDict.getRaw("StructTreeRoot"),t=this.xref.fetchIfRef(e);if(!(t instanceof i.Dict))return null;const a=new f.StructTreeRoot(t,e);a.init();return a}get toplevelPagesDict(){const e=this._catDict.get("Pages");if(!(e instanceof i.Dict))throw new n.FormatError("Invalid top-level pages dictionary.");return(0,n.shadow)(this,"toplevelPagesDict",e)}get documentOutline(){let e=null;try{e=this._readDocumentOutline()}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)("Unable to read document outline.")}return(0,n.shadow)(this,"documentOutline",e)}_readDocumentOutline(){let e=this._catDict.get("Outlines");if(!(e instanceof i.Dict))return null;e=e.getRaw("First");if(!(e instanceof i.Ref))return null;const t={items:[]},a=[{obj:e,parent:t}],r=new i.RefSet;r.put(e);const s=this.xref,o=new Uint8ClampedArray(3);for(;a.length>0;){const t=a.shift(),c=s.fetchIfRef(t.obj);if(null===c)continue;if(!c.has("Title"))throw new n.FormatError("Invalid outline item encountered.");const h={url:null,dest:null,action:null};Catalog.parseDestDictionary({destDict:c,resultObj:h,docBaseUrl:this.baseUrl,docAttachments:this.attachments});const u=c.get("Title"),d=c.get("F")||0,f=c.getArray("C"),g=c.get("Count");let p=o;!Array.isArray(f)||3!==f.length||0===f[0]&&0===f[1]&&0===f[2]||(p=l.ColorSpace.singletons.rgb.getRgb(f,0));const m={action:h.action,attachment:h.attachment,dest:h.dest,url:h.url,unsafeUrl:h.unsafeUrl,newWindow:h.newWindow,setOCGState:h.setOCGState,title:(0,n.stringToPDFString)(u),color:p,count:Number.isInteger(g)?g:void 0,bold:!!(2&d),italic:!!(1&d),items:[]};t.parent.items.push(m);e=c.getRaw("First");if(e instanceof i.Ref&&!r.has(e)){a.push({obj:e,parent:m});r.put(e)}e=c.getRaw("Next");if(e instanceof i.Ref&&!r.has(e)){a.push({obj:e,parent:t.parent});r.put(e)}}return t.items.length>0?t.items:null}get permissions(){let e=null;try{e=this._readPermissions()}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)("Unable to read permissions.")}return(0,n.shadow)(this,"permissions",e)}_readPermissions(){const e=this.xref.trailer.get("Encrypt");if(!(e instanceof i.Dict))return null;let t=e.get("P");if("number"!=typeof t)return null;t+=2**32;const a=[];for(const e in n.PermissionFlag){const r=n.PermissionFlag[e];t&r&&a.push(r)}return a}get optionalContentConfig(){let e=null;try{const t=this._catDict.get("OCProperties");if(!t)return(0,n.shadow)(this,"optionalContentConfig",null);const a=t.get("D");if(!a)return(0,n.shadow)(this,"optionalContentConfig",null);const r=t.get("OCGs");if(!Array.isArray(r))return(0,n.shadow)(this,"optionalContentConfig",null);const s=[],o=[];for(const e of r){if(!(e instanceof i.Ref))continue;o.push(e);const t=this.xref.fetchIfRef(e);s.push({id:e.toString(),name:"string"==typeof t.get("Name")?(0,n.stringToPDFString)(t.get("Name")):null,intent:"string"==typeof t.get("Intent")?(0,n.stringToPDFString)(t.get("Intent")):null})}e=this._readOptionalContentConfig(a,o);e.groups=s}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)(`Unable to read optional content config: ${e}`)}return(0,n.shadow)(this,"optionalContentConfig",e)}_readOptionalContentConfig(e,t){function parseOnOff(e){const a=[];if(Array.isArray(e))for(const r of e)r instanceof i.Ref&&t.includes(r)&&a.push(r.toString());return a}function parseOrder(e,a=0){if(!Array.isArray(e))return null;const n=[];for(const s of e){if(s instanceof i.Ref&&t.includes(s)){r.put(s);n.push(s.toString());continue}const e=parseNestedOrder(s,a);e&&n.push(e)}if(a>0)return n;const s=[];for(const e of t)r.has(e)||s.push(e.toString());s.length&&n.push({name:null,order:s});return n}function parseNestedOrder(e,t){if(++t>s){(0,n.warn)("parseNestedOrder - reached MAX_NESTED_LEVELS.");return null}const r=a.fetchIfRef(e);if(!Array.isArray(r))return null;const i=a.fetchIfRef(r[0]);if("string"!=typeof i)return null;const o=parseOrder(r.slice(1),t);return o&&o.length?{name:(0,n.stringToPDFString)(i),order:o}:null}const a=this.xref,r=new i.RefSet,s=10;return{name:"string"==typeof e.get("Name")?(0,n.stringToPDFString)(e.get("Name")):null,creator:"string"==typeof e.get("Creator")?(0,n.stringToPDFString)(e.get("Creator")):null,baseState:e.get("BaseState")instanceof i.Name?e.get("BaseState").name:null,on:parseOnOff(e.get("ON")),off:parseOnOff(e.get("OFF")),order:parseOrder(e.get("Order")),groups:null}}setActualNumPages(e=null){this._actualNumPages=e}get hasActualNumPages(){return null!==this._actualNumPages}get _pagesCount(){const e=this.toplevelPagesDict.get("Count");if(!Number.isInteger(e))throw new n.FormatError("Page count in top-level pages dictionary is not an integer.");return(0,n.shadow)(this,"_pagesCount",e)}get numPages(){return this.hasActualNumPages?this._actualNumPages:this._pagesCount}get destinations(){const e=this._readDests(),t=Object.create(null);if(e instanceof s.NameTree)for(const[a,r]of e.getAll()){const e=fetchDestination(r);e&&(t[(0,n.stringToPDFString)(a)]=e)}else e instanceof i.Dict&&e.forEach((function(e,a){const r=fetchDestination(a);r&&(t[e]=r)}));return(0,n.shadow)(this,"destinations",t)}getDestination(e){const t=this._readDests();if(t instanceof s.NameTree){const a=fetchDestination(t.get(e));if(a)return a;const r=this.destinations[e];if(r){(0,n.warn)(`Found "${e}" at an incorrect position in the NameTree.`);return r}}else if(t instanceof i.Dict){const a=fetchDestination(t.get(e));if(a)return a}return null}_readDests(){const e=this._catDict.get("Names");return e?.has("Dests")?new s.NameTree(e.getRaw("Dests"),this.xref):this._catDict.has("Dests")?this._catDict.get("Dests"):void 0}get pageLabels(){let e=null;try{e=this._readPageLabels()}catch(e){if(e instanceof r.MissingDataException)throw e;(0,n.warn)("Unable to read page labels.")}return(0,n.shadow)(this,"pageLabels",e)}_readPageLabels(){const e=this._catDict.getRaw("PageLabels");if(!e)return null;const t=new Array(this.numPages);let a=null,o="";const c=new s.NumberTree(e,this.xref).getAll();let l="",h=1;for(let e=0,s=this.numPages;e=1))throw new n.FormatError("Invalid start in PageLabel dictionary.");h=e}else h=1}switch(a){case"D":l=h;break;case"R":case"r":l=(0,r.toRomanNumerals)(h,"r"===a);break;case"A":case"a":const e=26,t="a"===a?97:65,i=h-1;l=String.fromCharCode(t+i%e).repeat(Math.floor(i/e)+1);break;default:if(a)throw new n.FormatError(`Invalid style "${a}" in PageLabel dictionary.`);l=""}t[e]=o+l;h++}return t}get pageLayout(){const e=this._catDict.get("PageLayout");let t="";if(e instanceof i.Name)switch(e.name){case"SinglePage":case"OneColumn":case"TwoColumnLeft":case"TwoColumnRight":case"TwoPageLeft":case"TwoPageRight":t=e.name}return(0,n.shadow)(this,"pageLayout",t)}get pageMode(){const e=this._catDict.get("PageMode");let t="UseNone";if(e instanceof i.Name)switch(e.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"FullScreen":case"UseOC":case"UseAttachments":t=e.name}return(0,n.shadow)(this,"pageMode",t)}get viewerPreferences(){const e=this._catDict.get("ViewerPreferences");if(!(e instanceof i.Dict))return(0,n.shadow)(this,"viewerPreferences",null);let t=null;for(const a of e.getKeys()){const r=e.get(a);let s;switch(a){case"HideToolbar":case"HideMenubar":case"HideWindowUI":case"FitWindow":case"CenterWindow":case"DisplayDocTitle":case"PickTrayByPDFSize":"boolean"==typeof r&&(s=r);break;case"NonFullScreenPageMode":if(r instanceof i.Name)switch(r.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"UseOC":s=r.name;break;default:s="UseNone"}break;case"Direction":if(r instanceof i.Name)switch(r.name){case"L2R":case"R2L":s=r.name;break;default:s="L2R"}break;case"ViewArea":case"ViewClip":case"PrintArea":case"PrintClip":if(r instanceof i.Name)switch(r.name){case"MediaBox":case"CropBox":case"BleedBox":case"TrimBox":case"ArtBox":s=r.name;break;default:s="CropBox"}break;case"PrintScaling":if(r instanceof i.Name)switch(r.name){case"None":case"AppDefault":s=r.name;break;default:s="AppDefault"}break;case"Duplex":if(r instanceof i.Name)switch(r.name){case"Simplex":case"DuplexFlipShortEdge":case"DuplexFlipLongEdge":s=r.name;break;default:s="None"}break;case"PrintPageRange":if(Array.isArray(r)&&r.length%2==0){r.every(((e,t,a)=>Number.isInteger(e)&&e>0&&(0===t||e>=a[t-1])&&e<=this.numPages))&&(s=r)}break;case"NumCopies":Number.isInteger(r)&&r>0&&(s=r);break;default:(0,n.warn)(`Ignoring non-standard key in ViewerPreferences: ${a}.`);continue}if(void 0!==s){t||(t=Object.create(null));t[a]=s}else(0,n.warn)(`Bad value, for key "${a}", in ViewerPreferences: ${r}.`)}return(0,n.shadow)(this,"viewerPreferences",t)}get openAction(){const e=this._catDict.get("OpenAction"),t=Object.create(null);if(e instanceof i.Dict){const a=new i.Dict(this.xref);a.set("A",e);const r={url:null,dest:null,action:null};Catalog.parseDestDictionary({destDict:a,resultObj:r});Array.isArray(r.dest)?t.dest=r.dest:r.action&&(t.action=r.action)}else Array.isArray(e)&&(t.dest=e);return(0,n.shadow)(this,"openAction",(0,n.objectSize)(t)>0?t:null)}get attachments(){const e=this._catDict.get("Names");let t=null;if(e instanceof i.Dict&&e.has("EmbeddedFiles")){const a=new s.NameTree(e.getRaw("EmbeddedFiles"),this.xref);for(const[e,r]of a.getAll()){const a=new h.FileSpec(r,this.xref);t||(t=Object.create(null));t[(0,n.stringToPDFString)(e)]=a.serializable}}return(0,n.shadow)(this,"attachments",t)}get xfaImages(){const e=this._catDict.get("Names");let t=null;if(e instanceof i.Dict&&e.has("XFAImages")){const a=new s.NameTree(e.getRaw("XFAImages"),this.xref);for(const[e,r]of a.getAll()){t||(t=new i.Dict(this.xref));t.set((0,n.stringToPDFString)(e),r)}}return(0,n.shadow)(this,"xfaImages",t)}_collectJavaScript(){const e=this._catDict.get("Names");let t=null;function appendIfJavaScriptDict(e,a){if(!(a instanceof i.Dict))return;if(!(0,i.isName)(a.get("S"),"JavaScript"))return;let r=a.get("JS");if(r instanceof o.BaseStream)r=r.getString();else if("string"!=typeof r)return;r=(0,n.stringToPDFString)(r).replaceAll("\0","");r&&(t||=new Map).set(e,r)}if(e instanceof i.Dict&&e.has("JavaScript")){const t=new s.NameTree(e.getRaw("JavaScript"),this.xref);for(const[e,a]of t.getAll())appendIfJavaScriptDict((0,n.stringToPDFString)(e),a)}const a=this._catDict.get("OpenAction");a&&appendIfJavaScriptDict("OpenAction",a);return t}get jsActions(){const e=this._collectJavaScript();let t=(0,r.collectActions)(this.xref,this._catDict,n.DocumentActionEventType);if(e){t||=Object.create(null);for(const[a,r]of e)a in t?t[a].push(r):t[a]=[r]}return(0,n.shadow)(this,"jsActions",t)}async fontFallback(e,t){const a=await Promise.all(this.fontCache);for(const r of a)if(r.loadedName===e){r.fallback(t);return}}async cleanup(e=!1){(0,c.clearGlobalCaches)();this.globalImageCache.clear(e);this.pageKidsCountCache.clear();this.pageIndexCache.clear();this.nonBlendModesSet.clear();const t=await Promise.all(this.fontCache);for(const{dict:e}of t)delete e.cacheKey;this.fontCache.clear();this.builtInCMapCache.clear();this.standardFontDataCache.clear();this.systemFontCache.clear()}async getPageDict(e){const t=[this.toplevelPagesDict],a=new i.RefSet,r=this._catDict.getRaw("Pages");r instanceof i.Ref&&a.put(r);const s=this.xref,o=this.pageKidsCountCache,c=this.pageIndexCache;let l=0;for(;t.length;){const r=t.pop();if(r instanceof i.Ref){const h=o.get(r);if(h>=0&&l+h<=e){l+=h;continue}if(a.has(r))throw new n.FormatError("Pages tree contains circular reference.");a.put(r);const u=await s.fetchAsync(r);if(u instanceof i.Dict){let t=u.getRaw("Type");t instanceof i.Ref&&(t=await s.fetchAsync(t));if((0,i.isName)(t,"Page")||!u.has("Kids")){o.has(r)||o.put(r,1);c.has(r)||c.put(r,l);if(l===e)return[u,r];l++;continue}}t.push(u);continue}if(!(r instanceof i.Dict))throw new n.FormatError("Page dictionary kid reference points to wrong type of object.");const{objId:h}=r;let u=r.getRaw("Count");u instanceof i.Ref&&(u=await s.fetchAsync(u));if(Number.isInteger(u)&&u>=0){h&&!o.has(h)&&o.put(h,u);if(l+u<=e){l+=u;continue}}let d=r.getRaw("Kids");d instanceof i.Ref&&(d=await s.fetchAsync(d));if(!Array.isArray(d)){let t=r.getRaw("Type");t instanceof i.Ref&&(t=await s.fetchAsync(t));if((0,i.isName)(t,"Page")||!r.has("Kids")){if(l===e)return[r,null];l++;continue}throw new n.FormatError("Page dictionary kids object is not an array.")}for(let e=d.length-1;e>=0;e--)t.push(d[e])}throw new Error(`Page index ${e} not found.`)}async getAllPageDicts(e=!1){const{ignoreErrors:t}=this.pdfManager.evaluatorOptions,a=[{currentNode:this.toplevelPagesDict,posInKids:0}],s=new i.RefSet,o=this._catDict.getRaw("Pages");o instanceof i.Ref&&s.put(o);const c=new Map,l=this.xref,h=this.pageIndexCache;let u=0;function addPageDict(e,t){t&&!h.has(t)&&h.put(t,u);c.set(u++,[e,t])}function addPageError(a){if(a instanceof r.XRefEntryException&&!e)throw a;if(e&&t&&0===u){(0,n.warn)(`getAllPageDicts - Skipping invalid first page: "${a}".`);a=i.Dict.empty}c.set(u++,[a,null])}for(;a.length>0;){const e=a.at(-1),{currentNode:t,posInKids:r}=e;let o=t.getRaw("Kids");if(o instanceof i.Ref)try{o=await l.fetchAsync(o)}catch(e){addPageError(e);break}if(!Array.isArray(o)){addPageError(new n.FormatError("Page dictionary kids object is not an array."));break}if(r>=o.length){a.pop();continue}const c=o[r];let h;if(c instanceof i.Ref){if(s.has(c)){addPageError(new n.FormatError("Pages tree contains circular reference."));break}s.put(c);try{h=await l.fetchAsync(c)}catch(e){addPageError(e);break}}else h=c;if(!(h instanceof i.Dict)){addPageError(new n.FormatError("Page dictionary kid reference points to wrong type of object."));break}let u=h.getRaw("Type");if(u instanceof i.Ref)try{u=await l.fetchAsync(u)}catch(e){addPageError(e);break}(0,i.isName)(u,"Page")||!h.has("Kids")?addPageDict(h,c instanceof i.Ref?c:null):a.push({currentNode:h,posInKids:0});e.posInKids++}return c}getPageIndex(e){const t=this.pageIndexCache.get(e);if(void 0!==t)return Promise.resolve(t);const a=this.xref;let r=0;const next=t=>function pagesBeforeRef(t){let r,s=0;return a.fetchAsync(t).then((function(a){if((0,i.isRefsEqual)(t,e)&&!(0,i.isDict)(a,"Page")&&!(a instanceof i.Dict&&!a.has("Type")&&a.has("Contents")))throw new n.FormatError("The reference does not point to a /Page dictionary.");if(!a)return null;if(!(a instanceof i.Dict))throw new n.FormatError("Node must be a dictionary.");r=a.getRaw("Parent");return a.getAsync("Parent")})).then((function(e){if(!e)return null;if(!(e instanceof i.Dict))throw new n.FormatError("Parent must be a dictionary.");return e.getAsync("Kids")})).then((function(e){if(!e)return null;const o=[];let c=!1;for(const r of e){if(!(r instanceof i.Ref))throw new n.FormatError("Kid must be a reference.");if((0,i.isRefsEqual)(r,t)){c=!0;break}o.push(a.fetchAsync(r).then((function(e){if(!(e instanceof i.Dict))throw new n.FormatError("Kid node must be a dictionary.");e.has("Count")?s+=e.get("Count"):s++})))}if(!c)throw new n.FormatError("Kid reference not found in parent's kids.");return Promise.all(o).then((function(){return[s,r]}))}))}(t).then((t=>{if(!t){this.pageIndexCache.put(e,r);return r}const[a,n]=t;r+=a;return next(n)}));return next(e)}get baseUrl(){const e=this._catDict.get("URI");if(e instanceof i.Dict){const t=e.get("Base");if("string"==typeof t){const e=(0,n.createValidAbsoluteUrl)(t,null,{tryConvertEncoding:!0});if(e)return(0,n.shadow)(this,"baseUrl",e.href)}}return(0,n.shadow)(this,"baseUrl",this.pdfManager.docBaseUrl)}static parseDestDictionary({destDict:e,resultObj:t,docBaseUrl:a=null,docAttachments:s=null}){if(!(e instanceof i.Dict)){(0,n.warn)("parseDestDictionary: `destDict` must be a dictionary.");return}let c,l,h=e.get("A");if(!(h instanceof i.Dict))if(e.has("Dest"))h=e.get("Dest");else{h=e.get("AA");h instanceof i.Dict&&(h.has("D")?h=h.get("D"):h.has("U")&&(h=h.get("U")))}if(h instanceof i.Dict){const e=h.get("S");if(!(e instanceof i.Name)){(0,n.warn)("parseDestDictionary: Invalid type in Action dictionary.");return}const a=e.name;switch(a){case"ResetForm":const e=h.get("Flags"),u=0==(1&("number"==typeof e?e:0)),d=[],f=[];for(const e of h.get("Fields")||[])e instanceof i.Ref?f.push(e.toString()):"string"==typeof e&&d.push((0,n.stringToPDFString)(e));t.resetForm={fields:d,refs:f,include:u};break;case"URI":c=h.get("URI");c instanceof i.Name&&(c="/"+c.name);break;case"GoTo":l=h.get("D");break;case"Launch":case"GoToR":const g=h.get("F");g instanceof i.Dict?c=g.get("F")||null:"string"==typeof g&&(c=g);let p=h.get("D");if(p){p instanceof i.Name&&(p=p.name);if("string"==typeof c){const e=c.split("#")[0];"string"==typeof p?c=e+"#"+p:Array.isArray(p)&&(c=e+"#"+JSON.stringify(p))}}const m=h.get("NewWindow");"boolean"==typeof m&&(t.newWindow=m);break;case"GoToE":const b=h.get("T");let y;if(s&&b instanceof i.Dict){const e=b.get("R"),t=b.get("N");(0,i.isName)(e,"C")&&"string"==typeof t&&(y=s[(0,n.stringToPDFString)(t)])}y?t.attachment=y:(0,n.warn)('parseDestDictionary - unimplemented "GoToE" action.');break;case"Named":const w=h.get("N");w instanceof i.Name&&(t.action=w.name);break;case"SetOCGState":const S=h.get("State"),x=h.get("PreserveRB");if(!Array.isArray(S)||0===S.length)break;const C=[];for(const e of S)if(e instanceof i.Name)switch(e.name){case"ON":case"OFF":case"Toggle":C.push(e.name)}else e instanceof i.Ref&&C.push(e.toString());if(C.length!==S.length)break;t.setOCGState={state:C,preserveRB:"boolean"!=typeof x||x};break;case"JavaScript":const k=h.get("JS");let v;k instanceof o.BaseStream?v=k.getString():"string"==typeof k&&(v=k);const F=v&&(0,r.recoverJsURL)((0,n.stringToPDFString)(v));if(F){c=F.url;t.newWindow=F.newWindow;break}default:if("JavaScript"===a||"SubmitForm"===a)break;(0,n.warn)(`parseDestDictionary - unsupported action: "${a}".`)}}else e.has("Dest")&&(l=e.get("Dest"));if("string"==typeof c){const e=(0,n.createValidAbsoluteUrl)(c,a,{addDefaultProtocol:!0,tryConvertEncoding:!0});e&&(t.url=e.href);t.unsafeUrl=c}if(l){l instanceof i.Name&&(l=l.name);"string"==typeof l?t.dest=(0,n.stringToPDFString)(l):Array.isArray(l)&&(t.dest=l)}}}t.Catalog=Catalog},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.NumberTree=t.NameTree=void 0;var r=a(4),n=a(2);class NameOrNumberTree{constructor(e,t,a){this.constructor===NameOrNumberTree&&(0,n.unreachable)("Cannot initialize NameOrNumberTree.");this.root=e;this.xref=t;this._type=a}getAll(){const e=new Map;if(!this.root)return e;const t=this.xref,a=new r.RefSet;a.put(this.root);const i=[this.root];for(;i.length>0;){const s=t.fetchIfRef(i.shift());if(!(s instanceof r.Dict))continue;if(s.has("Kids")){const e=s.get("Kids");if(!Array.isArray(e))continue;for(const t of e){if(a.has(t))throw new n.FormatError(`Duplicate entry in "${this._type}" tree.`);i.push(t);a.put(t)}continue}const o=s.get(this._type);if(Array.isArray(o))for(let a=0,r=o.length;a10){(0,n.warn)(`Search depth limit reached for "${this._type}" tree.`);return null}const i=a.get("Kids");if(!Array.isArray(i))return null;let s=0,o=i.length-1;for(;s<=o;){const r=s+o>>1,n=t.fetchIfRef(i[r]),c=n.get("Limits");if(et.fetchIfRef(c[1]))){a=n;break}s=r+1}}if(s>o)return null}const i=a.get(this._type);if(Array.isArray(i)){let a=0,r=i.length-2;for(;a<=r;){const n=a+r>>1,s=n+(1&n),o=t.fetchIfRef(i[s]);if(eo))return t.fetchIfRef(i[s+1]);a=s+2}}}return null}}t.NameTree=class NameTree extends NameOrNumberTree{constructor(e,t){super(e,t,"Names")}};t.NumberTree=class NumberTree extends NameOrNumberTree{constructor(e,t){super(e,t,"Nums")}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.clearGlobalCaches=function clearGlobalCaches(){(0,r.clearPatternCaches)();(0,n.clearPrimitiveCaches)();(0,i.clearUnicodeCaches)()};var r=a(50),n=a(4),i=a(40)},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.FileSpec=void 0;var r=a(2),n=a(5),i=a(4);function pickPlatformItem(e){return e.has("UF")?e.get("UF"):e.has("F")?e.get("F"):e.has("Unix")?e.get("Unix"):e.has("Mac")?e.get("Mac"):e.has("DOS")?e.get("DOS"):null}t.FileSpec=class FileSpec{constructor(e,t){if(e instanceof i.Dict){this.xref=t;this.root=e;e.has("FS")&&(this.fs=e.get("FS"));this.description=e.has("Desc")?(0,r.stringToPDFString)(e.get("Desc")):"";e.has("RF")&&(0,r.warn)("Related file specifications are not supported");this.contentAvailable=!0;if(!e.has("EF")){this.contentAvailable=!1;(0,r.warn)("Non-embedded file specifications are not supported")}}}get filename(){if(!this._filename&&this.root){const e=pickPlatformItem(this.root)||"unnamed";this._filename=(0,r.stringToPDFString)(e).replaceAll("\\\\","\\").replaceAll("\\/","/").replaceAll("\\","/")}return this._filename}get content(){if(!this.contentAvailable)return null;!this.contentRef&&this.root&&(this.contentRef=pickPlatformItem(this.root.get("EF")));let e=null;if(this.contentRef){const t=this.xref.fetchIfRef(this.contentRef);t instanceof n.BaseStream?e=t.getBytes():(0,r.warn)("Embedded file specification points to non-existing/invalid content")}else(0,r.warn)("Embedded file specification does not have a content");return e}get serializable(){return{filename:this.filename,content:this.content}}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.MetadataParser=void 0;var r=a(71);t.MetadataParser=class MetadataParser{constructor(e){e=this._repair(e);const t=new r.SimpleXMLParser({lowerCaseName:!0}).parseFromString(e);this._metadataMap=new Map;this._data=e;t&&this._parse(t)}_repair(e){return e.replace(/^[^<]+/,"").replaceAll(/>\\376\\377([^<]+)/g,(function(e,t){const a=t.replaceAll(/\\([0-3])([0-7])([0-7])/g,(function(e,t,a,r){return String.fromCharCode(64*t+8*a+1*r)})).replaceAll(/&(amp|apos|gt|lt|quot);/g,(function(e,t){switch(t){case"amp":return"&";case"apos":return"'";case"gt":return">";case"lt":return"<";case"quot":return'"'}throw new Error(`_repair: ${t} isn't defined.`)})),r=[">"];for(let e=0,t=a.length;e=32&&t<127&&60!==t&&62!==t&&38!==t?r.push(String.fromCharCode(t)):r.push("&#x"+(65536+t).toString(16).substring(1)+";")}return r.join("")}))}_getSequence(e){const t=e.nodeName;return"rdf:bag"!==t&&"rdf:seq"!==t&&"rdf:alt"!==t?null:e.childNodes.filter((e=>"rdf:li"===e.nodeName))}_parseArray(e){if(!e.hasChildNodes())return;const[t]=e.childNodes,a=this._getSequence(t)||[];this._metadataMap.set(e.nodeName,a.map((e=>e.textContent.trim())))}_parse(e){let t=e.documentElement;if("rdf:rdf"!==t.nodeName){t=t.firstChild;for(;t&&"rdf:rdf"!==t.nodeName;)t=t.nextSibling}if(t&&"rdf:rdf"===t.nodeName&&t.hasChildNodes())for(const e of t.childNodes)if("rdf:description"===e.nodeName)for(const t of e.childNodes){const e=t.nodeName;switch(e){case"#text":continue;case"dc:creator":case"dc:subject":this._parseArray(t);continue}this._metadataMap.set(e,t.textContent.trim())}}get serializable(){return{parsedData:this._metadataMap,rawData:this._data}}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XMLParserErrorCode=t.XMLParserBase=t.SimpleXMLParser=t.SimpleDOMNode=void 0;var r=a(3);const n={NoError:0,EndOfDocument:-1,UnterminatedCdat:-2,UnterminatedXmlDeclaration:-3,UnterminatedDoctypeDeclaration:-4,UnterminatedComment:-5,MalformedElement:-6,OutOfMemory:-7,UnterminatedAttributeValue:-8,UnterminatedElement:-9,ElementNeverBegun:-10};t.XMLParserErrorCode=n;function isWhitespace(e,t){const a=e[t];return" "===a||"\n"===a||"\r"===a||"\t"===a}class XMLParserBase{_resolveEntities(e){return e.replaceAll(/&([^;]+);/g,((e,t)=>{if("#x"===t.substring(0,2))return String.fromCodePoint(parseInt(t.substring(2),16));if("#"===t.substring(0,1))return String.fromCodePoint(parseInt(t.substring(1),10));switch(t){case"lt":return"<";case"gt":return">";case"amp":return"&";case"quot":return'"';case"apos":return"'"}return this.onResolveEntity(t)}))}_parseContent(e,t){const a=[];let r=t;function skipWs(){for(;r"!==e[r]&&"/"!==e[r];)++r;const n=e.substring(t,r);skipWs();for(;r"!==e[r]&&"/"!==e[r]&&"?"!==e[r];){skipWs();let t="",n="";for(;r"!==e[a]&&"?"!==e[a]&&"/"!==e[a];)++a;const r=e.substring(t,a);!function skipWs(){for(;a"!==e[a+1]);)++a;return{name:r,value:e.substring(n,a),parsed:a-t}}parseXml(e){let t=0;for(;t",a);if(t<0){this.onError(n.UnterminatedElement);return}this.onEndElement(e.substring(a,t));a=t+1;break;case"?":++a;const r=this._parseProcessingInstruction(e,a);if("?>"!==e.substring(a+r.parsed,a+r.parsed+2)){this.onError(n.UnterminatedXmlDeclaration);return}this.onPi(r.name,r.value);a+=r.parsed+2;break;case"!":if("--"===e.substring(a+1,a+3)){t=e.indexOf("--\x3e",a+3);if(t<0){this.onError(n.UnterminatedComment);return}this.onComment(e.substring(a+3,t));a=t+3}else if("[CDATA["===e.substring(a+1,a+8)){t=e.indexOf("]]>",a+8);if(t<0){this.onError(n.UnterminatedCdat);return}this.onCdata(e.substring(a+8,t));a=t+3}else{if("DOCTYPE"!==e.substring(a+1,a+8)){this.onError(n.MalformedElement);return}{const r=e.indexOf("[",a+8);let i=!1;t=e.indexOf(">",a+8);if(t<0){this.onError(n.UnterminatedDoctypeDeclaration);return}if(r>0&&t>r){t=e.indexOf("]>",a+8);if(t<0){this.onError(n.UnterminatedDoctypeDeclaration);return}i=!0}const s=e.substring(a+8,t+(i?1:0));this.onDoctype(s);a=t+(i?2:1)}}break;default:const i=this._parseContent(e,a);if(null===i){this.onError(n.MalformedElement);return}let s=!1;if("/>"===e.substring(a+i.parsed,a+i.parsed+2))s=!0;else if(">"!==e.substring(a+i.parsed,a+i.parsed+1)){this.onError(n.UnterminatedElement);return}this.onBeginElement(i.name,i.attributes,s);a+=i.parsed+(s?2:1)}}else{for(;a0}searchNode(e,t){if(t>=e.length)return this;const a=e[t];if(a.name.startsWith("#")&&t0){r.push([n,0]);n=n.childNodes[0]}else{if(0===r.length)return null;for(;0!==r.length;){const[e,t]=r.pop(),a=t+1;if(a");for(const t of this.childNodes)t.dump(e);e.push(``)}else this.nodeValue?e.push(`>${(0,r.encodeToXmlString)(this.nodeValue)}`):e.push("/>")}else e.push((0,r.encodeToXmlString)(this.nodeValue))}}t.SimpleDOMNode=SimpleDOMNode;t.SimpleXMLParser=class SimpleXMLParser extends XMLParserBase{constructor({hasAttributes:e=!1,lowerCaseName:t=!1}){super();this._currentFragment=null;this._stack=null;this._errorCode=n.NoError;this._hasAttributes=e;this._lowerCaseName=t}parseFromString(e){this._currentFragment=[];this._stack=[];this._errorCode=n.NoError;this.parseXml(e);if(this._errorCode!==n.NoError)return;const[t]=this._currentFragment;return t?{documentElement:t}:void 0}onText(e){if(function isWhitespaceString(e){for(let t=0,a=e.length;t{Object.defineProperty(t,"__esModule",{value:!0});t.StructTreeRoot=t.StructTreePage=void 0;var r=a(2),n=a(4),i=a(67),s=a(73);const o=1,c=2,l=3,h=4,u=5;class StructTreeRoot{constructor(e,t){this.dict=e;this.ref=t instanceof n.Ref?t:null;this.roleMap=new Map;this.structParentIds=null}init(){this.readRoleMap()}#C(e,t,a){if(!(e instanceof n.Ref)||t<0)return;this.structParentIds||=new n.RefSetCache;let r=this.structParentIds.get(e);if(!r){r=[];this.structParentIds.put(e,r)}r.push([t,a])}addAnnotationIdToPage(e,t){this.#C(e,t,h)}readRoleMap(){const e=this.dict.get("RoleMap");e instanceof n.Dict&&e.forEach(((e,t)=>{t instanceof n.Name&&this.roleMap.set(e,t.name)}))}static async canCreateStructureTree({catalogRef:e,pdfManager:t,newAnnotationsByPage:a}){if(!(e instanceof n.Ref)){(0,r.warn)("Cannot save the struct tree: no catalog reference.");return!1}let i=0,s=!0;for(const[e,o]of a){const{ref:a}=await t.getPage(e);if(!(a instanceof n.Ref)){(0,r.warn)(`Cannot save the struct tree: page ${e} has no ref.`);s=!0;break}for(const e of o)if(e.accessibilityData?.type){e.parentTreeId=i++;s=!1}}if(s){for(const e of a.values())for(const t of e)delete t.parentTreeId;return!1}return!0}static async createStructureTree({newAnnotationsByPage:e,xref:t,catalogRef:a,pdfManager:r,newRefs:i}){const o=r.catalog.cloneDict(),c=t.getNewTemporaryRef();o.set("StructTreeRoot",c);const l=[];await(0,s.writeObject)(a,o,l,t);i.push({ref:a,data:l.join("")});const h=new n.Dict(t);h.set("Type",n.Name.get("StructTreeRoot"));const u=t.getNewTemporaryRef();h.set("ParentTree",u);const d=[];h.set("K",d);const f=new n.Dict(t),g=[];f.set("Nums",g);const p=await this.#k({newAnnotationsByPage:e,structTreeRootRef:c,kids:d,nums:g,xref:t,pdfManager:r,newRefs:i,buffer:l});h.set("ParentTreeNextKey",p);l.length=0;await(0,s.writeObject)(u,f,l,t);i.push({ref:u,data:l.join("")});l.length=0;await(0,s.writeObject)(c,h,l,t);i.push({ref:c,data:l.join("")})}async canUpdateStructTree({pdfManager:e,newAnnotationsByPage:t}){if(!this.ref){(0,r.warn)("Cannot update the struct tree: no root reference.");return!1}let a=this.dict.get("ParentTreeNextKey");if(!Number.isInteger(a)||a<0){(0,r.warn)("Cannot update the struct tree: invalid next key.");return!1}const i=this.dict.get("ParentTree");if(!(i instanceof n.Dict)){(0,r.warn)("Cannot update the struct tree: ParentTree isn't a dict.");return!1}const s=i.get("Nums");if(!Array.isArray(s)){(0,r.warn)("Cannot update the struct tree: nums isn't an array.");return!1}const{numPages:o}=e.catalog;for(const a of t.keys()){const{pageDict:t,ref:i}=await e.getPage(a);if(!(i instanceof n.Ref)){(0,r.warn)(`Cannot save the struct tree: page ${a} has no ref.`);return!1}const s=t.get("StructParents");if(!Number.isInteger(s)||s<0||s>=o){(0,r.warn)(`Cannot save the struct tree: page ${a} has no id.`);return!1}}let c=!0;for(const[r,n]of t){const{pageDict:t}=await e.getPage(r);StructTreeRoot.#v({elements:n,xref:this.dict.xref,pageDict:t,parentTree:i});for(const e of n)if(e.accessibilityData?.type){e.parentTreeId=a++;c=!1}}if(c){for(const e of t.values())for(const t of e){delete t.parentTreeId;delete t.structTreeParent}return!1}return!0}async updateStructureTree({newAnnotationsByPage:e,pdfManager:t,newRefs:a}){const r=this.dict.xref,i=this.dict.clone(),o=this.ref;let c,l=i.getRaw("ParentTree");if(l instanceof n.Ref)c=r.fetch(l);else{c=l;l=r.getNewTemporaryRef();i.set("ParentTree",l)}c=c.clone();let h=c.getRaw("Nums"),u=null;if(h instanceof n.Ref){u=h;h=r.fetch(u)}h=h.slice();u||c.set("Nums",h);let d=i.getRaw("K"),f=null;if(d instanceof n.Ref){f=d;d=r.fetch(f)}else{f=r.getNewTemporaryRef();i.set("K",f)}d=Array.isArray(d)?d.slice():[d];const g=[],p=await StructTreeRoot.#k({newAnnotationsByPage:e,structTreeRootRef:o,kids:d,nums:h,xref:r,pdfManager:t,newRefs:a,buffer:g});i.set("ParentTreeNextKey",p);g.length=0;await(0,s.writeObject)(f,d,g,r);a.push({ref:f,data:g.join("")});if(u){g.length=0;await(0,s.writeObject)(u,h,g,r);a.push({ref:u,data:g.join("")})}g.length=0;await(0,s.writeObject)(l,c,g,r);a.push({ref:l,data:g.join("")});g.length=0;await(0,s.writeObject)(o,i,g,r);a.push({ref:o,data:g.join("")})}static async#k({newAnnotationsByPage:e,structTreeRootRef:t,kids:a,nums:r,xref:i,pdfManager:o,newRefs:c,buffer:l}){const h=n.Name.get("OBJR");let u=-1/0;for(const[d,f]of e){const{ref:e}=await o.getPage(d);for(const{accessibilityData:{type:o,title:d,lang:g,alt:p,expanded:m,actualText:b},ref:y,parentTreeId:w,structTreeParent:S}of f){u=Math.max(u,w);const f=i.getNewTemporaryRef(),x=new n.Dict(i);x.set("S",n.Name.get(o));d&&x.set("T",d);g&&x.set("Lang",g);p&&x.set("Alt",p);m&&x.set("E",m);b&&x.set("ActualText",b);S?await this.#F({structTreeParent:S,tagDict:x,newTagRef:f,fallbackRef:t,xref:i,newRefs:c,buffer:l}):x.set("P",t);const C=new n.Dict(i);x.set("K",C);C.set("Type",h);C.set("Pg",e);C.set("Obj",y);l.length=0;await(0,s.writeObject)(f,x,l,i);c.push({ref:f,data:l.join("")});r.push(w,f);a.push(f)}}return u+1}static#v({elements:e,xref:t,pageDict:a,parentTree:r}){const s=new Map;for(const t of e)if(t.structTreeParentId){const e=parseInt(t.structTreeParentId.split("_mc")[1],10);s.set(e,t)}const o=a.get("StructParents"),c=new i.NumberTree(r,t).get(o);if(!Array.isArray(c))return;const updateElement=(e,a,r)=>{const i=s.get(e);if(i){const e=a.getRaw("P"),s=t.fetchIfRef(e);e instanceof n.Ref&&s instanceof n.Dict&&(i.structTreeParent={ref:r,dict:a});return!0}return!1};for(const e of c){if(!(e instanceof n.Ref))continue;const a=t.fetch(e),r=a.get("K");if(Number.isInteger(r))updateElement(r,a,e);else if(Array.isArray(r))for(let n of r){n=t.fetchIfRef(n);if(Number.isInteger(n)&&updateElement(n,a,e))break}}}static async#F({structTreeParent:{ref:e,dict:t},tagDict:a,newTagRef:i,fallbackRef:o,xref:c,newRefs:l,buffer:h}){const u=t.getRaw("P");let d=c.fetchIfRef(u);a.set("P",u);let f,g=!1,p=d.getRaw("K");if(p instanceof n.Ref)f=c.fetch(p);else{f=p;p=c.getNewTemporaryRef();d=d.clone();d.set("K",p);g=!0}if(Array.isArray(f)){const t=f.indexOf(e);if(!(t>=0)){(0,r.warn)("Cannot update the struct tree: parent kid not found.");a.set("P",o);return}f=f.slice();f.splice(t+1,0,i)}else if(f instanceof n.Dict){f=[p,i];p=c.getNewTemporaryRef();d.set("K",p);g=!0}h.length=0;await(0,s.writeObject)(p,f,h,c);l.push({ref:p,data:h.join("")});if(g){h.length=0;await(0,s.writeObject)(u,d,h,c);l.push({ref:u,data:h.join("")})}}}t.StructTreeRoot=StructTreeRoot;class StructElementNode{constructor(e,t){this.tree=e;this.dict=t;this.kids=[];this.parseKids()}get role(){const e=this.dict.get("S"),t=e instanceof n.Name?e.name:"",{root:a}=this.tree;return a.roleMap.has(t)?a.roleMap.get(t):t}parseKids(){let e=null;const t=this.dict.getRaw("Pg");t instanceof n.Ref&&(e=t.toString());const a=this.dict.get("K");if(Array.isArray(a))for(const t of a){const a=this.parseKid(e,t);a&&this.kids.push(a)}else{const t=this.parseKid(e,a);t&&this.kids.push(t)}}parseKid(e,t){if(Number.isInteger(t))return this.tree.pageDict.objId!==e?null:new StructElement({type:o,mcid:t,pageObjId:e});let a=null;t instanceof n.Ref?a=this.dict.xref.fetch(t):t instanceof n.Dict&&(a=t);if(!a)return null;const r=a.getRaw("Pg");r instanceof n.Ref&&(e=r.toString());const i=a.get("Type")instanceof n.Name?a.get("Type").name:null;if("MCR"===i){if(this.tree.pageDict.objId!==e)return null;const t=a.getRaw("Stm");return new StructElement({type:c,refObjId:t instanceof n.Ref?t.toString():null,pageObjId:e,mcid:a.get("MCID")})}if("OBJR"===i){if(this.tree.pageDict.objId!==e)return null;const t=a.getRaw("Obj");return new StructElement({type:l,refObjId:t instanceof n.Ref?t.toString():null,pageObjId:e})}return new StructElement({type:u,dict:a})}}class StructElement{constructor({type:e,dict:t=null,mcid:a=null,pageObjId:r=null,refObjId:n=null}){this.type=e;this.dict=t;this.mcid=a;this.pageObjId=r;this.refObjId=n;this.parentNode=null}}t.StructTreePage=class StructTreePage{constructor(e,t){this.root=e;this.rootDict=e?e.dict:null;this.pageDict=t;this.nodes=[]}parse(e){if(!this.root||!this.rootDict)return;const t=this.rootDict.get("ParentTree");if(!t)return;const a=this.pageDict.get("StructParents"),r=e instanceof n.Ref&&this.root.structParentIds?.get(e);if(!Number.isInteger(a)&&!r)return;const s=new Map,o=new i.NumberTree(t,this.rootDict.xref);if(Number.isInteger(a)){const e=o.get(a);if(Array.isArray(e))for(const t of e)t instanceof n.Ref&&this.addNode(this.rootDict.xref.fetch(t),s)}if(r)for(const[e,t]of r){const a=o.get(e);if(a){const e=this.addNode(this.rootDict.xref.fetchIfRef(a),s);1===e?.kids?.length&&e.kids[0].type===l&&(e.kids[0].type=t)}}}addNode(e,t,a=0){if(a>40){(0,r.warn)("StructTree MAX_DEPTH reached.");return null}if(t.has(e))return t.get(e);const i=new StructElementNode(this,e);t.set(e,i);const s=e.get("P");if(!s||(0,n.isName)(s.get("Type"),"StructTreeRoot")){this.addTopLevelNode(e,i)||t.delete(e);return i}const o=this.addNode(s,t,a+1);if(!o)return i;let c=!1;for(const t of o.kids)if(t.type===u&&t.dict===e){t.parentNode=i;c=!0}c||t.delete(e);return i}addTopLevelNode(e,t){const a=this.rootDict.get("K");if(!a)return!1;if(a instanceof n.Dict){if(a.objId!==e.objId)return!1;this.nodes[0]=t;return!0}if(!Array.isArray(a))return!0;let r=!1;for(let n=0;n40){(0,r.warn)("StructTree too deep to be fully serialized.");return}const n=Object.create(null);n.role=e.role;n.children=[];t.children.push(n);const i=e.dict.get("Alt");"string"==typeof i&&(n.alt=(0,r.stringToPDFString)(i));const s=e.dict.get("Lang");"string"==typeof s&&(n.lang=(0,r.stringToPDFString)(s));for(const t of e.kids){const e=t.type===u?t.parentNode:null;e?nodeToSerializable(e,n,a+1):t.type===o||t.type===c?n.children.push({type:"content",id:`p${t.pageObjId}_mc${t.mcid}`}):t.type===l?n.children.push({type:"object",id:t.refObjId}):t.type===h&&n.children.push({type:"annotation",id:`${r.AnnotationPrefix}${t.refObjId}`})}}const e=Object.create(null);e.children=[];e.role="Root";for(const t of this.nodes)t&&nodeToSerializable(t,e);return e}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.incrementalUpdate=async function incrementalUpdate({originalData:e,xrefInfo:t,newRefs:a,xref:o=null,hasXfa:l=!1,xfaDatasetsRef:h=null,hasXfaDatasetsEntry:u=!1,needAppearances:d,acroFormRef:f=null,acroForm:g=null,xfaData:p=null}){await async function updateAcroform({xref:e,acroForm:t,acroFormRef:a,hasXfa:n,hasXfaDatasetsEntry:i,xfaDatasetsRef:s,needAppearances:o,newRefs:c}){!n||i||s||(0,r.warn)("XFA - Cannot save it");if(!o&&(!n||!s||i))return;const l=t.clone();if(n&&!i){const e=t.get("XFA").slice();e.splice(2,0,"datasets");e.splice(3,0,s);l.set("XFA",e)}o&&l.set("NeedAppearances",!0);const h=[];await writeObject(a,l,h,e);c.push({ref:a,data:h.join("")})}({xref:o,acroForm:g,acroFormRef:f,hasXfa:l,hasXfaDatasetsEntry:u,xfaDatasetsRef:h,needAppearances:d,newRefs:a});l&&function updateXFA({xfaData:e,xfaDatasetsRef:t,newRefs:a,xref:n}){if(null===e){e=function writeXFADataForAcroform(e,t){const a=new s.SimpleXMLParser({hasAttributes:!0}).parseFromString(e);for(const{xfa:e}of t){if(!e)continue;const{path:t,value:n}=e;if(!t)continue;const o=(0,i.parseXFAPath)(t);let c=a.documentElement.searchNode(o,0);!c&&o.length>1&&(c=a.documentElement.searchNode([o.at(-1)],0));c?c.childNodes=Array.isArray(n)?n.map((e=>new s.SimpleDOMNode("value",e))):[new s.SimpleDOMNode("#text",n)]:(0,r.warn)(`Node not found for path: ${t}`)}const n=[];a.documentElement.dump(n);return n.join("")}(n.fetchIfRef(t).getString(),a)}const o=n.encrypt;if(o){e=o.createCipherTransform(t.num,t.gen).encryptString(e)}const c=`${t.num} ${t.gen} obj\n<< /Type /EmbeddedFile /Length ${e.length}>>\nstream\n`+e+"\nendstream\nendobj\n";a.push({ref:t,data:c})}({xfaData:p,xfaDatasetsRef:h,newRefs:a,xref:o});const m=new n.Dict(null),b=t.newRef;let y,w;const S=e.at(-1);if(10===S||13===S){y=[];w=e.length}else{y=["\n"];w=e.length+1}m.set("Size",b.num+1);m.set("Prev",t.startXRef);m.set("Type",n.Name.get("XRef"));null!==t.rootRef&&m.set("Root",t.rootRef);null!==t.infoRef&&m.set("Info",t.infoRef);null!==t.encryptRef&&m.set("Encrypt",t.encryptRef);a.push({ref:b,data:""});a=a.sort(((e,t)=>e.ref.num-t.ref.num));const x=[[0,1,65535]],C=[0,1];let k=0;for(const{ref:e,data:t}of a){k=Math.max(k,w);x.push([1,w,Math.min(e.gen,65535)]);w+=t.length;C.push(e.num,1);y.push(t)}m.set("Index",C);if(Array.isArray(t.fileIds)&&t.fileIds.length>0){const e=function computeMD5(e,t){const a=Math.floor(Date.now()/1e3),n=t.filename||"",i=[a.toString(),n,e.toString()];let s=i.reduce(((e,t)=>e+t.length),0);for(const e of Object.values(t.info)){i.push(e);s+=e.length}const o=new Uint8Array(s);let l=0;for(const e of i){writeString(e,l,o);l+=e.length}return(0,r.bytesToString)((0,c.calculateMD5)(o))}(w,t);m.set("ID",[t.fileIds[0],e])}const v=[1,Math.ceil(Math.log2(k)/8),2],F=(v[0]+v[1]+v[2])*x.length;m.set("W",v);m.set("Length",F);y.push(`${b.num} ${b.gen} obj\n`);await writeDict(m,y,null);y.push(" stream\n");const O=y.reduce(((e,t)=>e+t.length),0),T=`\nendstream\nendobj\nstartxref\n${w}\n%%EOF\n`,M=new Uint8Array(e.length+O+F+T.length);M.set(e);let D=e.length;for(const e of y){writeString(e,D,M);D+=e.length}for(const[e,t,a]of x){D=writeInt(e,v[0],D,M);D=writeInt(t,v[1],D,M);D=writeInt(a,v[2],D,M)}writeString(T,D,M);return M};t.writeDict=writeDict;t.writeObject=writeObject;var r=a(2),n=a(4),i=a(3),s=a(71),o=a(5),c=a(74);async function writeObject(e,t,a,{encrypt:r=null}){const i=r?.createCipherTransform(e.num,e.gen);a.push(`${e.num} ${e.gen} obj\n`);t instanceof n.Dict?await writeDict(t,a,i):t instanceof o.BaseStream?await writeStream(t,a,i):Array.isArray(t)&&await writeArray(t,a,i);a.push("\nendobj\n")}async function writeDict(e,t,a){t.push("<<");for(const r of e.getKeys()){t.push(` /${(0,i.escapePDFName)(r)} `);await writeValue(e.getRaw(r),t,a)}t.push(">>")}async function writeStream(e,t,a){let i=e.getString();const{dict:s}=e,[o,c]=await Promise.all([s.getAsync("Filter"),s.getAsync("DecodeParms")]),l=Array.isArray(o)?await s.xref.fetchIfRefAsync(o[0]):o,h=(0,n.isName)(l,"FlateDecode");if("undefined"!=typeof CompressionStream&&(i.length>=256||h))try{const e=(0,r.stringToBytes)(i),t=new CompressionStream("deflate"),a=t.writable.getWriter();a.write(e);a.close();const l=await new Response(t.readable).arrayBuffer();i=(0,r.bytesToString)(new Uint8Array(l));let u,d;if(o){if(!h){u=Array.isArray(o)?[n.Name.get("FlateDecode"),...o]:[n.Name.get("FlateDecode"),o];c&&(d=Array.isArray(c)?[null,...c]:[null,c])}}else u=n.Name.get("FlateDecode");u&&s.set("Filter",u);d&&s.set("DecodeParms",d)}catch(e){(0,r.info)(`writeStream - cannot compress data: "${e}".`)}a&&(i=a.encryptString(i));s.set("Length",i.length);await writeDict(s,t,a);t.push(" stream\n",i,"\nendstream")}async function writeArray(e,t,a){t.push("[");let r=!0;for(const n of e){r?r=!1:t.push(" ");await writeValue(n,t,a)}t.push("]")}async function writeValue(e,t,a){if(e instanceof n.Name)t.push(`/${(0,i.escapePDFName)(e.name)}`);else if(e instanceof n.Ref)t.push(`${e.num} ${e.gen} R`);else if(Array.isArray(e))await writeArray(e,t,a);else if("string"==typeof e){a&&(e=a.encryptString(e));t.push(`(${(0,i.escapeString)(e)})`)}else"number"==typeof e?t.push((0,i.numberToString)(e)):"boolean"==typeof e?t.push(e.toString()):e instanceof n.Dict?await writeDict(e,t,a):e instanceof o.BaseStream?await writeStream(e,t,a):null===e?t.push("null"):(0,r.warn)(`Unhandled value in writer: ${typeof e}, please file a bug.`)}function writeInt(e,t,a,r){for(let n=t+a-1;n>a-1;n--){r[n]=255&e;e>>=8}return a+t}function writeString(e,t,a){for(let r=0,n=e.length;r{Object.defineProperty(t,"__esModule",{value:!0});t.calculateSHA256=t.calculateMD5=t.PDF20=t.PDF17=t.CipherTransformFactory=t.ARCFourCipher=t.AES256Cipher=t.AES128Cipher=void 0;t.calculateSHA384=calculateSHA384;t.calculateSHA512=void 0;var r=a(2),n=a(4),i=a(75);class ARCFourCipher{constructor(e){this.a=0;this.b=0;const t=new Uint8Array(256),a=e.length;for(let e=0;e<256;++e)t[e]=e;for(let r=0,n=0;r<256;++r){const i=t[r];n=n+i+e[r%a]&255;t[r]=t[n];t[n]=i}this.s=t}encryptBlock(e){let t=this.a,a=this.b;const r=this.s,n=e.length,i=new Uint8Array(n);for(let s=0;s>5&255;h[u++]=n>>13&255;h[u++]=n>>21&255;h[u++]=n>>>29&255;h[u++]=0;h[u++]=0;h[u++]=0;const g=new Int32Array(16);for(u=0;u>>32-o)|0;n=i}i=i+n|0;s=s+l|0;o=o+f|0;c=c+p|0}return new Uint8Array([255&i,i>>8&255,i>>16&255,i>>>24&255,255&s,s>>8&255,s>>16&255,s>>>24&255,255&o,o>>8&255,o>>16&255,o>>>24&255,255&c,c>>8&255,c>>16&255,c>>>24&255])}}();t.calculateMD5=s;class Word64{constructor(e,t){this.high=0|e;this.low=0|t}and(e){this.high&=e.high;this.low&=e.low}xor(e){this.high^=e.high;this.low^=e.low}or(e){this.high|=e.high;this.low|=e.low}shiftRight(e){if(e>=32){this.low=this.high>>>e-32|0;this.high=0}else{this.low=this.low>>>e|this.high<<32-e;this.high=this.high>>>e|0}}shiftLeft(e){if(e>=32){this.high=this.low<>>32-e;this.low<<=e}}rotateRight(e){let t,a;if(32&e){a=this.low;t=this.high}else{t=this.low;a=this.high}e&=31;this.low=t>>>e|a<<32-e;this.high=a>>>e|t<<32-e}not(){this.high=~this.high;this.low=~this.low}add(e){const t=(this.low>>>0)+(e.low>>>0);let a=(this.high>>>0)+(e.high>>>0);t>4294967295&&(a+=1);this.low=0|t;this.high=0|a}copyTo(e,t){e[t]=this.high>>>24&255;e[t+1]=this.high>>16&255;e[t+2]=this.high>>8&255;e[t+3]=255&this.high;e[t+4]=this.low>>>24&255;e[t+5]=this.low>>16&255;e[t+6]=this.low>>8&255;e[t+7]=255&this.low}assign(e){this.high=e.high;this.low=e.low}}const o=function calculateSHA256Closure(){function rotr(e,t){return e>>>t|e<<32-t}function ch(e,t,a){return e&t^~e&a}function maj(e,t,a){return e&t^e&a^t&a}function sigma(e){return rotr(e,2)^rotr(e,13)^rotr(e,22)}function sigmaPrime(e){return rotr(e,6)^rotr(e,11)^rotr(e,25)}function littleSigma(e){return rotr(e,7)^rotr(e,18)^e>>>3}const e=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298];return function hash(t,a,r){let n=1779033703,i=3144134277,s=1013904242,o=2773480762,c=1359893119,l=2600822924,h=528734635,u=1541459225;const d=64*Math.ceil((r+9)/64),f=new Uint8Array(d);let g,p;for(g=0;g>>29&255;f[g++]=r>>21&255;f[g++]=r>>13&255;f[g++]=r>>5&255;f[g++]=r<<3&255;const b=new Uint32Array(64);for(g=0;g>>10)+b[p-7]+littleSigma(b[p-15])+b[p-16]|0;let t,a,r=n,d=i,m=s,w=o,S=c,x=l,C=h,k=u;for(p=0;p<64;++p){t=k+sigmaPrime(S)+ch(S,x,C)+e[p]+b[p];a=sigma(r)+maj(r,d,m);k=C;C=x;x=S;S=w+t|0;w=m;m=d;d=r;r=t+a|0}n=n+r|0;i=i+d|0;s=s+m|0;o=o+w|0;c=c+S|0;l=l+x|0;h=h+C|0;u=u+k|0}var y;return new Uint8Array([n>>24&255,n>>16&255,n>>8&255,255&n,i>>24&255,i>>16&255,i>>8&255,255&i,s>>24&255,s>>16&255,s>>8&255,255&s,o>>24&255,o>>16&255,o>>8&255,255&o,c>>24&255,c>>16&255,c>>8&255,255&c,l>>24&255,l>>16&255,l>>8&255,255&l,h>>24&255,h>>16&255,h>>8&255,255&h,u>>24&255,u>>16&255,u>>8&255,255&u])}}();t.calculateSHA256=o;const c=function calculateSHA512Closure(){function ch(e,t,a,r,n){e.assign(t);e.and(a);n.assign(t);n.not();n.and(r);e.xor(n)}function maj(e,t,a,r,n){e.assign(t);e.and(a);n.assign(t);n.and(r);e.xor(n);n.assign(a);n.and(r);e.xor(n)}function sigma(e,t,a){e.assign(t);e.rotateRight(28);a.assign(t);a.rotateRight(34);e.xor(a);a.assign(t);a.rotateRight(39);e.xor(a)}function sigmaPrime(e,t,a){e.assign(t);e.rotateRight(14);a.assign(t);a.rotateRight(18);e.xor(a);a.assign(t);a.rotateRight(41);e.xor(a)}function littleSigma(e,t,a){e.assign(t);e.rotateRight(1);a.assign(t);a.rotateRight(8);e.xor(a);a.assign(t);a.shiftRight(7);e.xor(a)}function littleSigmaPrime(e,t,a){e.assign(t);e.rotateRight(19);a.assign(t);a.rotateRight(61);e.xor(a);a.assign(t);a.shiftRight(6);e.xor(a)}const e=[new Word64(1116352408,3609767458),new Word64(1899447441,602891725),new Word64(3049323471,3964484399),new Word64(3921009573,2173295548),new Word64(961987163,4081628472),new Word64(1508970993,3053834265),new Word64(2453635748,2937671579),new Word64(2870763221,3664609560),new Word64(3624381080,2734883394),new Word64(310598401,1164996542),new Word64(607225278,1323610764),new Word64(1426881987,3590304994),new Word64(1925078388,4068182383),new Word64(2162078206,991336113),new Word64(2614888103,633803317),new Word64(3248222580,3479774868),new Word64(3835390401,2666613458),new Word64(4022224774,944711139),new Word64(264347078,2341262773),new Word64(604807628,2007800933),new Word64(770255983,1495990901),new Word64(1249150122,1856431235),new Word64(1555081692,3175218132),new Word64(1996064986,2198950837),new Word64(2554220882,3999719339),new Word64(2821834349,766784016),new Word64(2952996808,2566594879),new Word64(3210313671,3203337956),new Word64(3336571891,1034457026),new Word64(3584528711,2466948901),new Word64(113926993,3758326383),new Word64(338241895,168717936),new Word64(666307205,1188179964),new Word64(773529912,1546045734),new Word64(1294757372,1522805485),new Word64(1396182291,2643833823),new Word64(1695183700,2343527390),new Word64(1986661051,1014477480),new Word64(2177026350,1206759142),new Word64(2456956037,344077627),new Word64(2730485921,1290863460),new Word64(2820302411,3158454273),new Word64(3259730800,3505952657),new Word64(3345764771,106217008),new Word64(3516065817,3606008344),new Word64(3600352804,1432725776),new Word64(4094571909,1467031594),new Word64(275423344,851169720),new Word64(430227734,3100823752),new Word64(506948616,1363258195),new Word64(659060556,3750685593),new Word64(883997877,3785050280),new Word64(958139571,3318307427),new Word64(1322822218,3812723403),new Word64(1537002063,2003034995),new Word64(1747873779,3602036899),new Word64(1955562222,1575990012),new Word64(2024104815,1125592928),new Word64(2227730452,2716904306),new Word64(2361852424,442776044),new Word64(2428436474,593698344),new Word64(2756734187,3733110249),new Word64(3204031479,2999351573),new Word64(3329325298,3815920427),new Word64(3391569614,3928383900),new Word64(3515267271,566280711),new Word64(3940187606,3454069534),new Word64(4118630271,4000239992),new Word64(116418474,1914138554),new Word64(174292421,2731055270),new Word64(289380356,3203993006),new Word64(460393269,320620315),new Word64(685471733,587496836),new Word64(852142971,1086792851),new Word64(1017036298,365543100),new Word64(1126000580,2618297676),new Word64(1288033470,3409855158),new Word64(1501505948,4234509866),new Word64(1607167915,987167468),new Word64(1816402316,1246189591)];return function hash(t,a,r,n=!1){let i,s,o,c,l,h,u,d;if(n){i=new Word64(3418070365,3238371032);s=new Word64(1654270250,914150663);o=new Word64(2438529370,812702999);c=new Word64(355462360,4144912697);l=new Word64(1731405415,4290775857);h=new Word64(2394180231,1750603025);u=new Word64(3675008525,1694076839);d=new Word64(1203062813,3204075428)}else{i=new Word64(1779033703,4089235720);s=new Word64(3144134277,2227873595);o=new Word64(1013904242,4271175723);c=new Word64(2773480762,1595750129);l=new Word64(1359893119,2917565137);h=new Word64(2600822924,725511199);u=new Word64(528734635,4215389547);d=new Word64(1541459225,327033209)}const f=128*Math.ceil((r+17)/128),g=new Uint8Array(f);let p,m;for(p=0;p>>29&255;g[p++]=r>>21&255;g[p++]=r>>13&255;g[p++]=r>>5&255;g[p++]=r<<3&255;const y=new Array(80);for(p=0;p<80;p++)y[p]=new Word64(0,0);let w=new Word64(0,0),S=new Word64(0,0),x=new Word64(0,0),C=new Word64(0,0),k=new Word64(0,0),v=new Word64(0,0),F=new Word64(0,0),O=new Word64(0,0);const T=new Word64(0,0),M=new Word64(0,0),D=new Word64(0,0),E=new Word64(0,0);let N,R;for(p=0;p=1;--e){a=i[13];i[13]=i[9];i[9]=i[5];i[5]=i[1];i[1]=a;a=i[14];r=i[10];i[14]=i[6];i[10]=i[2];i[6]=a;i[2]=r;a=i[15];r=i[11];n=i[7];i[15]=i[3];i[11]=a;i[7]=r;i[3]=n;for(let e=0;e<16;++e)i[e]=this._inv_s[i[e]];for(let a=0,r=16*e;a<16;++a,++r)i[a]^=t[r];for(let e=0;e<16;e+=4){const t=this._mix[i[e]],r=this._mix[i[e+1]],n=this._mix[i[e+2]],s=this._mix[i[e+3]];a=t^r>>>8^r<<24^n>>>16^n<<16^s>>>24^s<<8;i[e]=a>>>24&255;i[e+1]=a>>16&255;i[e+2]=a>>8&255;i[e+3]=255&a}}a=i[13];i[13]=i[9];i[9]=i[5];i[5]=i[1];i[1]=a;a=i[14];r=i[10];i[14]=i[6];i[10]=i[2];i[6]=a;i[2]=r;a=i[15];r=i[11];n=i[7];i[15]=i[3];i[11]=a;i[7]=r;i[3]=n;for(let e=0;e<16;++e){i[e]=this._inv_s[i[e]];i[e]^=t[e]}return i}_encrypt(e,t){const a=this._s;let r,n,i;const s=new Uint8Array(16);s.set(e);for(let e=0;e<16;++e)s[e]^=t[e];for(let e=1;e=r;--a)if(e[a]!==t){t=0;break}o-=t;i[i.length-1]=e.subarray(0,16-t)}}const c=new Uint8Array(o);for(let e=0,t=0,a=i.length;e=256&&(o=255&(27^o))}for(let t=0;t<4;++t){a[e]=r^=a[e-32];e++;a[e]=n^=a[e-32];e++;a[e]=i^=a[e-32];e++;a[e]=s^=a[e-32];e++}}return a}}t.AES256Cipher=AES256Cipher;class PDF17{checkOwnerPassword(e,t,a,n){const i=new Uint8Array(e.length+56);i.set(e,0);i.set(t,e.length);i.set(a,e.length+t.length);const s=o(i,0,i.length);return(0,r.isArrayEqual)(s,n)}checkUserPassword(e,t,a){const n=new Uint8Array(e.length+8);n.set(e,0);n.set(t,e.length);const i=o(n,0,n.length);return(0,r.isArrayEqual)(i,a)}getOwnerKey(e,t,a,r){const n=new Uint8Array(e.length+56);n.set(e,0);n.set(t,e.length);n.set(a,e.length+t.length);const i=o(n,0,n.length);return new AES256Cipher(i).decryptBlock(r,!1,new Uint8Array(16))}getUserKey(e,t,a){const r=new Uint8Array(e.length+8);r.set(e,0);r.set(t,e.length);const n=o(r,0,r.length);return new AES256Cipher(n).decryptBlock(a,!1,new Uint8Array(16))}}t.PDF17=PDF17;class PDF20{_hash(e,t,a){let r=o(t,0,t.length).subarray(0,32),n=[0],i=0;for(;i<64||n.at(-1)>i-32;){const t=e.length+r.length+a.length,s=new Uint8Array(t);let l=0;s.set(e,l);l+=e.length;s.set(r,l);l+=r.length;s.set(a,l);const h=new Uint8Array(64*t);for(let e=0,a=0;e<64;e++,a+=t)h.set(s,a);n=new AES128Cipher(r.subarray(0,16)).encrypt(h,r.subarray(16,32));const u=n.slice(0,16).reduce(((e,t)=>e+t),0)%3;0===u?r=o(n,0,n.length):1===u?r=calculateSHA384(n,0,n.length):2===u&&(r=c(n,0,n.length));i++}return r.subarray(0,32)}checkOwnerPassword(e,t,a,n){const i=new Uint8Array(e.length+56);i.set(e,0);i.set(t,e.length);i.set(a,e.length+t.length);const s=this._hash(e,i,a);return(0,r.isArrayEqual)(s,n)}checkUserPassword(e,t,a){const n=new Uint8Array(e.length+8);n.set(e,0);n.set(t,e.length);const i=this._hash(e,n,[]);return(0,r.isArrayEqual)(i,a)}getOwnerKey(e,t,a,r){const n=new Uint8Array(e.length+56);n.set(e,0);n.set(t,e.length);n.set(a,e.length+t.length);const i=this._hash(e,n,a);return new AES256Cipher(i).decryptBlock(r,!1,new Uint8Array(16))}getUserKey(e,t,a){const r=new Uint8Array(e.length+8);r.set(e,0);r.set(t,e.length);const n=this._hash(e,r,[]);return new AES256Cipher(n).decryptBlock(a,!1,new Uint8Array(16))}}t.PDF20=PDF20;class CipherTransform{constructor(e,t){this.StringCipherConstructor=e;this.StreamCipherConstructor=t}createStream(e,t){const a=new this.StreamCipherConstructor;return new i.DecryptStream(e,t,(function cipherTransformDecryptStream(e,t){return a.decryptBlock(e,t)}))}decryptString(e){const t=new this.StringCipherConstructor;let a=(0,r.stringToBytes)(e);a=t.decryptBlock(a,!0);return(0,r.bytesToString)(a)}encryptString(e){const t=new this.StringCipherConstructor;if(t instanceof AESBaseCipher){const a=16-e.length%16;e+=String.fromCharCode(a).repeat(a);const n=new Uint8Array(16);if("undefined"!=typeof crypto)crypto.getRandomValues(n);else for(let e=0;e<16;e++)n[e]=Math.floor(256*Math.random());let i=(0,r.stringToBytes)(e);i=t.encrypt(i,n);const s=new Uint8Array(16+i.length);s.set(n);s.set(i,16);return(0,r.bytesToString)(s)}let a=(0,r.stringToBytes)(e);a=t.encrypt(a);return(0,r.bytesToString)(a)}}class CipherTransformFactory{static#O=new Uint8Array([40,191,78,94,78,117,138,65,100,0,78,86,255,250,1,8,46,46,0,182,208,104,62,128,47,12,169,254,100,83,105,122]);#I(e,t,a,r,n,i,s,o,c,l,h,u){if(t){const e=Math.min(127,t.length);t=t.subarray(0,e)}else t=[];const d=6===e?new PDF20:new PDF17;return d.checkUserPassword(t,o,s)?d.getUserKey(t,c,h):t.length&&d.checkOwnerPassword(t,r,i,a)?d.getOwnerKey(t,n,i,l):null}#T(e,t,a,r,n,i,o,c){const l=40+a.length+e.length,h=new Uint8Array(l);let u,d,f=0;if(t){d=Math.min(32,t.length);for(;f>8&255;h[f++]=n>>16&255;h[f++]=n>>>24&255;for(u=0,d=e.length;u=4&&!c){h[f++]=255;h[f++]=255;h[f++]=255;h[f++]=255}let g=s(h,0,f);const p=o>>3;if(i>=3)for(u=0;u<50;++u)g=s(g,0,p);const m=g.subarray(0,p);let b,y;if(i>=3){for(f=0;f<32;++f)h[f]=CipherTransformFactory.#O[f];for(u=0,d=e.length;u>3;if(a>=3)for(c=0;c<50;++c)l=s(l,0,l.length);let u,d;if(a>=3){d=t;const e=new Uint8Array(h);for(c=19;c>=0;c--){for(let t=0;t>8&255;n[o++]=e>>16&255;n[o++]=255&t;n[o++]=t>>8&255;if(r){n[o++]=115;n[o++]=65;n[o++]=108;n[o++]=84}return s(n,0,o).subarray(0,Math.min(a.length+5,16))}#D(e,t,a,i,s){if(!(t instanceof n.Name))throw new r.FormatError("Invalid crypt filter name.");const o=this,c=e.get(t.name),l=c?.get("CFM");if(!l||"None"===l.name)return function(){return new NullCipher};if("V2"===l.name)return function(){return new ARCFourCipher(o.#P(a,i,s,!1))};if("AESV2"===l.name)return function(){return new AES128Cipher(o.#P(a,i,s,!0))};if("AESV3"===l.name)return function(){return new AES256Cipher(s)};throw new r.FormatError("Unknown crypto method")}constructor(e,t,a){const i=e.get("Filter");if(!(0,n.isName)(i,"Standard"))throw new r.FormatError("unknown encryption method");this.filterName=i.name;this.dict=e;const s=e.get("V");if(!Number.isInteger(s)||1!==s&&2!==s&&4!==s&&5!==s)throw new r.FormatError("unsupported encryption algorithm");this.algorithm=s;let o=e.get("Length");if(!o)if(s<=3)o=40;else{const t=e.get("CF"),a=e.get("StmF");if(t instanceof n.Dict&&a instanceof n.Name){t.suppressEncryption=!0;const e=t.get(a.name);o=e?.get("Length")||128;o<40&&(o<<=3)}}if(!Number.isInteger(o)||o<40||o%8!=0)throw new r.FormatError("invalid key length");const c=(0,r.stringToBytes)(e.get("O")),l=(0,r.stringToBytes)(e.get("U")),h=c.subarray(0,32),u=l.subarray(0,32),d=e.get("P"),f=e.get("R"),g=(4===s||5===s)&&!1!==e.get("EncryptMetadata");this.encryptMetadata=g;const p=(0,r.stringToBytes)(t);let m,b;if(a){if(6===f)try{a=(0,r.utf8StringToString)(a)}catch{(0,r.warn)("CipherTransformFactory: Unable to convert UTF8 encoded password.")}m=(0,r.stringToBytes)(a)}if(5!==s)b=this.#T(p,m,h,u,d,f,o,g);else{const t=c.subarray(32,40),a=c.subarray(40,48),n=l.subarray(0,48),i=l.subarray(32,40),s=l.subarray(40,48),o=(0,r.stringToBytes)(e.get("OE")),d=(0,r.stringToBytes)(e.get("UE")),g=(0,r.stringToBytes)(e.get("Perms"));b=this.#I(f,m,h,t,a,n,u,i,s,o,d,g)}if(!b&&!a)throw new r.PasswordException("No password given",r.PasswordResponses.NEED_PASSWORD);if(!b&&a){const e=this.#M(m,h,f,o);b=this.#T(p,e,h,u,d,f,o,g)}if(!b)throw new r.PasswordException("Incorrect Password",r.PasswordResponses.INCORRECT_PASSWORD);this.encryptionKey=b;if(s>=4){const t=e.get("CF");t instanceof n.Dict&&(t.suppressEncryption=!0);this.cf=t;this.stmf=e.get("StmF")||n.Name.get("Identity");this.strf=e.get("StrF")||n.Name.get("Identity");this.eff=e.get("EFF")||this.stmf}}createCipherTransform(e,t){if(4===this.algorithm||5===this.algorithm)return new CipherTransform(this.#D(this.cf,this.strf,e,t,this.encryptionKey),this.#D(this.cf,this.stmf,e,t,this.encryptionKey));const a=this.#P(e,t,this.encryptionKey,!1),cipherConstructor=function(){return new ARCFourCipher(a)};return new CipherTransform(cipherConstructor,cipherConstructor)}}t.CipherTransformFactory=CipherTransformFactory},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.DecryptStream=void 0;var r=a(18);class DecryptStream extends r.DecodeStream{constructor(e,t,a){super(t);this.str=e;this.dict=e.dict;this.decrypt=a;this.nextChunk=null;this.initialized=!1}readBlock(){let e;if(this.initialized)e=this.nextChunk;else{e=this.str.getBytes(512);this.initialized=!0}if(!e||0===e.length){this.eof=!0;return}this.nextChunk=this.str.getBytes(512);const t=this.nextChunk?.length>0;e=(0,this.decrypt)(e,!t);const a=this.bufferLength,r=a+e.length;this.ensureBuffer(r).set(e,a);this.bufferLength=r}}t.DecryptStream=DecryptStream},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ObjectLoader=void 0;var r=a(4),n=a(5),i=a(3),s=a(2);function addChildren(e,t){if(e instanceof r.Dict)e=e.getRawValues();else if(e instanceof n.BaseStream)e=e.dict.getRawValues();else if(!Array.isArray(e))return;for(const i of e)((a=i)instanceof r.Ref||a instanceof r.Dict||a instanceof n.BaseStream||Array.isArray(a))&&t.push(i);var a}t.ObjectLoader=class ObjectLoader{constructor(e,t,a){this.dict=e;this.keys=t;this.xref=a;this.refSet=null}async load(){if(this.xref.stream.isDataLoaded)return;const{keys:e,dict:t}=this;this.refSet=new r.RefSet;const a=[];for(const r of e){const e=t.getRaw(r);void 0!==e&&a.push(e)}return this._walk(a)}async _walk(e){const t=[],a=[];for(;e.length;){let o=e.pop();if(o instanceof r.Ref){if(this.refSet.has(o))continue;try{this.refSet.put(o);o=this.xref.fetch(o)}catch(e){if(!(e instanceof i.MissingDataException)){(0,s.warn)(`ObjectLoader._walk - requesting all data: "${e}".`);this.refSet=null;const{manager:t}=this.xref.stream;return t.requestAllChunks()}t.push(o);a.push({begin:e.begin,end:e.end})}}if(o instanceof n.BaseStream){const e=o.getBaseStreams();if(e){let r=!1;for(const t of e)if(!t.isDataLoaded){r=!0;a.push({begin:t.start,end:t.end})}r&&t.push(o)}}addChildren(o,e)}if(a.length){await this.xref.stream.manager.requestRanges(a);for(const e of t)e instanceof r.Ref&&this.refSet.remove(e);return this._walk(t)}this.refSet=null}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XFAFactory=void 0;var r=a(78),n=a(79),i=a(89),s=a(85),o=a(84),c=a(2),l=a(90),h=a(100);class XFAFactory{constructor(e){try{this.root=(new l.XFAParser).parse(XFAFactory._createDocument(e));const t=new n.Binder(this.root);this.form=t.bind();this.dataHandler=new i.DataHandler(this.root,t.getData());this.form[r.$globalData].template=this.form}catch(e){(0,c.warn)(`XFA - an error occurred during parsing and binding: ${e}`)}}isValid(){return this.root&&this.form}_createPagesHelper(){const e=this.form[r.$toPages]();return new Promise(((t,a)=>{const nextIteration=()=>{try{const a=e.next();a.done?t(a.value):setTimeout(nextIteration,0)}catch(e){a(e)}};setTimeout(nextIteration,0)}))}async _createPages(){try{this.pages=await this._createPagesHelper();this.dims=this.pages.children.map((e=>{const{width:t,height:a}=e.attributes.style;return[0,0,parseInt(t),parseInt(a)]}))}catch(e){(0,c.warn)(`XFA - an error occurred during layout: ${e}`)}}getBoundingBox(e){return this.dims[e]}async getNumPages(){this.pages||await this._createPages();return this.dims.length}setImages(e){this.form[r.$globalData].images=e}setFonts(e){this.form[r.$globalData].fontFinder=new s.FontFinder(e);const t=[];for(let e of this.form[r.$globalData].usedTypefaces){e=(0,o.stripQuotes)(e);this.form[r.$globalData].fontFinder.find(e)||t.push(e)}return t.length>0?t:null}appendFonts(e,t){this.form[r.$globalData].fontFinder.add(e,t)}async getPages(){this.pages||await this._createPages();const e=this.pages;this.pages=null;return e}serializeData(e){return this.dataHandler.serialize(e)}static _createDocument(e){return e["/xdp:xdp"]?Object.values(e).join(""):e["xdp:xdp"]}static getRichTextAsHtml(e){if(!e||"string"!=typeof e)return null;try{let t=new l.XFAParser(h.XhtmlNamespace,!0).parse(e);if(!["body","xhtml"].includes(t[r.$nodeName])){const e=h.XhtmlNamespace.body({});e[r.$appendChild](t);t=e}const a=t[r.$toHTML]();if(!a.success)return null;const{html:n}=a,{attributes:i}=n;if(i){i.class&&(i.class=i.class.filter((e=>!e.startsWith("xfa"))));i.dir="auto"}return{html:n,str:t[r.$text]()}}catch(e){(0,c.warn)(`XFA - an error occurred during parsing of rich text: ${e}`)}return null}}t.XFAFactory=XFAFactory},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.$uid=t.$toStyle=t.$toString=t.$toPages=t.$toHTML=t.$text=t.$tabIndex=t.$setValue=t.$setSetAttributes=t.$setId=t.$searchNode=t.$root=t.$resolvePrototypes=t.$removeChild=t.$pushPara=t.$pushGlyphs=t.$popPara=t.$onText=t.$onChildCheck=t.$onChild=t.$nsAttributes=t.$nodeName=t.$namespaceId=t.$lastAttribute=t.$isUsable=t.$isTransparent=t.$isThereMoreWidth=t.$isSplittable=t.$isNsAgnostic=t.$isDescendent=t.$isDataValue=t.$isCDATAXml=t.$isBindable=t.$insertAt=t.$indexOf=t.$ids=t.$hasSettableValue=t.$globalData=t.$getTemplateRoot=t.$getSubformParent=t.$getRealChildrenByNameIt=t.$getParent=t.$getNextPage=t.$getExtra=t.$getDataValue=t.$getContainedChildren=t.$getChildrenByNameIt=t.$getChildrenByName=t.$getChildrenByClass=t.$getChildren=t.$getAvailableSpace=t.$getAttributes=t.$getAttributeIt=t.$flushHTML=t.$finalize=t.$extra=t.$dump=t.$data=t.$content=t.$consumed=t.$clone=t.$cleanup=t.$cleanPage=t.$clean=t.$childrenToHTML=t.$appendChild=t.$addHTML=t.$acceptWhitespace=void 0;const a=Symbol();t.$acceptWhitespace=a;const r=Symbol();t.$addHTML=r;const n=Symbol();t.$appendChild=n;const i=Symbol();t.$childrenToHTML=i;const s=Symbol();t.$clean=s;const o=Symbol();t.$cleanPage=o;const c=Symbol();t.$cleanup=c;const l=Symbol();t.$clone=l;const h=Symbol();t.$consumed=h;const u=Symbol("content");t.$content=u;const d=Symbol("data");t.$data=d;const f=Symbol();t.$dump=f;const g=Symbol("extra");t.$extra=g;const p=Symbol();t.$finalize=p;const m=Symbol();t.$flushHTML=m;const b=Symbol();t.$getAttributeIt=b;const y=Symbol();t.$getAttributes=y;const w=Symbol();t.$getAvailableSpace=w;const S=Symbol();t.$getChildrenByClass=S;const x=Symbol();t.$getChildrenByName=x;const C=Symbol();t.$getChildrenByNameIt=C;const k=Symbol();t.$getDataValue=k;const v=Symbol();t.$getExtra=v;const F=Symbol();t.$getRealChildrenByNameIt=F;const O=Symbol();t.$getChildren=O;const T=Symbol();t.$getContainedChildren=T;const M=Symbol();t.$getNextPage=M;const D=Symbol();t.$getSubformParent=D;const E=Symbol();t.$getParent=E;const N=Symbol();t.$getTemplateRoot=N;const R=Symbol();t.$globalData=R;const L=Symbol();t.$hasSettableValue=L;const $=Symbol();t.$ids=$;const _=Symbol();t.$indexOf=_;const j=Symbol();t.$insertAt=j;const U=Symbol();t.$isCDATAXml=U;const X=Symbol();t.$isBindable=X;const H=Symbol();t.$isDataValue=H;const q=Symbol();t.$isDescendent=q;const z=Symbol();t.$isNsAgnostic=z;const W=Symbol();t.$isSplittable=W;const G=Symbol();t.$isThereMoreWidth=G;const V=Symbol();t.$isTransparent=V;const K=Symbol();t.$isUsable=K;const J=Symbol();t.$lastAttribute=J;const Y=Symbol("namespaceId");t.$namespaceId=Y;const Z=Symbol("nodeName");t.$nodeName=Z;const Q=Symbol();t.$nsAttributes=Q;const ee=Symbol();t.$onChild=ee;const te=Symbol();t.$onChildCheck=te;const ae=Symbol();t.$onText=ae;const re=Symbol();t.$pushGlyphs=re;const ne=Symbol();t.$popPara=ne;const ie=Symbol();t.$pushPara=ie;const se=Symbol();t.$removeChild=se;const oe=Symbol("root");t.$root=oe;const ce=Symbol();t.$resolvePrototypes=ce;const le=Symbol();t.$searchNode=le;const he=Symbol();t.$setId=he;const ue=Symbol();t.$setSetAttributes=ue;const de=Symbol();t.$setValue=de;const fe=Symbol();t.$tabIndex=fe;const ge=Symbol();t.$text=ge;const pe=Symbol();t.$toPages=pe;const me=Symbol();t.$toHTML=me;const be=Symbol();t.$toString=be;const ye=Symbol();t.$toStyle=ye;const we=Symbol("uid");t.$uid=we},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Binder=void 0;var r=a(78),n=a(80),i=a(88),s=a(87),o=a(81),c=a(2);const l=o.NamespaceIds.datasets.id;function createText(e){const t=new n.Text({});t[r.$content]=e;return t}t.Binder=class Binder{constructor(e){this.root=e;this.datasets=e.datasets;this.data=e.datasets?.data||new s.XmlObject(o.NamespaceIds.datasets.id,"data");this.emptyMerge=0===this.data[r.$getChildren]().length;this.root.form=this.form=e.template[r.$clone]()}_isConsumeData(){return!this.emptyMerge&&this._mergeMode}_isMatchTemplate(){return!this._isConsumeData()}bind(){this._bindElement(this.form,this.data);return this.form}getData(){return this.data}_bindValue(e,t,a){e[r.$data]=t;if(e[r.$hasSettableValue]())if(t[r.$isDataValue]()){const a=t[r.$getDataValue]();e[r.$setValue](createText(a))}else if(e instanceof n.Field&&"multiSelect"===e.ui?.choiceList?.open){const a=t[r.$getChildren]().map((e=>e[r.$content].trim())).join("\n");e[r.$setValue](createText(a))}else this._isConsumeData()&&(0,c.warn)("XFA - Nodes haven't the same type.");else!t[r.$isDataValue]()||this._isMatchTemplate()?this._bindElement(e,t):(0,c.warn)("XFA - Nodes haven't the same type.")}_findDataByNameToConsume(e,t,a,n){if(!e)return null;let i,s;for(let n=0;n<3;n++){i=a[r.$getRealChildrenByNameIt](e,!1,!0);for(;;){s=i.next().value;if(!s)break;if(t===s[r.$isDataValue]())return s}if(a[r.$namespaceId]===o.NamespaceIds.datasets.id&&"data"===a[r.$nodeName])break;a=a[r.$getParent]()}if(!n)return null;i=this.data[r.$getRealChildrenByNameIt](e,!0,!1);s=i.next().value;if(s)return s;i=this.data[r.$getAttributeIt](e,!0);s=i.next().value;return s?.[r.$isDataValue]()?s:null}_setProperties(e,t){if(e.hasOwnProperty("setProperty"))for(const{ref:a,target:o,connection:l}of e.setProperty.children){if(l)continue;if(!a)continue;const h=(0,i.searchNode)(this.root,t,a,!1,!1);if(!h){(0,c.warn)(`XFA - Invalid reference: ${a}.`);continue}const[u]=h;if(!u[r.$isDescendent](this.data)){(0,c.warn)("XFA - Invalid node: must be a data node.");continue}const d=(0,i.searchNode)(this.root,e,o,!1,!1);if(!d){(0,c.warn)(`XFA - Invalid target: ${o}.`);continue}const[f]=d;if(!f[r.$isDescendent](e)){(0,c.warn)("XFA - Invalid target: must be a property or subproperty.");continue}const g=f[r.$getParent]();if(f instanceof n.SetProperty||g instanceof n.SetProperty){(0,c.warn)("XFA - Invalid target: cannot be a setProperty or one of its properties.");continue}if(f instanceof n.BindItems||g instanceof n.BindItems){(0,c.warn)("XFA - Invalid target: cannot be a bindItems or one of its properties.");continue}const p=u[r.$text](),m=f[r.$nodeName];if(f instanceof s.XFAAttribute){const e=Object.create(null);e[m]=p;const t=Reflect.construct(Object.getPrototypeOf(g).constructor,[e]);g[m]=t[m]}else if(f.hasOwnProperty(r.$content)){f[r.$data]=u;f[r.$content]=p;f[r.$finalize]()}else(0,c.warn)("XFA - Invalid node to use in setProperty")}}_bindItems(e,t){if(!e.hasOwnProperty("items")||!e.hasOwnProperty("bindItems")||e.bindItems.isEmpty())return;for(const t of e.items.children)e[r.$removeChild](t);e.items.clear();const a=new n.Items({}),s=new n.Items({});e[r.$appendChild](a);e.items.push(a);e[r.$appendChild](s);e.items.push(s);for(const{ref:n,labelRef:o,valueRef:l,connection:h}of e.bindItems.children){if(h)continue;if(!n)continue;const e=(0,i.searchNode)(this.root,t,n,!1,!1);if(e)for(const t of e){if(!t[r.$isDescendent](this.datasets)){(0,c.warn)(`XFA - Invalid ref (${n}): must be a datasets child.`);continue}const e=(0,i.searchNode)(this.root,t,o,!0,!1);if(!e){(0,c.warn)(`XFA - Invalid label: ${o}.`);continue}const[h]=e;if(!h[r.$isDescendent](this.datasets)){(0,c.warn)("XFA - Invalid label: must be a datasets child.");continue}const u=(0,i.searchNode)(this.root,t,l,!0,!1);if(!u){(0,c.warn)(`XFA - Invalid value: ${l}.`);continue}const[d]=u;if(!d[r.$isDescendent](this.datasets)){(0,c.warn)("XFA - Invalid value: must be a datasets child.");continue}const f=createText(h[r.$text]()),g=createText(d[r.$text]());a[r.$appendChild](f);a.text.push(f);s[r.$appendChild](g);s.text.push(g)}else(0,c.warn)(`XFA - Invalid reference: ${n}.`)}}_bindOccurrences(e,t,a){let n;if(t.length>1){n=e[r.$clone]();n[r.$removeChild](n.occur);n.occur=null}this._bindValue(e,t[0],a);this._setProperties(e,t[0]);this._bindItems(e,t[0]);if(1===t.length)return;const i=e[r.$getParent](),s=e[r.$nodeName],o=i[r.$indexOf](e);for(let e=1,c=t.length;et.name===e.name)).length:a[n].children.length;const o=a[r.$indexOf](e)+1,c=t.initial-i;if(c){const t=e[r.$clone]();t[r.$removeChild](t.occur);t.occur=null;a[n].push(t);a[r.$insertAt](o,t);for(let e=1;e0)this._bindOccurrences(n,[e[0]],null);else if(this.emptyMerge){const e=t[r.$namespaceId]===l?-1:t[r.$namespaceId],a=n[r.$data]=new s.XmlObject(e,n.name||"root");t[r.$appendChild](a);this._bindElement(n,a)}continue}if(!n[r.$isBindable]())continue;let e=!1,o=null,h=null,u=null;if(n.bind){switch(n.bind.match){case"none":this._setAndBind(n,t);continue;case"global":e=!0;break;case"dataRef":if(!n.bind.ref){(0,c.warn)(`XFA - ref is empty in node ${n[r.$nodeName]}.`);this._setAndBind(n,t);continue}h=n.bind.ref}n.bind.picture&&(o=n.bind.picture[r.$content])}const[d,f]=this._getOccurInfo(n);if(h){u=(0,i.searchNode)(this.root,t,h,!0,!1);if(null===u){u=(0,i.createDataNode)(this.data,t,h);if(!u)continue;this._isConsumeData()&&(u[r.$consumed]=!0);this._setAndBind(n,u);continue}this._isConsumeData()&&(u=u.filter((e=>!e[r.$consumed])));u.length>f?u=u.slice(0,f):0===u.length&&(u=null);u&&this._isConsumeData()&&u.forEach((e=>{e[r.$consumed]=!0}))}else{if(!n.name){this._setAndBind(n,t);continue}if(this._isConsumeData()){const a=[];for(;a.length0?a:null}else{u=t[r.$getRealChildrenByNameIt](n.name,!1,this.emptyMerge).next().value;if(!u){if(0===d){a.push(n);continue}const e=t[r.$namespaceId]===l?-1:t[r.$namespaceId];u=n[r.$data]=new s.XmlObject(e,n.name);this.emptyMerge&&(u[r.$consumed]=!0);t[r.$appendChild](u);this._setAndBind(n,u);continue}this.emptyMerge&&(u[r.$consumed]=!0);u=[u]}}u?this._bindOccurrences(n,u,o):d>0?this._setAndBind(n,t):a.push(n)}a.forEach((e=>e[r.$getParent]()[r.$removeChild](e)))}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Value=t.Text=t.TemplateNamespace=t.Template=t.SetProperty=t.Items=t.Field=t.BindItems=void 0;var r=a(78),n=a(81),i=a(82),s=a(83),o=a(87),c=a(84),l=a(2),h=a(85),u=a(3),d=a(88);const f=n.NamespaceIds.template.id,g="http://www.w3.org/2000/svg",p=/^H(\d+)$/,m=new Set(["image/gif","image/jpeg","image/jpg","image/pjpeg","image/png","image/apng","image/x-png","image/bmp","image/x-ms-bmp","image/tiff","image/tif","application/octet-stream"]),b=[[[66,77],"image/bmp"],[[255,216,255],"image/jpeg"],[[73,73,42,0],"image/tiff"],[[77,77,0,42],"image/tiff"],[[71,73,70,56,57,97],"image/gif"],[[137,80,78,71,13,10,26,10],"image/png"]];function getBorderDims(e){if(!e||!e.border)return{w:0,h:0};const t=e.border[r.$getExtra]();return t?{w:t.widths[0]+t.widths[2]+t.insets[0]+t.insets[2],h:t.widths[1]+t.widths[3]+t.insets[1]+t.insets[3]}:{w:0,h:0}}function hasMargin(e){return e.margin&&(e.margin.topInset||e.margin.rightInset||e.margin.bottomInset||e.margin.leftInset)}function _setValue(e,t){if(!e.value){const t=new Value({});e[r.$appendChild](t);e.value=t}e.value[r.$setValue](t)}function*getContainedChildren(e){for(const t of e[r.$getChildren]())t instanceof SubformSet?yield*t[r.$getContainedChildren]():yield t}function isRequired(e){return"error"===e.validate?.nullTest}function setTabIndex(e){for(;e;){if(!e.traversal){e[r.$tabIndex]=e[r.$getParent]()[r.$tabIndex];return}if(e[r.$tabIndex])return;let t=null;for(const a of e.traversal[r.$getChildren]())if("next"===a.operation){t=a;break}if(!t||!t.ref){e[r.$tabIndex]=e[r.$getParent]()[r.$tabIndex];return}const a=e[r.$getTemplateRoot]();e[r.$tabIndex]=++a[r.$tabIndex];const n=a[r.$searchNode](t.ref,e);if(!n)return;e=n[0]}}function applyAssist(e,t){const a=e.assist;if(a){const e=a[r.$toHTML]();e&&(t.title=e);const n=a.role.match(p);if(n){const e="heading",a=n[1];t.role=e;t["aria-level"]=a}}if("table"===e.layout)t.role="table";else if("row"===e.layout)t.role="row";else{const a=e[r.$getParent]();"row"===a.layout&&(t.role="TH"===a.assist?.role?"columnheader":"cell")}}function ariaLabel(e){if(!e.assist)return null;const t=e.assist;return t.speak&&""!==t.speak[r.$content]?t.speak[r.$content]:t.toolTip?t.toolTip[r.$content]:null}function valueToHtml(e){return c.HTMLResult.success({name:"div",attributes:{class:["xfaRich"],style:Object.create(null)},children:[{name:"span",attributes:{style:Object.create(null)},value:e}]})}function setFirstUnsplittable(e){const t=e[r.$getTemplateRoot]();if(null===t[r.$extra].firstUnsplittable){t[r.$extra].firstUnsplittable=e;t[r.$extra].noLayoutFailure=!0}}function unsetFirstUnsplittable(e){const t=e[r.$getTemplateRoot]();t[r.$extra].firstUnsplittable===e&&(t[r.$extra].noLayoutFailure=!1)}function handleBreak(e){if(e[r.$extra])return!1;e[r.$extra]=Object.create(null);if("auto"===e.targetType)return!1;const t=e[r.$getTemplateRoot]();let a=null;if(e.target){a=t[r.$searchNode](e.target,e[r.$getParent]());if(!a)return!1;a=a[0]}const{currentPageArea:n,currentContentArea:i}=t[r.$extra];if("pageArea"===e.targetType){a instanceof PageArea||(a=null);if(e.startNew){e[r.$extra].target=a||n;return!0}if(a&&a!==n){e[r.$extra].target=a;return!0}return!1}a instanceof ContentArea||(a=null);const s=a&&a[r.$getParent]();let o,c=s;if(e.startNew)if(a){const e=s.contentArea.children,t=e.indexOf(i),r=e.indexOf(a);-1!==t&&te;n[r.$extra].noLayoutFailure=!0;const o=t[r.$toHTML](a);e[r.$addHTML](o.html,o.bbox);n[r.$extra].noLayoutFailure=i;t[r.$getSubformParent]=s}class AppearanceFilter extends o.StringObject{constructor(e){super(f,"appearanceFilter");this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||""}}class Arc extends o.XFAObject{constructor(e){super(f,"arc",!0);this.circular=(0,c.getInteger)({data:e.circular,defaultValue:0,validate:e=>1===e});this.hand=(0,c.getStringOption)(e.hand,["even","left","right"]);this.id=e.id||"";this.startAngle=(0,c.getFloat)({data:e.startAngle,defaultValue:0,validate:e=>!0});this.sweepAngle=(0,c.getFloat)({data:e.sweepAngle,defaultValue:360,validate:e=>!0});this.use=e.use||"";this.usehref=e.usehref||"";this.edge=null;this.fill=null}[r.$toHTML](){const e=this.edge||new Edge({}),t=e[r.$toStyle](),a=Object.create(null);"visible"===this.fill?.presence?Object.assign(a,this.fill[r.$toStyle]()):a.fill="transparent";a.strokeWidth=(0,s.measureToString)("visible"===e.presence?e.thickness:0);a.stroke=t.color;let n;const i={xmlns:g,style:{width:"100%",height:"100%",overflow:"visible"}};if(360===this.sweepAngle)n={name:"ellipse",attributes:{xmlns:g,cx:"50%",cy:"50%",rx:"50%",ry:"50%",style:a}};else{const e=this.startAngle*Math.PI/180,t=this.sweepAngle*Math.PI/180,r=this.sweepAngle>180?1:0,[s,o,c,l]=[50*(1+Math.cos(e)),50*(1-Math.sin(e)),50*(1+Math.cos(e+t)),50*(1-Math.sin(e+t))];n={name:"path",attributes:{xmlns:g,d:`M ${s} ${o} A 50 50 0 ${r} 0 ${c} ${l}`,vectorEffect:"non-scaling-stroke",style:a}};Object.assign(i,{viewBox:"0 0 100 100",preserveAspectRatio:"none"})}const o={name:"svg",children:[n],attributes:i};if(hasMargin(this[r.$getParent]()[r.$getParent]()))return c.HTMLResult.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[o]});o.attributes.style.position="absolute";return c.HTMLResult.success(o)}}class Area extends o.XFAObject{constructor(e){super(f,"area",!0);this.colSpan=(0,c.getInteger)({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e});this.id=e.id||"";this.name=e.name||"";this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.desc=null;this.extras=null;this.area=new o.XFAObjectArray;this.draw=new o.XFAObjectArray;this.exObject=new o.XFAObjectArray;this.exclGroup=new o.XFAObjectArray;this.field=new o.XFAObjectArray;this.subform=new o.XFAObjectArray;this.subformSet=new o.XFAObjectArray}*[r.$getContainedChildren](){yield*getContainedChildren(this)}[r.$isTransparent](){return!0}[r.$isBindable](){return!0}[r.$addHTML](e,t){const[a,n,i,s]=t;this[r.$extra].width=Math.max(this[r.$extra].width,a+i);this[r.$extra].height=Math.max(this[r.$extra].height,n+s);this[r.$extra].children.push(e)}[r.$getAvailableSpace](){return this[r.$extra].availableSpace}[r.$toHTML](e){const t=(0,s.toStyle)(this,"position"),a={style:t,id:this[r.$uid],class:["xfaArea"]};(0,s.isPrintOnly)(this)&&a.class.push("xfaPrintOnly");this.name&&(a.xfaName=this.name);const n=[];this[r.$extra]={children:n,width:0,height:0,availableSpace:e};const i=this[r.$childrenToHTML]({filter:new Set(["area","draw","field","exclGroup","subform","subformSet"]),include:!0});if(!i.success){if(i.isBreak())return i;delete this[r.$extra];return c.HTMLResult.FAILURE}t.width=(0,s.measureToString)(this[r.$extra].width);t.height=(0,s.measureToString)(this[r.$extra].height);const o={name:"div",attributes:a,children:n},l=[this.x,this.y,this[r.$extra].width,this[r.$extra].height];delete this[r.$extra];return c.HTMLResult.success(o,l)}}class Assist extends o.XFAObject{constructor(e){super(f,"assist",!0);this.id=e.id||"";this.role=e.role||"";this.use=e.use||"";this.usehref=e.usehref||"";this.speak=null;this.toolTip=null}[r.$toHTML](){return this.toolTip?.[r.$content]||null}}class Barcode extends o.XFAObject{constructor(e){super(f,"barcode",!0);this.charEncoding=(0,c.getKeyword)({data:e.charEncoding?e.charEncoding.toLowerCase():"",defaultValue:"",validate:e=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(e)||e.match(/iso-8859-\d{2}/)});this.checksum=(0,c.getStringOption)(e.checksum,["none","1mod10","1mod10_1mod11","2mod10","auto"]);this.dataColumnCount=(0,c.getInteger)({data:e.dataColumnCount,defaultValue:-1,validate:e=>e>=0});this.dataLength=(0,c.getInteger)({data:e.dataLength,defaultValue:-1,validate:e=>e>=0});this.dataPrep=(0,c.getStringOption)(e.dataPrep,["none","flateCompress"]);this.dataRowCount=(0,c.getInteger)({data:e.dataRowCount,defaultValue:-1,validate:e=>e>=0});this.endChar=e.endChar||"";this.errorCorrectionLevel=(0,c.getInteger)({data:e.errorCorrectionLevel,defaultValue:-1,validate:e=>e>=0&&e<=8});this.id=e.id||"";this.moduleHeight=(0,c.getMeasurement)(e.moduleHeight,"5mm");this.moduleWidth=(0,c.getMeasurement)(e.moduleWidth,"0.25mm");this.printCheckDigit=(0,c.getInteger)({data:e.printCheckDigit,defaultValue:0,validate:e=>1===e});this.rowColumnRatio=(0,c.getRatio)(e.rowColumnRatio);this.startChar=e.startChar||"";this.textLocation=(0,c.getStringOption)(e.textLocation,["below","above","aboveEmbedded","belowEmbedded","none"]);this.truncate=(0,c.getInteger)({data:e.truncate,defaultValue:0,validate:e=>1===e});this.type=(0,c.getStringOption)(e.type?e.type.toLowerCase():"",["aztec","codabar","code2of5industrial","code2of5interleaved","code2of5matrix","code2of5standard","code3of9","code3of9extended","code11","code49","code93","code128","code128a","code128b","code128c","code128sscc","datamatrix","ean8","ean8add2","ean8add5","ean13","ean13add2","ean13add5","ean13pwcd","fim","logmars","maxicode","msi","pdf417","pdf417macro","plessey","postauscust2","postauscust3","postausreplypaid","postausstandard","postukrm4scc","postusdpbc","postusimb","postusstandard","postus5zip","qrcode","rfid","rss14","rss14expanded","rss14limited","rss14stacked","rss14stackedomni","rss14truncated","telepen","ucc128","ucc128random","ucc128sscc","upca","upcaadd2","upcaadd5","upcapwcd","upce","upceadd2","upceadd5","upcean2","upcean5","upsmaxicode"]);this.upsMode=(0,c.getStringOption)(e.upsMode,["usCarrier","internationalCarrier","secureSymbol","standardSymbol"]);this.use=e.use||"";this.usehref=e.usehref||"";this.wideNarrowRatio=(0,c.getRatio)(e.wideNarrowRatio);this.encrypt=null;this.extras=null}}class Bind extends o.XFAObject{constructor(e){super(f,"bind",!0);this.match=(0,c.getStringOption)(e.match,["once","dataRef","global","none"]);this.ref=e.ref||"";this.picture=null}}class BindItems extends o.XFAObject{constructor(e){super(f,"bindItems");this.connection=e.connection||"";this.labelRef=e.labelRef||"";this.ref=e.ref||"";this.valueRef=e.valueRef||""}}t.BindItems=BindItems;class Bookend extends o.XFAObject{constructor(e){super(f,"bookend");this.id=e.id||"";this.leader=e.leader||"";this.trailer=e.trailer||"";this.use=e.use||"";this.usehref=e.usehref||""}}class BooleanElement extends o.Option01{constructor(e){super(f,"boolean");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$toHTML](e){return valueToHtml(1===this[r.$content]?"1":"0")}}class Border extends o.XFAObject{constructor(e){super(f,"border",!0);this.break=(0,c.getStringOption)(e.break,["close","open"]);this.hand=(0,c.getStringOption)(e.hand,["even","left","right"]);this.id=e.id||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.corner=new o.XFAObjectArray(4);this.edge=new o.XFAObjectArray(4);this.extras=null;this.fill=null;this.margin=null}[r.$getExtra](){if(!this[r.$extra]){const e=this.edge.children.slice();if(e.length<4){const t=e.at(-1)||new Edge({});for(let a=e.length;a<4;a++)e.push(t)}const t=e.map((e=>e.thickness)),a=[0,0,0,0];if(this.margin){a[0]=this.margin.topInset;a[1]=this.margin.rightInset;a[2]=this.margin.bottomInset;a[3]=this.margin.leftInset}this[r.$extra]={widths:t,insets:a,edges:e}}return this[r.$extra]}[r.$toStyle](){const{edges:e}=this[r.$getExtra](),t=e.map((e=>{const t=e[r.$toStyle]();t.color||="#000000";return t})),a=Object.create(null);this.margin&&Object.assign(a,this.margin[r.$toStyle]());"visible"===this.fill?.presence&&Object.assign(a,this.fill[r.$toStyle]());if(this.corner.children.some((e=>0!==e.radius))){const e=this.corner.children.map((e=>e[r.$toStyle]()));if(2===e.length||3===e.length){const t=e.at(-1);for(let a=e.length;a<4;a++)e.push(t)}a.borderRadius=e.map((e=>e.radius)).join(" ")}switch(this.presence){case"invisible":case"hidden":a.borderStyle="";break;case"inactive":a.borderStyle="none";break;default:a.borderStyle=t.map((e=>e.style)).join(" ")}a.borderWidth=t.map((e=>e.width)).join(" ");a.borderColor=t.map((e=>e.color)).join(" ");return a}}class Break extends o.XFAObject{constructor(e){super(f,"break",!0);this.after=(0,c.getStringOption)(e.after,["auto","contentArea","pageArea","pageEven","pageOdd"]);this.afterTarget=e.afterTarget||"";this.before=(0,c.getStringOption)(e.before,["auto","contentArea","pageArea","pageEven","pageOdd"]);this.beforeTarget=e.beforeTarget||"";this.bookendLeader=e.bookendLeader||"";this.bookendTrailer=e.bookendTrailer||"";this.id=e.id||"";this.overflowLeader=e.overflowLeader||"";this.overflowTarget=e.overflowTarget||"";this.overflowTrailer=e.overflowTrailer||"";this.startNew=(0,c.getInteger)({data:e.startNew,defaultValue:0,validate:e=>1===e});this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}}class BreakAfter extends o.XFAObject{constructor(e){super(f,"breakAfter",!0);this.id=e.id||"";this.leader=e.leader||"";this.startNew=(0,c.getInteger)({data:e.startNew,defaultValue:0,validate:e=>1===e});this.target=e.target||"";this.targetType=(0,c.getStringOption)(e.targetType,["auto","contentArea","pageArea"]);this.trailer=e.trailer||"";this.use=e.use||"";this.usehref=e.usehref||"";this.script=null}}class BreakBefore extends o.XFAObject{constructor(e){super(f,"breakBefore",!0);this.id=e.id||"";this.leader=e.leader||"";this.startNew=(0,c.getInteger)({data:e.startNew,defaultValue:0,validate:e=>1===e});this.target=e.target||"";this.targetType=(0,c.getStringOption)(e.targetType,["auto","contentArea","pageArea"]);this.trailer=e.trailer||"";this.use=e.use||"";this.usehref=e.usehref||"";this.script=null}[r.$toHTML](e){this[r.$extra]={};return c.HTMLResult.FAILURE}}class Button extends o.XFAObject{constructor(e){super(f,"button",!0);this.highlight=(0,c.getStringOption)(e.highlight,["inverted","none","outline","push"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}[r.$toHTML](e){const t=this[r.$getParent]()[r.$getParent](),a={name:"button",attributes:{id:this[r.$uid],class:["xfaButton"],style:{}},children:[]};for(const e of t.event.children){if("click"!==e.activity||!e.script)continue;const t=(0,u.recoverJsURL)(e.script[r.$content]);if(!t)continue;const n=(0,s.fixURL)(t.url);n&&a.children.push({name:"a",attributes:{id:"link"+this[r.$uid],href:n,newWindow:t.newWindow,class:["xfaLink"],style:{}},children:[]})}return c.HTMLResult.success(a)}}class Calculate extends o.XFAObject{constructor(e){super(f,"calculate",!0);this.id=e.id||"";this.override=(0,c.getStringOption)(e.override,["disabled","error","ignore","warning"]);this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.message=null;this.script=null}}class Caption extends o.XFAObject{constructor(e){super(f,"caption",!0);this.id=e.id||"";this.placement=(0,c.getStringOption)(e.placement,["left","bottom","inline","right","top"]);this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.reserve=Math.ceil((0,c.getMeasurement)(e.reserve));this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.font=null;this.margin=null;this.para=null;this.value=null}[r.$setValue](e){_setValue(this,e)}[r.$getExtra](e){if(!this[r.$extra]){let{width:t,height:a}=e;switch(this.placement){case"left":case"right":case"inline":t=this.reserve<=0?t:this.reserve;break;case"top":case"bottom":a=this.reserve<=0?a:this.reserve}this[r.$extra]=(0,s.layoutNode)(this,{width:t,height:a})}return this[r.$extra]}[r.$toHTML](e){if(!this.value)return c.HTMLResult.EMPTY;this[r.$pushPara]();const t=this.value[r.$toHTML](e).html;if(!t){this[r.$popPara]();return c.HTMLResult.EMPTY}const a=this.reserve;if(this.reserve<=0){const{w:t,h:a}=this[r.$getExtra](e);switch(this.placement){case"left":case"right":case"inline":this.reserve=t;break;case"top":case"bottom":this.reserve=a}}const n=[];"string"==typeof t?n.push({name:"#text",value:t}):n.push(t);const i=(0,s.toStyle)(this,"font","margin","visibility");switch(this.placement){case"left":case"right":this.reserve>0&&(i.width=(0,s.measureToString)(this.reserve));break;case"top":case"bottom":this.reserve>0&&(i.height=(0,s.measureToString)(this.reserve))}(0,s.setPara)(this,null,t);this[r.$popPara]();this.reserve=a;return c.HTMLResult.success({name:"div",attributes:{style:i,class:["xfaCaption"]},children:n})}}class Certificate extends o.StringObject{constructor(e){super(f,"certificate");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Certificates extends o.XFAObject{constructor(e){super(f,"certificates",!0);this.credentialServerPolicy=(0,c.getStringOption)(e.credentialServerPolicy,["optional","required"]);this.id=e.id||"";this.url=e.url||"";this.urlPolicy=e.urlPolicy||"";this.use=e.use||"";this.usehref=e.usehref||"";this.encryption=null;this.issuers=null;this.keyUsage=null;this.oids=null;this.signing=null;this.subjectDNs=null}}class CheckButton extends o.XFAObject{constructor(e){super(f,"checkButton",!0);this.id=e.id||"";this.mark=(0,c.getStringOption)(e.mark,["default","check","circle","cross","diamond","square","star"]);this.shape=(0,c.getStringOption)(e.shape,["square","round"]);this.size=(0,c.getMeasurement)(e.size,"10pt");this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.extras=null;this.margin=null}[r.$toHTML](e){const t=(0,s.toStyle)("margin"),a=(0,s.measureToString)(this.size);t.width=t.height=a;let n,i,o;const l=this[r.$getParent]()[r.$getParent](),h=l.items.children.length&&l.items.children[0][r.$toHTML]().html||[],u={on:(void 0!==h[0]?h[0]:"on").toString(),off:(void 0!==h[1]?h[1]:"off").toString()},d=(l.value?.[r.$text]()||"off")===u.on||void 0,f=l[r.$getSubformParent](),g=l[r.$uid];let p;if(f instanceof ExclGroup){o=f[r.$uid];n="radio";i="xfaRadio";p=f[r.$data]?.[r.$uid]||f[r.$uid]}else{n="checkbox";i="xfaCheckbox";p=l[r.$data]?.[r.$uid]||l[r.$uid]}const m={name:"input",attributes:{class:[i],style:t,fieldId:g,dataId:p,type:n,checked:d,xfaOn:u.on,xfaOff:u.off,"aria-label":ariaLabel(l),"aria-required":!1}};o&&(m.attributes.name=o);if(isRequired(l)){m.attributes["aria-required"]=!0;m.attributes.required=!0}return c.HTMLResult.success({name:"label",attributes:{class:["xfaLabel"]},children:[m]})}}class ChoiceList extends o.XFAObject{constructor(e){super(f,"choiceList",!0);this.commitOn=(0,c.getStringOption)(e.commitOn,["select","exit"]);this.id=e.id||"";this.open=(0,c.getStringOption)(e.open,["userControl","always","multiSelect","onEntry"]);this.textEntry=(0,c.getInteger)({data:e.textEntry,defaultValue:0,validate:e=>1===e});this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.extras=null;this.margin=null}[r.$toHTML](e){const t=(0,s.toStyle)(this,"border","margin"),a=this[r.$getParent]()[r.$getParent](),n={fontSize:`calc(${a.font?.size||10}px * var(--scale-factor))`},i=[];if(a.items.children.length>0){const e=a.items;let t=0,s=0;if(2===e.children.length){t=e.children[0].save;s=1-t}const o=e.children[t][r.$toHTML]().html,c=e.children[s][r.$toHTML]().html;let l=!1;const h=a.value?.[r.$text]()||"";for(let e=0,t=o.length;ee>=0});this.use=e.use||"";this.usehref=e.usehref||""}}class Connect extends o.XFAObject{constructor(e){super(f,"connect",!0);this.connection=e.connection||"";this.id=e.id||"";this.ref=e.ref||"";this.usage=(0,c.getStringOption)(e.usage,["exportAndImport","exportOnly","importOnly"]);this.use=e.use||"";this.usehref=e.usehref||"";this.picture=null}}class ContentArea extends o.XFAObject{constructor(e){super(f,"contentArea",!0);this.h=(0,c.getMeasurement)(e.h);this.id=e.id||"";this.name=e.name||"";this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.w=(0,c.getMeasurement)(e.w);this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.desc=null;this.extras=null}[r.$toHTML](e){const t={left:(0,s.measureToString)(this.x),top:(0,s.measureToString)(this.y),width:(0,s.measureToString)(this.w),height:(0,s.measureToString)(this.h)},a=["xfaContentarea"];(0,s.isPrintOnly)(this)&&a.push("xfaPrintOnly");return c.HTMLResult.success({name:"div",children:[],attributes:{style:t,class:a,id:this[r.$uid]}})}}class Corner extends o.XFAObject{constructor(e){super(f,"corner",!0);this.id=e.id||"";this.inverted=(0,c.getInteger)({data:e.inverted,defaultValue:0,validate:e=>1===e});this.join=(0,c.getStringOption)(e.join,["square","round"]);this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.radius=(0,c.getMeasurement)(e.radius);this.stroke=(0,c.getStringOption)(e.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]);this.thickness=(0,c.getMeasurement)(e.thickness,"0.5pt");this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](){const e=(0,s.toStyle)(this,"visibility");e.radius=(0,s.measureToString)("square"===this.join?0:this.radius);return e}}class DateElement extends o.ContentObject{constructor(e){super(f,"date");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=this[r.$content].trim();this[r.$content]=e?new Date(e):null}[r.$toHTML](e){return valueToHtml(this[r.$content]?this[r.$content].toString():"")}}class DateTime extends o.ContentObject{constructor(e){super(f,"dateTime");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=this[r.$content].trim();this[r.$content]=e?new Date(e):null}[r.$toHTML](e){return valueToHtml(this[r.$content]?this[r.$content].toString():"")}}class DateTimeEdit extends o.XFAObject{constructor(e){super(f,"dateTimeEdit",!0);this.hScrollPolicy=(0,c.getStringOption)(e.hScrollPolicy,["auto","off","on"]);this.id=e.id||"";this.picker=(0,c.getStringOption)(e.picker,["host","none"]);this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.comb=null;this.extras=null;this.margin=null}[r.$toHTML](e){const t=(0,s.toStyle)(this,"border","font","margin"),a=this[r.$getParent]()[r.$getParent](),n={name:"input",attributes:{type:"text",fieldId:a[r.$uid],dataId:a[r.$data]?.[r.$uid]||a[r.$uid],class:["xfaTextfield"],style:t,"aria-label":ariaLabel(a),"aria-required":!1}};if(isRequired(a)){n.attributes["aria-required"]=!0;n.attributes.required=!0}return c.HTMLResult.success({name:"label",attributes:{class:["xfaLabel"]},children:[n]})}}class Decimal extends o.ContentObject{constructor(e){super(f,"decimal");this.fracDigits=(0,c.getInteger)({data:e.fracDigits,defaultValue:2,validate:e=>!0});this.id=e.id||"";this.leadDigits=(0,c.getInteger)({data:e.leadDigits,defaultValue:-1,validate:e=>!0});this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=parseFloat(this[r.$content].trim());this[r.$content]=isNaN(e)?null:e}[r.$toHTML](e){return valueToHtml(null!==this[r.$content]?this[r.$content].toString():"")}}class DefaultUi extends o.XFAObject{constructor(e){super(f,"defaultUi",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}}class Desc extends o.XFAObject{constructor(e){super(f,"desc",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.boolean=new o.XFAObjectArray;this.date=new o.XFAObjectArray;this.dateTime=new o.XFAObjectArray;this.decimal=new o.XFAObjectArray;this.exData=new o.XFAObjectArray;this.float=new o.XFAObjectArray;this.image=new o.XFAObjectArray;this.integer=new o.XFAObjectArray;this.text=new o.XFAObjectArray;this.time=new o.XFAObjectArray}}class DigestMethod extends o.OptionObject{constructor(e){super(f,"digestMethod",["","SHA1","SHA256","SHA512","RIPEMD160"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||""}}class DigestMethods extends o.XFAObject{constructor(e){super(f,"digestMethods",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.digestMethod=new o.XFAObjectArray}}class Draw extends o.XFAObject{constructor(e){super(f,"draw",!0);this.anchorType=(0,c.getStringOption)(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]);this.colSpan=(0,c.getInteger)({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e});this.h=e.h?(0,c.getMeasurement)(e.h):"";this.hAlign=(0,c.getStringOption)(e.hAlign,["left","center","justify","justifyAll","radix","right"]);this.id=e.id||"";this.locale=e.locale||"";this.maxH=(0,c.getMeasurement)(e.maxH,"0pt");this.maxW=(0,c.getMeasurement)(e.maxW,"0pt");this.minH=(0,c.getMeasurement)(e.minH,"0pt");this.minW=(0,c.getMeasurement)(e.minW,"0pt");this.name=e.name||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.relevant=(0,c.getRelevant)(e.relevant);this.rotate=(0,c.getInteger)({data:e.rotate,defaultValue:0,validate:e=>e%90==0});this.use=e.use||"";this.usehref=e.usehref||"";this.w=e.w?(0,c.getMeasurement)(e.w):"";this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.assist=null;this.border=null;this.caption=null;this.desc=null;this.extras=null;this.font=null;this.keep=null;this.margin=null;this.para=null;this.traversal=null;this.ui=null;this.value=null;this.setProperty=new o.XFAObjectArray}[r.$setValue](e){_setValue(this,e)}[r.$toHTML](e){setTabIndex(this);if("hidden"===this.presence||"inactive"===this.presence)return c.HTMLResult.EMPTY;(0,s.fixDimensions)(this);this[r.$pushPara]();const t=this.w,a=this.h,{w:n,h:o,isBroken:l}=(0,s.layoutNode)(this,e);if(n&&""===this.w){if(l&&this[r.$getSubformParent]()[r.$isThereMoreWidth]()){this[r.$popPara]();return c.HTMLResult.FAILURE}this.w=n}o&&""===this.h&&(this.h=o);setFirstUnsplittable(this);if(!(0,i.checkDimensions)(this,e)){this.w=t;this.h=a;this[r.$popPara]();return c.HTMLResult.FAILURE}unsetFirstUnsplittable(this);const h=(0,s.toStyle)(this,"font","hAlign","dimensions","position","presence","rotate","anchorType","border","margin");(0,s.setMinMaxDimensions)(this,h);if(h.margin){h.padding=h.margin;delete h.margin}const u=["xfaDraw"];this.font&&u.push("xfaFont");(0,s.isPrintOnly)(this)&&u.push("xfaPrintOnly");const d={style:h,id:this[r.$uid],class:u};this.name&&(d.xfaName=this.name);const f={name:"div",attributes:d,children:[]};applyAssist(this,d);const g=(0,s.computeBbox)(this,f,e),p=this.value?this.value[r.$toHTML](e).html:null;if(null===p){this.w=t;this.h=a;this[r.$popPara]();return c.HTMLResult.success((0,s.createWrapper)(this,f),g)}f.children.push(p);(0,s.setPara)(this,h,p);this.w=t;this.h=a;this[r.$popPara]();return c.HTMLResult.success((0,s.createWrapper)(this,f),g)}}class Edge extends o.XFAObject{constructor(e){super(f,"edge",!0);this.cap=(0,c.getStringOption)(e.cap,["square","butt","round"]);this.id=e.id||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.stroke=(0,c.getStringOption)(e.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]);this.thickness=(0,c.getMeasurement)(e.thickness,"0.5pt");this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](){const e=(0,s.toStyle)(this,"visibility");Object.assign(e,{linecap:this.cap,width:(0,s.measureToString)(this.thickness),color:this.color?this.color[r.$toStyle]():"#000000",style:""});if("visible"!==this.presence)e.style="none";else switch(this.stroke){case"solid":e.style="solid";break;case"dashDot":case"dashDotDot":case"dashed":e.style="dashed";break;case"dotted":e.style="dotted";break;case"embossed":e.style="ridge";break;case"etched":e.style="groove";break;case"lowered":e.style="inset";break;case"raised":e.style="outset"}return e}}class Encoding extends o.OptionObject{constructor(e){super(f,"encoding",["adbe.x509.rsa_sha1","adbe.pkcs7.detached","adbe.pkcs7.sha1"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Encodings extends o.XFAObject{constructor(e){super(f,"encodings",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.encoding=new o.XFAObjectArray}}class Encrypt extends o.XFAObject{constructor(e){super(f,"encrypt",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.certificate=null}}class EncryptData extends o.XFAObject{constructor(e){super(f,"encryptData",!0);this.id=e.id||"";this.operation=(0,c.getStringOption)(e.operation,["encrypt","decrypt"]);this.target=e.target||"";this.use=e.use||"";this.usehref=e.usehref||"";this.filter=null;this.manifest=null}}class Encryption extends o.XFAObject{constructor(e){super(f,"encryption",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.certificate=new o.XFAObjectArray}}class EncryptionMethod extends o.OptionObject{constructor(e){super(f,"encryptionMethod",["","AES256-CBC","TRIPLEDES-CBC","AES128-CBC","AES192-CBC"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||""}}class EncryptionMethods extends o.XFAObject{constructor(e){super(f,"encryptionMethods",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.encryptionMethod=new o.XFAObjectArray}}class Event extends o.XFAObject{constructor(e){super(f,"event",!0);this.activity=(0,c.getStringOption)(e.activity,["click","change","docClose","docReady","enter","exit","full","indexChange","initialize","mouseDown","mouseEnter","mouseExit","mouseUp","postExecute","postOpen","postPrint","postSave","postSign","postSubmit","preExecute","preOpen","prePrint","preSave","preSign","preSubmit","ready","validationState"]);this.id=e.id||"";this.listen=(0,c.getStringOption)(e.listen,["refOnly","refAndDescendents"]);this.name=e.name||"";this.ref=e.ref||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.encryptData=null;this.execute=null;this.script=null;this.signData=null;this.submit=null}}class ExData extends o.ContentObject{constructor(e){super(f,"exData");this.contentType=e.contentType||"";this.href=e.href||"";this.id=e.id||"";this.maxLength=(0,c.getInteger)({data:e.maxLength,defaultValue:-1,validate:e=>e>=-1});this.name=e.name||"";this.rid=e.rid||"";this.transferEncoding=(0,c.getStringOption)(e.transferEncoding,["none","base64","package"]);this.use=e.use||"";this.usehref=e.usehref||""}[r.$isCDATAXml](){return"text/html"===this.contentType}[r.$onChild](e){if("text/html"===this.contentType&&e[r.$namespaceId]===n.NamespaceIds.xhtml.id){this[r.$content]=e;return!0}if("text/xml"===this.contentType){this[r.$content]=e;return!0}return!1}[r.$toHTML](e){return"text/html"===this.contentType&&this[r.$content]?this[r.$content][r.$toHTML](e):c.HTMLResult.EMPTY}}class ExObject extends o.XFAObject{constructor(e){super(f,"exObject",!0);this.archive=e.archive||"";this.classId=e.classId||"";this.codeBase=e.codeBase||"";this.codeType=e.codeType||"";this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.boolean=new o.XFAObjectArray;this.date=new o.XFAObjectArray;this.dateTime=new o.XFAObjectArray;this.decimal=new o.XFAObjectArray;this.exData=new o.XFAObjectArray;this.exObject=new o.XFAObjectArray;this.float=new o.XFAObjectArray;this.image=new o.XFAObjectArray;this.integer=new o.XFAObjectArray;this.text=new o.XFAObjectArray;this.time=new o.XFAObjectArray}}class ExclGroup extends o.XFAObject{constructor(e){super(f,"exclGroup",!0);this.access=(0,c.getStringOption)(e.access,["open","nonInteractive","protected","readOnly"]);this.accessKey=e.accessKey||"";this.anchorType=(0,c.getStringOption)(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]);this.colSpan=(0,c.getInteger)({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e});this.h=e.h?(0,c.getMeasurement)(e.h):"";this.hAlign=(0,c.getStringOption)(e.hAlign,["left","center","justify","justifyAll","radix","right"]);this.id=e.id||"";this.layout=(0,c.getStringOption)(e.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]);this.maxH=(0,c.getMeasurement)(e.maxH,"0pt");this.maxW=(0,c.getMeasurement)(e.maxW,"0pt");this.minH=(0,c.getMeasurement)(e.minH,"0pt");this.minW=(0,c.getMeasurement)(e.minW,"0pt");this.name=e.name||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.w=e.w?(0,c.getMeasurement)(e.w):"";this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.assist=null;this.bind=null;this.border=null;this.calculate=null;this.caption=null;this.desc=null;this.extras=null;this.margin=null;this.para=null;this.traversal=null;this.validate=null;this.connect=new o.XFAObjectArray;this.event=new o.XFAObjectArray;this.field=new o.XFAObjectArray;this.setProperty=new o.XFAObjectArray}[r.$isBindable](){return!0}[r.$hasSettableValue](){return!0}[r.$setValue](e){for(const t of this.field.children){if(!t.value){const e=new Value({});t[r.$appendChild](e);t.value=e}t.value[r.$setValue](e)}}[r.$isThereMoreWidth](){return this.layout.endsWith("-tb")&&0===this[r.$extra].attempt&&this[r.$extra].numberInLine>0||this[r.$getParent]()[r.$isThereMoreWidth]()}[r.$isSplittable](){const e=this[r.$getSubformParent]();if(!e[r.$isSplittable]())return!1;if(void 0!==this[r.$extra]._isSplittable)return this[r.$extra]._isSplittable;if("position"===this.layout||this.layout.includes("row")){this[r.$extra]._isSplittable=!1;return!1}if(e.layout?.endsWith("-tb")&&0!==e[r.$extra].numberInLine)return!1;this[r.$extra]._isSplittable=!0;return!0}[r.$flushHTML](){return(0,i.flushHTML)(this)}[r.$addHTML](e,t){(0,i.addHTML)(this,e,t)}[r.$getAvailableSpace](){return(0,i.getAvailableSpace)(this)}[r.$toHTML](e){setTabIndex(this);if("hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return c.HTMLResult.EMPTY;(0,s.fixDimensions)(this);const t=[],a={id:this[r.$uid],class:[]};(0,s.setAccess)(this,a.class);this[r.$extra]||(this[r.$extra]=Object.create(null));Object.assign(this[r.$extra],{children:t,attributes:a,attempt:0,line:null,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,e.width),height:Math.min(this.h||1/0,e.height)},width:0,height:0,prevHeight:0,currentWidth:0});const n=this[r.$isSplittable]();n||setFirstUnsplittable(this);if(!(0,i.checkDimensions)(this,e))return c.HTMLResult.FAILURE;const o=new Set(["field"]);if(this.layout.includes("row")){const e=this[r.$getSubformParent]().columnWidths;if(Array.isArray(e)&&e.length>0){this[r.$extra].columnWidths=e;this[r.$extra].currentColumn=0}}const l=(0,s.toStyle)(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),h=["xfaExclgroup"],u=(0,s.layoutClass)(this);u&&h.push(u);(0,s.isPrintOnly)(this)&&h.push("xfaPrintOnly");a.style=l;a.class=h;this.name&&(a.xfaName=this.name);this[r.$pushPara]();const d="lr-tb"===this.layout||"rl-tb"===this.layout,f=d?2:1;for(;this[r.$extra].attempte>=1||-1===e});this.h=e.h?(0,c.getMeasurement)(e.h):"";this.hAlign=(0,c.getStringOption)(e.hAlign,["left","center","justify","justifyAll","radix","right"]);this.id=e.id||"";this.locale=e.locale||"";this.maxH=(0,c.getMeasurement)(e.maxH,"0pt");this.maxW=(0,c.getMeasurement)(e.maxW,"0pt");this.minH=(0,c.getMeasurement)(e.minH,"0pt");this.minW=(0,c.getMeasurement)(e.minW,"0pt");this.name=e.name||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.relevant=(0,c.getRelevant)(e.relevant);this.rotate=(0,c.getInteger)({data:e.rotate,defaultValue:0,validate:e=>e%90==0});this.use=e.use||"";this.usehref=e.usehref||"";this.w=e.w?(0,c.getMeasurement)(e.w):"";this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.assist=null;this.bind=null;this.border=null;this.calculate=null;this.caption=null;this.desc=null;this.extras=null;this.font=null;this.format=null;this.items=new o.XFAObjectArray(2);this.keep=null;this.margin=null;this.para=null;this.traversal=null;this.ui=null;this.validate=null;this.value=null;this.bindItems=new o.XFAObjectArray;this.connect=new o.XFAObjectArray;this.event=new o.XFAObjectArray;this.setProperty=new o.XFAObjectArray}[r.$isBindable](){return!0}[r.$setValue](e){_setValue(this,e)}[r.$toHTML](e){setTabIndex(this);if(!this.ui){this.ui=new Ui({});this.ui[r.$globalData]=this[r.$globalData];this[r.$appendChild](this.ui);let e;switch(this.items.children.length){case 0:e=new TextEdit({});this.ui.textEdit=e;break;case 1:e=new CheckButton({});this.ui.checkButton=e;break;case 2:e=new ChoiceList({});this.ui.choiceList=e}this.ui[r.$appendChild](e)}if(!this.ui||"hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return c.HTMLResult.EMPTY;this.caption&&delete this.caption[r.$extra];this[r.$pushPara]();const t=this.caption?this.caption[r.$toHTML](e).html:null,a=this.w,n=this.h;let o=0,l=0;if(this.margin){o=this.margin.leftInset+this.margin.rightInset;l=this.margin.topInset+this.margin.bottomInset}let u=null;if(""===this.w||""===this.h){let t=null,a=null,n=0,i=0;if(this.ui.checkButton)n=i=this.ui.checkButton.size;else{const{w:t,h:a}=(0,s.layoutNode)(this,e);if(null!==t){n=t;i=a}else i=(0,h.getMetrics)(this.font,!0).lineNoGap}u=getBorderDims(this.ui[r.$getExtra]());n+=u.w;i+=u.h;if(this.caption){const{w:s,h:o,isBroken:l}=this.caption[r.$getExtra](e);if(l&&this[r.$getSubformParent]()[r.$isThereMoreWidth]()){this[r.$popPara]();return c.HTMLResult.FAILURE}t=s;a=o;switch(this.caption.placement){case"left":case"right":case"inline":t+=n;break;case"top":case"bottom":a+=i}}else{t=n;a=i}if(t&&""===this.w){t+=o;this.w=Math.min(this.maxW<=0?1/0:this.maxW,this.minW+1e>=1&&e<=5});this.appearanceFilter=null;this.certificates=null;this.digestMethods=null;this.encodings=null;this.encryptionMethods=null;this.handler=null;this.lockDocument=null;this.mdp=null;this.reasons=null;this.timeStamp=null}}class Float extends o.ContentObject{constructor(e){super(f,"float");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=parseFloat(this[r.$content].trim());this[r.$content]=isNaN(e)?null:e}[r.$toHTML](e){return valueToHtml(null!==this[r.$content]?this[r.$content].toString():"")}}class Font extends o.XFAObject{constructor(e){super(f,"font",!0);this.baselineShift=(0,c.getMeasurement)(e.baselineShift);this.fontHorizontalScale=(0,c.getFloat)({data:e.fontHorizontalScale,defaultValue:100,validate:e=>e>=0});this.fontVerticalScale=(0,c.getFloat)({data:e.fontVerticalScale,defaultValue:100,validate:e=>e>=0});this.id=e.id||"";this.kerningMode=(0,c.getStringOption)(e.kerningMode,["none","pair"]);this.letterSpacing=(0,c.getMeasurement)(e.letterSpacing,"0");this.lineThrough=(0,c.getInteger)({data:e.lineThrough,defaultValue:0,validate:e=>1===e||2===e});this.lineThroughPeriod=(0,c.getStringOption)(e.lineThroughPeriod,["all","word"]);this.overline=(0,c.getInteger)({data:e.overline,defaultValue:0,validate:e=>1===e||2===e});this.overlinePeriod=(0,c.getStringOption)(e.overlinePeriod,["all","word"]);this.posture=(0,c.getStringOption)(e.posture,["normal","italic"]);this.size=(0,c.getMeasurement)(e.size,"10pt");this.typeface=e.typeface||"Courier";this.underline=(0,c.getInteger)({data:e.underline,defaultValue:0,validate:e=>1===e||2===e});this.underlinePeriod=(0,c.getStringOption)(e.underlinePeriod,["all","word"]);this.use=e.use||"";this.usehref=e.usehref||"";this.weight=(0,c.getStringOption)(e.weight,["normal","bold"]);this.extras=null;this.fill=null}[r.$clean](e){super[r.$clean](e);this[r.$globalData].usedTypefaces.add(this.typeface)}[r.$toStyle](){const e=(0,s.toStyle)(this,"fill"),t=e.color;if(t)if("#000000"===t)delete e.color;else if(!t.startsWith("#")){e.background=t;e.backgroundClip="text";e.color="transparent"}this.baselineShift&&(e.verticalAlign=(0,s.measureToString)(this.baselineShift));e.fontKerning="none"===this.kerningMode?"none":"normal";e.letterSpacing=(0,s.measureToString)(this.letterSpacing);if(0!==this.lineThrough){e.textDecoration="line-through";2===this.lineThrough&&(e.textDecorationStyle="double")}if(0!==this.overline){e.textDecoration="overline";2===this.overline&&(e.textDecorationStyle="double")}e.fontStyle=this.posture;e.fontSize=(0,s.measureToString)(.99*this.size);(0,s.setFontFamily)(this,this,this[r.$globalData].fontFinder,e);if(0!==this.underline){e.textDecoration="underline";2===this.underline&&(e.textDecorationStyle="double")}e.fontWeight=this.weight;return e}}class Format extends o.XFAObject{constructor(e){super(f,"format",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.picture=null}}class Handler extends o.StringObject{constructor(e){super(f,"handler");this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||""}}class Hyphenation extends o.XFAObject{constructor(e){super(f,"hyphenation");this.excludeAllCaps=(0,c.getInteger)({data:e.excludeAllCaps,defaultValue:0,validate:e=>1===e});this.excludeInitialCap=(0,c.getInteger)({data:e.excludeInitialCap,defaultValue:0,validate:e=>1===e});this.hyphenate=(0,c.getInteger)({data:e.hyphenate,defaultValue:0,validate:e=>1===e});this.id=e.id||"";this.pushCharacterCount=(0,c.getInteger)({data:e.pushCharacterCount,defaultValue:3,validate:e=>e>=0});this.remainCharacterCount=(0,c.getInteger)({data:e.remainCharacterCount,defaultValue:3,validate:e=>e>=0});this.use=e.use||"";this.usehref=e.usehref||"";this.wordCharacterCount=(0,c.getInteger)({data:e.wordCharacterCount,defaultValue:7,validate:e=>e>=0})}}class Image extends o.StringObject{constructor(e){super(f,"image");this.aspect=(0,c.getStringOption)(e.aspect,["fit","actual","height","none","width"]);this.contentType=e.contentType||"";this.href=e.href||"";this.id=e.id||"";this.name=e.name||"";this.transferEncoding=(0,c.getStringOption)(e.transferEncoding,["base64","none","package"]);this.use=e.use||"";this.usehref=e.usehref||""}[r.$toHTML](){if(this.contentType&&!m.has(this.contentType.toLowerCase()))return c.HTMLResult.EMPTY;let e=this[r.$globalData].images&&this[r.$globalData].images.get(this.href);if(!e&&(this.href||!this[r.$content]))return c.HTMLResult.EMPTY;e||"base64"!==this.transferEncoding||(e=(0,l.stringToBytes)(atob(this[r.$content])));if(!e)return c.HTMLResult.EMPTY;if(!this.contentType){for(const[t,a]of b)if(e.length>t.length&&t.every(((t,a)=>t===e[a]))){this.contentType=a;break}if(!this.contentType)return c.HTMLResult.EMPTY}const t=new Blob([e],{type:this.contentType});let a;switch(this.aspect){case"fit":case"actual":break;case"height":a={height:"100%",objectFit:"fill"};break;case"none":a={width:"100%",height:"100%",objectFit:"fill"};break;case"width":a={width:"100%",objectFit:"fill"}}const n=this[r.$getParent]();return c.HTMLResult.success({name:"img",attributes:{class:["xfaImage"],style:a,src:URL.createObjectURL(t),alt:n?ariaLabel(n[r.$getParent]()):null}})}}class ImageEdit extends o.XFAObject{constructor(e){super(f,"imageEdit",!0);this.data=(0,c.getStringOption)(e.data,["link","embed"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.extras=null;this.margin=null}[r.$toHTML](e){return"embed"===this.data?c.HTMLResult.success({name:"div",children:[],attributes:{}}):c.HTMLResult.EMPTY}}class Integer extends o.ContentObject{constructor(e){super(f,"integer");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=parseInt(this[r.$content].trim(),10);this[r.$content]=isNaN(e)?null:e}[r.$toHTML](e){return valueToHtml(null!==this[r.$content]?this[r.$content].toString():"")}}class Issuers extends o.XFAObject{constructor(e){super(f,"issuers",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.certificate=new o.XFAObjectArray}}class Items extends o.XFAObject{constructor(e){super(f,"items",!0);this.id=e.id||"";this.name=e.name||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.ref=e.ref||"";this.save=(0,c.getInteger)({data:e.save,defaultValue:0,validate:e=>1===e});this.use=e.use||"";this.usehref=e.usehref||"";this.boolean=new o.XFAObjectArray;this.date=new o.XFAObjectArray;this.dateTime=new o.XFAObjectArray;this.decimal=new o.XFAObjectArray;this.exData=new o.XFAObjectArray;this.float=new o.XFAObjectArray;this.image=new o.XFAObjectArray;this.integer=new o.XFAObjectArray;this.text=new o.XFAObjectArray;this.time=new o.XFAObjectArray}[r.$toHTML](){const e=[];for(const t of this[r.$getChildren]())e.push(t[r.$text]());return c.HTMLResult.success(e)}}t.Items=Items;class Keep extends o.XFAObject{constructor(e){super(f,"keep",!0);this.id=e.id||"";const t=["none","contentArea","pageArea"];this.intact=(0,c.getStringOption)(e.intact,t);this.next=(0,c.getStringOption)(e.next,t);this.previous=(0,c.getStringOption)(e.previous,t);this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}}class KeyUsage extends o.XFAObject{constructor(e){super(f,"keyUsage");const t=["","yes","no"];this.crlSign=(0,c.getStringOption)(e.crlSign,t);this.dataEncipherment=(0,c.getStringOption)(e.dataEncipherment,t);this.decipherOnly=(0,c.getStringOption)(e.decipherOnly,t);this.digitalSignature=(0,c.getStringOption)(e.digitalSignature,t);this.encipherOnly=(0,c.getStringOption)(e.encipherOnly,t);this.id=e.id||"";this.keyAgreement=(0,c.getStringOption)(e.keyAgreement,t);this.keyCertSign=(0,c.getStringOption)(e.keyCertSign,t);this.keyEncipherment=(0,c.getStringOption)(e.keyEncipherment,t);this.nonRepudiation=(0,c.getStringOption)(e.nonRepudiation,t);this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||""}}class Line extends o.XFAObject{constructor(e){super(f,"line",!0);this.hand=(0,c.getStringOption)(e.hand,["even","left","right"]);this.id=e.id||"";this.slope=(0,c.getStringOption)(e.slope,["\\","/"]);this.use=e.use||"";this.usehref=e.usehref||"";this.edge=null}[r.$toHTML](){const e=this[r.$getParent]()[r.$getParent](),t=this.edge||new Edge({}),a=t[r.$toStyle](),n=Object.create(null),i="visible"===t.presence?t.thickness:0;n.strokeWidth=(0,s.measureToString)(i);n.stroke=a.color;let o,l,h,u,d="100%",f="100%";if(e.w<=i){[o,l,h,u]=["50%",0,"50%","100%"];d=n.strokeWidth}else if(e.h<=i){[o,l,h,u]=[0,"50%","100%","50%"];f=n.strokeWidth}else"\\"===this.slope?[o,l,h,u]=[0,0,"100%","100%"]:[o,l,h,u]=[0,"100%","100%",0];const p={name:"svg",children:[{name:"line",attributes:{xmlns:g,x1:o,y1:l,x2:h,y2:u,style:n}}],attributes:{xmlns:g,width:d,height:f,style:{overflow:"visible"}}};if(hasMargin(e))return c.HTMLResult.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[p]});p.attributes.style.position="absolute";return c.HTMLResult.success(p)}}class Linear extends o.XFAObject{constructor(e){super(f,"linear",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["toRight","toBottom","toLeft","toTop"]);this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](e){e=e?e[r.$toStyle]():"#FFFFFF";return`linear-gradient(${this.type.replace(/([RBLT])/," $1").toLowerCase()}, ${e}, ${this.color?this.color[r.$toStyle]():"#000000"})`}}class LockDocument extends o.ContentObject{constructor(e){super(f,"lockDocument");this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){this[r.$content]=(0,c.getStringOption)(this[r.$content],["auto","0","1"])}}class Manifest extends o.XFAObject{constructor(e){super(f,"manifest",!0);this.action=(0,c.getStringOption)(e.action,["include","all","exclude"]);this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.ref=new o.XFAObjectArray}}class Margin extends o.XFAObject{constructor(e){super(f,"margin",!0);this.bottomInset=(0,c.getMeasurement)(e.bottomInset,"0");this.id=e.id||"";this.leftInset=(0,c.getMeasurement)(e.leftInset,"0");this.rightInset=(0,c.getMeasurement)(e.rightInset,"0");this.topInset=(0,c.getMeasurement)(e.topInset,"0");this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}[r.$toStyle](){return{margin:(0,s.measureToString)(this.topInset)+" "+(0,s.measureToString)(this.rightInset)+" "+(0,s.measureToString)(this.bottomInset)+" "+(0,s.measureToString)(this.leftInset)}}}class Mdp extends o.XFAObject{constructor(e){super(f,"mdp");this.id=e.id||"";this.permissions=(0,c.getInteger)({data:e.permissions,defaultValue:2,validate:e=>1===e||3===e});this.signatureType=(0,c.getStringOption)(e.signatureType,["filler","author"]);this.use=e.use||"";this.usehref=e.usehref||""}}class Medium extends o.XFAObject{constructor(e){super(f,"medium");this.id=e.id||"";this.imagingBBox=(0,c.getBBox)(e.imagingBBox);this.long=(0,c.getMeasurement)(e.long);this.orientation=(0,c.getStringOption)(e.orientation,["portrait","landscape"]);this.short=(0,c.getMeasurement)(e.short);this.stock=e.stock||"";this.trayIn=(0,c.getStringOption)(e.trayIn,["auto","delegate","pageFront"]);this.trayOut=(0,c.getStringOption)(e.trayOut,["auto","delegate"]);this.use=e.use||"";this.usehref=e.usehref||""}}class Message extends o.XFAObject{constructor(e){super(f,"message",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.text=new o.XFAObjectArray}}class NumericEdit extends o.XFAObject{constructor(e){super(f,"numericEdit",!0);this.hScrollPolicy=(0,c.getStringOption)(e.hScrollPolicy,["auto","off","on"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.comb=null;this.extras=null;this.margin=null}[r.$toHTML](e){const t=(0,s.toStyle)(this,"border","font","margin"),a=this[r.$getParent]()[r.$getParent](),n={name:"input",attributes:{type:"text",fieldId:a[r.$uid],dataId:a[r.$data]?.[r.$uid]||a[r.$uid],class:["xfaTextfield"],style:t,"aria-label":ariaLabel(a),"aria-required":!1}};if(isRequired(a)){n.attributes["aria-required"]=!0;n.attributes.required=!0}return c.HTMLResult.success({name:"label",attributes:{class:["xfaLabel"]},children:[n]})}}class Occur extends o.XFAObject{constructor(e){super(f,"occur",!0);this.id=e.id||"";this.initial=""!==e.initial?(0,c.getInteger)({data:e.initial,defaultValue:"",validate:e=>!0}):"";this.max=""!==e.max?(0,c.getInteger)({data:e.max,defaultValue:1,validate:e=>!0}):"";this.min=""!==e.min?(0,c.getInteger)({data:e.min,defaultValue:1,validate:e=>!0}):"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}[r.$clean](){const e=this[r.$getParent](),t=this.min;""===this.min&&(this.min=e instanceof PageArea||e instanceof PageSet?0:1);""===this.max&&(this.max=""===t?e instanceof PageArea||e instanceof PageSet?-1:1:this.min);-1!==this.max&&this.max!0});this.name=e.name||"";this.numbered=(0,c.getInteger)({data:e.numbered,defaultValue:1,validate:e=>!0});this.oddOrEven=(0,c.getStringOption)(e.oddOrEven,["any","even","odd"]);this.pagePosition=(0,c.getStringOption)(e.pagePosition,["any","first","last","only","rest"]);this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.desc=null;this.extras=null;this.medium=null;this.occur=null;this.area=new o.XFAObjectArray;this.contentArea=new o.XFAObjectArray;this.draw=new o.XFAObjectArray;this.exclGroup=new o.XFAObjectArray;this.field=new o.XFAObjectArray;this.subform=new o.XFAObjectArray}[r.$isUsable](){if(!this[r.$extra]){this[r.$extra]={numberOfUse:0};return!0}return!this.occur||-1===this.occur.max||this[r.$extra].numberOfUsee.oddOrEven===t&&e.pagePosition===a));if(n)return n;n=this.pageArea.children.find((e=>"any"===e.oddOrEven&&e.pagePosition===a));if(n)return n;n=this.pageArea.children.find((e=>"any"===e.oddOrEven&&"any"===e.pagePosition));return n||this.pageArea.children[0]}}class Para extends o.XFAObject{constructor(e){super(f,"para",!0);this.hAlign=(0,c.getStringOption)(e.hAlign,["left","center","justify","justifyAll","radix","right"]);this.id=e.id||"";this.lineHeight=e.lineHeight?(0,c.getMeasurement)(e.lineHeight,"0pt"):"";this.marginLeft=e.marginLeft?(0,c.getMeasurement)(e.marginLeft,"0pt"):"";this.marginRight=e.marginRight?(0,c.getMeasurement)(e.marginRight,"0pt"):"";this.orphans=(0,c.getInteger)({data:e.orphans,defaultValue:0,validate:e=>e>=0});this.preserve=e.preserve||"";this.radixOffset=e.radixOffset?(0,c.getMeasurement)(e.radixOffset,"0pt"):"";this.spaceAbove=e.spaceAbove?(0,c.getMeasurement)(e.spaceAbove,"0pt"):"";this.spaceBelow=e.spaceBelow?(0,c.getMeasurement)(e.spaceBelow,"0pt"):"";this.tabDefault=e.tabDefault?(0,c.getMeasurement)(this.tabDefault):"";this.tabStops=(e.tabStops||"").trim().split(/\s+/).map(((e,t)=>t%2==1?(0,c.getMeasurement)(e):e));this.textIndent=e.textIndent?(0,c.getMeasurement)(e.textIndent,"0pt"):"";this.use=e.use||"";this.usehref=e.usehref||"";this.vAlign=(0,c.getStringOption)(e.vAlign,["top","bottom","middle"]);this.widows=(0,c.getInteger)({data:e.widows,defaultValue:0,validate:e=>e>=0});this.hyphenation=null}[r.$toStyle](){const e=(0,s.toStyle)(this,"hAlign");""!==this.marginLeft&&(e.paddingLeft=(0,s.measureToString)(this.marginLeft));""!==this.marginRight&&(e.paddingight=(0,s.measureToString)(this.marginRight));""!==this.spaceAbove&&(e.paddingTop=(0,s.measureToString)(this.spaceAbove));""!==this.spaceBelow&&(e.paddingBottom=(0,s.measureToString)(this.spaceBelow));if(""!==this.textIndent){e.textIndent=(0,s.measureToString)(this.textIndent);(0,s.fixTextIndent)(e)}this.lineHeight>0&&(e.lineHeight=(0,s.measureToString)(this.lineHeight));""!==this.tabDefault&&(e.tabSize=(0,s.measureToString)(this.tabDefault));this.tabStops.length;this.hyphenatation&&Object.assign(e,this.hyphenatation[r.$toStyle]());return e}}class PasswordEdit extends o.XFAObject{constructor(e){super(f,"passwordEdit",!0);this.hScrollPolicy=(0,c.getStringOption)(e.hScrollPolicy,["auto","off","on"]);this.id=e.id||"";this.passwordChar=e.passwordChar||"*";this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.extras=null;this.margin=null}}class Pattern extends o.XFAObject{constructor(e){super(f,"pattern",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["crossHatch","crossDiagonal","diagonalLeft","diagonalRight","horizontal","vertical"]);this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](e){e=e?e[r.$toStyle]():"#FFFFFF";const t=this.color?this.color[r.$toStyle]():"#000000",a="repeating-linear-gradient",n=`${e},${e} 5px,${t} 5px,${t} 10px`;switch(this.type){case"crossHatch":return`${a}(to top,${n}) ${a}(to right,${n})`;case"crossDiagonal":return`${a}(45deg,${n}) ${a}(-45deg,${n})`;case"diagonalLeft":return`${a}(45deg,${n})`;case"diagonalRight":return`${a}(-45deg,${n})`;case"horizontal":return`${a}(to top,${n})`;case"vertical":return`${a}(to right,${n})`}return""}}class Picture extends o.StringObject{constructor(e){super(f,"picture");this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Proto extends o.XFAObject{constructor(e){super(f,"proto",!0);this.appearanceFilter=new o.XFAObjectArray;this.arc=new o.XFAObjectArray;this.area=new o.XFAObjectArray;this.assist=new o.XFAObjectArray;this.barcode=new o.XFAObjectArray;this.bindItems=new o.XFAObjectArray;this.bookend=new o.XFAObjectArray;this.boolean=new o.XFAObjectArray;this.border=new o.XFAObjectArray;this.break=new o.XFAObjectArray;this.breakAfter=new o.XFAObjectArray;this.breakBefore=new o.XFAObjectArray;this.button=new o.XFAObjectArray;this.calculate=new o.XFAObjectArray;this.caption=new o.XFAObjectArray;this.certificate=new o.XFAObjectArray;this.certificates=new o.XFAObjectArray;this.checkButton=new o.XFAObjectArray;this.choiceList=new o.XFAObjectArray;this.color=new o.XFAObjectArray;this.comb=new o.XFAObjectArray;this.connect=new o.XFAObjectArray;this.contentArea=new o.XFAObjectArray;this.corner=new o.XFAObjectArray;this.date=new o.XFAObjectArray;this.dateTime=new o.XFAObjectArray;this.dateTimeEdit=new o.XFAObjectArray;this.decimal=new o.XFAObjectArray;this.defaultUi=new o.XFAObjectArray;this.desc=new o.XFAObjectArray;this.digestMethod=new o.XFAObjectArray;this.digestMethods=new o.XFAObjectArray;this.draw=new o.XFAObjectArray;this.edge=new o.XFAObjectArray;this.encoding=new o.XFAObjectArray;this.encodings=new o.XFAObjectArray;this.encrypt=new o.XFAObjectArray;this.encryptData=new o.XFAObjectArray;this.encryption=new o.XFAObjectArray;this.encryptionMethod=new o.XFAObjectArray;this.encryptionMethods=new o.XFAObjectArray;this.event=new o.XFAObjectArray;this.exData=new o.XFAObjectArray;this.exObject=new o.XFAObjectArray;this.exclGroup=new o.XFAObjectArray;this.execute=new o.XFAObjectArray;this.extras=new o.XFAObjectArray;this.field=new o.XFAObjectArray;this.fill=new o.XFAObjectArray;this.filter=new o.XFAObjectArray;this.float=new o.XFAObjectArray;this.font=new o.XFAObjectArray;this.format=new o.XFAObjectArray;this.handler=new o.XFAObjectArray;this.hyphenation=new o.XFAObjectArray;this.image=new o.XFAObjectArray;this.imageEdit=new o.XFAObjectArray;this.integer=new o.XFAObjectArray;this.issuers=new o.XFAObjectArray;this.items=new o.XFAObjectArray;this.keep=new o.XFAObjectArray;this.keyUsage=new o.XFAObjectArray;this.line=new o.XFAObjectArray;this.linear=new o.XFAObjectArray;this.lockDocument=new o.XFAObjectArray;this.manifest=new o.XFAObjectArray;this.margin=new o.XFAObjectArray;this.mdp=new o.XFAObjectArray;this.medium=new o.XFAObjectArray;this.message=new o.XFAObjectArray;this.numericEdit=new o.XFAObjectArray;this.occur=new o.XFAObjectArray;this.oid=new o.XFAObjectArray;this.oids=new o.XFAObjectArray;this.overflow=new o.XFAObjectArray;this.pageArea=new o.XFAObjectArray;this.pageSet=new o.XFAObjectArray;this.para=new o.XFAObjectArray;this.passwordEdit=new o.XFAObjectArray;this.pattern=new o.XFAObjectArray;this.picture=new o.XFAObjectArray;this.radial=new o.XFAObjectArray;this.reason=new o.XFAObjectArray;this.reasons=new o.XFAObjectArray;this.rectangle=new o.XFAObjectArray;this.ref=new o.XFAObjectArray;this.script=new o.XFAObjectArray;this.setProperty=new o.XFAObjectArray;this.signData=new o.XFAObjectArray;this.signature=new o.XFAObjectArray;this.signing=new o.XFAObjectArray;this.solid=new o.XFAObjectArray;this.speak=new o.XFAObjectArray;this.stipple=new o.XFAObjectArray;this.subform=new o.XFAObjectArray;this.subformSet=new o.XFAObjectArray;this.subjectDN=new o.XFAObjectArray;this.subjectDNs=new o.XFAObjectArray;this.submit=new o.XFAObjectArray;this.text=new o.XFAObjectArray;this.textEdit=new o.XFAObjectArray;this.time=new o.XFAObjectArray;this.timeStamp=new o.XFAObjectArray;this.toolTip=new o.XFAObjectArray;this.traversal=new o.XFAObjectArray;this.traverse=new o.XFAObjectArray;this.ui=new o.XFAObjectArray;this.validate=new o.XFAObjectArray;this.value=new o.XFAObjectArray;this.variables=new o.XFAObjectArray}}class Radial extends o.XFAObject{constructor(e){super(f,"radial",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["toEdge","toCenter"]);this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](e){e=e?e[r.$toStyle]():"#FFFFFF";const t=this.color?this.color[r.$toStyle]():"#000000";return`radial-gradient(circle at center, ${"toEdge"===this.type?`${e},${t}`:`${t},${e}`})`}}class Reason extends o.StringObject{constructor(e){super(f,"reason");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Reasons extends o.XFAObject{constructor(e){super(f,"reasons",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.reason=new o.XFAObjectArray}}class Rectangle extends o.XFAObject{constructor(e){super(f,"rectangle",!0);this.hand=(0,c.getStringOption)(e.hand,["even","left","right"]);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.corner=new o.XFAObjectArray(4);this.edge=new o.XFAObjectArray(4);this.fill=null}[r.$toHTML](){const e=this.edge.children.length?this.edge.children[0]:new Edge({}),t=e[r.$toStyle](),a=Object.create(null);"visible"===this.fill?.presence?Object.assign(a,this.fill[r.$toStyle]()):a.fill="transparent";a.strokeWidth=(0,s.measureToString)("visible"===e.presence?e.thickness:0);a.stroke=t.color;const n=(this.corner.children.length?this.corner.children[0]:new Corner({}))[r.$toStyle](),i={name:"svg",children:[{name:"rect",attributes:{xmlns:g,width:"100%",height:"100%",x:0,y:0,rx:n.radius,ry:n.radius,style:a}}],attributes:{xmlns:g,style:{overflow:"visible"},width:"100%",height:"100%"}};if(hasMargin(this[r.$getParent]()[r.$getParent]()))return c.HTMLResult.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[i]});i.attributes.style.position="absolute";return c.HTMLResult.success(i)}}class RefElement extends o.StringObject{constructor(e){super(f,"ref");this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Script extends o.StringObject{constructor(e){super(f,"script");this.binding=e.binding||"";this.contentType=e.contentType||"";this.id=e.id||"";this.name=e.name||"";this.runAt=(0,c.getStringOption)(e.runAt,["client","both","server"]);this.use=e.use||"";this.usehref=e.usehref||""}}class SetProperty extends o.XFAObject{constructor(e){super(f,"setProperty");this.connection=e.connection||"";this.ref=e.ref||"";this.target=e.target||""}}t.SetProperty=SetProperty;class SignData extends o.XFAObject{constructor(e){super(f,"signData",!0);this.id=e.id||"";this.operation=(0,c.getStringOption)(e.operation,["sign","clear","verify"]);this.ref=e.ref||"";this.target=e.target||"";this.use=e.use||"";this.usehref=e.usehref||"";this.filter=null;this.manifest=null}}class Signature extends o.XFAObject{constructor(e){super(f,"signature",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["PDF1.3","PDF1.6"]);this.use=e.use||"";this.usehref=e.usehref||"";this.border=null;this.extras=null;this.filter=null;this.manifest=null;this.margin=null}}class Signing extends o.XFAObject{constructor(e){super(f,"signing",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.certificate=new o.XFAObjectArray}}class Solid extends o.XFAObject{constructor(e){super(f,"solid",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null}[r.$toStyle](e){return e?e[r.$toStyle]():"#FFFFFF"}}class Speak extends o.StringObject{constructor(e){super(f,"speak");this.disable=(0,c.getInteger)({data:e.disable,defaultValue:0,validate:e=>1===e});this.id=e.id||"";this.priority=(0,c.getStringOption)(e.priority,["custom","caption","name","toolTip"]);this.rid=e.rid||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Stipple extends o.XFAObject{constructor(e){super(f,"stipple",!0);this.id=e.id||"";this.rate=(0,c.getInteger)({data:e.rate,defaultValue:50,validate:e=>e>=0&&e<=100});this.use=e.use||"";this.usehref=e.usehref||"";this.color=null;this.extras=null}[r.$toStyle](e){const t=this.rate/100;return l.Util.makeHexColor(Math.round(e.value.r*(1-t)+this.value.r*t),Math.round(e.value.g*(1-t)+this.value.g*t),Math.round(e.value.b*(1-t)+this.value.b*t))}}class Subform extends o.XFAObject{constructor(e){super(f,"subform",!0);this.access=(0,c.getStringOption)(e.access,["open","nonInteractive","protected","readOnly"]);this.allowMacro=(0,c.getInteger)({data:e.allowMacro,defaultValue:0,validate:e=>1===e});this.anchorType=(0,c.getStringOption)(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]);this.colSpan=(0,c.getInteger)({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e});this.columnWidths=(e.columnWidths||"").trim().split(/\s+/).map((e=>"-1"===e?-1:(0,c.getMeasurement)(e)));this.h=e.h?(0,c.getMeasurement)(e.h):"";this.hAlign=(0,c.getStringOption)(e.hAlign,["left","center","justify","justifyAll","radix","right"]);this.id=e.id||"";this.layout=(0,c.getStringOption)(e.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]);this.locale=e.locale||"";this.maxH=(0,c.getMeasurement)(e.maxH,"0pt");this.maxW=(0,c.getMeasurement)(e.maxW,"0pt");this.mergeMode=(0,c.getStringOption)(e.mergeMode,["consumeData","matchTemplate"]);this.minH=(0,c.getMeasurement)(e.minH,"0pt");this.minW=(0,c.getMeasurement)(e.minW,"0pt");this.name=e.name||"";this.presence=(0,c.getStringOption)(e.presence,["visible","hidden","inactive","invisible"]);this.relevant=(0,c.getRelevant)(e.relevant);this.restoreState=(0,c.getStringOption)(e.restoreState,["manual","auto"]);this.scope=(0,c.getStringOption)(e.scope,["name","none"]);this.use=e.use||"";this.usehref=e.usehref||"";this.w=e.w?(0,c.getMeasurement)(e.w):"";this.x=(0,c.getMeasurement)(e.x,"0pt");this.y=(0,c.getMeasurement)(e.y,"0pt");this.assist=null;this.bind=null;this.bookend=null;this.border=null;this.break=null;this.calculate=null;this.desc=null;this.extras=null;this.keep=null;this.margin=null;this.occur=null;this.overflow=null;this.pageSet=null;this.para=null;this.traversal=null;this.validate=null;this.variables=null;this.area=new o.XFAObjectArray;this.breakAfter=new o.XFAObjectArray;this.breakBefore=new o.XFAObjectArray;this.connect=new o.XFAObjectArray;this.draw=new o.XFAObjectArray;this.event=new o.XFAObjectArray;this.exObject=new o.XFAObjectArray;this.exclGroup=new o.XFAObjectArray;this.field=new o.XFAObjectArray;this.proto=new o.XFAObjectArray;this.setProperty=new o.XFAObjectArray;this.subform=new o.XFAObjectArray;this.subformSet=new o.XFAObjectArray}[r.$getSubformParent](){const e=this[r.$getParent]();return e instanceof SubformSet?e[r.$getSubformParent]():e}[r.$isBindable](){return!0}[r.$isThereMoreWidth](){return this.layout.endsWith("-tb")&&0===this[r.$extra].attempt&&this[r.$extra].numberInLine>0||this[r.$getParent]()[r.$isThereMoreWidth]()}*[r.$getContainedChildren](){yield*getContainedChildren(this)}[r.$flushHTML](){return(0,i.flushHTML)(this)}[r.$addHTML](e,t){(0,i.addHTML)(this,e,t)}[r.$getAvailableSpace](){return(0,i.getAvailableSpace)(this)}[r.$isSplittable](){const e=this[r.$getSubformParent]();if(!e[r.$isSplittable]())return!1;if(void 0!==this[r.$extra]._isSplittable)return this[r.$extra]._isSplittable;if("position"===this.layout||this.layout.includes("row")){this[r.$extra]._isSplittable=!1;return!1}if(this.keep&&"none"!==this.keep.intact){this[r.$extra]._isSplittable=!1;return!1}if(e.layout?.endsWith("-tb")&&0!==e[r.$extra].numberInLine)return!1;this[r.$extra]._isSplittable=!0;return!0}[r.$toHTML](e){setTabIndex(this);if(this.break){if("auto"!==this.break.after||""!==this.break.afterTarget){const e=new BreakAfter({targetType:this.break.after,target:this.break.afterTarget,startNew:this.break.startNew.toString()});e[r.$globalData]=this[r.$globalData];this[r.$appendChild](e);this.breakAfter.push(e)}if("auto"!==this.break.before||""!==this.break.beforeTarget){const e=new BreakBefore({targetType:this.break.before,target:this.break.beforeTarget,startNew:this.break.startNew.toString()});e[r.$globalData]=this[r.$globalData];this[r.$appendChild](e);this.breakBefore.push(e)}if(""!==this.break.overflowTarget){const e=new Overflow({target:this.break.overflowTarget,leader:this.break.overflowLeader,trailer:this.break.overflowTrailer});e[r.$globalData]=this[r.$globalData];this[r.$appendChild](e);this.overflow.push(e)}this[r.$removeChild](this.break);this.break=null}if("hidden"===this.presence||"inactive"===this.presence)return c.HTMLResult.EMPTY;(this.breakBefore.children.length>1||this.breakAfter.children.length>1)&&(0,l.warn)("XFA - Several breakBefore or breakAfter in subforms: please file a bug.");if(this.breakBefore.children.length>=1){const e=this.breakBefore.children[0];if(handleBreak(e))return c.HTMLResult.breakNode(e)}if(this[r.$extra]?.afterBreakAfter)return c.HTMLResult.EMPTY;(0,s.fixDimensions)(this);const t=[],a={id:this[r.$uid],class:[]};(0,s.setAccess)(this,a.class);this[r.$extra]||(this[r.$extra]=Object.create(null));Object.assign(this[r.$extra],{children:t,line:null,attributes:a,attempt:0,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,e.width),height:Math.min(this.h||1/0,e.height)},width:0,height:0,prevHeight:0,currentWidth:0});const n=this[r.$getTemplateRoot](),o=n[r.$extra].noLayoutFailure,h=this[r.$isSplittable]();h||setFirstUnsplittable(this);if(!(0,i.checkDimensions)(this,e))return c.HTMLResult.FAILURE;const u=new Set(["area","draw","exclGroup","field","subform","subformSet"]);if(this.layout.includes("row")){const e=this[r.$getSubformParent]().columnWidths;if(Array.isArray(e)&&e.length>0){this[r.$extra].columnWidths=e;this[r.$extra].currentColumn=0}}const d=(0,s.toStyle)(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),f=["xfaSubform"],g=(0,s.layoutClass)(this);g&&f.push(g);a.style=d;a.class=f;this.name&&(a.xfaName=this.name);if(this.overflow){const t=this.overflow[r.$getExtra]();if(t.addLeader){t.addLeader=!1;handleOverflow(this,t.leader,e)}}this[r.$pushPara]();const p="lr-tb"===this.layout||"rl-tb"===this.layout,m=p?2:1;for(;this[r.$extra].attempt=1){const e=this.breakAfter.children[0];if(handleBreak(e)){this[r.$extra].afterBreakAfter=k;return c.HTMLResult.breakNode(e)}}delete this[r.$extra];return k}}class SubformSet extends o.XFAObject{constructor(e){super(f,"subformSet",!0);this.id=e.id||"";this.name=e.name||"";this.relation=(0,c.getStringOption)(e.relation,["ordered","choice","unordered"]);this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.bookend=null;this.break=null;this.desc=null;this.extras=null;this.occur=null;this.overflow=null;this.breakAfter=new o.XFAObjectArray;this.breakBefore=new o.XFAObjectArray;this.subform=new o.XFAObjectArray;this.subformSet=new o.XFAObjectArray}*[r.$getContainedChildren](){yield*getContainedChildren(this)}[r.$getSubformParent](){let e=this[r.$getParent]();for(;!(e instanceof Subform);)e=e[r.$getParent]();return e}[r.$isBindable](){return!0}}class SubjectDN extends o.ContentObject{constructor(e){super(f,"subjectDN");this.delimiter=e.delimiter||",";this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){this[r.$content]=new Map(this[r.$content].split(this.delimiter).map((e=>{(e=e.split("=",2))[0]=e[0].trim();return e})))}}class SubjectDNs extends o.XFAObject{constructor(e){super(f,"subjectDNs",!0);this.id=e.id||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||"";this.subjectDN=new o.XFAObjectArray}}class Submit extends o.XFAObject{constructor(e){super(f,"submit",!0);this.embedPDF=(0,c.getInteger)({data:e.embedPDF,defaultValue:0,validate:e=>1===e});this.format=(0,c.getStringOption)(e.format,["xdp","formdata","pdf","urlencoded","xfd","xml"]);this.id=e.id||"";this.target=e.target||"";this.textEncoding=(0,c.getKeyword)({data:e.textEncoding?e.textEncoding.toLowerCase():"",defaultValue:"",validate:e=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(e)||e.match(/iso-8859-\d{2}/)});this.use=e.use||"";this.usehref=e.usehref||"";this.xdpContent=e.xdpContent||"";this.encrypt=null;this.encryptData=new o.XFAObjectArray;this.signData=new o.XFAObjectArray}}class Template extends o.XFAObject{constructor(e){super(f,"template",!0);this.baseProfile=(0,c.getStringOption)(e.baseProfile,["full","interactiveForms"]);this.extras=null;this.subform=new o.XFAObjectArray}[r.$finalize](){0===this.subform.children.length&&(0,l.warn)("XFA - No subforms in template node.");this.subform.children.length>=2&&(0,l.warn)("XFA - Several subforms in template node: please file a bug.");this[r.$tabIndex]=5e3}[r.$isSplittable](){return!0}[r.$searchNode](e,t){return e.startsWith("#")?[this[r.$ids].get(e.slice(1))]:(0,d.searchNode)(this,t,e,!0,!0)}*[r.$toPages](){if(!this.subform.children.length)return c.HTMLResult.success({name:"div",children:[]});this[r.$extra]={overflowNode:null,firstUnsplittable:null,currentContentArea:null,currentPageArea:null,noLayoutFailure:!1,pageNumber:1,pagePosition:"first",oddOrEven:"odd",blankOrNotBlank:"nonBlank",paraStack:[]};const e=this.subform.children[0];e.pageSet[r.$cleanPage]();const t=e.pageSet.pageArea.children,a={name:"div",children:[]};let n=null,i=null,s=null;if(e.breakBefore.children.length>=1){i=e.breakBefore.children[0];s=i.target}else if(e.subform.children.length>=1&&e.subform.children[0].breakBefore.children.length>=1){i=e.subform.children[0].breakBefore.children[0];s=i.target}else if(e.break?.beforeTarget){i=e.break;s=i.beforeTarget}else if(e.subform.children.length>=1&&e.subform.children[0].break?.beforeTarget){i=e.subform.children[0].break;s=i.beforeTarget}if(i){const e=this[r.$searchNode](s,i[r.$getParent]());if(e instanceof PageArea){n=e;i[r.$extra]={}}}n||(n=t[0]);n[r.$extra]={numberOfUse:1};const o=n[r.$getParent]();o[r.$extra]={numberOfUse:1,pageIndex:o.pageArea.children.indexOf(n),pageSetIndex:0};let h,u=null,d=null,f=!0,g=0,p=0;for(;;){if(f)g=0;else{a.children.pop();if(3==++g){(0,l.warn)("XFA - Something goes wrong: please file a bug.");return a}}h=null;this[r.$extra].currentPageArea=n;const t=n[r.$toHTML]().html;a.children.push(t);if(u){this[r.$extra].noLayoutFailure=!0;t.children.push(u[r.$toHTML](n[r.$extra].space).html);u=null}if(d){this[r.$extra].noLayoutFailure=!0;t.children.push(d[r.$toHTML](n[r.$extra].space).html);d=null}const i=n.contentArea.children,s=t.children.filter((e=>e.attributes.class.includes("xfaContentarea")));f=!1;this[r.$extra].firstUnsplittable=null;this[r.$extra].noLayoutFailure=!1;const flush=t=>{const a=e[r.$flushHTML]();if(a){f||=a.children?.length>0;s[t].children.push(a)}};for(let t=p,n=i.length;t0;s[t].children.push(c.html)}else!f&&a.children.length>1&&a.children.pop();return a}if(c.isBreak()){const e=c.breakNode;flush(t);if("auto"===e.targetType)continue;if(e.leader){u=this[r.$searchNode](e.leader,e[r.$getParent]());u=u?u[0]:null}if(e.trailer){d=this[r.$searchNode](e.trailer,e[r.$getParent]());d=d?d[0]:null}if("pageArea"===e.targetType){h=e[r.$extra].target;t=1/0}else if(e[r.$extra].target){h=e[r.$extra].target;p=e[r.$extra].index+1;t=1/0}else t=e[r.$extra].index}else if(this[r.$extra].overflowNode){const e=this[r.$extra].overflowNode;this[r.$extra].overflowNode=null;const a=e[r.$getExtra](),n=a.target;a.addLeader=null!==a.leader;a.addTrailer=null!==a.trailer;flush(t);const s=t;t=1/0;if(n instanceof PageArea)h=n;else if(n instanceof ContentArea){const e=i.indexOf(n);if(-1!==e)e>s?t=e-1:p=e;else{h=n[r.$getParent]();p=h.contentArea.children.indexOf(n)}}}else flush(t)}this[r.$extra].pageNumber+=1;h&&(h[r.$isUsable]()?h[r.$extra].numberOfUse+=1:h=null);n=h||n[r.$getNextPage]();yield null}}}t.Template=Template;class Text extends o.ContentObject{constructor(e){super(f,"text");this.id=e.id||"";this.maxChars=(0,c.getInteger)({data:e.maxChars,defaultValue:0,validate:e=>e>=0});this.name=e.name||"";this.rid=e.rid||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$acceptWhitespace](){return!0}[r.$onChild](e){if(e[r.$namespaceId]===n.NamespaceIds.xhtml.id){this[r.$content]=e;return!0}(0,l.warn)(`XFA - Invalid content in Text: ${e[r.$nodeName]}.`);return!1}[r.$onText](e){this[r.$content]instanceof o.XFAObject||super[r.$onText](e)}[r.$finalize](){"string"==typeof this[r.$content]&&(this[r.$content]=this[r.$content].replaceAll("\r\n","\n"))}[r.$getExtra](){return"string"==typeof this[r.$content]?this[r.$content].split(/[\u2029\u2028\n]/).reduce(((e,t)=>{t&&e.push(t);return e}),[]).join("\n"):this[r.$content][r.$text]()}[r.$toHTML](e){if("string"==typeof this[r.$content]){const e=valueToHtml(this[r.$content]).html;if(this[r.$content].includes("\u2029")){e.name="div";e.children=[];this[r.$content].split("\u2029").map((e=>e.split(/[\u2028\n]/).reduce(((e,t)=>{e.push({name:"span",value:t},{name:"br"});return e}),[]))).forEach((t=>{e.children.push({name:"p",children:t})}))}else if(/[\u2028\n]/.test(this[r.$content])){e.name="div";e.children=[];this[r.$content].split(/[\u2028\n]/).forEach((t=>{e.children.push({name:"span",value:t},{name:"br"})}))}return c.HTMLResult.success(e)}return this[r.$content][r.$toHTML](e)}}t.Text=Text;class TextEdit extends o.XFAObject{constructor(e){super(f,"textEdit",!0);this.allowRichText=(0,c.getInteger)({data:e.allowRichText,defaultValue:0,validate:e=>1===e});this.hScrollPolicy=(0,c.getStringOption)(e.hScrollPolicy,["auto","off","on"]);this.id=e.id||"";this.multiLine=(0,c.getInteger)({data:e.multiLine,defaultValue:"",validate:e=>0===e||1===e});this.use=e.use||"";this.usehref=e.usehref||"";this.vScrollPolicy=(0,c.getStringOption)(e.vScrollPolicy,["auto","off","on"]);this.border=null;this.comb=null;this.extras=null;this.margin=null}[r.$toHTML](e){const t=(0,s.toStyle)(this,"border","font","margin");let a;const n=this[r.$getParent]()[r.$getParent]();""===this.multiLine&&(this.multiLine=n instanceof Draw?1:0);a=1===this.multiLine?{name:"textarea",attributes:{dataId:n[r.$data]?.[r.$uid]||n[r.$uid],fieldId:n[r.$uid],class:["xfaTextfield"],style:t,"aria-label":ariaLabel(n),"aria-required":!1}}:{name:"input",attributes:{type:"text",dataId:n[r.$data]?.[r.$uid]||n[r.$uid],fieldId:n[r.$uid],class:["xfaTextfield"],style:t,"aria-label":ariaLabel(n),"aria-required":!1}};if(isRequired(n)){a.attributes["aria-required"]=!0;a.attributes.required=!0}return c.HTMLResult.success({name:"label",attributes:{class:["xfaLabel"]},children:[a]})}}class Time extends o.StringObject{constructor(e){super(f,"time");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}[r.$finalize](){const e=this[r.$content].trim();this[r.$content]=e?new Date(e):null}[r.$toHTML](e){return valueToHtml(this[r.$content]?this[r.$content].toString():"")}}class TimeStamp extends o.XFAObject{constructor(e){super(f,"timeStamp");this.id=e.id||"";this.server=e.server||"";this.type=(0,c.getStringOption)(e.type,["optional","required"]);this.use=e.use||"";this.usehref=e.usehref||""}}class ToolTip extends o.StringObject{constructor(e){super(f,"toolTip");this.id=e.id||"";this.rid=e.rid||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Traversal extends o.XFAObject{constructor(e){super(f,"traversal",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.traverse=new o.XFAObjectArray}}class Traverse extends o.XFAObject{constructor(e){super(f,"traverse",!0);this.id=e.id||"";this.operation=(0,c.getStringOption)(e.operation,["next","back","down","first","left","right","up"]);this.ref=e.ref||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.script=null}get name(){return this.operation}[r.$isTransparent](){return!1}}class Ui extends o.XFAObject{constructor(e){super(f,"ui",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.picture=null;this.barcode=null;this.button=null;this.checkButton=null;this.choiceList=null;this.dateTimeEdit=null;this.defaultUi=null;this.imageEdit=null;this.numericEdit=null;this.passwordEdit=null;this.signature=null;this.textEdit=null}[r.$getExtra](){if(void 0===this[r.$extra]){for(const e of Object.getOwnPropertyNames(this)){if("extras"===e||"picture"===e)continue;const t=this[e];if(t instanceof o.XFAObject){this[r.$extra]=t;return t}}this[r.$extra]=null}return this[r.$extra]}[r.$toHTML](e){const t=this[r.$getExtra]();return t?t[r.$toHTML](e):c.HTMLResult.EMPTY}}class Validate extends o.XFAObject{constructor(e){super(f,"validate",!0);this.formatTest=(0,c.getStringOption)(e.formatTest,["warning","disabled","error"]);this.id=e.id||"";this.nullTest=(0,c.getStringOption)(e.nullTest,["disabled","error","warning"]);this.scriptTest=(0,c.getStringOption)(e.scriptTest,["error","disabled","warning"]);this.use=e.use||"";this.usehref=e.usehref||"";this.extras=null;this.message=null;this.picture=null;this.script=null}}class Value extends o.XFAObject{constructor(e){super(f,"value",!0);this.id=e.id||"";this.override=(0,c.getInteger)({data:e.override,defaultValue:0,validate:e=>1===e});this.relevant=(0,c.getRelevant)(e.relevant);this.use=e.use||"";this.usehref=e.usehref||"";this.arc=null;this.boolean=null;this.date=null;this.dateTime=null;this.decimal=null;this.exData=null;this.float=null;this.image=null;this.integer=null;this.line=null;this.rectangle=null;this.text=null;this.time=null}[r.$setValue](e){const t=this[r.$getParent]();if(t instanceof Field&&t.ui?.imageEdit){if(!this.image){this.image=new Image({});this[r.$appendChild](this.image)}this.image[r.$content]=e[r.$content];return}const a=e[r.$nodeName];if(null===this[a]){for(const e of Object.getOwnPropertyNames(this)){const t=this[e];if(t instanceof o.XFAObject){this[e]=null;this[r.$removeChild](t)}}this[e[r.$nodeName]]=e;this[r.$appendChild](e)}else this[a][r.$content]=e[r.$content]}[r.$text](){if(this.exData)return"string"==typeof this.exData[r.$content]?this.exData[r.$content].trim():this.exData[r.$content][r.$text]().trim();for(const e of Object.getOwnPropertyNames(this)){if("image"===e)continue;const t=this[e];if(t instanceof o.XFAObject)return(t[r.$content]||"").toString().trim()}return null}[r.$toHTML](e){for(const t of Object.getOwnPropertyNames(this)){const a=this[t];if(a instanceof o.XFAObject)return a[r.$toHTML](e)}return c.HTMLResult.EMPTY}}t.Value=Value;class Variables extends o.XFAObject{constructor(e){super(f,"variables",!0);this.id=e.id||"";this.use=e.use||"";this.usehref=e.usehref||"";this.boolean=new o.XFAObjectArray;this.date=new o.XFAObjectArray;this.dateTime=new o.XFAObjectArray;this.decimal=new o.XFAObjectArray;this.exData=new o.XFAObjectArray;this.float=new o.XFAObjectArray;this.image=new o.XFAObjectArray;this.integer=new o.XFAObjectArray;this.manifest=new o.XFAObjectArray;this.script=new o.XFAObjectArray;this.text=new o.XFAObjectArray;this.time=new o.XFAObjectArray}[r.$isTransparent](){return!0}}class TemplateNamespace{static[n.$buildXFAObject](e,t){if(TemplateNamespace.hasOwnProperty(e)){const a=TemplateNamespace[e](t);a[r.$setSetAttributes](t);return a}}static appearanceFilter(e){return new AppearanceFilter(e)}static arc(e){return new Arc(e)}static area(e){return new Area(e)}static assist(e){return new Assist(e)}static barcode(e){return new Barcode(e)}static bind(e){return new Bind(e)}static bindItems(e){return new BindItems(e)}static bookend(e){return new Bookend(e)}static boolean(e){return new BooleanElement(e)}static border(e){return new Border(e)}static break(e){return new Break(e)}static breakAfter(e){return new BreakAfter(e)}static breakBefore(e){return new BreakBefore(e)}static button(e){return new Button(e)}static calculate(e){return new Calculate(e)}static caption(e){return new Caption(e)}static certificate(e){return new Certificate(e)}static certificates(e){return new Certificates(e)}static checkButton(e){return new CheckButton(e)}static choiceList(e){return new ChoiceList(e)}static color(e){return new Color(e)}static comb(e){return new Comb(e)}static connect(e){return new Connect(e)}static contentArea(e){return new ContentArea(e)}static corner(e){return new Corner(e)}static date(e){return new DateElement(e)}static dateTime(e){return new DateTime(e)}static dateTimeEdit(e){return new DateTimeEdit(e)}static decimal(e){return new Decimal(e)}static defaultUi(e){return new DefaultUi(e)}static desc(e){return new Desc(e)}static digestMethod(e){return new DigestMethod(e)}static digestMethods(e){return new DigestMethods(e)}static draw(e){return new Draw(e)}static edge(e){return new Edge(e)}static encoding(e){return new Encoding(e)}static encodings(e){return new Encodings(e)}static encrypt(e){return new Encrypt(e)}static encryptData(e){return new EncryptData(e)}static encryption(e){return new Encryption(e)}static encryptionMethod(e){return new EncryptionMethod(e)}static encryptionMethods(e){return new EncryptionMethods(e)}static event(e){return new Event(e)}static exData(e){return new ExData(e)}static exObject(e){return new ExObject(e)}static exclGroup(e){return new ExclGroup(e)}static execute(e){return new Execute(e)}static extras(e){return new Extras(e)}static field(e){return new Field(e)}static fill(e){return new Fill(e)}static filter(e){return new Filter(e)}static float(e){return new Float(e)}static font(e){return new Font(e)}static format(e){return new Format(e)}static handler(e){return new Handler(e)}static hyphenation(e){return new Hyphenation(e)}static image(e){return new Image(e)}static imageEdit(e){return new ImageEdit(e)}static integer(e){return new Integer(e)}static issuers(e){return new Issuers(e)}static items(e){return new Items(e)}static keep(e){return new Keep(e)}static keyUsage(e){return new KeyUsage(e)}static line(e){return new Line(e)}static linear(e){return new Linear(e)}static lockDocument(e){return new LockDocument(e)}static manifest(e){return new Manifest(e)}static margin(e){return new Margin(e)}static mdp(e){return new Mdp(e)}static medium(e){return new Medium(e)}static message(e){return new Message(e)}static numericEdit(e){return new NumericEdit(e)}static occur(e){return new Occur(e)}static oid(e){return new Oid(e)}static oids(e){return new Oids(e)}static overflow(e){return new Overflow(e)}static pageArea(e){return new PageArea(e)}static pageSet(e){return new PageSet(e)}static para(e){return new Para(e)}static passwordEdit(e){return new PasswordEdit(e)}static pattern(e){return new Pattern(e)}static picture(e){return new Picture(e)}static proto(e){return new Proto(e)}static radial(e){return new Radial(e)}static reason(e){return new Reason(e)}static reasons(e){return new Reasons(e)}static rectangle(e){return new Rectangle(e)}static ref(e){return new RefElement(e)}static script(e){return new Script(e)}static setProperty(e){return new SetProperty(e)}static signData(e){return new SignData(e)}static signature(e){return new Signature(e)}static signing(e){return new Signing(e)}static solid(e){return new Solid(e)}static speak(e){return new Speak(e)}static stipple(e){return new Stipple(e)}static subform(e){return new Subform(e)}static subformSet(e){return new SubformSet(e)}static subjectDN(e){return new SubjectDN(e)}static subjectDNs(e){return new SubjectDNs(e)}static submit(e){return new Submit(e)}static template(e){return new Template(e)}static text(e){return new Text(e)}static textEdit(e){return new TextEdit(e)}static time(e){return new Time(e)}static timeStamp(e){return new TimeStamp(e)}static toolTip(e){return new ToolTip(e)}static traversal(e){return new Traversal(e)}static traverse(e){return new Traverse(e)}static ui(e){return new Ui(e)}static validate(e){return new Validate(e)}static value(e){return new Value(e)}static variables(e){return new Variables(e)}}t.TemplateNamespace=TemplateNamespace},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.NamespaceIds=t.$buildXFAObject=void 0;const a=Symbol();t.$buildXFAObject=a;t.NamespaceIds={config:{id:0,check:e=>e.startsWith("http://www.xfa.org/schema/xci/")},connectionSet:{id:1,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-connection-set/")},datasets:{id:2,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-data/")},form:{id:3,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-form/")},localeSet:{id:4,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-locale-set/")},pdf:{id:5,check:e=>"http://ns.adobe.com/xdp/pdf/"===e},signature:{id:6,check:e=>"http://www.w3.org/2000/09/xmldsig#"===e},sourceSet:{id:7,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-source-set/")},stylesheet:{id:8,check:e=>"http://www.w3.org/1999/XSL/Transform"===e},template:{id:9,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-template/")},xdc:{id:10,check:e=>e.startsWith("http://www.xfa.org/schema/xdc/")},xdp:{id:11,check:e=>"http://ns.adobe.com/xdp/"===e},xfdf:{id:12,check:e=>"http://ns.adobe.com/xfdf/"===e},xhtml:{id:13,check:e=>"http://www.w3.org/1999/xhtml"===e},xmpmeta:{id:14,check:e=>"http://ns.adobe.com/xmpmeta/"===e}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.addHTML=function addHTML(e,t,a){const i=e[r.$extra],s=i.availableSpace,[o,c,l,h]=a;switch(e.layout){case"position":i.width=Math.max(i.width,o+l);i.height=Math.max(i.height,c+h);i.children.push(t);break;case"lr-tb":case"rl-tb":if(!i.line||1===i.attempt){i.line=createLine(e,[]);i.children.push(i.line);i.numberInLine=0}i.numberInLine+=1;i.line.children.push(t);if(0===i.attempt){i.currentWidth+=l;i.height=Math.max(i.height,i.prevHeight+h)}else{i.currentWidth=l;i.prevHeight=i.height;i.height+=h;i.attempt=0}i.width=Math.max(i.width,i.currentWidth);break;case"rl-row":case"row":{i.children.push(t);i.width+=l;i.height=Math.max(i.height,h);const e=(0,n.measureToString)(i.height);for(const t of i.children)t.attributes.style.height=e;break}case"table":case"tb":i.width=Math.min(s.width,Math.max(i.width,l));i.height+=h;i.children.push(t)}};t.checkDimensions=function checkDimensions(e,t){if(null===e[r.$getTemplateRoot]()[r.$extra].firstUnsplittable)return!0;if(0===e.w||0===e.h)return!0;const a=e[r.$getSubformParent](),n=a[r.$extra]?.attempt||0,[,i,s,o]=function getTransformedBBox(e){let t,a,r=""===e.w?NaN:e.w,n=""===e.h?NaN:e.h,[i,s]=[0,0];switch(e.anchorType||""){case"bottomCenter":[i,s]=[r/2,n];break;case"bottomLeft":[i,s]=[0,n];break;case"bottomRight":[i,s]=[r,n];break;case"middleCenter":[i,s]=[r/2,n/2];break;case"middleLeft":[i,s]=[0,n/2];break;case"middleRight":[i,s]=[r,n/2];break;case"topCenter":[i,s]=[r/2,0];break;case"topRight":[i,s]=[r,0]}switch(e.rotate||0){case 0:[t,a]=[-i,-s];break;case 90:[t,a]=[-s,i];[r,n]=[n,-r];break;case 180:[t,a]=[i,s];[r,n]=[-r,-n];break;case 270:[t,a]=[s,-i];[r,n]=[-n,r]}return[e.x+t+Math.min(0,r),e.y+a+Math.min(0,n),Math.abs(r),Math.abs(n)]}(e);switch(a.layout){case"lr-tb":case"rl-tb":return 0===n?e[r.$getTemplateRoot]()[r.$extra].noLayoutFailure?""!==e.w?Math.round(s-t.width)<=2:t.width>2:!(""!==e.h&&Math.round(o-t.height)>2)&&(""!==e.w?Math.round(s-t.width)<=2||0===a[r.$extra].numberInLine&&t.height>2:t.width>2):!!e[r.$getTemplateRoot]()[r.$extra].noLayoutFailure||!(""!==e.h&&Math.round(o-t.height)>2)&&((""===e.w||Math.round(s-t.width)<=2||!a[r.$isThereMoreWidth]())&&t.height>2);case"table":case"tb":return!!e[r.$getTemplateRoot]()[r.$extra].noLayoutFailure||(""===e.h||e[r.$isSplittable]()?(""===e.w||Math.round(s-t.width)<=2||!a[r.$isThereMoreWidth]())&&t.height>2:Math.round(o-t.height)<=2);case"position":if(e[r.$getTemplateRoot]()[r.$extra].noLayoutFailure)return!0;if(""===e.h||Math.round(o+i-t.height)<=2)return!0;return o+i>e[r.$getTemplateRoot]()[r.$extra].currentContentArea.h;case"rl-row":case"row":return!!e[r.$getTemplateRoot]()[r.$extra].noLayoutFailure||(""===e.h||Math.round(o-t.height)<=2);default:return!0}};t.flushHTML=function flushHTML(e){if(!e[r.$extra])return null;const t={name:"div",attributes:e[r.$extra].attributes,children:e[r.$extra].children};if(e[r.$extra].failingNode){const a=e[r.$extra].failingNode[r.$flushHTML]();a&&(e.layout.endsWith("-tb")?t.children.push(createLine(e,[a])):t.children.push(a))}if(0===t.children.length)return null;return t};t.getAvailableSpace=function getAvailableSpace(e){const t=e[r.$extra].availableSpace,a=e.margin?e.margin.topInset+e.margin.bottomInset:0,n=e.margin?e.margin.leftInset+e.margin.rightInset:0;switch(e.layout){case"lr-tb":case"rl-tb":return 0===e[r.$extra].attempt?{width:t.width-n-e[r.$extra].currentWidth,height:t.height-a-e[r.$extra].prevHeight}:{width:t.width-n,height:t.height-a-e[r.$extra].height};case"rl-row":case"row":return{width:e[r.$extra].columnWidths.slice(e[r.$extra].currentColumn).reduce(((e,t)=>e+t)),height:t.height-n};case"table":case"tb":return{width:t.width-n,height:t.height-a-e[r.$extra].height};default:return t}};var r=a(78),n=a(83);function createLine(e,t){return{name:"div",attributes:{class:["lr-tb"===e.layout?"xfaLr":"xfaRl"]},children:t}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.computeBbox=function computeBbox(e,t,a){let n;if(""!==e.w&&""!==e.h)n=[e.x,e.y,e.w,e.h];else{if(!a)return null;let i=e.w;if(""===i){if(0===e.maxW){const t=e[r.$getSubformParent]();i="position"===t.layout&&""!==t.w?0:e.minW}else i=Math.min(e.maxW,a.width);t.attributes.style.width=measureToString(i)}let s=e.h;if(""===s){if(0===e.maxH){const t=e[r.$getSubformParent]();s="position"===t.layout&&""!==t.h?0:e.minH}else s=Math.min(e.maxH,a.height);t.attributes.style.height=measureToString(s)}n=[e.x,e.y,i,s]}return n};t.createWrapper=function createWrapper(e,t){const{attributes:a}=t,{style:n}=a,i={name:"div",attributes:{class:["xfaWrapper"],style:Object.create(null)},children:[]};a.class.push("xfaWrapped");if(e.border){const{widths:a,insets:s}=e.border[r.$extra];let o,c,l=s[0],h=s[3];const u=s[0]+s[2],d=s[1]+s[3];switch(e.border.hand){case"even":l-=a[0]/2;h-=a[3]/2;o=`calc(100% + ${(a[1]+a[3])/2-d}px)`;c=`calc(100% + ${(a[0]+a[2])/2-u}px)`;break;case"left":l-=a[0];h-=a[3];o=`calc(100% + ${a[1]+a[3]-d}px)`;c=`calc(100% + ${a[0]+a[2]-u}px)`;break;case"right":o=d?`calc(100% - ${d}px)`:"100%";c=u?`calc(100% - ${u}px)`:"100%"}const f=["xfaBorder"];isPrintOnly(e.border)&&f.push("xfaPrintOnly");const g={name:"div",attributes:{class:f,style:{top:`${l}px`,left:`${h}px`,width:o,height:c}},children:[]};for(const e of["border","borderWidth","borderColor","borderRadius","borderStyle"])if(void 0!==n[e]){g.attributes.style[e]=n[e];delete n[e]}i.children.push(g,t)}else i.children.push(t);for(const e of["background","backgroundClip","top","left","width","height","minWidth","minHeight","maxWidth","maxHeight","transform","transformOrigin","visibility"])if(void 0!==n[e]){i.attributes.style[e]=n[e];delete n[e]}i.attributes.style.position="absolute"===n.position?"absolute":"relative";delete n.position;if(n.alignSelf){i.attributes.style.alignSelf=n.alignSelf;delete n.alignSelf}return i};t.fixDimensions=function fixDimensions(e){const t=e[r.$getSubformParent]();if(t.layout?.includes("row")){const a=t[r.$extra],n=e.colSpan;let i;i=-1===n?a.columnWidths.slice(a.currentColumn).reduce(((e,t)=>e+t),0):a.columnWidths.slice(a.currentColumn,a.currentColumn+n).reduce(((e,t)=>e+t),0);isNaN(i)||(e.w=i)}t.layout&&"position"!==t.layout&&(e.x=e.y=0);"table"===e.layout&&""===e.w&&Array.isArray(e.columnWidths)&&(e.w=e.columnWidths.reduce(((e,t)=>e+t),0))};t.fixTextIndent=function fixTextIndent(e){const t=(0,i.getMeasurement)(e.textIndent,"0px");if(t>=0)return;const a="padding"+("left"==("right"===e.textAlign?"right":"left")?"Left":"Right"),r=(0,i.getMeasurement)(e[a],"0px");e[a]=r-t+"px"};t.fixURL=function fixURL(e){const t=(0,n.createValidAbsoluteUrl)(e,null,{addDefaultProtocol:!0,tryConvertEncoding:!0});return t?t.href:null};t.isPrintOnly=isPrintOnly;t.layoutClass=function layoutClass(e){switch(e.layout){case"position":default:return"xfaPosition";case"lr-tb":return"xfaLrTb";case"rl-row":return"xfaRlRow";case"rl-tb":return"xfaRlTb";case"row":return"xfaRow";case"table":return"xfaTable";case"tb":return"xfaTb"}};t.layoutNode=function layoutNode(e,t){let a=null,n=null,i=!1;if((!e.w||!e.h)&&e.value){let s=0,o=0;if(e.margin){s=e.margin.leftInset+e.margin.rightInset;o=e.margin.topInset+e.margin.bottomInset}let c=null,l=null;if(e.para){l=Object.create(null);c=""===e.para.lineHeight?null:e.para.lineHeight;l.top=""===e.para.spaceAbove?0:e.para.spaceAbove;l.bottom=""===e.para.spaceBelow?0:e.para.spaceBelow;l.left=""===e.para.marginLeft?0:e.para.marginLeft;l.right=""===e.para.marginRight?0:e.para.marginRight}let h=e.font;if(!h){const t=e[r.$getTemplateRoot]();let a=e[r.$getParent]();for(;a&&a!==t;){if(a.font){h=a.font;break}a=a[r.$getParent]()}}const u=(e.w||t.width)-s,d=e[r.$globalData].fontFinder;if(e.value.exData&&e.value.exData[r.$content]&&"text/html"===e.value.exData.contentType){const t=layoutText(e.value.exData[r.$content],h,l,c,d,u);n=t.width;a=t.height;i=t.isBroken}else{const t=e.value[r.$text]();if(t){const e=layoutText(t,h,l,c,d,u);n=e.width;a=e.height;i=e.isBroken}}null===n||e.w||(n+=s);null===a||e.h||(a+=o)}return{w:n,h:a,isBroken:i}};t.measureToString=measureToString;t.setAccess=function setAccess(e,t){switch(e.access){case"nonInteractive":t.push("xfaNonInteractive");break;case"readOnly":t.push("xfaReadOnly");break;case"protected":t.push("xfaDisabled")}};t.setFontFamily=function setFontFamily(e,t,a,r){if(!a){delete r.fontFamily;return}const n=(0,i.stripQuotes)(e.typeface);r.fontFamily=`"${n}"`;const o=a.find(n);if(o){const{fontFamily:a}=o.regular.cssFontInfo;a!==n&&(r.fontFamily=`"${a}"`);const i=getCurrentPara(t);if(i&&""!==i.lineHeight)return;if(r.lineHeight)return;const c=(0,s.selectFont)(e,o);c&&(r.lineHeight=Math.max(1.2,c.lineHeight))}};t.setMinMaxDimensions=function setMinMaxDimensions(e,t){if("position"===e[r.$getSubformParent]().layout){e.minW>0&&(t.minWidth=measureToString(e.minW));e.maxW>0&&(t.maxWidth=measureToString(e.maxW));e.minH>0&&(t.minHeight=measureToString(e.minH));e.maxH>0&&(t.maxHeight=measureToString(e.maxH))}};t.setPara=function setPara(e,t,a){if(a.attributes.class?.includes("xfaRich")){if(t){""===e.h&&(t.height="auto");""===e.w&&(t.width="auto")}const n=getCurrentPara(e);if(n){const e=a.attributes.style;e.display="flex";e.flexDirection="column";switch(n.vAlign){case"top":e.justifyContent="start";break;case"bottom":e.justifyContent="end";break;case"middle":e.justifyContent="center"}const t=n[r.$toStyle]();for(const[a,r]of Object.entries(t))a in e||(e[a]=r)}}};t.toStyle=function toStyle(e,...t){const a=Object.create(null);for(const i of t){const t=e[i];if(null!==t)if(l.hasOwnProperty(i))l[i](e,a);else if(t instanceof c.XFAObject){const e=t[r.$toStyle]();e?Object.assign(a,e):(0,n.warn)(`(DEBUG) - XFA - style for ${i} not implemented yet`)}}return a};var r=a(78),n=a(2),i=a(84),s=a(85),o=a(86),c=a(87);function measureToString(e){return"string"==typeof e?"0px":Number.isInteger(e)?`${e}px`:`${e.toFixed(2)}px`}const l={anchorType(e,t){const a=e[r.$getSubformParent]();if(a&&(!a.layout||"position"===a.layout)){"transform"in t||(t.transform="");switch(e.anchorType){case"bottomCenter":t.transform+="translate(-50%, -100%)";break;case"bottomLeft":t.transform+="translate(0,-100%)";break;case"bottomRight":t.transform+="translate(-100%,-100%)";break;case"middleCenter":t.transform+="translate(-50%,-50%)";break;case"middleLeft":t.transform+="translate(0,-50%)";break;case"middleRight":t.transform+="translate(-100%,-50%)";break;case"topCenter":t.transform+="translate(-50%,0)";break;case"topRight":t.transform+="translate(-100%,0)"}}},dimensions(e,t){const a=e[r.$getSubformParent]();let n=e.w;const i=e.h;if(a.layout?.includes("row")){const t=a[r.$extra],i=e.colSpan;let s;if(-1===i){s=t.columnWidths.slice(t.currentColumn).reduce(((e,t)=>e+t),0);t.currentColumn=0}else{s=t.columnWidths.slice(t.currentColumn,t.currentColumn+i).reduce(((e,t)=>e+t),0);t.currentColumn=(t.currentColumn+e.colSpan)%t.columnWidths.length}isNaN(s)||(n=e.w=s)}t.width=""!==n?measureToString(n):"auto";t.height=""!==i?measureToString(i):"auto"},position(e,t){const a=e[r.$getSubformParent]();if(!a?.layout||"position"===a.layout){t.position="absolute";t.left=measureToString(e.x);t.top=measureToString(e.y)}},rotate(e,t){if(e.rotate){"transform"in t||(t.transform="");t.transform+=`rotate(-${e.rotate}deg)`;t.transformOrigin="top left"}},presence(e,t){switch(e.presence){case"invisible":t.visibility="hidden";break;case"hidden":case"inactive":t.display="none"}},hAlign(e,t){if("para"===e[r.$nodeName])switch(e.hAlign){case"justifyAll":t.textAlign="justify-all";break;case"radix":t.textAlign="left";break;default:t.textAlign=e.hAlign}else switch(e.hAlign){case"left":t.alignSelf="start";break;case"center":t.alignSelf="center";break;case"right":t.alignSelf="end"}},margin(e,t){e.margin&&(t.margin=e.margin[r.$toStyle]().margin)}};function layoutText(e,t,a,n,i,s){const c=new o.TextMeasure(t,a,n,i);"string"==typeof e?c.addString(e):e[r.$pushGlyphs](c);return c.compute(s)}function isPrintOnly(e){return e.relevant.length>0&&!e.relevant[0].excluded&&"print"===e.relevant[0].viewname}function getCurrentPara(e){const t=e[r.$getTemplateRoot]()[r.$extra].paraStack;return t.length?t.at(-1):null}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.HTMLResult=void 0;t.getBBox=function getBBox(e){const t=-1;if(!e)return{x:t,y:t,width:t,height:t};const a=e.trim().split(/\s*,\s*/).map((e=>getMeasurement(e,"-1")));if(a.length<4||a[2]<0||a[3]<0)return{x:t,y:t,width:t,height:t};const[r,n,i,s]=a;return{x:r,y:n,width:i,height:s}};t.getColor=function getColor(e,t=[0,0,0]){let[a,r,n]=t;if(!e)return{r:a,g:r,b:n};const i=e.trim().split(/\s*,\s*/).map((e=>Math.min(Math.max(0,parseInt(e.trim(),10)),255))).map((e=>isNaN(e)?0:e));if(i.length<3)return{r:a,g:r,b:n};[a,r,n]=i;return{r:a,g:r,b:n}};t.getFloat=function getFloat({data:e,defaultValue:t,validate:a}){if(!e)return t;e=e.trim();const r=parseFloat(e);if(!isNaN(r)&&a(r))return r;return t};t.getInteger=function getInteger({data:e,defaultValue:t,validate:a}){if(!e)return t;e=e.trim();const r=parseInt(e,10);if(!isNaN(r)&&a(r))return r;return t};t.getKeyword=getKeyword;t.getMeasurement=getMeasurement;t.getRatio=function getRatio(e){if(!e)return{num:1,den:1};const t=e.trim().split(/\s*:\s*/).map((e=>parseFloat(e))).filter((e=>!isNaN(e)));1===t.length&&t.push(1);if(0===t.length)return{num:1,den:1};const[a,r]=t;return{num:a,den:r}};t.getRelevant=function getRelevant(e){if(!e)return[];return e.trim().split(/\s+/).map((e=>({excluded:"-"===e[0],viewname:e.substring(1)})))};t.getStringOption=function getStringOption(e,t){return getKeyword({data:e,defaultValue:t[0],validate:e=>t.includes(e)})};t.stripQuotes=function stripQuotes(e){if(e.startsWith("'")||e.startsWith('"'))return e.slice(1,-1);return e};var r=a(2);const n={pt:e=>e,cm:e=>e/2.54*72,mm:e=>e/25.4*72,in:e=>72*e,px:e=>e},i=/([+-]?\d+\.?\d*)(.*)/;function getKeyword({data:e,defaultValue:t,validate:a}){return e&&a(e=e.trim())?e:t}function getMeasurement(e,t="0"){t||="0";if(!e)return getMeasurement(t);const a=e.trim().match(i);if(!a)return getMeasurement(t);const[,r,s]=a,o=parseFloat(r);if(isNaN(o))return getMeasurement(t);if(0===o)return 0;const c=n[s];return c?c(o):o}class HTMLResult{static get FAILURE(){return(0,r.shadow)(this,"FAILURE",new HTMLResult(!1,null,null,null))}static get EMPTY(){return(0,r.shadow)(this,"EMPTY",new HTMLResult(!0,null,null,null))}constructor(e,t,a,r){this.success=e;this.html=t;this.bbox=a;this.breakNode=r}isBreak(){return!!this.breakNode}static breakNode(e){return new HTMLResult(!1,null,null,e)}static success(e,t=null){return new HTMLResult(!0,e,t,null)}}t.HTMLResult=HTMLResult},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.FontFinder=void 0;t.getMetrics=function getMetrics(e,t=!1){let a=null;if(e){const t=(0,n.stripQuotes)(e.typeface),i=e[r.$globalData].fontFinder.find(t);a=selectFont(e,i)}if(!a)return{lineHeight:12,lineGap:2,lineNoGap:10};const i=e.size||10,s=a.lineHeight?Math.max(t?0:1.2,a.lineHeight):1.2,o=void 0===a.lineGap?.2:a.lineGap;return{lineHeight:s*i,lineGap:o*i,lineNoGap:Math.max(1,s-o)*i}};t.selectFont=selectFont;var r=a(78),n=a(84),i=a(2);t.FontFinder=class FontFinder{constructor(e){this.fonts=new Map;this.cache=new Map;this.warned=new Set;this.defaultFont=null;this.add(e)}add(e,t=null){for(const t of e)this.addPdfFont(t);for(const e of this.fonts.values())e.regular||(e.regular=e.italic||e.bold||e.bolditalic);if(!t||0===t.size)return;const a=this.fonts.get("PdfJS-Fallback-PdfJS-XFA");for(const e of t)this.fonts.set(e,a)}addPdfFont(e){const t=e.cssFontInfo,a=t.fontFamily;let r=this.fonts.get(a);if(!r){r=Object.create(null);this.fonts.set(a,r);this.defaultFont||(this.defaultFont=r)}let n="";const i=parseFloat(t.fontWeight);0!==parseFloat(t.italicAngle)?n=i>=700?"bolditalic":"italic":i>=700&&(n="bold");if(!n){(e.name.includes("Bold")||e.psName?.includes("Bold"))&&(n="bold");(e.name.includes("Italic")||e.name.endsWith("It")||e.psName?.includes("Italic")||e.psName?.endsWith("It"))&&(n+="italic")}n||(n="regular");r[n]=e}getDefault(){return this.defaultFont}find(e,t=!0){let a=this.fonts.get(e)||this.cache.get(e);if(a)return a;const r=/,|-|_| |bolditalic|bold|italic|regular|it/gi;let n=e.replaceAll(r,"");a=this.fonts.get(n);if(a){this.cache.set(e,a);return a}n=n.toLowerCase();const s=[];for(const[e,t]of this.fonts.entries())e.replaceAll(r,"").toLowerCase().startsWith(n)&&s.push(t);if(0===s.length)for(const[,e]of this.fonts.entries())e.regular.name?.replaceAll(r,"").toLowerCase().startsWith(n)&&s.push(e);if(0===s.length){n=n.replaceAll(/psmt|mt/gi,"");for(const[e,t]of this.fonts.entries())e.replaceAll(r,"").toLowerCase().startsWith(n)&&s.push(t)}if(0===s.length)for(const e of this.fonts.values())e.regular.name?.replaceAll(r,"").toLowerCase().startsWith(n)&&s.push(e);if(s.length>=1){1!==s.length&&t&&(0,i.warn)(`XFA - Too many choices to guess the correct font: ${e}`);this.cache.set(e,s[0]);return s[0]}if(t&&!this.warned.has(e)){this.warned.add(e);(0,i.warn)(`XFA - Cannot find the font: ${e}`)}return null}};function selectFont(e,t){return"italic"===e.posture?"bold"===e.weight?t.bolditalic:t.italic:"bold"===e.weight?t.bold:t.regular}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.TextMeasure=void 0;var r=a(85);class FontInfo{constructor(e,t,a,n){this.lineHeight=a;this.paraMargin=t||{top:0,bottom:0,left:0,right:0};if(!e){[this.pdfFont,this.xfaFont]=this.defaultFont(n);return}this.xfaFont={typeface:e.typeface,posture:e.posture,weight:e.weight,size:e.size,letterSpacing:e.letterSpacing};const i=n.find(e.typeface);if(i){this.pdfFont=(0,r.selectFont)(e,i);this.pdfFont||([this.pdfFont,this.xfaFont]=this.defaultFont(n))}else[this.pdfFont,this.xfaFont]=this.defaultFont(n)}defaultFont(e){const t=e.find("Helvetica",!1)||e.find("Myriad Pro",!1)||e.find("Arial",!1)||e.getDefault();if(t?.regular){const e=t.regular;return[e,{typeface:e.cssFontInfo.fontFamily,posture:"normal",weight:"normal",size:10,letterSpacing:0}]}return[null,{typeface:"Courier",posture:"normal",weight:"normal",size:10,letterSpacing:0}]}}class FontSelector{constructor(e,t,a,r){this.fontFinder=r;this.stack=[new FontInfo(e,t,a,r)]}pushData(e,t,a){const r=this.stack.at(-1);for(const t of["typeface","posture","weight","size","letterSpacing"])e[t]||(e[t]=r.xfaFont[t]);for(const e of["top","bottom","left","right"])isNaN(t[e])&&(t[e]=r.paraMargin[e]);const n=new FontInfo(e,t,a||r.lineHeight,this.fontFinder);n.pdfFont||(n.pdfFont=r.pdfFont);this.stack.push(n)}popFont(){this.stack.pop()}topFont(){return this.stack.at(-1)}}t.TextMeasure=class TextMeasure{constructor(e,t,a,r){this.glyphs=[];this.fontSelector=new FontSelector(e,t,a,r);this.extraHeight=0}pushData(e,t,a){this.fontSelector.pushData(e,t,a)}popFont(e){return this.fontSelector.popFont()}addPara(){const e=this.fontSelector.topFont();this.extraHeight+=e.paraMargin.top+e.paraMargin.bottom}addString(e){if(!e)return;const t=this.fontSelector.topFont(),a=t.xfaFont.size;if(t.pdfFont){const r=t.xfaFont.letterSpacing,n=t.pdfFont,i=n.lineHeight||1.2,s=t.lineHeight||Math.max(1.2,i)*a,o=i-(void 0===n.lineGap?.2:n.lineGap),c=Math.max(1,o)*a,l=a/1e3,h=n.defaultWidth||n.charsToGlyphs(" ")[0].width;for(const t of e.split(/[\u2029\n]/)){const e=n.encodeString(t).join(""),a=n.charsToGlyphs(e);for(const e of a){const t=e.width||h;this.glyphs.push([t*l+r,s,c,e.unicode,!1])}this.glyphs.push([0,0,0,"\n",!0])}this.glyphs.pop()}else{for(const t of e.split(/[\u2029\n]/)){for(const e of t.split(""))this.glyphs.push([a,1.2*a,a,e,!1]);this.glyphs.push([0,0,0,"\n",!0])}this.glyphs.pop()}}compute(e){let t=-1,a=0,r=0,n=0,i=0,s=0,o=!1,c=!0;for(let l=0,h=this.glyphs.length;le){r=Math.max(r,i);i=0;n+=s;s=m;t=-1;a=0;o=!0;c=!1}else{s=Math.max(m,s);a=i;i+=h;t=l}else if(i+h>e){n+=s;s=m;if(-1!==t){l=t;r=Math.max(r,a);i=0;t=-1;a=0}else{r=Math.max(r,i);i=h}o=!0;c=!1}else{i+=h;s=Math.max(m,s)}}r=Math.max(r,i);n+=s+this.extraHeight;return{width:1.02*r,height:n,isBroken:o}}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XmlObject=t.XFAObjectArray=t.XFAObject=t.XFAAttribute=t.StringObject=t.OptionObject=t.Option10=t.Option01=t.IntegerObject=t.ContentObject=void 0;var r=a(78),n=a(84),i=a(2),s=a(3),o=a(81),c=a(88);const l=Symbol(),h=Symbol(),u=Symbol(),d=Symbol("_children"),f=Symbol(),g=Symbol(),p=Symbol(),m=Symbol(),b=Symbol(),y=Symbol(),w=Symbol(),S=Symbol(),x=Symbol(),C=Symbol("parent"),k=Symbol(),v=Symbol(),F=Symbol();let O=0;const T=o.NamespaceIds.datasets.id;class XFAObject{constructor(e,t,a=!1){this[r.$namespaceId]=e;this[r.$nodeName]=t;this[w]=a;this[C]=null;this[d]=[];this[r.$uid]=`${t}${O++}`;this[r.$globalData]=null}get isXFAObject(){return!0}get isXFAObjectArray(){return!1}createNodes(e){let t=this,a=null;for(const{name:n,index:i}of e){for(let e=0,s=isFinite(i)?i:0;e<=s;e++){const e=t[r.$namespaceId]===T?-1:t[r.$namespaceId];a=new XmlObject(e,n);t[r.$appendChild](a)}t=a}return a}[r.$onChild](e){if(!this[w]||!this[r.$onChildCheck](e))return!1;const t=e[r.$nodeName],a=this[t];if(!(a instanceof XFAObjectArray)){null!==a&&this[r.$removeChild](a);this[t]=e;this[r.$appendChild](e);return!0}if(a.push(e)){this[r.$appendChild](e);return!0}let n="";this.id?n=` (id: ${this.id})`:this.name&&(n=` (name: ${this.name} ${this.h.value})`);(0,i.warn)(`XFA - node "${this[r.$nodeName]}"${n} has already enough "${t}"!`);return!1}[r.$onChildCheck](e){return this.hasOwnProperty(e[r.$nodeName])&&e[r.$namespaceId]===this[r.$namespaceId]}[r.$isNsAgnostic](){return!1}[r.$acceptWhitespace](){return!1}[r.$isCDATAXml](){return!1}[r.$isBindable](){return!1}[r.$popPara](){this.para&&this[r.$getTemplateRoot]()[r.$extra].paraStack.pop()}[r.$pushPara](){this[r.$getTemplateRoot]()[r.$extra].paraStack.push(this.para)}[r.$setId](e){this.id&&this[r.$namespaceId]===o.NamespaceIds.template.id&&e.set(this.id,this)}[r.$getTemplateRoot](){return this[r.$globalData].template}[r.$isSplittable](){return!1}[r.$isThereMoreWidth](){return!1}[r.$appendChild](e){e[C]=this;this[d].push(e);!e[r.$globalData]&&this[r.$globalData]&&(e[r.$globalData]=this[r.$globalData])}[r.$removeChild](e){const t=this[d].indexOf(e);this[d].splice(t,1)}[r.$hasSettableValue](){return this.hasOwnProperty("value")}[r.$setValue](e){}[r.$onText](e){}[r.$finalize](){}[r.$clean](e){delete this[w];if(this[r.$cleanup]){e.clean(this[r.$cleanup]);delete this[r.$cleanup]}}[r.$indexOf](e){return this[d].indexOf(e)}[r.$insertAt](e,t){t[C]=this;this[d].splice(e,0,t);!t[r.$globalData]&&this[r.$globalData]&&(t[r.$globalData]=this[r.$globalData])}[r.$isTransparent](){return!this.name}[r.$lastAttribute](){return""}[r.$text](){return 0===this[d].length?this[r.$content]:this[d].map((e=>e[r.$text]())).join("")}get[u](){const e=Object.getPrototypeOf(this);if(!e._attributes){const t=e._attributes=new Set;for(const e of Object.getOwnPropertyNames(this)){if(null===this[e]||this[e]instanceof XFAObject||this[e]instanceof XFAObjectArray)break;t.add(e)}}return(0,i.shadow)(this,u,e._attributes)}[r.$isDescendent](e){let t=this;for(;t;){if(t===e)return!0;t=t[r.$getParent]()}return!1}[r.$getParent](){return this[C]}[r.$getSubformParent](){return this[r.$getParent]()}[r.$getChildren](e=null){return e?this[e]:this[d]}[r.$dump](){const e=Object.create(null);this[r.$content]&&(e.$content=this[r.$content]);for(const t of Object.getOwnPropertyNames(this)){const a=this[t];null!==a&&(a instanceof XFAObject?e[t]=a[r.$dump]():a instanceof XFAObjectArray?a.isEmpty()||(e[t]=a.dump()):e[t]=a)}return e}[r.$toStyle](){return null}[r.$toHTML](){return n.HTMLResult.EMPTY}*[r.$getContainedChildren](){for(const e of this[r.$getChildren]())yield e}*[m](e,t){for(const a of this[r.$getContainedChildren]())if(!e||t===e.has(a[r.$nodeName])){const e=this[r.$getAvailableSpace](),t=a[r.$toHTML](e);t.success||(this[r.$extra].failingNode=a);yield t}}[r.$flushHTML](){return null}[r.$addHTML](e,t){this[r.$extra].children.push(e)}[r.$getAvailableSpace](){}[r.$childrenToHTML]({filter:e=null,include:t=!0}){if(this[r.$extra].generator){const e=this[r.$getAvailableSpace](),t=this[r.$extra].failingNode[r.$toHTML](e);if(!t.success)return t;t.html&&this[r.$addHTML](t.html,t.bbox);delete this[r.$extra].failingNode}else this[r.$extra].generator=this[m](e,t);for(;;){const e=this[r.$extra].generator.next();if(e.done)break;const t=e.value;if(!t.success)return t;t.html&&this[r.$addHTML](t.html,t.bbox)}this[r.$extra].generator=null;return n.HTMLResult.EMPTY}[r.$setSetAttributes](e){this[v]=new Set(Object.keys(e))}[y](e){const t=this[u],a=this[v];return[...e].filter((e=>t.has(e)&&!a.has(e)))}[r.$resolvePrototypes](e,t=new Set){for(const a of this[d])a[k](e,t)}[k](e,t){const a=this[b](e,t);a?this[l](a,e,t):this[r.$resolvePrototypes](e,t)}[b](e,t){const{use:a,usehref:n}=this;if(!a&&!n)return null;let s=null,o=null,h=null,u=a;if(n){u=n;n.startsWith("#som(")&&n.endsWith(")")?o=n.slice(5,-1):n.startsWith(".#som(")&&n.endsWith(")")?o=n.slice(6,-1):n.startsWith("#")?h=n.slice(1):n.startsWith(".#")&&(h=n.slice(2))}else a.startsWith("#")?h=a.slice(1):o=a;this.use=this.usehref="";if(h)s=e.get(h);else{s=(0,c.searchNode)(e.get(r.$root),this,o,!0,!1);s&&(s=s[0])}if(!s){(0,i.warn)(`XFA - Invalid prototype reference: ${u}.`);return null}if(s[r.$nodeName]!==this[r.$nodeName]){(0,i.warn)(`XFA - Incompatible prototype: ${s[r.$nodeName]} !== ${this[r.$nodeName]}.`);return null}if(t.has(s)){(0,i.warn)("XFA - Cycle detected in prototypes use.");return null}t.add(s);const d=s[b](e,t);d&&s[l](d,e,t);s[r.$resolvePrototypes](e,t);t.delete(s);return s}[l](e,t,a){if(a.has(e)){(0,i.warn)("XFA - Cycle detected in prototypes use.");return}!this[r.$content]&&e[r.$content]&&(this[r.$content]=e[r.$content]);new Set(a).add(e);for(const t of this[y](e[v])){this[t]=e[t];this[v]&&this[v].add(t)}for(const n of Object.getOwnPropertyNames(this)){if(this[u].has(n))continue;const i=this[n],s=e[n];if(i instanceof XFAObjectArray){for(const e of i[d])e[k](t,a);for(let n=i[d].length,o=s[d].length;nXFAObject[f](e))):"object"==typeof e&&null!==e?Object.assign({},e):e}[r.$clone](){const e=Object.create(Object.getPrototypeOf(this));for(const t of Object.getOwnPropertySymbols(this))try{e[t]=this[t]}catch{(0,i.shadow)(e,t,this[t])}e[r.$uid]=`${e[r.$nodeName]}${O++}`;e[d]=[];for(const t of Object.getOwnPropertyNames(this)){if(this[u].has(t)){e[t]=XFAObject[f](this[t]);continue}const a=this[t];e[t]=a instanceof XFAObjectArray?new XFAObjectArray(a[S]):null}for(const t of this[d]){const a=t[r.$nodeName],n=t[r.$clone]();e[d].push(n);n[C]=e;null===e[a]?e[a]=n:e[a][d].push(n)}return e}[r.$getChildren](e=null){return e?this[d].filter((t=>t[r.$nodeName]===e)):this[d]}[r.$getChildrenByClass](e){return this[e]}[r.$getChildrenByName](e,t,a=!0){return Array.from(this[r.$getChildrenByNameIt](e,t,a))}*[r.$getChildrenByNameIt](e,t,a=!0){if("parent"!==e){for(const a of this[d]){a[r.$nodeName]===e&&(yield a);a.name===e&&(yield a);(t||a[r.$isTransparent]())&&(yield*a[r.$getChildrenByNameIt](e,t,!1))}a&&this[u].has(e)&&(yield new XFAAttribute(this,e,this[e]))}else yield this[C]}}t.XFAObject=XFAObject;class XFAObjectArray{constructor(e=1/0){this[S]=e;this[d]=[]}get isXFAObject(){return!1}get isXFAObjectArray(){return!0}push(e){if(this[d].length<=this[S]){this[d].push(e);return!0}(0,i.warn)(`XFA - node "${e[r.$nodeName]}" accepts no more than ${this[S]} children`);return!1}isEmpty(){return 0===this[d].length}dump(){return 1===this[d].length?this[d][0][r.$dump]():this[d].map((e=>e[r.$dump]()))}[r.$clone](){const e=new XFAObjectArray(this[S]);e[d]=this[d].map((e=>e[r.$clone]()));return e}get children(){return this[d]}clear(){this[d].length=0}}t.XFAObjectArray=XFAObjectArray;class XFAAttribute{constructor(e,t,a){this[C]=e;this[r.$nodeName]=t;this[r.$content]=a;this[r.$consumed]=!1;this[r.$uid]="attribute"+O++}[r.$getParent](){return this[C]}[r.$isDataValue](){return!0}[r.$getDataValue](){return this[r.$content].trim()}[r.$setValue](e){e=e.value||"";this[r.$content]=e.toString()}[r.$text](){return this[r.$content]}[r.$isDescendent](e){return this[C]===e||this[C][r.$isDescendent](e)}}t.XFAAttribute=XFAAttribute;class XmlObject extends XFAObject{constructor(e,t,a={}){super(e,t);this[r.$content]="";this[g]=null;if("#text"!==t){const e=new Map;this[h]=e;for(const[t,r]of Object.entries(a))e.set(t,new XFAAttribute(this,t,r));if(a.hasOwnProperty(r.$nsAttributes)){const e=a[r.$nsAttributes].xfa.dataNode;void 0!==e&&("dataGroup"===e?this[g]=!1:"dataValue"===e&&(this[g]=!0))}}this[r.$consumed]=!1}[r.$toString](e){const t=this[r.$nodeName];if("#text"===t){e.push((0,s.encodeToXmlString)(this[r.$content]));return}const a=(0,i.utf8StringToString)(t),n=this[r.$namespaceId]===T?"xfa:":"";e.push(`<${n}${a}`);for(const[t,a]of this[h].entries()){const n=(0,i.utf8StringToString)(t);e.push(` ${n}="${(0,s.encodeToXmlString)(a[r.$content])}"`)}null!==this[g]&&(this[g]?e.push(' xfa:dataNode="dataValue"'):e.push(' xfa:dataNode="dataGroup"'));if(this[r.$content]||0!==this[d].length){e.push(">");if(this[r.$content])"string"==typeof this[r.$content]?e.push((0,s.encodeToXmlString)(this[r.$content])):this[r.$content][r.$toString](e);else for(const t of this[d])t[r.$toString](e);e.push(``)}else e.push("/>")}[r.$onChild](e){if(this[r.$content]){const e=new XmlObject(this[r.$namespaceId],"#text");this[r.$appendChild](e);e[r.$content]=this[r.$content];this[r.$content]=""}this[r.$appendChild](e);return!0}[r.$onText](e){this[r.$content]+=e}[r.$finalize](){if(this[r.$content]&&this[d].length>0){const e=new XmlObject(this[r.$namespaceId],"#text");this[r.$appendChild](e);e[r.$content]=this[r.$content];delete this[r.$content]}}[r.$toHTML](){return"#text"===this[r.$nodeName]?n.HTMLResult.success({name:"#text",value:this[r.$content]}):n.HTMLResult.EMPTY}[r.$getChildren](e=null){return e?this[d].filter((t=>t[r.$nodeName]===e)):this[d]}[r.$getAttributes](){return this[h]}[r.$getChildrenByClass](e){const t=this[h].get(e);return void 0!==t?t:this[r.$getChildren](e)}*[r.$getChildrenByNameIt](e,t){const a=this[h].get(e);a&&(yield a);for(const a of this[d]){a[r.$nodeName]===e&&(yield a);t&&(yield*a[r.$getChildrenByNameIt](e,t))}}*[r.$getAttributeIt](e,t){const a=this[h].get(e);!a||t&&a[r.$consumed]||(yield a);for(const a of this[d])yield*a[r.$getAttributeIt](e,t)}*[r.$getRealChildrenByNameIt](e,t,a){for(const n of this[d]){n[r.$nodeName]!==e||a&&n[r.$consumed]||(yield n);t&&(yield*n[r.$getRealChildrenByNameIt](e,t,a))}}[r.$isDataValue](){return null===this[g]?0===this[d].length||this[d][0][r.$namespaceId]===o.NamespaceIds.xhtml.id:this[g]}[r.$getDataValue](){return null===this[g]?0===this[d].length?this[r.$content].trim():this[d][0][r.$namespaceId]===o.NamespaceIds.xhtml.id?this[d][0][r.$text]().trim():null:this[r.$content].trim()}[r.$setValue](e){e=e.value||"";this[r.$content]=e.toString()}[r.$dump](e=!1){const t=Object.create(null);e&&(t.$ns=this[r.$namespaceId]);this[r.$content]&&(t.$content=this[r.$content]);t.$name=this[r.$nodeName];t.children=[];for(const a of this[d])t.children.push(a[r.$dump](e));t.attributes=Object.create(null);for(const[e,a]of this[h])t.attributes[e]=a[r.$content];return t}}t.XmlObject=XmlObject;class ContentObject extends XFAObject{constructor(e,t){super(e,t);this[r.$content]=""}[r.$onText](e){this[r.$content]+=e}[r.$finalize](){}}t.ContentObject=ContentObject;class OptionObject extends ContentObject{constructor(e,t,a){super(e,t);this[x]=a}[r.$finalize](){this[r.$content]=(0,n.getKeyword)({data:this[r.$content],defaultValue:this[x][0],validate:e=>this[x].includes(e)})}[r.$clean](e){super[r.$clean](e);delete this[x]}}t.OptionObject=OptionObject;class StringObject extends ContentObject{[r.$finalize](){this[r.$content]=this[r.$content].trim()}}t.StringObject=StringObject;class IntegerObject extends ContentObject{constructor(e,t,a,r){super(e,t);this[p]=a;this[F]=r}[r.$finalize](){this[r.$content]=(0,n.getInteger)({data:this[r.$content],defaultValue:this[p],validate:this[F]})}[r.$clean](e){super[r.$clean](e);delete this[p];delete this[F]}}t.IntegerObject=IntegerObject;t.Option01=class Option01 extends IntegerObject{constructor(e,t){super(e,t,0,(e=>1===e))}};t.Option10=class Option10 extends IntegerObject{constructor(e,t){super(e,t,1,(e=>0===e))}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.createDataNode=function createDataNode(e,t,a){const i=parseExpression(a);if(!i)return null;if(i.some((e=>e.operator===o.dotDot)))return null;const s=c.get(i[0].name);let l=0;if(s){e=s(e,t);l=1}else e=t||e;for(let t=i.length;l0&&f.push(e)}if(0!==f.length||u||0!==d)e=isFinite(h)?f.filter((e=>he[h])):f.flat();else{const a=t[r.$getParent]();if(!(t=a))return null;d=-1;e=[t]}}if(0===e.length)return null;return e};var r=a(78),n=a(2);const i=/^[^.[]+/,s=/^[^\]]+/,o={dot:0,dotDot:1,dotHash:2,dotBracket:3,dotParen:4},c=new Map([["$data",(e,t)=>e.datasets?e.datasets.data:e],["$record",(e,t)=>(e.datasets?e.datasets.data:e)[r.$getChildren]()[0]],["$template",(e,t)=>e.template],["$connectionSet",(e,t)=>e.connectionSet],["$form",(e,t)=>e.form],["$layout",(e,t)=>e.layout],["$host",(e,t)=>e.host],["$dataWindow",(e,t)=>e.dataWindow],["$event",(e,t)=>e.event],["!",(e,t)=>e.datasets],["$xfa",(e,t)=>e],["xfa",(e,t)=>e],["$",(e,t)=>t]]),l=new WeakMap;function parseExpression(e,t,a=!0){let r=e.match(i);if(!r)return null;let[c]=r;const l=[{name:c,cacheName:"."+c,index:0,js:null,formCalc:null,operator:o.dot}];let h=c.length;for(;h{Object.defineProperty(t,"__esModule",{value:!0});t.DataHandler=void 0;var r=a(78);t.DataHandler=class DataHandler{constructor(e,t){this.data=t;this.dataset=e.datasets||null}serialize(e){const t=[[-1,this.data[r.$getChildren]()]];for(;t.length>0;){const a=t.at(-1),[n,i]=a;if(n+1===i.length){t.pop();continue}const s=i[++a[0]],o=e.get(s[r.$uid]);if(o)s[r.$setValue](o);else{const t=s[r.$getAttributes]();for(const a of t.values()){const t=e.get(a[r.$uid]);if(t){a[r.$setValue](t);break}}}const c=s[r.$getChildren]();c.length>0&&t.push([-1,c])}const a=[''];if(this.dataset)for(const e of this.dataset[r.$getChildren]())"data"!==e[r.$nodeName]&&e[r.$toString](a);this.data[r.$toString](a);a.push("");return a.join("")}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XFAParser=void 0;var r=a(78),n=a(71),i=a(91),s=a(2);class XFAParser extends n.XMLParserBase{constructor(e=null,t=!1){super();this._builder=new i.Builder(e);this._stack=[];this._globalData={usedTypefaces:new Set};this._ids=new Map;this._current=this._builder.buildRoot(this._ids);this._errorCode=n.XMLParserErrorCode.NoError;this._whiteRegex=/^\s+$/;this._nbsps=/\xa0+/g;this._richText=t}parse(e){this.parseXml(e);if(this._errorCode===n.XMLParserErrorCode.NoError){this._current[r.$finalize]();return this._current.element}}onText(e){e=e.replace(this._nbsps,(e=>e.slice(1)+" "));this._richText||this._current[r.$acceptWhitespace]()?this._current[r.$onText](e,this._richText):this._whiteRegex.test(e)||this._current[r.$onText](e.trim())}onCdata(e){this._current[r.$onText](e)}_mkAttributes(e,t){let a=null,n=null;const i=Object.create({});for(const{name:o,value:c}of e)if("xmlns"===o)a?(0,s.warn)(`XFA - multiple namespace definition in <${t}>`):a=c;else if(o.startsWith("xmlns:")){const e=o.substring(6);n||(n=[]);n.push({prefix:e,value:c})}else{const e=o.indexOf(":");if(-1===e)i[o]=c;else{let t=i[r.$nsAttributes];t||(t=i[r.$nsAttributes]=Object.create(null));const[a,n]=[o.slice(0,e),o.slice(e+1)];(t[a]||=Object.create(null))[n]=c}}return[a,n,i]}_getNameAndPrefix(e,t){const a=e.indexOf(":");return-1===a?[e,null]:[e.substring(a+1),t?"":e.substring(0,a)]}onBeginElement(e,t,a){const[n,i,s]=this._mkAttributes(t,e),[o,c]=this._getNameAndPrefix(e,this._builder.isNsAgnostic()),l=this._builder.build({nsPrefix:c,name:o,attributes:s,namespace:n,prefixes:i});l[r.$globalData]=this._globalData;if(a){l[r.$finalize]();this._current[r.$onChild](l)&&l[r.$setId](this._ids);l[r.$clean](this._builder)}else{this._stack.push(this._current);this._current=l}}onEndElement(e){const t=this._current;if(t[r.$isCDATAXml]()&&"string"==typeof t[r.$content]){const e=new XFAParser;e._globalData=this._globalData;const a=e.parse(t[r.$content]);t[r.$content]=null;t[r.$onChild](a)}t[r.$finalize]();this._current=this._stack.pop();this._current[r.$onChild](t)&&t[r.$setId](this._ids);t[r.$clean](this._builder)}onError(e){this._errorCode=e}}t.XFAParser=XFAParser},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Builder=void 0;var r=a(81),n=a(78),i=a(92),s=a(80),o=a(101),c=a(2),l=a(87);class Root extends l.XFAObject{constructor(e){super(-1,"root",Object.create(null));this.element=null;this[n.$ids]=e}[n.$onChild](e){this.element=e;return!0}[n.$finalize](){super[n.$finalize]();if(this.element.template instanceof s.Template){this[n.$ids].set(n.$root,this.element);this.element.template[n.$resolvePrototypes](this[n.$ids]);this.element.template[n.$ids]=this[n.$ids]}}}class Empty extends l.XFAObject{constructor(){super(-1,"",Object.create(null))}[n.$onChild](e){return!1}}t.Builder=class Builder{constructor(e=null){this._namespaceStack=[];this._nsAgnosticLevel=0;this._namespacePrefixes=new Map;this._namespaces=new Map;this._nextNsId=Math.max(...Object.values(r.NamespaceIds).map((({id:e})=>e)));this._currentNamespace=e||new o.UnknownNamespace(++this._nextNsId)}buildRoot(e){return new Root(e)}build({nsPrefix:e,name:t,attributes:a,namespace:s,prefixes:o}){const c=null!==s;if(c){this._namespaceStack.push(this._currentNamespace);this._currentNamespace=this._searchNamespace(s)}o&&this._addNamespacePrefix(o);if(a.hasOwnProperty(n.$nsAttributes)){const e=i.NamespaceSetUp.datasets,t=a[n.$nsAttributes];let r=null;for(const[a,n]of Object.entries(t)){if(this._getNamespaceToUse(a)===e){r={xfa:n};break}}r?a[n.$nsAttributes]=r:delete a[n.$nsAttributes]}const l=this._getNamespaceToUse(e),h=l?.[r.$buildXFAObject](t,a)||new Empty;h[n.$isNsAgnostic]()&&this._nsAgnosticLevel++;(c||o||h[n.$isNsAgnostic]())&&(h[n.$cleanup]={hasNamespace:c,prefixes:o,nsAgnostic:h[n.$isNsAgnostic]()});return h}isNsAgnostic(){return this._nsAgnosticLevel>0}_searchNamespace(e){let t=this._namespaces.get(e);if(t)return t;for(const[a,{check:n}]of Object.entries(r.NamespaceIds))if(n(e)){t=i.NamespaceSetUp[a];if(t){this._namespaces.set(e,t);return t}break}t=new o.UnknownNamespace(++this._nextNsId);this._namespaces.set(e,t);return t}_addNamespacePrefix(e){for(const{prefix:t,value:a}of e){const e=this._searchNamespace(a);let r=this._namespacePrefixes.get(t);if(!r){r=[];this._namespacePrefixes.set(t,r)}r.push(e)}}_getNamespaceToUse(e){if(!e)return this._currentNamespace;const t=this._namespacePrefixes.get(e);if(t?.length>0)return t.at(-1);(0,c.warn)(`Unknown namespace prefix: ${e}.`);return null}clean(e){const{hasNamespace:t,prefixes:a,nsAgnostic:r}=e;t&&(this._currentNamespace=this._namespaceStack.pop());a&&a.forEach((({prefix:e})=>{this._namespacePrefixes.get(e).pop()}));r&&this._nsAgnosticLevel--}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.NamespaceSetUp=void 0;var r=a(93),n=a(94),i=a(95),s=a(96),o=a(97),c=a(98),l=a(80),h=a(99),u=a(100);const d={config:r.ConfigNamespace,connection:n.ConnectionSetNamespace,datasets:i.DatasetsNamespace,localeSet:s.LocaleSetNamespace,signature:o.SignatureNamespace,stylesheet:c.StylesheetNamespace,template:l.TemplateNamespace,xdp:h.XdpNamespace,xhtml:u.XhtmlNamespace};t.NamespaceSetUp=d},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ConfigNamespace=void 0;var r=a(81),n=a(78),i=a(87),s=a(84),o=a(2);const c=r.NamespaceIds.config.id;class Acrobat extends i.XFAObject{constructor(e){super(c,"acrobat",!0);this.acrobat7=null;this.autoSave=null;this.common=null;this.validate=null;this.validateApprovalSignatures=null;this.submitUrl=new i.XFAObjectArray}}class Acrobat7 extends i.XFAObject{constructor(e){super(c,"acrobat7",!0);this.dynamicRender=null}}class ADBE_JSConsole extends i.OptionObject{constructor(e){super(c,"ADBE_JSConsole",["delegate","Enable","Disable"])}}class ADBE_JSDebugger extends i.OptionObject{constructor(e){super(c,"ADBE_JSDebugger",["delegate","Enable","Disable"])}}class AddSilentPrint extends i.Option01{constructor(e){super(c,"addSilentPrint")}}class AddViewerPreferences extends i.Option01{constructor(e){super(c,"addViewerPreferences")}}class AdjustData extends i.Option10{constructor(e){super(c,"adjustData")}}class AdobeExtensionLevel extends i.IntegerObject{constructor(e){super(c,"adobeExtensionLevel",0,(e=>e>=1&&e<=8))}}class Agent extends i.XFAObject{constructor(e){super(c,"agent",!0);this.name=e.name?e.name.trim():"";this.common=new i.XFAObjectArray}}class AlwaysEmbed extends i.ContentObject{constructor(e){super(c,"alwaysEmbed")}}class Amd extends i.StringObject{constructor(e){super(c,"amd")}}class Area extends i.XFAObject{constructor(e){super(c,"area");this.level=(0,s.getInteger)({data:e.level,defaultValue:0,validate:e=>e>=1&&e<=3});this.name=(0,s.getStringOption)(e.name,["","barcode","coreinit","deviceDriver","font","general","layout","merge","script","signature","sourceSet","templateCache"])}}class Attributes extends i.OptionObject{constructor(e){super(c,"attributes",["preserve","delegate","ignore"])}}class AutoSave extends i.OptionObject{constructor(e){super(c,"autoSave",["disabled","enabled"])}}class Base extends i.StringObject{constructor(e){super(c,"base")}}class BatchOutput extends i.XFAObject{constructor(e){super(c,"batchOutput");this.format=(0,s.getStringOption)(e.format,["none","concat","zip","zipCompress"])}}class BehaviorOverride extends i.ContentObject{constructor(e){super(c,"behaviorOverride")}[n.$finalize](){this[n.$content]=new Map(this[n.$content].trim().split(/\s+/).filter((e=>e.includes(":"))).map((e=>e.split(":",2))))}}class Cache extends i.XFAObject{constructor(e){super(c,"cache",!0);this.templateCache=null}}class Change extends i.Option01{constructor(e){super(c,"change")}}class Common extends i.XFAObject{constructor(e){super(c,"common",!0);this.data=null;this.locale=null;this.localeSet=null;this.messaging=null;this.suppressBanner=null;this.template=null;this.validationMessaging=null;this.versionControl=null;this.log=new i.XFAObjectArray}}class Compress extends i.XFAObject{constructor(e){super(c,"compress");this.scope=(0,s.getStringOption)(e.scope,["imageOnly","document"])}}class CompressLogicalStructure extends i.Option01{constructor(e){super(c,"compressLogicalStructure")}}class CompressObjectStream extends i.Option10{constructor(e){super(c,"compressObjectStream")}}class Compression extends i.XFAObject{constructor(e){super(c,"compression",!0);this.compressLogicalStructure=null;this.compressObjectStream=null;this.level=null;this.type=null}}class Config extends i.XFAObject{constructor(e){super(c,"config",!0);this.acrobat=null;this.present=null;this.trace=null;this.agent=new i.XFAObjectArray}}class Conformance extends i.OptionObject{constructor(e){super(c,"conformance",["A","B"])}}class ContentCopy extends i.Option01{constructor(e){super(c,"contentCopy")}}class Copies extends i.IntegerObject{constructor(e){super(c,"copies",1,(e=>e>=1))}}class Creator extends i.StringObject{constructor(e){super(c,"creator")}}class CurrentPage extends i.IntegerObject{constructor(e){super(c,"currentPage",0,(e=>e>=0))}}class Data extends i.XFAObject{constructor(e){super(c,"data",!0);this.adjustData=null;this.attributes=null;this.incrementalLoad=null;this.outputXSL=null;this.range=null;this.record=null;this.startNode=null;this.uri=null;this.window=null;this.xsl=null;this.excludeNS=new i.XFAObjectArray;this.transform=new i.XFAObjectArray}}class Debug extends i.XFAObject{constructor(e){super(c,"debug",!0);this.uri=null}}class DefaultTypeface extends i.ContentObject{constructor(e){super(c,"defaultTypeface");this.writingScript=(0,s.getStringOption)(e.writingScript,["*","Arabic","Cyrillic","EastEuropeanRoman","Greek","Hebrew","Japanese","Korean","Roman","SimplifiedChinese","Thai","TraditionalChinese","Vietnamese"])}}class Destination extends i.OptionObject{constructor(e){super(c,"destination",["pdf","pcl","ps","webClient","zpl"])}}class DocumentAssembly extends i.Option01{constructor(e){super(c,"documentAssembly")}}class Driver extends i.XFAObject{constructor(e){super(c,"driver",!0);this.name=e.name?e.name.trim():"";this.fontInfo=null;this.xdc=null}}class DuplexOption extends i.OptionObject{constructor(e){super(c,"duplexOption",["simplex","duplexFlipLongEdge","duplexFlipShortEdge"])}}class DynamicRender extends i.OptionObject{constructor(e){super(c,"dynamicRender",["forbidden","required"])}}class Embed extends i.Option01{constructor(e){super(c,"embed")}}class Encrypt extends i.Option01{constructor(e){super(c,"encrypt")}}class Encryption extends i.XFAObject{constructor(e){super(c,"encryption",!0);this.encrypt=null;this.encryptionLevel=null;this.permissions=null}}class EncryptionLevel extends i.OptionObject{constructor(e){super(c,"encryptionLevel",["40bit","128bit"])}}class Enforce extends i.StringObject{constructor(e){super(c,"enforce")}}class Equate extends i.XFAObject{constructor(e){super(c,"equate");this.force=(0,s.getInteger)({data:e.force,defaultValue:1,validate:e=>0===e});this.from=e.from||"";this.to=e.to||""}}class EquateRange extends i.XFAObject{constructor(e){super(c,"equateRange");this.from=e.from||"";this.to=e.to||"";this._unicodeRange=e.unicodeRange||""}get unicodeRange(){const e=[],t=/U\+([0-9a-fA-F]+)/,a=this._unicodeRange;for(let r of a.split(",").map((e=>e.trim())).filter((e=>!!e))){r=r.split("-",2).map((e=>{const a=e.match(t);return a?parseInt(a[1],16):0}));1===r.length&&r.push(r[0]);e.push(r)}return(0,o.shadow)(this,"unicodeRange",e)}}class Exclude extends i.ContentObject{constructor(e){super(c,"exclude")}[n.$finalize](){this[n.$content]=this[n.$content].trim().split(/\s+/).filter((e=>e&&["calculate","close","enter","exit","initialize","ready","validate"].includes(e)))}}class ExcludeNS extends i.StringObject{constructor(e){super(c,"excludeNS")}}class FlipLabel extends i.OptionObject{constructor(e){super(c,"flipLabel",["usePrinterSetting","on","off"])}}class FontInfo extends i.XFAObject{constructor(e){super(c,"fontInfo",!0);this.embed=null;this.map=null;this.subsetBelow=null;this.alwaysEmbed=new i.XFAObjectArray;this.defaultTypeface=new i.XFAObjectArray;this.neverEmbed=new i.XFAObjectArray}}class FormFieldFilling extends i.Option01{constructor(e){super(c,"formFieldFilling")}}class GroupParent extends i.StringObject{constructor(e){super(c,"groupParent")}}class IfEmpty extends i.OptionObject{constructor(e){super(c,"ifEmpty",["dataValue","dataGroup","ignore","remove"])}}class IncludeXDPContent extends i.StringObject{constructor(e){super(c,"includeXDPContent")}}class IncrementalLoad extends i.OptionObject{constructor(e){super(c,"incrementalLoad",["none","forwardOnly"])}}class IncrementalMerge extends i.Option01{constructor(e){super(c,"incrementalMerge")}}class Interactive extends i.Option01{constructor(e){super(c,"interactive")}}class Jog extends i.OptionObject{constructor(e){super(c,"jog",["usePrinterSetting","none","pageSet"])}}class LabelPrinter extends i.XFAObject{constructor(e){super(c,"labelPrinter",!0);this.name=(0,s.getStringOption)(e.name,["zpl","dpl","ipl","tcpl"]);this.batchOutput=null;this.flipLabel=null;this.fontInfo=null;this.xdc=null}}class Layout extends i.OptionObject{constructor(e){super(c,"layout",["paginate","panel"])}}class Level extends i.IntegerObject{constructor(e){super(c,"level",0,(e=>e>0))}}class Linearized extends i.Option01{constructor(e){super(c,"linearized")}}class Locale extends i.StringObject{constructor(e){super(c,"locale")}}class LocaleSet extends i.StringObject{constructor(e){super(c,"localeSet")}}class Log extends i.XFAObject{constructor(e){super(c,"log",!0);this.mode=null;this.threshold=null;this.to=null;this.uri=null}}class MapElement extends i.XFAObject{constructor(e){super(c,"map",!0);this.equate=new i.XFAObjectArray;this.equateRange=new i.XFAObjectArray}}class MediumInfo extends i.XFAObject{constructor(e){super(c,"mediumInfo",!0);this.map=null}}class Message extends i.XFAObject{constructor(e){super(c,"message",!0);this.msgId=null;this.severity=null}}class Messaging extends i.XFAObject{constructor(e){super(c,"messaging",!0);this.message=new i.XFAObjectArray}}class Mode extends i.OptionObject{constructor(e){super(c,"mode",["append","overwrite"])}}class ModifyAnnots extends i.Option01{constructor(e){super(c,"modifyAnnots")}}class MsgId extends i.IntegerObject{constructor(e){super(c,"msgId",1,(e=>e>=1))}}class NameAttr extends i.StringObject{constructor(e){super(c,"nameAttr")}}class NeverEmbed extends i.ContentObject{constructor(e){super(c,"neverEmbed")}}class NumberOfCopies extends i.IntegerObject{constructor(e){super(c,"numberOfCopies",null,(e=>e>=2&&e<=5))}}class OpenAction extends i.XFAObject{constructor(e){super(c,"openAction",!0);this.destination=null}}class Output extends i.XFAObject{constructor(e){super(c,"output",!0);this.to=null;this.type=null;this.uri=null}}class OutputBin extends i.StringObject{constructor(e){super(c,"outputBin")}}class OutputXSL extends i.XFAObject{constructor(e){super(c,"outputXSL",!0);this.uri=null}}class Overprint extends i.OptionObject{constructor(e){super(c,"overprint",["none","both","draw","field"])}}class Packets extends i.StringObject{constructor(e){super(c,"packets")}[n.$finalize](){"*"!==this[n.$content]&&(this[n.$content]=this[n.$content].trim().split(/\s+/).filter((e=>["config","datasets","template","xfdf","xslt"].includes(e))))}}class PageOffset extends i.XFAObject{constructor(e){super(c,"pageOffset");this.x=(0,s.getInteger)({data:e.x,defaultValue:"useXDCSetting",validate:e=>!0});this.y=(0,s.getInteger)({data:e.y,defaultValue:"useXDCSetting",validate:e=>!0})}}class PageRange extends i.StringObject{constructor(e){super(c,"pageRange")}[n.$finalize](){const e=this[n.$content].trim().split(/\s+/).map((e=>parseInt(e,10))),t=[];for(let a=0,r=e.length;a!1))}}class Pcl extends i.XFAObject{constructor(e){super(c,"pcl",!0);this.name=e.name||"";this.batchOutput=null;this.fontInfo=null;this.jog=null;this.mediumInfo=null;this.outputBin=null;this.pageOffset=null;this.staple=null;this.xdc=null}}class Pdf extends i.XFAObject{constructor(e){super(c,"pdf",!0);this.name=e.name||"";this.adobeExtensionLevel=null;this.batchOutput=null;this.compression=null;this.creator=null;this.encryption=null;this.fontInfo=null;this.interactive=null;this.linearized=null;this.openAction=null;this.pdfa=null;this.producer=null;this.renderPolicy=null;this.scriptModel=null;this.silentPrint=null;this.submitFormat=null;this.tagged=null;this.version=null;this.viewerPreferences=null;this.xdc=null}}class Pdfa extends i.XFAObject{constructor(e){super(c,"pdfa",!0);this.amd=null;this.conformance=null;this.includeXDPContent=null;this.part=null}}class Permissions extends i.XFAObject{constructor(e){super(c,"permissions",!0);this.accessibleContent=null;this.change=null;this.contentCopy=null;this.documentAssembly=null;this.formFieldFilling=null;this.modifyAnnots=null;this.plaintextMetadata=null;this.print=null;this.printHighQuality=null}}class PickTrayByPDFSize extends i.Option01{constructor(e){super(c,"pickTrayByPDFSize")}}class Picture extends i.StringObject{constructor(e){super(c,"picture")}}class PlaintextMetadata extends i.Option01{constructor(e){super(c,"plaintextMetadata")}}class Presence extends i.OptionObject{constructor(e){super(c,"presence",["preserve","dissolve","dissolveStructure","ignore","remove"])}}class Present extends i.XFAObject{constructor(e){super(c,"present",!0);this.behaviorOverride=null;this.cache=null;this.common=null;this.copies=null;this.destination=null;this.incrementalMerge=null;this.layout=null;this.output=null;this.overprint=null;this.pagination=null;this.paginationOverride=null;this.script=null;this.validate=null;this.xdp=null;this.driver=new i.XFAObjectArray;this.labelPrinter=new i.XFAObjectArray;this.pcl=new i.XFAObjectArray;this.pdf=new i.XFAObjectArray;this.ps=new i.XFAObjectArray;this.submitUrl=new i.XFAObjectArray;this.webClient=new i.XFAObjectArray;this.zpl=new i.XFAObjectArray}}class Print extends i.Option01{constructor(e){super(c,"print")}}class PrintHighQuality extends i.Option01{constructor(e){super(c,"printHighQuality")}}class PrintScaling extends i.OptionObject{constructor(e){super(c,"printScaling",["appdefault","noScaling"])}}class PrinterName extends i.StringObject{constructor(e){super(c,"printerName")}}class Producer extends i.StringObject{constructor(e){super(c,"producer")}}class Ps extends i.XFAObject{constructor(e){super(c,"ps",!0);this.name=e.name||"";this.batchOutput=null;this.fontInfo=null;this.jog=null;this.mediumInfo=null;this.outputBin=null;this.staple=null;this.xdc=null}}class Range extends i.ContentObject{constructor(e){super(c,"range")}[n.$finalize](){this[n.$content]=this[n.$content].trim().split(/\s*,\s*/,2).map((e=>e.split("-").map((e=>parseInt(e.trim(),10))))).filter((e=>e.every((e=>!isNaN(e))))).map((e=>{1===e.length&&e.push(e[0]);return e}))}}class Record extends i.ContentObject{constructor(e){super(c,"record")}[n.$finalize](){this[n.$content]=this[n.$content].trim();const e=parseInt(this[n.$content],10);!isNaN(e)&&e>=0&&(this[n.$content]=e)}}class Relevant extends i.ContentObject{constructor(e){super(c,"relevant")}[n.$finalize](){this[n.$content]=this[n.$content].trim().split(/\s+/)}}class Rename extends i.ContentObject{constructor(e){super(c,"rename")}[n.$finalize](){this[n.$content]=this[n.$content].trim();(this[n.$content].toLowerCase().startsWith("xml")||new RegExp("[\\p{L}_][\\p{L}\\d._\\p{M}-]*","u").test(this[n.$content]))&&(0,o.warn)("XFA - Rename: invalid XFA name")}}class RenderPolicy extends i.OptionObject{constructor(e){super(c,"renderPolicy",["server","client"])}}class RunScripts extends i.OptionObject{constructor(e){super(c,"runScripts",["both","client","none","server"])}}class Script extends i.XFAObject{constructor(e){super(c,"script",!0);this.currentPage=null;this.exclude=null;this.runScripts=null}}class ScriptModel extends i.OptionObject{constructor(e){super(c,"scriptModel",["XFA","none"])}}class Severity extends i.OptionObject{constructor(e){super(c,"severity",["ignore","error","information","trace","warning"])}}class SilentPrint extends i.XFAObject{constructor(e){super(c,"silentPrint",!0);this.addSilentPrint=null;this.printerName=null}}class Staple extends i.XFAObject{constructor(e){super(c,"staple");this.mode=(0,s.getStringOption)(e.mode,["usePrinterSetting","on","off"])}}class StartNode extends i.StringObject{constructor(e){super(c,"startNode")}}class StartPage extends i.IntegerObject{constructor(e){super(c,"startPage",0,(e=>!0))}}class SubmitFormat extends i.OptionObject{constructor(e){super(c,"submitFormat",["html","delegate","fdf","xml","pdf"])}}class SubmitUrl extends i.StringObject{constructor(e){super(c,"submitUrl")}}class SubsetBelow extends i.IntegerObject{constructor(e){super(c,"subsetBelow",100,(e=>e>=0&&e<=100))}}class SuppressBanner extends i.Option01{constructor(e){super(c,"suppressBanner")}}class Tagged extends i.Option01{constructor(e){super(c,"tagged")}}class Template extends i.XFAObject{constructor(e){super(c,"template",!0);this.base=null;this.relevant=null;this.startPage=null;this.uri=null;this.xsl=null}}class Threshold extends i.OptionObject{constructor(e){super(c,"threshold",["trace","error","information","warning"])}}class To extends i.OptionObject{constructor(e){super(c,"to",["null","memory","stderr","stdout","system","uri"])}}class TemplateCache extends i.XFAObject{constructor(e){super(c,"templateCache");this.maxEntries=(0,s.getInteger)({data:e.maxEntries,defaultValue:5,validate:e=>e>=0})}}class Trace extends i.XFAObject{constructor(e){super(c,"trace",!0);this.area=new i.XFAObjectArray}}class Transform extends i.XFAObject{constructor(e){super(c,"transform",!0);this.groupParent=null;this.ifEmpty=null;this.nameAttr=null;this.picture=null;this.presence=null;this.rename=null;this.whitespace=null}}class Type extends i.OptionObject{constructor(e){super(c,"type",["none","ascii85","asciiHex","ccittfax","flate","lzw","runLength","native","xdp","mergedXDP"])}}class Uri extends i.StringObject{constructor(e){super(c,"uri")}}class Validate extends i.OptionObject{constructor(e){super(c,"validate",["preSubmit","prePrint","preExecute","preSave"])}}class ValidateApprovalSignatures extends i.ContentObject{constructor(e){super(c,"validateApprovalSignatures")}[n.$finalize](){this[n.$content]=this[n.$content].trim().split(/\s+/).filter((e=>["docReady","postSign"].includes(e)))}}class ValidationMessaging extends i.OptionObject{constructor(e){super(c,"validationMessaging",["allMessagesIndividually","allMessagesTogether","firstMessageOnly","noMessages"])}}class Version extends i.OptionObject{constructor(e){super(c,"version",["1.7","1.6","1.5","1.4","1.3","1.2"])}}class VersionControl extends i.XFAObject{constructor(e){super(c,"VersionControl");this.outputBelow=(0,s.getStringOption)(e.outputBelow,["warn","error","update"]);this.sourceAbove=(0,s.getStringOption)(e.sourceAbove,["warn","error"]);this.sourceBelow=(0,s.getStringOption)(e.sourceBelow,["update","maintain"])}}class ViewerPreferences extends i.XFAObject{constructor(e){super(c,"viewerPreferences",!0);this.ADBE_JSConsole=null;this.ADBE_JSDebugger=null;this.addViewerPreferences=null;this.duplexOption=null;this.enforce=null;this.numberOfCopies=null;this.pageRange=null;this.pickTrayByPDFSize=null;this.printScaling=null}}class WebClient extends i.XFAObject{constructor(e){super(c,"webClient",!0);this.name=e.name?e.name.trim():"";this.fontInfo=null;this.xdc=null}}class Whitespace extends i.OptionObject{constructor(e){super(c,"whitespace",["preserve","ltrim","normalize","rtrim","trim"])}}class Window extends i.ContentObject{constructor(e){super(c,"window")}[n.$finalize](){const e=this[n.$content].trim().split(/\s*,\s*/,2).map((e=>parseInt(e,10)));if(e.some((e=>isNaN(e))))this[n.$content]=[0,0];else{1===e.length&&e.push(e[0]);this[n.$content]=e}}}class Xdc extends i.XFAObject{constructor(e){super(c,"xdc",!0);this.uri=new i.XFAObjectArray;this.xsl=new i.XFAObjectArray}}class Xdp extends i.XFAObject{constructor(e){super(c,"xdp",!0);this.packets=null}}class Xsl extends i.XFAObject{constructor(e){super(c,"xsl",!0);this.debug=null;this.uri=null}}class Zpl extends i.XFAObject{constructor(e){super(c,"zpl",!0);this.name=e.name?e.name.trim():"";this.batchOutput=null;this.flipLabel=null;this.fontInfo=null;this.xdc=null}}class ConfigNamespace{static[r.$buildXFAObject](e,t){if(ConfigNamespace.hasOwnProperty(e))return ConfigNamespace[e](t)}static acrobat(e){return new Acrobat(e)}static acrobat7(e){return new Acrobat7(e)}static ADBE_JSConsole(e){return new ADBE_JSConsole(e)}static ADBE_JSDebugger(e){return new ADBE_JSDebugger(e)}static addSilentPrint(e){return new AddSilentPrint(e)}static addViewerPreferences(e){return new AddViewerPreferences(e)}static adjustData(e){return new AdjustData(e)}static adobeExtensionLevel(e){return new AdobeExtensionLevel(e)}static agent(e){return new Agent(e)}static alwaysEmbed(e){return new AlwaysEmbed(e)}static amd(e){return new Amd(e)}static area(e){return new Area(e)}static attributes(e){return new Attributes(e)}static autoSave(e){return new AutoSave(e)}static base(e){return new Base(e)}static batchOutput(e){return new BatchOutput(e)}static behaviorOverride(e){return new BehaviorOverride(e)}static cache(e){return new Cache(e)}static change(e){return new Change(e)}static common(e){return new Common(e)}static compress(e){return new Compress(e)}static compressLogicalStructure(e){return new CompressLogicalStructure(e)}static compressObjectStream(e){return new CompressObjectStream(e)}static compression(e){return new Compression(e)}static config(e){return new Config(e)}static conformance(e){return new Conformance(e)}static contentCopy(e){return new ContentCopy(e)}static copies(e){return new Copies(e)}static creator(e){return new Creator(e)}static currentPage(e){return new CurrentPage(e)}static data(e){return new Data(e)}static debug(e){return new Debug(e)}static defaultTypeface(e){return new DefaultTypeface(e)}static destination(e){return new Destination(e)}static documentAssembly(e){return new DocumentAssembly(e)}static driver(e){return new Driver(e)}static duplexOption(e){return new DuplexOption(e)}static dynamicRender(e){return new DynamicRender(e)}static embed(e){return new Embed(e)}static encrypt(e){return new Encrypt(e)}static encryption(e){return new Encryption(e)}static encryptionLevel(e){return new EncryptionLevel(e)}static enforce(e){return new Enforce(e)}static equate(e){return new Equate(e)}static equateRange(e){return new EquateRange(e)}static exclude(e){return new Exclude(e)}static excludeNS(e){return new ExcludeNS(e)}static flipLabel(e){return new FlipLabel(e)}static fontInfo(e){return new FontInfo(e)}static formFieldFilling(e){return new FormFieldFilling(e)}static groupParent(e){return new GroupParent(e)}static ifEmpty(e){return new IfEmpty(e)}static includeXDPContent(e){return new IncludeXDPContent(e)}static incrementalLoad(e){return new IncrementalLoad(e)}static incrementalMerge(e){return new IncrementalMerge(e)}static interactive(e){return new Interactive(e)}static jog(e){return new Jog(e)}static labelPrinter(e){return new LabelPrinter(e)}static layout(e){return new Layout(e)}static level(e){return new Level(e)}static linearized(e){return new Linearized(e)}static locale(e){return new Locale(e)}static localeSet(e){return new LocaleSet(e)}static log(e){return new Log(e)}static map(e){return new MapElement(e)}static mediumInfo(e){return new MediumInfo(e)}static message(e){return new Message(e)}static messaging(e){return new Messaging(e)}static mode(e){return new Mode(e)}static modifyAnnots(e){return new ModifyAnnots(e)}static msgId(e){return new MsgId(e)}static nameAttr(e){return new NameAttr(e)}static neverEmbed(e){return new NeverEmbed(e)}static numberOfCopies(e){return new NumberOfCopies(e)}static openAction(e){return new OpenAction(e)}static output(e){return new Output(e)}static outputBin(e){return new OutputBin(e)}static outputXSL(e){return new OutputXSL(e)}static overprint(e){return new Overprint(e)}static packets(e){return new Packets(e)}static pageOffset(e){return new PageOffset(e)}static pageRange(e){return new PageRange(e)}static pagination(e){return new Pagination(e)}static paginationOverride(e){return new PaginationOverride(e)}static part(e){return new Part(e)}static pcl(e){return new Pcl(e)}static pdf(e){return new Pdf(e)}static pdfa(e){return new Pdfa(e)}static permissions(e){return new Permissions(e)}static pickTrayByPDFSize(e){return new PickTrayByPDFSize(e)}static picture(e){return new Picture(e)}static plaintextMetadata(e){return new PlaintextMetadata(e)}static presence(e){return new Presence(e)}static present(e){return new Present(e)}static print(e){return new Print(e)}static printHighQuality(e){return new PrintHighQuality(e)}static printScaling(e){return new PrintScaling(e)}static printerName(e){return new PrinterName(e)}static producer(e){return new Producer(e)}static ps(e){return new Ps(e)}static range(e){return new Range(e)}static record(e){return new Record(e)}static relevant(e){return new Relevant(e)}static rename(e){return new Rename(e)}static renderPolicy(e){return new RenderPolicy(e)}static runScripts(e){return new RunScripts(e)}static script(e){return new Script(e)}static scriptModel(e){return new ScriptModel(e)}static severity(e){return new Severity(e)}static silentPrint(e){return new SilentPrint(e)}static staple(e){return new Staple(e)}static startNode(e){return new StartNode(e)}static startPage(e){return new StartPage(e)}static submitFormat(e){return new SubmitFormat(e)}static submitUrl(e){return new SubmitUrl(e)}static subsetBelow(e){return new SubsetBelow(e)}static suppressBanner(e){return new SuppressBanner(e)}static tagged(e){return new Tagged(e)}static template(e){return new Template(e)}static templateCache(e){return new TemplateCache(e)}static threshold(e){return new Threshold(e)}static to(e){return new To(e)}static trace(e){return new Trace(e)}static transform(e){return new Transform(e)}static type(e){return new Type(e)}static uri(e){return new Uri(e)}static validate(e){return new Validate(e)}static validateApprovalSignatures(e){return new ValidateApprovalSignatures(e)}static validationMessaging(e){return new ValidationMessaging(e)}static version(e){return new Version(e)}static versionControl(e){return new VersionControl(e)}static viewerPreferences(e){return new ViewerPreferences(e)}static webClient(e){return new WebClient(e)}static whitespace(e){return new Whitespace(e)}static window(e){return new Window(e)}static xdc(e){return new Xdc(e)}static xdp(e){return new Xdp(e)}static xsl(e){return new Xsl(e)}static zpl(e){return new Zpl(e)}}t.ConfigNamespace=ConfigNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ConnectionSetNamespace=void 0;var r=a(81),n=a(87);const i=r.NamespaceIds.connectionSet.id;class ConnectionSet extends n.XFAObject{constructor(e){super(i,"connectionSet",!0);this.wsdlConnection=new n.XFAObjectArray;this.xmlConnection=new n.XFAObjectArray;this.xsdConnection=new n.XFAObjectArray}}class EffectiveInputPolicy extends n.XFAObject{constructor(e){super(i,"effectiveInputPolicy");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class EffectiveOutputPolicy extends n.XFAObject{constructor(e){super(i,"effectiveOutputPolicy");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Operation extends n.StringObject{constructor(e){super(i,"operation");this.id=e.id||"";this.input=e.input||"";this.name=e.name||"";this.output=e.output||"";this.use=e.use||"";this.usehref=e.usehref||""}}class RootElement extends n.StringObject{constructor(e){super(i,"rootElement");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class SoapAction extends n.StringObject{constructor(e){super(i,"soapAction");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class SoapAddress extends n.StringObject{constructor(e){super(i,"soapAddress");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class Uri extends n.StringObject{constructor(e){super(i,"uri");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class WsdlAddress extends n.StringObject{constructor(e){super(i,"wsdlAddress");this.id=e.id||"";this.name=e.name||"";this.use=e.use||"";this.usehref=e.usehref||""}}class WsdlConnection extends n.XFAObject{constructor(e){super(i,"wsdlConnection",!0);this.dataDescription=e.dataDescription||"";this.name=e.name||"";this.effectiveInputPolicy=null;this.effectiveOutputPolicy=null;this.operation=null;this.soapAction=null;this.soapAddress=null;this.wsdlAddress=null}}class XmlConnection extends n.XFAObject{constructor(e){super(i,"xmlConnection",!0);this.dataDescription=e.dataDescription||"";this.name=e.name||"";this.uri=null}}class XsdConnection extends n.XFAObject{constructor(e){super(i,"xsdConnection",!0);this.dataDescription=e.dataDescription||"";this.name=e.name||"";this.rootElement=null;this.uri=null}}class ConnectionSetNamespace{static[r.$buildXFAObject](e,t){if(ConnectionSetNamespace.hasOwnProperty(e))return ConnectionSetNamespace[e](t)}static connectionSet(e){return new ConnectionSet(e)}static effectiveInputPolicy(e){return new EffectiveInputPolicy(e)}static effectiveOutputPolicy(e){return new EffectiveOutputPolicy(e)}static operation(e){return new Operation(e)}static rootElement(e){return new RootElement(e)}static soapAction(e){return new SoapAction(e)}static soapAddress(e){return new SoapAddress(e)}static uri(e){return new Uri(e)}static wsdlAddress(e){return new WsdlAddress(e)}static wsdlConnection(e){return new WsdlConnection(e)}static xmlConnection(e){return new XmlConnection(e)}static xsdConnection(e){return new XsdConnection(e)}}t.ConnectionSetNamespace=ConnectionSetNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.DatasetsNamespace=void 0;var r=a(78),n=a(81),i=a(87);const s=n.NamespaceIds.datasets.id;class Data extends i.XmlObject{constructor(e){super(s,"data",e)}[r.$isNsAgnostic](){return!0}}class Datasets extends i.XFAObject{constructor(e){super(s,"datasets",!0);this.data=null;this.Signature=null}[r.$onChild](e){const t=e[r.$nodeName];("data"===t&&e[r.$namespaceId]===s||"Signature"===t&&e[r.$namespaceId]===n.NamespaceIds.signature.id)&&(this[t]=e);this[r.$appendChild](e)}}class DatasetsNamespace{static[n.$buildXFAObject](e,t){if(DatasetsNamespace.hasOwnProperty(e))return DatasetsNamespace[e](t)}static datasets(e){return new Datasets(e)}static data(e){return new Data(e)}}t.DatasetsNamespace=DatasetsNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.LocaleSetNamespace=void 0;var r=a(81),n=a(87),i=a(84);const s=r.NamespaceIds.localeSet.id;class CalendarSymbols extends n.XFAObject{constructor(e){super(s,"calendarSymbols",!0);this.name="gregorian";this.dayNames=new n.XFAObjectArray(2);this.eraNames=null;this.meridiemNames=null;this.monthNames=new n.XFAObjectArray(2)}}class CurrencySymbol extends n.StringObject{constructor(e){super(s,"currencySymbol");this.name=(0,i.getStringOption)(e.name,["symbol","isoname","decimal"])}}class CurrencySymbols extends n.XFAObject{constructor(e){super(s,"currencySymbols",!0);this.currencySymbol=new n.XFAObjectArray(3)}}class DatePattern extends n.StringObject{constructor(e){super(s,"datePattern");this.name=(0,i.getStringOption)(e.name,["full","long","med","short"])}}class DatePatterns extends n.XFAObject{constructor(e){super(s,"datePatterns",!0);this.datePattern=new n.XFAObjectArray(4)}}class DateTimeSymbols extends n.ContentObject{constructor(e){super(s,"dateTimeSymbols")}}class Day extends n.StringObject{constructor(e){super(s,"day")}}class DayNames extends n.XFAObject{constructor(e){super(s,"dayNames",!0);this.abbr=(0,i.getInteger)({data:e.abbr,defaultValue:0,validate:e=>1===e});this.day=new n.XFAObjectArray(7)}}class Era extends n.StringObject{constructor(e){super(s,"era")}}class EraNames extends n.XFAObject{constructor(e){super(s,"eraNames",!0);this.era=new n.XFAObjectArray(2)}}class Locale extends n.XFAObject{constructor(e){super(s,"locale",!0);this.desc=e.desc||"";this.name="isoname";this.calendarSymbols=null;this.currencySymbols=null;this.datePatterns=null;this.dateTimeSymbols=null;this.numberPatterns=null;this.numberSymbols=null;this.timePatterns=null;this.typeFaces=null}}class LocaleSet extends n.XFAObject{constructor(e){super(s,"localeSet",!0);this.locale=new n.XFAObjectArray}}class Meridiem extends n.StringObject{constructor(e){super(s,"meridiem")}}class MeridiemNames extends n.XFAObject{constructor(e){super(s,"meridiemNames",!0);this.meridiem=new n.XFAObjectArray(2)}}class Month extends n.StringObject{constructor(e){super(s,"month")}}class MonthNames extends n.XFAObject{constructor(e){super(s,"monthNames",!0);this.abbr=(0,i.getInteger)({data:e.abbr,defaultValue:0,validate:e=>1===e});this.month=new n.XFAObjectArray(12)}}class NumberPattern extends n.StringObject{constructor(e){super(s,"numberPattern");this.name=(0,i.getStringOption)(e.name,["full","long","med","short"])}}class NumberPatterns extends n.XFAObject{constructor(e){super(s,"numberPatterns",!0);this.numberPattern=new n.XFAObjectArray(4)}}class NumberSymbol extends n.StringObject{constructor(e){super(s,"numberSymbol");this.name=(0,i.getStringOption)(e.name,["decimal","grouping","percent","minus","zero"])}}class NumberSymbols extends n.XFAObject{constructor(e){super(s,"numberSymbols",!0);this.numberSymbol=new n.XFAObjectArray(5)}}class TimePattern extends n.StringObject{constructor(e){super(s,"timePattern");this.name=(0,i.getStringOption)(e.name,["full","long","med","short"])}}class TimePatterns extends n.XFAObject{constructor(e){super(s,"timePatterns",!0);this.timePattern=new n.XFAObjectArray(4)}}class TypeFace extends n.XFAObject{constructor(e){super(s,"typeFace",!0);this.name=""|e.name}}class TypeFaces extends n.XFAObject{constructor(e){super(s,"typeFaces",!0);this.typeFace=new n.XFAObjectArray}}class LocaleSetNamespace{static[r.$buildXFAObject](e,t){if(LocaleSetNamespace.hasOwnProperty(e))return LocaleSetNamespace[e](t)}static calendarSymbols(e){return new CalendarSymbols(e)}static currencySymbol(e){return new CurrencySymbol(e)}static currencySymbols(e){return new CurrencySymbols(e)}static datePattern(e){return new DatePattern(e)}static datePatterns(e){return new DatePatterns(e)}static dateTimeSymbols(e){return new DateTimeSymbols(e)}static day(e){return new Day(e)}static dayNames(e){return new DayNames(e)}static era(e){return new Era(e)}static eraNames(e){return new EraNames(e)}static locale(e){return new Locale(e)}static localeSet(e){return new LocaleSet(e)}static meridiem(e){return new Meridiem(e)}static meridiemNames(e){return new MeridiemNames(e)}static month(e){return new Month(e)}static monthNames(e){return new MonthNames(e)}static numberPattern(e){return new NumberPattern(e)}static numberPatterns(e){return new NumberPatterns(e)}static numberSymbol(e){return new NumberSymbol(e)}static numberSymbols(e){return new NumberSymbols(e)}static timePattern(e){return new TimePattern(e)}static timePatterns(e){return new TimePatterns(e)}static typeFace(e){return new TypeFace(e)}static typeFaces(e){return new TypeFaces(e)}}t.LocaleSetNamespace=LocaleSetNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.SignatureNamespace=void 0;var r=a(81),n=a(87);const i=r.NamespaceIds.signature.id;class Signature extends n.XFAObject{constructor(e){super(i,"signature",!0)}}class SignatureNamespace{static[r.$buildXFAObject](e,t){if(SignatureNamespace.hasOwnProperty(e))return SignatureNamespace[e](t)}static signature(e){return new Signature(e)}}t.SignatureNamespace=SignatureNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.StylesheetNamespace=void 0;var r=a(81),n=a(87);const i=r.NamespaceIds.stylesheet.id;class Stylesheet extends n.XFAObject{constructor(e){super(i,"stylesheet",!0)}}class StylesheetNamespace{static[r.$buildXFAObject](e,t){if(StylesheetNamespace.hasOwnProperty(e))return StylesheetNamespace[e](t)}static stylesheet(e){return new Stylesheet(e)}}t.StylesheetNamespace=StylesheetNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XdpNamespace=void 0;var r=a(81),n=a(78),i=a(87);const s=r.NamespaceIds.xdp.id;class Xdp extends i.XFAObject{constructor(e){super(s,"xdp",!0);this.uuid=e.uuid||"";this.timeStamp=e.timeStamp||"";this.config=null;this.connectionSet=null;this.datasets=null;this.localeSet=null;this.stylesheet=new i.XFAObjectArray;this.template=null}[n.$onChildCheck](e){const t=r.NamespaceIds[e[n.$nodeName]];return t&&e[n.$namespaceId]===t.id}}class XdpNamespace{static[r.$buildXFAObject](e,t){if(XdpNamespace.hasOwnProperty(e))return XdpNamespace[e](t)}static xdp(e){return new Xdp(e)}}t.XdpNamespace=XdpNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XhtmlNamespace=void 0;var r=a(78),n=a(81),i=a(83),s=a(84),o=a(87);const c=n.NamespaceIds.xhtml.id,l=Symbol(),h=new Set(["color","font","font-family","font-size","font-stretch","font-style","font-weight","margin","margin-bottom","margin-left","margin-right","margin-top","letter-spacing","line-height","orphans","page-break-after","page-break-before","page-break-inside","tab-interval","tab-stop","text-align","text-decoration","text-indent","vertical-align","widows","kerning-mode","xfa-font-horizontal-scale","xfa-font-vertical-scale","xfa-spacerun","xfa-tab-stops"]),u=new Map([["page-break-after","breakAfter"],["page-break-before","breakBefore"],["page-break-inside","breakInside"],["kerning-mode",e=>"none"===e?"none":"normal"],["xfa-font-horizontal-scale",e=>`scaleX(${Math.max(0,Math.min(parseInt(e)/100)).toFixed(2)})`],["xfa-font-vertical-scale",e=>`scaleY(${Math.max(0,Math.min(parseInt(e)/100)).toFixed(2)})`],["xfa-spacerun",""],["xfa-tab-stops",""],["font-size",(e,t)=>{e=t.fontSize=(0,s.getMeasurement)(e);return(0,i.measureToString)(.99*e)}],["letter-spacing",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["line-height",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["margin",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["margin-bottom",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["margin-left",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["margin-right",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["margin-top",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["text-indent",e=>(0,i.measureToString)((0,s.getMeasurement)(e))],["font-family",e=>e],["vertical-align",e=>(0,i.measureToString)((0,s.getMeasurement)(e))]]),d=/\s+/g,f=/[\r\n]+/g,g=/\r\n?/g;function mapStyle(e,t,a){const n=Object.create(null);if(!e)return n;const o=Object.create(null);for(const[t,a]of e.split(";").map((e=>e.split(":",2)))){const e=u.get(t);if(""===e)continue;let r=a;e&&(r="string"==typeof e?e:e(a,o));t.endsWith("scale")?n.transform=n.transform?`${n[t]} ${r}`:r:n[t.replaceAll(/-([a-zA-Z])/g,((e,t)=>t.toUpperCase()))]=r}n.fontFamily&&(0,i.setFontFamily)({typeface:n.fontFamily,weight:n.fontWeight||"normal",posture:n.fontStyle||"normal",size:o.fontSize||0},t,t[r.$globalData].fontFinder,n);if(a&&n.verticalAlign&&"0px"!==n.verticalAlign&&n.fontSize){const e=.583,t=.333,a=(0,s.getMeasurement)(n.fontSize);n.fontSize=(0,i.measureToString)(a*e);n.verticalAlign=(0,i.measureToString)(Math.sign((0,s.getMeasurement)(n.verticalAlign))*a*t)}a&&n.fontSize&&(n.fontSize=`calc(${n.fontSize} * var(--scale-factor))`);(0,i.fixTextIndent)(n);return n}const p=new Set(["body","html"]);class XhtmlObject extends o.XmlObject{constructor(e,t){super(c,t);this[l]=!1;this.style=e.style||""}[r.$clean](e){super[r.$clean](e);this.style=function checkStyle(e){return e.style?e.style.trim().split(/\s*;\s*/).filter((e=>!!e)).map((e=>e.split(/\s*:\s*/,2))).filter((([t,a])=>{"font-family"===t&&e[r.$globalData].usedTypefaces.add(a);return h.has(t)})).map((e=>e.join(":"))).join(";"):""}(this)}[r.$acceptWhitespace](){return!p.has(this[r.$nodeName])}[r.$onText](e,t=!1){if(t)this[l]=!0;else{e=e.replaceAll(f,"");this.style.includes("xfa-spacerun:yes")||(e=e.replaceAll(d," "))}e&&(this[r.$content]+=e)}[r.$pushGlyphs](e,t=!0){const a=Object.create(null),n={top:NaN,bottom:NaN,left:NaN,right:NaN};let i=null;for(const[e,t]of this.style.split(";").map((e=>e.split(":",2))))switch(e){case"font-family":a.typeface=(0,s.stripQuotes)(t);break;case"font-size":a.size=(0,s.getMeasurement)(t);break;case"font-weight":a.weight=t;break;case"font-style":a.posture=t;break;case"letter-spacing":a.letterSpacing=(0,s.getMeasurement)(t);break;case"margin":const e=t.split(/ \t/).map((e=>(0,s.getMeasurement)(e)));switch(e.length){case 1:n.top=n.bottom=n.left=n.right=e[0];break;case 2:n.top=n.bottom=e[0];n.left=n.right=e[1];break;case 3:n.top=e[0];n.bottom=e[2];n.left=n.right=e[1];break;case 4:n.top=e[0];n.left=e[1];n.bottom=e[2];n.right=e[3]}break;case"margin-top":n.top=(0,s.getMeasurement)(t);break;case"margin-bottom":n.bottom=(0,s.getMeasurement)(t);break;case"margin-left":n.left=(0,s.getMeasurement)(t);break;case"margin-right":n.right=(0,s.getMeasurement)(t);break;case"line-height":i=(0,s.getMeasurement)(t)}e.pushData(a,n,i);if(this[r.$content])e.addString(this[r.$content]);else for(const t of this[r.$getChildren]())"#text"!==t[r.$nodeName]?t[r.$pushGlyphs](e):e.addString(t[r.$content]);t&&e.popFont()}[r.$toHTML](e){const t=[];this[r.$extra]={children:t};this[r.$childrenToHTML]({});if(0===t.length&&!this[r.$content])return s.HTMLResult.EMPTY;let a;a=this[l]?this[r.$content]?this[r.$content].replaceAll(g,"\n"):void 0:this[r.$content]||void 0;return s.HTMLResult.success({name:this[r.$nodeName],attributes:{href:this.href,style:mapStyle(this.style,this,this[l])},children:t,value:a})}}class A extends XhtmlObject{constructor(e){super(e,"a");this.href=(0,i.fixURL)(e.href)||""}}class B extends XhtmlObject{constructor(e){super(e,"b")}[r.$pushGlyphs](e){e.pushFont({weight:"bold"});super[r.$pushGlyphs](e);e.popFont()}}class Body extends XhtmlObject{constructor(e){super(e,"body")}[r.$toHTML](e){const t=super[r.$toHTML](e),{html:a}=t;if(!a)return s.HTMLResult.EMPTY;a.name="div";a.attributes.class=["xfaRich"];return t}}class Br extends XhtmlObject{constructor(e){super(e,"br")}[r.$text](){return"\n"}[r.$pushGlyphs](e){e.addString("\n")}[r.$toHTML](e){return s.HTMLResult.success({name:"br"})}}class Html extends XhtmlObject{constructor(e){super(e,"html")}[r.$toHTML](e){const t=[];this[r.$extra]={children:t};this[r.$childrenToHTML]({});if(0===t.length)return s.HTMLResult.success({name:"div",attributes:{class:["xfaRich"],style:{}},value:this[r.$content]||""});if(1===t.length){const e=t[0];if(e.attributes?.class.includes("xfaRich"))return s.HTMLResult.success(e)}return s.HTMLResult.success({name:"div",attributes:{class:["xfaRich"],style:{}},children:t})}}class I extends XhtmlObject{constructor(e){super(e,"i")}[r.$pushGlyphs](e){e.pushFont({posture:"italic"});super[r.$pushGlyphs](e);e.popFont()}}class Li extends XhtmlObject{constructor(e){super(e,"li")}}class Ol extends XhtmlObject{constructor(e){super(e,"ol")}}class P extends XhtmlObject{constructor(e){super(e,"p")}[r.$pushGlyphs](e){super[r.$pushGlyphs](e,!1);e.addString("\n");e.addPara();e.popFont()}[r.$text](){return this[r.$getParent]()[r.$getChildren]().at(-1)===this?super[r.$text]():super[r.$text]()+"\n"}}class Span extends XhtmlObject{constructor(e){super(e,"span")}}class Sub extends XhtmlObject{constructor(e){super(e,"sub")}}class Sup extends XhtmlObject{constructor(e){super(e,"sup")}}class Ul extends XhtmlObject{constructor(e){super(e,"ul")}}class XhtmlNamespace{static[n.$buildXFAObject](e,t){if(XhtmlNamespace.hasOwnProperty(e))return XhtmlNamespace[e](t)}static a(e){return new A(e)}static b(e){return new B(e)}static body(e){return new Body(e)}static br(e){return new Br(e)}static html(e){return new Html(e)}static i(e){return new I(e)}static li(e){return new Li(e)}static ol(e){return new Ol(e)}static p(e){return new P(e)}static span(e){return new Span(e)}static sub(e){return new Sub(e)}static sup(e){return new Sup(e)}static ul(e){return new Ul(e)}}t.XhtmlNamespace=XhtmlNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.UnknownNamespace=void 0;var r=a(81),n=a(87);class UnknownNamespace{constructor(e){this.namespaceId=e}[r.$buildXFAObject](e,t){return new n.XmlObject(this.namespaceId,e,t)}}t.UnknownNamespace=UnknownNamespace},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.DatasetReader=void 0;var r=a(2),n=a(3),i=a(71);function decodeString(e){try{return(0,r.stringToUTF8String)(e)}catch(t){(0,r.warn)(`UTF-8 decoding failed: "${t}".`);return e}}class DatasetXMLParser extends i.SimpleXMLParser{constructor(e){super(e);this.node=null}onEndElement(e){const t=super.onEndElement(e);if(t&&"xfa:datasets"===e){this.node=t;throw new Error("Aborting DatasetXMLParser.")}}}t.DatasetReader=class DatasetReader{constructor(e){if(e.datasets)this.node=new i.SimpleXMLParser({hasAttributes:!0}).parseFromString(e.datasets).documentElement;else{const t=new DatasetXMLParser({hasAttributes:!0});try{t.parseFromString(e["xdp:xdp"])}catch{}this.node=t.node}}getValue(e){if(!this.node||!e)return"";const t=this.node.searchNode((0,n.parseXFAPath)(e),0);if(!t)return"";const a=t.firstChild;return"value"===a?.nodeName?t.children.map((e=>decodeString(e.textContent))):decodeString(t.textContent)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XRef=void 0;var r=a(2),n=a(4),i=a(16),s=a(3),o=a(5),c=a(74);t.XRef=class XRef{#B=null;constructor(e,t){this.stream=e;this.pdfManager=t;this.entries=[];this._xrefStms=new Set;this._cacheMap=new Map;this._pendingRefs=new n.RefSet;this._newPersistentRefNum=null;this._newTemporaryRefNum=null}getNewPersistentRef(e){null===this._newPersistentRefNum&&(this._newPersistentRefNum=this.entries.length||1);const t=this._newPersistentRefNum++;this._cacheMap.set(t,e);return n.Ref.get(t,0)}getNewTemporaryRef(){null===this._newTemporaryRefNum&&(this._newTemporaryRefNum=this.entries.length||1);return n.Ref.get(this._newTemporaryRefNum++,0)}resetNewTemporaryRef(){this._newTemporaryRefNum=null}setStartXRef(e){this.startXRefQueue=[e]}parse(e=!1){let t,a,i;if(e){(0,r.warn)("Indexing all PDF objects");t=this.indexObjects()}else t=this.readXRef();t.assignXref(this);this.trailer=t;try{a=t.get("Encrypt")}catch(e){if(e instanceof s.MissingDataException)throw e;(0,r.warn)(`XRef.parse - Invalid "Encrypt" reference: "${e}".`)}if(a instanceof n.Dict){const e=t.get("ID"),r=e?.length?e[0]:"";a.suppressEncryption=!0;this.encrypt=new c.CipherTransformFactory(a,r,this.pdfManager.password)}try{i=t.get("Root")}catch(e){if(e instanceof s.MissingDataException)throw e;(0,r.warn)(`XRef.parse - Invalid "Root" reference: "${e}".`)}if(i instanceof n.Dict)try{if(i.get("Pages")instanceof n.Dict){this.root=i;return}}catch(e){if(e instanceof s.MissingDataException)throw e;(0,r.warn)(`XRef.parse - Invalid "Pages" reference: "${e}".`)}if(!e)throw new s.XRefParseException;throw new r.InvalidPDFException("Invalid Root reference.")}processXRefTable(e){"tableState"in this||(this.tableState={entryNum:0,streamPos:e.lexer.stream.pos,parserBuf1:e.buf1,parserBuf2:e.buf2});const t=this.readXRefTable(e);if(!(0,n.isCmd)(t,"trailer"))throw new r.FormatError("Invalid XRef table: could not find trailer dictionary");let a=e.getObj();a instanceof n.Dict||!a.dict||(a=a.dict);if(!(a instanceof n.Dict))throw new r.FormatError("Invalid XRef table: could not parse trailer dictionary");delete this.tableState;return a}readXRefTable(e){const t=e.lexer.stream,a=this.tableState;t.pos=a.streamPos;e.buf1=a.parserBuf1;e.buf2=a.parserBuf2;let i;for(;;){if(!("firstEntryNum"in a)||!("entryCount"in a)){if((0,n.isCmd)(i=e.getObj(),"trailer"))break;a.firstEntryNum=i;a.entryCount=e.getObj()}let s=a.firstEntryNum;const o=a.entryCount;if(!Number.isInteger(s)||!Number.isInteger(o))throw new r.FormatError("Invalid XRef table: wrong types in subsection header");for(let i=a.entryNum;i0;){const[o,c]=s;if(!Number.isInteger(o)||!Number.isInteger(c))throw new r.FormatError(`Invalid XRef range fields: ${o}, ${c}`);if(!Number.isInteger(a)||!Number.isInteger(n)||!Number.isInteger(i))throw new r.FormatError(`Invalid XRef entry fields length: ${o}, ${c}`);for(let s=t.entryNum;s=e.length);){a+=String.fromCharCode(r);r=e[t]}return a}function skipUntil(e,t,a){const r=a.length,n=e.length;let i=0;for(;t=r)break;t++;i++}return i}const e=/\b(endobj|\d+\s+\d+\s+obj|xref|trailer\s*<<)\b/g,t=/\b(startxref|\d+\s+\d+\s+obj)\b/g,a=/^(\d+)\s+(\d+)\s+obj\b/,o=new Uint8Array([116,114,97,105,108,101,114]),c=new Uint8Array([115,116,97,114,116,120,114,101,102]),l=new Uint8Array([47,88,82,101,102]);this.entries.length=0;this._cacheMap.clear();const h=this.stream;h.pos=0;const u=h.getBytes(),d=(0,r.bytesToString)(u),f=u.length;let g=h.start;const p=[],m=[];for(;g=f)break;n=u[g]}while(10!==n&&13!==n);continue}const b=readToken(u,g);let y;if(b.startsWith("xref")&&(4===b.length||/\s/.test(b[4]))){g+=skipUntil(u,g,o);p.push(g);g+=skipUntil(u,g,c)}else if(y=a.exec(b)){const t=0|y[1],a=0|y[2],n=g+b.length;let o,c=!1;if(this.entries[t]){if(this.entries[t].gen===a)try{new i.Parser({lexer:new i.Lexer(h.makeSubStream(n))}).getObj();c=!0}catch(e){e instanceof s.ParserEOFException?(0,r.warn)(`indexObjects -- checking object (${b}): "${e}".`):c=!0}}else c=!0;c&&(this.entries[t]={offset:g-h.start,gen:a,uncompressed:!0});e.lastIndex=n;const p=e.exec(d);if(p){o=e.lastIndex+1-g;if("endobj"!==p[1]){(0,r.warn)(`indexObjects: Found "${p[1]}" inside of another "obj", caused by missing "endobj" -- trying to recover.`);o-=p[1].length+1}}else o=f-g;const w=u.subarray(g,g+o),S=skipUntil(w,0,l);if(S0?Math.max(...this._xrefStms):null)}getEntry(e){const t=this.entries[e];return t&&!t.free&&t.offset?t:null}fetchIfRef(e,t=!1){return e instanceof n.Ref?this.fetch(e,t):e}fetch(e,t=!1){if(!(e instanceof n.Ref))throw new Error("ref object is not a reference");const a=e.num,i=this._cacheMap.get(a);if(void 0!==i){i instanceof n.Dict&&!i.objId&&(i.objId=e.toString());return i}let s=this.getEntry(a);if(null===s){this._cacheMap.set(a,s);return s}if(this._pendingRefs.has(e)){this._pendingRefs.remove(e);(0,r.warn)(`Ignoring circular reference: ${e}.`);return n.CIRCULAR_REF}this._pendingRefs.put(e);try{s=s.uncompressed?this.fetchUncompressed(e,s,t):this.fetchCompressed(e,s,t);this._pendingRefs.remove(e)}catch(t){this._pendingRefs.remove(e);throw t}s instanceof n.Dict?s.objId=e.toString():s instanceof o.BaseStream&&(s.dict.objId=e.toString());return s}fetchUncompressed(e,t,a=!1){const c=e.gen;let l=e.num;if(t.gen!==c){const i=`Inconsistent generation in XRef: ${e}`;if(this._generationFallback&&t.gen{Object.defineProperty(t,"__esModule",{value:!0});t.MessageHandler=void 0;var r=a(2);const n=1,i=2,s=1,o=2,c=3,l=4,h=5,u=6,d=7,f=8;function wrapReason(e){e instanceof Error||"object"==typeof e&&null!==e||(0,r.unreachable)('wrapReason: Expected "reason" to be a (possibly cloned) Error.');switch(e.name){case"AbortException":return new r.AbortException(e.message);case"MissingPDFException":return new r.MissingPDFException(e.message);case"PasswordException":return new r.PasswordException(e.message,e.code);case"UnexpectedResponseException":return new r.UnexpectedResponseException(e.message,e.status);case"UnknownErrorException":return new r.UnknownErrorException(e.message,e.details);default:return new r.UnknownErrorException(e.message,e.toString())}}t.MessageHandler=class MessageHandler{constructor(e,t,a){this.sourceName=e;this.targetName=t;this.comObj=a;this.callbackId=1;this.streamId=1;this.streamSinks=Object.create(null);this.streamControllers=Object.create(null);this.callbackCapabilities=Object.create(null);this.actionHandler=Object.create(null);this._onComObjOnMessage=e=>{const t=e.data;if(t.targetName!==this.sourceName)return;if(t.stream){this.#E(t);return}if(t.callback){const e=t.callbackId,a=this.callbackCapabilities[e];if(!a)throw new Error(`Cannot resolve callback ${e}`);delete this.callbackCapabilities[e];if(t.callback===n)a.resolve(t.data);else{if(t.callback!==i)throw new Error("Unexpected callback case");a.reject(wrapReason(t.reason))}return}const r=this.actionHandler[t.action];if(!r)throw new Error(`Unknown action from worker: ${t.action}`);if(t.callbackId){const e=this.sourceName,s=t.sourceName;new Promise((function(e){e(r(t.data))})).then((function(r){a.postMessage({sourceName:e,targetName:s,callback:n,callbackId:t.callbackId,data:r})}),(function(r){a.postMessage({sourceName:e,targetName:s,callback:i,callbackId:t.callbackId,reason:wrapReason(r)})}))}else t.streamId?this.#N(t):r(t.data)};a.addEventListener("message",this._onComObjOnMessage)}on(e,t){const a=this.actionHandler;if(a[e])throw new Error(`There is already an actionName called "${e}"`);a[e]=t}send(e,t,a){this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:e,data:t},a)}sendWithPromise(e,t,a){const n=this.callbackId++,i=new r.PromiseCapability;this.callbackCapabilities[n]=i;try{this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:e,callbackId:n,data:t},a)}catch(e){i.reject(e)}return i.promise}sendWithStream(e,t,a,n){const i=this.streamId++,o=this.sourceName,c=this.targetName,l=this.comObj;return new ReadableStream({start:a=>{const s=new r.PromiseCapability;this.streamControllers[i]={controller:a,startCall:s,pullCall:null,cancelCall:null,isClosed:!1};l.postMessage({sourceName:o,targetName:c,action:e,streamId:i,data:t,desiredSize:a.desiredSize},n);return s.promise},pull:e=>{const t=new r.PromiseCapability;this.streamControllers[i].pullCall=t;l.postMessage({sourceName:o,targetName:c,stream:u,streamId:i,desiredSize:e.desiredSize});return t.promise},cancel:e=>{(0,r.assert)(e instanceof Error,"cancel must have a valid reason");const t=new r.PromiseCapability;this.streamControllers[i].cancelCall=t;this.streamControllers[i].isClosed=!0;l.postMessage({sourceName:o,targetName:c,stream:s,streamId:i,reason:wrapReason(e)});return t.promise}},a)}#N(e){const t=e.streamId,a=this.sourceName,n=e.sourceName,i=this.comObj,s=this,o=this.actionHandler[e.action],u={enqueue(e,s=1,o){if(this.isCancelled)return;const c=this.desiredSize;this.desiredSize-=s;if(c>0&&this.desiredSize<=0){this.sinkCapability=new r.PromiseCapability;this.ready=this.sinkCapability.promise}i.postMessage({sourceName:a,targetName:n,stream:l,streamId:t,chunk:e},o)},close(){if(!this.isCancelled){this.isCancelled=!0;i.postMessage({sourceName:a,targetName:n,stream:c,streamId:t});delete s.streamSinks[t]}},error(e){(0,r.assert)(e instanceof Error,"error must have a valid reason");if(!this.isCancelled){this.isCancelled=!0;i.postMessage({sourceName:a,targetName:n,stream:h,streamId:t,reason:wrapReason(e)})}},sinkCapability:new r.PromiseCapability,onPull:null,onCancel:null,isCancelled:!1,desiredSize:e.desiredSize,ready:null};u.sinkCapability.resolve();u.ready=u.sinkCapability.promise;this.streamSinks[t]=u;new Promise((function(t){t(o(e.data,u))})).then((function(){i.postMessage({sourceName:a,targetName:n,stream:f,streamId:t,success:!0})}),(function(e){i.postMessage({sourceName:a,targetName:n,stream:f,streamId:t,reason:wrapReason(e)})}))}#E(e){const t=e.streamId,a=this.sourceName,n=e.sourceName,i=this.comObj,g=this.streamControllers[t],p=this.streamSinks[t];switch(e.stream){case f:e.success?g.startCall.resolve():g.startCall.reject(wrapReason(e.reason));break;case d:e.success?g.pullCall.resolve():g.pullCall.reject(wrapReason(e.reason));break;case u:if(!p){i.postMessage({sourceName:a,targetName:n,stream:d,streamId:t,success:!0});break}p.desiredSize<=0&&e.desiredSize>0&&p.sinkCapability.resolve();p.desiredSize=e.desiredSize;new Promise((function(e){e(p.onPull?.())})).then((function(){i.postMessage({sourceName:a,targetName:n,stream:d,streamId:t,success:!0})}),(function(e){i.postMessage({sourceName:a,targetName:n,stream:d,streamId:t,reason:wrapReason(e)})}));break;case l:(0,r.assert)(g,"enqueue should have stream controller");if(g.isClosed)break;g.controller.enqueue(e.chunk);break;case c:(0,r.assert)(g,"close should have stream controller");if(g.isClosed)break;g.isClosed=!0;g.controller.close();this.#R(g,t);break;case h:(0,r.assert)(g,"error should have stream controller");g.controller.error(wrapReason(e.reason));this.#R(g,t);break;case o:e.success?g.cancelCall.resolve():g.cancelCall.reject(wrapReason(e.reason));this.#R(g,t);break;case s:if(!p)break;new Promise((function(t){t(p.onCancel?.(wrapReason(e.reason)))})).then((function(){i.postMessage({sourceName:a,targetName:n,stream:o,streamId:t,success:!0})}),(function(e){i.postMessage({sourceName:a,targetName:n,stream:o,streamId:t,reason:wrapReason(e)})}));p.sinkCapability.reject(wrapReason(e.reason));p.isCancelled=!0;delete this.streamSinks[t];break;default:throw new Error("Unexpected stream case")}}async#R(e,t){await Promise.allSettled([e.startCall?.promise,e.pullCall?.promise,e.cancelCall?.promise]);delete this.streamControllers[t]}destroy(){this.comObj.removeEventListener("message",this._onComObjOnMessage)}}},(e,t,a)=>{Object.defineProperty(t,"__esModule",{value:!0});t.PDFWorkerStream=void 0;var r=a(2);t.PDFWorkerStream=class PDFWorkerStream{constructor(e){this._msgHandler=e;this._contentLength=null;this._fullRequestReader=null;this._rangeRequestReaders=[]}getFullReader(){(0,r.assert)(!this._fullRequestReader,"PDFWorkerStream.getFullReader can only be called once.");this._fullRequestReader=new PDFWorkerStreamReader(this._msgHandler);return this._fullRequestReader}getRangeReader(e,t){const a=new PDFWorkerStreamRangeReader(e,t,this._msgHandler);this._rangeRequestReaders.push(a);return a}cancelAllRequests(e){this._fullRequestReader?.cancel(e);for(const t of this._rangeRequestReaders.slice(0))t.cancel(e)}};class PDFWorkerStreamReader{constructor(e){this._msgHandler=e;this.onProgress=null;this._contentLength=null;this._isRangeSupported=!1;this._isStreamingSupported=!1;const t=this._msgHandler.sendWithStream("GetReader");this._reader=t.getReader();this._headersReady=this._msgHandler.sendWithPromise("ReaderHeadersReady").then((e=>{this._isStreamingSupported=e.isStreamingSupported;this._isRangeSupported=e.isRangeSupported;this._contentLength=e.contentLength}))}get headersReady(){return this._headersReady}get contentLength(){return this._contentLength}get isStreamingSupported(){return this._isStreamingSupported}get isRangeSupported(){return this._isRangeSupported}async read(){const{value:e,done:t}=await this._reader.read();return t?{value:void 0,done:!0}:{value:e.buffer,done:!1}}cancel(e){this._reader.cancel(e)}}class PDFWorkerStreamRangeReader{constructor(e,t,a){this._msgHandler=a;this.onProgress=null;const r=this._msgHandler.sendWithStream("GetRangeReader",{begin:e,end:t});this._reader=r.getReader()}get isStreamingSupported(){return!1}async read(){const{value:e,done:t}=await this._reader.read();return t?{value:void 0,done:!0}:{value:e.buffer,done:!1}}cancel(e){this._reader.cancel(e)}}}],t={};function __w_pdfjs_require__(a){var r=t[a];if(void 0!==r)return r.exports;var n=t[a]={exports:{}};e[a](n,n.exports,__w_pdfjs_require__);return n.exports}var a={};(()=>{var e=a;Object.defineProperty(e,"__esModule",{value:!0});Object.defineProperty(e,"WorkerMessageHandler",{enumerable:!0,get:function(){return t.WorkerMessageHandler}});var t=__w_pdfjs_require__(1)})();return a})())); \ No newline at end of file diff --git a/apps/remix/server/main.js b/apps/remix/server/main.js index c6b43179c..b6046e469 100644 --- a/apps/remix/server/main.js +++ b/apps/remix/server/main.js @@ -24,12 +24,6 @@ server.use( // Cache with revalidation for rest of static files. c.header('Cache-Control', 'public, max-age=0, stale-while-revalidate=86400'); } - - // Custom cache for static file pdf.worker.min.js - if (path === './build/client/pdf.worker.min.js') { - c.header('Cache-Control', 'public, max-age=3600, stale-while-revalidate=86400'); - c.header('ETag', 'pdf.worker.min.js'); - } }, }), ); diff --git a/packages/auth/server/lib/session/session-cookies.ts b/packages/auth/server/lib/session/session-cookies.ts index 6710b8ce7..aaca8ca7f 100644 --- a/packages/auth/server/lib/session/session-cookies.ts +++ b/packages/auth/server/lib/session/session-cookies.ts @@ -31,7 +31,7 @@ const getAuthSecret = () => { export const sessionCookieOptions = { httpOnly: true, path: '/', - sameSite: useSecureCookies ? 'none' : 'lax', // Todo: (RR7) This feels wrong? + sameSite: useSecureCookies ? 'none' : 'lax', secure: useSecureCookies, domain: getCookieDomain(), expires: new Date(Date.now() + AUTH_SESSION_LIFETIME), diff --git a/packages/lib/translations/de/web.po b/packages/lib/translations/de/web.po index 577b22dd6..e266aaa0d 100644 --- a/packages/lib/translations/de/web.po +++ b/packages/lib/translations/de/web.po @@ -489,10 +489,6 @@ msgstr "12 Monate" msgid "3 months" msgstr "3 Monate" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Seite nicht gefunden" @@ -656,7 +652,7 @@ msgstr "Zustimmung und Einverständnis" msgid "Accepted team invitation" msgstr "Team-Einladung akzeptiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Kontowauthentifizierung" @@ -673,7 +669,7 @@ msgstr "Konto deaktiviert" msgid "Account enabled" msgstr "Konto aktiviert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Kontowiederauthentifizierung" @@ -1002,7 +998,7 @@ msgstr "Ein Fehler ist aufgetreten, während der Benutzer aktiviert wurde." msgid "An error occurred while loading team members. Please try again later." msgstr "Ein Fehler ist aufgetreten, während die Teammitglieder geladen wurden. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "Ein Fehler ist beim Laden des Dokuments aufgetreten." @@ -1097,8 +1093,7 @@ msgstr "" #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1246,7 +1241,7 @@ msgstr "Versuche, das Dokument erneut zu versiegeln, nützlich nach einer Codeä msgid "Audit Log" msgstr "Audit-Protokoll" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Authentifizierungsstufe" @@ -1259,7 +1254,7 @@ msgstr "Authentifizierung erforderlich" msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Avatar aktualisiert" @@ -1682,7 +1677,7 @@ msgstr "Kontaktinformationen" msgid "Content" msgstr "Inhalt" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1889,7 +1884,7 @@ msgstr "Erstellen Sie Ihr Konto und beginnen Sie mit dem modernen Dokumentensign msgid "Created" msgstr "Erstellt" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Erstellt am" @@ -2050,7 +2045,7 @@ msgstr "Webhook löschen" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Löschen Sie Ihr Konto und alle Inhalte, einschließlich abgeschlossener Dokumente. Diese Aktion ist irreversibel und führt zur Kündigung Ihres Abonnements, seien Sie also vorsichtig." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Gelöscht" @@ -2059,11 +2054,11 @@ msgstr "Gelöscht" msgid "Deleting account..." msgstr "Konto wird gelöscht..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Einzelheiten" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Gerät" @@ -2292,7 +2287,7 @@ msgstr "Externe ID des Dokuments aktualisiert" msgid "Document history" msgstr "Dokumentverlauf" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "Dokument-ID" @@ -2403,7 +2398,7 @@ msgstr "Sichtbarkeit des Dokuments aktualisiert" msgid "Document will be permanently deleted" msgstr "Dokument wird dauerhaft gelöscht" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2528,15 +2523,15 @@ msgstr "Elektronische Zustellung von Dokumenten" msgid "Electronic Signature Disclosure" msgstr "Offenlegung der elektronischen Unterschrift" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2565,7 +2560,7 @@ msgstr "E-Mail-Adresse" msgid "Email Address" msgstr "E-Mail-Adresse" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "" @@ -2573,7 +2568,7 @@ msgstr "" msgid "Email cannot already exist in the template" msgstr "E-Mail darf nicht bereits in der Vorlage vorhanden sein" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "E-Mail bestätigt!" @@ -2659,7 +2654,7 @@ msgstr "Aktiviert" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Das Aktivieren des Kontos führt dazu, dass der Benutzer das Konto wieder nutzen kann, sowie alle damit verbundenen Funktionen wie Webhooks, Teams und API-Schlüssel beispielsweise." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Beigefügte Dokument" @@ -2733,7 +2728,7 @@ msgstr "Geben Sie hier Ihren Text ein" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Fehler" @@ -2874,7 +2869,7 @@ msgstr "Freie Unterschrift" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2896,7 +2891,7 @@ msgstr "Links generieren" msgid "Global recipient action authentication" msgstr "Globale Empfängerauthentifizierung" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2904,9 +2899,9 @@ msgid "Go Back" msgstr "Zurück" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Zurück nach Hause" @@ -2919,7 +2914,7 @@ msgstr "Zurück nach Hause" msgid "Go to owner" msgstr "Zum Eigentümer gehen" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Gehen Sie zu Ihren <0>öffentlichen Profileinstellungen, um Dokumente hinzuzufügen." @@ -2988,7 +2983,7 @@ msgstr "Hallo, {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Hallo, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3018,7 +3013,7 @@ msgstr "" msgid "I am required to receive a copy of this document" msgstr "Ich bin verpflichtet, eine Kopie dieses Dokuments zu erhalten" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "Ich bin der Besitzer dieses Dokuments" @@ -3140,7 +3135,7 @@ msgstr "Eingeladen am" msgid "Invoice" msgstr "Rechnung" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "IP-Adresse" @@ -3150,11 +3145,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "Es ist entscheidend, dass Sie Ihre Kontaktinformationen, insbesondere Ihre E-Mail-Adresse, aktuell halten. Bitte informieren Sie uns sofort über Änderungen, damit Sie weiterhin alle notwendigen Mitteilungen erhalten." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Es sieht so aus, als ob {0} noch keine Dokumente zu ihrem Profil hinzugefügt hat." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Es scheint, dass das bereitgestellte Token abgelaufen ist. Wir haben Ihnen gerade ein weiteres Token gesendet, bitte überprüfen Sie Ihre E-Mails und versuchen Sie es erneut." @@ -3207,7 +3202,7 @@ msgstr "Zuletzt geändert" msgid "Last updated" msgstr "Zuletzt aktualisiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -3249,7 +3244,7 @@ msgstr "Möchten Sie Ihr eigenes öffentliches Profil mit Vereinbarungen haben?" msgid "Link expires in 1 hour." msgstr "Link läuft in 1 Stunde ab." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Vorlage verlinken" @@ -3268,7 +3263,7 @@ msgid "Load older activity" msgstr "Ältere Aktivitäten laden" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Lade Dokument..." @@ -3500,6 +3495,10 @@ msgstr "Niemals" msgid "Never expire" msgstr "Nie ablaufen" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "Neuer Teamowner" @@ -3692,7 +3691,6 @@ msgstr "Nur Manager und darüber können auf das Dokument zugreifen und es anzei msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Nur Abonnenten können einen Benutzernamen mit weniger als 6 Zeichen haben" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3716,7 +3714,7 @@ msgstr "Oder fahren Sie fort mit" msgid "Otherwise, the document will be created as a draft." msgstr "Andernfalls wird das Dokument als Entwurf erstellt." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3731,7 +3729,7 @@ msgid "Page {0} of {1}" msgstr "Seite {0} von {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Seite {0} von {numPages}" @@ -3763,7 +3761,7 @@ msgstr "Die Passkey wurde aktualisiert" msgid "Passkey name" msgstr "Passkey-Name" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Passwortwiederauthentifizierung" @@ -3784,7 +3782,6 @@ msgstr "Passkeys werden von diesem Browser nicht unterstützt" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "Passwort" @@ -4001,8 +3998,8 @@ msgstr "Bitte versuchen Sie es erneut und stellen Sie sicher, dass Sie die korre msgid "Please try again later." msgstr "Bitte versuchen Sie es später noch einmal." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Bitte versuchen Sie es erneut oder kontaktieren Sie unseren Support." @@ -4050,11 +4047,11 @@ msgstr "Private Vorlagen können nur von Ihnen bearbeitet und angezeigt werden." msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "Profil ist derzeit <0>versteckt." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "Profil ist derzeit <0>sichtbar." @@ -4116,7 +4113,7 @@ msgstr "Lesen Sie die vollständige <0>Offenlegung der Unterschrift." msgid "Ready" msgstr "Bereit" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Grund" @@ -4179,7 +4176,7 @@ msgstr "E-Mail zur Unterzeichnungsanfrage des Empfängers" msgid "Recipient updated" msgstr "Empfänger aktualisiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4577,7 +4574,7 @@ msgstr "Zurücksetzungs-E-Mail wird gesendet..." msgid "Sending..." msgstr "Senden..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Gesendet" @@ -4619,7 +4616,7 @@ msgstr "Link teilen" msgid "Share your signing experience!" msgstr "Teilen Sie Ihre Unterzeichnungserfahrung!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Anzeigen" @@ -4640,7 +4637,7 @@ msgstr "Vorlagen in Ihrem öffentlichen Profil anzeigen, damit Ihre Zielgruppe u msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Vorlagen in Ihrem Team-Öffentliches Profil anzeigen, damit Ihre Zielgruppe unterschreiben und schnell loslegen kann" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4717,13 +4714,13 @@ msgstr "Registrieren mit Google" msgid "Sign Up with OIDC" msgstr "Registrieren mit OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4733,7 +4730,7 @@ msgstr "Registrieren mit OIDC" msgid "Signature" msgstr "Unterschrift" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "Signatur-ID" @@ -4752,7 +4749,7 @@ msgstr "Gesammelte Unterschriften" msgid "Signatures will appear once the document has been completed" msgstr "Unterschriften erscheinen, sobald das Dokument abgeschlossen ist" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4763,7 +4760,7 @@ msgstr "Unterzeichnet" msgid "Signer" msgstr "Unterzeichner" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Signer-Ereignisse" @@ -4779,11 +4776,11 @@ msgstr "Unterzeichner müssen eindeutige E-Mails haben" msgid "Signing" msgstr "Unterzeichnung" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Unterzeichnungszertifikat" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Unterzeichnungszertifikat bereitgestellt von" @@ -4825,7 +4822,7 @@ msgid "Signups are disabled." msgstr "Registrierungen sind deaktiviert." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Seit {0}" @@ -4842,12 +4839,12 @@ msgstr "Website Einstellungen" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Einige Unterzeichner haben noch kein Unterschriftsfeld zugewiesen bekommen. Bitte weisen Sie jedem Unterzeichner mindestens ein Unterschriftsfeld zu, bevor Sie fortfahren." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4896,8 +4893,8 @@ msgstr "Etwas ist schiefgelaufen beim Versuch, das Eigentum des Teams <0>{0} msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Etwas ist schiefgelaufen beim Versuch, Ihre E-Mail-Adresse für <0>{0} zu bestätigen. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Beim Laden des Dokuments ist ein Fehler aufgetreten." @@ -4947,7 +4944,7 @@ msgstr "Quelle" msgid "Stats" msgstr "Statistiken" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5409,10 +5406,6 @@ msgstr "Der Empfänger muss das Dokument unterschreiben, damit es abgeschlossen msgid "The recipient is required to view the document for it to be completed." msgstr "Der Empfänger muss das Dokument anzeigen, damit es abgeschlossen werden kann." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "" - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Das ausgewählte Teammitglied erhält eine E-Mail, die es akzeptieren muss, bevor das Team übertragen wird" @@ -5681,10 +5674,6 @@ msgstr "Diese URL wird bereits verwendet." msgid "This username has already been taken" msgstr "Dieser Benutzername ist bereits vergeben" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "Dieser Benutzername ist bereits vergeben" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Dies wird an alle Empfänger gesendet, wenn ein ausstehendes Dokument gelöscht wurde." @@ -5710,7 +5699,7 @@ msgstr "Zeit" msgid "Time zone" msgstr "Zeitzone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5777,11 +5766,11 @@ msgstr "Um unseren elektronischen Signaturdienst nutzen zu können, müssen Sie msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Um dieses Dokument anzusehen, müssen Sie in Ihr Konto eingeloggt sein. Bitte melden Sie sich an, um fortzufahren." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Schalten Sie den Schalter um, um Ihr Profil vor der Öffentlichkeit zu verbergen." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Schalten Sie den Schalter um, um Ihr Profil der Öffentlichkeit anzuzeigen." @@ -5886,7 +5875,7 @@ msgstr "Zwei-Faktor-Authentifizierung aktiviert" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Die Zwei-Faktor-Authentifizierung wurde für Ihr Konto deaktiviert. Sie müssen beim Anmelden keinen Code aus Ihrer Authentifizierungs-App mehr eingeben." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Zwei-Faktor-Wiederauthentifizierung" @@ -5994,10 +5983,10 @@ msgstr "Nicht autorisiert" msgid "Uncompleted" msgstr "Unvollendet" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Unbekannt" @@ -6028,7 +6017,7 @@ msgstr "Passkey aktualisieren" msgid "Update password" msgstr "Passwort aktualisieren" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Profil aktualisieren" @@ -6071,7 +6060,7 @@ msgstr "Webhook aktualisieren" msgid "Updating password..." msgstr "Passwort wird aktualisiert..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Profil wird aktualisiert..." @@ -6232,7 +6221,7 @@ msgstr "Überprüfen Sie Ihre E-Mail, um Dokumente hochzuladen." msgid "Verify your team email address" msgstr "Überprüfen Sie Ihre Team-E-Mail-Adresse" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Versionsverlauf" @@ -6315,7 +6304,7 @@ msgstr "Wiederherstellungscodes ansehen" msgid "View teams" msgstr "Teams ansehen" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6453,10 +6442,6 @@ msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht h msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, den Zugriff zu widerrufen. Bitte versuchen Sie es später oder kontaktieren Sie den Support." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihre Daten zu speichern. Bitte versuchen Sie es später erneut." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6496,7 +6481,7 @@ msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht h msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, die Team-E-Mail zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Wir haben einen unbekannten Fehler festgestellt, während wir versuchten, Ihr Profil zu aktualisieren. Bitte versuchen Sie es später noch einmal." @@ -6538,7 +6523,7 @@ msgstr "Wir konnten die Zwei-Faktor-Authentifizierung für Ihr Konto nicht deakt msgid "We were unable to log you out at this time." msgstr "Wir konnten Sie zurzeit nicht abmelden." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "Wir konnten Ihr öffentliches Profil nicht auf öffentlich setzen. Bitte versuchen Sie es erneut." @@ -6565,11 +6550,11 @@ msgstr "Wir konnten Ihre Dokumentpräferenzen zu diesem Zeitpunkt nicht aktualis msgid "We were unable to verify your details. Please try again or contact support" msgstr "Wir konnten Ihre Angaben nicht verifizieren. Bitte versuchen Sie es erneut oder kontaktieren Sie den Support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Wir konnten Ihre E-Mail nicht bestätigen. Wenn Ihre E-Mail noch nicht bestätigt wurde, versuchen Sie es bitte erneut." @@ -6658,7 +6643,7 @@ msgstr "Wenn Sie ein Dokument unterschreiben, können wir die folgenden Felder a msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Wenn Sie unsere Plattform nutzen, um Ihre elektronische Unterschrift auf Dokumente anzubringen, stimmen Sie zu, dies unter dem Gesetz über elektronische Unterschriften im globalen und nationalen Handel (E-Sign-Gesetz) und anderen anwendbaren Gesetzen zu tun. Diese Handlung zeigt Ihre Zustimmung zur Verwendung elektronischer Mittel zum Unterzeichnen von Dokumenten und zum Empfang von Benachrichtigungen an." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Während Sie darauf warten, können Sie Ihr eigenes Documenso-Konto erstellen und sofort mit der Dokumentenunterzeichnung beginnen." @@ -6949,7 +6934,7 @@ msgstr "Sie müssen '{deleteMessage}' eingeben, um fortzufahren" msgid "You must have at least one other team member to transfer ownership." msgstr "Sie müssen mindestens einen anderen Teamkollegen haben, um die Eigentumsübertragung durchzuführen." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "Sie müssen eine Profil-URL festlegen, bevor Sie Ihr öffentliches Profil aktivieren." @@ -6981,7 +6966,7 @@ msgstr "Sie erhalten eine E-Mail-Kopie des unterzeichneten Dokuments, sobald all msgid "Your account has been deleted successfully." msgstr "Ihr Konto wurde erfolgreich gelöscht." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Ihr Avatar wurde erfolgreich aktualisiert." @@ -7049,11 +7034,11 @@ msgstr "Ihre Dokumentpräferenzen wurden aktualisiert" msgid "Your documents" msgstr "Ihre Dokumente" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Ihre E-Mail wurde erfolgreich bestätigt! Sie können jetzt alle Funktionen von Documenso nutzen." @@ -7144,7 +7129,7 @@ msgstr "Ihre Vorlage wird dupliziert." msgid "Your templates has been saved successfully." msgstr "Ihre Vorlagen wurden erfolgreich gespeichert." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "Ihr Token ist abgelaufen!" diff --git a/packages/lib/translations/en/web.po b/packages/lib/translations/en/web.po index 3e32faf03..486938bdf 100644 --- a/packages/lib/translations/en/web.po +++ b/packages/lib/translations/en/web.po @@ -484,10 +484,6 @@ msgstr "12 months" msgid "3 months" msgstr "3 months" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "404 Not found" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Page not found" @@ -651,7 +647,7 @@ msgstr "Acceptance and Consent" msgid "Accepted team invitation" msgstr "Accepted team invitation" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Account Authentication" @@ -668,7 +664,7 @@ msgstr "Account disabled" msgid "Account enabled" msgstr "Account enabled" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Account Re-Authentication" @@ -997,7 +993,7 @@ msgstr "An error occurred while enabling the user." msgid "An error occurred while loading team members. Please try again later." msgstr "An error occurred while loading team members. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "An error occurred while loading the document." @@ -1092,8 +1088,7 @@ msgstr "An unexpected error occurred." #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1241,7 +1236,7 @@ msgstr "Attempts sealing the document again, useful for after a code change has msgid "Audit Log" msgstr "Audit Log" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Authentication Level" @@ -1254,7 +1249,7 @@ msgstr "Authentication required" msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Avatar Updated" @@ -1677,7 +1672,7 @@ msgstr "Contact Information" msgid "Content" msgstr "Content" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1884,7 +1879,7 @@ msgstr "Create your account and start using state-of-the-art document signing. O msgid "Created" msgstr "Created" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Created At" @@ -2045,7 +2040,7 @@ msgstr "Delete Webhook" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Deleted" @@ -2054,11 +2049,11 @@ msgstr "Deleted" msgid "Deleting account..." msgstr "Deleting account..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Details" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Device" @@ -2287,7 +2282,7 @@ msgstr "Document external ID updated" msgid "Document history" msgstr "Document history" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "Document ID" @@ -2398,7 +2393,7 @@ msgstr "Document visibility updated" msgid "Document will be permanently deleted" msgstr "Document will be permanently deleted" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2523,15 +2518,15 @@ msgstr "Electronic Delivery of Documents" msgid "Electronic Signature Disclosure" msgstr "Electronic Signature Disclosure" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2560,7 +2555,7 @@ msgstr "Email address" msgid "Email Address" msgstr "Email Address" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "Email already confirmed" @@ -2568,7 +2563,7 @@ msgstr "Email already confirmed" msgid "Email cannot already exist in the template" msgstr "Email cannot already exist in the template" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "Email Confirmed!" @@ -2654,7 +2649,7 @@ msgstr "Enabled" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Enclosed Document" @@ -2728,7 +2723,7 @@ msgstr "Enter your text here" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Error" @@ -2869,7 +2864,7 @@ msgstr "Free Signature" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2891,7 +2886,7 @@ msgstr "Generate Links" msgid "Global recipient action authentication" msgstr "Global recipient action authentication" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2899,9 +2894,9 @@ msgid "Go Back" msgstr "Go Back" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Go back home" @@ -2914,7 +2909,7 @@ msgstr "Go Back Home" msgid "Go to owner" msgstr "Go to owner" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Go to your <0>public profile settings to add documents." @@ -2983,7 +2978,7 @@ msgstr "Hi {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Hi, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3013,7 +3008,7 @@ msgstr "I am an assistant of this document" msgid "I am required to receive a copy of this document" msgstr "I am required to receive a copy of this document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "I am the owner of this document" @@ -3135,7 +3130,7 @@ msgstr "Invited At" msgid "Invoice" msgstr "Invoice" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "IP Address" @@ -3145,11 +3140,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "It looks like {0} hasn't added any documents to their profile yet." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." @@ -3202,7 +3197,7 @@ msgstr "Last modified" msgid "Last updated" msgstr "Last updated" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Last Updated" @@ -3244,7 +3239,7 @@ msgstr "Like to have your own public profile with agreements?" msgid "Link expires in 1 hour." msgstr "Link expires in 1 hour." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Link template" @@ -3263,7 +3258,7 @@ msgid "Load older activity" msgstr "Load older activity" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Loading document..." @@ -3495,6 +3490,10 @@ msgstr "Never" msgid "Never expire" msgstr "Never expire" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "New Password" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "New team owner" @@ -3687,7 +3686,6 @@ msgstr "Only managers and above can access and view the document" msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Only subscribers can have a username shorter than 6 characters" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3711,7 +3709,7 @@ msgstr "Or continue with" msgid "Otherwise, the document will be created as a draft." msgstr "Otherwise, the document will be created as a draft." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3726,7 +3724,7 @@ msgid "Page {0} of {1}" msgstr "Page {0} of {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Page {0} of {numPages}" @@ -3758,7 +3756,7 @@ msgstr "Passkey has been updated" msgid "Passkey name" msgstr "Passkey name" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Passkey Re-Authentication" @@ -3779,7 +3777,6 @@ msgstr "Passkeys are not supported on this browser" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "Password" @@ -3996,8 +3993,8 @@ msgstr "Please try again and make sure you enter the correct email address." msgid "Please try again later." msgstr "Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Please try again or contact our support." @@ -4045,11 +4042,11 @@ msgstr "Private templates can only be modified and viewed by you." msgid "Profile" msgstr "Profile" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "Profile is currently <0>hidden." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "Profile is currently <0>visible." @@ -4111,7 +4108,7 @@ msgstr "Read the full <0>signature disclosure." msgid "Ready" msgstr "Ready" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Reason" @@ -4174,7 +4171,7 @@ msgstr "Recipient signing request email" msgid "Recipient updated" msgstr "Recipient updated" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4572,7 +4569,7 @@ msgstr "Sending Reset Email..." msgid "Sending..." msgstr "Sending..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Sent" @@ -4614,7 +4611,7 @@ msgstr "Share the Link" msgid "Share your signing experience!" msgstr "Share your signing experience!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Show" @@ -4635,7 +4632,7 @@ msgstr "Show templates in your public profile for your audience to sign and get msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Show templates in your team public profile for your audience to sign and get started quickly" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4712,13 +4709,13 @@ msgstr "Sign Up with Google" msgid "Sign Up with OIDC" msgstr "Sign Up with OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4728,7 +4725,7 @@ msgstr "Sign Up with OIDC" msgid "Signature" msgstr "Signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "Signature ID" @@ -4747,7 +4744,7 @@ msgstr "Signatures Collected" msgid "Signatures will appear once the document has been completed" msgstr "Signatures will appear once the document has been completed" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4758,7 +4755,7 @@ msgstr "Signed" msgid "Signer" msgstr "Signer" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Signer Events" @@ -4774,11 +4771,11 @@ msgstr "Signers must have unique emails" msgid "Signing" msgstr "Signing" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Signing Certificate" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Signing certificate provided by" @@ -4820,7 +4817,7 @@ msgid "Signups are disabled." msgstr "Signups are disabled." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Since {0}" @@ -4837,12 +4834,12 @@ msgstr "Site Settings" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4891,8 +4888,8 @@ msgstr "Something went wrong while attempting to transfer the ownership of team msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Something went wrong while loading the document." @@ -4942,7 +4939,7 @@ msgstr "Source" msgid "Stats" msgstr "Stats" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5404,10 +5401,6 @@ msgstr "The recipient is required to sign the document for it to be completed." msgid "The recipient is required to view the document for it to be completed." msgstr "The recipient is required to view the document for it to be completed." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "The resource you are looking for may have been disabled, deleted or may have never existed." - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "The selected team member will receive an email which they must accept before the team is transferred" @@ -5678,10 +5671,6 @@ msgstr "This URL is already in use." msgid "This username has already been taken" msgstr "This username has already been taken" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "This username is already taken" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "This will be sent to all recipients if a pending document has been deleted." @@ -5707,7 +5696,7 @@ msgstr "Time" msgid "Time zone" msgstr "Time zone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5774,11 +5763,11 @@ msgstr "To use our electronic signature service, you must have access to:" msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "To view this document you need to be signed into your account, please sign in to continue." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Toggle the switch to hide your profile from the public." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Toggle the switch to show your profile to the public." @@ -5883,7 +5872,7 @@ msgstr "Two-factor authentication enabled" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Two-Factor Re-Authentication" @@ -5991,10 +5980,10 @@ msgstr "Unauthorized" msgid "Uncompleted" msgstr "Uncompleted" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Unknown" @@ -6025,7 +6014,7 @@ msgstr "Update passkey" msgid "Update password" msgstr "Update password" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Update profile" @@ -6068,7 +6057,7 @@ msgstr "Update webhook" msgid "Updating password..." msgstr "Updating password..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Updating profile..." @@ -6229,7 +6218,7 @@ msgstr "Verify your email to upload documents." msgid "Verify your team email address" msgstr "Verify your team email address" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Version History" @@ -6312,7 +6301,7 @@ msgstr "View Recovery Codes" msgid "View teams" msgstr "View teams" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6450,10 +6439,6 @@ msgstr "We encountered an unknown error while attempting to reset your password. msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "We encountered an unknown error while attempting to revoke access. Please try again or contact support." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "We encountered an unknown error while attempting to save your details. Please try again later." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6493,7 +6478,7 @@ msgstr "We encountered an unknown error while attempting to update your team. Pl msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "We encountered an unknown error while attempting update the team email. Please try again later." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "We encountered an unknown error while attempting update your profile. Please try again later." @@ -6535,7 +6520,7 @@ msgstr "We were unable to disable two-factor authentication for your account. Pl msgid "We were unable to log you out at this time." msgstr "We were unable to log you out at this time." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "We were unable to set your public profile to public. Please try again." @@ -6562,11 +6547,11 @@ msgstr "We were unable to update your document preferences at this time, please msgid "We were unable to verify your details. Please try again or contact support" msgstr "We were unable to verify your details. Please try again or contact support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "We were unable to verify your email at this time." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "We were unable to verify your email. If your email is not verified already, please try again." @@ -6655,7 +6640,7 @@ msgstr "When you sign a document, we can automatically fill in and sign the foll msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." @@ -6946,7 +6931,7 @@ msgstr "You must enter '{deleteMessage}' to proceed" msgid "You must have at least one other team member to transfer ownership." msgstr "You must have at least one other team member to transfer ownership." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "You must set a profile URL before enabling your public profile." @@ -6978,7 +6963,7 @@ msgstr "You will receive an Email copy of the signed document once everyone has msgid "Your account has been deleted successfully." msgstr "Your account has been deleted successfully." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Your avatar has been updated successfully." @@ -7046,11 +7031,11 @@ msgstr "Your document preferences have been updated" msgid "Your documents" msgstr "Your documents" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "Your email has already been confirmed. You can now use all features of Documenso." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Your email has been successfully confirmed! You can now use all features of Documenso." @@ -7141,7 +7126,7 @@ msgstr "Your template will be duplicated." msgid "Your templates has been saved successfully." msgstr "Your templates has been saved successfully." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "Your token has expired!" diff --git a/packages/lib/translations/es/web.po b/packages/lib/translations/es/web.po index 16b47e3e4..e78efb4ad 100644 --- a/packages/lib/translations/es/web.po +++ b/packages/lib/translations/es/web.po @@ -489,10 +489,6 @@ msgstr "12 meses" msgid "3 months" msgstr "3 meses" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Página no encontrada" @@ -656,7 +652,7 @@ msgstr "Aceptación y Consentimiento" msgid "Accepted team invitation" msgstr "Invitación de equipo aceptada" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Autenticación de Cuenta" @@ -673,7 +669,7 @@ msgstr "Cuenta deshabilitada" msgid "Account enabled" msgstr "Cuenta habilitada" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Re-autenticación de Cuenta" @@ -1002,7 +998,7 @@ msgstr "Se produjo un error al habilitar al usuario." msgid "An error occurred while loading team members. Please try again later." msgstr "Ocurrió un error al cargar los miembros del equipo. Por favor intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "Se produjo un error al cargar el documento." @@ -1097,8 +1093,7 @@ msgstr "" #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1246,7 +1241,7 @@ msgstr "Intenta sellar el documento de nuevo, útil después de que se haya prod msgid "Audit Log" msgstr "Registro de Auditoría" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Nivel de Autenticación" @@ -1259,7 +1254,7 @@ msgstr "Se requiere autenticación" msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Avatar actualizado" @@ -1682,7 +1677,7 @@ msgstr "Información de Contacto" msgid "Content" msgstr "Contenido" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1889,7 +1884,7 @@ msgstr "Crea tu cuenta y comienza a utilizar la firma de documentos de última g msgid "Created" msgstr "Creado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Creado En" @@ -2050,7 +2045,7 @@ msgstr "Eliminar Webhook" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Eliminar su cuenta y todo su contenido, incluidos documentos completados. Esta acción es irreversible y cancelará su suscripción, así que proceda con cuidado." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Eliminado" @@ -2059,11 +2054,11 @@ msgstr "Eliminado" msgid "Deleting account..." msgstr "Eliminando cuenta..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Detalles" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Dispositivo" @@ -2292,7 +2287,7 @@ msgstr "ID externo del documento actualizado" msgid "Document history" msgstr "Historial de documentos" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "ID del documento" @@ -2403,7 +2398,7 @@ msgstr "Visibilidad del documento actualizada" msgid "Document will be permanently deleted" msgstr "El documento será eliminado permanentemente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2528,15 +2523,15 @@ msgstr "Entrega Electrónica de Documentos" msgid "Electronic Signature Disclosure" msgstr "Divulgación de Firma Electrónica" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2565,7 +2560,7 @@ msgstr "Dirección de correo electrónico" msgid "Email Address" msgstr "Dirección de correo electrónico" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "" @@ -2573,7 +2568,7 @@ msgstr "" msgid "Email cannot already exist in the template" msgstr "El correo electrónico no puede existir ya en la plantilla" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "¡Correo electrónico confirmado!" @@ -2659,7 +2654,7 @@ msgstr "Habilitado" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Habilitar la cuenta permite al usuario usar la cuenta de nuevo, junto con todas las funciones relacionadas como webhooks, equipos y claves API, por ejemplo." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Documento Adjunto" @@ -2733,7 +2728,7 @@ msgstr "Ingresa tu texto aquí" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Error" @@ -2874,7 +2869,7 @@ msgstr "Firma gratuita" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2896,7 +2891,7 @@ msgstr "Generar enlaces" msgid "Global recipient action authentication" msgstr "Autenticación de acción de destinatario global" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2904,9 +2899,9 @@ msgid "Go Back" msgstr "Regresar" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Regresar a casa" @@ -2919,7 +2914,7 @@ msgstr "Regresar a casa" msgid "Go to owner" msgstr "Ir al propietario" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Ve a tu <0>configuración de perfil público para agregar documentos." @@ -2988,7 +2983,7 @@ msgstr "Hola, {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Hola, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3018,7 +3013,7 @@ msgstr "" msgid "I am required to receive a copy of this document" msgstr "Se me requiere recibir una copia de este documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "Soy el propietario de este documento" @@ -3140,7 +3135,7 @@ msgstr "Invitado el" msgid "Invoice" msgstr "Factura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "Dirección IP" @@ -3150,11 +3145,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "Es crucial mantener su información de contacto, especialmente su dirección de correo electrónico, actual con nosotros. Por favor, notifíquenos inmediatamente sobre cualquier cambio para asegurarse de seguir recibiendo todas las comunicaciones necesarias." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Parece que {0} aún no ha agregado documentos a su perfil." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Parece que el token proporcionado ha expirado. Te hemos enviado otro token, por favor revisa tu correo electrónico y vuelve a intentarlo." @@ -3207,7 +3202,7 @@ msgstr "Última modificación" msgid "Last updated" msgstr "Última actualización" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Última Actualización" @@ -3249,7 +3244,7 @@ msgstr "¿Te gustaría tener tu propio perfil público con acuerdos?" msgid "Link expires in 1 hour." msgstr "El enlace expira en 1 hora." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Enlace de plantilla" @@ -3268,7 +3263,7 @@ msgid "Load older activity" msgstr "Cargar actividad anterior" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Cargando documento..." @@ -3500,6 +3495,10 @@ msgstr "Nunca" msgid "Never expire" msgstr "Nunca expira" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "Nuevo propietario del equipo" @@ -3692,7 +3691,6 @@ msgstr "Solo los gerentes y superiores pueden acceder y ver el documento" msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Solo los suscriptores pueden tener un nombre de usuario de menos de 6 caracteres" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3716,7 +3714,7 @@ msgstr "O continúa con" msgid "Otherwise, the document will be created as a draft." msgstr "De lo contrario, el documento se creará como un borrador." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3731,7 +3729,7 @@ msgid "Page {0} of {1}" msgstr "Página {0} de {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Página {0} de {numPages}" @@ -3763,7 +3761,7 @@ msgstr "La clave de acceso ha sido actualizada" msgid "Passkey name" msgstr "Nombre de clave de acceso" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Re-autenticación de Passkey" @@ -3784,7 +3782,6 @@ msgstr "Las claves de acceso no están soportadas en este navegador" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "Contraseña" @@ -4001,8 +3998,8 @@ msgstr "Por favor, intenta de nuevo y asegúrate de ingresar la dirección de co msgid "Please try again later." msgstr "Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Por favor, inténtalo de nuevo o contacta a nuestro soporte." @@ -4050,11 +4047,11 @@ msgstr "Las plantillas privadas solo pueden ser modificadas y vistas por ti." msgid "Profile" msgstr "Perfil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "El perfil está actualmente <0>oculto." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "El perfil está actualmente <0>visible." @@ -4116,7 +4113,7 @@ msgstr "Lea la <0>divulgación de firma completa." msgid "Ready" msgstr "Listo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Razón" @@ -4179,7 +4176,7 @@ msgstr "Correo electrónico de solicitud de firma de destinatario" msgid "Recipient updated" msgstr "Destinatario actualizado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4577,7 +4574,7 @@ msgstr "Enviando correo de restablecimiento..." msgid "Sending..." msgstr "Enviando..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Enviado" @@ -4619,7 +4616,7 @@ msgstr "Compartir el enlace" msgid "Share your signing experience!" msgstr "¡Comparte tu experiencia de firma!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Mostrar" @@ -4640,7 +4637,7 @@ msgstr "Mostrar plantillas en tu perfil público para que tu audiencia firme y c msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Mostrar plantillas en el perfil público de tu equipo para que tu audiencia firme y comience rápidamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4717,13 +4714,13 @@ msgstr "Regístrate con Google" msgid "Sign Up with OIDC" msgstr "Regístrate con OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4733,7 +4730,7 @@ msgstr "Regístrate con OIDC" msgid "Signature" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "ID de Firma" @@ -4752,7 +4749,7 @@ msgstr "Firmas recolectadas" msgid "Signatures will appear once the document has been completed" msgstr "Las firmas aparecerán una vez que el documento se haya completado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4763,7 +4760,7 @@ msgstr "Firmado" msgid "Signer" msgstr "Firmante" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Eventos del Firmante" @@ -4779,11 +4776,11 @@ msgstr "Los firmantes deben tener correos electrónicos únicos" msgid "Signing" msgstr "Firmando" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Certificado de Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Certificado de firma proporcionado por" @@ -4825,7 +4822,7 @@ msgid "Signups are disabled." msgstr "Las inscripciones están deshabilitadas." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Desde {0}" @@ -4842,12 +4839,12 @@ msgstr "Configuraciones del sitio" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Algunos firmantes no han sido asignados a un campo de firma. Asigne al menos 1 campo de firma a cada firmante antes de continuar." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4896,8 +4893,8 @@ msgstr "Algo salió mal al intentar transferir la propiedad del equipo <0>{0}{0}. Please try again later." msgstr "Algo salió mal al intentar verificar tu dirección de correo electrónico para <0>{0}. Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Algo salió mal al cargar el documento." @@ -4947,7 +4944,7 @@ msgstr "Fuente" msgid "Stats" msgstr "Estadísticas" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5409,10 +5406,6 @@ msgstr "El destinatario debe firmar el documento para que se complete." msgid "The recipient is required to view the document for it to be completed." msgstr "El destinatario debe ver el documento para que se complete." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "" - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "El miembro del equipo seleccionado recibirá un correo electrónico que debe aceptar antes de que se transfiera el equipo" @@ -5681,10 +5674,6 @@ msgstr "Esta URL ya está en uso." msgid "This username has already been taken" msgstr "Este nombre de usuario ya ha sido tomado" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "Este nombre de usuario ya está tomado" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Esto se enviará a todos los destinatarios si un documento pendiente ha sido eliminado." @@ -5710,7 +5699,7 @@ msgstr "Hora" msgid "Time zone" msgstr "Zona horaria" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5777,11 +5766,11 @@ msgstr "Para usar nuestro servicio de firma electrónica, debe tener acceso a:" msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Para ver este documento debes iniciar sesión en tu cuenta, por favor inicia sesión para continuar." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Activa el interruptor para ocultar tu perfil del público." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Activa el interruptor para mostrar tu perfil al público." @@ -5886,7 +5875,7 @@ msgstr "Autenticación de dos factores habilitada" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "La autenticación de dos factores ha sido desactivada para tu cuenta. Ya no se te pedirá ingresar un código de tu aplicación de autenticador al iniciar sesión." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Re-autenticación de Doble Factor" @@ -5994,10 +5983,10 @@ msgstr "No autorizado" msgid "Uncompleted" msgstr "Incompleto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Desconocido" @@ -6028,7 +6017,7 @@ msgstr "Actualizar clave de acceso" msgid "Update password" msgstr "Actualizar contraseña" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Actualizar perfil" @@ -6071,7 +6060,7 @@ msgstr "Actualizar webhook" msgid "Updating password..." msgstr "Actualizando contraseña..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Actualizando perfil..." @@ -6232,7 +6221,7 @@ msgstr "Verifica tu correo electrónico para subir documentos." msgid "Verify your team email address" msgstr "Verifica tu dirección de correo electrónico del equipo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Historial de Versiones" @@ -6315,7 +6304,7 @@ msgstr "Ver Códigos de Recuperación" msgid "View teams" msgstr "Ver equipos" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6453,10 +6442,6 @@ msgstr "Encontramos un error desconocido al intentar restablecer tu contraseña. msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Encontramos un error desconocido al intentar revocar el acceso. Por favor, inténtalo de nuevo o contacta con soporte." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "Encontramos un error desconocido al intentar guardar tus datos. Por favor, inténtalo de nuevo más tarde." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6496,7 +6481,7 @@ msgstr "Encontramos un error desconocido al intentar actualizar tu equipo. Por f msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar el correo electrónico del equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar su perfil. Por favor, inténtelo de nuevo más tarde." @@ -6538,7 +6523,7 @@ msgstr "No pudimos desactivar la autenticación de dos factores para tu cuenta. msgid "We were unable to log you out at this time." msgstr "No pudimos cerrar sesión en este momento." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "No pudimos configurar tu perfil público como público. Por favor, inténtalo de nuevo." @@ -6565,11 +6550,11 @@ msgstr "No pudimos actualizar tus preferencias de documento en este momento, por msgid "We were unable to verify your details. Please try again or contact support" msgstr "No pudimos verificar tus datos. Por favor, inténtalo de nuevo o contacta con soporte" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "No pudimos verificar tu correo electrónico. Si tu correo electrónico no está verificado ya, por favor inténtalo de nuevo." @@ -6658,7 +6643,7 @@ msgstr "Cuando firme un documento, podemos completar y firmar automáticamente l msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Cuando utilice nuestra plataforma para colocar su firma electrónica en documentos, está consintiendo hacerlo bajo la Ley de Firmas Electrónicas en el Comercio Global y Nacional (Ley E-Sign) y otras leyes aplicables. Esta acción indica su aceptación de usar medios electrónicos para firmar documentos y recibir notificaciones." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Mientras esperas a que ellos lo hagan, puedes crear tu propia cuenta de Documenso y comenzar a firmar documentos de inmediato." @@ -6949,7 +6934,7 @@ msgstr "Debes ingresar '{deleteMessage}' para continuar" msgid "You must have at least one other team member to transfer ownership." msgstr "Debes tener al menos otro miembro del equipo para transferir la propiedad." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "Debes establecer una URL de perfil antes de habilitar tu perfil público." @@ -6981,7 +6966,7 @@ msgstr "Recibirás una copia por correo electrónico del documento firmado una v msgid "Your account has been deleted successfully." msgstr "Tu cuenta ha sido eliminada con éxito." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Tu avatar ha sido actualizado con éxito." @@ -7049,11 +7034,11 @@ msgstr "Tus preferencias de documento han sido actualizadas" msgid "Your documents" msgstr "Tus documentos" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "¡Tu correo electrónico ha sido confirmado con éxito! Ahora puedes usar todas las funciones de Documenso." @@ -7144,7 +7129,7 @@ msgstr "Tu plantilla será duplicada." msgid "Your templates has been saved successfully." msgstr "Tus plantillas han sido guardadas con éxito." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "¡Tu token ha expirado!" diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index ea2c2558a..1526b53ba 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -489,10 +489,6 @@ msgstr "12 mois" msgid "3 months" msgstr "3 mois" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Page non trouvée" @@ -656,7 +652,7 @@ msgstr "Acceptation et consentement" msgid "Accepted team invitation" msgstr "Invitation d'équipe acceptée" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Authentification de compte" @@ -673,7 +669,7 @@ msgstr "Compte désactivé" msgid "Account enabled" msgstr "Compte activé" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Ré-authentification de compte" @@ -1002,7 +998,7 @@ msgstr "Une erreur est survenue lors de l'activation de l'utilisateur." msgid "An error occurred while loading team members. Please try again later." msgstr "Une erreur est survenue lors du chargement des membres de l'équipe. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "Une erreur est survenue lors du chargement du document." @@ -1097,8 +1093,7 @@ msgstr "" #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1246,7 +1241,7 @@ msgstr "Essaye de sceller le document à nouveau, utile après qu'un changement msgid "Audit Log" msgstr "Journal d'audit" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Niveau d'authentification" @@ -1259,7 +1254,7 @@ msgstr "Authentification requise" msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Avatar mis à jour" @@ -1682,7 +1677,7 @@ msgstr "Coordonnées" msgid "Content" msgstr "Contenu" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1889,7 +1884,7 @@ msgstr "Créez votre compte et commencez à utiliser la signature de documents msgid "Created" msgstr "Créé" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Créé le" @@ -2050,7 +2045,7 @@ msgstr "Supprimer le Webhook" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Supprimez votre compte et tout son contenu, y compris les documents complétés. Cette action est irréversible et annulera votre abonnement, soyez prudent." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Supprimé" @@ -2059,11 +2054,11 @@ msgstr "Supprimé" msgid "Deleting account..." msgstr "Suppression du compte..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Détails" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Appareil" @@ -2292,7 +2287,7 @@ msgstr "ID externe du document mis à jour" msgid "Document history" msgstr "Historique du document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "ID du document" @@ -2403,7 +2398,7 @@ msgstr "Visibilité du document mise à jour" msgid "Document will be permanently deleted" msgstr "Le document sera supprimé de manière permanente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2528,15 +2523,15 @@ msgstr "Remise électronique de documents" msgid "Electronic Signature Disclosure" msgstr "Divulgation de signature électronique" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2565,7 +2560,7 @@ msgstr "Adresse email" msgid "Email Address" msgstr "Adresse e-mail" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "" @@ -2573,7 +2568,7 @@ msgstr "" msgid "Email cannot already exist in the template" msgstr "L'e-mail ne peut déjà exister dans le modèle" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "Email confirmé !" @@ -2659,7 +2654,7 @@ msgstr "Activé" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Activer le compte permet à l'utilisateur de pouvoir utiliser le compte à nouveau, ainsi que toutes les fonctionnalités associées telles que les webhooks, les équipes et les clés API par exemple." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Document joint" @@ -2733,7 +2728,7 @@ msgstr "Entrez votre texte ici" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Erreur" @@ -2874,7 +2869,7 @@ msgstr "Signature gratuite" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2896,7 +2891,7 @@ msgstr "Générer des liens" msgid "Global recipient action authentication" msgstr "Authentification d'action de destinataire globale" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2904,9 +2899,9 @@ msgid "Go Back" msgstr "Retourner" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Revenir au tableau de bord" @@ -2919,7 +2914,7 @@ msgstr "Revenir au tableau de bord" msgid "Go to owner" msgstr "Aller au propriétaire" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Allez à vos <0>paramètres de profil public pour ajouter des documents." @@ -2988,7 +2983,7 @@ msgstr "Bonjour, {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Bonjour, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3018,7 +3013,7 @@ msgstr "" msgid "I am required to receive a copy of this document" msgstr "Je dois recevoir une copie de ce document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "Je suis le propriétaire de ce document" @@ -3140,7 +3135,7 @@ msgstr "Invité à" msgid "Invoice" msgstr "Facture" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "Adresse IP" @@ -3150,11 +3145,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "Il est crucial de maintenir vos coordonnées, en particulier votre adresse e-mail, à jour avec nous. Veuillez nous informer immédiatement de tout changement pour vous assurer que vous continuez à recevoir toutes les communications nécessaires." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Il semble que {0} n'ait pas encore ajouté de documents à son profil." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Il semble que le token fourni ait expiré. Nous venons de vous envoyer un autre token, veuillez vérifier votre email et réessayer." @@ -3207,7 +3202,7 @@ msgstr "Dernière modification" msgid "Last updated" msgstr "Dernière mise à jour" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Dernière mise à jour" @@ -3249,7 +3244,7 @@ msgstr "Vous voulez avoir votre propre profil public avec des accords ?" msgid "Link expires in 1 hour." msgstr "Le lien expire dans 1 heure." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Modèle de lien" @@ -3268,7 +3263,7 @@ msgid "Load older activity" msgstr "Charger l'activité plus ancienne" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Chargement du document..." @@ -3500,6 +3495,10 @@ msgstr "Jamais" msgid "Never expire" msgstr "Ne jamais expirer" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "Nouveau propriétaire d'équipe" @@ -3692,7 +3691,6 @@ msgstr "Seuls les responsables et au-dessus peuvent accéder et voir le document msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Seuls les abonnés peuvent avoir un nom d'utilisateur de moins de 6 caractères" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3716,7 +3714,7 @@ msgstr "Ou continuez avec" msgid "Otherwise, the document will be created as a draft." msgstr "Sinon, le document sera créé sous forme de brouillon." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3731,7 +3729,7 @@ msgid "Page {0} of {1}" msgstr "Page {0} sur {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Page {0} sur {numPages}" @@ -3763,7 +3761,7 @@ msgstr "La clé d'accès a été mise à jour" msgid "Passkey name" msgstr "Nom de la clé d'accès" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Ré-authentification par clé d'accès" @@ -3784,7 +3782,6 @@ msgstr "Les clés d'accès ne sont pas prises en charge sur ce navigateur" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "Mot de passe" @@ -4001,8 +3998,8 @@ msgstr "Veuillez réessayer et assurez-vous d'entrer la bonne adresse email." msgid "Please try again later." msgstr "Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Veuillez réessayer ou contacter notre support." @@ -4050,11 +4047,11 @@ msgstr "Les modèles privés ne peuvent être modifiés et consultés que par vo msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "Le profil est actuellement <0>caché." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "Le profil est actuellement <0>visible." @@ -4116,7 +4113,7 @@ msgstr "Lisez l'intégralité de la <0>divulgation de signature." msgid "Ready" msgstr "Prêt" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Raison" @@ -4179,7 +4176,7 @@ msgstr "E-mail de demande de signature de destinataire" msgid "Recipient updated" msgstr "Destinataire mis à jour" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4577,7 +4574,7 @@ msgstr "Envoi de l'e-mail de réinitialisation..." msgid "Sending..." msgstr "Envoi..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Envoyé" @@ -4619,7 +4616,7 @@ msgstr "Partager le lien" msgid "Share your signing experience!" msgstr "Partagez votre expérience de signature !" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Afficher" @@ -4640,7 +4637,7 @@ msgstr "Afficher des modèles dans votre profil public pour que votre audience p msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Afficher des modèles dans le profil public de votre équipe pour que votre audience puisse signer et commencer rapidement" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4717,13 +4714,13 @@ msgstr "S'inscrire avec Google" msgid "Sign Up with OIDC" msgstr "S'inscrire avec OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4733,7 +4730,7 @@ msgstr "S'inscrire avec OIDC" msgid "Signature" msgstr "Signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "ID de signature" @@ -4752,7 +4749,7 @@ msgstr "Signatures collectées" msgid "Signatures will appear once the document has been completed" msgstr "Les signatures apparaîtront une fois le document complété" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4763,7 +4760,7 @@ msgstr "Signé" msgid "Signer" msgstr "Signataire" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Événements de signataire" @@ -4779,11 +4776,11 @@ msgstr "Les signataires doivent avoir des e-mails uniques" msgid "Signing" msgstr "Signature en cours" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Certificat de signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Certificat de signature fourni par" @@ -4825,7 +4822,7 @@ msgid "Signups are disabled." msgstr "Les inscriptions sont désactivées." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Depuis {0}" @@ -4842,12 +4839,12 @@ msgstr "Paramètres du site" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Certains signataires n'ont pas été assignés à un champ de signature. Veuillez assigner au moins 1 champ de signature à chaque signataire avant de continuer." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4896,8 +4893,8 @@ msgstr "Quelque chose a mal tourné lors de la tentative de transfert de la prop msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Quelque chose a mal tourné lors de la tentative de vérification de votre adresse e-mail pour <0>{0}. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Une erreur s'est produite lors du chargement du document." @@ -4947,7 +4944,7 @@ msgstr "Source" msgid "Stats" msgstr "Statistiques" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5409,10 +5406,6 @@ msgstr "Le destinataire doit signer le document pour qu'il soit complété." msgid "The recipient is required to view the document for it to be completed." msgstr "Le destinataire doit visualiser le document pour qu'il soit complété." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "" - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Le membre d'équipe sélectionné recevra un e-mail qu'il devra accepter avant que l'équipe soit transférée" @@ -5681,10 +5674,6 @@ msgstr "Cette URL est déjà utilisée." msgid "This username has already been taken" msgstr "Ce nom d'utilisateur a déjà été pris" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "Ce nom d'utilisateur est déjà pris" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Cela sera envoyé à tous les destinataires si un document en attente a été supprimé." @@ -5710,7 +5699,7 @@ msgstr "Temps" msgid "Time zone" msgstr "Fuseau horaire" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5777,11 +5766,11 @@ msgstr "Pour utiliser notre service de signature électronique, vous devez avoir msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Pour afficher ce document, vous devez être connecté à votre compte, veuillez vous connecter pour continuer." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Basculer l'interrupteur pour cacher votre profil du public." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Basculer l'interrupteur pour afficher votre profil au public." @@ -5886,7 +5875,7 @@ msgstr "Authentification à deux facteurs activée" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "L'authentification à deux facteurs a été désactivée pour votre compte. Vous ne serez plus tenu d'entrer un code de votre application d'authentification lors de la connexion." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Ré-authentification à deux facteurs" @@ -5994,10 +5983,10 @@ msgstr "Non autorisé" msgid "Uncompleted" msgstr "Non complet" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Inconnu" @@ -6028,7 +6017,7 @@ msgstr "Mettre à jour la clé d'accès" msgid "Update password" msgstr "Mettre à jour le mot de passe" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Mettre à jour le profil" @@ -6071,7 +6060,7 @@ msgstr "Mettre à jour le webhook" msgid "Updating password..." msgstr "Mise à jour du mot de passe..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Mise à jour du profil..." @@ -6232,7 +6221,7 @@ msgstr "Vérifiez votre e-mail pour télécharger des documents." msgid "Verify your team email address" msgstr "Vérifiez votre adresse e-mail d'équipe" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Historique des versions" @@ -6315,7 +6304,7 @@ msgstr "Voir les codes de récupération" msgid "View teams" msgstr "Voir les équipes" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6453,10 +6442,6 @@ msgstr "Une erreur inconnue s'est produite lors de la réinitialisation de votre msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Une erreur inconnue s'est produite lors de la révocation de l'accès. Veuillez réessayer ou contacter le support." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "Une erreur inconnue s'est produite lors de l'enregistrement de vos détails. Veuillez réessayer plus tard." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6496,7 +6481,7 @@ msgstr "Une erreur inconnue s'est produite lors de la mise à jour de votre équ msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de l'e-mail de l'équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Nous avons rencontré une erreur inconnue lors de la tentative de mise à jour de votre profil. Veuillez réessayer plus tard." @@ -6538,7 +6523,7 @@ msgstr "Nous n'avons pas pu désactiver l'authentification à deux facteurs pour msgid "We were unable to log you out at this time." msgstr "Nous n'avons pas pu vous déconnecter pour le moment." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "Nous n'avons pas pu définir votre profil public comme public. Veuillez réessayer." @@ -6565,11 +6550,11 @@ msgstr "Nous n'avons pas pu mettre à jour vos préférences de document pour le msgid "We were unable to verify your details. Please try again or contact support" msgstr "Nous n'avons pas pu vérifier vos détails. Veuillez réessayer ou contacter le support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Nous n'avons pas pu vérifier votre e-mail. Si votre e-mail n'est pas déjà vérifié, veuillez réessayer." @@ -6658,7 +6643,7 @@ msgstr "Lorsque vous signez un document, nous pouvons automatiquement remplir et msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Lorsque vous utilisez notre plateforme pour apposer votre signature électronique sur des documents, vous consentez à le faire conformément à la loi sur les signatures électroniques dans le commerce mondial et national (E-Sign Act) et aux autres lois applicables. Cette action indique votre accord à utiliser des moyens électroniques pour signer des documents et recevoir des notifications." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "En attendant qu'ils le fassent, vous pouvez créer votre propre compte Documenso et commencer à signer des documents dès maintenant." @@ -6949,7 +6934,7 @@ msgstr "Vous devez entrer '{deleteMessage}' pour continuer" msgid "You must have at least one other team member to transfer ownership." msgstr "Vous devez avoir au moins un autre membre de l'équipe pour transférer la propriété." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "Vous devez définir une URL de profil avant d'activer votre profil public." @@ -6981,7 +6966,7 @@ msgstr "Vous recevrez une copie par e-mail du document signé une fois que tout msgid "Your account has been deleted successfully." msgstr "Votre compte a été supprimé avec succès." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Votre avatar a été mis à jour avec succès." @@ -7049,11 +7034,11 @@ msgstr "Vos préférences de document ont été mises à jour" msgid "Your documents" msgstr "Vos documents" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Votre e-mail a été confirmé avec succès ! Vous pouvez maintenant utiliser toutes les fonctionnalités de Documenso." @@ -7144,7 +7129,7 @@ msgstr "Votre modèle sera dupliqué." msgid "Your templates has been saved successfully." msgstr "Vos modèles ont été enregistrés avec succès." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "Votre token a expiré !" diff --git a/packages/lib/translations/it/web.po b/packages/lib/translations/it/web.po index 39159a475..b9b703d5a 100644 --- a/packages/lib/translations/it/web.po +++ b/packages/lib/translations/it/web.po @@ -489,10 +489,6 @@ msgstr "{VAR_PLURAL, select, one {1 mese} other {12 mesi}}" msgid "3 months" msgstr "{VAR_PLURAL, select, one {1 mese} other {3 mesi}}" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Pagina non trovata" @@ -656,7 +652,7 @@ msgstr "Accettazione e Consenso" msgid "Accepted team invitation" msgstr "Invito alla squadra accettato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Autenticazione dell'account" @@ -673,7 +669,7 @@ msgstr "Account disabilitato" msgid "Account enabled" msgstr "Account abilitato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Ri-autenticazione dell'account" @@ -1002,7 +998,7 @@ msgstr "Si è verificato un errore durante l'abilitazione dell'utente." msgid "An error occurred while loading team members. Please try again later." msgstr "Si è verificato un errore durante il caricamento dei membri del team. Per favore riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "Si è verificato un errore durante il caricamento del documento." @@ -1097,8 +1093,7 @@ msgstr "" #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1246,7 +1241,7 @@ msgstr "Tenta nuovamente di sigillare il documento, utile dopo una modifica al c msgid "Audit Log" msgstr "Registro di controllo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Livello di Autenticazione" @@ -1259,7 +1254,7 @@ msgstr "Autenticazione richiesta" msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Avatar aggiornato" @@ -1682,7 +1677,7 @@ msgstr "Informazioni di contatto" msgid "Content" msgstr "Contenuto" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1889,7 +1884,7 @@ msgstr "Crea il tuo account e inizia a utilizzare firme digitali all'avanguardia msgid "Created" msgstr "Creato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Creato il" @@ -2050,7 +2045,7 @@ msgstr "Elimina Webhook" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Elimina il tuo account e tutti i suoi contenuti, inclusi i documenti completati. Questa azione è irreversibile e annullerà l'abbonamento, quindi procedi con cautela." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Eliminato" @@ -2059,11 +2054,11 @@ msgstr "Eliminato" msgid "Deleting account..." msgstr "Eliminazione account..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Dettagli" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Dispositivo" @@ -2292,7 +2287,7 @@ msgstr "ID esterno del documento aggiornato" msgid "Document history" msgstr "Cronologia del documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "ID del documento" @@ -2403,7 +2398,7 @@ msgstr "Visibilità del documento aggiornata" msgid "Document will be permanently deleted" msgstr "Il documento sarà eliminato definitivamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2528,15 +2523,15 @@ msgstr "Consegna elettronica dei documenti" msgid "Electronic Signature Disclosure" msgstr "Divulgazione della firma elettronica" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2565,7 +2560,7 @@ msgstr "Indirizzo email" msgid "Email Address" msgstr "Indirizzo Email" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "" @@ -2573,7 +2568,7 @@ msgstr "" msgid "Email cannot already exist in the template" msgstr "L'email non può già esistere nel modello" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "Email confermato!" @@ -2659,7 +2654,7 @@ msgstr "Abilitato" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Abilitare l'account consente all'utente di utilizzare nuovamente l'account, così come tutte le funzionalità correlate come webhook, team e chiavi API, per esempio." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Documento Allegato" @@ -2733,7 +2728,7 @@ msgstr "Inserisci il tuo testo qui" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Errore" @@ -2874,7 +2869,7 @@ msgstr "Firma gratuita" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2896,7 +2891,7 @@ msgstr "Genera link" msgid "Global recipient action authentication" msgstr "Autenticazione globale del destinatario" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2904,9 +2899,9 @@ msgid "Go Back" msgstr "Torna indietro" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Torna alla home" @@ -2919,7 +2914,7 @@ msgstr "Torna alla home" msgid "Go to owner" msgstr "Vai al proprietario" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Vai alle tue <0>impostazioni del profilo pubblico per aggiungere documenti." @@ -2988,7 +2983,7 @@ msgstr "Ciao {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Ciao, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3018,7 +3013,7 @@ msgstr "" msgid "I am required to receive a copy of this document" msgstr "Sono tenuto a ricevere una copia di questo documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "Sono il proprietario di questo documento" @@ -3140,7 +3135,7 @@ msgstr "Invitato il" msgid "Invoice" msgstr "Fattura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "Indirizzo IP" @@ -3150,11 +3145,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "È fondamentale mantenere aggiornate le tue informazioni di contatto, in particolare il tuo indirizzo email. Ti preghiamo di notificarci immediatamente qualsiasi modifica per assicurarti di continuare a ricevere tutte le comunicazioni necessarie." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Sembra che {0} non abbia ancora aggiunto documenti al proprio profilo." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Sembra che il token fornito sia scaduto. Ti abbiamo appena inviato un altro token, controlla la tua email e riprova." @@ -3207,7 +3202,7 @@ msgstr "Ultima modifica" msgid "Last updated" msgstr "Ultimo aggiornamento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Ultimo aggiornamento" @@ -3249,7 +3244,7 @@ msgstr "Ti piacerebbe avere il tuo profilo pubblico con accordi?" msgid "Link expires in 1 hour." msgstr "Il link scade tra 1 ora." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Collega modello" @@ -3268,7 +3263,7 @@ msgid "Load older activity" msgstr "Carica attività precedente" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Caricamento del documento..." @@ -3500,6 +3495,10 @@ msgstr "Mai" msgid "Never expire" msgstr "Mai scadere" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "Nuovo proprietario del team" @@ -3692,7 +3691,6 @@ msgstr "Solo i manager e superiori possono accedere e visualizzare il documento" msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Solo gli abbonati possono avere un nome utente più corto di 6 caratteri" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3716,7 +3714,7 @@ msgstr "Oppure continua con" msgid "Otherwise, the document will be created as a draft." msgstr "Altrimenti, il documento sarà creato come bozza." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3731,7 +3729,7 @@ msgid "Page {0} of {1}" msgstr "Pagina {0} di {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Pagina {0} di {numPages}" @@ -3763,7 +3761,7 @@ msgstr "La passkey è stata aggiornata" msgid "Passkey name" msgstr "Nome della passkey" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Ri-autenticazione con chiave di accesso" @@ -3784,7 +3782,6 @@ msgstr "Le passkey non sono supportate su questo browser" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "\"Password\"" @@ -4001,8 +3998,8 @@ msgstr "Si prega di riprovare assicurandosi di inserire l'indirizzo email corret msgid "Please try again later." msgstr "Si prega di riprovare più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Per favore, riprova o contatta il nostro supporto." @@ -4050,11 +4047,11 @@ msgstr "I modelli privati possono essere modificati e visualizzati solo da te." msgid "Profile" msgstr "Profilo" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "Il profilo è attualmente <0>nascosto." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "Il profilo è attualmente <0>visibile." @@ -4116,7 +4113,7 @@ msgstr "Leggi l'intera <0>divulgazione della firma." msgid "Ready" msgstr "Pronto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Motivo" @@ -4179,7 +4176,7 @@ msgstr "Email richiesta firma destinatario" msgid "Recipient updated" msgstr "Destinatario aggiornato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4577,7 +4574,7 @@ msgstr "Invio dell'email di ripristino..." msgid "Sending..." msgstr "Invio..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Inviato" @@ -4619,7 +4616,7 @@ msgstr "Condividi il link" msgid "Share your signing experience!" msgstr "Condividi la tua esperienza di firma!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Mostra" @@ -4640,7 +4637,7 @@ msgstr "Mostra modelli nel tuo profilo pubblico per il tuo pubblico da firmare e msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Mostra modelli nel profilo pubblico della tua squadra per il tuo pubblico da firmare e iniziare rapidamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4717,13 +4714,13 @@ msgstr "Iscriviti con Google" msgid "Sign Up with OIDC" msgstr "Iscriviti con OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4733,7 +4730,7 @@ msgstr "Iscriviti con OIDC" msgid "Signature" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "ID Firma" @@ -4752,7 +4749,7 @@ msgstr "Firme raccolte" msgid "Signatures will appear once the document has been completed" msgstr "Le firme appariranno una volta completato il documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4763,7 +4760,7 @@ msgstr "Firmato" msgid "Signer" msgstr "Firmatario" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Eventi del Firmatario" @@ -4779,11 +4776,11 @@ msgstr "I firmatari devono avere email uniche" msgid "Signing" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Certificato di Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Certificato di firma fornito da" @@ -4825,7 +4822,7 @@ msgid "Signups are disabled." msgstr "Le iscrizioni sono disabilitate." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Dal {0}" @@ -4842,12 +4839,12 @@ msgstr "Impostazioni del sito" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Alcuni firmatari non hanno un campo firma assegnato. Assegna almeno 1 campo di firma a ciascun firmatario prima di procedere." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4896,8 +4893,8 @@ msgstr "Qualcosa è andato storto durante il tentativo di trasferimento della pr msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Qualcosa è andato storto durante il tentativo di verifica del tuo indirizzo e-mail per <0>{0}. Riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Qualcosa è andato storto durante il caricamento del documento." @@ -4947,7 +4944,7 @@ msgstr "Fonte" msgid "Stats" msgstr "Statistiche" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5409,10 +5406,6 @@ msgstr "Il destinatario è tenuto a firmare il documento affinché sia completat msgid "The recipient is required to view the document for it to be completed." msgstr "Il destinatario è tenuto a visualizzare il documento affinché sia completato." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "" - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Il membro del team selezionato riceverà un'email che dovrà accettare prima che il team venga trasferito" @@ -5681,10 +5674,6 @@ msgstr "Questo URL è già in uso." msgid "This username has already been taken" msgstr "Questo nome utente è già stato preso" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "Questo nome utente è già stato preso" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Questo sarà inviato a tutti i destinatari se un documento in attesa è stato eliminato." @@ -5710,7 +5699,7 @@ msgstr "Ora" msgid "Time zone" msgstr "Fuso orario" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5777,11 +5766,11 @@ msgstr "Per utilizzare il nostro servizio di firma elettronica, devi avere acces msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Per visualizzare questo documento devi essere connesso al tuo account, per favore accedi per continuare." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Attiva l'interruttore per nascondere il tuo profilo al pubblico." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Attiva l'interruttore per mostrare il tuo profilo al pubblico." @@ -5886,7 +5875,7 @@ msgstr "Autenticazione a due fattori attivata" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "L'autenticazione a due fattori è stata disattivata per il tuo account. Non sarà più necessario inserire un codice dalla tua app di autenticazione quando accedi." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Ri-autenticazione a due fattori" @@ -5994,10 +5983,10 @@ msgstr "Non autorizzato" msgid "Uncompleted" msgstr "Incompleto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Sconosciuto" @@ -6028,7 +6017,7 @@ msgstr "Aggiorna chiave d'accesso" msgid "Update password" msgstr "Aggiorna password" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Aggiorna profilo" @@ -6071,7 +6060,7 @@ msgstr "Aggiorna webhook" msgid "Updating password..." msgstr "Aggiornamento della password..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Aggiornamento del profilo..." @@ -6232,7 +6221,7 @@ msgstr "Verifica il tuo email per caricare documenti." msgid "Verify your team email address" msgstr "Verifica il tuo indirizzo email del team" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Cronologia delle versioni" @@ -6315,7 +6304,7 @@ msgstr "Visualizza Codici di Recupero" msgid "View teams" msgstr "Visualizza squadre" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6453,10 +6442,6 @@ msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di reimpo msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di revocare l'accesso. Si prega di riprovare o contattare il supporto." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di salvare i tuoi dettagli. Si prega di riprovare più tardi." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6496,7 +6481,7 @@ msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggior msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare l'email del team. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il tuo profilo. Si prega di riprovare più tardi." @@ -6538,7 +6523,7 @@ msgstr "Non siamo riusciti a disabilitare l'autenticazione a due fattori per il msgid "We were unable to log you out at this time." msgstr "Non siamo riusciti a disconnetterti in questo momento." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "Non siamo riusciti a impostare il tuo profilo pubblico come pubblico. Per favore riprova." @@ -6565,11 +6550,11 @@ msgstr "Non siamo riusciti ad aggiornare le tue preferenze sui documenti al mome msgid "We were unable to verify your details. Please try again or contact support" msgstr "Non siamo riusciti a verificare i tuoi dati. Per favore riprova o contatta il supporto" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Non siamo riusciti a verificare la tua email. Se la tua email non è già verificata, riprova." @@ -6658,7 +6643,7 @@ msgstr "Quando firmi un documento, possiamo automaticamente compilare e firmare msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Quando utilizzi la nostra piattaforma per apporre la tua firma elettronica sui documenti, acconsenti a farlo ai sensi della Legge sulle firme elettroniche nel commercio globale e nazionale (E-Sign Act) e altre leggi applicabili. Questa azione indica il tuo consenso a utilizzare mezzi elettronici per firmare documenti e ricevere notifiche." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Mentre aspetti che lo facciano, puoi creare il tuo account Documenso e iniziare a firmare documenti subito." @@ -6949,7 +6934,7 @@ msgstr "Devi inserire '{deleteMessage}' per procedere" msgid "You must have at least one other team member to transfer ownership." msgstr "Devi avere almeno un altro membro del team per trasferire la proprietà." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "Devi impostare un'URL del profilo prima di abilitare il tuo profilo pubblico." @@ -6981,7 +6966,7 @@ msgstr "Riceverai una copia del documento firmato via email una volta che tutti msgid "Your account has been deleted successfully." msgstr "Il tuo account è stato eliminato con successo." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Il tuo avatar è stato aggiornato correttamente." @@ -7049,11 +7034,11 @@ msgstr "Le tue preferenze sui documenti sono state aggiornate" msgid "Your documents" msgstr "I tuoi documenti" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "La tua email è stata confermata con successo! Ora puoi utilizzare tutte le funzionalità di Documenso." @@ -7144,7 +7129,7 @@ msgstr "Il tuo modello sarà duplicato." msgid "Your templates has been saved successfully." msgstr "I tuoi modelli sono stati salvati con successo." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "Il tuo token è scaduto!" diff --git a/packages/lib/translations/pl/web.po b/packages/lib/translations/pl/web.po index 0cb48a5da..51055696f 100644 --- a/packages/lib/translations/pl/web.po +++ b/packages/lib/translations/pl/web.po @@ -489,10 +489,6 @@ msgstr "12 miesięcy" msgid "3 months" msgstr "3 miesiące" -#: apps/remix/app/routes/_recipient+/_layout.tsx:38 -msgid "404 Not found" -msgstr "" - #: apps/remix/app/components/general/generic-error-layout.tsx:41 msgid "404 Page not found" msgstr "404 Strona nie znaleziona" @@ -656,7 +652,7 @@ msgstr "Akceptacja i Zgoda" msgid "Accepted team invitation" msgstr "Akceptowane zaproszenie do zespołu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:131 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 msgid "Account Authentication" msgstr "Uwierzytelnianie konta" @@ -673,7 +669,7 @@ msgstr "Konto wyłączone" msgid "Account enabled" msgstr "Konto włączone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 msgid "Account Re-Authentication" msgstr "Ponowna Autoryzacja Konta" @@ -1002,7 +998,7 @@ msgstr "Wystąpił błąd podczas włączania użytkownika." msgid "An error occurred while loading team members. Please try again later." msgstr "Wystąpił błąd podczas ładowania członków zespołu. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:166 +#: packages/ui/primitives/pdf-viewer.tsx:169 msgid "An error occurred while loading the document." msgstr "Wystąpił błąd podczas ładowania dokumentu." @@ -1097,8 +1093,7 @@ msgstr "" #: apps/remix/app/components/forms/signin.tsx:265 #: apps/remix/app/components/forms/signin.tsx:281 #: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:109 -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx:74 #: apps/remix/app/components/forms/avatar-image.tsx:94 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 @@ -1246,7 +1241,7 @@ msgstr "Ponowne próby zapieczętowania dokumentu, przydatne po zmianie kodu w c msgid "Audit Log" msgstr "Dziennik logów" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:203 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 msgid "Authentication Level" msgstr "Poziom autoryzacji" @@ -1259,7 +1254,7 @@ msgstr "Wymagana autoryzacja" msgid "Avatar" msgstr "Awatar" -#: apps/remix/app/components/forms/avatar-image.tsx:107 +#: apps/remix/app/components/forms/avatar-image.tsx:109 msgid "Avatar Updated" msgstr "Awatar został zaktualizowany" @@ -1682,7 +1677,7 @@ msgstr "Informacje kontaktowe" msgid "Content" msgstr "Treść" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:152 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 #: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 #: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 @@ -1889,7 +1884,7 @@ msgstr "Utwórz swoje konto i zacznij korzystać z nowoczesnego podpisywania dok msgid "Created" msgstr "Utworzono" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:114 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 msgid "Created At" msgstr "Utworzono w" @@ -2050,7 +2045,7 @@ msgstr "Usuń webhook" msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Usuń swoje konto i wszystkie jego treści, w tym zakończone dokumenty. Działanie to jest nieodwracalne i anuluję twoją subskrypcję, więc działaj ostrożnie." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 msgid "Deleted" msgstr "Usunięto" @@ -2059,11 +2054,11 @@ msgstr "Usunięto" msgid "Deleting account..." msgstr "Usuwanie konta..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:183 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 msgid "Details" msgstr "Szczegóły" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:247 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 #: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 msgid "Device" msgstr "Urządzenie" @@ -2292,7 +2287,7 @@ msgstr "Zaktualizowane ID zewnętrzne dokumentu" msgid "Document history" msgstr "Historia dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:84 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 #: apps/remix/app/routes/_authenticated+/documents+/$id.logs.tsx:82 msgid "Document ID" msgstr "Identyfikator dokumentu" @@ -2403,7 +2398,7 @@ msgstr "Zaktualizowano widoczność dokumentu" msgid "Document will be permanently deleted" msgstr "Dokument zostanie trwale usunięty" -#: apps/remix/app/routes/_profile+/p.$url.tsx:164 +#: apps/remix/app/routes/_profile+/p.$url.tsx:163 #: apps/remix/app/routes/_authenticated+/documents+/_index.tsx:111 #: apps/remix/app/routes/_authenticated+/documents+/$id.edit.tsx:99 #: apps/remix/app/routes/_authenticated+/documents+/$id._index.tsx:138 @@ -2528,15 +2523,15 @@ msgstr "Elektroniczna dostawa dokumentów" msgid "Electronic Signature Disclosure" msgstr "Ujawnienie podpisu elektronicznego" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:132 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 #: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 #: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 #: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 #: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:110 +#: apps/remix/app/components/forms/profile.tsx:108 #: apps/remix/app/components/forms/forgot-password.tsx:77 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:362 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 @@ -2565,7 +2560,7 @@ msgstr "Adres e-mail" msgid "Email Address" msgstr "Adres e-mail" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:168 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 msgid "Email already confirmed" msgstr "" @@ -2573,7 +2568,7 @@ msgstr "" msgid "Email cannot already exist in the template" msgstr "E-mail nie może już istnieć w szablonie" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 msgid "Email Confirmed!" msgstr "E-mail potwierdzony!" @@ -2659,7 +2654,7 @@ msgstr "Włączone" msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Włączenie konta pozwala użytkownikowi na ponowne korzystanie z niego oraz przywraca wszystkie powiązane funkcje, takie jak webhooki, zespoły i klucze API." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:90 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 msgid "Enclosed Document" msgstr "Załączony dokument" @@ -2733,7 +2728,7 @@ msgstr "Wprowadź swój tekst tutaj" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:165 +#: packages/ui/primitives/pdf-viewer.tsx:168 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Błąd" @@ -2874,7 +2869,7 @@ msgstr "Podpis wolny" #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 #: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:98 +#: apps/remix/app/components/forms/profile.tsx:96 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:347 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 msgid "Full Name" @@ -2896,7 +2891,7 @@ msgstr "Generuj linki" msgid "Global recipient action authentication" msgstr "Globalne uwierzytelnianie akcji odbiorcy" -#: apps/remix/app/routes/_recipient+/_layout.tsx:56 +#: apps/remix/app/routes/_recipient+/_layout.tsx:41 #: apps/remix/app/routes/_profile+/_layout.tsx:116 #: apps/remix/app/components/general/generic-error-layout.tsx:106 #: packages/ui/primitives/document-flow/document-flow-root.tsx:141 @@ -2904,9 +2899,9 @@ msgid "Go Back" msgstr "Wróć" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:96 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:124 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:179 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 msgid "Go back home" msgstr "Wróć do domu" @@ -2919,7 +2914,7 @@ msgstr "Wróć do domu" msgid "Go to owner" msgstr "Przejdź do właściciela" -#: apps/remix/app/routes/_profile+/p.$url.tsx:145 +#: apps/remix/app/routes/_profile+/p.$url.tsx:144 msgid "Go to your <0>public profile settings to add documents." msgstr "Przejdź do swojego <0>ustawienia profilu publicznego, aby dodać dokumenty." @@ -2988,7 +2983,7 @@ msgstr "Cześć, {userName}," msgid "Hi, {userName} <0>({userEmail})" msgstr "Cześć, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:161 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:164 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 #: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 msgid "Hide" @@ -3018,7 +3013,7 @@ msgstr "" msgid "I am required to receive a copy of this document" msgstr "Muszę otrzymać kopię tego dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:34 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 msgid "I am the owner of this document" msgstr "Jestem właścicielem tego dokumentu" @@ -3140,7 +3135,7 @@ msgstr "Zaproś o" msgid "Invoice" msgstr "Faktura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:240 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 #: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 msgid "IP Address" msgstr "Adres IP" @@ -3150,11 +3145,11 @@ msgid "It is crucial to keep your contact information, especially your email add msgstr "Konieczne jest, aby mieć aktualne informacje kontaktowe, szczególnie swój adres e-mail. Proszę niezwłocznie powiadomić nas o wszelkich zmianach, aby zapewnić ciągłość wszystkich niezbędnych komunikacji." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:132 +#: apps/remix/app/routes/_profile+/p.$url.tsx:131 msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Wygląda na to, że {0} jeszcze nie dodał żadnych dokumentów do swojego profilu." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Wydaje się, że podany token wygasł. Właśnie wysłaliśmy Ci nowy token, proszę sprawdź swoją pocztę i spróbuj ponownie." @@ -3207,7 +3202,7 @@ msgstr "Ostatnia modyfikacja" msgid "Last updated" msgstr "Zaktualizowano" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 msgid "Last Updated" msgstr "Zaktualizowano" @@ -3249,7 +3244,7 @@ msgstr "Czy chcesz mieć własny publiczny profil z umowami?" msgid "Link expires in 1 hour." msgstr "Link wygasa za 1 godzinę." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:222 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:225 msgid "Link template" msgstr "Szablon linku" @@ -3268,7 +3263,7 @@ msgid "Load older activity" msgstr "Załaduj starszą aktywność" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:43 +#: packages/ui/primitives/pdf-viewer.tsx:46 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Ładowanie dokumentu..." @@ -3500,6 +3495,10 @@ msgstr "Nigdy" msgid "Never expire" msgstr "Nigdy nie wygasa" +#: apps/remix/app/components/forms/password.tsx:125 +msgid "New Password" +msgstr "" + #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 msgid "New team owner" msgstr "Nowy właściciel zespołu" @@ -3692,7 +3691,6 @@ msgstr "Tylko menedżerowie i wyżej mogą uzyskać dostęp do dokumentu i go wy msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Tylko subskrybenci mogą mieć nazwę użytkownika krótszą niż 6 znaków" -#: apps/remix/app/routes/_recipient+/_layout.tsx:42 #: apps/remix/app/routes/_profile+/_layout.tsx:103 #: apps/remix/app/components/general/generic-error-layout.tsx:42 #: apps/remix/app/components/general/generic-error-layout.tsx:47 @@ -3716,7 +3714,7 @@ msgstr "Lub kontynuuj z" msgid "Otherwise, the document will be created as a draft." msgstr "W przeciwnym razie dokument zostanie utworzony jako wersja robocza." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:106 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 #: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 #: apps/remix/app/components/tables/team-settings-members-table.tsx:94 @@ -3731,7 +3729,7 @@ msgid "Page {0} of {1}" msgstr "Strona {0} z {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:258 +#: packages/ui/primitives/pdf-viewer.tsx:261 msgid "Page {0} of {numPages}" msgstr "Strona {0} z {numPages}" @@ -3763,7 +3761,7 @@ msgstr "Klucz dostępu został zaktualizowany" msgid "Passkey name" msgstr "Nazwa klucza dostępu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:124 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 msgid "Passkey Re-Authentication" msgstr "Ponowna Autoryzacja Klucza Dostępu" @@ -3784,7 +3782,6 @@ msgstr "Klucze dostępu nie są obsługiwane w tej przeglądarce" #: apps/remix/app/components/forms/signup.tsx:341 #: apps/remix/app/components/forms/signin.tsx:336 #: apps/remix/app/components/forms/reset-password.tsx:111 -#: apps/remix/app/components/forms/password.tsx:125 msgid "Password" msgstr "Hasło" @@ -4001,8 +3998,8 @@ msgstr "Spróbuj ponownie i upewnij się, że wprowadzasz poprawny adres email." msgid "Please try again later." msgstr "Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:225 +#: packages/ui/primitives/pdf-viewer.tsx:240 msgid "Please try again or contact our support." msgstr "Spróbuj ponownie lub skontaktuj się z naszym wsparciem." @@ -4050,11 +4047,11 @@ msgstr "Prywatne szablony mogą być modyfikowane i przeglądane tylko przez Cie msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:190 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:193 msgid "Profile is currently <0>hidden." msgstr "Profil jest obecnie <0>ukryty." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:178 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:181 msgid "Profile is currently <0>visible." msgstr "Profil jest obecnie <0>widoczny." @@ -4116,7 +4113,7 @@ msgstr "Przeczytaj pełne <0>ujawnienie podpisu." msgid "Ready" msgstr "Gotowy" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:294 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 msgid "Reason" msgstr "Powód" @@ -4179,7 +4176,7 @@ msgstr "E-mail z prośbą o podpisanie przez odbiorcę" msgid "Recipient updated" msgstr "Odbiorca zaktualizowany" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:142 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 #: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 #: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 @@ -4577,7 +4574,7 @@ msgstr "Wysyłanie e-maila resetującego..." msgid "Sending..." msgstr "Wysyłanie..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:261 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 msgid "Sent" msgstr "Wysłano" @@ -4619,7 +4616,7 @@ msgstr "Udostępnij link" msgid "Share your signing experience!" msgstr "Podziel się swoim doświadczeniem podpisywania!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:169 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:172 msgid "Show" msgstr "Pokaż" @@ -4640,7 +4637,7 @@ msgstr "Pokaż szablony w profilu publicznym, aby szybko podpisać dokument" msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Pokaż szablony w profilu publicznym zespołu, aby szybko podpisać dokument" -#: apps/remix/app/routes/_profile+/p.$url.tsx:190 +#: apps/remix/app/routes/_profile+/p.$url.tsx:189 #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 #: apps/remix/app/components/tables/documents-table-action-button.tsx:112 #: apps/remix/app/components/general/user-profile-timur.tsx:77 @@ -4717,13 +4714,13 @@ msgstr "Zarejestruj się za pomocą Google" msgid "Sign Up with OIDC" msgstr "Zarejestruj się za pomocą OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:182 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 #: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 #: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 #: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 #: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:120 +#: apps/remix/app/components/forms/profile.tsx:118 #: apps/remix/app/components/embed/embed-document-signing-page.tsx:376 #: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 #: packages/ui/primitives/template-flow/add-template-fields.tsx:711 @@ -4733,7 +4730,7 @@ msgstr "Zarejestruj się za pomocą OIDC" msgid "Signature" msgstr "Podpis" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:233 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 msgid "Signature ID" msgstr "Identyfikator podpisu" @@ -4752,7 +4749,7 @@ msgstr "Zebrane podpisy" msgid "Signatures will appear once the document has been completed" msgstr "Podpisy pojawią się po ukończeniu dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:283 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 #: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 #: packages/lib/constants/recipient-roles.ts:22 @@ -4763,7 +4760,7 @@ msgstr "Podpisano" msgid "Signer" msgstr "Sygnatariusz" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:181 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 msgid "Signer Events" msgstr "Wydarzenia sygnatariusza" @@ -4779,11 +4776,11 @@ msgstr "Podpisujący muszą mieć unikalne emaile" msgid "Signing" msgstr "Podpisywanie" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:173 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 msgid "Signing Certificate" msgstr "Certyfikat podpisu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:316 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 msgid "Signing certificate provided by" msgstr "Certyfikat podpisu dostarczony przez" @@ -4825,7 +4822,7 @@ msgid "Signups are disabled." msgstr "Rejestracje są wyłączone." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:107 +#: apps/remix/app/routes/_profile+/p.$url.tsx:106 msgid "Since {0}" msgstr "Od {0}" @@ -4842,12 +4839,12 @@ msgstr "Ustawienia strony" msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Niektórzy sygnatariusze nie zostali przypisani do pola podpisu. Przypisz co najmniej 1 pole podpisu do każdego sygnatariusza przed kontynuowaniem." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:52 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:84 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:132 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-invitations.tsx:169 #: apps/remix/app/routes/_authenticated+/settings+/teams+/team-email-usage.tsx:43 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:130 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:133 #: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 #: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 @@ -4896,8 +4893,8 @@ msgstr "Coś poszło nie tak podczas próby przeniesienia własności zespołu < msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Coś poszło nie tak podczas próby weryfikacji adresu e-mail dla <0>{0}. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:219 -#: packages/ui/primitives/pdf-viewer.tsx:234 +#: packages/ui/primitives/pdf-viewer.tsx:222 +#: packages/ui/primitives/pdf-viewer.tsx:237 msgid "Something went wrong while loading the document." msgstr "Coś poszło nie tak podczas ładowania dokumentu." @@ -4947,7 +4944,7 @@ msgstr "Źródło" msgid "Stats" msgstr "Statystyki" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:96 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 #: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 #: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 #: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 @@ -5409,10 +5406,6 @@ msgstr "Odbiorca musi podpisać dokument, aby mógł być zakończony." msgid "The recipient is required to view the document for it to be completed." msgstr "Odbiorca musi wyświetlić dokument, aby mógł być zakończony." -#: apps/remix/app/routes/_recipient+/_layout.tsx:46 -msgid "The resource you are looking for may have been disabled, deleted or may have never existed." -msgstr "" - #: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Wybrany członek zespołu otrzyma e-mail, który musi zaakceptować przed przeniesieniem zespołu" @@ -5681,10 +5674,6 @@ msgstr "Ten URL jest już używany." msgid "This username has already been taken" msgstr "Ta nazwa użytkownika została już zajęta" -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:94 -msgid "This username is already taken" -msgstr "Ta nazwa użytkownika jest już zajęta" - #: packages/ui/components/document/document-email-checkboxes.tsx:246 msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "To zostanie wysłane do wszystkich odbiorców, jeśli oczekujący dokument został usunięty." @@ -5710,7 +5699,7 @@ msgstr "Czas" msgid "Time zone" msgstr "Strefa czasowa" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 #: packages/ui/primitives/template-flow/add-template-settings.tsx:482 #: packages/ui/primitives/document-flow/add-settings.tsx:357 msgid "Time Zone" @@ -5777,11 +5766,11 @@ msgstr "Aby skorzystać z naszej usługi podpisu elektronicznego, musisz mieć d msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Aby zobaczyć ten dokument, musisz być zalogowany na swoje konto, proszę zaloguj się, aby kontynuować." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:184 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:187 msgid "Toggle the switch to hide your profile from the public." msgstr "Przełącz przełącznik, aby ukryć swój profil przed publicznością." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:199 msgid "Toggle the switch to show your profile to the public." msgstr "Przełącz przełącznik, aby pokazać swój profil publicznie." @@ -5886,7 +5875,7 @@ msgstr "Uwierzytelnianie dwuetapowe włączone" msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Uwierzytelnianie dwuetapowe zostało wyłączone dla Twojego konta. Nie będziesz już musiał wprowadzać kodu z aplikacji uwierzytelniającej podczas logowania." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:123 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 msgid "Two-Factor Re-Authentication" msgstr "Ponowna autoryzacja za pomocą dwuetapowej weryfikacji" @@ -5994,10 +5983,10 @@ msgstr "Nieautoryzowany" msgid "Uncompleted" msgstr "Niezakończony" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:242 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:267 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:278 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:289 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 #: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/billing.tsx:61 msgid "Unknown" msgstr "Nieznany" @@ -6028,7 +6017,7 @@ msgstr "Zaktualizuj klucz dostępu" msgid "Update password" msgstr "Zaktualizuj hasło" -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Update profile" msgstr "Zaktualizuj profil" @@ -6071,7 +6060,7 @@ msgstr "Zaktualizuj webhook" msgid "Updating password..." msgstr "Aktualizowanie hasła..." -#: apps/remix/app/components/forms/profile.tsx:139 +#: apps/remix/app/components/forms/profile.tsx:137 msgid "Updating profile..." msgstr "Aktualizacja profilu..." @@ -6232,7 +6221,7 @@ msgstr "Zweryfikuj adres e-mail, aby przesłać dokumenty." msgid "Verify your team email address" msgstr "Zweryfikuj swój adres e-mail zespołu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 msgid "Version History" msgstr "Historia wersji" @@ -6315,7 +6304,7 @@ msgstr "Wyświetl kody odzyskiwania" msgid "View teams" msgstr "Wyświetl zespoły" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:272 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 #: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 #: packages/lib/constants/recipient-roles.ts:29 msgid "Viewed" @@ -6453,10 +6442,6 @@ msgstr "Natknęliśmy się na nieznany błąd podczas próby zresetowania hasła msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Natknęliśmy się na nieznany błąd podczas próby odwołania dostępu. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną." -#: apps/remix/app/components/forms/public-profile-claim-dialog.tsx:111 -msgid "We encountered an unknown error while attempting to save your details. Please try again later." -msgstr "Natknęliśmy się na nieznany błąd podczas próby zapisania twoich danych. Proszę spróbuj ponownie później." - #: apps/remix/app/components/forms/signin.tsx:267 #: apps/remix/app/components/forms/signin.tsx:283 msgid "We encountered an unknown error while attempting to sign you In. Please try again later." @@ -6496,7 +6481,7 @@ msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania two msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania e-maila zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/profile.tsx:78 +#: apps/remix/app/components/forms/profile.tsx:76 msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Napotkaliśmy nieznany błąd podczas próby aktualizacji Twojego profilu. Proszę spróbować ponownie później." @@ -6538,7 +6523,7 @@ msgstr "Nie udało nam się wyłączyć uwierzytelniania dwuskładnikowego dla t msgid "We were unable to log you out at this time." msgstr "Nie udało nam się wylogować w tej chwili." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:131 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:134 msgid "We were unable to set your public profile to public. Please try again." msgstr "Nie udało nam się ustawić twojego profilu publicznego na publiczny. Proszę spróbuj ponownie." @@ -6565,11 +6550,11 @@ msgstr "Nie udało nam się zaktualizować preferencji dokumentu w tym czasie, s msgid "We were unable to verify your details. Please try again or contact support" msgstr "Nie udało się zweryfikować twoich danych. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Nie udało się zweryfikować twojego e-maila. Jeśli twój e-mail nie jest jeszcze zweryfikowany, spróbuj ponownie." @@ -6658,7 +6643,7 @@ msgstr "Gdy podpisujesz dokument, możemy automatycznie wypełnić i podpisać n msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Kiedy korzystasz z naszej platformy, aby przyczepić swój podpis elektroniczny do dokumentów, wyrażasz zgodę na dokonanie tego zgodnie z Ustawą o podpisach elektronicznych w handlu globalnym i krajowym (Ustawa E-Sign) oraz innymi obowiązującymi przepisami. Ta czynność wskazuje na twoją zgodę na korzystanie z elektronicznych środków do podpisywania dokumentów i otrzymywania powiadomień." -#: apps/remix/app/routes/_profile+/p.$url.tsx:137 +#: apps/remix/app/routes/_profile+/p.$url.tsx:136 msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Czekając na ich działania możesz utworzyć własne konto Documenso i od razu rozpocząć podpisywanie dokumentów." @@ -6949,7 +6934,7 @@ msgstr "Musisz wpisać '{deleteMessage}' aby kontynuować" msgid "You must have at least one other team member to transfer ownership." msgstr "Musisz mieć przynajmniej jednego innego członka zespołu, aby przenieść własność." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:115 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile+/index.tsx:118 msgid "You must set a profile URL before enabling your public profile." msgstr "Musisz ustawić URL profilu przed włączeniem swojego publicznego profilu." @@ -6981,7 +6966,7 @@ msgstr "Otrzymasz kopię e-maila podpisanego dokumentu, gdy wszyscy podpiszą." msgid "Your account has been deleted successfully." msgstr "Konto zostało usunięte." -#: apps/remix/app/components/forms/avatar-image.tsx:108 +#: apps/remix/app/components/forms/avatar-image.tsx:110 msgid "Your avatar has been updated successfully." msgstr "Awatar został zaktualizowany." @@ -7049,11 +7034,11 @@ msgstr "Preferencje dokumentu zostały zaktualizowane" msgid "Your documents" msgstr "Twoje dokumenty" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Twój adres e-mail został pomyślnie potwierdzony! Możesz teraz korzystać ze wszystkich funkcji Documenso." @@ -7144,7 +7129,7 @@ msgstr "Twój szablon zostanie zduplikowany." msgid "Your templates has been saved successfully." msgstr "Twoje szablony zostały pomyślnie zapisane." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:112 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 msgid "Your token has expired!" msgstr "Twój token wygasł!" diff --git a/packages/ui/primitives/pdf-viewer.tsx b/packages/ui/primitives/pdf-viewer.tsx index c2b31e05e..ceb3cc4b3 100644 --- a/packages/ui/primitives/pdf-viewer.tsx +++ b/packages/ui/primitives/pdf-viewer.tsx @@ -23,7 +23,10 @@ export type LoadedPDFDocument = PDFDocumentProxy; /** * This imports the worker from the `pdfjs-dist` package. */ -pdfjs.GlobalWorkerOptions.workerSrc = `/pdf.worker.min.js`; +pdfjs.GlobalWorkerOptions.workerSrc = new URL( + 'pdfjs-dist/build/pdf.worker.min.js', + import.meta.url, +).toString(); export type OnPDFViewerPageClick = (_event: { pageNumber: number; diff --git a/scripts/copy-pdfjs.cjs b/scripts/copy-pdfjs.cjs deleted file mode 100644 index cef7b3c8a..000000000 --- a/scripts/copy-pdfjs.cjs +++ /dev/null @@ -1,12 +0,0 @@ -#!/usr/bin/env node - -/* eslint-disable @typescript-eslint/no-var-requires */ -const path = require('path'); -const fs = require('fs'); - -const pdfjsDistPath = path.dirname(require.resolve('pdfjs-dist/package.json')); - -const pdfWorkerPath = path.join(pdfjsDistPath, 'build', 'pdf.worker.min.js'); - -console.log(`Copying pdf.js to: ${path.resolve('./public/pdf.worker.min.js')}`); -fs.copyFileSync(pdfWorkerPath, './public/pdf.worker.min.js'); From 7728c8641c3b4d436bc862933df3ad771d5ba2c6 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Thu, 20 Feb 2025 15:38:06 +1100 Subject: [PATCH 11/61] fix: share opengraph --- apps/remix/app/routes/_unauthenticated+/share.$slug.tsx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx index a2c73ac26..f45f496af 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx @@ -54,3 +54,7 @@ export const loader = ({ request }: Route.LoaderArgs) => { // Is hardcoded because this whole meta is hardcoded anyway for Documenso. throw redirect('https://documenso.com'); }; + +export default function SharePage() { + return
; +} From 991ce5ff4610bba0de2b4f88c3e09b928270740d Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Fri, 21 Feb 2025 00:34:50 +1100 Subject: [PATCH 12/61] fix: update teams API tokens logic --- .../dialogs/token-delete-dialog.tsx | 14 +- apps/remix/app/components/forms/token.tsx | 17 +- .../components/general/settings-header.tsx | 4 +- .../settings+/tokens+/index.tsx | 155 ++++++++++-------- .../t.$teamUrl+/settings+/tokens.tsx | 127 +------------- packages/api/v1/openapi.ts | 7 + .../public-api/get-all-team-tokens.ts | 42 ----- .../public-api/get-all-user-tokens.ts | 24 --- .../server-only/public-api/get-api-tokens.ts | 39 +++++ .../trpc/server/api-token-router/router.ts | 4 +- 10 files changed, 157 insertions(+), 276 deletions(-) delete mode 100644 packages/lib/server-only/public-api/get-all-team-tokens.ts delete mode 100644 packages/lib/server-only/public-api/get-all-user-tokens.ts create mode 100644 packages/lib/server-only/public-api/get-api-tokens.ts diff --git a/apps/remix/app/components/dialogs/token-delete-dialog.tsx b/apps/remix/app/components/dialogs/token-delete-dialog.tsx index 8b373d370..511ce04db 100644 --- a/apps/remix/app/components/dialogs/token-delete-dialog.tsx +++ b/apps/remix/app/components/dialogs/token-delete-dialog.tsx @@ -30,22 +30,20 @@ import { import { Input } from '@documenso/ui/primitives/input'; import { useToast } from '@documenso/ui/primitives/use-toast'; +import { useOptionalCurrentTeam } from '~/providers/team'; + export type TokenDeleteDialogProps = { - teamId?: number; token: Pick; onDelete?: () => void; children?: React.ReactNode; }; -export default function TokenDeleteDialog({ - teamId, - token, - onDelete, - children, -}: TokenDeleteDialogProps) { +export default function TokenDeleteDialog({ token, onDelete, children }: TokenDeleteDialogProps) { const { _ } = useLingui(); const { toast } = useToast(); + const team = useOptionalCurrentTeam(); + const [isOpen, setIsOpen] = useState(false); const deleteMessage = _(msg`delete ${token.name}`); @@ -75,7 +73,7 @@ export default function TokenDeleteDialog({ try { await deleteTokenMutation({ id: token.id, - teamId, + teamId: team?.id, }); toast({ diff --git a/apps/remix/app/components/forms/token.tsx b/apps/remix/app/components/forms/token.tsx index 41ce41bf3..d7bec0cba 100644 --- a/apps/remix/app/components/forms/token.tsx +++ b/apps/remix/app/components/forms/token.tsx @@ -1,4 +1,4 @@ -import { useState, useTransition } from 'react'; +import { useState } from 'react'; import { zodResolver } from '@hookform/resolvers/zod'; import { msg } from '@lingui/core/macro'; @@ -38,6 +38,8 @@ import { import { Switch } from '@documenso/ui/primitives/switch'; import { useToast } from '@documenso/ui/primitives/use-toast'; +import { useOptionalCurrentTeam } from '~/providers/team'; + export const EXPIRATION_DATES = { ONE_WEEK: msg`7 days`, ONE_MONTH: msg`1 month`, @@ -59,15 +61,14 @@ type NewlyCreatedToken = { export type ApiTokenFormProps = { className?: string; - teamId?: number; tokens?: Pick[]; }; -export const ApiTokenForm = ({ className, teamId, tokens }: ApiTokenFormProps) => { - const [isTransitionPending, startTransition] = useTransition(); - +export const ApiTokenForm = ({ className, tokens }: ApiTokenFormProps) => { const [, copy] = useCopyToClipboard(); + const team = useOptionalCurrentTeam(); + const { _ } = useLingui(); const { toast } = useToast(); @@ -113,7 +114,7 @@ export const ApiTokenForm = ({ className, teamId, tokens }: ApiTokenFormProps) = const onSubmit = async ({ tokenName, expirationDate }: TCreateTokenMutationSchema) => { try { await createTokenMutation({ - teamId, + teamId: team?.id, tokenName, expirationDate: noExpirationDate ? null : expirationDate, }); @@ -238,7 +239,7 @@ export const ApiTokenForm = ({ className, teamId, tokens }: ApiTokenFormProps) = type="submit" className="hidden md:inline-flex" disabled={!form.formState.isDirty} - loading={form.formState.isSubmitting || isTransitionPending} + loading={form.formState.isSubmitting} > Create token @@ -247,7 +248,7 @@ export const ApiTokenForm = ({ className, teamId, tokens }: ApiTokenFormProps) = diff --git a/apps/remix/app/components/general/settings-header.tsx b/apps/remix/app/components/general/settings-header.tsx index 6f5ae28bc..06de2ff24 100644 --- a/apps/remix/app/components/general/settings-header.tsx +++ b/apps/remix/app/components/general/settings-header.tsx @@ -3,8 +3,8 @@ import React from 'react'; import { cn } from '@documenso/ui/lib/utils'; export type SettingsHeaderProps = { - title: string; - subtitle: string; + title: string | React.ReactNode; + subtitle: string | React.ReactNode; hideDivider?: boolean; children?: React.ReactNode; className?: string; diff --git a/apps/remix/app/routes/_authenticated+/settings+/tokens+/index.tsx b/apps/remix/app/routes/_authenticated+/settings+/tokens+/index.tsx index dcf6bd7d8..bb7c114b1 100644 --- a/apps/remix/app/routes/_authenticated+/settings+/tokens+/index.tsx +++ b/apps/remix/app/routes/_authenticated+/settings+/tokens+/index.tsx @@ -1,90 +1,115 @@ import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; +import { TeamMemberRole } from '@prisma/client'; import { DateTime } from 'luxon'; import { trpc } from '@documenso/trpc/react'; +import { Alert, AlertDescription } from '@documenso/ui/primitives/alert'; +import { AlertTitle } from '@documenso/ui/primitives/alert'; import { Button } from '@documenso/ui/primitives/button'; import TokenDeleteDialog from '~/components/dialogs/token-delete-dialog'; import { ApiTokenForm } from '~/components/forms/token'; +import { SettingsHeader } from '~/components/general/settings-header'; +import { useOptionalCurrentTeam } from '~/providers/team'; export default function ApiTokensPage() { const { i18n } = useLingui(); const { data: tokens } = trpc.apiToken.getTokens.useQuery(); + const team = useOptionalCurrentTeam(); + return (
-

- API Tokens -

+ API Tokens} + subtitle={ + + On this page, you can create and manage API tokens. See our{' '} + + Documentation + {' '} + for more information. + + } + /> -

- - On this page, you can create new API tokens and manage the existing ones.
- Also see our{' '} - - Documentation - - . -
-

+ {team && team?.currentTeamMember.role !== TeamMemberRole.ADMIN ? ( + +
+ + Unauthorized + + + You need to be an admin to manage API tokens. + +
+
+ ) : ( + <> + -
+
- +

+ Your existing tokens +

-
- -

- Your existing tokens -

- - {tokens && tokens.length === 0 && ( -
-

- Your tokens will be shown here once you create them. -

-
- )} - - {tokens && tokens.length > 0 && ( -
- {tokens.map((token) => ( -
-
-
-
{token.name}
- -

- Created on {i18n.date(token.createdAt, DateTime.DATETIME_FULL)} -

- {token.expires ? ( -

- Expires on {i18n.date(token.expires, DateTime.DATETIME_FULL)} -

- ) : ( -

- Token doesn't have an expiration date -

- )} -
- -
- - - -
-
+ {tokens && tokens.length === 0 && ( +
+

+ Your tokens will be shown here once you create them. +

- ))} -
+ )} + + {tokens && tokens.length > 0 && ( +
+ {tokens.map((token) => ( +
+
+
+
{token.name}
+ +

+ + Created on {i18n.date(token.createdAt, DateTime.DATETIME_FULL)} + +

+ {token.expires ? ( +

+ + Expires on {i18n.date(token.expires, DateTime.DATETIME_FULL)} + +

+ ) : ( +

+ Token doesn't have an expiration date +

+ )} +
+ +
+ + + +
+
+
+ ))} +
+ )} + )}
); diff --git a/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/tokens.tsx b/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/tokens.tsx index e2c07c59b..8e9c9e1b7 100644 --- a/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/tokens.tsx +++ b/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings+/tokens.tsx @@ -1,126 +1,3 @@ -import { useLingui } from '@lingui/react'; -import { Trans } from '@lingui/react/macro'; -import { DateTime } from 'luxon'; +import ApiTokensPage from '~/routes/_authenticated+/settings+/tokens+/index'; -import { getSession } from '@documenso/auth/server/lib/utils/get-session'; -import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; -import { getTeamTokens } from '@documenso/lib/server-only/public-api/get-all-team-tokens'; -import { getTeamByUrl } from '@documenso/lib/server-only/team/get-team'; -import { Button } from '@documenso/ui/primitives/button'; - -import TokenDeleteDialog from '~/components/dialogs/token-delete-dialog'; -import { ApiTokenForm } from '~/components/forms/token'; - -import type { Route } from './+types/tokens'; - -// Todo: This can be optimized. -export async function loader({ request, params }: Route.LoaderArgs) { - const { user } = await getSession(request); - - const team = await getTeamByUrl({ - userId: user.id, - teamUrl: params.teamUrl, - }); - - const tokens = await getTeamTokens({ userId: user.id, teamId: team.id }).catch(() => null); - - return { - user, - team, - tokens, - }; -} - -export default function ApiTokensPage({ loaderData }: Route.ComponentProps) { - const { i18n } = useLingui(); - - const { team, tokens } = loaderData; - - if (!tokens) { - return ( -
-

- API Tokens -

-

- Something went wrong. -

-
- ); - } - - return ( -
-

- API Tokens -

- -

- - On this page, you can create new API tokens and manage the existing ones.
- You can view our swagger docs{' '} - - here - -
-

- -
- - - -
- -

- Your existing tokens -

- - {tokens.length === 0 && ( -
-

- Your tokens will be shown here once you create them. -

-
- )} - - {tokens.length > 0 && ( -
- {tokens.map((token) => ( -
-
-
-
{token.name}
- -

- Created on {i18n.date(token.createdAt, DateTime.DATETIME_FULL)} -

- {token.expires ? ( -

- Expires on {i18n.date(token.expires, DateTime.DATETIME_FULL)} -

- ) : ( -

- Token doesn't have an expiration date -

- )} -
- -
- - - -
-
-
- ))} -
- )} -
- ); -} +export default ApiTokensPage; diff --git a/packages/api/v1/openapi.ts b/packages/api/v1/openapi.ts index 55ec4d7fd..293395b18 100644 --- a/packages/api/v1/openapi.ts +++ b/packages/api/v1/openapi.ts @@ -1,5 +1,7 @@ import { generateOpenApi } from '@ts-rest/open-api'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; + import { ApiContractV1 } from './contract'; export const OpenAPIV1 = Object.assign( @@ -11,6 +13,11 @@ export const OpenAPIV1 = Object.assign( version: '1.0.0', description: 'The Documenso API for retrieving, creating, updating and deleting documents.', }, + servers: [ + { + url: NEXT_PUBLIC_WEBAPP_URL(), + }, + ], }, { setOperationId: true, diff --git a/packages/lib/server-only/public-api/get-all-team-tokens.ts b/packages/lib/server-only/public-api/get-all-team-tokens.ts deleted file mode 100644 index b04d947be..000000000 --- a/packages/lib/server-only/public-api/get-all-team-tokens.ts +++ /dev/null @@ -1,42 +0,0 @@ -import { TeamMemberRole } from '@prisma/client'; - -import { AppError, AppErrorCode } from '@documenso/lib/errors/app-error'; -import { prisma } from '@documenso/prisma'; - -export type GetUserTokensOptions = { - userId: number; - teamId: number; -}; - -export type GetTeamTokensResponse = Awaited>; - -export const getTeamTokens = async ({ userId, teamId }: GetUserTokensOptions) => { - const teamMember = await prisma.teamMember.findFirst({ - where: { - userId, - teamId, - }, - }); - - if (teamMember?.role !== TeamMemberRole.ADMIN) { - throw new AppError(AppErrorCode.UNAUTHORIZED, { - message: 'You do not have the required permissions to view this page.', - }); - } - - return await prisma.apiToken.findMany({ - where: { - teamId, - }, - select: { - id: true, - name: true, - algorithm: true, - createdAt: true, - expires: true, - }, - orderBy: { - createdAt: 'desc', - }, - }); -}; diff --git a/packages/lib/server-only/public-api/get-all-user-tokens.ts b/packages/lib/server-only/public-api/get-all-user-tokens.ts deleted file mode 100644 index 5561a308f..000000000 --- a/packages/lib/server-only/public-api/get-all-user-tokens.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { prisma } from '@documenso/prisma'; - -export type GetUserTokensOptions = { - userId: number; -}; - -export const getUserTokens = async ({ userId }: GetUserTokensOptions) => { - return await prisma.apiToken.findMany({ - where: { - userId, - teamId: null, - }, - select: { - id: true, - name: true, - algorithm: true, - createdAt: true, - expires: true, - }, - orderBy: { - createdAt: 'desc', - }, - }); -}; diff --git a/packages/lib/server-only/public-api/get-api-tokens.ts b/packages/lib/server-only/public-api/get-api-tokens.ts new file mode 100644 index 000000000..075aa15a1 --- /dev/null +++ b/packages/lib/server-only/public-api/get-api-tokens.ts @@ -0,0 +1,39 @@ +import { prisma } from '@documenso/prisma'; +import { TeamMemberRole } from '@documenso/prisma/client'; + +export type GetApiTokensOptions = { + userId: number; + teamId?: number; +}; + +export const getApiTokens = async ({ userId, teamId }: GetApiTokensOptions) => { + return await prisma.apiToken.findMany({ + where: { + ...(teamId + ? { + team: { + id: teamId, + members: { + some: { + userId, + role: TeamMemberRole.ADMIN, + }, + }, + }, + } + : { + userId, + teamId: null, + }), + }, + select: { + id: true, + name: true, + createdAt: true, + expires: true, + }, + orderBy: { + createdAt: 'desc', + }, + }); +}; diff --git a/packages/trpc/server/api-token-router/router.ts b/packages/trpc/server/api-token-router/router.ts index eae15f1e3..de4cb4138 100644 --- a/packages/trpc/server/api-token-router/router.ts +++ b/packages/trpc/server/api-token-router/router.ts @@ -1,7 +1,7 @@ import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token'; import { deleteTokenById } from '@documenso/lib/server-only/public-api/delete-api-token-by-id'; -import { getUserTokens } from '@documenso/lib/server-only/public-api/get-all-user-tokens'; import { getApiTokenById } from '@documenso/lib/server-only/public-api/get-api-token-by-id'; +import { getApiTokens } from '@documenso/lib/server-only/public-api/get-api-tokens'; import { authenticatedProcedure, router } from '../trpc'; import { @@ -12,7 +12,7 @@ import { export const apiTokenRouter = router({ getTokens: authenticatedProcedure.query(async ({ ctx }) => { - return await getUserTokens({ userId: ctx.user.id }); + return await getApiTokens({ userId: ctx.user.id, teamId: ctx.teamId }); }), getTokenById: authenticatedProcedure From 139bc265c7ab11e27135ca02450eff5fa210866b Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Fri, 21 Feb 2025 01:16:23 +1100 Subject: [PATCH 13/61] fix: migrate billing to RR7 --- .../app/components/general/billing-plans.tsx | 138 ++++++++++++++++ .../general/billing-portal-button.tsx | 48 ++++++ .../_authenticated+/settings+/billing.tsx | 156 ++++++++++++++++++ packages/auth/server/lib/session/session.ts | 2 + .../ee/server-only/stripe/get-customer.ts | 4 +- packages/lib/server-only/team/create-team.ts | 30 ++-- .../server-only/user/create-billing-portal.ts | 22 +++ .../user/create-checkout-session.ts | 39 +++++ packages/trpc/server/profile-router/router.ts | 28 ++++ packages/trpc/server/profile-router/schema.ts | 4 + 10 files changed, 456 insertions(+), 15 deletions(-) create mode 100644 apps/remix/app/components/general/billing-plans.tsx create mode 100644 apps/remix/app/components/general/billing-portal-button.tsx create mode 100644 apps/remix/app/routes/_authenticated+/settings+/billing.tsx create mode 100644 packages/lib/server-only/user/create-billing-portal.ts create mode 100644 packages/lib/server-only/user/create-checkout-session.ts diff --git a/apps/remix/app/components/general/billing-plans.tsx b/apps/remix/app/components/general/billing-plans.tsx new file mode 100644 index 000000000..2113da8fc --- /dev/null +++ b/apps/remix/app/components/general/billing-plans.tsx @@ -0,0 +1,138 @@ +import { useState } from 'react'; + +import type { MessageDescriptor } from '@lingui/core'; +import { msg } from '@lingui/core/macro'; +import { useLingui } from '@lingui/react'; +import { Trans } from '@lingui/react/macro'; +import { AnimatePresence, motion } from 'framer-motion'; + +import type { PriceIntervals } from '@documenso/ee/server-only/stripe/get-prices-by-interval'; +import { useIsMounted } from '@documenso/lib/client-only/hooks/use-is-mounted'; +import { toHumanPrice } from '@documenso/lib/universal/stripe/to-human-price'; +import { trpc } from '@documenso/trpc/react'; +import { Button } from '@documenso/ui/primitives/button'; +import { Card, CardContent, CardTitle } from '@documenso/ui/primitives/card'; +import { Tabs, TabsList, TabsTrigger } from '@documenso/ui/primitives/tabs'; +import { useToast } from '@documenso/ui/primitives/use-toast'; + +type Interval = keyof PriceIntervals; + +const INTERVALS: Interval[] = ['day', 'week', 'month', 'year']; + +// eslint-disable-next-line @typescript-eslint/consistent-type-assertions +const isInterval = (value: unknown): value is Interval => INTERVALS.includes(value as Interval); + +const FRIENDLY_INTERVALS: Record = { + day: msg`Daily`, + week: msg`Weekly`, + month: msg`Monthly`, + year: msg`Yearly`, +}; + +const MotionCard = motion(Card); + +export type BillingPlansProps = { + prices: PriceIntervals; +}; + +export const BillingPlans = ({ prices }: BillingPlansProps) => { + const { _ } = useLingui(); + const { toast } = useToast(); + + const isMounted = useIsMounted(); + + const [interval, setInterval] = useState('month'); + const [checkoutSessionPriceId, setCheckoutSessionPriceId] = useState(null); + + const { mutateAsync: createCheckoutSession } = trpc.profile.createCheckoutSession.useMutation(); + + const onSubscribeClick = async (priceId: string) => { + try { + setCheckoutSessionPriceId(priceId); + + const url = await createCheckoutSession({ priceId }); + + if (!url) { + throw new Error('Unable to create session'); + } + + window.open(url); + } catch (_err) { + toast({ + title: _(msg`Something went wrong`), + description: _(msg`An error occurred while trying to create a checkout session.`), + variant: 'destructive', + }); + } finally { + setCheckoutSessionPriceId(null); + } + }; + + return ( +
+ isInterval(value) && setInterval(value)}> + + {INTERVALS.map( + (interval) => + prices[interval].length > 0 && ( + + {_(FRIENDLY_INTERVALS[interval])} + + ), + )} + + + +
+ + {prices[interval].map((price) => ( + + + {price.product.name} + +
+ ${toHumanPrice(price.unit_amount ?? 0)} {price.currency.toUpperCase()}{' '} + per {interval} +
+ +
+ {price.product.description} +
+ + {price.product.features && price.product.features.length > 0 && ( +
+
Includes:
+ +
    + {price.product.features.map((feature, index) => ( +
  • + {feature.name} +
  • + ))} +
+
+ )} + +
+ + + + + ))} + +
+
+ ); +}; diff --git a/apps/remix/app/components/general/billing-portal-button.tsx b/apps/remix/app/components/general/billing-portal-button.tsx new file mode 100644 index 000000000..ea8735954 --- /dev/null +++ b/apps/remix/app/components/general/billing-portal-button.tsx @@ -0,0 +1,48 @@ +import { msg } from '@lingui/core/macro'; +import { useLingui } from '@lingui/react'; +import { Trans } from '@lingui/react/macro'; + +import { trpc } from '@documenso/trpc/react'; +import { Button } from '@documenso/ui/primitives/button'; +import { useToast } from '@documenso/ui/primitives/use-toast'; + +export type BillingPortalButtonProps = { + buttonProps?: React.ComponentProps; + children?: React.ReactNode; +}; + +export const BillingPortalButton = ({ buttonProps, children }: BillingPortalButtonProps) => { + const { _ } = useLingui(); + const { toast } = useToast(); + + const { mutateAsync: createBillingPortal, isPending } = + trpc.profile.createBillingPortal.useMutation({ + onSuccess: (sessionUrl) => { + window.open(sessionUrl, '_blank'); + }, + onError: (err) => { + let description = _( + msg`We are unable to proceed to the billing portal at this time. Please try again, or contact support.`, + ); + + if (err.message === 'CUSTOMER_NOT_FOUND') { + description = _( + msg`You do not currently have a customer record, this should not happen. Please contact support for assistance.`, + ); + } + + toast({ + title: _(msg`Something went wrong`), + description, + variant: 'destructive', + duration: 10000, + }); + }, + }); + + return ( + + ); +}; diff --git a/apps/remix/app/routes/_authenticated+/settings+/billing.tsx b/apps/remix/app/routes/_authenticated+/settings+/billing.tsx new file mode 100644 index 000000000..ba719e06d --- /dev/null +++ b/apps/remix/app/routes/_authenticated+/settings+/billing.tsx @@ -0,0 +1,156 @@ +import { Trans, useLingui } from '@lingui/react/macro'; +import { SubscriptionStatus } from '@prisma/client'; +import { redirect } from 'react-router'; +import { match } from 'ts-pattern'; + +import { getSession } from '@documenso/auth/server/lib/utils/get-session'; +import { getStripeCustomerByUser } from '@documenso/ee/server-only/stripe/get-customer'; +import { getPricesByInterval } from '@documenso/ee/server-only/stripe/get-prices-by-interval'; +import { getPrimaryAccountPlanPrices } from '@documenso/ee/server-only/stripe/get-primary-account-plan-prices'; +import { getProductByPriceId } from '@documenso/ee/server-only/stripe/get-product-by-price-id'; +import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; +import { STRIPE_PLAN_TYPE } from '@documenso/lib/constants/billing'; +import { type Stripe } from '@documenso/lib/server-only/stripe'; +import { getSubscriptionsByUserId } from '@documenso/lib/server-only/subscription/get-subscriptions-by-user-id'; + +import { BillingPlans } from '~/components/general/billing-plans'; +import { BillingPortalButton } from '~/components/general/billing-portal-button'; +import { appMetaTags } from '~/utils/meta'; + +import type { Route } from './+types/billing'; + +export function meta() { + return appMetaTags('Billing'); +} + +export async function loader({ request }: Route.LoaderArgs) { + const { user } = await getSession(request); + + // Redirect if subscriptions are not enabled. + if (!IS_BILLING_ENABLED()) { + throw redirect('/settings/profile'); + } + + if (!user.customerId) { + await getStripeCustomerByUser(user).then((result) => result.user); + } + + const [subscriptions, prices, primaryAccountPlanPrices] = await Promise.all([ + getSubscriptionsByUserId({ userId: user.id }), + getPricesByInterval({ plans: [STRIPE_PLAN_TYPE.REGULAR, STRIPE_PLAN_TYPE.PLATFORM] }), + getPrimaryAccountPlanPrices(), + ]); + + const primaryAccountPlanPriceIds = primaryAccountPlanPrices.map(({ id }) => id); + + let subscriptionProduct: Stripe.Product | null = null; + + const primaryAccountPlanSubscriptions = subscriptions.filter(({ priceId }) => + primaryAccountPlanPriceIds.includes(priceId), + ); + + const subscription = + primaryAccountPlanSubscriptions.find(({ status }) => status === SubscriptionStatus.ACTIVE) ?? + primaryAccountPlanSubscriptions[0]; + + if (subscription?.priceId) { + subscriptionProduct = await getProductByPriceId({ priceId: subscription.priceId }).catch( + () => null, + ); + } + + const isMissingOrInactiveOrFreePlan = + !subscription || subscription.status === SubscriptionStatus.INACTIVE; + + return { + prices, + subscription, + subscriptionProductName: subscriptionProduct?.name, + isMissingOrInactiveOrFreePlan, + }; +} + +export default function TeamsSettingBillingPage({ loaderData }: Route.ComponentProps) { + const { prices, subscription, subscriptionProductName, isMissingOrInactiveOrFreePlan } = + loaderData; + + const { i18n } = useLingui(); + + return ( +
+
+
+

+ Billing +

+ +
+ {isMissingOrInactiveOrFreePlan && ( +

+ + You are currently on the Free Plan. + +

+ )} + + {/* Todo: Translation */} + {!isMissingOrInactiveOrFreePlan && + match(subscription.status) + .with('ACTIVE', () => ( +

+ {subscriptionProductName ? ( + + You are currently subscribed to{' '} + {subscriptionProductName} + + ) : ( + You currently have an active plan + )} + + {subscription.periodEnd && ( + + {' '} + which is set to{' '} + {subscription.cancelAtPeriodEnd ? ( + + end on{' '} + + {i18n.date(subscription.periodEnd)}. + + + ) : ( + + automatically renew on{' '} + + {i18n.date(subscription.periodEnd)}. + + + )} + + )} +

+ )) + .with('PAST_DUE', () => ( +

+ + Your current plan is past due. Please update your payment information. + +

+ )) + .otherwise(() => null)} +
+
+ + {isMissingOrInactiveOrFreePlan && ( + + Manage billing + + )} +
+ +
+ + {isMissingOrInactiveOrFreePlan ? : } +
+ ); +} diff --git a/packages/auth/server/lib/session/session.ts b/packages/auth/server/lib/session/session.ts index 35497f5cf..cd690be64 100644 --- a/packages/auth/server/lib/session/session.ts +++ b/packages/auth/server/lib/session/session.ts @@ -23,6 +23,7 @@ export type SessionUser = Pick< | 'roles' | 'signature' | 'url' + | 'customerId' >; export type SessionValidationResult = @@ -99,6 +100,7 @@ export const validateSessionToken = async (token: string): Promise { * * Will create a Stripe customer and update the relevant user if one does not exist. */ -export const getStripeCustomerByUser = async (user: User) => { +export const getStripeCustomerByUser = async ( + user: Pick, +) => { if (user.customerId) { const stripeCustomer = await getStripeCustomerById(user.customerId); diff --git a/packages/lib/server-only/team/create-team.ts b/packages/lib/server-only/team/create-team.ts index 2f3975010..210187c5c 100644 --- a/packages/lib/server-only/team/create-team.ts +++ b/packages/lib/server-only/team/create-team.ts @@ -205,7 +205,7 @@ export const createTeamFromPendingTeam = async ({ pendingTeamId, subscription, }: CreateTeamFromPendingTeamOptions) => { - return await prisma.$transaction(async (tx) => { + const createdTeam = await prisma.$transaction(async (tx) => { const pendingTeam = await tx.teamPending.findUniqueOrThrow({ where: { id: pendingTeamId, @@ -249,19 +249,21 @@ export const createTeamFromPendingTeam = async ({ mapStripeSubscriptionToPrismaUpsertAction(subscription, undefined, team.id), ); - // Attach the team ID to the subscription metadata for sanity reasons. - await stripe.subscriptions - .update(subscription.id, { - metadata: { - teamId: team.id.toString(), - }, - }) - .catch((e) => { - console.error(e); - // Non-critical error, but we want to log it so we can rectify it. - // Todo: Teams - Alert us. - }); - return team; }); + + // Attach the team ID to the subscription metadata for sanity reasons. + await stripe.subscriptions + .update(subscription.id, { + metadata: { + teamId: createdTeam.id.toString(), + }, + }) + .catch((e) => { + console.error(e); + // Non-critical error, but we want to log it so we can rectify it. + // Todo: Teams - Alert us. + }); + + return createdTeam; }; diff --git a/packages/lib/server-only/user/create-billing-portal.ts b/packages/lib/server-only/user/create-billing-portal.ts new file mode 100644 index 000000000..4e00ecc79 --- /dev/null +++ b/packages/lib/server-only/user/create-billing-portal.ts @@ -0,0 +1,22 @@ +import type { User } from '@prisma/client'; + +import { getStripeCustomerByUser } from '@documenso/ee/server-only/stripe/get-customer'; +import { getPortalSession } from '@documenso/ee/server-only/stripe/get-portal-session'; +import { IS_BILLING_ENABLED, NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; + +export type CreateBillingPortalOptions = { + user: Pick; +}; + +export const createBillingPortal = async ({ user }: CreateBillingPortalOptions) => { + if (!IS_BILLING_ENABLED()) { + throw new Error('Billing is not enabled'); + } + + const { stripeCustomer } = await getStripeCustomerByUser(user); + + return getPortalSession({ + customerId: stripeCustomer.id, + returnUrl: `${NEXT_PUBLIC_WEBAPP_URL()}/settings/billing`, + }); +}; diff --git a/packages/lib/server-only/user/create-checkout-session.ts b/packages/lib/server-only/user/create-checkout-session.ts new file mode 100644 index 000000000..3b6a45d47 --- /dev/null +++ b/packages/lib/server-only/user/create-checkout-session.ts @@ -0,0 +1,39 @@ +import type { User } from '@prisma/client'; + +import { getCheckoutSession } from '@documenso/ee/server-only/stripe/get-checkout-session'; +import { getStripeCustomerByUser } from '@documenso/ee/server-only/stripe/get-customer'; +import { getPortalSession } from '@documenso/ee/server-only/stripe/get-portal-session'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; + +import { getSubscriptionsByUserId } from '../subscription/get-subscriptions-by-user-id'; + +export type CreateCheckoutSession = { + user: Pick; + priceId: string; +}; + +export const createCheckoutSession = async ({ user, priceId }: CreateCheckoutSession) => { + const { stripeCustomer } = await getStripeCustomerByUser(user); + + const existingSubscriptions = await getSubscriptionsByUserId({ userId: user.id }); + + const foundSubscription = existingSubscriptions.find( + (subscription) => + subscription.priceId === priceId && + subscription.periodEnd && + subscription.periodEnd >= new Date(), + ); + + if (foundSubscription) { + return getPortalSession({ + customerId: stripeCustomer.id, + returnUrl: `${NEXT_PUBLIC_WEBAPP_URL()}/settings/billing`, + }); + } + + return getCheckoutSession({ + customerId: stripeCustomer.id, + priceId, + returnUrl: `${NEXT_PUBLIC_WEBAPP_URL()}/settings/billing`, + }); +}; diff --git a/packages/trpc/server/profile-router/router.ts b/packages/trpc/server/profile-router/router.ts index e5f5f4a7c..fc1e978c7 100644 --- a/packages/trpc/server/profile-router/router.ts +++ b/packages/trpc/server/profile-router/router.ts @@ -4,6 +4,8 @@ import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; import { AppError } from '@documenso/lib/errors/app-error'; import { setAvatarImage } from '@documenso/lib/server-only/profile/set-avatar-image'; import { getSubscriptionsByUserId } from '@documenso/lib/server-only/subscription/get-subscriptions-by-user-id'; +import { createBillingPortal } from '@documenso/lib/server-only/user/create-billing-portal'; +import { createCheckoutSession } from '@documenso/lib/server-only/user/create-checkout-session'; import { deleteUser } from '@documenso/lib/server-only/user/delete-user'; import { findUserSecurityAuditLogs } from '@documenso/lib/server-only/user/find-user-security-audit-logs'; import { getUserById } from '@documenso/lib/server-only/user/get-user-by-id'; @@ -12,6 +14,7 @@ import { updatePublicProfile } from '@documenso/lib/server-only/user/update-publ import { adminProcedure, authenticatedProcedure, router } from '../trpc'; import { + ZCreateCheckoutSessionRequestSchema, ZFindUserSecurityAuditLogsSchema, ZRetrieveUserByIdQuerySchema, ZSetProfileImageMutationSchema, @@ -35,6 +38,31 @@ export const profileRouter = router({ return await getUserById({ id }); }), + createBillingPortal: authenticatedProcedure.mutation(async ({ ctx }) => { + return await createBillingPortal({ + user: { + id: ctx.user.id, + customerId: ctx.user.customerId, + email: ctx.user.email, + name: ctx.user.name, + }, + }); + }), + + createCheckoutSession: authenticatedProcedure + .input(ZCreateCheckoutSessionRequestSchema) + .mutation(async ({ ctx, input }) => { + return await createCheckoutSession({ + user: { + id: ctx.user.id, + customerId: ctx.user.customerId, + email: ctx.user.email, + name: ctx.user.name, + }, + priceId: input.priceId, + }); + }), + updateProfile: authenticatedProcedure .input(ZUpdateProfileMutationSchema) .mutation(async ({ input, ctx }) => { diff --git a/packages/trpc/server/profile-router/schema.ts b/packages/trpc/server/profile-router/schema.ts index b02451d55..1d607437f 100644 --- a/packages/trpc/server/profile-router/schema.ts +++ b/packages/trpc/server/profile-router/schema.ts @@ -15,6 +15,10 @@ export const ZRetrieveUserByIdQuerySchema = z.object({ export type TRetrieveUserByIdQuerySchema = z.infer; +export const ZCreateCheckoutSessionRequestSchema = z.object({ + priceId: z.string().min(1), +}); + export const ZUpdateProfileMutationSchema = z.object({ name: z.string().min(1), signature: z.string(), From 483d7caef75804bae02e7fa6bf5afd546050d079 Mon Sep 17 00:00:00 2001 From: Lucas Smith Date: Thu, 20 Feb 2025 11:34:19 +1100 Subject: [PATCH 14/61] feat: allow document rejection in embeds (#1662) --- .../embed/embed-document-rejected.tsx | 33 ++++++++++++ .../embed/embed-document-signing-page.tsx | 51 ++++++++++++++++++- .../document-signing-reject-dialog.tsx | 15 ++++-- .../app/types/embed-document-sign-schema.ts | 1 + .../document/complete-document-with-token.ts | 8 +++ 5 files changed, 103 insertions(+), 5 deletions(-) create mode 100644 apps/remix/app/components/embed/embed-document-rejected.tsx diff --git a/apps/remix/app/components/embed/embed-document-rejected.tsx b/apps/remix/app/components/embed/embed-document-rejected.tsx new file mode 100644 index 000000000..911df8729 --- /dev/null +++ b/apps/remix/app/components/embed/embed-document-rejected.tsx @@ -0,0 +1,33 @@ +import { Trans } from '@lingui/react/macro'; +import { XCircle } from 'lucide-react'; + +export const EmbedDocumentRejected = () => { + return ( +
+
+
+ + +

+ Document Rejected +

+
+ +
+ You have rejected this document +
+ +

+ + The document owner has been notified of your decision. They may contact you with further + instructions if necessary. + +

+ +

+ No further action is required from you at this time. +

+
+
+ ); +}; diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index 980e80f7a..9f501e592 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -4,7 +4,13 @@ import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import type { DocumentMeta, TemplateMeta } from '@prisma/client'; -import { type DocumentData, type Field, FieldType, RecipientRole } from '@prisma/client'; +import { + type DocumentData, + type Field, + FieldType, + RecipientRole, + SigningStatus, +} from '@prisma/client'; import { LucideChevronDown, LucideChevronUp } from 'lucide-react'; import { useThrottleFn } from '@documenso/lib/client-only/hooks/use-throttle-fn'; @@ -29,9 +35,11 @@ import { injectCss } from '~/utils/css-vars'; import { ZSignDocumentEmbedDataSchema } from '../../types/embed-document-sign-schema'; import { useRequiredDocumentSigningContext } from '../general/document-signing/document-signing-provider'; import { DocumentSigningRecipientProvider } from '../general/document-signing/document-signing-recipient-provider'; +import { DocumentSigningRejectDialog } from '../general/document-signing/document-signing-reject-dialog'; import { EmbedClientLoading } from './embed-client-loading'; import { EmbedDocumentCompleted } from './embed-document-completed'; import { EmbedDocumentFields } from './embed-document-fields'; +import { EmbedDocumentRejected } from './embed-document-rejected'; export type EmbedSignDocumentClientPageProps = { token: string; @@ -74,6 +82,9 @@ export const EmbedSignDocumentClientPage = ({ const [hasFinishedInit, setHasFinishedInit] = useState(false); const [hasDocumentLoaded, setHasDocumentLoaded] = useState(false); const [hasCompletedDocument, setHasCompletedDocument] = useState(isCompleted); + const [hasRejectedDocument, setHasRejectedDocument] = useState( + recipient.signingStatus === SigningStatus.REJECTED, + ); const [selectedSignerId, setSelectedSignerId] = useState( allRecipients.length > 0 ? allRecipients[0].id : null, ); @@ -82,6 +93,8 @@ export const EmbedSignDocumentClientPage = ({ const [isNameLocked, setIsNameLocked] = useState(false); const [showPendingFieldTooltip, setShowPendingFieldTooltip] = useState(false); + const [allowDocumentRejection, setAllowDocumentRejection] = useState(false); + const selectedSigner = allRecipients.find((r) => r.id === selectedSignerId); const isAssistantMode = recipient.role === RecipientRole.ASSISTANT; @@ -160,6 +173,25 @@ export const EmbedSignDocumentClientPage = ({ } }; + const onDocumentRejected = (reason: string) => { + if (window.parent) { + window.parent.postMessage( + { + action: 'document-rejected', + data: { + token, + documentId, + recipientId: recipient.id, + reason, + }, + }, + '*', + ); + } + + setHasRejectedDocument(true); + }; + useLayoutEffect(() => { const hash = window.location.hash.slice(1); @@ -173,6 +205,7 @@ export const EmbedSignDocumentClientPage = ({ // Since a recipient can be provided a name we can lock it without requiring // a to be provided by the parent application, unlike direct templates. setIsNameLocked(!!data.lockName); + setAllowDocumentRejection(!!data.allowDocumentRejection); if (data.darkModeDisabled) { document.documentElement.classList.add('dark-mode-disabled'); @@ -207,6 +240,10 @@ export const EmbedSignDocumentClientPage = ({ } }, [hasFinishedInit, hasDocumentLoaded]); + if (hasRejectedDocument) { + return ; + } + if (hasCompletedDocument) { return ( {(!hasFinishedInit || !hasDocumentLoaded) && } + {allowDocumentRejection && ( +
+ +
+ )} +
{/* Viewer */}
@@ -419,7 +466,7 @@ export const EmbedSignDocumentClientPage = ({ ) : ( - -
+ + + diff --git a/apps/remix/app/root.tsx b/apps/remix/app/root.tsx index a741ee00a..fc7f13ffb 100644 --- a/apps/remix/app/root.tsx +++ b/apps/remix/app/root.tsx @@ -171,9 +171,11 @@ export default function App() { } export function ErrorBoundary({ error }: Route.ErrorBoundaryProps) { - console.error('[RootErrorBoundary]', error); - const errorCode = isRouteErrorResponse(error) ? error.status : 500; + if (errorCode !== 404) { + console.error('[RootErrorBoundary]', error); + } + return ; } diff --git a/packages/ui/primitives/pdf-viewer.tsx b/packages/ui/primitives/pdf-viewer.tsx index ceb3cc4b3..8ebc94bff 100644 --- a/packages/ui/primitives/pdf-viewer.tsx +++ b/packages/ui/primitives/pdf-viewer.tsx @@ -6,6 +6,7 @@ import { Trans } from '@lingui/react/macro'; import type { DocumentData } from '@prisma/client'; import { Loader } from 'lucide-react'; import { type PDFDocumentProxy, PasswordResponses } from 'pdfjs-dist'; +import pdfWorker from 'pdfjs-dist/build/pdf.worker.min?url'; import { Document as PDFDocument, Page as PDFPage, pdfjs } from 'react-pdf'; import 'react-pdf/dist/esm/Page/AnnotationLayer.css'; import 'react-pdf/dist/esm/Page/TextLayer.css'; @@ -23,10 +24,7 @@ export type LoadedPDFDocument = PDFDocumentProxy; /** * This imports the worker from the `pdfjs-dist` package. */ -pdfjs.GlobalWorkerOptions.workerSrc = new URL( - 'pdfjs-dist/build/pdf.worker.min.js', - import.meta.url, -).toString(); +pdfjs.GlobalWorkerOptions.workerSrc = pdfWorker; export type OnPDFViewerPageClick = (_event: { pageNumber: number; From cedd5e87b1bea7aa55177870fb363e3c37da4cae Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Tue, 25 Feb 2025 02:34:44 +1100 Subject: [PATCH 18/61] chore: update API documentation --- .../pages/developers/public-api/index.mdx | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/apps/documentation/pages/developers/public-api/index.mdx b/apps/documentation/pages/developers/public-api/index.mdx index f2745ee82..8c6bd24b5 100644 --- a/apps/documentation/pages/developers/public-api/index.mdx +++ b/apps/documentation/pages/developers/public-api/index.mdx @@ -21,14 +21,20 @@ Check out the [API V1 documentation](https://app.documenso.com/api/v1/openapi) f ## API V2 - Beta -Our new API V2 is currently in Beta. The new API features typed SDKs for TypeScript, Python and Go and example code for many more. +API V2 is currently beta, and will be subject to breaking changes - - NOW IN BETA: [API V2 Documentation](https://documen.so/api-v2-docs) - +Check out the [API V2 documentation](https://documen.so/api-v2-docs) for details about the API endpoints, request parameters, response formats, and authentication methods. + +Our new API V2 supports the following typed SDKs: + +- [TypeScript](https://github.com/documenso/sdk-typescript) +- [Python](https://github.com/documenso/sdk-python) +- [Go](https://github.com/documenso/sdk-go) 🚀 [V2 Announcement](https://documen.so/sdk-blog) +📖 [Documentation](https://documen.so/api-v2-docs) + 💬 [Leave Feedback](https://documen.so/sdk-feedback) 🔔 [Breaking Changes](https://documen.so/sdk-breaking) From 7e8955b89c19db5ae663c04b79f87475c84cce92 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Tue, 25 Feb 2025 15:14:45 +1100 Subject: [PATCH 19/61] fix: add posthog error monitor --- .../components/general/refresh-on-focus.tsx | 6 +- apps/remix/app/entry.client.tsx | 31 +++++---- apps/remix/app/entry.server.tsx | 10 +-- apps/remix/app/providers/posthog.tsx | 47 -------------- apps/remix/app/root.tsx | 25 ++++--- .../remix/app/routes/_redirects+/ingest.$.tsx | 2 + apps/remix/package.json | 6 +- package-lock.json | 65 ++++++++++++++++--- .../lib/client-only/hooks/use-analytics.ts | 15 +++++ packages/lib/translations/de/web.po | 18 ++--- packages/lib/translations/en/web.po | 18 ++--- packages/lib/translations/es/web.po | 18 ++--- packages/lib/translations/fr/web.po | 18 ++--- packages/lib/translations/it/web.po | 18 ++--- packages/lib/translations/pl/web.po | 18 ++--- .../lib/universal/upload/get-file.server.ts | 4 +- packages/lib/universal/upload/update-file.ts | 4 +- 17 files changed, 175 insertions(+), 148 deletions(-) delete mode 100644 apps/remix/app/providers/posthog.tsx diff --git a/apps/remix/app/components/general/refresh-on-focus.tsx b/apps/remix/app/components/general/refresh-on-focus.tsx index 775b722f3..a86bc65b6 100644 --- a/apps/remix/app/components/general/refresh-on-focus.tsx +++ b/apps/remix/app/components/general/refresh-on-focus.tsx @@ -3,10 +3,12 @@ import { useCallback, useEffect } from 'react'; import { useRevalidator } from 'react-router'; export const RefreshOnFocus = () => { - const { revalidate } = useRevalidator(); + const { revalidate, state } = useRevalidator(); const onFocus = useCallback(() => { - void revalidate(); + if (state === 'idle') { + void revalidate(); + } }, [revalidate]); useEffect(() => { diff --git a/apps/remix/app/entry.client.tsx b/apps/remix/app/entry.client.tsx index 42996b5ec..6878e9984 100644 --- a/apps/remix/app/entry.client.tsx +++ b/apps/remix/app/entry.client.tsx @@ -1,21 +1,30 @@ -import { StrictMode, startTransition } from 'react'; +import { StrictMode, startTransition, useEffect } from 'react'; import { i18n } from '@lingui/core'; import { detect, fromHtmlTag } from '@lingui/detect-locale'; import { I18nProvider } from '@lingui/react'; +import posthog from 'posthog-js'; import { hydrateRoot } from 'react-dom/client'; import { HydratedRouter } from 'react-router/dom'; -import { Theme, ThemeProvider } from 'remix-themes'; -import { match } from 'ts-pattern'; +import { extractPostHogConfig } from '@documenso/lib/constants/feature-flags'; import { dynamicActivate } from '@documenso/lib/utils/i18n'; -async function main() { - const theme = match(document.documentElement.getAttribute('data-theme')) - .with('dark', () => Theme.DARK) - .with('light', () => Theme.LIGHT) - .otherwise(() => null); +function PosthogInit() { + const postHogConfig = extractPostHogConfig(); + useEffect(() => { + if (postHogConfig) { + posthog.init(postHogConfig.key, { + api_host: postHogConfig.host, + }); + } + }, []); + + return null; +} + +async function main() { const locale = detect(fromHtmlTag('lang')) || 'en'; await dynamicActivate(locale); @@ -25,10 +34,10 @@ async function main() { document, - - - + + + , ); }); diff --git a/apps/remix/app/entry.server.tsx b/apps/remix/app/entry.server.tsx index 6250bff85..6caeba746 100644 --- a/apps/remix/app/entry.server.tsx +++ b/apps/remix/app/entry.server.tsx @@ -7,13 +7,11 @@ import type { RenderToPipeableStreamOptions } from 'react-dom/server'; import { renderToPipeableStream } from 'react-dom/server'; import type { AppLoadContext, EntryContext } from 'react-router'; import { ServerRouter } from 'react-router'; -import { ThemeProvider } from 'remix-themes'; import { APP_I18N_OPTIONS } from '@documenso/lib/constants/i18n'; import { dynamicActivate, extractLocaleData } from '@documenso/lib/utils/i18n'; import { langCookie } from './storage/lang-cookie.server'; -import { themeSessionResolver } from './storage/theme-session.server'; export const streamTimeout = 5_000; @@ -32,10 +30,6 @@ export default async function handleRequest( await dynamicActivate(language); - const { getTheme } = await themeSessionResolver(request); - - const theme = getTheme(); - return new Promise((resolve, reject) => { let shellRendered = false; const userAgent = request.headers.get('user-agent'); @@ -47,9 +41,7 @@ export default async function handleRequest( const { pipe, abort } = renderToPipeableStream( - - - + , { [readyOption]() { diff --git a/apps/remix/app/providers/posthog.tsx b/apps/remix/app/providers/posthog.tsx deleted file mode 100644 index 1da9dbf57..000000000 --- a/apps/remix/app/providers/posthog.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import { useEffect } from 'react'; - -import posthog from 'posthog-js'; -import { useLocation, useSearchParams } from 'react-router'; - -import { extractPostHogConfig } from '@documenso/lib/constants/feature-flags'; - -export function PostHogPageview() { - const postHogConfig = extractPostHogConfig(); - - const { pathname } = useLocation(); - const [searchParams] = useSearchParams(); - - // const { sessionData } = useOptionalSession(); - // const user = sessionData?.user; - - if (typeof window !== 'undefined' && postHogConfig) { - posthog.init(postHogConfig.key, { - api_host: postHogConfig.host, - disable_session_recording: true, - // loaded: () => { - // if (user) { - // posthog.identify(user.email ?? user.id.toString()); - // } else { - // posthog.reset(); - // } - // }, - custom_campaign_params: ['src'], - }); - } - - useEffect(() => { - if (!postHogConfig || !pathname) { - return; - } - - let url = window.origin + pathname; - if (searchParams && searchParams.toString()) { - url = url + `?${searchParams.toString()}`; - } - posthog.capture('$pageview', { - $current_url: url, - }); - }, [pathname, searchParams, postHogConfig]); - - return null; -} diff --git a/apps/remix/app/root.tsx b/apps/remix/app/root.tsx index fc7f13ffb..8e72dee2d 100644 --- a/apps/remix/app/root.tsx +++ b/apps/remix/app/root.tsx @@ -1,4 +1,4 @@ -import { Suspense, useEffect } from 'react'; +import { useEffect } from 'react'; import Plausible from 'plausible-tracker'; import { @@ -12,7 +12,7 @@ import { useLoaderData, useLocation, } from 'react-router'; -import { PreventFlashOnWrongTheme, useTheme } from 'remix-themes'; +import { PreventFlashOnWrongTheme, ThemeProvider, useTheme } from 'remix-themes'; import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; import { SessionProvider } from '@documenso/lib/client-only/providers/session'; @@ -28,7 +28,6 @@ import type { Route } from './+types/root'; import stylesheet from './app.css?url'; import { GenericErrorLayout } from './components/general/generic-error-layout'; import { RefreshOnFocus } from './components/general/refresh-on-focus'; -import { PostHogPageview } from './providers/posthog'; import { langCookie } from './storage/lang-cookie.server'; import { themeSessionResolver } from './storage/theme-session.server'; import { appMetaTags } from './utils/meta'; @@ -106,9 +105,7 @@ export async function loader({ request }: Route.LoaderArgs) { } export function Layout({ children }: { children: React.ReactNode }) { - const { publicEnv, lang, session, ...data } = useLoaderData() || {}; - - const [theme] = useTheme(); + const { theme } = useLoaderData() || {}; const location = useLocation(); @@ -118,6 +115,18 @@ export function Layout({ children }: { children: React.ReactNode }) { } }, [location.pathname]); + return ( + + {children} + + ); +} + +export function LayoutContent({ children }: { children: React.ReactNode }) { + const { publicEnv, session, lang, ...data } = useLoaderData() || {}; + + const [theme] = useTheme(); + return ( @@ -133,10 +142,6 @@ export function Layout({ children }: { children: React.ReactNode }) { - - - - {/* Fix: https://stackoverflow.com/questions/21147149/flash-of-unstyled-content-fouc-in-firefox-only-is-ff-slow-renderer */} diff --git a/apps/remix/app/routes/_redirects+/ingest.$.tsx b/apps/remix/app/routes/_redirects+/ingest.$.tsx index bb5da6284..67784a5e4 100644 --- a/apps/remix/app/routes/_redirects+/ingest.$.tsx +++ b/apps/remix/app/routes/_redirects+/ingest.$.tsx @@ -23,6 +23,8 @@ const posthogProxy = async (request: Request) => { method: request.method, headers, body: request.body, + // @ts-expect-error - Not really sure about this + duplex: 'half', }); return new Response(response.body, { diff --git a/apps/remix/package.json b/apps/remix/package.json index 4ab4ed4cc..91afa32de 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -48,8 +48,8 @@ "luxon": "^3.4.0", "papaparse": "^5.4.1", "plausible-tracker": "^0.3.9", - "posthog-js": "^1.75.3", - "posthog-node": "^3.1.1", + "posthog-js": "^1.223.3", + "posthog-node": "^4.7.0", "react": "^18", "react-call": "^1.3.0", "react-dom": "^18", @@ -99,4 +99,4 @@ "vite-plugin-babel-macros": "^1.0.6", "vite-tsconfig-paths": "^5.1.4" } -} \ No newline at end of file +} diff --git a/package-lock.json b/package-lock.json index 4096e51d1..fd07c72b7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -131,8 +131,8 @@ "luxon": "^3.4.0", "papaparse": "^5.4.1", "plausible-tracker": "^0.3.9", - "posthog-js": "^1.75.3", - "posthog-node": "^3.1.1", + "posthog-js": "^1.223.3", + "posthog-node": "^4.7.0", "react": "^18", "react-call": "^1.3.0", "react-dom": "^18", @@ -849,6 +849,17 @@ "win32" ] }, + "apps/remix/node_modules/axios": { + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.15.6", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, "apps/remix/node_modules/esbuild": { "version": "0.24.2", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.2.tgz", @@ -890,6 +901,18 @@ "@esbuild/win32-x64": "0.24.2" } }, + "apps/remix/node_modules/posthog-node": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-4.7.0.tgz", + "integrity": "sha512-RgdUKSW8MfMOkjUa8cYVqWndNjPePNuuxlGbrZC6z1WRBsVc6TdGl8caidmC10RW8mu/BOfmrGbP4cRTo2jARg==", + "license": "MIT", + "dependencies": { + "axios": "^1.7.4" + }, + "engines": { + "node": ">=15.0.0" + } + }, "apps/remix/node_modules/rollup": { "version": "4.34.5", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.34.5.tgz", @@ -9751,6 +9774,16 @@ "win32" ] }, + "node_modules/@rrweb/types": { + "version": "2.0.0-alpha.17", + "resolved": "https://registry.npmjs.org/@rrweb/types/-/types-2.0.0-alpha.17.tgz", + "integrity": "sha512-AfDTVUuCyCaIG0lTSqYtrZqJX39ZEYzs4fYKnexhQ+id+kbZIpIJtaut5cto6dWZbB3SEe4fW0o90Po3LvTmfg==", + "license": "MIT", + "peer": true, + "dependencies": { + "rrweb-snapshot": "^2.0.0-alpha.17" + } + }, "node_modules/@rtsao/scc": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", @@ -31027,21 +31060,24 @@ "license": "MIT" }, "node_modules/posthog-js": { - "version": "1.215.3", - "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.215.3.tgz", - "integrity": "sha512-vTk8/gyjbKP7EbDxWzo/GBCK7Ok7M6RTqEWOzRgIxCPf/KA5faFi5z1T4cRR1oPgcDqLeB1ZGa04Za/cPEHxgA==", + "version": "1.223.3", + "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.223.3.tgz", + "integrity": "sha512-ZQTc17M21IzkQmECJa2Xjont4tZrvIn252uGT3sTfmahTqZoW4j+kBj4eOJt9SNR6hOheFNkg7MSiI/rA6FaDA==", "license": "MIT", "dependencies": { "core-js": "^3.38.1", "fflate": "^0.4.8", "preact": "^10.19.3", "web-vitals": "^4.2.0" + }, + "peerDependencies": { + "@rrweb/types": "2.0.0-alpha.17" } }, "node_modules/posthog-js/node_modules/preact": { - "version": "10.25.4", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.25.4.tgz", - "integrity": "sha512-jLdZDb+Q+odkHJ+MpW/9U5cODzqnB+fy2EiHSZES7ldV5LK7yjlVzTp7R8Xy6W6y75kfK8iWYtFVH7lvjwrCMA==", + "version": "10.26.2", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.26.2.tgz", + "integrity": "sha512-0gNmv4qpS9HaN3+40CLBAnKe0ZfyE4ZWo5xKlC1rVrr0ckkEvJvAQqKaHANdFKsGstoxrY4AItZ7kZSGVoVjgg==", "license": "MIT", "funding": { "type": "opencollective", @@ -31052,6 +31088,7 @@ "version": "3.6.3", "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-3.6.3.tgz", "integrity": "sha512-JB+ei0LkwE+rKHyW5z79Nd1jUaGxU6TvkfjFqY9vQaHxU5aU8dRl0UUaEmZdZbHwjp3WmXCBQQRNyimwbNQfCw==", + "dev": true, "license": "MIT", "dependencies": { "axios": "^1.6.2", @@ -31065,6 +31102,7 @@ "version": "1.7.9", "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "dev": true, "license": "MIT", "dependencies": { "follow-redirects": "^1.15.6", @@ -33884,6 +33922,16 @@ "fsevents": "~2.3.2" } }, + "node_modules/rrweb-snapshot": { + "version": "2.0.0-alpha.18", + "resolved": "https://registry.npmjs.org/rrweb-snapshot/-/rrweb-snapshot-2.0.0-alpha.18.tgz", + "integrity": "sha512-hBHZL/NfgQX6wO1D9mpwqFu1NJPpim+moIcKhFEjVTZVRUfCln+LOugRc4teVTCISYHN8Cw5e2iNTWCSm+SkoA==", + "license": "MIT", + "peer": true, + "dependencies": { + "postcss": "^8.4.38" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -33921,6 +33969,7 @@ "version": "0.8.14", "resolved": "https://registry.npmjs.org/rusha/-/rusha-0.8.14.tgz", "integrity": "sha512-cLgakCUf6PedEu15t8kbsjnwIFFR2D4RfL+W3iWFJ4iac7z4B0ZI8fxy4R3J956kAI68HclCFGL8MPoUVC3qVA==", + "dev": true, "license": "MIT" }, "node_modules/rw": { diff --git a/packages/lib/client-only/hooks/use-analytics.ts b/packages/lib/client-only/hooks/use-analytics.ts index e6516a075..92a92c40c 100644 --- a/packages/lib/client-only/hooks/use-analytics.ts +++ b/packages/lib/client-only/hooks/use-analytics.ts @@ -20,6 +20,20 @@ export function useAnalytics() { posthog.capture(event, properties); }; + /** + * Capture an analytic event. + * + * @param error The error to capture. + * @param properties Properties to attach to the event. + */ + const captureException = (error: Error, properties?: Record) => { + if (!isPostHogEnabled) { + return; + } + + posthog.captureException(error, properties); + }; + /** * Start the session recording. * @@ -53,6 +67,7 @@ export function useAnalytics() { return { capture, + captureException, startSessionRecording, stopSessionRecording, }; diff --git a/packages/lib/translations/de/web.po b/packages/lib/translations/de/web.po index bb95df68b..84e7f44eb 100644 --- a/packages/lib/translations/de/web.po +++ b/packages/lib/translations/de/web.po @@ -998,7 +998,7 @@ msgstr "Ein Fehler ist aufgetreten, während der Benutzer aktiviert wurde." msgid "An error occurred while loading team members. Please try again later." msgstr "Ein Fehler ist aufgetreten, während die Teammitglieder geladen wurden. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "Ein Fehler ist beim Laden des Dokuments aufgetreten." @@ -1410,7 +1410,7 @@ msgstr "" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2734,7 +2734,7 @@ msgstr "Geben Sie hier Ihren Text ein" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Fehler" @@ -3268,7 +3268,7 @@ msgid "Load older activity" msgstr "Ältere Aktivitäten laden" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Lade Dokument..." @@ -3740,7 +3740,7 @@ msgid "Page {0} of {1}" msgstr "Seite {0} von {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Seite {0} von {numPages}" @@ -4009,8 +4009,8 @@ msgstr "Bitte versuchen Sie es erneut und stellen Sie sicher, dass Sie die korre msgid "Please try again later." msgstr "Bitte versuchen Sie es später noch einmal." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Bitte versuchen Sie es erneut oder kontaktieren Sie unseren Support." @@ -4906,8 +4906,8 @@ msgstr "Etwas ist schiefgelaufen beim Versuch, das Eigentum des Teams <0>{0} msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Etwas ist schiefgelaufen beim Versuch, Ihre E-Mail-Adresse für <0>{0} zu bestätigen. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Beim Laden des Dokuments ist ein Fehler aufgetreten." diff --git a/packages/lib/translations/en/web.po b/packages/lib/translations/en/web.po index 0fdb1ad16..241c641be 100644 --- a/packages/lib/translations/en/web.po +++ b/packages/lib/translations/en/web.po @@ -993,7 +993,7 @@ msgstr "An error occurred while enabling the user." msgid "An error occurred while loading team members. Please try again later." msgstr "An error occurred while loading team members. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "An error occurred while loading the document." @@ -1405,7 +1405,7 @@ msgstr "Can prepare" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2729,7 +2729,7 @@ msgstr "Enter your text here" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Error" @@ -3263,7 +3263,7 @@ msgid "Load older activity" msgstr "Load older activity" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Loading document..." @@ -3735,7 +3735,7 @@ msgid "Page {0} of {1}" msgstr "Page {0} of {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Page {0} of {numPages}" @@ -4004,8 +4004,8 @@ msgstr "Please try again and make sure you enter the correct email address." msgid "Please try again later." msgstr "Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Please try again or contact our support." @@ -4901,8 +4901,8 @@ msgstr "Something went wrong while attempting to transfer the ownership of team msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Something went wrong while loading the document." diff --git a/packages/lib/translations/es/web.po b/packages/lib/translations/es/web.po index d2d054f59..37833e474 100644 --- a/packages/lib/translations/es/web.po +++ b/packages/lib/translations/es/web.po @@ -998,7 +998,7 @@ msgstr "Se produjo un error al habilitar al usuario." msgid "An error occurred while loading team members. Please try again later." msgstr "Ocurrió un error al cargar los miembros del equipo. Por favor intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "Se produjo un error al cargar el documento." @@ -1410,7 +1410,7 @@ msgstr "" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2734,7 +2734,7 @@ msgstr "Ingresa tu texto aquí" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Error" @@ -3268,7 +3268,7 @@ msgid "Load older activity" msgstr "Cargar actividad anterior" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Cargando documento..." @@ -3740,7 +3740,7 @@ msgid "Page {0} of {1}" msgstr "Página {0} de {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Página {0} de {numPages}" @@ -4009,8 +4009,8 @@ msgstr "Por favor, intenta de nuevo y asegúrate de ingresar la dirección de co msgid "Please try again later." msgstr "Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Por favor, inténtalo de nuevo o contacta a nuestro soporte." @@ -4906,8 +4906,8 @@ msgstr "Algo salió mal al intentar transferir la propiedad del equipo <0>{0}{0}. Please try again later." msgstr "Algo salió mal al intentar verificar tu dirección de correo electrónico para <0>{0}. Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Algo salió mal al cargar el documento." diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index b859b088c..e699278c6 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -998,7 +998,7 @@ msgstr "Une erreur est survenue lors de l'activation de l'utilisateur." msgid "An error occurred while loading team members. Please try again later." msgstr "Une erreur est survenue lors du chargement des membres de l'équipe. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "Une erreur est survenue lors du chargement du document." @@ -1410,7 +1410,7 @@ msgstr "" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2734,7 +2734,7 @@ msgstr "Entrez votre texte ici" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Erreur" @@ -3268,7 +3268,7 @@ msgid "Load older activity" msgstr "Charger l'activité plus ancienne" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Chargement du document..." @@ -3740,7 +3740,7 @@ msgid "Page {0} of {1}" msgstr "Page {0} sur {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Page {0} sur {numPages}" @@ -4009,8 +4009,8 @@ msgstr "Veuillez réessayer et assurez-vous d'entrer la bonne adresse email." msgid "Please try again later." msgstr "Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Veuillez réessayer ou contacter notre support." @@ -4906,8 +4906,8 @@ msgstr "Quelque chose a mal tourné lors de la tentative de transfert de la prop msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Quelque chose a mal tourné lors de la tentative de vérification de votre adresse e-mail pour <0>{0}. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Une erreur s'est produite lors du chargement du document." diff --git a/packages/lib/translations/it/web.po b/packages/lib/translations/it/web.po index ddc0e58c1..589f66339 100644 --- a/packages/lib/translations/it/web.po +++ b/packages/lib/translations/it/web.po @@ -998,7 +998,7 @@ msgstr "Si è verificato un errore durante l'abilitazione dell'utente." msgid "An error occurred while loading team members. Please try again later." msgstr "Si è verificato un errore durante il caricamento dei membri del team. Per favore riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "Si è verificato un errore durante il caricamento del documento." @@ -1410,7 +1410,7 @@ msgstr "" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2734,7 +2734,7 @@ msgstr "Inserisci il tuo testo qui" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Errore" @@ -3268,7 +3268,7 @@ msgid "Load older activity" msgstr "Carica attività precedente" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Caricamento del documento..." @@ -3740,7 +3740,7 @@ msgid "Page {0} of {1}" msgstr "Pagina {0} di {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Pagina {0} di {numPages}" @@ -4009,8 +4009,8 @@ msgstr "Si prega di riprovare assicurandosi di inserire l'indirizzo email corret msgid "Please try again later." msgstr "Si prega di riprovare più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Per favore, riprova o contatta il nostro supporto." @@ -4906,8 +4906,8 @@ msgstr "Qualcosa è andato storto durante il tentativo di trasferimento della pr msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Qualcosa è andato storto durante il tentativo di verifica del tuo indirizzo e-mail per <0>{0}. Riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Qualcosa è andato storto durante il caricamento del documento." diff --git a/packages/lib/translations/pl/web.po b/packages/lib/translations/pl/web.po index 1f5fbac15..a161f1ddf 100644 --- a/packages/lib/translations/pl/web.po +++ b/packages/lib/translations/pl/web.po @@ -998,7 +998,7 @@ msgstr "Wystąpił błąd podczas włączania użytkownika." msgid "An error occurred while loading team members. Please try again later." msgstr "Wystąpił błąd podczas ładowania członków zespołu. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:169 +#: packages/ui/primitives/pdf-viewer.tsx:167 msgid "An error occurred while loading the document." msgstr "Wystąpił błąd podczas ładowania dokumentu." @@ -1410,7 +1410,7 @@ msgstr "" #: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 #: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 #: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:235 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 #: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 #: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 @@ -2734,7 +2734,7 @@ msgstr "Wprowadź swój tekst tutaj" #: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 #: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:168 +#: packages/ui/primitives/pdf-viewer.tsx:166 #: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 msgid "Error" msgstr "Błąd" @@ -3268,7 +3268,7 @@ msgid "Load older activity" msgstr "Załaduj starszą aktywność" #: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:46 +#: packages/ui/primitives/pdf-viewer.tsx:44 #: packages/ui/primitives/lazy-pdf-viewer.tsx:12 msgid "Loading document..." msgstr "Ładowanie dokumentu..." @@ -3740,7 +3740,7 @@ msgid "Page {0} of {1}" msgstr "Strona {0} z {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:261 +#: packages/ui/primitives/pdf-viewer.tsx:259 msgid "Page {0} of {numPages}" msgstr "Strona {0} z {numPages}" @@ -4009,8 +4009,8 @@ msgstr "Spróbuj ponownie i upewnij się, że wprowadzasz poprawny adres email." msgid "Please try again later." msgstr "Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:225 -#: packages/ui/primitives/pdf-viewer.tsx:240 +#: packages/ui/primitives/pdf-viewer.tsx:223 +#: packages/ui/primitives/pdf-viewer.tsx:238 msgid "Please try again or contact our support." msgstr "Spróbuj ponownie lub skontaktuj się z naszym wsparciem." @@ -4906,8 +4906,8 @@ msgstr "Coś poszło nie tak podczas próby przeniesienia własności zespołu < msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Coś poszło nie tak podczas próby weryfikacji adresu e-mail dla <0>{0}. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:222 -#: packages/ui/primitives/pdf-viewer.tsx:237 +#: packages/ui/primitives/pdf-viewer.tsx:220 +#: packages/ui/primitives/pdf-viewer.tsx:235 msgid "Something went wrong while loading the document." msgstr "Coś poszło nie tak podczas ładowania dokumentu." diff --git a/packages/lib/universal/upload/get-file.server.ts b/packages/lib/universal/upload/get-file.server.ts index 7ae8be3bc..56319754c 100644 --- a/packages/lib/universal/upload/get-file.server.ts +++ b/packages/lib/universal/upload/get-file.server.ts @@ -2,6 +2,8 @@ import { DocumentDataType } from '@prisma/client'; import { base64 } from '@scure/base'; import { match } from 'ts-pattern'; +import { getPresignGetUrl } from './server-actions'; + export type GetFileOptions = { type: DocumentDataType; data: string; @@ -30,8 +32,6 @@ const getFileFromBytes64 = (data: string) => { }; const getFileFromS3 = async (key: string) => { - const { getPresignGetUrl } = await import('./server-actions'); - const { url } = await getPresignGetUrl(key); const response = await fetch(url, { diff --git a/packages/lib/universal/upload/update-file.ts b/packages/lib/universal/upload/update-file.ts index 5cdce449e..d9a9bac3c 100644 --- a/packages/lib/universal/upload/update-file.ts +++ b/packages/lib/universal/upload/update-file.ts @@ -2,6 +2,8 @@ import { DocumentDataType } from '@prisma/client'; import { base64 } from '@scure/base'; import { match } from 'ts-pattern'; +import { getAbsolutePresignPostUrl } from './server-actions'; + export type UpdateFileOptions = { type: DocumentDataType; oldData: string; @@ -37,8 +39,6 @@ const updateFileWithBytes64 = (data: string) => { }; const updateFileWithS3 = async (key: string, data: string) => { - const { getAbsolutePresignPostUrl } = await import('./server-actions'); - const { url } = await getAbsolutePresignPostUrl(key); const response = await fetch(url, { From c1c7cfaf8b072d2fa5c42822de675101fd0bbe35 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Tue, 25 Feb 2025 16:37:36 +1100 Subject: [PATCH 20/61] chore: cleanup --- .github/workflows/e2e-tests.yml | 2 +- .../routes/_unauthenticated+/share.$slug.tsx | 21 +++++++++--------- packages/api/hono.ts | 1 - packages/api/v1/middleware/authenticated.ts | 2 +- .../lib/utils/handle-oauth-callback-url.ts | 3 +-- packages/lib/jobs/client/inngest.ts | 22 ------------------- .../webhooks/zapier/list-documents.ts | 2 ++ .../server-only/webhooks/zapier/subscribe.ts | 2 ++ .../webhooks/zapier/unsubscribe.ts | 2 ++ 9 files changed, 19 insertions(+), 38 deletions(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 4673dfca1..9d935d83f 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -1,7 +1,7 @@ name: Playwright Tests on: push: - branches: ['main'] + branches: ['main', 'feat/rr7'] pull_request: branches: ['main'] jobs: diff --git a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx index f45f496af..e82ab6676 100644 --- a/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx +++ b/apps/remix/app/routes/_unauthenticated+/share.$slug.tsx @@ -4,42 +4,41 @@ import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import type { Route } from './+types/share.$slug'; -// Todo: (RR7) Test on stg export function meta({ params: { slug } }: Route.MetaArgs) { return [ { title: 'Documenso - Share' }, { description: 'I just signed a document in style with Documenso!' }, { property: 'og:title', - title: 'Documenso - Join the open source signing revolution', + content: 'Documenso - Join the open source signing revolution', }, { property: 'og:description', - description: 'I just signed with Documenso!', + content: 'I just signed with Documenso!', }, { property: 'og:type', - type: 'website', + content: 'website', }, { - property: 'og:images', - images: [`${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`], + property: 'og:image', + content: `${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`, }, { name: 'twitter:site', - site: '@documenso', + content: '@documenso', }, { name: 'twitter:card', - card: 'summary_large_image', + content: 'summary_large_image', }, { - name: 'twitter:images', - images: [`${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`], + name: 'twitter:image', + content: `${NEXT_PUBLIC_WEBAPP_URL()}/share/${slug}/opengraph`, }, { name: 'twitter:description', - description: 'I just signed with Documenso!', + content: 'I just signed with Documenso!', }, ]; } diff --git a/packages/api/hono.ts b/packages/api/hono.ts index bd7aedee8..6f66f7bd6 100644 --- a/packages/api/hono.ts +++ b/packages/api/hono.ts @@ -19,7 +19,6 @@ tsRestHonoApp .get('/me', async (c) => testCredentialsHandler(c.req.raw)); // Zapier. Todo: (RR7) Check methods. Are these get/post/update requests? -// Todo: (RR7) Is there really no validations? tsRestHonoApp .all('/zapier/list-documents', async (c) => listDocumentsHandler(c.req.raw)) .all('/zapier/subscribe', async (c) => subscribeHandler(c.req.raw)) diff --git a/packages/api/v1/middleware/authenticated.ts b/packages/api/v1/middleware/authenticated.ts index ba7fb85a5..a3129de4c 100644 --- a/packages/api/v1/middleware/authenticated.ts +++ b/packages/api/v1/middleware/authenticated.ts @@ -52,7 +52,7 @@ export const authenticatedMiddleware = < } const metadata: ApiRequestMetadata = { - requestMetadata: extractRequestMetadata(request), // Todo: (RR7) Test + requestMetadata: extractRequestMetadata(request), source: 'apiV1', auth: 'api', auditUser: { diff --git a/packages/auth/server/lib/utils/handle-oauth-callback-url.ts b/packages/auth/server/lib/utils/handle-oauth-callback-url.ts index eb8aa682d..f534c6b66 100644 --- a/packages/auth/server/lib/utils/handle-oauth-callback-url.ts +++ b/packages/auth/server/lib/utils/handle-oauth-callback-url.ts @@ -146,8 +146,7 @@ export const handleOAuthCallbackUrl = async (options: HandleOAuthCallbackUrlOpti data: { emailVerified: new Date(), password: null, - // Todo: (RR7) Check this - // Todo: (RR7) Not required after we setup password specific accounts. + // Todo: (RR7) Will need to update the "password" account after the migration. }, }); } diff --git a/packages/lib/jobs/client/inngest.ts b/packages/lib/jobs/client/inngest.ts index 0da2ed374..95f5d5a6e 100644 --- a/packages/lib/jobs/client/inngest.ts +++ b/packages/lib/jobs/client/inngest.ts @@ -71,28 +71,6 @@ export class InngestJobProvider extends BaseJobProvider { }); } - // public getApiHandler() { - // const handler = createPagesRoute({ - // client: this._client, - // functions: this._functions, - // }); - - // return async (req: NextApiRequest, res: NextApiResponse) => { - // // Since body-parser is disabled for this route we need to patch in the parsed body - // if (req.headers['content-type'] === 'application/json') { - // Object.assign(req, { - // body: await json(req), - // }); - // } - - // // eslint-disable-next-line @typescript-eslint/consistent-type-assertions - // const nextReq = req as unknown as NextRequest; - - // return await handler(nextReq, res); - // }; - // } - - // Todo: (RR7) Do we need to handle the above? public getApiHandler() { return async (context: HonoContext) => { const handler = createHonoPagesRoute({ diff --git a/packages/lib/server-only/webhooks/zapier/list-documents.ts b/packages/lib/server-only/webhooks/zapier/list-documents.ts index f0c4380da..8835b6581 100644 --- a/packages/lib/server-only/webhooks/zapier/list-documents.ts +++ b/packages/lib/server-only/webhooks/zapier/list-documents.ts @@ -64,6 +64,8 @@ export const listDocumentsHandler = async (req: Request) => { return Response.json([]); } catch (err) { + console.error(err); + return Response.json( { message: 'Internal Server Error', diff --git a/packages/lib/server-only/webhooks/zapier/subscribe.ts b/packages/lib/server-only/webhooks/zapier/subscribe.ts index 6629b5f8c..a72ad4738 100644 --- a/packages/lib/server-only/webhooks/zapier/subscribe.ts +++ b/packages/lib/server-only/webhooks/zapier/subscribe.ts @@ -27,6 +27,8 @@ export const subscribeHandler = async (req: Request) => { return Response.json(createdWebhook); } catch (err) { + console.error(err); + return Response.json( { message: 'Internal Server Error', diff --git a/packages/lib/server-only/webhooks/zapier/unsubscribe.ts b/packages/lib/server-only/webhooks/zapier/unsubscribe.ts index 6e26a2c15..4772c164b 100644 --- a/packages/lib/server-only/webhooks/zapier/unsubscribe.ts +++ b/packages/lib/server-only/webhooks/zapier/unsubscribe.ts @@ -24,6 +24,8 @@ export const unsubscribeHandler = async (req: Request) => { return Response.json(deletedWebhook); } catch (err) { + console.error(err); + return Response.json( { message: 'Internal Server Error', From 5e69665e000956f503b7ce462a39b3fd8ed50329 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Tue, 25 Feb 2025 16:52:10 +1100 Subject: [PATCH 21/61] fix: rr7 github build --- apps/remix/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/remix/package.json b/apps/remix/package.json index 91afa32de..689c31ee7 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -3,7 +3,7 @@ "private": true, "type": "module", "scripts": { - "build": "sh .bin/build.sh", + "build": "bash .bin/build.sh", "build:app": "npm run typecheck && cross-env NODE_ENV=production react-router build", "build:server": "cross-env NODE_ENV=production rollup -c rollup.config.mjs", "dev": "npm run with:env -- react-router dev", @@ -99,4 +99,4 @@ "vite-plugin-babel-macros": "^1.0.6", "vite-tsconfig-paths": "^5.1.4" } -} +} \ No newline at end of file From 3328074f515e677e6a04534ff386ec6ebc9b52d9 Mon Sep 17 00:00:00 2001 From: Mythie Date: Tue, 25 Feb 2025 07:54:28 +1100 Subject: [PATCH 22/61] fix: early adopters can use platform features --- .../embed-direct-template-client-page.tsx | 6 +- .../embed/embed-document-signing-page.tsx | 6 +- apps/remix/app/routes/embed+/direct.$url.tsx | 11 +++- apps/remix/app/routes/embed+/sign.$url.tsx | 11 +++- .../ee/server-only/util/is-community-plan.ts | 56 +++++++++++++++++++ 5 files changed, 80 insertions(+), 10 deletions(-) create mode 100644 packages/ee/server-only/util/is-community-plan.ts diff --git a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx index 47832c7af..6927d9b58 100644 --- a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx +++ b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx @@ -47,7 +47,7 @@ export type EmbedDirectTemplateClientPageProps = { fields: Field[]; metadata?: DocumentMeta | TemplateMeta | null; hidePoweredBy?: boolean; - isPlatformOrEnterprise?: boolean; + allowWhiteLabelling?: boolean; }; export const EmbedDirectTemplateClientPage = ({ @@ -58,7 +58,7 @@ export const EmbedDirectTemplateClientPage = ({ fields, metadata, hidePoweredBy = false, - isPlatformOrEnterprise = false, + allowWhiteLabelling = false, }: EmbedDirectTemplateClientPageProps) => { const { _ } = useLingui(); const { toast } = useToast(); @@ -286,7 +286,7 @@ export const EmbedDirectTemplateClientPage = ({ document.documentElement.classList.add('dark-mode-disabled'); } - if (isPlatformOrEnterprise) { + if (allowWhiteLabelling) { injectCss({ css: data.css, cssVars: data.cssVars, diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index 9f501e592..f158cd4a8 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -50,7 +50,7 @@ export type EmbedSignDocumentClientPageProps = { metadata?: DocumentMeta | TemplateMeta | null; isCompleted?: boolean; hidePoweredBy?: boolean; - isPlatformOrEnterprise?: boolean; + allowWhitelabelling?: boolean; allRecipients?: RecipientWithFields[]; }; @@ -63,7 +63,7 @@ export const EmbedSignDocumentClientPage = ({ metadata, isCompleted, hidePoweredBy = false, - isPlatformOrEnterprise = false, + allowWhitelabelling = false, allRecipients = [], }: EmbedSignDocumentClientPageProps) => { const { _ } = useLingui(); @@ -211,7 +211,7 @@ export const EmbedSignDocumentClientPage = ({ document.documentElement.classList.add('dark-mode-disabled'); } - if (isPlatformOrEnterprise) { + if (allowWhitelabelling) { injectCss({ css: data.css, cssVars: data.cssVars, diff --git a/apps/remix/app/routes/embed+/direct.$url.tsx b/apps/remix/app/routes/embed+/direct.$url.tsx index ee75ce16a..f5ac53f8f 100644 --- a/apps/remix/app/routes/embed+/direct.$url.tsx +++ b/apps/remix/app/routes/embed+/direct.$url.tsx @@ -2,6 +2,7 @@ import { data } from 'react-router'; import { match } from 'ts-pattern'; import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; +import { isCommunityPlan as isUserCommunityPlan } from '@documenso/ee/server-only/util/is-community-plan'; import { isUserEnterprise } from '@documenso/ee/server-only/util/is-document-enterprise'; import { isDocumentPlatform } from '@documenso/ee/server-only/util/is-document-platform'; import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; @@ -55,12 +56,16 @@ export async function loader({ params, request }: Route.LoaderArgs) { documentAuth: template.authOptions, }); - const [isPlatformDocument, isEnterpriseDocument] = await Promise.all([ + const [isPlatformDocument, isEnterpriseDocument, isCommunityPlan] = await Promise.all([ isDocumentPlatform(template), isUserEnterprise({ userId: template.userId, teamId: template.teamId ?? undefined, }), + isUserCommunityPlan({ + userId: template.userId, + teamId: template.teamId ?? undefined, + }), ]); const isAccessAuthValid = match(derivedRecipientAccessAuth) @@ -108,6 +113,7 @@ export async function loader({ params, request }: Route.LoaderArgs) { hidePoweredBy, isPlatformDocument, isEnterpriseDocument, + isCommunityPlan, }); } @@ -121,6 +127,7 @@ export default function EmbedDirectTemplatePage() { hidePoweredBy, isPlatformDocument, isEnterpriseDocument, + isCommunityPlan, } = useSuperLoaderData(); return ( @@ -139,7 +146,7 @@ export default function EmbedDirectTemplatePage() { fields={fields} metadata={template.templateMeta} hidePoweredBy={isPlatformDocument || isEnterpriseDocument || hidePoweredBy} - isPlatformOrEnterprise={isPlatformDocument || isEnterpriseDocument} + allowWhiteLabelling={isCommunityPlan || isPlatformDocument || isEnterpriseDocument} /> diff --git a/apps/remix/app/routes/embed+/sign.$url.tsx b/apps/remix/app/routes/embed+/sign.$url.tsx index 63680a27b..ed242bf5a 100644 --- a/apps/remix/app/routes/embed+/sign.$url.tsx +++ b/apps/remix/app/routes/embed+/sign.$url.tsx @@ -3,6 +3,7 @@ import { data } from 'react-router'; import { match } from 'ts-pattern'; import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; +import { isCommunityPlan as isUserCommunityPlan } from '@documenso/ee/server-only/util/is-community-plan'; import { isUserEnterprise } from '@documenso/ee/server-only/util/is-document-enterprise'; import { isDocumentPlatform } from '@documenso/ee/server-only/util/is-document-platform'; import { IS_BILLING_ENABLED } from '@documenso/lib/constants/app'; @@ -61,12 +62,16 @@ export async function loader({ params, request }: Route.LoaderArgs) { ); } - const [isPlatformDocument, isEnterpriseDocument] = await Promise.all([ + const [isPlatformDocument, isEnterpriseDocument, isCommunityPlan] = await Promise.all([ isDocumentPlatform(document), isUserEnterprise({ userId: document.userId, teamId: document.teamId ?? undefined, }), + isUserCommunityPlan({ + userId: document.userId, + teamId: document.teamId ?? undefined, + }), ]); const { derivedRecipientAccessAuth } = extractDocumentAuthMethods({ @@ -127,6 +132,7 @@ export async function loader({ params, request }: Route.LoaderArgs) { hidePoweredBy, isPlatformDocument, isEnterpriseDocument, + isCommunityPlan, }); } @@ -141,6 +147,7 @@ export default function EmbedSignDocumentPage() { hidePoweredBy, isPlatformDocument, isEnterpriseDocument, + isCommunityPlan, } = useSuperLoaderData(); return ( @@ -163,7 +170,7 @@ export default function EmbedSignDocumentPage() { metadata={document.documentMeta} isCompleted={document.status === DocumentStatus.COMPLETED} hidePoweredBy={isPlatformDocument || isEnterpriseDocument || hidePoweredBy} - isPlatformOrEnterprise={isPlatformDocument || isEnterpriseDocument} + allowWhitelabelling={isCommunityPlan || isPlatformDocument || isEnterpriseDocument} allRecipients={allRecipients} /> diff --git a/packages/ee/server-only/util/is-community-plan.ts b/packages/ee/server-only/util/is-community-plan.ts new file mode 100644 index 000000000..b32769d41 --- /dev/null +++ b/packages/ee/server-only/util/is-community-plan.ts @@ -0,0 +1,56 @@ +import { subscriptionsContainsActivePlan } from '@documenso/lib/utils/billing'; +import { prisma } from '@documenso/prisma'; +import type { Subscription } from '@documenso/prisma/client'; + +import { getCommunityPlanPriceIds } from '../stripe/get-community-plan-prices'; + +export type IsCommunityPlanOptions = { + userId: number; + teamId?: number; +}; + +/** + * Whether the user or team is on the community plan. + */ +export const isCommunityPlan = async ({ + userId, + teamId, +}: IsCommunityPlanOptions): Promise => { + let subscriptions: Subscription[] = []; + + if (teamId) { + subscriptions = await prisma.team + .findFirstOrThrow({ + where: { + id: teamId, + }, + select: { + owner: { + include: { + subscriptions: true, + }, + }, + }, + }) + .then((team) => team.owner.subscriptions); + } else { + subscriptions = await prisma.user + .findFirstOrThrow({ + where: { + id: userId, + }, + select: { + subscriptions: true, + }, + }) + .then((user) => user.subscriptions); + } + + if (subscriptions.length === 0) { + return false; + } + + const communityPlanPriceIds = await getCommunityPlanPriceIds(); + + return subscriptionsContainsActivePlan(subscriptions, communityPlanPriceIds); +}; From deea99d8651a586a6d9fbd42afa6e225c5920674 Mon Sep 17 00:00:00 2001 From: Mythie Date: Tue, 25 Feb 2025 09:44:40 +1100 Subject: [PATCH 23/61] feat: search by externalId --- .../server-only/document/find-documents.ts | 1 + .../document/search-documents-with-keyword.ts | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/packages/lib/server-only/document/find-documents.ts b/packages/lib/server-only/document/find-documents.ts index f6e234dea..f3e7d772a 100644 --- a/packages/lib/server-only/document/find-documents.ts +++ b/packages/lib/server-only/document/find-documents.ts @@ -81,6 +81,7 @@ export const findDocuments = async ({ const searchFilter: Prisma.DocumentWhereInput = { OR: [ { title: { contains: query, mode: 'insensitive' } }, + { externalId: { contains: query, mode: 'insensitive' } }, { recipients: { some: { name: { contains: query, mode: 'insensitive' } } } }, { recipients: { some: { email: { contains: query, mode: 'insensitive' } } } }, ], diff --git a/packages/lib/server-only/document/search-documents-with-keyword.ts b/packages/lib/server-only/document/search-documents-with-keyword.ts index 7970c19bd..8982188cd 100644 --- a/packages/lib/server-only/document/search-documents-with-keyword.ts +++ b/packages/lib/server-only/document/search-documents-with-keyword.ts @@ -34,6 +34,14 @@ export const searchDocumentsWithKeyword = async ({ userId: userId, deletedAt: null, }, + { + externalId: { + contains: query, + mode: 'insensitive', + }, + userId: userId, + deletedAt: null, + }, { recipients: { some: { @@ -88,6 +96,23 @@ export const searchDocumentsWithKeyword = async ({ }, deletedAt: null, }, + { + externalId: { + contains: query, + mode: 'insensitive', + }, + teamId: { + not: null, + }, + team: { + members: { + some: { + userId: userId, + }, + }, + }, + deletedAt: null, + }, ], }, include: { From 9b376d34cf693457cd65b1241da320cac74a6fca Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Tue, 25 Feb 2025 21:22:28 +1100 Subject: [PATCH 24/61] feat: add stripe dev cli --- apps/remix/.bin/stripe-dev.sh | 77 +++++++++++++++++++++++++++++++++++ apps/remix/package.json | 1 + 2 files changed, 78 insertions(+) create mode 100755 apps/remix/.bin/stripe-dev.sh diff --git a/apps/remix/.bin/stripe-dev.sh b/apps/remix/.bin/stripe-dev.sh new file mode 100755 index 000000000..67d349ded --- /dev/null +++ b/apps/remix/.bin/stripe-dev.sh @@ -0,0 +1,77 @@ +#!/usr/bin/env bash + +# Set Error handling +set -eu + +SCRIPT_DIR="$(readlink -f "$(dirname "$0")")" +WEB_APP_DIR="$SCRIPT_DIR/.." + +# Store the original directory +ORIGINAL_DIR=$(pwd) + +# Set up trap to ensure we return to original directory +trap 'cd "$ORIGINAL_DIR"' EXIT + +cd "$WEB_APP_DIR" + +# Define env file paths +ENV_LOCAL_FILE="../../.env.local" + +# Function to load environment variable from env files +load_env_var() { + local var_name=$1 + local var_value="" + + if [ -f "$ENV_LOCAL_FILE" ]; then + var_value=$(grep "^$var_name=" "$ENV_LOCAL_FILE" | cut -d '=' -f2) + fi + + # Remove quotes if present + var_value=$(echo "$var_value" | sed 's/^"\(.*\)"$/\1/' | sed "s/^'\(.*\)'$/\1/") + + echo "$var_value" +} + +NEXT_PUBLIC_FEATURE_BILLING_ENABLED=$(load_env_var "NEXT_PUBLIC_FEATURE_BILLING_ENABLED") + +# Check if NEXT_PUBLIC_FEATURE_BILLING_ENABLED is equal to true +if [ "$NEXT_PUBLIC_FEATURE_BILLING_ENABLED" != "true" ]; then + echo "[ERROR]: NEXT_PUBLIC_FEATURE_BILLING_ENABLED must be enabled." + exit 1 +fi + +# 1. Load NEXT_PRIVATE_STRIPE_API_KEY from env files +NEXT_PRIVATE_STRIPE_API_KEY=$(load_env_var "NEXT_PRIVATE_STRIPE_API_KEY") + +# Check if NEXT_PRIVATE_STRIPE_API_KEY exists +if [ -z "$NEXT_PRIVATE_STRIPE_API_KEY" ]; then + echo "[ERROR]: NEXT_PRIVATE_STRIPE_API_KEY not found in environment files." + echo "[ERROR]: Please make sure it's set in $ENV_LOCAL_FILE" + exit 1 +fi + +# 2. Check if stripe CLI is installed +if ! command -v stripe &> /dev/null; then + echo "[ERROR]: Stripe CLI is not installed or not in PATH." + echo "[ERROR]: Please install the Stripe CLI: https://stripe.com/docs/stripe-cli" + exit 1 +fi + +# 3. Check if NEXT_PRIVATE_STRIPE_WEBHOOK_SECRET env key exists +NEXT_PRIVATE_STRIPE_WEBHOOK_SECRET=$(load_env_var "NEXT_PRIVATE_STRIPE_WEBHOOK_SECRET") + +if [ -z "$NEXT_PRIVATE_STRIPE_WEBHOOK_SECRET" ]; then + echo "╔═════════════════════════════════════════════════════════════════════╗" + echo "║ ║" + echo "║ ! WARNING: NEXT_PRIVATE_STRIPE_WEBHOOK_SECRET MISSING ! ║" + echo "║ ║" + echo "║ Copy the webhook signing secret which will appear in the terminal ║" + echo "║ soon into the env file. ║" + echo "║ ║" + echo "║ The webhook secret will start with whsec_... ║" + echo "║ ║" + echo "╚═════════════════════════════════════════════════════════════════════╝" +fi + +echo "[INFO]: Starting Stripe webhook listener..." +stripe listen --api-key "$NEXT_PRIVATE_STRIPE_API_KEY" --forward-to http://localhost:3000/api/stripe/webhook diff --git a/apps/remix/package.json b/apps/remix/package.json index 689c31ee7..d7c48e686 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -7,6 +7,7 @@ "build:app": "npm run typecheck && cross-env NODE_ENV=production react-router build", "build:server": "cross-env NODE_ENV=production rollup -c rollup.config.mjs", "dev": "npm run with:env -- react-router dev", + "dev:billing": "bash .bin/stripe-dev.sh", "start": "npm run with:env -- cross-env NODE_ENV=production node build/server/main.js", "clean": "rimraf .react-router && rimraf node_modules", "typecheck": "react-router typegen && tsc", From bc7907271b608dc90731b63ff49baca5912b91a6 Mon Sep 17 00:00:00 2001 From: Mythie Date: Tue, 25 Feb 2025 21:46:51 +1100 Subject: [PATCH 25/61] fix: unbreak build for docker --- apps/remix/.bin/build.sh | 2 +- apps/remix/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/remix/.bin/build.sh b/apps/remix/.bin/build.sh index 83a617e75..d7e4c6134 100755 --- a/apps/remix/.bin/build.sh +++ b/apps/remix/.bin/build.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh # Exit on error. set -eo pipefail diff --git a/apps/remix/package.json b/apps/remix/package.json index d7c48e686..7744fd7a4 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -3,7 +3,7 @@ "private": true, "type": "module", "scripts": { - "build": "bash .bin/build.sh", + "build": "./.bin/build.sh", "build:app": "npm run typecheck && cross-env NODE_ENV=production react-router build", "build:server": "cross-env NODE_ENV=production rollup -c rollup.config.mjs", "dev": "npm run with:env -- react-router dev", From 11dbb8873e6b46c9896cf402dc3467e5a68f8bec Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Tue, 25 Feb 2025 14:02:12 +0200 Subject: [PATCH 26/61] docs: add the v2 api staging base url (#1671) --- apps/documentation/pages/developers/public-api/index.mdx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/apps/documentation/pages/developers/public-api/index.mdx b/apps/documentation/pages/developers/public-api/index.mdx index 8c6bd24b5..050810863 100644 --- a/apps/documentation/pages/developers/public-api/index.mdx +++ b/apps/documentation/pages/developers/public-api/index.mdx @@ -31,6 +31,11 @@ Our new API V2 supports the following typed SDKs: - [Python](https://github.com/documenso/sdk-python) - [Go](https://github.com/documenso/sdk-go) + + For the staging API, please use the following base URL: + `https://stg-app.documenso.dev/api/v2-beta/` + + 🚀 [V2 Announcement](https://documen.so/sdk-blog) 📖 [Documentation](https://documen.so/api-v2-docs) From cf58c80e31b0c0315a9ba10c983421d3d6e979be Mon Sep 17 00:00:00 2001 From: Mythie Date: Wed, 26 Feb 2025 15:27:44 +1100 Subject: [PATCH 27/61] fix: handle empty field meta for checkboxes --- .../document-signing/document-signing-checkbox-field.tsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx b/apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx index 6ba6b8fef..10398c6d6 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx @@ -45,7 +45,12 @@ export const DocumentSigningCheckboxField = ({ const { executeActionAuthProcedure } = useRequiredDocumentSigningAuthContext(); - const parsedFieldMeta = ZCheckboxFieldMeta.parse(field.fieldMeta); + const parsedFieldMeta = ZCheckboxFieldMeta.parse( + field.fieldMeta ?? { + type: 'checkbox', + values: [{ id: 1, checked: false, value: '' }], + }, + ); const values = parsedFieldMeta.values?.map((item) => ({ ...item, From 5b4db510516012b6a92baeafc6fdefe989cc9b6a Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 26 Feb 2025 18:39:21 +1100 Subject: [PATCH 28/61] fix: react-pdf canvas build --- apps/remix/app/routes/_authenticated+/_layout.tsx | 4 ++-- apps/remix/app/types/empty-module.ts | 1 + apps/remix/vite.config.ts | 1 + 3 files changed, 4 insertions(+), 2 deletions(-) create mode 100644 apps/remix/app/types/empty-module.ts diff --git a/apps/remix/app/routes/_authenticated+/_layout.tsx b/apps/remix/app/routes/_authenticated+/_layout.tsx index e06140b41..51044c340 100644 --- a/apps/remix/app/routes/_authenticated+/_layout.tsx +++ b/apps/remix/app/routes/_authenticated+/_layout.tsx @@ -20,7 +20,7 @@ import type { Route } from './+types/_layout'; */ export const shouldRevalidate = () => false; -export const loader = async ({ request }: Route.LoaderArgs) => { +export async function loader({ request }: Route.LoaderArgs) { const requestHeaders = Object.fromEntries(request.headers.entries()); const session = await getOptionalSession(request); @@ -40,7 +40,7 @@ export const loader = async ({ request }: Route.LoaderArgs) => { banner, limits, }; -}; +} export default function Layout({ loaderData }: Route.ComponentProps) { const { user, teams } = useSession(); diff --git a/apps/remix/app/types/empty-module.ts b/apps/remix/app/types/empty-module.ts new file mode 100644 index 000000000..ff8b4c563 --- /dev/null +++ b/apps/remix/app/types/empty-module.ts @@ -0,0 +1 @@ +export default {}; diff --git a/apps/remix/vite.config.ts b/apps/remix/vite.config.ts index 2769b8fa0..990423bd0 100644 --- a/apps/remix/vite.config.ts +++ b/apps/remix/vite.config.ts @@ -46,6 +46,7 @@ export default defineConfig({ https: 'node:https', '.prisma/client/default': '../../node_modules/.prisma/client/default.js', '.prisma/client/index-browser': '../../node_modules/.prisma/client/index-browser.js', + canvas: './app/types/empty-module.ts', }, }, /** From 6474b4a52442d11ae967118b139e14fc5e77dca5 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 26 Feb 2025 19:42:42 +1100 Subject: [PATCH 29/61] fix: add preferred team middleware --- apps/remix/app/routes/_index.tsx | 39 +++++++++- apps/remix/server/middleware.ts | 73 +++++++++++++++++++ apps/remix/server/router.ts | 6 ++ .../server/lib/session/session-cookies.ts | 11 +-- packages/auth/server/lib/utils/cookies.ts | 14 ++++ packages/lib/translations/de/web.po | 14 ++-- packages/lib/translations/en/web.po | 14 ++-- packages/lib/translations/es/web.po | 14 ++-- packages/lib/translations/fr/web.po | 14 ++-- packages/lib/translations/it/web.po | 14 ++-- packages/lib/translations/pl/web.po | 14 ++-- 11 files changed, 173 insertions(+), 54 deletions(-) create mode 100644 apps/remix/server/middleware.ts create mode 100644 packages/auth/server/lib/utils/cookies.ts diff --git a/apps/remix/app/routes/_index.tsx b/apps/remix/app/routes/_index.tsx index 9bb5956b1..0dc3af459 100644 --- a/apps/remix/app/routes/_index.tsx +++ b/apps/remix/app/routes/_index.tsx @@ -1,14 +1,47 @@ import { redirect } from 'react-router'; +import { extractCookieFromHeaders } from '@documenso/auth/server/lib/utils/cookies'; import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session'; +import { getTeams } from '@documenso/lib/server-only/team/get-teams'; +import { formatDocumentsPath } from '@documenso/lib/utils/teams'; +import { ZTeamUrlSchema } from '@documenso/trpc/server/team-router/schema'; import type { Route } from './+types/_index'; export async function loader({ request }: Route.LoaderArgs) { - const { isAuthenticated } = await getOptionalSession(request); + const session = await getOptionalSession(request); - if (isAuthenticated) { - throw redirect('/documents'); + if (session.isAuthenticated) { + const teamUrlCookie = extractCookieFromHeaders('preferred-team-url', request.headers); + + const referrer = request.headers.get('referer'); + let isReferrerFromTeamUrl = false; + + if (referrer) { + const referrerUrl = new URL(referrer); + + if (referrerUrl.pathname.startsWith('/t/')) { + isReferrerFromTeamUrl = true; + } + } + + const preferredTeamUrl = + teamUrlCookie && ZTeamUrlSchema.safeParse(teamUrlCookie).success ? teamUrlCookie : undefined; + + // Early return for no preferred team. + if (!preferredTeamUrl || isReferrerFromTeamUrl) { + throw redirect('/documents'); + } + + const teams = await getTeams({ userId: session.user.id }); + + const currentTeam = teams.find((team) => team.url === preferredTeamUrl); + + if (!currentTeam) { + throw redirect('/documents'); + } + + throw redirect(formatDocumentsPath(currentTeam.url)); } throw redirect('/signin'); diff --git a/apps/remix/server/middleware.ts b/apps/remix/server/middleware.ts new file mode 100644 index 000000000..b7fca6731 --- /dev/null +++ b/apps/remix/server/middleware.ts @@ -0,0 +1,73 @@ +import type { Context, Next } from 'hono'; +import { deleteCookie, setCookie } from 'hono/cookie'; + +import { AppDebugger } from '@documenso/lib/utils/debugger'; + +const debug = new AppDebugger('Middleware'); + +/** + * Middleware for initial page loads. + * + * You won't be able to easily handle sequential page loads because they will be + * called under `path.data` + * + * Example an initial page load would be `/documents` then if the user click templates + * the path here would be `/templates.data`. + */ +export const appMiddleware = async (c: Context, next: Next) => { + const { req } = c; + const { path } = req; + + // Paths to ignore. + if (nonPagePathRegex.test(path)) { + return next(); + } + + // PRE-HANDLER CODE: Place code here to execute BEFORE the route handler runs. + + await next(); + + // POST-HANDLER CODE: Place code here to execute AFTER the route handler completes. + // This is useful for: + // - Setting cookies + // - Any operations that should happen after all route handlers but before sending the response + + debug.log('Path', path); + + const pathname = path.replace('.data', ''); + const referrer = c.req.header('referer'); + const referrerUrl = referrer ? new URL(referrer) : null; + const referrerPathname = referrerUrl ? referrerUrl.pathname : null; + + // Whether to reset the preferred team url cookie if the user accesses a non team page from a team page. + const resetPreferredTeamUrl = + referrerPathname && + referrerPathname.startsWith('/t/') && + (!pathname.startsWith('/t/') || pathname === '/'); + + // Set the preferred team url cookie if user accesses a team page. + if (pathname.startsWith('/t/')) { + debug.log('Setting preferred team url cookie'); + + setCookie(c, 'preferred-team-url', pathname.split('/')[2]); + + return; + } + + // Clear preferred team url cookie if user accesses a non team page from a team page. + if (resetPreferredTeamUrl || pathname === '/documents') { + debug.log('Deleting preferred team url cookie'); + + deleteCookie(c, 'preferred-team-url'); + + return; + } +}; + +// This regex matches any path that: +// 1. Starts with /api/, /ingest/, /__manifest/, or /assets/ +// 2. Starts with /apple- (like /apple-touch-icon.png) +// 3. Starts with /favicon (like /favicon.ico) +// The ^ ensures matching from the beginning of the string +// The | acts as OR operator between different patterns +const nonPagePathRegex = /^(\/api\/|\/ingest\/|\/__manifest|\/assets\/|\/apple-.*|\/favicon.*)/; diff --git a/apps/remix/server/router.ts b/apps/remix/server/router.ts index c75f6f65b..dfd9927b5 100644 --- a/apps/remix/server/router.ts +++ b/apps/remix/server/router.ts @@ -9,6 +9,7 @@ import { openApiDocument } from '@documenso/trpc/server/open-api'; import { filesRoute } from './api/files'; import { type AppContext, appContext } from './context'; +import { appMiddleware } from './middleware'; import { openApiTrpcServerHandler } from './trpc/hono-trpc-open-api'; import { reactRouterTrpcServer } from './trpc/hono-trpc-remix'; @@ -26,6 +27,11 @@ const app = new Hono(); app.use(contextStorage()); app.use(appContext); +/** + * RR7 app middleware. + */ +app.use('*', appMiddleware); + // Auth server. app.route('/api/auth', auth); diff --git a/packages/auth/server/lib/session/session-cookies.ts b/packages/auth/server/lib/session/session-cookies.ts index aaca8ca7f..d18a3ebf3 100644 --- a/packages/auth/server/lib/session/session-cookies.ts +++ b/packages/auth/server/lib/session/session-cookies.ts @@ -10,6 +10,7 @@ import { appLog } from '@documenso/lib/utils/debugger'; import { env } from '@documenso/lib/utils/env'; import { AUTH_SESSION_LIFETIME } from '../../config'; +import { extractCookieFromHeaders } from '../utils/cookies'; import { generateSessionToken } from './session'; export const sessionCookieName = formatSecureCookieName('sessionId'); @@ -38,15 +39,7 @@ export const sessionCookieOptions = { } as const; export const extractSessionCookieFromHeaders = (headers: Headers): string | null => { - const cookieHeader = headers.get('cookie') || ''; - const cookiePairs = cookieHeader.split(';'); - const sessionCookie = cookiePairs.find((pair) => pair.trim().startsWith(sessionCookieName)); - - if (!sessionCookie) { - return null; - } - - return sessionCookie.split('=')[1].trim(); + return extractCookieFromHeaders(sessionCookieName, headers); }; /** diff --git a/packages/auth/server/lib/utils/cookies.ts b/packages/auth/server/lib/utils/cookies.ts new file mode 100644 index 000000000..15f5134f9 --- /dev/null +++ b/packages/auth/server/lib/utils/cookies.ts @@ -0,0 +1,14 @@ +/** + * Todo: Use library for cookies instead. + */ +export const extractCookieFromHeaders = (cookieName: string, headers: Headers): string | null => { + const cookieHeader = headers.get('cookie') || ''; + const cookiePairs = cookieHeader.split(';'); + const cookie = cookiePairs.find((pair) => pair.trim().startsWith(cookieName)); + + if (!cookie) { + return null; + } + + return cookie.split('=')[1].trim(); +}; diff --git a/packages/lib/translations/de/web.po b/packages/lib/translations/de/web.po index 84e7f44eb..8bae5b21e 100644 --- a/packages/lib/translations/de/web.po +++ b/packages/lib/translations/de/web.po @@ -1017,7 +1017,7 @@ msgstr "Ein Fehler ist aufgetreten, während die Vorlage verschoben wurde." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "Ein Fehler ist beim Entfernen des Feldes aufgetreten." @@ -1045,7 +1045,7 @@ msgstr "Beim Senden Ihrer Bestätigungs-E-Mail ist ein Fehler aufgetreten" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "Ein Fehler ist aufgetreten, während das Dokument unterzeichnet wurde." @@ -1071,7 +1071,7 @@ msgstr "" msgid "An error occurred while updating the document settings." msgstr "Ein Fehler ist aufgetreten, während die Dokumenteinstellungen aktualisiert wurden." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "Ein Fehler ist aufgetreten, während die Unterschrift aktualisiert wurde." @@ -2717,9 +2717,9 @@ msgstr "Geben Sie hier Ihren Text ein" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 diff --git a/packages/lib/translations/en/web.po b/packages/lib/translations/en/web.po index 241c641be..5029ed2c7 100644 --- a/packages/lib/translations/en/web.po +++ b/packages/lib/translations/en/web.po @@ -1012,7 +1012,7 @@ msgstr "An error occurred while moving the template." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "An error occurred while removing the field." @@ -1040,7 +1040,7 @@ msgstr "An error occurred while sending your confirmation email" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "An error occurred while signing as assistant." @@ -1053,7 +1053,7 @@ msgstr "An error occurred while signing as assistant." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "An error occurred while signing the document." @@ -1066,7 +1066,7 @@ msgstr "An error occurred while trying to create a checkout session." msgid "An error occurred while updating the document settings." msgstr "An error occurred while updating the document settings." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "An error occurred while updating the signature." @@ -2712,9 +2712,9 @@ msgstr "Enter your text here" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 diff --git a/packages/lib/translations/es/web.po b/packages/lib/translations/es/web.po index 37833e474..961041ede 100644 --- a/packages/lib/translations/es/web.po +++ b/packages/lib/translations/es/web.po @@ -1017,7 +1017,7 @@ msgstr "Ocurrió un error al mover la plantilla." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "Ocurrió un error mientras se eliminaba el campo." @@ -1045,7 +1045,7 @@ msgstr "Ocurrió un error al enviar tu correo electrónico de confirmación" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "Ocurrió un error al firmar el documento." @@ -1071,7 +1071,7 @@ msgstr "" msgid "An error occurred while updating the document settings." msgstr "Ocurrió un error al actualizar la configuración del documento." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "Ocurrió un error al actualizar la firma." @@ -2717,9 +2717,9 @@ msgstr "Ingresa tu texto aquí" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index e699278c6..5fe1534c7 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -1017,7 +1017,7 @@ msgstr "Une erreur est survenue lors du déplacement du modèle." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "Une erreur est survenue lors de la suppression du champ." @@ -1045,7 +1045,7 @@ msgstr "Une erreur est survenue lors de l'envoi de votre e-mail de confirmation" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "Une erreur est survenue lors de la signature du document." @@ -1071,7 +1071,7 @@ msgstr "" msgid "An error occurred while updating the document settings." msgstr "Une erreur est survenue lors de la mise à jour des paramètres du document." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "Une erreur est survenue lors de la mise à jour de la signature." @@ -2717,9 +2717,9 @@ msgstr "Entrez votre texte ici" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 diff --git a/packages/lib/translations/it/web.po b/packages/lib/translations/it/web.po index 589f66339..90bcd603e 100644 --- a/packages/lib/translations/it/web.po +++ b/packages/lib/translations/it/web.po @@ -1017,7 +1017,7 @@ msgstr "Si è verificato un errore durante lo spostamento del modello." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "Si è verificato un errore durante la rimozione del campo." @@ -1045,7 +1045,7 @@ msgstr "Si è verificato un errore durante l'invio della tua email di conferma" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "Si è verificato un errore durante la firma del documento." @@ -1071,7 +1071,7 @@ msgstr "" msgid "An error occurred while updating the document settings." msgstr "Si è verificato un errore durante l'aggiornamento delle impostazioni del documento." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "Si è verificato un errore durante l'aggiornamento della firma." @@ -2717,9 +2717,9 @@ msgstr "Inserisci il tuo testo qui" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 diff --git a/packages/lib/translations/pl/web.po b/packages/lib/translations/pl/web.po index a161f1ddf..5c90fd7f9 100644 --- a/packages/lib/translations/pl/web.po +++ b/packages/lib/translations/pl/web.po @@ -1017,7 +1017,7 @@ msgstr "Wystąpił błąd podczas przenoszenia szablonu." #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:152 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 msgid "An error occurred while removing the field." msgstr "Wystąpił błąd podczas usuwania pola." @@ -1045,7 +1045,7 @@ msgstr "Wystąpił błąd podczas wysyłania e-maila potwierdzającego" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:122 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 msgid "An error occurred while signing as assistant." msgstr "" @@ -1058,7 +1058,7 @@ msgstr "" #: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 msgid "An error occurred while signing the document." msgstr "Wystąpił błąd podczas podpisywania dokumentu." @@ -1071,7 +1071,7 @@ msgstr "" msgid "An error occurred while updating the document settings." msgstr "Wystąpił błąd podczas aktualizowania ustawień dokumentu." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:210 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 msgid "An error occurred while updating the signature." msgstr "Wystąpił błąd podczas aktualizowania podpisu." @@ -2717,9 +2717,9 @@ msgstr "Wprowadź swój tekst tutaj" #: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 #: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:120 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:151 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:209 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 #: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 #: apps/remix/app/components/general/document/document-upload.tsx:103 #: apps/remix/app/components/general/document/document-edit-form.tsx:204 From 596d30e2e517ecc7e781a36137b167bb31100adf Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 26 Feb 2025 21:48:06 +1100 Subject: [PATCH 30/61] fix: remove lazy pdf loader --- .../dialogs/document-duplicate-dialog.tsx | 4 +- .../embed-direct-template-client-page.tsx | 4 +- .../embed/embed-document-signing-page.tsx | 4 +- .../direct-template/direct-template-page.tsx | 4 +- .../document-signing-page-view.tsx | 9 +- .../general/document/document-edit-form.tsx | 16 +- .../general/template/template-edit-form.tsx | 4 +- .../_authenticated+/documents.$id._index.tsx | 4 +- .../_authenticated+/settings+/billing.tsx | 9 +- .../t.$teamUrl+/settings.billing.tsx | 9 +- .../_authenticated+/templates.$id._index.tsx | 8 +- apps/remix/package.json | 2 +- lingui.config.ts | 3 + package-lock.json | 2 +- packages/lib/translations/de/web.po | 4871 ++++++++--------- packages/lib/translations/en/web.po | 4871 ++++++++--------- packages/lib/translations/es/web.po | 4871 ++++++++--------- packages/lib/translations/fr/web.po | 4871 ++++++++--------- packages/lib/translations/it/web.po | 4871 ++++++++--------- packages/lib/translations/pl/web.po | 4871 ++++++++--------- .../trpc/server/document-router/router.ts | 32 - .../components/document/document-dialog.tsx | 4 +- .../primitives/document-password-dialog.tsx | 107 - packages/ui/primitives/lazy-pdf-viewer.tsx | 31 - packages/ui/primitives/pdf-viewer.tsx | 46 +- 25 files changed, 14590 insertions(+), 14938 deletions(-) delete mode 100644 packages/ui/primitives/document-password-dialog.tsx delete mode 100644 packages/ui/primitives/lazy-pdf-viewer.tsx diff --git a/apps/remix/app/components/dialogs/document-duplicate-dialog.tsx b/apps/remix/app/components/dialogs/document-duplicate-dialog.tsx index a6c2d8f03..754fa2596 100644 --- a/apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +++ b/apps/remix/app/components/dialogs/document-duplicate-dialog.tsx @@ -13,7 +13,7 @@ import { DialogHeader, DialogTitle, } from '@documenso/ui/primitives/dialog'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { useToast } from '@documenso/ui/primitives/use-toast'; import { useOptionalCurrentTeam } from '~/providers/team'; @@ -97,7 +97,7 @@ export const DocumentDuplicateDialog = ({
) : (
- +
)} diff --git a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx index 6927d9b58..aece8cfac 100644 --- a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx +++ b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx @@ -25,7 +25,7 @@ import { Card, CardContent } from '@documenso/ui/primitives/card'; import { ElementVisible } from '@documenso/ui/primitives/element-visible'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -338,7 +338,7 @@ export const EmbedDirectTemplateClientPage = ({
{/* Viewer */}
- setHasDocumentLoaded(true)} /> diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index f158cd4a8..54d7cff84 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -24,7 +24,7 @@ import { Card, CardContent } from '@documenso/ui/primitives/card'; import { ElementVisible } from '@documenso/ui/primitives/element-visible'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { RadioGroup, RadioGroupItem } from '@documenso/ui/primitives/radio-group'; import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -278,7 +278,7 @@ export const EmbedSignDocumentClientPage = ({
{/* Viewer */}
- setHasDocumentLoaded(true)} /> diff --git a/apps/remix/app/components/general/direct-template/direct-template-page.tsx b/apps/remix/app/components/general/direct-template/direct-template-page.tsx index 4751cb780..a567f0cda 100644 --- a/apps/remix/app/components/general/direct-template/direct-template-page.tsx +++ b/apps/remix/app/components/general/direct-template/direct-template-page.tsx @@ -12,7 +12,7 @@ import { trpc } from '@documenso/trpc/react'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { DocumentFlowFormContainer } from '@documenso/ui/primitives/document-flow/document-flow-root'; import type { DocumentFlowStep } from '@documenso/ui/primitives/document-flow/types'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { Stepper } from '@documenso/ui/primitives/stepper'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -136,7 +136,7 @@ export const DirectTemplatePageView = ({ gradient > - setIsDocumentPdfLoaded(true)} diff --git a/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx b/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx index 22787592d..ddb9dc555 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx @@ -21,7 +21,7 @@ import type { FieldWithSignatureAndFieldMeta } from '@documenso/prisma/types/fie import type { RecipientWithFields } from '@documenso/prisma/types/recipient-with-fields'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { ElementVisible } from '@documenso/ui/primitives/element-visible'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { DocumentSigningAutoSign } from '~/components/general/document-signing/document-signing-auto-sign'; import { DocumentSigningCheckboxField } from '~/components/general/document-signing/document-signing-checkbox-field'; @@ -140,12 +140,7 @@ export const DocumentSigningPageView = ({ gradient > - + diff --git a/apps/remix/app/components/general/document/document-edit-form.tsx b/apps/remix/app/components/general/document/document-edit-form.tsx index df9d1bd8d..58bebdf38 100644 --- a/apps/remix/app/components/general/document/document-edit-form.tsx +++ b/apps/remix/app/components/general/document/document-edit-form.tsx @@ -24,7 +24,7 @@ import { AddSubjectFormPartial } from '@documenso/ui/primitives/document-flow/ad import type { TAddSubjectFormSchema } from '@documenso/ui/primitives/document-flow/add-subject.types'; import { DocumentFlowFormContainer } from '@documenso/ui/primitives/document-flow/document-flow-root'; import type { DocumentFlowStep } from '@documenso/ui/primitives/document-flow/types'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { Stepper } from '@documenso/ui/primitives/stepper'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -132,9 +132,6 @@ export const DocumentEditForm = ({ }, }); - const { mutateAsync: setPasswordForDocument } = - trpc.document.setPasswordForDocument.useMutation(); - const documentFlow: Record = { settings: { title: msg`General`, @@ -315,13 +312,6 @@ export const DocumentEditForm = ({ } }; - const onPasswordSubmit = async (password: string) => { - await setPasswordForDocument({ - documentId: document.id, - password, - }); - }; - const currentDocumentFlow = documentFlow[step]; /** @@ -340,12 +330,10 @@ export const DocumentEditForm = ({ gradient > - setIsDocumentPdfLoaded(true)} /> diff --git a/apps/remix/app/components/general/template/template-edit-form.tsx b/apps/remix/app/components/general/template/template-edit-form.tsx index 972114435..dffe19cc4 100644 --- a/apps/remix/app/components/general/template/template-edit-form.tsx +++ b/apps/remix/app/components/general/template/template-edit-form.tsx @@ -15,7 +15,7 @@ import { cn } from '@documenso/ui/lib/utils'; import { Card, CardContent } from '@documenso/ui/primitives/card'; import { DocumentFlowFormContainer } from '@documenso/ui/primitives/document-flow/document-flow-root'; import type { DocumentFlowStep } from '@documenso/ui/primitives/document-flow/types'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { Stepper } from '@documenso/ui/primitives/stepper'; import { AddTemplateFieldsFormPartial } from '@documenso/ui/primitives/template-flow/add-template-fields'; import type { TAddTemplateFieldsFormSchema } from '@documenso/ui/primitives/template-flow/add-template-fields.types'; @@ -236,7 +236,7 @@ export const TemplateEditForm = ({ gradient > - setIsDocumentPdfLoaded(true)} diff --git a/apps/remix/app/routes/_authenticated+/documents.$id._index.tsx b/apps/remix/app/routes/_authenticated+/documents.$id._index.tsx index 2331ebb71..fd3c8c241 100644 --- a/apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +++ b/apps/remix/app/routes/_authenticated+/documents.$id._index.tsx @@ -16,7 +16,7 @@ import { formatDocumentsPath } from '@documenso/lib/utils/teams'; import { Badge } from '@documenso/ui/primitives/badge'; import { Button } from '@documenso/ui/primitives/button'; import { Card, CardContent } from '@documenso/ui/primitives/card'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { DocumentHistorySheet } from '~/components/general/document/document-history-sheet'; import { DocumentPageViewButton } from '~/components/general/document/document-page-view-button'; @@ -196,7 +196,7 @@ export default function DocumentPage() { gradient > - + diff --git a/apps/remix/app/routes/_authenticated+/settings+/billing.tsx b/apps/remix/app/routes/_authenticated+/settings+/billing.tsx index ba719e06d..be6d2e8e9 100644 --- a/apps/remix/app/routes/_authenticated+/settings+/billing.tsx +++ b/apps/remix/app/routes/_authenticated+/settings+/billing.tsx @@ -16,6 +16,7 @@ import { getSubscriptionsByUserId } from '@documenso/lib/server-only/subscriptio import { BillingPlans } from '~/components/general/billing-plans'; import { BillingPortalButton } from '~/components/general/billing-portal-button'; import { appMetaTags } from '~/utils/meta'; +import { superLoaderJson, useSuperLoaderData } from '~/utils/super-json-loader'; import type { Route } from './+types/billing'; @@ -62,17 +63,17 @@ export async function loader({ request }: Route.LoaderArgs) { const isMissingOrInactiveOrFreePlan = !subscription || subscription.status === SubscriptionStatus.INACTIVE; - return { + return superLoaderJson({ prices, subscription, subscriptionProductName: subscriptionProduct?.name, isMissingOrInactiveOrFreePlan, - }; + }); } -export default function TeamsSettingBillingPage({ loaderData }: Route.ComponentProps) { +export default function TeamsSettingBillingPage() { const { prices, subscription, subscriptionProductName, isMissingOrInactiveOrFreePlan } = - loaderData; + useSuperLoaderData(); const { i18n } = useLingui(); diff --git a/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx b/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx index ef40ef8aa..f03534d25 100644 --- a/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +++ b/apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx @@ -14,6 +14,7 @@ import { Card, CardContent } from '@documenso/ui/primitives/card'; import { SettingsHeader } from '~/components/general/settings-header'; import { TeamBillingPortalButton } from '~/components/general/teams/team-billing-portal-button'; import { TeamSettingsBillingInvoicesTable } from '~/components/tables/team-settings-billing-invoices-table'; +import { superLoaderJson, useSuperLoaderData } from '~/utils/super-json-loader'; import type { Route } from './+types/settings.billing'; @@ -31,16 +32,16 @@ export async function loader({ request, params }: Route.LoaderArgs) { teamSubscription = await stripe.subscriptions.retrieve(team.subscription.planId); } - return { + return superLoaderJson({ team, teamSubscription, - }; + }); } -export default function TeamsSettingBillingPage({ loaderData }: Route.ComponentProps) { +export default function TeamsSettingBillingPage() { const { _ } = useLingui(); - const { team, teamSubscription } = loaderData; + const { team, teamSubscription } = useSuperLoaderData(); const canManageBilling = canExecuteTeamAction('MANAGE_BILLING', team.currentTeamMember.role); diff --git a/apps/remix/app/routes/_authenticated+/templates.$id._index.tsx b/apps/remix/app/routes/_authenticated+/templates.$id._index.tsx index 84c97fc86..b8fc390b6 100644 --- a/apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +++ b/apps/remix/app/routes/_authenticated+/templates.$id._index.tsx @@ -9,7 +9,7 @@ import { getTemplateById } from '@documenso/lib/server-only/template/get-templat import { formatDocumentsPath, formatTemplatesPath } from '@documenso/lib/utils/teams'; import { Button } from '@documenso/ui/primitives/button'; import { Card, CardContent } from '@documenso/ui/primitives/card'; -import { LazyPDFViewer } from '@documenso/ui/primitives/lazy-pdf-viewer'; +import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { TemplateBulkSendDialog } from '~/components/dialogs/template-bulk-send-dialog'; import { TemplateDirectLinkDialogWrapper } from '~/components/dialogs/template-direct-link-dialog-wrapper'; @@ -144,11 +144,7 @@ export default function TemplatePage() { gradient > - + diff --git a/apps/remix/package.json b/apps/remix/package.json index 7744fd7a4..f5971dbc2 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -76,7 +76,7 @@ "@babel/preset-typescript": "^7.26.0", "@lingui/babel-plugin-lingui-macro": "^5.2.0", "@lingui/vite-plugin": "^5.2.0", - "@react-router/dev": "^7.1.1", + "@react-router/dev": "^7.1.5", "@react-router/remix-routes-option-adapter": "^7.1.5", "@rollup/plugin-babel": "^6.0.4", "@rollup/plugin-commonjs": "^28.0.2", diff --git a/lingui.config.ts b/lingui.config.ts index e538488ba..d7fae242e 100644 --- a/lingui.config.ts +++ b/lingui.config.ts @@ -1,4 +1,6 @@ +import { defineConfig } from '@lingui/cli'; import type { LinguiConfig } from '@lingui/conf'; +import { formatter } from '@lingui/format-po'; import { APP_I18N_OPTIONS } from '@documenso/lib/constants/i18n'; @@ -14,6 +16,7 @@ const config: LinguiConfig = { }, ], compileNamespace: 'es', + format: formatter({ lineNumbers: false }), }; export default config; diff --git a/package-lock.json b/package-lock.json index fd07c72b7..1236eeaeb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -158,7 +158,7 @@ "@babel/preset-typescript": "^7.26.0", "@lingui/babel-plugin-lingui-macro": "^5.2.0", "@lingui/vite-plugin": "^5.2.0", - "@react-router/dev": "^7.1.1", + "@react-router/dev": "^7.1.5", "@react-router/remix-routes-option-adapter": "^7.1.5", "@rollup/plugin-babel": "^6.0.4", "@rollup/plugin-commonjs": "^28.0.2", diff --git a/packages/lib/translations/de/web.po b/packages/lib/translations/de/web.po index 8bae5b21e..830789bc3 100644 --- a/packages/lib/translations/de/web.po +++ b/packages/lib/translations/de/web.po @@ -18,7164 +18,7143 @@ msgstr "" "X-Crowdin-File: web.po\n" "X-Crowdin-File-ID: 8\n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "\"{0}\" hat Sie eingeladen, \"Beispieldokument\" zu unterschreiben." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "" -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" wurde von einem Administrator gelöscht." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "„{documentName}“ wurde unterschrieben" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "„{documentName}“ wurde von allen Unterzeichnern signiert" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" wurde erfolgreich gelöscht" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" im Namen von \"{0}\" hat Sie eingeladen, \"Beispieldokument\" zu unterzeichnen." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 Zeichen über dem Limit)} other {(# Zeichen über dem Limit)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# Zeichen über dem Limit} other {# Zeichen über dem Limit}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# Empfänger} other {# Empfänger}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# Sitz} other {# Sitze}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>Du hast <1>1 ausstehende Team-Einladung} other {<2>Du hast <3># ausstehende Team-Einladungen}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 passendes Feld} other {# passende Felder}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 Empfänger} other {# Empfänger}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {Warte auf 1 Empfänger} other {Warte auf # Empfänger}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Werte auswählen} other {# ausgewählt...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "{0}" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} direkte Signaturvorlagen" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} hat Sie eingeladen, das Dokument \"{1}\" {recipientActionVerb}." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} hat dich eingeladen, ein Dokument {recipientActionVerb}" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} ist dem Team {teamName} bei Documenso beigetreten" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} hat das Team {teamName} bei Documenso verlassen" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} von {1} Dokumenten verbleibend in diesem Monat." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} von {1} Zeile(n) ausgewählt." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} im Namen von \"{1}\" hat Sie eingeladen, das Dokument \"{2}\" {recipientActionVerb}." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Empfänger(in)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {1 Zeichen verbleibend} other {{charactersRemaining} Zeichen verbleibend}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} hat das Dokument {documentName} storniert, du musst es nicht mehr unterzeichnen." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} hat das Dokument<0/>\"{documentName}\" storniert" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} hat dich eingeladen, {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} hat dich eingeladen, {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} hat Sie eingeladen, das Dokument \"{documentName}\" {action}." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} hat dich aus dem Dokument {documentName} entfernt." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} hat dich aus dem Dokument<0/>\"{documentName}\" entfernt" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} im Namen von \"{teamName}\" hat dich eingeladen, {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} im Namen von \"{teamName}\" hat Sie eingeladen, das Dokument {documentName} {action}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} ist dem folgenden Team beigetreten" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} hat das folgende Team verlassen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# Mitglied} other {# Mitglieder}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} hat ein Feld hinzugefügt" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} hat einen Empfänger hinzugefügt" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} hat das Dokument erstellt" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} hat das Dokument gelöscht" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} hat das Dokument ins Team verschoben" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} hat das Dokument geöffnet" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} hat ein Feld entfernt" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} hat einen Empfänger entfernt" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} hat eine E-Mail an {0} erneut gesendet" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} hat eine E-Mail an {0} gesendet" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} hat das Dokument gesendet" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} hat ein Feld unterschrieben" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} hat ein Feld ungültig gemacht" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} hat ein Feld aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} hat einen Empfänger aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} hat das Dokument aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} hat die Anforderungen an die Dokumentenzugriffsautorisierung aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} hat die externe ID des Dokuments aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} hat die Authentifizierungsanforderungen für die Dokumentenunterzeichnung aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} hat den Titel des Dokuments aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} hat die Sichtbarkeit des Dokuments aktualisiert" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} Dokument" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} das Dokument, um den Prozess abzuschließen." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} ein Dokument, indem Sie einen Ihrer direkten Links verwenden" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} hat das Dokument '{documentName}' abgelehnt" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} hat das Dokument vollständig unterschrieben." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} hat \"{0}\" unterschrieben" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} hat \"{documentName}\" unterschrieben" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} hat {documentName} unterschrieben" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {# Zeichen verbleibend} other {# Zeichen verbleibend}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} hat das Dokument \"{documentName}\" abgelehnt." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} hat dich eingeladen, {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} hat Sie eingeladen, {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "Anfrage zur Übertragung des Eigentums von {teamName}" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} hat das Dokument genehmigt" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} hat das Dokument in CC gesetzt" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} hat ihre Aufgabe abgeschlossen" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} hat das Dokument abgelehnt" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} hat das Dokument unterschrieben" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} hat das Dokument angesehen" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Eine # Ergebnis wird angezeigt.} other {# Ergebnisse werden angezeigt.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\" steht nicht mehr zur Unterschrift zur Verfügung" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} hat angefordert, dass du das folgende Team übernimmst" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} hat angefragt, Ihre E-Mail-Adresse für ihr Team bei Documenso zu verwenden." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Klicken Sie hier, um hochzuladen oder ziehen Sie die Datei per Drag & Drop" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>E-Mail - Der Empfänger erhält das Dokument zur Unterschrift, Genehmigung usw." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Authentifizierungsmethode erben - Verwenden Sie die in den \"Allgemeinen Einstellungen\" konfigurierte globale Aktionssignatur-Authentifizierungsmethode" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>Keine Einschränkungen - Keine Authentifizierung erforderlich" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>Keine Einschränkungen - Das Dokument kann direkt über die dem Empfänger gesendete URL abgerufen werden" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>Keine - Keine Authentifizierung erforderlich" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>Keiner - Wir werden Links generieren, die Sie manuell an die Empfänger senden können." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Hinweis - Wenn Sie Links in Kombination mit direkten Vorlagen verwenden, müssen Sie die Links manuell an die restlichen Empfänger senden." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>2FA erforderlich - Der Empfänger muss ein Konto haben und die 2FA über seine Einstellungen aktiviert haben" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Konto erforderlich - Der Empfänger muss angemeldet sein, um das Dokument anzeigen zu können" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Passkey erforderlich - Der Empfänger muss ein Konto haben und den Passkey über seine Einstellungen konfiguriert haben" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Absender: Alle" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>Sie sind dabei, die Genehmigung von <1>\"{documentTitle}\" abzuschließen.<2/> Sind Sie sicher?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Sie sind dabei, die Unterzeichnung von \"<1>{documentTitle}\" abzuschließen.<2/> Sind Sie sicher?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Sie sind dabei, die Ansicht von \"<1>{documentTitle}\" abzuschließen.<2/> Sind Sie sicher?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "1 Monat" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "12 Monate" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "3 Monate" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Profil nicht gefunden" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Team nicht gefunden" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "6 Monate" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "7 Tage" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "Eine Bestätigungs-E-Mail wurde gesendet, und sie sollte in Kürze in deinem Posteingang ankommen." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "Ein Gerät, das in der Lage ist, Dokumente zuzugreifen, zu öffnen und zu lesen" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "Ein Dokument wurde von deiner direkten Vorlage erstellt, das erfordert, dass du {recipientActionVerb}." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "Ein Entwurf wird erstellt" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "Ein Feld wurde hinzugefügt" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "Ein Feld wurde entfernt" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "Ein Feld wurde aktualisiert" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "Ein Mittel, um Dokumente für Ihre Unterlagen zu drucken oder herunterzuladen" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "Ein neues Mitglied ist deinem Team beigetreten" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "Ein neuer Token wurde erfolgreich erstellt." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "Eine E-Mail zum Zurücksetzen des Passworts wurde gesendet, wenn du ein Konto hast, solltest du sie in Kürze in deinem Posteingang sehen." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "Ein Empfänger wurde hinzugefügt" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "Ein Empfänger wurde entfernt" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "Ein Empfänger wurde aktualisiert" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "Eine Anfrage zur Übertragung des Eigentums dieses Teams wurde an <0>{0} ({1}) gesendet" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "Eine Anfrage zur Verwendung Ihrer E-Mail wurde von {0} auf Documenso initiiert" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "Ein Geheimnis, das an deine URL gesendet wird, damit du überprüfen kannst, dass die Anfrage von Documenso gesendet wurde" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "Ein Geheimnis, das an deine URL gesendet wird, damit du überprüfen kannst, dass die Anfrage von Documenso gesendet wurde." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "Eine stabile Internetverbindung" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "Ein Teammitglied ist einem Team bei Documenso beigetreten" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "Ein Teammitglied hat {0} verlassen" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "Ein Teammitglied hat ein Team auf Documenso verlassen" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "Ein Team, dem du angehörtest, wurde gelöscht" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "Eine eindeutige URL, um auf dein Profil zuzugreifen" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "Eine eindeutige URL, um dein Team zu identifizieren" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "Eine Bestätigungs-E-Mail wird an die angegebene E-Mail-Adresse gesendet." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Akzeptieren" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Einladung annehmen, um einem Team auf Documenso beizutreten" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Akzeptiere die Team-E-Mail-Anfrage für {teamName} bei Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Übertragungsanfrage des Teams auf Documenso annehmen" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Zustimmung und Einverständnis" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Team-Einladung akzeptiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Kontowauthentifizierung" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Konto gelöscht" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Konto deaktiviert" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Konto aktiviert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Kontowiederauthentifizierung" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Bestätigung" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Aktion" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Aktionen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Aktiv" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Aktive Abonnements" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Hinzufügen" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Dokument hinzufügen" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Fügen Sie eine URL hinzu, um den Benutzer nach der Unterzeichnung des Dokuments weiterzuleiten" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Fügen Sie alle relevanten Felder für jeden Empfänger hinzu." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Fügen Sie alle relevanten Platzhalter für jeden Empfänger hinzu." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Fügen Sie einen Authenticator hinzu, um als sekundäre Authentifizierungsmethode für die Unterzeichnung von Dokumenten zu dienen." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Fügen Sie einen Authenticator hinzu, um als sekundäre Authentifizierungsmethode beim Einloggen oder bei der Unterzeichnung von Dokumenten zu dienen." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Fügen Sie dem Dokument eine externe ID hinzu. Diese kann verwendet werden, um das Dokument in externen Systemen zu identifizieren." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Fügen Sie der Vorlage eine externe ID hinzu. Diese kann zur Identifizierung in externen Systemen verwendet werden." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Weitere Option hinzufügen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Weiteren Wert hinzufügen" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "E-Mail hinzufügen" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Felder hinzufügen" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Mehr hinzufügen" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "Mich selbst hinzufügen" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "Mich hinzufügen" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Passkey hinzufügen" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Platzhalterempfänger hinzufügen" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Platzhalter hinzufügen" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Unterzeichner hinzufügen" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Unterzeichner hinzufügen" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Team-E-Mail hinzufügen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Text hinzufügen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Text zum Feld hinzufügen" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Fügen Sie die Personen hinzu, die das Dokument unterschreiben werden." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Fügen Sie die Empfänger hinzu, um das Dokument zu erstellen" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Das Hinzufügen und Entfernen von Sitzplätzen wird Ihre Rechnung entsprechend anpassen." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Zusätzliche Markeninformationen, die am Ende von E-Mails angezeigt werden sollen" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Administrator" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Admin-Aktionen" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Admin-Panel" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Erweiterte Optionen" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Erweiterte Einstellungen" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "Nach der elektronischen Unterzeichnung eines Dokuments haben Sie die Möglichkeit, das Dokument für Ihre Unterlagen anzusehen, herunterzuladen und auszudrucken. Es wird dringend empfohlen, eine Kopie aller elektronisch unterschriebenen Dokumente für Ihre persönlichen Unterlagen aufzubewahren. Wir werden ebenfalls eine Kopie des unterzeichneten Dokuments für unsere Unterlagen behalten, jedoch können wir Ihnen nach einer bestimmten Zeit möglicherweise keine Kopie des unterzeichneten Dokuments mehr zur Verfügung stellen." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "Nach der Übermittlung wird ein Dokument automatisch generiert und zu Ihrer Dokumentenseite hinzugefügt. Sie erhalten außerdem eine Benachrichtigung per E-Mail." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "Alle" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "Alle Dokumente" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "Alle Dokumente wurden verarbeitet. Alle neuen Dokumente, die gesendet oder empfangen werden, werden hier angezeigt." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "Alle Dokumente, die mit dem elektronischen Unterzeichnungsprozess zusammenhängen, werden Ihnen elektronisch über unsere Plattform oder per E-Mail zur Verfügung gestellt. Es liegt in Ihrer Verantwortung, sicherzustellen, dass Ihre E-Mail-Adresse aktuell ist und dass Sie unsere E-Mails empfangen und öffnen können." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "Alle eingefügten Unterschriften werden annulliert" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "Alle Empfänger werden benachrichtigt" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "Alle Unterschriften wurden ungültig gemacht." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "Alle Signierlinks wurden in die Zwischenablage kopiert." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "Alle Vorlagen" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "Alle Zeiten" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Erlauben Sie den Dokumentempfängern, direkt an diese E-Mail-Adresse zu antworten" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Erlaubt die Authentifizierung mit biometrischen Daten, Passwort-Managern, Hardware-Schlüsseln usw." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "Hast du bereits ein Konto? <0>Stattdessen anmelden" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Betrag" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "Ein Administrator hat dein Dokument \"{documentName}\" gelöscht." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "Eine elektronische Unterschrift, die Sie auf unserer Plattform bereitstellen, durch Klicken auf ein Dokument und Eingabe Ihres Namens oder einer anderen von uns bereitgestellten elektronischen Unterzeichnungsart, ist rechtlich bindend. Sie hat das gleiche Gewicht und die gleiche Durchsetzbarkeit wie eine handschriftliche Unterschrift auf Papier." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "Ein E-Mail-Konto" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "Eine E-Mail mit einer Einladung wird an jedes Mitglied gesendet." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "Eine E-Mail, in der die Übertragung dieses Teams angefordert wird, wurde gesendet." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "Ein Fehler ist aufgetreten" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "Ein Fehler ist aufgetreten beim Hinzufügen von Feldern." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "Ein Fehler ist aufgetreten, während Unterzeichner hinzugefügt wurden." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "Ein Fehler ist aufgetreten, während die Felder hinzugefügt wurden." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "Beim automatischen Signieren des Dokuments ist ein Fehler aufgetreten, einige Felder wurden möglicherweise nicht signiert. Bitte überprüfen Sie und signieren Sie alle verbleibenden Felder manuell." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "Ein Fehler ist aufgetreten, während das Dokument aus der Vorlage erstellt wurde." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "Ein Fehler ist aufgetreten, während der Webhook erstellt wurde. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "Ein Fehler ist beim Löschen des Benutzers aufgetreten." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "Ein Fehler ist aufgetreten, während das direkte Links-Signieren deaktiviert wurde." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "Ein Fehler ist aufgetreten, während der Benutzer deaktiviert wurde." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "Ein Fehler ist aufgetreten, während dein Dokument heruntergeladen wurde." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "Ein Fehler ist aufgetreten, während die Vorlage dupliziert wurde." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "Ein Fehler ist aufgetreten, während das direkte Links-Signieren aktiviert wurde." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "Ein Fehler ist aufgetreten, während der Benutzer aktiviert wurde." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "Ein Fehler ist aufgetreten, während die Teammitglieder geladen wurden. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "Ein Fehler ist beim Laden des Dokuments aufgetreten." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "Ein Fehler ist aufgetreten, während das Dokument verschoben wurde." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "Ein Fehler ist aufgetreten, während die Vorlage verschoben wurde." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "Ein Fehler ist beim Entfernen des Feldes aufgetreten." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "Ein Fehler ist aufgetreten, während die Unterschrift entfernt wurde." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "Ein Fehler ist aufgetreten, während das Dokument gesendet wurde." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "Beim Senden Ihrer Bestätigungs-E-Mail ist ein Fehler aufgetreten" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "Ein Fehler ist aufgetreten, während das Dokument unterzeichnet wurde." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "" -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "Ein Fehler ist aufgetreten, während die Dokumenteinstellungen aktualisiert wurden." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "Ein Fehler ist aufgetreten, während die Unterschrift aktualisiert wurde." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "Ein Fehler ist aufgetreten, während dein Profil aktualisiert wurde." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "Ein Fehler ist aufgetreten, während dein Dokument hochgeladen wurde." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "Es ist ein unbekannter Fehler aufgetreten" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Alle Zahlungsmethoden, die mit diesem Team verbunden sind, bleiben diesem Team zugeordnet. Bitte kontaktiere uns, wenn du diese Informationen aktualisieren möchtest." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Jede Quelle" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Jeder Status" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "API-Token" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "App-Version" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Genehmigen" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Dokument genehmigen" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Genehmigt" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Genehmiger" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Genehmigende" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Genehmigung" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "Bist du sicher, dass du dieses Token löschen möchtest?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Sind Sie sicher, dass Sie dieses Dokument ablehnen möchten? Diese Aktion kann nicht rückgängig gemacht werden." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "Bist du sicher, dass du den <0>{passkeyName} Passkey entfernen möchtest." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "Bist du dir sicher, dass du dieses Team löschen möchtest?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "Bist du dir sicher?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "" -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Versuche, das Dokument erneut zu versiegeln, nützlich nach einer Codeänderung, um ein fehlerhaftes Dokument zu beheben." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Audit-Protokoll" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Authentifizierungsstufe" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Authentifizierung erforderlich" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Avatar aktualisiert" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "Warte auf E-Mail-Bestätigung" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Zurück" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Zurück zu Dokumenten" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Hintergrundfarbe" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Backup-Code" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Backup-Codes" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Banner aktualisiert" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Basisdetails" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Bitte bestätige vor dem Start deine E-Mail-Adresse, indem du auf den Button unten klickst:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Abrechnung" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Schwarz" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Blau" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Markenpräferenzen" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Markenpräferenzen aktualisiert" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Browser" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Massenkopie" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Bulk-Import" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Massenversand abgeschlossen: {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Massenversand abgeschlossen für Vorlage \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Bulk-Vorlage senden über CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Massenversand per CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "von <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "Durch die Annahme dieser Anfrage gewähren Sie <0>{teamName} Zugriff auf:" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "Indem du diese Anfrage annimmst, übernimmst du die Verantwortung für alle Abrechnungspunkte, die mit diesem Team verbunden sind." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "Durch das Löschen dieses Dokuments wird Folgendes passieren:" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "Indem Sie den elektronischen Unterzeichnungsdienst von Documenso verwenden, bestätigen Sie, dass Sie diese Offenlegung gelesen und verstanden haben. Sie stimmen allen Bedingungen und Konditionen zu, die mit der Verwendung elektronischer Unterschriften und elektronischer Transaktionen verbunden sind, wie hierin dargelegt." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "Indem Sie fortfahren, Ihre elektronische Unterschrift zu leisten, erkennen Sie an und stimmen zu, dass sie verwendet wird, um das gegebene Dokument zu unterzeichnen, und die gleiche rechtliche Gültigkeit wie eine handschriftliche Unterschrift hat. Durch den Abschluss des elektronischen Unterzeichnungsprozesses bestätigen Sie Ihr Verständnis und Ihre Akzeptanz dieser Bedingungen." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "Durch die Verwendung der elektronischen Unterschriftsfunktion stimmen Sie zu, Transaktionen durchzuführen und Offenlegungen elektronisch zu erhalten. Sie erkennen an, dass Ihre elektronische Unterschrift auf Dokumenten bindend ist und dass Sie die Bedingungen akzeptieren, die in den Dokumenten dargelegt sind, die Sie unterzeichnen." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Abbrechen" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Vom Benutzer abgebrochen" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "Unterzeichner kann nicht entfernt werden" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "Cc" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "CC" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "CC'd" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "Kohlenstoffkopierer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Zeichenbeschränkung" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Diagramme" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Kontrollkästchen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Checkbox-Werte" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Abrechnung" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Wählen Sie einen vorhandenen Empfänger unten aus, um fortzufahren" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Wählen Sie den direkten Link Empfänger" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Wählen Sie, wie das Dokument die Empfänger erreichen soll" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Wählen..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Konto beanspruchen" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Benutzername beanspruchen" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Benutzername jetzt beanspruchen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Datei löschen" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Filter löschen" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Unterschrift löschen" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Klicken Sie hier, um zu beginnen" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Klicken Sie hier, um es erneut zu versuchen" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Klicken Sie hier, um hochzuladen" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Klicken Sie, um den Signatur-Link zu kopieren, um ihn an den Empfänger zu senden" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Klicken, um das Feld auszufüllen" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Schließen" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Abschließen" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Genehmigung abschließen" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Unterzeichnung abschließen" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Betrachten abschließen" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Abgeschlossen" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Abgeschlossenes Dokument" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Abgeschlossene Dokumente" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Abgeschlossene Dokumente" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Direkten Empfänger konfigurieren" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Konfigurieren Sie die allgemeinen Einstellungen für das Dokument." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Konfigurieren Sie die allgemeinen Einstellungen für die Vorlage." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Vorlage konfigurieren" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Konfigurieren Sie das Feld {0}" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Bestätigen" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Bestätigen Sie durch Eingabe von <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Bestätigen Sie durch Eingabe von <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Bestätigen Sie durch Eingabe: <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Bestätigung der Löschung" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "E-Mail bestätigen" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "Bestätigungs-E-Mail gesendet" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Zustimmung zu elektronischen Transaktionen" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Kontaktinformationen" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Inhalt" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Fortsetzen" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Fahre fort, indem du das Dokument genehmigst." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "" -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Fahre fort, indem du das Dokument herunterlädst." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Fahre fort, indem du das Dokument signierst." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Fahre fort, indem du das Dokument ansiehst." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Weiter zum Login" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Steuert die Standardsprache eines hochgeladenen Dokuments. Diese wird als Sprache in der E-Mail-Kommunikation mit den Empfängern verwendet." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Steuert die Standard-sichtbarkeit eines hochgeladenen Dokuments." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Steuert das Format der Nachricht, die gesendet wird, wenn ein Empfänger eingeladen wird, ein Dokument zu unterschreiben. Wenn eine benutzerdefinierte Nachricht beim Konfigurieren des Dokuments bereitgestellt wurde, wird diese stattdessen verwendet." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Legt fest, ob die Empfänger die Dokumente mit einer getippten Unterschrift unterschreiben können. Aktivieren oder deaktivieren Sie die getippte Unterschrift global." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Legt fest, ob das Signaturzertifikat in das Dokument aufgenommen wird, wenn es heruntergeladen wird. Das Signaturzertifikat kann weiterhin separat von der Protokollseite heruntergeladen werden." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Kopiert" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "In die Zwischenablage kopiert" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Kopieren" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Link kopieren" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Kopieren Sie den teilbaren Link" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Kopiere den teilbaren Link" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Signierlinks kopieren" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Token kopieren" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Erstellen" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Erstelle ein <0>kostenfreies Konto, um jederzeit auf deine unterzeichneten Dokumente zuzugreifen." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Ein neues Konto erstellen" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Ein Team erstellen, um mit Ihren Teammitgliedern zusammenzuarbeiten." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Konto erstellen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Erstellen und senden" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Als Entwurf erstellen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Als ausstehend erstellen" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Direkten Link erstellen" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Direkten Signatur-Link erstellen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Dokument aus der Vorlage erstellen" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Jetzt erstellen" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Einen automatisch erstellen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Unterzeichnung Links erstellen" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Team erstellen" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Team erstellen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Erstellen Sie das Dokument als ausstehend und bereit zur Unterschrift." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Token erstellen" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Webhook erstellen" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Webhook erstellen" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Erstellen Sie Ihr Konto und beginnen Sie mit dem modernen Dokumentensignieren." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Erstellen Sie Ihr Konto und beginnen Sie mit dem modernen Dokumentensignieren. Offenes und schönes Signieren liegt in Ihrer Reichweite." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Erstellt" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Erstellt am" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Erstellt von" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Erstellt am" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Erstellt am {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "CSV-Struktur" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Aktuelles Passwort" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "Aktuelles Passwort ist falsch." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Aktuelle Empfänger:" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Dunkelmodus" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Datum" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Erstellungsdatum" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Datumsformat" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Ablehnen" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Team-Einladung abgelehnt" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Standardsprache des Dokuments" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Standard Sichtbarkeit des Dokuments" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "löschen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Löschen" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "löschen {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "löschen {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Konto löschen" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Konto löschen" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Dokument löschen" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Dokument löschen" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Passkey löschen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Team löschen" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Teammitglied löschen" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Löschen Sie das Dokument. Diese Aktion ist irreversibel, daher seien Sie vorsichtig." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Löschen Sie das Benutzerkonto und seinen gesamten Inhalt. Diese Aktion ist irreversibel und wird das Abonnement kündigen, seien Sie also vorsichtig." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Webhook löschen" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Löschen Sie Ihr Konto und alle Inhalte, einschließlich abgeschlossener Dokumente. Diese Aktion ist irreversibel und führt zur Kündigung Ihres Abonnements, seien Sie also vorsichtig." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Gelöscht" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Konto wird gelöscht..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Einzelheiten" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Gerät" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "Hast du keinen Passwortwechsel angefordert? Wir helfen dir, dein Konto abzusichern, kontaktiere uns einfach <0>hier." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "Direkter Link" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Direkter Link" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Direkter Link" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "Direkter Link deaktiviert" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Empfänger des direkten Links" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Direkt-Link-Signatur" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "Die direkte Links-Signatur wurde deaktiviert" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "Die direkte Links-Signatur wurde aktiviert" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "Direkte Linkvorlagen enthalten einen dynamischen Empfänger-Platzhalter. Jeder, der Zugriff auf diesen Link hat, kann das Dokument unterzeichnen, und es wird dann auf Ihrer Dokumenten-Seite angezeigt." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Direkter Vorlagenlink gelöscht" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "Die Verwendung des direkten Vorlagenlinks wurde überschritten ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Deaktivieren" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "2FA deaktivieren" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Konto deaktivieren" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Konto Deaktivieren" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Deaktivieren Sie die Zwei-Faktor-Authentifizierung, bevor Sie Ihr Konto löschen." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Deaktiviert" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Das Deaktivieren der direkten Link-Signatur verhindert, dass jemand auf den Link zugreifen kann." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Das Deaktivieren des Benutzers führt dazu, dass der Benutzer das Konto nicht mehr nutzen kann. Es werden auch alle zugehörigen Inhalte wie Abonnements, Webhooks, Teams und API-Schlüssel deaktiviert." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Zeigen Sie Ihren Namen und Ihre E-Mail in Dokumenten an" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Dokument verteilen" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "Möchten Sie diese Vorlage löschen?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "Möchten Sie diese Vorlage duplizieren?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso wird <0>alle Ihre Dokumente löschen, zusammen mit allen abgeschlossenen Dokumenten, Unterschriften und allen anderen Ressourcen, die zu Ihrem Konto gehören." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Dokument" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Dokument \"{0}\" - Abgelehnt von {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Dokument \"{0}\" - Ablehnung Bestätigt" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Dokumentenzugriff" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "Die Authentifizierung für den Dokumentenzugriff wurde aktualisiert" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Dokument Alle" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Dokument genehmigt" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Dokument storniert" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Dokument abgeschlossen" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "E-Mail zum Abschluss des Dokuments" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "Dokument abgeschlossen!" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Dokument erstellt" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Dokument erstellt von <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Dokument erstellt aus direkter Vorlage" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Dokument erstellt mit einem <0>direkten Link" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Dokumenterstellung" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Dokument gelöscht" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "E-Mail zum Löschen des Dokuments" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "Dokument gelöscht!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Verteilungsmethode für Dokumente" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Dokument-Entwurf" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Dokument dupliziert" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "Externe ID des Dokuments aktualisiert" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Dokumentverlauf" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "Dokument-ID" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Dokumenten-Posteingang" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "Dokumentenlimit überschritten!" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Dokumentmetrik" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Dokument verschoben" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Dokument ins Team verschoben" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "Dokument steht nicht mehr zur Unterschrift zur Verfügung" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Dokument geöffnet" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Dokument ausstehend" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "E-Mail über ausstehende Dokumente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Dokumentpräferenzen aktualisiert" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Dokument erneut gesendet" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Dokument Abgelehnt" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Dokument wieder versiegelt" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Dokument gesendet" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Dokument signiert" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Dokument unterzeichnen Authentifizierung aktualisiert" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "Der Dokumentenunterzeichnungsprozess wird abgebrochen" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Dokumentenstatus" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Dokumenttitel" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Dokumenttitel aktualisiert" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Dokument aktualisiert" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "Dokumenten-Upload deaktiviert aufgrund unbezahlter Rechnungen" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Dokument hochgeladen" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Dokument angesehen" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Sichtbarkeit des Dokuments aktualisiert" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "Dokument wird dauerhaft gelöscht" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Dokumente" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Dokumente erstellt aus Vorlage" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Dokumente empfangen" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Dokumente angesehen" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "Haben Sie kein Konto? <0>Registrieren" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Herunterladen" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Auditprotokolle herunterladen" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Zertifikat herunterladen" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Vorlage CSV herunterladen" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Entwurf" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Entwurfdokumente" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Entwurfte Dokumente" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Ziehen Sie Ihr PDF hierher." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Dropdown" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Dropdown-Optionen" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "Aufgrund einer unbezahlten Rechnung wurde Ihrem Team der Zugriff eingeschränkt. Bitte begleichen Sie die Zahlung, um den vollumfänglichen Zugang zu Ihrem Team wiederherzustellen." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Duplizieren" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Bearbeiten" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Vorlage bearbeiten" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Webhook bearbeiten" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Elektronische Zustellung von Dokumenten" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Offenlegung der elektronischen Unterschrift" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "E-Mail" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "E-Mail-Adresse" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "E-Mail-Adresse" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "E-Mail darf nicht bereits in der Vorlage vorhanden sein" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "E-Mail bestätigt!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "E-Mail-Optionen" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "E-Mail erneut gesendet" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "E-Mail gesendet" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "E-Mail gesendet!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "E-Mail-Verifizierung wurde entfernt" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "E-Mail-Verifizierung wurde erneut gesendet" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Leeres Feld" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "2FA aktivieren" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Konto aktivieren" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Konto Aktivieren" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Authenticator-App aktivieren" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Aktivieren Sie individuelles Branding für alle Dokumente in diesem Team." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Direktlink-Signierung aktivieren" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Aktiviere die Signaturreihenfolge" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Getippte Unterschrift aktivieren" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Aktivieren Sie getippte Unterschriften" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Aktiviert" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Das Aktivieren des Kontos führt dazu, dass der Benutzer das Konto wieder nutzen kann, sowie alle damit verbundenen Funktionen wie Webhooks, Teams und API-Schlüssel beispielsweise." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Beigefügte Dokument" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Endet am" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Passwort eingeben" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Geben Sie Ihre Markendaten ein" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Geben Sie Ihre E-Mail-Adresse ein" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Geben Sie Ihre E-Mail-Adresse ein, um das abgeschlossene Dokument zu erhalten." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Geben Sie Ihren Namen ein" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Geben Sie hier Ihren Text ein" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Fehler" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Jeder kann auf das Dokument zugreifen und es anzeigen" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Alle haben unterschrieben" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "Alle haben unterschrieben! Sie werden eine E-Mail-Kopie des unterzeichneten Dokuments erhalten." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Zeitüberschreitung überschritten" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Abgelaufen" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Läuft ab am {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "Externe ID" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Dokument konnte nicht erneut versiegelt werden" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Einstellungen konnten nicht gespeichert werden." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Empfänger konnte nicht aktualisiert werden" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Webhook konnte nicht aktualisiert werden" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Fehlgeschlagen: {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Zeichenbeschränkung des Feldes" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Feldschriftgröße" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Feldformat" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Feldbeschriftung" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Feldplatzhalter" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Feld unterschrieben" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Feld nicht unterschrieben" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Felder" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "Die Datei darf nicht größer als {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB sein" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "Dateigröße überschreitet das Limit von {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Schriftgröße" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "Für Fragen zu dieser Offenlegung, elektronischen Unterschriften oder einem verwandten Verfahren kontaktieren Sie uns bitte unter: <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "Für jeden Empfänger geben Sie dessen E-Mail (erforderlich) und Namen (optional) in separaten Spalten an. Laden Sie unten die CSV-Vorlage für das korrekte Format herunter." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "Passwort vergessen?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "Hast du dein Passwort vergessen?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Freie Unterschrift" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Vollständiger Name" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "Allgemein" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Links generieren" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Globale Empfängerauthentifizierung" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Zurück" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Zurück nach Hause" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Zurück nach Hause" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Zum Eigentümer gehen" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Gehen Sie zu Ihren <0>öffentlichen Profileinstellungen, um Dokumente hinzuzufügen." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Grün" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "hat Sie eingeladen, dieses Dokument zu genehmigen" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "hat Sie eingeladen, dieses Dokument zu unterzeichnen" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "hat Sie eingeladen, dieses Dokument anzusehen" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Hier können Sie Ihre persönlichen Daten bearbeiten." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Hier können Sie Ihre Passwort- und Sicherheitseinstellungen verwalten." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Hier können Sie Präferenzen und Voreinstellungen für das Branding festlegen." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Hier können Sie Präferenzen und Voreinstellungen für Ihr Team festlegen." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "So funktioniert es:" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Hey, ich bin Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Hallo, {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Hallo, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Ausblenden" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Zusätzliche Informationen ausblenden" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "Ich bin ein Unterzeichner dieses Dokuments" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "Ich bin ein Betrachter dieses Dokuments" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "Ich bin ein Genehmiger dieses Dokuments" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "Ich bin verpflichtet, eine Kopie dieses Dokuments zu erhalten" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "Ich bin der Besitzer dieses Dokuments" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "Ich bin mir sicher! Löschen" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "Wenn sie diese Anfrage akzeptieren, wird das Team auf ihr Konto übertragen." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "Wenn Sie die angegebene Authentifizierung nicht verwenden möchten, können Sie sie schließen, wodurch die nächste verfügbare Authentifizierung angezeigt wird." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "Wenn Sie den Bestätigungslink nicht in Ihrem Posteingang finden, können Sie unten einen neuen anfordern." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "Wenn Ihre Authenticator-App keine QR-Codes unterstützt, können Sie stattdessen den folgenden Code verwenden:" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Posteingang" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Posteingang Dokumente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Signaturzertifikat in das Dokument einfügen" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Information" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Authentifizierungsmethode erben" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Initialen" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Eingefügt" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Instanzstatistiken" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Ungültiger Code. Bitte versuchen Sie es erneut." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Ungültige E-Mail" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Ungültiger Link" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Ungültiges Token" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Ungültiges Token bereitgestellt. Bitte versuchen Sie es erneut." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "Einladung akzeptiert!" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Einladung abgelehnt" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "Einladung wurde gelöscht" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "Einladung wurde erneut gesendet" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Einladen" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Mitglied einladen" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Mitglieder einladen" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Teammitglieder einladen" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Eingeladen am" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Rechnung" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "IP-Adresse" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "Es ist entscheidend, dass Sie Ihre Kontaktinformationen, insbesondere Ihre E-Mail-Adresse, aktuell halten. Bitte informieren Sie uns sofort über Änderungen, damit Sie weiterhin alle notwendigen Mitteilungen erhalten." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Es sieht so aus, als ob {0} noch keine Dokumente zu ihrem Profil hinzugefügt hat." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Es scheint, dass das bereitgestellte Token abgelaufen ist. Wir haben Ihnen gerade ein weiteres Token gesendet, bitte überprüfen Sie Ihre E-Mails und versuchen Sie es erneut." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "Es scheint, dass kein Token bereitgestellt wurde. Wenn Sie versuchen, Ihre E-Mail zu verifizieren, folgen Sie bitte dem Link in Ihrer E-Mail." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "Es ist derzeit nicht deine Reihe zu unterschreiben. Du erhältst eine E-Mail mit Anweisungen, sobald es deine Reihe ist, das Dokument zu unterschreiben." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Tritt {teamName} auf Documenso bei" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Beschriftung" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Sprache" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "Die letzten 14 Tage" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "Die letzten 30 Tage" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "Die letzten 7 Tage" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Zuletzt geändert" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Zuletzt aktualisiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Zuletzt aktualisiert" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Zuletzt aktualisiert am" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Zuletzt verwendet" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Bestenliste" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Verlassen" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Team verlassen" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Rechtlichkeit elektronischer Unterschriften" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Lichtmodus" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "Möchten Sie Ihr eigenes öffentliches Profil mit Vereinbarungen haben?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "Link läuft in 1 Stunde ab." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Vorlage verlinken" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Links generiert" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Anhören von {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Ältere Aktivitäten laden" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Lade Dokument..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Dokument wird geladen..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Teams werden geladen..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Wird geladen..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Anmelden" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Verwalten" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Verwalten Sie das Profil von {0}" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Verwalten Sie alle Teams, mit denen Sie derzeit verbunden sind." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Vorlage verwalten und anzeigen" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Details für diese öffentliche Vorlage verwalten" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Direktlink verwalten" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Dokumente verwalten" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Passkeys verwalten" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Abonnement verwalten" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Abonnements verwalten" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Teamabonnement verwalten." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Teams verwalten" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Die direkte Linkunterzeichnung für diese Vorlage verwalten" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Die Mitglieder verwalten oder neue Mitglieder einladen." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Benutzer verwalten" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Verwalten Sie Ihre Passkeys." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Verwalten Sie hier Ihre Seiteneinstellungen" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Manager" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Als angesehen markieren" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (erstellt Dokument)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (hat Dokument abgeschlossen)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "Max" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Maximale Dateigröße: 4MB. Maximal 100 Zeilen pro Upload. Leere Werte verwenden die Vorlagenstandards." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Mitglied" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Mitglied seit" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Mitglieder" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Nachricht <0>(Optional)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "Min" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Empfänger ändern" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Monatlich" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Monatlich aktive Benutzer: Benutzer, die mindestens ein Dokument erstellt haben" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Monatlich aktive Benutzer: Benutzer, die mindestens eines ihrer Dokumente abgeschlossen haben" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Verschieben" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Dokument in Team verschieben" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Vorlage in Team verschieben" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "In Team verschieben" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Verschieben..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "Meine Vorlagen" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Name" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "Müssen Dokumente signieren?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Muss genehmigen" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Muss unterzeichnen" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Muss sehen" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Niemals" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Nie ablaufen" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "Neuer Teamowner" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "Neue Vorlage" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Nächster" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Nächstes Feld" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "Keine aktiven Entwürfe" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "Es sind derzeit keine weiteren Maßnahmen Ihrerseits erforderlich." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "Keine Zahlung erforderlich" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "Keine Vorlagen für das öffentliche Profil gefunden" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "Keine aktuellen Aktivitäten" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "Keine aktuellen Dokumente" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "Kein passender Empfänger mit dieser Beschreibung gefunden." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "Keine Empfänger" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "Keine Empfänger mit dieser Rolle" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "Keine Einschränkungen" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "Keine Ergebnisse gefunden." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "Kein Unterschriftsfeld gefunden" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "Keine gültigen direkten Vorlagen gefunden" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "Keine gültigen Empfänger gefunden" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "Kein Wert gefunden." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "Keine Sorge, das passiert! Geben Sie Ihre E-Mail ein, und wir senden Ihnen einen speziellen Link zum Zurücksetzen Ihres Passworts." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "Keine" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "Nicht unterstützt" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Nichts zu tun" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Nummer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Zahlenformat" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "im Auftrag von \"{0}\" hat Sie eingeladen, dieses Dokument zu genehmigen" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "im Auftrag von \"{0}\" hat Sie eingeladen, dieses Dokument zu unterzeichnen" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "im Auftrag von \"{0}\" hat Sie eingeladen, dieses Dokument anzusehen" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "Auf dieser Seite können Sie einen neuen Webhook erstellen." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "Auf dieser Seite können Sie neue Webhooks erstellen und die vorhandenen verwalten." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "Auf dieser Seite können Sie den Webhook und seine Einstellungen bearbeiten." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Sobald dies bestätigt ist, wird Folgendes geschehen:" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Sobald aktiviert, können Sie einen aktiven Empfänger für die Direktlink-Signierung auswählen oder einen neuen erstellen. Dieser Empfängertyp kann nicht bearbeitet oder gelöscht werden." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Sobald Sie den QR-Code gescannt oder den Code manuell eingegeben haben, geben Sie den von Ihrer Authentifizierungs-App bereitgestellten Code unten ein." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Sobald Ihre Vorlage eingerichtet ist, teilen Sie den Link überall, wo Sie möchten. Die Person, die den Link öffnet, kann ihre Informationen im Feld für direkte Empfänger eingeben und alle anderen ihr zugewiesenen Felder ausfüllen." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Nur Administratoren können auf das Dokument zugreifen und es anzeigen" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Nur Manager und darüber können auf das Dokument zugreifen und es anzeigen" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Nur Abonnenten können einen Benutzernamen mit weniger als 6 Zeichen haben" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "Hoppla! Etwas ist schief gelaufen." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Geöffnet" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "Oder" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "Oder fahren Sie fort mit" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "Andernfalls wird das Dokument als Entwurf erstellt." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Besitzer" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Seite {0} von {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Seite {0} von {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Bezahlt" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Passkey" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "Passkey existiert bereits für den bereitgestellten Authentifikator" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "Die Erstellung der Passkey wurde aus einem der folgenden Gründe abgebrochen:" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "Die Passkey wurde entfernt" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "Die Passkey wurde aktualisiert" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Passkey-Name" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Passwortwiederauthentifizierung" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Passkeys" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Passkeys ermöglichen das Anmelden und die Authentifizierung mit biometrischen Daten, Passwortmanagern usw." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Passkeys werden von diesem Browser nicht unterstützt" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "Passwort" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Passwort erforderlich" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Passwortzurücksetzung angefordert" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Passwort erfolgreich zurückgesetzt" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "Das Passwort sollte nicht allgemein sein oder auf persönlichen Informationen basieren" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Passwort aktualisiert" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "Passwort aktualisiert!" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Bezahle" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "Zahlung ist erforderlich, um die Erstellung Ihres Teams abzuschließen." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Zahlung überfällig" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "Ausstehend" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Ausstehendes Dokument" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Ausstehende Dokumente" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Ausstehende Dokumente" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Ausstehende Einladungen" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Ausstehendes Team gelöscht." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Persönlich" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Persönliches Konto" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Wählen Sie eine Zahl" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Wählen Sie ein Passwort" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Wählen Sie eine der folgenden Vereinbarungen aus und beginnen Sie das Signieren, um loszulegen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Platzhalter" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Bitte {0} dein Dokument<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Bitte {action} dein Dokument {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Bitte {recipientActionVerb} dieses Dokument" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Bitte {recipientActionVerb} dieses Dokument, das von deiner direkten Vorlage erstellt wurde" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Bitte {recipientActionVerb} dein Dokument" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Bitte prüfen Sie die CSV-Datei und stellen Sie sicher, dass sie unserem Format entspricht" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Bitte überprüfe deine E-Mail auf Updates." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Bitte wählen Sie Ihr neues Passwort" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Bitte bestätige deine E-Mail" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Bitte bestätige deine E-Mail-Adresse" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Bitte kontaktieren Sie den Support, wenn Sie diese Aktion rückgängig machen möchten." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Bitte geben Sie einen aussagekräftigen Namen für Ihr Token ein. Dies wird Ihnen helfen, es später zu identifizieren." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Bitte geben Sie einen gültigen Namen ein." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Bitte als angesehen markieren, um abzuschließen" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Bitte beachten Sie, dass das Fortfahren den direkten Linkempfänger entfernt und ihn in einen Platzhalter umwandelt." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Bitte beachten Sie, dass diese Aktion <0>irreversibel ist." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Bitte beachten Sie, dass diese Aktion <0>irreversibel ist. Nachdem dies bestätigt wurde, wird dieses Dokument dauerhaft gelöscht." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Bitte beachten Sie, dass diese Aktion irreversibel ist. Sobald sie bestätigt wird, wird Ihre Vorlage dauerhaft gelöscht." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Bitte beachten Sie, dass diese Aktion irreversibel ist. Sobald sie bestätigt wird, wird Ihr Token dauerhaft gelöscht." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Bitte beachten Sie, dass Sie den Zugriff auf alle Dokumente, die mit diesem Team verbunden sind, verlieren werden und alle Mitglieder entfernt und benachrichtigt werden." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Bitte beachten Sie, dass Sie den Zugriff auf alle mit diesem Team verbundenen Dokumente verlieren werden und alle Mitglieder entfernt und benachrichtigt werden." -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Bitte geben Sie einen Grund an" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Bitte geben Sie ein Token von der Authentifizierungs-App oder einen Backup-Code an. Wenn Sie keinen Backup-Code haben, kontaktieren Sie bitte den Support." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Bitte geben Sie ein Token von Ihrem Authentifizierer oder einen Backup-Code an." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Bitte überprüfen Sie das Dokument vor der Unterzeichnung." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Bitte wählen Sie eine PDF-Datei aus" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Bitte versuchen Sie es erneut und stellen Sie sicher, dass Sie die korrekte E-Mail-Adresse eingeben." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Bitte versuchen Sie es später noch einmal." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Bitte versuchen Sie es erneut oder kontaktieren Sie unseren Support." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Bitte {0} eingeben, um zu bestätigen" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Bitte geben Sie <0>{0} ein, um zu bestätigen." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Vorformatiertes CSV-Template mit Beispieldaten." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Einstellungen" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Vorschau" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Vorschau und Vorlagen konfigurieren." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Privat" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "Private Vorlagen können nur von Ihnen bearbeitet und angezeigt werden." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "Profil ist derzeit <0>versteckt." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "Profil ist derzeit <0>sichtbar." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Profil aktualisiert" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Öffentlich" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Öffentliches Profil" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "Öffentlicher Profil-URL" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Öffentlicher Profil-Benutzername" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "Öffentliche Vorlagen sind mit Ihrem öffentlichen Profil verbunden. Änderungen an öffentlichen Vorlagen erscheinen auch in Ihrem öffentlichen Profil." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "Radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Radio-Werte" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Nur lesen" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Nur-Lese-Feld" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Lesen Sie die vollständige <0>Offenlegung der Unterschrift." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Bereit" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Grund" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "" -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Grund für die Ablehnung: {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "Der Grund muss weniger als 500 Zeichen lang sein" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "Eine erneute Authentifizierung ist erforderlich, um dieses Feld zu unterschreiben" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Erhält Kopie" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Aktuelle Aktivitäten" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Neueste Dokumente" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Empfänger" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Empfängeraktion Authentifizierung" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "E-Mail des entfernten Empfängers" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "E-Mail über Empfänger-unterschrieben" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "E-Mail zur Unterzeichnungsanfrage des Empfängers" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Empfänger aktualisiert" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Empfänger" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Empfängermetriken" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "Empfänger behalten weiterhin ihre Kopie des Dokuments" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Wiederherstellungscode kopiert" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Wiederherstellungscodes" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Rot" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "Weiterleitungs-URL" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Registrierung erfolgreich" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Dokument Ablehnen" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Abgelehnt" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Ablehnung Bestätigt" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Ablehnungsgrund: {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "Haben Sie Ihr Passwort vergessen? <0>Einloggen" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Erinnerung: {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Erinnerung: {0} hat dich eingeladen, ein Dokument {recipientActionVerb}" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Erinnerung: Bitte {recipientActionVerb} dieses Dokument" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Erinnerung: Bitte {recipientActionVerb} dein Dokument" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Entfernen" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Team-E-Mail entfernen" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Teammitglied entfernen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Erneuert: {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Passwort wiederholen" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Übertragung anfordern" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Pflichtfeld" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Dokument wieder versiegeln" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Erneut senden" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Bestätigungs-E-Mail erneut senden" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Bestätigung erneut senden" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Zurücksetzen" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "Zurücksetzungs-E-Mail gesendet" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Passwort zurücksetzen" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Passwort wird zurückgesetzt..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Zahlung klären" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Zahlung klären" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Seien Sie versichert, Ihr Dokument ist streng vertraulich und wird niemals geteilt. Nur Ihre Unterzeichnungserfahrung wird hervorgehoben. Teilen Sie Ihre personalisierte Unterschriftkarte, um Ihre Unterschrift zu präsentieren!" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Aufbewahrung von Dokumenten" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Wiederholen" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Zurück" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Zurück zum Dashboard" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Zurück zur Startseite" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Zurück zur Anmeldung" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Zugriff widerrufen" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Zugriff widerrufen" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Rolle" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Rollen" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Zeilen pro Seite" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Speichern" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Vorlage speichern" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Suchen" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Nach Dokumenttitel suchen" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Nach Name oder E-Mail suchen" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Dokumente suchen..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Sprachen suchen..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Geheim" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Sicherheit" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Sicherheitsaktivität" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Auswählen" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Wählen Sie ein Team aus" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Wählen Sie ein Team aus, um dieses Dokument dorthin zu verschieben. Diese Aktion kann nicht rückgängig gemacht werden." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Wählen Sie ein Team aus, um diese Vorlage dorthin zu verschieben. Diese Aktion kann nicht rückgängig gemacht werden." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Wählen Sie eine Vorlage aus, die Sie in Ihrem öffentlichen Profil anzeigen möchten" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Wählen Sie eine Vorlage aus, die Sie im öffentlichen Profil Ihres Teams anzeigen möchten" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Option auswählen" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Wählen Sie mindestens" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Standardoption auswählen" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Passkey auswählen" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Senden" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Bestätigungs-E-Mail senden" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Dokument senden" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Dokument senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "E-Mail über den Abschluss des Dokuments senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "E-Mail über den Abschluss des Dokuments an den Eigentümer senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "E-Mail über das Löschen des Dokuments senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "E-Mail über ausstehende Dokumente senden" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Dokumente im Namen des Teams über die E-Mail-Adresse senden" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Dokumente sofort an Empfänger senden" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Im Namen des Teams senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "E-Mail über entfernten Empfänger senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "E-Mail über Empfänger-unterschrieben senden" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "E-Mail über Unterzeichnungsanfrage des Empfängers senden" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Erinnerung senden" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Absender" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Zurücksetzungs-E-Mail wird gesendet..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Senden..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Gesendet" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Ein Passwort festlegen" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Einstellungen" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Einrichten" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Teilen" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Unterschriftenkarte teilen" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Signaturkarte teilen" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Link teilen" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "Teilen Sie Ihre Unterzeichnungserfahrung!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Anzeigen" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Zusätzliche Informationen anzeigen" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Erweiterte Einstellungen anzeigen" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Vorlagen in Ihrem öffentlichen Profil anzeigen, damit Ihre Zielgruppe unterschreiben und schnell loslegen kann" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Vorlagen in Ihrem Team-Öffentliches Profil anzeigen, damit Ihre Zielgruppe unterschreiben und schnell loslegen kann" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Unterschreiben" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Unterzeichnen als {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Unterzeichnen als<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Dokument unterschreiben" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Dokument signieren" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Unterzeichnen-Feld" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Hier unterzeichnen" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Anmelden" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Melden Sie sich bei Ihrem Konto an" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Ausloggen" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Unterschreiben Sie das Dokument, um den Vorgang abzuschließen." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "Registrieren" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "Registrieren mit Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "Registrieren mit OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Unterschrift" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "Signatur-ID" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "Die Unterschrift ist zu klein. Bitte geben Sie eine vollständigere Unterschrift an." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Gesammelte Unterschriften" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Unterschriften erscheinen, sobald das Dokument abgeschlossen ist" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Unterzeichnet" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Unterzeichner" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Signer-Ereignisse" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Unterzeichner" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "Unterzeichner müssen eindeutige E-Mails haben" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Unterzeichnung" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Unterzeichnungszertifikat" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Unterzeichnungszertifikat bereitgestellt von" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "Unterzeichnung abgeschlossen!" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Anmeldung..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Signierlinks" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "Unterzeichnungslinks wurden für dieses Dokument erstellt." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Unterzeichnungsvolumen" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Registrierungen sind deaktiviert." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Seit {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Website Banner" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Website Einstellungen" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Einige Unterzeichner haben noch kein Unterschriftsfeld zugewiesen bekommen. Bitte weisen Sie jedem Unterzeichner mindestens ein Unterschriftsfeld zu, bevor Sie fortfahren." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Etwas ist schief gelaufen" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Etwas ist schiefgelaufen beim Versuch, das Eigentum des Teams <0>{0} auf Ihre zu übertragen. Bitte versuchen Sie es später erneut oder kontaktieren Sie den Support." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Etwas ist schiefgelaufen beim Versuch, Ihre E-Mail-Adresse für <0>{0} zu bestätigen. Bitte versuchen Sie es später erneut." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Beim Laden des Dokuments ist ein Fehler aufgetreten." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Etwas ist schiefgelaufen beim Laden Ihrer Passkeys." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Etwas ist schiefgelaufen beim Senden der Bestätigungs-E-Mail." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Etwas ist schiefgelaufen beim Aktualisieren des Abonnements für die Team-Zahlung. Bitte kontaktieren Sie den Support." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "Etwas ist schiefgelaufen!" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Etwas ist schief gelaufen." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Etwas ist schiefgelaufen. Bitte versuchen Sie es später noch einmal." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut oder kontaktieren Sie den Support." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Entschuldigung, wir konnten die Prüfprotokolle nicht herunterladen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Entschuldigung, wir konnten das Zertifikat nicht herunterladen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Quelle" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Statistiken" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Status" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Schritt <0>{step} von {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Betreff <0>(Optional)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Einreichen" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "" -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Abonnement" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Abonnements" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Erfolg" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Passkey erfolgreich erstellt" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Erfolgreich erstellt: {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Zusammenfassung:" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "Systemanforderungen" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "Systemthema" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Team" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "Team \"{0}\" wurde auf Documenso gelöscht" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Teameinkaufs-Prüfung" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "Team E-Mail" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "Team-E-Mail" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "Team-E-Mail bereits verifiziert!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "Team-E-Mail wurde entfernt" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "Team-E-Mail wurde für {0} widerrufen" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Team-E-Mail entfernt" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Team-E-Mail für {teamName} auf Documenso entfernt" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Team-E-Mail-Verifizierung" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "Team-E-Mail verifiziert!" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "Team-E-Mail wurde aktualisiert." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Teameinladung" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Teameinladungen wurden gesendet." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Teammitglied" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Teamname" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Nur Team" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "Nur Teamvorlagen sind nirgendwo verlinkt und nur für Ihr Team sichtbar." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Team-Eigentumsübertragung" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "Team-Eigentumsübertragung bereits abgeschlossen!" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "Team-Eigentum übertragen!" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Teampräferenzen" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Öffentliches Profil des Teams" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Teameinstellungen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Team-Einstellungen" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Teamvorlagen" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Teamübertragung im Gange" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Der Antrag auf Teamübertragung ist abgelaufen" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "Team-URL" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Teams" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Teams beschränkt" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Vorlage" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Vorlage gelöscht" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Vorlagendokument hochgeladen" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Vorlage dupliziert" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "Vorlage ist von Deinem öffentlichen Profil entfernt worden." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "Vorlage wurde aktualisiert." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Vorlage verschoben" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Vorlage nicht gefunden oder bereits mit einem Team verknüpft." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Vorlage gespeichert" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Vorlagentitel" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Vorlagen" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "Vorlagen erlauben dir das schnelle Erstlelen von Dokumenten mit vorausgefüllten Empfängern und Feldern." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Text" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Textausrichtung" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Textfarbe" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Vielen Dank, dass Sie Documenso zur elektronischen Unterzeichnung Ihrer Dokumente verwenden. Der Zweck dieser Offenlegung besteht darin, Sie über den Prozess, die Rechtmäßigkeit und Ihre Rechte in Bezug auf die Verwendung elektronischer Unterschriften auf unserer Plattform zu informieren. Indem Sie sich entscheiden, eine elektronische Unterschrift zu verwenden, stimmen Sie den nachfolgend dargelegten Bedingungen zu." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "Das ist in Ordnung, das passiert! Klicke auf den Button unten, um dein Passwort zurückzusetzen." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "Das Konto wurde erfolgreich gelöscht." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "Das Konto wurde erfolgreich deaktiviert." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "Das Konto wurde erfolgreich aktiviert." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "Die Authentifizierung, die erforderlich ist, damit Empfänger Felder signieren" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "Die Authentifizierung, die erforderlich ist, damit Empfänger das Signaturfeld signieren können." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "Die Authentifizierung, die erforderlich ist, damit Empfänger das Dokument anzeigen können." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "Der Inhalt, der im Banne rgezeig wird, HTML ist erlaubt" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "Der direkte Linkt wurde in die Zwischenablage kopiert" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "Das Dokument wurde erfolgreich in das ausgewählte Team verschoben." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "Das Dokument ist jetzt abgeschlossen. Bitte folgen Sie allen Anweisungen, die in der übergeordneten Anwendung bereitgestellt werden." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "Der Dokumenteninhaber wurde über diese Ablehnung informiert. Es sind derzeit keine weiteren Maßnahmen von Ihnen erforderlich. Der Dokumenteninhaber kann Sie bei Fragen zu dieser Ablehnung kontaktieren." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "Der Dokumenteneigentümer wurde über Ihre Entscheidung informiert. Er kann Sie bei Bedarf mit weiteren Anweisungen kontaktieren." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "Das Dokument wurde erstellt, konnte aber nicht an die Empfänger versendet werden." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "Das Dokument wird von Ihrem Konto verborgen werden" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "Das Dokument wird sofort an die Empfänger gesendet, wenn dies angehakt ist." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "Der Name des Dokuments" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "Die Ereignisse, die einen Webhook auslösen, der an Ihre URL gesendet wird." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "Die folgenden Fehler sind aufgetreten:" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "Das folgende Team wurde von seinem Besitzer gelöscht. Du kannst nicht mehr auf dieses Team und seine Dokumente zugreifen" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "Das folgende Team wurde von dir gelöscht" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "Die Inhaberschaft des Teams <0>{0} wurde erfolgreich auf Sie übertragen." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "Die Seite, die Sie suchen, wurde verschoben, entfernt, umbenannt oder hat möglicherweise nie existiert." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "Das eingegebene Passwort ist falsch. Bitte versuchen Sie es erneut." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "Der Profil-Link wurde in die Zwischenablage kopiert" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "Das Profil, nach dem Sie suchen, konnte nicht gefunden werden." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "Die öffentliche Beschreibung, die mit dieser Vorlage angezeigt wird" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "Der öffentliche Name für Ihre Vorlage" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "Der angegebene Grund für die Löschung ist folgender:" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "Der Empfänger wurde erfolgreich aktualisiert" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "Der Empfänger muss keine Aktion ausführen und erhält nach Abschluss eine Kopie des Dokuments." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "Der Empfänger muss das Dokument genehmigen, damit es abgeschlossen werden kann." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "Der Empfänger muss das Dokument unterschreiben, damit es abgeschlossen werden kann." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "Der Empfänger muss das Dokument anzeigen, damit es abgeschlossen werden kann." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Das ausgewählte Teammitglied erhält eine E-Mail, die es akzeptieren muss, bevor das Team übertragen wird" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "Der Freigabelink konnte in diesem Moment nicht erstellt werden. Bitte versuchen Sie es erneut." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "Der Freigabelink wurde in Ihre Zwischenablage kopiert." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "Die E-Mail des Unterzeichners" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "Der Name des Unterzeichners" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "Der Signierlink wurde in die Zwischenablage kopiert." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "Das Seitenbanner ist eine Nachricht, die oben auf der Seite angezeigt wird. Es kann verwendet werden, um Ihren Nutzern wichtige Informationen anzuzeigen." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "Die Team-E-Mail <0>{teamEmail} wurde aus dem folgenden Team entfernt" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "Die Einladung zur Teamübertragung wurde erfolgreich gelöscht." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "Die Teamübertragungsanfrage an <0>{0} ist abgelaufen." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." msgstr "" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "Die Vorlage wurde erfolgreich in das ausgewählte Team verschoben." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "Die Vorlage wird von Ihrem Profil entfernt" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "Der Token wurde in die Zwischenablage kopiert." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "Das Token wurde erfolgreich gelöscht." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "Der Token, den Sie zur Zurücksetzung Ihres Passworts verwendet haben, ist entweder abgelaufen oder hat nie existiert. Wenn Sie Ihr Passwort immer noch vergessen haben, fordern Sie bitte einen neuen Zurücksetzungslink an." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "Die URL für Documenso, um Webhook-Ereignisse zu senden." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "Das Webhook wurde erfolgreich gelöscht." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "Der Webhook wurde erfolgreich aktualisiert." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "Der Webhook wurde erfolgreich erstellt." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "Es gibt derzeit keine aktiven Entwürfe. Sie können ein Dokument hochladen, um mit dem Entwerfen zu beginnen." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "Es gibt noch keine abgeschlossenen Dokumente. Dokumente, die Sie erstellt oder erhalten haben, werden hier angezeigt, sobald sie abgeschlossen sind." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "Sie haben in Ihrem Namen die Erlaubnis, zu:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "" -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "Diese Aktion ist nicht umkehrbar. Bitte seien Sie sicher." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "Diese Aktion ist umkehrbar, jedoch bitte seien Sie vorsichtig, da das Konto dauerhaft betroffen sein könnte (z.B. könnten deren Einstellungen und Inhalte nicht richtig wiederhergestellt werden)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "Dies kann überschrieben werden, indem die Authentifizierungsanforderungen im nächsten Schritt direkt für jeden Empfänger festgelegt werden." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "Dieses Dokument kann nicht wiederhergestellt werden. Wenn du den Grund für zukünftige Dokumente anfechten möchtest, kontaktiere bitte den Support." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "Dieses Dokument konnte derzeit nicht gelöscht werden. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "Dieses Dokument konnte derzeit nicht dupliziert werden. Bitte versuche es erneut." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "Dieses Dokument konnte zu diesem Zeitpunkt nicht erneut gesendet werden. Bitte versuchen Sie es erneut." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "Dieses Dokument wurde bereits an diesen Empfänger gesendet. Sie können diesen Empfänger nicht mehr bearbeiten." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "Dieses Dokument wurde vom Eigentümer storniert und steht anderen nicht mehr zur Unterzeichnung zur Verfügung." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "Dieses Dokument wurde vom Eigentümer storniert." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "Dieses Dokument wurde von allen Empfängern unterschrieben" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "Dieses Dokument ist momentan ein Entwurf und wurde nicht gesendet" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "Dieses Dokument ist durch ein Passwort geschützt. Bitte geben Sie das Passwort ein, um das Dokument anzusehen." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "Dieses Dokument wurde von Ihnen oder einem Teammitglied unter Verwendung der oben genannten Vorlage erstellt." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "Dieses Dokument wurde mit einem direkten Link erstellt." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "Dieses Dokument wurde mit <0>Documenso. gesendet" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "Diese E-Mail bestätigt, dass Sie das Dokument <0>\"{documentName}\" abgelehnt haben, das von {documentOwnerName} gesendet wurde." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "Diese E-Mail-Adresse wird bereits von einem anderen Team verwendet." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "Diese E-Mail wird an den Dokumenteneigentümer gesendet, wenn ein Empfänger das Dokument unterschrieben hat." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "Diese E-Mail wird an den Empfänger gesendet, wenn er von einem ausstehenden Dokument entfernt wird." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "Diese E-Mail wird an den Empfänger gesendet und fordert ihn auf, das Dokument zu unterschreiben." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "Diese E-Mail wird an den Empfänger gesendet, der das Dokument gerade unterschrieben hat, wenn es noch andere Empfänger gibt, die noch nicht unterschrieben haben." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "Dieses Feld kann nicht geändert oder gelöscht werden. Wenn Sie den direkten Link dieser Vorlage teilen oder zu Ihrem öffentlichen Profil hinzufügen, kann jeder, der darauf zugreift, seinen Namen und seine E-Mail-Adresse eingeben und die ihm zugewiesenen Felder ausfüllen." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "So wird das Dokument die Empfänger erreichen, sobald es zum Unterschreiben bereit ist." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "Dieser Link ist ungültig oder abgelaufen. Bitte kontaktieren Sie Ihr Team, um eine erneute Überweisungsanfrage zu senden." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "Dieser Link ist ungültig oder abgelaufen. Bitte kontaktieren Sie Ihr Team, um eine neue Bestätigungsanfrage zu senden." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "Dieser Zugangsschlüssel wurde bereits registriert." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "Dieser Passkey ist für diese Anwendung nicht konfiguriert. Bitte melden Sie sich an und fügen Sie einen in den Benutzereinstellungen hinzu." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "Dieser Preis beinhaltet mindestens 5 Plätze." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "Dieser Empfänger kann nicht mehr bearbeitet werden, da er ein Feld unterschrieben oder das Dokument abgeschlossen hat." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "Diese Sitzung ist abgelaufen. Bitte versuchen Sie es erneut." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "Dieser Unterzeichner hat das Dokument bereits unterschrieben." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "Dieses Team und alle zugehörigen Daten, ausgenommen Rechnungen, werden permanent gelöscht." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "Diese Vorlage konnte derzeit nicht gelöscht werden. Bitte versuchen Sie es erneut." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "Dieses Token ist ungültig oder abgelaufen. Es sind keine weiteren Maßnahmen erforderlich." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "Dieser Token ist ungültig oder abgelaufen. Bitte kontaktieren Sie Ihr Team für eine neue Einladung." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "Diese URL wird bereits verwendet." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "Dieser Benutzername ist bereits vergeben" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Dies wird an alle Empfänger gesendet, wenn ein ausstehendes Dokument gelöscht wurde." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "Dies wird an alle Empfänger gesendet, sobald das Dokument vollständig abgeschlossen ist." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "Dies wird an den Dokumenteneigentümer gesendet, sobald das Dokument vollständig abgeschlossen wurde." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "Dies überschreibt alle globalen Einstellungen." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Zeit" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Zeitzone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Zeitzone" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Titel" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "Um diese Einladung anzunehmen, müssen Sie ein Konto erstellen." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "Um die E-Mail zu ändern, müssen Sie die aktuelle entfernen und eine neue hinzufügen." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "Um zu bestätigen, geben Sie bitte die E-Mail-Adresse des Kontos <0/>({0}) ein." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "Um zu bestätigen, geben Sie bitte den Grund ein" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "Um diese Einladung abzulehnen, müssen Sie ein Konto erstellen." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "Um die Zwei-Faktor-Authentifizierung zu aktivieren, scannen Sie den folgenden QR-Code mit Ihrer Authentifizierungs-App." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "Um Zugang zu Ihrem Konto zu erhalten, bestätigen Sie bitte Ihre E-Mail-Adresse, indem Sie auf den Bestätigungslink in Ihrem Posteingang klicken." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "Um dieses Dokument als angesehen zu markieren, müssen Sie als <0>{0} angemeldet sein" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "Um fortzufahren, legen Sie bitte mindestens einen Wert für das Feld {0} fest." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "Um unseren elektronischen Signaturdienst nutzen zu können, müssen Sie Zugriff auf Folgendes haben:" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Um dieses Dokument anzusehen, müssen Sie in Ihr Konto eingeloggt sein. Bitte melden Sie sich an, um fortzufahren." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Schalten Sie den Schalter um, um Ihr Profil vor der Öffentlichkeit zu verbergen." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Schalten Sie den Schalter um, um Ihr Profil der Öffentlichkeit anzuzeigen." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Token" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token wurde in die Zwischenablage kopiert" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token erstellt" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token gelöscht" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "Token hat kein Ablaufdatum" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Ablaufdatum des Tokens" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "Das Token ist abgelaufen. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Token-Name" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Gesamtdokumente" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Gesamtempfänger" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Insgesamt verarbeitete Zeilen: {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Gesamtanzahl der Unterzeichner, die sich angemeldet haben" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Gesamtanzahl der Benutzer" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "übertragen {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Übertragen Sie die Inhaberschaft dieses Teams auf ein ausgewähltes Teammitglied." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Team übertragen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Übertragen Sie das Eigentum des Teams auf ein anderes Teammitglied." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Auslöser" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Zwei-Faktor-Authentifizierung" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "Wiederherstellungscodes für die Zwei-Faktor-Authentifizierung werden verwendet, um auf Ihr Konto zuzugreifen, falls Sie den Zugang zu Ihrer Authentifizierungs-App verlieren." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Zwei-Faktor-Authentifizierung" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Zwei-Faktor-Authentifizierung deaktiviert" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Zwei-Faktor-Authentifizierung aktiviert" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Die Zwei-Faktor-Authentifizierung wurde für Ihr Konto deaktiviert. Sie müssen beim Anmelden keinen Code aus Ihrer Authentifizierungs-App mehr eingeben." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Zwei-Faktor-Wiederauthentifizierung" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Typ" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Geben Sie einen Befehl ein oder suchen Sie..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "Getippte Unterschriften sind nicht erlaubt. Bitte zeichnen Sie Ihre Unterschrift." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "Oh oh! Es sieht so aus, als fehlt Ihnen ein Token" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "Zurzeit kann die Sprache nicht geändert werden. Bitte versuchen Sie es später noch einmal." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "Kann Code zur Wiederherstellung nicht kopieren" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "Token kann nicht kopiert werden" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "Direkter Zugriff auf die Vorlage kann nicht erstellt werden. Bitte versuche es später noch einmal." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "Zurzeit kann diese Teameinladung nicht abgelehnt werden." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "Einladung kann nicht gelöscht werden. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "Team konnte nicht gelöscht werden" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "Zwei-Faktor-Authentifizierung kann nicht deaktiviert werden" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "Zurzeit kann diesem Team nicht beigetreten werden." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "Kann den Dokumentverlauf nicht laden" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "Dokumente können nicht geladen werden" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "Derzeit können Ihre öffentlichen Profilvorlagen nicht geladen werden" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "Derzeit ist es nicht möglich, die E-Mail-Verifizierung zu entfernen. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "Das Team-E-Mail kann zurzeit nicht entfernt werden. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "Einladung kann nicht erneut gesendet werden. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "Derzeit ist es nicht möglich, die Verifizierung erneut zu senden. Bitte versuchen Sie es erneut." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "Passwort kann nicht zurückgesetzt werden" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "Zwei-Faktor-Authentifizierung kann nicht eingerichtet werden" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "Anmeldung nicht möglich" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "Nicht autorisiert" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Unvollendet" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Unbekannt" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "Unbezahlt" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Aktualisieren" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Banner aktualisieren" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Passkey aktualisieren" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Passwort aktualisieren" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Profil aktualisieren" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Empfänger aktualisieren" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Rolle aktualisieren" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Team aktualisieren" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Team-E-Mail aktualisieren" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Teammitglied aktualisieren" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Aktualisieren Sie die Rolle und fügen Sie Felder nach Bedarf für den direkten Empfänger hinzu. Die Person, die den direkten Link verwendet, wird das Dokument als direkter Empfänger unterzeichnen." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Benutzer aktualisieren" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Webhook aktualisieren" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Passwort wird aktualisiert..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Profil wird aktualisiert..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Aktualisierung Ihrer Informationen" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Upgrade" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Laden Sie eine CSV-Datei hoch, um mehrere Dokumente aus dieser Vorlage zu erstellen. Jede Zeile repräsentiert ein Dokument mit den Empfängerdaten." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Laden Sie ein benutzerdefiniertes Dokument hoch, um es anstelle des Standarddokuments der Vorlage zu verwenden" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Hochladen und verarbeiten" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Avatar hochladen" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "CSV hochladen" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Benutzerdefiniertes Dokument hochladen" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Signatur hochladen" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Vorlagendokument hochladen" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Laden Sie Ihr Markenlogo hoch (max. 5MB, JPG, PNG oder WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Hochgeladen von" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "Die hochgeladene Datei ist zu groß" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "Die hochgeladene Datei ist zu klein" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "Die hochgeladene Datei ist kein zulässiger Dateityp" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Verwenden" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Authenticator verwenden" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Backup-Code verwenden" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Vorlage verwenden" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "Benutzer" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "Benutzer hat kein Passwort." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "Benutzer-ID" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "Benutzer nicht gefunden." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "Benutzerprofile sind hier!" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "Benutzereinstellungen" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "Ein Benutzer mit dieser E-Mail existiert bereits. Bitte verwenden Sie eine andere E-Mail-Adresse." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "Der Benutzername darf nur alphanumerische Zeichen und Bindestriche enthalten." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Benutzer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Validierung" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Wert" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Bestätigungs-E-Mail gesendet" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Bestätigungs-E-Mail erfolgreich gesendet." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Jetzt überprüfen" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Überprüfen Sie Ihre E-Mail-Adresse" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Überprüfen Sie Ihre E-Mail-Adresse, um alle Funktionen freizuschalten." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Überprüfen Sie Ihre E-Mail, um Dokumente hochzuladen." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Überprüfen Sie Ihre Team-E-Mail-Adresse" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Versionsverlauf" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "Betrachten" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "Aktivität ansehen" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "Sehen Sie sich alle Dokumente an, die an diese E-Mail-Adresse gesendet wurden und von dieser E-Mail-Adresse gesendet wurden" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "Alle Dokumente anzeigen, die an Ihr Konto gesendet wurden" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "Sehen Sie sich alle aktuellen Sicherheitsaktivitäten in Ihrem Konto an." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "Alle verwandten Dokumente anzeigen" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "Sehen Sie sich alle Sicherheitsaktivitäten in Ihrem Konto an." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "Codes ansehen" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "Dokument anzeigen" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "Dokument ansehen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "Dokumente ansehen, die mit dieser E-Mail verknüpft sind" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "Einladungen ansehen" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "Mehr anzeigen" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "Originaldokument ansehen" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "Pläne anzeigen" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "Wiederherstellungscodes ansehen" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "Teams ansehen" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Betrachtet" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Betrachter" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Betrachter" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Betrachten" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "Warten" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "Warten auf andere" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "Warten auf andere, um die Unterzeichnung abzuschließen." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "Warten auf andere, um zu unterschreiben" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "Warten auf deine Reihe" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "Möchten Sie auffällige Signatur-Links wie diesen senden? <0>Überprüfen Sie Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "Möchten Sie Ihr eigenes öffentliches Profil haben?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "Wir können zurzeit nicht auf das Abrechnungsportal zugreifen. Bitte versuchen Sie es erneut oder wenden Sie sich an den Support." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "Wir können diesen Schlüssel im Moment nicht entfernen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "Wir können diesen Schlüssel im Moment nicht aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "Wir sind auf einen Fehler gestoßen, während wir den direkten Vorlagenlink entfernt haben. Bitte versuchen Sie es später erneut." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "Wir sind auf einen Fehler gestoßen, während wir den Webhook aktualisieren wollten. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, diese E-Mail hinzuzufügen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, ein Team zu erstellen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, es zu löschen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, das ausstehende Team zu löschen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, dieses Team zu löschen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, dieses Token zu löschen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihr Konto zu löschen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Teammitglieder einzuladen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, dieses Team zu verlassen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, diese Vorlage aus Ihrem Profil zu entfernen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, diese Übertragung zu entfernen. Bitte versuchen Sie es später oder kontaktieren Sie den Support." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, diesen Benutzer zu entfernen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, eine Übertragung dieses Teams anzufordern. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihr Passwort zurückzusetzen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, den Zugriff zu widerrufen. Bitte versuchen Sie es später oder kontaktieren Sie den Support." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Sie anzumelden. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Sie anzumelden. Bitte versuchen Sie es später erneut." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, das Banner zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, die Vorlage zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, dieses Teammitglied zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihr Passwort zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihr öffentliches Profil zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, Ihr Team zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Wir sind auf einen unbekannten Fehler gestoßen, während wir versucht haben, die Team-E-Mail zu aktualisieren. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Wir haben einen unbekannten Fehler festgestellt, während wir versuchten, Ihr Profil zu aktualisieren. Bitte versuchen Sie es später noch einmal." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "Wir haben eine Bestätigungs-E-Mail zur Überprüfung gesendet." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "Wir benötigen einen Benutzernamen, um Ihr Profil zu erstellen" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "Wir benötigen Ihre Unterschrift, um Dokumente zu unterschreiben" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "Wir konnten das Token nicht in Ihre Zwischenablage kopieren. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "Wir konnten Ihren Wiederherstellungscode nicht in Ihre Zwischenablage kopieren. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "Wir konnten keine Checkout-Sitzung erstellen. Bitte versuchen Sie es erneut oder kontaktieren Sie den Support" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "Wir konnten Ihr Konto nicht erstellen. Bitte überprüfen Sie die von Ihnen angegebenen Informationen und versuchen Sie es erneut." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "Wir konnten die Zwei-Faktor-Authentifizierung für Ihr Konto nicht deaktivieren. Bitte stellen Sie sicher, dass Sie Ihr Passwort und den Backup-Code korrekt eingegeben haben und versuchen Sie es erneut." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "Wir konnten Sie zurzeit nicht abmelden." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "Wir konnten Ihr öffentliches Profil nicht auf öffentlich setzen. Bitte versuchen Sie es erneut." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "Wir konnten die Zwei-Faktor-Authentifizierung für Ihr Konto nicht einrichten. Bitte stellen Sie sicher, dass Sie den Code korrekt eingegeben haben und versuchen Sie es erneut." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "Wir konnten dieses Dokument zurzeit nicht einreichen. Bitte versuchen Sie es später erneut." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "Wir konnten Ihre Markenpräferenzen zu diesem Zeitpunkt nicht aktualisieren, bitte versuchen Sie es später noch einmal" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "Wir konnten Ihre Dokumentpräferenzen zu diesem Zeitpunkt nicht aktualisieren, bitte versuchen Sie es später noch einmal" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "Wir konnten Ihre Angaben nicht verifizieren. Bitte versuchen Sie es erneut oder kontaktieren Sie den Support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Wir konnten Ihre E-Mail nicht bestätigen. Wenn Ihre E-Mail noch nicht bestätigt wurde, versuchen Sie es bitte erneut." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "Wir generieren Signierlinks mit Ihnen, die Sie den Empfängern über Ihre bevorzugte Methode senden können." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "Wir werden Unterzeichnungslinks für Sie erstellen, die Sie an die Empfänger über Ihre bevorzugte Methode senden können." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "Wir werden nichts senden, um die Empfänger zu benachrichtigen." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "Wir sind alle leer" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "Wir warten noch darauf, dass andere Unterzeichner dieses Dokument unterzeichnen.<0/>Wir benachrichtigen dich, sobald es bereit ist." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "Wir haben dein Passwort wie gewünscht geändert. Du kannst dich jetzt mit deinem neuen Passwort anmelden." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "Wir haben eine Bestätigungs-E-Mail an <0>{email} gesendet. Bitte überprüfen Sie Ihren Posteingang und klicken Sie auf den Link in der E-Mail, um Ihr Konto zu bestätigen." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook erstellt" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook gelöscht" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook aktualisiert" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "Webhook-URL" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhooks" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Willkommen" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Willkommen zurück, wir freuen uns, Sie zu haben." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "Willkommen bei Documenso!" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "Hast du stattdessen versucht, dieses Dokument zu bearbeiten?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "Wenn Sie auf Fortfahren klicken, werden Sie aufgefordert, den ersten verfügbaren Authenticator auf Ihrem System hinzuzufügen." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "Wenn Sie ein Dokument unterschreiben, können wir die folgenden Felder automatisch ausfüllen und signieren, indem wir bereits bereitgestellte Informationen verwenden. Sie können auch nachträglich manuell unterschreiben oder automatisch signierte Felder entfernen, wenn Sie möchten." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Wenn Sie unsere Plattform nutzen, um Ihre elektronische Unterschrift auf Dokumente anzubringen, stimmen Sie zu, dies unter dem Gesetz über elektronische Unterschriften im globalen und nationalen Handel (E-Sign-Gesetz) und anderen anwendbaren Gesetzen zu tun. Diese Handlung zeigt Ihre Zustimmung zur Verwendung elektronischer Mittel zum Unterzeichnen von Dokumenten und zum Empfang von Benachrichtigungen an." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Während Sie darauf warten, können Sie Ihr eigenes Documenso-Konto erstellen und sofort mit der Dokumentenunterzeichnung beginnen." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "Wen möchten Sie erinnern?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Zustimmung widerrufen" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Schreiben Sie über das Team" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Schreiben Sie über sich selbst" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Jährlich" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "Du" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "Sie sind dabei, <0>\"{documentTitle}\" zu löschen" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "Sie stehen kurz davor, die folgende Team-E-Mail von <0>{teamName} zu löschen." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "Sie sind dabei, <0>\"{documentTitle}\" zu verstecken" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "Sie stehen kurz davor, das folgende Team zu verlassen." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "Sie stehen kurz davor, den folgenden Benutzer aus <0>{teamName} zu entfernen." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "Sie stehen kurz davor, den Zugriff für das Team <0>{0} ({1}) zu widerrufen." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "Sie sind dabei, dieses Dokument an die Empfänger zu senden. Sind Sie sicher, dass Sie fortfahren möchten?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "Sie aktualisieren derzeit <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "Sie aktualisieren derzeit den <0>{passkeyName} Passkey." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "Sie sind kein Mitglied dieses Teams." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "Sie sind nicht berechtigt, diesen Benutzer zu löschen." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "Sie sind nicht berechtigt, diesen Benutzer zu deaktivieren." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "Sie sind nicht berechtigt, diesen Benutzer zu aktivieren." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "Du kannst diesen Link auch kopieren und in deinen Browser einfügen: {confirmationLink} (Link läuft in 1 Stunde ab)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "Sie können wählen, ob Sie Ihr Profil für die öffentliche Ansicht aktivieren oder deaktivieren möchten." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "Sie können wählen, ob Sie Ihr Teamprofil für die öffentliche Ansicht aktivieren oder deaktivieren möchten." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "Sie können diese Links kopieren und mit den Empfängern teilen, damit sie das Dokument bearbeiten können." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "Sie können den Zugriff jederzeit in Ihren Teameinstellungen auf Documenso <0>hier. widerrufen" -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "Sie können die Profil-URL aktualisieren, indem Sie die Team-URL auf der Seite mit den allgemeinen Einstellungen aktualisieren." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "Sie können die folgenden Variablen in Ihrer Nachricht verwenden:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "Sie können Dokumente ansehen, die mit dieser E-Mail verknüpft sind, und diese Identität beim Senden von Dokumenten verwenden." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "Sie können die erstellten Dokumente in Ihrem Dashboard unter der Rubrik \"Dokumente, die aus Vorlage erstellt wurden\" einsehen." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "Sie können das Dokument und seinen Status einsehen, indem Sie auf die Schaltfläche unten klicken." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "Sie dürfen nicht mehr als {MAXIMUM_PASSKEYS} Passkeys haben." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "Sie können ein Teammitglied, das eine höhere Rolle als Sie hat, nicht ändern." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "Sie können derzeit keine Dokumente hochladen." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "Sie können keine verschlüsselten PDFs hochladen" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "" -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "Sie haben keine Berechtigung, ein Token für dieses Team zu erstellen" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "Du musst es nicht mehr unterschreiben." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "Sie haben eine Einladung von <0>{0} angenommen, um ihrem Team beizutreten." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "Sie haben die Eigentumsübertragung für <0>{0} bereits abgeschlossen." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "Sie haben Ihre E-Mail-Adresse für <0>{0} bereits bestätigt." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "Sie wurden von <0>{0} eingeladen, ihrem Team beizutreten." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "Du wurdest eingeladen, {0} auf Documenso beizutreten" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "Du wurdest eingeladen, dem folgenden Team beizutreten" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "Du wurdest von einem Dokument entfernt" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "Du wurdest gebeten, das Team {0} auf Documenso zu übernehmen" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "Sie haben die Einladung von <0>{0} abgelehnt, ihrem Team beizutreten." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "Du hast das Dokument {0} initiiert, das erfordert, dass du {recipientActionVerb}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "Sie haben noch keine Webhooks. Ihre Webhooks werden hier angezeigt, sobald Sie sie erstellt haben." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "Sie haben noch keine Vorlagen erstellt. Bitte laden Sie eine Datei hoch, um eine Vorlage zu erstellen." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "Sie haben noch keine Dokumente erstellt oder erhalten. Bitte laden Sie ein Dokument hoch, um eines zu erstellen." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "Sie haben das maximale Limit von {0} direkten Vorlagen erreicht. <0>Upgrade your account to continue!" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "Sie haben Ihr Dokumentenlimit für diesen Monat erreicht. Bitte aktualisieren Sie Ihren Plan." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "Sie haben Ihr Dokumentenlimit erreicht." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "Sie haben Ihr Dokumentenlimit erreicht. <0>Upgrade your account to continue!" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "Sie haben das Dokument '{documentName}' abgelehnt" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "Sie haben dieses Dokument abgelehnt" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "Du hast „{documentName}“ unterzeichnet" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "Sie haben dieses Team erfolgreich verlassen." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "Sie haben sich erfolgreich registriert. Bitte bestätigen Sie Ihr Konto, indem Sie auf den Link klicken, den Sie per E-Mail erhalten haben." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "Sie haben diesen Benutzer erfolgreich aus dem Team entfernt." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "Sie haben den Zugriff erfolgreich widerrufen." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "Sie haben das Recht, Ihre Zustimmung zur Verwendung elektronischer Unterschriften jederzeit vor Abschluss des Unterzeichnungsprozesses zu widerrufen. Um Ihre Zustimmung zu widerrufen, kontaktieren Sie bitte den Absender des Dokuments. Sollten Sie den Absender nicht erreichen, können Sie sich für Unterstützung an <0>{SUPPORT_EMAIL} wenden. Seien Sie sich bewusst, dass der Widerruf der Zustimmung den Abschluss der zugehörigen Transaktion oder Dienstleistung verzögern oder stoppen kann." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "Sie haben {teamMemberName} aktualisiert." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "Sie haben Ihre E-Mail-Adresse für <0>{0} bestätigt." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "Sie müssen Administrator dieses Teams sein, um die Abrechnung zu verwalten." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "Sie müssen '{deleteMessage}' eingeben, um fortzufahren" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "Sie müssen mindestens einen anderen Teamkollegen haben, um die Eigentumsübertragung durchzuführen." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "Sie müssen eine Profil-URL festlegen, bevor Sie Ihr öffentliches Profil aktivieren." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "Sie müssen als <0>{email} angemeldet sein, um diese Seite anzuzeigen." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "Sie müssen angemeldet sein, um diese Seite anzuzeigen." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "Sie müssen 2FA einrichten, um dieses Dokument als angesehen zu markieren." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "Sie werden benachrichtigt und können Ihr Documenso öffentliches Profil einrichten, wenn wir die Funktion starten." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "Sie müssen bei der Anmeldung jetzt einen Code von Ihrer Authenticator-App eingeben." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "Sie erhalten eine E-Mail-Kopie des unterzeichneten Dokuments, sobald alle unterschrieben haben." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Ihr Konto wurde erfolgreich gelöscht." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Ihr Avatar wurde erfolgreich aktualisiert." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Ihr Banner wurde erfolgreich aktualisiert." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "Ihre Marken-Website-URL" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Ihre Markenpräferenzen wurden aktualisiert" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Ihr Massenversand wurde gestartet. Sie erhalten eine E-Mail-Benachrichtigung nach Abschluss." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "Ihre Massenversandoperation für Vorlage \"{templateName}\" ist abgeschlossen." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "Ihre direkten Unterzeichnungsvorlagen" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Ihr Dokument konnte nicht hochgeladen werden." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Ihr Dokument wurde erfolgreich aus der Vorlage erstellt." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "Dein Dokument wurde von einem Administrator gelöscht!" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Ihr Dokument wurde erfolgreich erneut gesendet." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Ihr Dokument wurde erfolgreich gesendet." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Ihr Dokument wurde erfolgreich dupliziert." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Ihr Dokument wurde erfolgreich hochgeladen." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Ihr Dokument wurde erfolgreich hochgeladen. Sie werden zur Vorlagenseite weitergeleitet." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Ihre Dokumentpräferenzen wurden aktualisiert" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "Ihre Dokumente" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Ihre E-Mail wurde erfolgreich bestätigt! Sie können jetzt alle Funktionen von Documenso nutzen." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "Ihre E-Mail wird derzeit von Team <0>{0} ({1}) verwendet." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "Ihre vorhandenen Tokens" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "Ihr neues Passwort darf nicht mit Ihrem alten Passwort identisch sein." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "Ihr Passwort wurde erfolgreich aktualisiert." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "Dein Passwort wurde aktualisiert." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Ihre Zahlung für Teams ist überfällig. Bitte begleichen Sie die Zahlung, um Unterbrechungen des Dienstes zu vermeiden." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Ihr Profil wurde erfolgreich aktualisiert." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Ihr Profil wurde aktualisiert." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Ihr öffentliches Profil wurde aktualisiert." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Ihr Wiederherstellungscode wurde in die Zwischenablage kopiert." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "Ihre Wiederherstellungscodes sind unten aufgeführt. Bitte bewahren Sie sie an einem sicheren Ort auf." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Ihr Abonnement ist derzeit aktiv." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Ihr Team wurde erstellt." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Dein Team wurde gelöscht" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Ihr Team wurde erfolgreich gelöscht." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Ihr Team wurde erfolgreich aktualisiert." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Ihre Vorlage wurde erfolgreich dupliziert." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Ihre Vorlage wurde erfolgreich gelöscht." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Ihre Vorlage wird dupliziert." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "Ihre Vorlagen wurden erfolgreich gespeichert." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "Ihr Token ist abgelaufen!" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "Ihr Token wurde erfolgreich erstellt! Stellen Sie sicher, dass Sie es kopieren, da Sie es später nicht mehr sehen können!" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "Ihre Tokens werden hier angezeigt, sobald Sie sie erstellt haben." diff --git a/packages/lib/translations/en/web.po b/packages/lib/translations/en/web.po index 5029ed2c7..91a8680aa 100644 --- a/packages/lib/translations/en/web.po +++ b/packages/lib/translations/en/web.po @@ -13,5456 +13,5439 @@ msgstr "" "Language-Team: \n" "Plural-Forms: \n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr " Enable direct link signing" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr " The events that will trigger a webhook to be sent to your URL." #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "\"{0}\" has invited you to sign \"example document\"." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" has been deleted by an admin." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "“{documentName}” has been signed" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "“{documentName}” was signed by all signers" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" has been successfully deleted" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "(You)" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 character over)} other {(# characters over)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# character over the limit} other {# characters over the limit}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# recipient} other {# recipients}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# Seat} other {# Seats}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 matching field} other {# matching fields}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 Recipient} other {# Recipients}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Select values} other {# selected...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "{0}" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} direct signing templates" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} has invited you to {recipientActionVerb} the document \"{1}\"." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} invited you to {recipientActionVerb} a document" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} joined the team {teamName} on Documenso" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} left the team {teamName} on Documenso" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} of {1} documents remaining this month." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} of {1} row(s) selected." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Recipient(s)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} has cancelled the document<0/>\"{documentName}\"" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} has invited you to {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} has invited you to {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} has invited you to {action} the document \"{documentName}\"." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} has removed you from the document {documentName}." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} has removed you from the document<0/>\"{documentName}\"" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} joined the following team" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} left the following team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# member} other {# members}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} added a field" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} added a recipient" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} created the document" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} deleted the document" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} moved the document to team" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} opened the document" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "{prefix} prefilled a field" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} removed a field" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} removed a recipient" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} resent an email to {0}" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} sent an email to {0}" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} sent the document" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} signed a field" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} unsigned a field" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} updated a field" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} updated a recipient" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} updated the document" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} updated the document access auth requirements" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} updated the document external ID" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} updated the document signing auth requirements" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} updated the document title" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} updated the document visibility" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} document" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} the document to complete the process." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} a document by using one of your direct links" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} has rejected the document '{documentName}'" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} has completed signing the document." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} has signed \"{0}\"" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} has signed \"{documentName}\"" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} has signed {documentName}" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} has rejected the document \"{documentName}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} has invited you to {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} has invited you to {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "{teamName} ownership transfer request" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} approved the document" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} CC'd the document" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} completed their task" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} rejected the document" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} signed the document" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} viewed the document" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\"is no longer available to sign" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} has requested that you take ownership of the following team" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} has requested to use your email address for their team on Documenso." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Click to upload or drag and drop" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>Email - The recipient will be emailed the document to sign, approve, etc." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>No restrictions - No authentication required" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>None - No authentication required" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>None - We will generate links which you can send to the recipients manually." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Require account - The recipient must be signed in to view the document" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Require passkey - The recipient must have an account and passkey configured via their settings" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Sender: All" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "1 month" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "12 months" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "3 months" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "404 not found" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Profile not found" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Team not found" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "500 Internal Server Error" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "6 months" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "7 days" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "A confirmation email has been sent, and it should arrive in your inbox shortly." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "A device capable of accessing, opening, and reading documents" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "A document was created by your direct template that requires you to {recipientActionVerb} it." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "A draft document will be created" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "A field was added" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "A field was removed" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "A field was updated" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "A means to print or download documents for your records" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "A new member has joined your team" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "A new token was created successfully." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "A password reset email has been sent, if you have an account you should see it in your inbox shortly." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "A recipient was added" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "A recipient was removed" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "A recipient was updated" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "A request to use your email has been initiated by {0} on Documenso" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "A stable internet connection" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "A team member has joined a team on Documenso" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "A team member has left {0}" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "A team member has left a team on Documenso" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "A team you were a part of has been deleted" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "A unique URL to access your profile" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "A unique URL to identify your team" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "A verification email will be sent to the provided email." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Accept" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Accept invitation to join a team on Documenso" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Accept team email request for {teamName} on Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Accept team transfer request on Documenso" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Acceptance and Consent" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Accepted team invitation" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Account Authentication" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Account deleted" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Account disabled" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Account enabled" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Account Re-Authentication" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Acknowledgment" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Action" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Actions" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Active" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Active Subscriptions" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Add" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Add a document" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Add a URL to redirect the user to once the document is signed" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Add all relevant fields for each recipient." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Add all relevant placeholders for each recipient." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Add an authenticator to serve as a secondary authentication method for signing documents." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Add an external ID to the document. This can be used to identify the document in external systems." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Add an external ID to the template. This can be used to identify in external systems." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Add another option" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Add another value" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "Add email" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Add Fields" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Add more" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "Add myself" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "Add Myself" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Add passkey" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Add Placeholder Recipient" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Add Placeholders" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Add Signer" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Add Signers" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Add team email" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Add text" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Add text to the field" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Add the people who will sign the document." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Add the recipients to create the document with" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Adding and removing seats will adjust your invoice accordingly." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Additional brand information to display at the bottom of emails" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Admin" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Admin Actions" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Admin panel" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Advanced Options" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Advanced settings" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "All" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "All documents" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "All documents have been processed. Any new documents that are sent or received will show here." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "All inserted signatures will be voided" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "All recipients will be notified" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "All signatures have been voided." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "All signing links have been copied to your clipboard." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "All templates" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "All Time" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Allow document recipients to reply directly to this email address" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Allows authenticating using biometrics, password managers, hardware keys, etc." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "Already have an account? <0>Sign in instead" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Amount" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "An admin has deleted your document \"{documentName}\"." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "An email account" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "An email containing an invitation will be sent to each member." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "An email requesting the transfer of this team has been sent." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "An error occurred" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "An error occurred while adding fields." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "An error occurred while adding signers." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "An error occurred while adding the fields." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "An error occurred while creating document from template." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "An error occurred while creating the webhook. Please try again." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "An error occurred while deleting the user." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "An error occurred while disabling direct link signing." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "An error occurred while disabling the user." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "An error occurred while downloading your document." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "An error occurred while duplicating template." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "An error occurred while enabling direct link signing." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "An error occurred while enabling the user." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "An error occurred while loading team members. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "An error occurred while loading the document." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "An error occurred while moving the document." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "An error occurred while moving the template." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "An error occurred while removing the field." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "An error occurred while removing the selection." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "An error occurred while removing the signature." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "An error occurred while sending the document." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "An error occurred while sending your confirmation email" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "An error occurred while signing as assistant." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "An error occurred while signing the document." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "An error occurred while trying to create a checkout session." -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "An error occurred while updating the document settings." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "An error occurred while updating the signature." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "An error occurred while updating your profile." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "An error occurred while uploading your document." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "An unexpected error occurred." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "An unknown error occurred" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Any Source" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Any Status" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "API Tokens" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "App Version" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Approve" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Approve Document" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Approved" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Approver" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Approvers" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Approving" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "Are you sure you want to delete this token?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Are you sure you want to reject this document? This action cannot be undone." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "Are you sure you want to remove the <0>{passkeyName} passkey." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "Are you sure you wish to delete this team?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "Are you sure?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "Assist" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "Assist Document" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "Assist with signing" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "Assistant" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "Assistant role is only available when the document is in sequential signing mode." -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "Assistants" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "Assisted" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "Assisting" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Audit Log" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Authentication Level" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Authentication required" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Avatar Updated" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "Awaiting email confirmation" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Back" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Back to Documents" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Background Color" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Backup Code" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Backup codes" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Banner Updated" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Basic details" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Before you get started, please confirm your email address by clicking the button below:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Billing" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Black" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Blue" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Branding Preferences" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Branding preferences updated" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Browser" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Bulk Copy" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Bulk Import" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Bulk Send Complete: {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Bulk send operation complete for template \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Bulk Send Template via CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Bulk Send via CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "by <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "By accepting this request, you will be granting <0>{teamName} access to:" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "By accepting this request, you will take responsibility for any billing items associated with this team." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "By deleting this document, the following will occur:" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "Can prepare" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Cancel" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Cancelled by user" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "Cannot remove signer" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "Cc" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "CC" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "CC'd" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "Ccers" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Character Limit" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Charts" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Checkbox" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Checkbox values" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Checkout" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Choose an existing recipient from below to continue" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Choose Direct Link Recipient" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Choose how the document will reach recipients" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Choose..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Claim account" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Claim username" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Claim your username now" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Clear file" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Clear filters" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Clear Signature" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Click here to get started" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Click here to retry" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Click here to upload" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Click to copy signing link for sending to recipient" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Click to insert field" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Close" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Complete" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Complete Approval" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "Complete Document" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Complete Signing" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Complete Viewing" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Completed" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Completed Document" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Completed documents" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Completed Documents" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Configure Direct Recipient" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Configure general settings for the document." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Configure general settings for the template." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Configure template" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Configure the {0} field" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Confirm" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Confirm by typing <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Confirm by typing <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Confirm by typing: <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Confirm Deletion" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "Confirm email" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "Confirmation email sent" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Consent to Electronic Transactions" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Contact Information" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Content" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Continue" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Continue by approving the document." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "Continue by assisting with the document." -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Continue by downloading the document." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Continue by signing the document." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Continue by viewing the document." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Continue to login" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Controls the default visibility of an uploaded document." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Copied" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "Copied to clipboard" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Copy" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Copy Link" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Copy sharable link" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Copy Shareable Link" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Copy Signing Links" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Copy token" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Create" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Create a <0>free account to access your signed documents at any time." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Create a new account" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Create a team to collaborate with your team members." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Create account" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Create and send" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Create as draft" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Create as pending" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Create Direct Link" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Create Direct Signing Link" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Create document from template" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Create now" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Create one automatically" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Create signing links" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Create team" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Create Team" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Create the document as pending and ready to sign." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Create token" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Create webhook" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Create Webhook" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Create your account and start using state-of-the-art document signing." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Created" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Created At" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Created by" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Created on" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Created on {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "CSV Structure" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Current Password" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "Current password is incorrect." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Current recipients:" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "Daily" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Dark Mode" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Date" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Date created" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Date Format" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Decline" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Declined team invitation" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Default Document Language" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Default Document Visibility" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "delete" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Delete" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "delete {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "delete {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Delete account" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Delete Account" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Delete document" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Delete Document" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Delete passkey" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Delete team" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Delete team member" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Delete the document. This action is irreversible so proceed with caution." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Delete Webhook" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Deleted" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Deleting account..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Details" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Device" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "Didn't request a password change? We are here to help you secure your account, just <0>contact us." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "direct link" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Direct link" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Direct Link" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "direct link disabled" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Direct link receiver" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Direct Link Signing" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "Direct link signing has been disabled" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "Direct link signing has been enabled" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Direct template link deleted" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "Direct template link usage exceeded ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Disable" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "Disable 2FA" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Disable account" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Disable Account" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Disable Two Factor Authentication before deleting your account." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Disabled" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Disabling direct link signing will prevent anyone from accessing the link." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Display your name and email in documents" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Distribute Document" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "Do you want to delete this template?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "Do you want to duplicate this template?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Document" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Document \"{0}\" - Rejected by {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Document \"{0}\" - Rejection Confirmed" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Document access" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "Document access auth updated" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Document All" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Document Approved" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Document Cancelled" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Document completed" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "Document completed email" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "Document Completed!" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Document created" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Document created by <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Document created from direct template" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Document created using a <0>direct link" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Document Creation" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Document deleted" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "Document deleted email" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "Document Deleted!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Document Distribution Method" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Document draft" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Document Duplicated" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "Document external ID updated" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Document history" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "Document ID" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Document inbox" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "Document Limit Exceeded!" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Document metrics" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Document moved" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Document moved to team" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "Document no longer available to sign" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Document opened" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Document pending" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "Document pending email" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Document preferences updated" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Document re-sent" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Document Rejected" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Document resealed" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Document sent" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Document Signed" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Document signing auth updated" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "Document signing process will be cancelled" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Document status" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Document title" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Document title updated" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Document updated" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "Document upload disabled due to unpaid invoices" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Document uploaded" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Document Viewed" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Document visibility updated" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "Document will be permanently deleted" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Documents" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Documents created from template" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Documents Received" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Documents Viewed" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "Don't have an account? <0>Sign up" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Download" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Download Audit Logs" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Download Certificate" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Download Template CSV" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Draft" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Draft documents" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Drafted Documents" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Drag & drop your PDF here." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Dropdown" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Dropdown options" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Duplicate" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Edit" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Edit Template" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Edit webhook" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Electronic Delivery of Documents" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Electronic Signature Disclosure" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "Email" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "Email address" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "Email Address" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "Email already confirmed" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "Email cannot already exist in the template" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "Email Confirmed!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "Email Options" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "Email resent" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "Email sent" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "Email sent!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "Email verification has been removed" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "Email verification has been resent" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Empty field" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "Enable 2FA" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Enable account" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Enable Account" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Enable Authenticator App" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Enable custom branding for all documents in this team." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Enable Direct Link Signing" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Enable signing order" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Enable Typed Signature" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Enable Typed Signatures" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Enabled" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Enclosed Document" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Ends On" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Enter password" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Enter your brand details" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Enter your email" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Enter your email address to receive the completed document." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Enter your name" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Enter your text here" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Error" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Everyone can access and view the document" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Everyone has signed" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "Everyone has signed! You will receive an Email copy of the signed document." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Exceeded timeout" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Expired" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Expires on {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "External ID" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Failed to reseal document" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Failed to save settings." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Failed to update recipient" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Failed to update webhook" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Failed: {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Field character limit" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Field font size" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Field format" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Field label" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Field placeholder" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "Field prefilled by assistant" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Field signed" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Field unsigned" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Fields" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Font Size" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "Forgot Password?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "Forgot your password?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Free Signature" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Full Name" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "General" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Generate Links" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Global recipient action authentication" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Go Back" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Go back home" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Go Back Home" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Go to owner" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Go to your <0>public profile settings to add documents." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Green" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "has invited you to approve this document" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "has invited you to assist this document" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "has invited you to sign this document" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "has invited you to view this document" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "Help complete the document for other signers." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Here you can edit your personal details." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Here you can manage your password and security settings." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Here you can set preferences and defaults for branding." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Here you can set preferences and defaults for your team." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "Here's how it works:" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Hey I’m Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Hi {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Hi, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Hide" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Hide additional information" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "I am a signer of this document" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "I am a viewer of this document" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "I am an approver of this document" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "I am an assistant of this document" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "I am required to receive a copy of this document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "I am the owner of this document" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "I'm sure! Delete it" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "If they accept this request, the team will be transferred to their account." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "If you don't find the confirmation link in your inbox, you can request a new one below." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "If your authenticator app does not support QR codes, you can use the following code instead:" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Inbox" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Inbox documents" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Include the Signing Certificate in the Document" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Information" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Inherit authentication method" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Initials" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Inserted" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Instance Stats" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Invalid code. Please try again." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Invalid email" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Invalid link" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Invalid token" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Invalid token provided. Please try again." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "Invitation accepted!" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Invitation declined" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "Invitation has been deleted" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "Invitation has been resent" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Invite" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Invite member" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Invite Members" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Invite team members" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Invited At" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Invoice" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "IP Address" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "It looks like {0} hasn't added any documents to their profile yet." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Join {teamName} on Documenso" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Label" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Language" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "Last 14 days" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "Last 30 days" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "Last 7 days" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Last modified" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Last updated" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Last Updated" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Last updated at" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Last used" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Leaderboard" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Leave" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Leave team" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Legality of Electronic Signatures" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Light Mode" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "Like to have your own public profile with agreements?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "Link expires in 1 hour." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Link template" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Links Generated" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Listening to {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Load older activity" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Loading document..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Loading Document..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Loading teams..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Loading..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Login" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Manage" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Manage {0}'s profile" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Manage all teams you are currently associated with." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Manage and view template" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "Manage billing" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Manage details for this public template" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Manage Direct Link" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Manage documents" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Manage passkeys" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Manage subscription" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "Manage Subscription" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Manage subscriptions" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Manage team subscription." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Manage teams" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Manage the direct link signing for this template" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Manage the members or invite new members." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Manage users" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Manage your passkeys." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Manage your site settings here" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Manager" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Mark as Viewed" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (created document)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (had document completed)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "Max" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Member" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Member Since" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Members" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Message <0>(Optional)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "Min" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Modify recipients" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Monthly" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Monthly Active Users: Users that created at least one Document" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Monthly Active Users: Users that had at least one of their documents completed" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Move" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Move Document to Team" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Move Template to Team" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "Move to Team" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Moving..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "My templates" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Name" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "Need to sign documents?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Needs to approve" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Needs to sign" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Needs to view" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Never" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Never expire" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "New Password" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "New team owner" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "New Template" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Next" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Next field" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "No active drafts" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "No further action is required from you at this time." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "No payment required" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "No public profile templates found" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "No recent activity" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "No recent documents" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "No recipient matching this description was found." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "No recipients" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "No recipients with this role" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "No restrictions" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "No results found" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "No results found." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "No signature field found" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "No valid direct templates found" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "No valid recipients found" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "No value found." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "No worries, it happens! Enter your email and we'll email you a special link to reset your password." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "None" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "Not supported" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Nothing to do" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Number" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Number format" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "on behalf of \"{0}\" has invited you to approve this document" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "on behalf of \"{0}\" has invited you to assist this document" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "on behalf of \"{0}\" has invited you to sign this document" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "on behalf of \"{0}\" has invited you to view this document" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "On this page, you can create a new webhook." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "On this page, you can create and manage API tokens. See our <0>Documentation for more information." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "On this page, you can create new Webhooks and manage the existing ones." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "On this page, you can edit the webhook and its settings." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Once confirmed, the following will occur:" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Only admins can access and view the document" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Only managers and above can access and view the document" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Only subscribers can have a username shorter than 6 characters" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "Oops! Something went wrong." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Opened" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "Or" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "Or continue with" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "Otherwise, the document will be created as a draft." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Owner" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Page {0} of {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Page {0} of {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Paid" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Passkey" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "Passkey already exists for the provided authenticator" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "Passkey creation cancelled due to one of the following reasons:" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "Passkey has been removed" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "Passkey has been updated" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Passkey name" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Passkey Re-Authentication" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Passkeys" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Passkeys are not supported on this browser" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "Password" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Password Required" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Password Reset Requested" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Password Reset Successful" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "Password should not be common or based on personal information" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Password updated" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "Password updated!" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Pay" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "Payment is required to finalise the creation of your team." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Payment overdue" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "Pending" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Pending Document" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Pending documents" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Pending Documents" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Pending invitations" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Pending team deleted." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Personal" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Personal Account" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Pick a number" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Pick a password" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Pick any of the following agreements below and start signing to get started" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Placeholder" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Please {0} your document<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Please {action} your document {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Please {recipientActionVerb} this document" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Please {recipientActionVerb} this document created by your direct template" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Please {recipientActionVerb} your document" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Please check the CSV file and make sure it is according to our format" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "Please check with the parent application for more information." -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Please check your email for updates." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Please choose your new password" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Please confirm your email" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Please confirm your email address" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Please contact support if you would like to revert this action." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Please enter a meaningful name for your token. This will help you identify it later." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Please enter a valid name." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Please mark as viewed to complete" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Please note that this action is <0>irreversible." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Please provide a reason" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Please provide a token from your authenticator, or a backup code." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Please review the document before signing." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Please select a PDF file" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Please try again and make sure you enter the correct email address." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Please try again or contact our support." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Please type {0} to confirm" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Please type <0>{0} to confirm." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Pre-formatted CSV template with example data." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Preferences" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Preview" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Preview and configure template." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Private" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "Private templates can only be modified and viewed by you." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Profile" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "Profile is currently <0>hidden." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "Profile is currently <0>visible." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Profile updated" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Public" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Public Profile" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "Public profile URL" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Public profile username" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "Radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Radio values" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Read only" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Read only field" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Read the full <0>signature disclosure." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Ready" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Reason" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "Reason for rejection: " -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Reason for rejection: {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "Reason must be less than 500 characters" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "Reauthentication is required to sign this field" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Receives copy" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Recent activity" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Recent documents" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Recipient" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Recipient action authentication" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "Recipient removed email" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "Recipient signed email" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "Recipient signing request email" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Recipient updated" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Recipients" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Recipients metrics" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "Recipients will still retain their copy of the document" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Recovery code copied" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Recovery codes" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Red" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "Redirect URL" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Registration Successful" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Reject Document" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Rejected" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Rejection Confirmed" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Rejection reason: {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "Remembered your password? <0>Sign In" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Reminder: {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Reminder: {0} invited you to {recipientActionVerb} a document" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Reminder: Please {recipientActionVerb} this document" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Reminder: Please {recipientActionVerb} your document" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Remove" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Remove team email" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Remove team member" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Renews: {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Repeat Password" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Request transfer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Required field" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Reseal document" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Resend" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Resend Confirmation Email" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Resend verification" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Reset" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "Reset email sent" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Reset Password" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Resetting Password..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Resolve" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Resolve payment" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Retention of Documents" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Retry" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Return" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Return to Dashboard" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Return to Home" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Return to sign in" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Revoke" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Revoke access" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Role" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Roles" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Rows per page" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Save" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Save Template" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Search" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Search by document title" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Search by name or email" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Search documents..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Search languages..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Secret" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Security" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Security activity" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Select" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Select a team" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Select a team to move this document to. This action cannot be undone." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Select a team to move this template to. This action cannot be undone." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Select a template you'd like to display on your public profile" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Select a template you'd like to display on your team's public profile" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Select an option" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Select at least" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Select default option" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Select passkey" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Send" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Send confirmation email" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Send document" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Send Document" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "Send document completed email" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "Send document completed email to the owner" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "Send document deleted email" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "Send document pending email" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Send documents on behalf of the team using the email address" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Send documents to recipients immediately" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Send on Behalf of Team" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "Send recipient removed email" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "Send recipient signed email" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "Send recipient signing request email" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Send reminder" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Sender" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Sending Reset Email..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Sending..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Sent" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Set a password" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Settings" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Setup" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Share" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Share Signature Card" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Share Signing Card" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Share the Link" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "Share your signing experience!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Show" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Show additional information" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Show advanced settings" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Show templates in your public profile for your audience to sign and get started quickly" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Show templates in your team public profile for your audience to sign and get started quickly" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Sign" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Sign as {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Sign as<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Sign document" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Sign Document" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Sign field" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Sign Here" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Sign In" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Sign in to your account" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Sign Out" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Sign the document to complete the process." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "Sign up" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "Sign Up with Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "Sign Up with OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "Signature ID" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "Signature is too small. Please provide a more complete signature." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Signatures Collected" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Signatures will appear once the document has been completed" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Signed" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Signer" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Signer Events" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Signers" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "Signers must have unique emails" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Signing" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Signing Certificate" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Signing certificate provided by" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "Signing Complete!" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "Signing for" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Signing in..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Signing Links" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "Signing links have been generated for this document." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "Signing order is enabled." -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Signing Volume" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Signups are disabled." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Since {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Site Banner" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Site Settings" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Something went wrong" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Something went wrong while loading the document." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Something went wrong while loading your passkeys." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Something went wrong while sending the confirmation email." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Something went wrong while updating the team billing subscription, please contact support." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "Something went wrong!" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Something went wrong." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Something went wrong. Please try again later." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Something went wrong. Please try again or contact support." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Sorry, we were unable to download the audit logs. Please try again later." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Sorry, we were unable to download the certificate. Please try again later." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Source" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Stats" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Status" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Step <0>{step} of {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Subject <0>(Optional)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Submit" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "Submitting..." -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "Subscribe" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Subscription" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Subscriptions" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Success" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Successfully created passkey" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Successfully created: {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Summary:" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "System Requirements" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "System Theme" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Team" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "Team \"{0}\" has been deleted on Documenso" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Team checkout" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "Team email" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "Team Email" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "Team email already verified!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "Team email has been removed" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "Team email has been revoked for {0}" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Team email removed" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Team email removed for {teamName} on Documenso" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Team email verification" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "Team email verified!" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "Team email was updated." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Team invitation" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Team invitations have been sent." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Team Member" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Team Name" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "Team not found" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Team Only" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "Team only templates are not linked anywhere and are visible only to your team." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Team ownership transfer" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "Team ownership transfer already completed!" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "Team ownership transferred!" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Team Preferences" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Team Public Profile" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Team settings" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Team Settings" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Team templates" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Team transfer in progress" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Team transfer request expired" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "Team URL" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Teams" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Teams restricted" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Template" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Template deleted" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Template document uploaded" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Template duplicated" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "Template has been removed from your public profile." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "Template has been updated." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Template moved" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Template not found or already associated with a team." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Template saved" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Template title" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Templates" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "Templates allow you to quickly generate documents with pre-filled recipients and fields." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Text" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Text Align" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Text Color" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "That's okay, it happens! Click the button below to reset your password." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "The account has been deleted successfully." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "The account has been disabled successfully." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "The account has been enabled successfully." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "The authentication required for recipients to sign fields" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "The authentication required for recipients to sign the signature field." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "The authentication required for recipients to view the document." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "The content to show in the banner, HTML is allowed" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "The direct link has been copied to your clipboard" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "The document has been successfully moved to the selected team." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "The document is now completed, please follow any instructions provided within the parent application." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "The document owner has been notified of your decision. They may contact you with further instructions if necessary." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "The document was created but could not be sent to recipients." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "The document will be hidden from your account" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "The document will be immediately sent to recipients if this is checked." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "The document's name" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "The email or password provided is incorrect" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "The events that will trigger a webhook to be sent to your URL." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "The following errors occurred:" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "The following team has been deleted by you" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "The ownership of team <0>{0} has been successfully transferred to you." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "The page you are looking for was moved, removed, renamed or might never have existed." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "The password you have entered is incorrect. Please try again." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "The profile link has been copied to your clipboard" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "The profile you are looking for could not be found." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "The public description that will be displayed with this template" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "The public name for your template" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "The reason provided for deletion is the following:" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "The recipient can prepare the document for later signers by pre-filling suggest values." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "The recipient has been updated successfully" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "The recipient is not required to take any action and receives a copy of the document after it is completed." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "The recipient is required to approve the document for it to be completed." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "The recipient is required to sign the document for it to be completed." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "The recipient is required to view the document for it to be completed." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "The selected team member will receive an email which they must accept before the team is transferred" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "The sharing link could not be created at this time. Please try again." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "The sharing link has been copied to your clipboard." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "The signer's email" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "The signer's name" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "The signing link has been copied to your clipboard." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "The team email <0>{teamEmail} has been removed from the following team" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "The team transfer invitation has been successfully deleted." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "The team transfer request to <0>{0} has expired." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." @@ -5470,1709 +5453,1705 @@ msgstr "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "The template has been successfully moved to the selected team." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "The template will be removed from your profile" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "The token was copied to your clipboard." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "The token was deleted successfully." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "The two-factor authentication code provided is incorrect" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "The URL for Documenso to send webhook events to." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "The webhook has been successfully deleted." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "The webhook has been updated successfully." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "The webhook was successfully created." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "There are no active drafts at the current moment. You can upload a document to start drafting." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "There are no completed documents yet. Documents that you have created or received will appear here once completed." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "They have permission on your behalf to:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "This account has been disabled. Please contact support." -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "This account has not been verified. Please verify your account before signing in." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "This action is not reversible. Please be certain." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "This can be overriden by setting the authentication requirements directly on each recipient in the next step." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "This document could not be deleted at this time. Please try again." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "This document could not be duplicated at this time. Please try again." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "This document could not be re-sent at this time. Please try again." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "This document has already been sent to this recipient. You can no longer edit this recipient." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "This document has been cancelled by the owner and is no longer available for others to sign." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "This document has been cancelled by the owner." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "This document has been signed by all recipients" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "This document is currently a draft and has not been sent" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "This document is password protected. Please enter the password to view the document." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "This document was created by you or a team member using the template above." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "This document was created using a direct link." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "This document was sent using <0>Documenso." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "This email is already being used by another team." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "This email is sent to the document owner when a recipient has signed the document." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "This email is sent to the recipient if they are removed from a pending document." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "This email is sent to the recipient requesting them to sign the document." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "This is how the document will reach the recipients once the document is ready for signing." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "This link is invalid or has expired. Please contact your team to resend a transfer request." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "This link is invalid or has expired. Please contact your team to resend a verification." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "This passkey has already been registered." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "This passkey is not configured for this application. Please login and add one in the user settings." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "This price includes minimum 5 seats." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "This recipient can no longer be modified as they have signed a field, or completed the document." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "This session has expired. Please try again." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "This signer has already signed the document." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "This team, and any associated data excluding billing invoices will be permanently deleted." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "This template could not be deleted at this time. Please try again." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "This token is invalid or has expired. No action is needed." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "This token is invalid or has expired. Please contact your team for a new invitation." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "This URL is already in use." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "This username has already been taken" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "This will be sent to all recipients if a pending document has been deleted." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "This will be sent to all recipients once the document has been fully completed." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "This will be sent to the document owner once the document has been fully completed." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "This will override any global settings." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Time" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Time zone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Time Zone" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Title" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "To accept this invitation you must create an account." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "To change the email you must remove and add a new email address." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "To confirm, please enter the accounts email address <0/>({0})." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "To confirm, please enter the reason" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "To decline this invitation you must create an account." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "To enable two-factor authentication, scan the following QR code using your authenticator app." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "To mark this document as viewed, you need to be logged in as <0>{0}" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "To proceed further, please set at least one value for the {0} field." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "To use our electronic signature service, you must have access to:" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "To view this document you need to be signed into your account, please sign in to continue." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Toggle the switch to hide your profile from the public." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Toggle the switch to show your profile to the public." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Token" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token copied to clipboard" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token created" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token deleted" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "Token doesn't have an expiration date" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Token expiration date" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "Token has expired. Please try again." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Token name" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Total Documents" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Total Recipients" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Total rows processed: {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Total Signers that Signed Up" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Total Users" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "transfer {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Transfer ownership of this team to a selected team member." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Transfer team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Transfer the ownership of the team to another team member." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Triggers" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Two factor authentication" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Two-Factor Authentication" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Two-factor authentication disabled" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Two-factor authentication enabled" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Two-Factor Re-Authentication" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Type" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Type a command or search..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "Typed signatures are not allowed. Please draw your signature." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "Uh oh! Looks like you're missing a token" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "Unable to change the language at this time. Please try again later." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "Unable to copy recovery code" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "Unable to copy token" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "Unable to create direct template access. Please try again later." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "Unable to decline this team invitation at this time." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "Unable to delete invitation. Please try again." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "Unable to delete team" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "Unable to disable two-factor authentication" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "Unable to join this team at this time." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "Unable to load document history" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "Unable to load documents" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "Unable to load your public profile templates at this time" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "Unable to remove email verification at this time. Please try again." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "Unable to remove team email at this time. Please try again." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "Unable to resend invitation. Please try again." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "Unable to resend verification at this time. Please try again." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "Unable to reset password" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "Unable to setup two-factor authentication" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "Unable to sign in" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "Unauthorized" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Uncompleted" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Unknown" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "Unpaid" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Update" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Update Banner" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Update passkey" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Update password" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Update profile" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Update Recipient" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Update role" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Update team" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Update team email" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Update team member" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Update user" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Update webhook" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Updating password..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Updating profile..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Updating Your Information" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Upgrade" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Upload a custom document to use instead of the template's default document" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Upload and Process" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Upload Avatar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "Upload CSV" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Upload custom document" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Upload Signature" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Upload Template Document" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Uploaded by" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "Uploaded file is too large" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "Uploaded file is too small" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "Uploaded file not an allowed file type" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Use" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Use Authenticator" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Use Backup Code" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Use Template" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "User" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "User has no password." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "User ID" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "User not found." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "User profiles are here!" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "User settings" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "User with this email already exists. Please use a different email address." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "Username can only container alphanumeric characters and dashes." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Users" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Validation" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Value" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Verification Email Sent" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Verification email sent successfully." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Verify Now" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Verify your email address" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Verify your email address to unlock all features." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Verify your email to upload documents." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Verify your team email address" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Version History" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "View" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "View activity" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "View all documents sent to and from this email address" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "View all documents sent to your account" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "View all recent security activity related to your account." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "View all related documents" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "View all security activity related to your account." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "View Codes" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "View document" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "View Document" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "View documents associated with this email" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "View invites" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "View more" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "View Original Document" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "View plans" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "View Recovery Codes" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "View teams" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Viewed" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Viewer" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Viewers" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Viewing" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "Waiting" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "Waiting for others" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "Waiting for others to complete signing." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "Waiting for others to sign" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "Waiting for Your Turn" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "Want to send slick signing links like this one? <0>Check out Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "Want your own public profile?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "Warning: Assistant as last signer" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "We are unable to proceed to the billing portal at this time. Please try again, or contact support." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "We are unable to remove this passkey at the moment. Please try again later." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "We are unable to update this passkey at the moment. Please try again later." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "We encountered an error while removing the direct template link. Please try again later." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "We encountered an error while updating the webhook. Please try again later." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "We encountered an unknown error while attempting to add this email. Please try again later." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "We encountered an unknown error while attempting to create a team. Please try again later." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "We encountered an unknown error while attempting to delete it. Please try again later." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "We encountered an unknown error while attempting to delete the pending team. Please try again later." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "We encountered an unknown error while attempting to delete this team. Please try again later." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "We encountered an unknown error while attempting to delete this token. Please try again later." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "We encountered an unknown error while attempting to delete your account. Please try again later." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "We encountered an unknown error while attempting to invite team members. Please try again later." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "We encountered an unknown error while attempting to leave this team. Please try again later." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "We encountered an unknown error while attempting to remove this user. Please try again later." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "We encountered an unknown error while attempting to reset your password. Please try again later." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "We encountered an unknown error while attempting to revoke access. Please try again or contact support." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "We encountered an unknown error while attempting to sign you In. Please try again later." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "We encountered an unknown error while attempting to sign you Up. Please try again later." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "We encountered an unknown error while attempting to update the banner. Please try again later." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "We encountered an unknown error while attempting to update the template. Please try again later." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "We encountered an unknown error while attempting to update this team member. Please try again later." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "We encountered an unknown error while attempting to update your password. Please try again later." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "We encountered an unknown error while attempting to update your public profile. Please try again later." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "We encountered an unknown error while attempting to update your team. Please try again later." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "We encountered an unknown error while attempting update the team email. Please try again later." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "We encountered an unknown error while attempting update your profile. Please try again later." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "We have sent a confirmation email for verification." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "We need a username to create your profile" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "We need your signature to sign documents" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "We were unable to copy the token to your clipboard. Please try again." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "We were unable to copy your recovery code to your clipboard. Please try again." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "We were unable to create a checkout session. Please try again, or contact support" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "We were unable to create your account. Please review the information you provided and try again." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "We were unable to log you out at this time." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "We were unable to set your public profile to public. Please try again." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "We were unable to submit this document at this time. Please try again later." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "We were unable to update your branding preferences at this time, please try again later" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "We were unable to update your document preferences at this time, please try again later" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "We were unable to verify your details. Please try again or contact support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "We were unable to verify your email at this time." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "We were unable to verify your email. If your email is not verified already, please try again." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "We will generate signing links for with you, which you can send to the recipients through your method of choice." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "We will generate signing links for you, which you can send to the recipients through your method of choice." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "We won't send anything to notify recipients." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "We're all empty" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "We've changed your password as you asked. You can now sign in with your new password." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook created" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook deleted" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook updated" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "Webhook URL" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhooks" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "Weekly" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Welcome" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Welcome back, we are lucky to have you." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "Welcome to Documenso!" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "Were you trying to edit this document instead?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "When you click continue, you will be prompted to add the first available authenticator on your system." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "Who do you want to remind?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Withdrawing Consent" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Write about the team" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Write about yourself" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Yearly" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "You" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "You are about to delete <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "You are about to delete the following team email from <0>{teamName}." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "You are about to hide <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "You are about to leave the following team." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "You are about to remove the following user from <0>{teamName}." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "You are about to revoke access for team <0>{0} ({1}) to use your email." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "You are about to send this document to the recipients. Are you sure you want to continue?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "You are currently on the <0>Free Plan." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "You are currently updating <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "You are currently updating the <0>{passkeyName} passkey." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "You are not a member of this team." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "You are not authorized to delete this user." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "You are not authorized to disable this user." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "You are not authorized to enable this user." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "You can choose to enable or disable your profile for public view." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "You can choose to enable or disable your team profile for public view." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "You can copy and share these links to recipients so they can action the document." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "You can revoke access at any time in your team settings on Documenso <0>here." -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "You can update the profile URL by updating the team URL in the general settings page." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "You can use the following variables in your message:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "You can view documents associated with this email and use this identity when sending documents." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "You can view the created documents in your dashboard under the \"Documents created from template\" section." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "You can view the document and its status by clicking the button below." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "You cannot add assistants when signing order is disabled." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "You cannot modify a team member who has a higher role than you." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "You cannot upload documents at this time." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "You cannot upload encrypted PDFs" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "You do not currently have a customer record, this should not happen. Please contact support for assistance." -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "You do not have permission to create a token for this team" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "You don't need to sign it anymore." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "You have accepted an invitation from <0>{0} to join their team." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "You have already completed the ownership transfer for <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "You have already verified your email address for <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "You have been invited by <0>{0} to join their team." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "You have been invited to join {0} on Documenso" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "You have been invited to join the following team" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "You have been removed from a document" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "You have been requested to take ownership of team {0} on Documenso" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "You have declined the invitation from <0>{0} to join their team." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "You have initiated the document {0} that requires you to {recipientActionVerb} it." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "You have no webhooks yet. Your webhooks will be shown here once you create them." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "You have not yet created any templates. To create a template please upload one." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "You have not yet created or received any documents. To create a document please upload one." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "You have reached your document limit for this month. Please upgrade your plan." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "You have reached your document limit." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "You have reached your document limit. <0>Upgrade your account to continue!" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "You have rejected the document '{documentName}'" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "You have rejected this document" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "You have signed “{documentName}”" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "You have successfully left this team." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "You have successfully registered. Please verify your account by clicking on the link you received in the email." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "You have successfully removed this user from the team." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "You have successfully revoked access." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "You have updated {teamMemberName}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "You have verified your email address for <0>{0}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "You must be an admin of this team to manage billing." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "You must enter '{deleteMessage}' to proceed" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "You must have at least one other team member to transfer ownership." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "You must set a profile URL before enabling your public profile." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "You need to be an admin to manage API tokens." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "You need to be logged in as <0>{email} to view this page." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "You need to be logged in to view this page." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "You need to setup 2FA to mark this document as viewed." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "You will get notified & be able to set up your documenso public profile when we launch the feature." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "You will now be required to enter a code from your authenticator app when signing in." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "You will receive an Email copy of the signed document once everyone has signed." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Your account has been deleted successfully." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Your avatar has been updated successfully." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Your banner has been updated successfully." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "Your brand website URL" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Your branding preferences have been updated" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Your bulk send has been initiated. You will receive an email notification upon completion." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "Your bulk send operation for template \"{templateName}\" has completed." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "Your current plan is past due. Please update your payment information." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "Your direct signing templates" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Your document failed to upload." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Your document has been created from the template successfully." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "Your document has been deleted by an admin!" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Your document has been re-sent successfully." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Your document has been sent successfully." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Your document has been successfully duplicated." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Your document has been uploaded successfully." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Your document has been uploaded successfully. You will be redirected to the template page." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Your document preferences have been updated" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "Your documents" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "Your email has already been confirmed. You can now use all features of Documenso." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Your email has been successfully confirmed! You can now use all features of Documenso." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "Your email is currently being used by team <0>{0} ({1})." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "Your existing tokens" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "Your new password cannot be the same as your old password." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "Your password has been updated successfully." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "Your password has been updated." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Your profile has been updated successfully." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Your profile has been updated." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Your public profile has been updated." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Your recovery code has been copied to your clipboard." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "Your recovery codes are listed below. Please store them in a safe place." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Your subscription is currently active." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Your team has been created." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Your team has been deleted" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Your team has been successfully deleted." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Your team has been successfully updated." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Your template has been duplicated successfully." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Your template has been successfully deleted." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Your template will be duplicated." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "Your templates has been saved successfully." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "Your token has expired!" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "Your tokens will be shown here once you create them." diff --git a/packages/lib/translations/es/web.po b/packages/lib/translations/es/web.po index 961041ede..b53a2154b 100644 --- a/packages/lib/translations/es/web.po +++ b/packages/lib/translations/es/web.po @@ -18,7164 +18,7143 @@ msgstr "" "X-Crowdin-File: web.po\n" "X-Crowdin-File-ID: 8\n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "\"{0}\" te ha invitado a firmar \"ejemplo de documento\"." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "" -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" ha sido eliminado por un admin." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "“{documentName}” ha sido firmado" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "\"{documentName}\" fue firmado por todos los firmantes" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" ha sido eliminado con éxito" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" en nombre de \"{0}\" te ha invitado a firmar \"documento de ejemplo\"." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 carácter excedido)} other {(# caracteres excedidos)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# carácter sobre el límite} other {# caracteres sobre el límite}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# destinatario} other {# destinatarios}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# Asiento} other {# Asientos}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>Tienes <1>1 invitación de equipo pendiente} other {<2>Tienes <3># invitaciones de equipo pendientes}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 campo que coincide} other {# campos que coinciden}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 Destinatario} other {# Destinatarios}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {Esperando 1 destinatario} other {Esperando # destinatarios}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Selecciona valores} other {# seleccionados...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "{0}" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} plantillas de firma directa" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} te ha invitado a {recipientActionVerb} el documento \"{1}\"." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} te invitó a {recipientActionVerb} un documento" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} se unió al equipo {teamName} en Documenso" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} dejó el equipo {teamName} en Documenso" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} de {1} documentos restantes este mes." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} de {1} fila(s) seleccionada." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} en nombre de \"{1}\" te ha invitado a {recipientActionVerb} el documento \"{2}\"." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Destinatario(s)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {1 carácter restante} other {{charactersRemaining} caracteres restantes}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} ha cancelado el documento {documentName}, ya no necesitas firmarlo." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} ha cancelado el documento<0/>\"{documentName}\"" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} te ha invitado a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} te ha invitado a {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} te ha invitado a {action} el documento \"{documentName}\"." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} te ha eliminado del documento {documentName}." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} te ha eliminado del documento<0/>\"{documentName}\"" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} en nombre de \"{teamName}\" te ha invitado a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} en nombre de \"{teamName}\" te ha invitado a {action} {documentName}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} se unió al siguiente equipo" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} dejó el siguiente equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# miembro} other {# miembros}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} agregó un campo" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} agregó un destinatario" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} creó el documento" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} eliminó el documento" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} movió el documento al equipo" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} abrió el documento" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} eliminó un campo" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} eliminó un destinatario" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} reenviaron un correo electrónico a {0}" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} envió un correo electrónico a {0}" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} envió el documento" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} firmó un campo" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} no firmó un campo" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} actualizó un campo" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} actualizó un destinatario" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} actualizó el documento" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} actualizó los requisitos de autorización de acceso al documento" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} actualizó el ID externo del documento" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} actualizó los requisitos de autenticación para la firma del documento" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} actualizó el título del documento" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} actualizó la visibilidad del documento" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} documento" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} el documento para completar el proceso." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} un documento utilizando uno de tus enlaces directos" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} ha rechazado el documento '{documentName}'" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} ha completado la firma del documento." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} ha firmado \"{0}\"" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} ha firmado \"{documentName}\"" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} ha firmado {documentName}" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {# carácter restante} other {# caracteres restantes}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} ha rechazado el documento \"{documentName}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} te ha invitado a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} te ha invitado a {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "solicitud de transferencia de propiedad de {teamName}" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} aprobó el documento" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} envió una copia del documento" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} completó su tarea" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} rechazó el documento" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} firmó el documento" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} vio el documento" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Mostrando # resultado.} other {Mostrando # resultados.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\" ya no está disponible para firmar" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} ha solicitado que asumas la propiedad del siguiente equipo" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} ha solicitado usar tu dirección de correo electrónico para su equipo en Documenso." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Haga clic para subir o arrastre y suelte" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>Correo electrónico - Al destinatario se le enviará el documento para firmar, aprobar, etc." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Heredar método de autenticación - Use el método de autenticación de firma de acción global configurado en el paso \"Configuración General\"" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>Sin restricciones - No se requiere autenticación" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>Sin restricciones - El documento se puede acceder directamente a través de la URL enviada al destinatario" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>Ninguno - No se requiere autenticación" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>Ninguno - Generaremos enlaces que puedes enviar a los destinatarios manualmente." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Nota - Si usas Enlaces en combinación con plantillas directas, necesitarás enviar manualmente los enlaces a los destinatarios restantes." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>Requerir 2FA - El destinatario debe tener una cuenta y 2FA habilitado a través de sus configuraciones" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Requerir cuenta - El destinatario debe haber iniciado sesión para ver el documento" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Requerir clave de acceso - El destinatario debe tener una cuenta y clave de acceso configurada a través de sus configuraciones" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Remitente: Todos" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>Está a punto de completar la aprobación de <1>\"{documentTitle}\".<2/> ¿Está seguro?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Está a punto de completar la firma de \"<1>{documentTitle}\".<2/> ¿Está seguro?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Está a punto de completar la visualización de \"<1>{documentTitle}\".<2/> ¿Está seguro?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "1 mes" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "12 meses" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "3 meses" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Perfil no encontrado" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Equipo no encontrado" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "6 meses" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "7 días" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "Se ha enviado un correo electrónico de confirmación y debería llegar a tu bandeja de entrada en breve." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "Un dispositivo capaz de acceder, abrir y leer documentos" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "Se creó un documento a partir de tu plantilla directa que requiere que {recipientActionVerb}." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "Se creará un documento borrador" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "Se añadió un campo" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "Se eliminó un campo" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "Se actualizó un campo" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "Un medio para imprimir o descargar documentos para sus registros" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "Un nuevo miembro se ha unido a tu equipo" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "Un nuevo token se ha creado con éxito." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "Se ha enviado un correo electrónico para restablecer la contraseña, si tienes una cuenta deberías verlo en tu bandeja de entrada en breve." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "Se añadió un destinatario" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "Se eliminó un destinatario" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "Se actualizó un destinatario" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "Se ha enviado una solicitud para transferir la propiedad de este equipo a <0>{0} ({1})" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "Se ha iniciado una solicitud para usar tu correo electrónico por {0} en Documenso" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "Un secreto que se enviará a tu URL para que puedas verificar que la solicitud ha sido enviada por Documenso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "Un secreto que se enviará a tu URL para que puedas verificar que la solicitud ha sido enviada por Documenso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "Una conexión a Internet estable" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "Un miembro del equipo se ha unido a un equipo en Documenso" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "Un miembro del equipo ha dejado {0}" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "Un miembro del equipo ha dejado un equipo en Documenso" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "Un equipo del que formabas parte ha sido eliminado" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "Una URL única para acceder a tu perfil" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "Una URL única para identificar tu equipo" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "Se enviará un correo electrónico de verificación a la dirección proporcionada." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Aceptar" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Aceptar invitación para unirse a un equipo en Documenso" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Aceptar la solicitud de correo electrónico del equipo para {teamName} en Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Aceptar solicitud de transferencia de equipo en Documenso" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Aceptación y Consentimiento" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Invitación de equipo aceptada" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Autenticación de Cuenta" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Cuenta eliminada" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Cuenta deshabilitada" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Cuenta habilitada" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Re-autenticación de Cuenta" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Reconocimiento" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Acción" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Acciones" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Activo" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Suscripciones Activas" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Agregar" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Agregar un documento" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Agregue una URL para redirigir al usuario una vez que se firme el documento" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Agrega todos los campos relevantes para cada destinatario." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Agrega todos los marcadores de posición relevantes para cada destinatario." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Agrega un autenticador para servir como método de autenticación secundario para firmar documentos." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Agrega un autenticador para servir como método de autenticación secundario al iniciar sesión o al firmar documentos." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Agregue un ID externo al documento. Esto se puede usar para identificar el documento en sistemas externos." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Agregue un ID externo a la plantilla. Esto se puede usar para identificar en sistemas externos." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Agregar otra opción" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Agregar otro valor" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "Agregar correo electrónico" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Agregar Campos" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Agregar más" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "Agregame" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "Agregame" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Agregar clave" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Agregar destinatario de marcador de posición" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Agregar Marcadores de posición" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Agregar firmante" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Agregar Firmantes" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Agregar correo electrónico del equipo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Agregar texto" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Agregar texto al campo" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Agrega a las personas que firmarán el documento." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Agrega los destinatarios con los que crear el documento" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Agregar y eliminar asientos ajustará tu factura en consecuencia." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Información adicional de la marca para mostrar al final de los correos electrónicos" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Administrador" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Acciones Administrativas" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Panel administrativo" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Opciones avanzadas" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Configuraciones avanzadas" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "Después de firmar un documento electrónicamente, se le dará la oportunidad de ver, descargar e imprimir el documento para sus registros. Se recomienda encarecidamente que conserve una copia de todos los documentos firmados electrónicamente para sus registros personales. También mantendremos una copia del documento firmado para nuestros registros, sin embargo, es posible que no podamos proporcionarle una copia del documento firmado después de un cierto período de tiempo." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "Después de la presentación, se generará automáticamente un documento y se agregará a su página de documentos. También recibirá una notificación por correo electrónico." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "Todos" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "Todos los documentos" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "Todos los documentos han sido procesados. Cualquier nuevo documento que se envíe o reciba aparecerá aquí." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "Todos los documentos relacionados con el proceso de firma electrónica se le proporcionarán electrónicamente a través de nuestra plataforma o por correo electrónico. Es su responsabilidad asegurarse de que su dirección de correo electrónico esté actualizada y que pueda recibir y abrir nuestros correos electrónicos." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "Todas las firmas insertadas serán anuladas" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "Todos los destinatarios serán notificados" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "Todas las firmas han sido anuladas." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "Todos los enlaces de firma se han copiado en su portapapeles." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "Todas las plantillas" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "Todo el Tiempo" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Permitir que los destinatarios del documento respondan directamente a esta dirección de correo electrónico" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Permite autenticarse usando biometría, administradores de contraseñas, claves de hardware, etc." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "¿Ya tienes una cuenta? <0>Iniciar sesión en su lugar" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Cantidad" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "Un administrador ha eliminado tu documento \"{documentName}\"." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "Una firma electrónica proporcionada por usted en nuestra plataforma, lograda mediante el clic en un documento e ingresando su nombre, o cualquier otro método de firma electrónica que proporcionemos, es legalmente vinculante. Tiene el mismo peso y exigibilidad que una firma manual escrita con tinta en papel." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "Una cuenta de correo electrónico" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "Un correo electrónico que contiene una invitación se enviará a cada miembro." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "Se ha enviado un correo electrónico solicitando la transferencia de este equipo." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "Ocurrió un error" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "Ocurrió un error al agregar campos." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "Ocurrió un error al agregar firmantes." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "Ocurrió un error al agregar los campos." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "Se produjo un error al firmar automáticamente el documento, es posible que algunos campos no estén firmados. Por favor, revise y firme manualmente cualquier campo restante." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "Ocurrió un error al crear el documento a partir de la plantilla." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "Ocurrió un error al crear el webhook. Por favor, intenta de nuevo." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "Se produjo un error al eliminar al usuario." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "Ocurrió un error al desactivar la firma de enlace directo." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "Se produjo un error al deshabilitar al usuario." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "Ocurrió un error al descargar tu documento." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "Ocurrió un error al duplicar la plantilla." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "Ocurrió un error al habilitar la firma de enlace directo." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "Se produjo un error al habilitar al usuario." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "Ocurrió un error al cargar los miembros del equipo. Por favor intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "Se produjo un error al cargar el documento." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "Ocurrió un error al mover el documento." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "Ocurrió un error al mover la plantilla." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "Ocurrió un error mientras se eliminaba el campo." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "Ocurrió un error al eliminar la firma." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "Ocurrió un error al enviar el documento." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "Ocurrió un error al enviar tu correo electrónico de confirmación" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "Ocurrió un error al firmar el documento." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "" -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "Ocurrió un error al actualizar la configuración del documento." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "Ocurrió un error al actualizar la firma." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "Ocurrió un error al actualizar tu perfil." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "Ocurrió un error al subir tu documento." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "Ocurrió un error desconocido" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Cualquier método de pago adjunto a este equipo permanecerá adjunto a este equipo. Por favor, contáctanos si necesitas actualizar esta información." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Cualquier fuente" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Cualquier estado" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "Tokens de API" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "Versión de la Aplicación" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Aprobar" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Aprobar Documento" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Aprobado" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Aprobador" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Aprobadores" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Aprobando" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "¿Estás seguro de que deseas eliminar este token?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Are you sure you want to reject this document? This action cannot be undone." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "¿Está seguro de que desea eliminar la clave de acceso <0>{passkeyName}?" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "¿Estás seguro de que deseas eliminar este equipo?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "¿Estás seguro?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "" -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Intenta sellar el documento de nuevo, útil después de que se haya producido un cambio de código para resolver un documento erróneo." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Registro de Auditoría" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Nivel de Autenticación" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Se requiere autenticación" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Avatar actualizado" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "Esperando confirmación de correo electrónico" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Atrás" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Volver a Documentos" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Color de Fondo" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Código de respaldo" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Códigos de respaldo" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Banner actualizado" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Detalles básicos" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Antes de comenzar, por favor confirma tu dirección de correo electrónico haciendo clic en el botón de abajo:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Facturación" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Negro" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Azul" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Preferencias de marca" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Preferencias de marca actualizadas" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Navegador" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Copia masiva" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Importación masiva" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Envío Masivo Completo: {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Operación de envío masivo completa para la plantilla \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Enviar plantilla masiva a través de CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Envío Masivo vía CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "por <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "Al aceptar esta solicitud, estarás concediendo a <0>{teamName} acceso a:" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "Al aceptar esta solicitud, asumirás la responsabilidad de cualquier ítem de facturación asociado con este equipo." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "Al eliminar este documento, ocurrirá lo siguiente:" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "Al continuar utilizando el servicio de firma electrónica proporcionado por Documenso, usted afirma que ha leído y entendido esta divulgación. Acepta todos los términos y condiciones relacionados con el uso de firmas electrónicas y transacciones electrónicas según lo detallado aquí." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "Al continuar con su firma electrónica, usted reconoce y consiente que se utilizará para firmar el documento dado y tiene la misma validez legal que una firma manuscrita. Al completar el proceso de firma electrónica, usted afirma su comprensión y aceptación de estas condiciones." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "Al utilizar la función de firma electrónica, usted está consintiendo realizar transacciones y recibir divulgaciones electrónicamente. Reconoce que su firma electrónica en los documentos es vinculante y que acepta los términos esbozados en los documentos que está firmando." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Cancelar" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Cancelado por el usuario" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "No se puede eliminar el firmante" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "Copia visible" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "COPIA VISIBLE" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "Con copia" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Límite de caracteres" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Gráficas" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Casilla de verificación" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Valores de Checkbox" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Checkout" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Elija un destinatario existente de abajo para continuar" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Elija el destinatario del enlace directo" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Elige cómo el documento llegará a los destinatarios" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Elija..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Reclamar cuenta" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Reclamar nombre de usuario" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Reclame su nombre de usuario ahora" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Limpiar archivo" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Limpiar filtros" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Limpiar firma" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Haga clic aquí para comenzar" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Haga clic aquí para reintentar" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Haga clic aquí para subir" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Haga clic para copiar el enlace de firma para enviar al destinatario" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Haga clic para insertar campo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Cerrar" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Completo" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Completar Aprobación" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Completar Firmado" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Completar Visualización" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Completado" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Documento completado" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Documentos completados" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Documentos Completados" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Configurar destinatario directo" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Configurar ajustes generales para el documento." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Configurar ajustes generales para la plantilla." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Configurar plantilla" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Configurar el campo {0}" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Confirmar" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Confirme escribiendo <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Confirme escribiendo <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Confirme escribiendo: <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Confirmar Eliminación" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "Confirmar correo electrónico" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "Correo electrónico de confirmación enviado" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Consentimiento para Transacciones Electrónicas" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Información de Contacto" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Contenido" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Continuar" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Continúa aprobando el documento." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "" -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Continúa descargando el documento." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Continúa firmando el documento." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Continúa viendo el documento." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Continuar con el inicio de sesión" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Controla el idioma predeterminado de un documento cargado. Este se utilizará como el idioma en las comunicaciones por correo electrónico con los destinatarios." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Controla la visibilidad predeterminada de un documento cargado." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Controla el formato del mensaje que se enviará al invitar a un destinatario a firmar un documento. Si se ha proporcionado un mensaje personalizado al configurar el documento, se usará en su lugar." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Controla si los destinatarios pueden firmar los documentos utilizando una firma mecanografiada. Habilitar o deshabilitar la firma mecanografiada globalmente." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Controla si el certificado de firma se incluirá en el documento cuando se descargue. El certificado de firma aún puede descargarse por separado desde la página de registros." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Copiado" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "Copiado al portapapeles" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Copiar" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Copiar enlace" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Copiar enlace compartible" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Copiar enlace compartible" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Copiar enlaces de firma" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Copiar token" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Crear" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Crea una <0>cuenta gratuita para acceder a tus documentos firmados en cualquier momento." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Crear una nueva cuenta" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Crea un equipo para colaborar con los miembros de tu equipo." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Crear cuenta" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Crear y enviar" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Crear como borrador" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Crear como pendiente" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Crear enlace directo" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Crear enlace de firma directo" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Crear documento a partir de la plantilla" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Crear ahora" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Crear uno automáticamente" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Crear enlaces de firma" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Crear equipo" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Crear Equipo" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Crear el documento como pendiente y listo para firmar." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Crear token" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Crear webhook" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Crear Webhook" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Crea tu cuenta y comienza a utilizar la firma de documentos de última generación." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Crea tu cuenta y comienza a utilizar la firma de documentos de última generación. La firma abierta y hermosa está al alcance de tu mano." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Creado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Creado En" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Creado por" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Creado el" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Creado el {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "Estructura CSV" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Contraseña actual" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "La contraseña actual es incorrecta." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Destinatarios actuales:" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Modo Oscuro" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Fecha" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Fecha de creación" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Formato de fecha" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Rechazar" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Invitación de equipo rechazada" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Idioma predeterminado del documento" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Visibilidad predeterminada del documento" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "eliminar" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Eliminar" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "eliminar {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "eliminar {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Eliminar cuenta" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Eliminar Cuenta" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Eliminar documento" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Eliminar Documento" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Eliminar clave de paso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Eliminar equipo" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Eliminar miembro del equipo" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Eliminar el documento. Esta acción es irreversible, así que proceda con precaución." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Eliminar la cuenta de usuario y todo su contenido. Esta acción es irreversible y cancelará su suscripción, así que proceda con cautela." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Eliminar Webhook" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Eliminar su cuenta y todo su contenido, incluidos documentos completados. Esta acción es irreversible y cancelará su suscripción, así que proceda con cuidado." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Eliminado" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Eliminando cuenta..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Detalles" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Dispositivo" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "¿No solicitaste un cambio de contraseña? Estamos aquí para ayudarte a asegurar tu cuenta, solo <0>contáctanos." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "enlace directo" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Enlace directo" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Enlace directo" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "enlace directo deshabilitado" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Receptor de enlace directo" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Firma de enlace directo" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "La firma de enlace directo ha sido deshabilitada" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "La firma de enlace directo ha sido habilitada" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "Las plantillas de enlace directo contienen un marcador de posición de destinatario dinámico. Cualquiera que tenga acceso a este enlace puede firmar el documento, y luego aparecerá en su página de documentos." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Enlace de plantilla directo eliminado" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "El uso de enlace de plantilla directo excedió ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Deshabilitar" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "Deshabilitar 2FA" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Deshabilitar cuenta" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Deshabilitar Cuenta" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Deshabilite la Autenticación de Dos Factores antes de eliminar su cuenta." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Deshabilitado" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Deshabilitar la firma de enlace directo evitará que cualquiera acceda al enlace." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Deshabilitar al usuario implica que no podrá usar la cuenta. También desactiva todos los contenidos relacionados como suscripciones, webhooks, equipos y claves API." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Mostrar su nombre y correo electrónico en documentos" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Distribuir documento" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "¿Desea eliminar esta plantilla?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "¿Desea duplicar esta plantilla?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso eliminará <0>todos sus documentos, junto con todos sus documentos completados, firmas y todos los demás recursos de su cuenta." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Documento" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Documento \"{0}\" - Rechazado por {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Documento \"{0}\" - Rechazo confirmado" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Acceso al documento" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "Se actualizó la autenticación de acceso al documento" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Documentar Todo" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Documento Aprobado" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Documento cancelado" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Documento completado" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "Correo electrónico de documento completado" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "¡Documento completado!" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Documento creado" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Documento creado por <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Documento creado a partir de plantilla directa" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Documento creado usando un <0>enlace directo" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Creación de documento" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Documento eliminado" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "Correo electrónico de documento eliminado" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "¡Documento eliminado!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Método de distribución de documentos" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Borrador de documento" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Documento duplicado" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "ID externo del documento actualizado" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Historial de documentos" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "ID del documento" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Bandeja de documentos" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "¡Límite de documentos excedido!" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Métricas de documento" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Documento movido" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Documento movido al equipo" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "El documento ya no está disponible para firmar" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Documento abierto" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Documento pendiente" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "Correo electrónico de documento pendiente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Preferencias del documento actualizadas" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Documento reenviado" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Documento Rechazado" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Documento sellado nuevamente" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Documento enviado" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Documento firmado" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Se actualizó la autenticación de firma del documento" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "El proceso de firma del documento será cancelado" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Estado del documento" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Título del documento" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Título del documento actualizado" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Documento actualizado" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "La carga de documentos está deshabilitada debido a facturas impagadas" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Documento subido" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Documento visto" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Visibilidad del documento actualizada" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "El documento será eliminado permanentemente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Documentos" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Documentos creados a partir de la plantilla" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Documentos recibidos" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Documentos vistos" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "¿No tienes una cuenta? <0>Regístrate" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Descargar" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Descargar registros de auditoría" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Descargar certificado" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Descargar Plantilla CSV" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Borrador" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Documentos en borrador" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Documentos redactados" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Arrastre y suelte su PDF aquí." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Menú desplegable" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Opciones de menú desplegable" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "Debido a una factura impaga, tu equipo ha sido restringido. Realiza el pago para restaurar el acceso completo a tu equipo." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Duplicar" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Editar" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Editar plantilla" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Editar webhook" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Entrega Electrónica de Documentos" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Divulgación de Firma Electrónica" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "Correo electrónico" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "Dirección de correo electrónico" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "Dirección de correo electrónico" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "El correo electrónico no puede existir ya en la plantilla" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "¡Correo electrónico confirmado!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "Opciones de correo electrónico" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "Correo electrónico reeenviado" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "Correo electrónico enviado" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "¡Correo electrónico enviado!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "La verificación de correo electrónico ha sido eliminada" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "La verificación de correo electrónico ha sido reenviada" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Campo vacío" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "Habilitar 2FA" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Habilitar cuenta" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Habilitar Cuenta" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Habilitar aplicación autenticadora" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Habilitar branding personalizado para todos los documentos en este equipo." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Habilitar firma de enlace directo" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Habilitar orden de firma" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Habilitar firma mecanografiada" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Habilitar firmas escritas" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Habilitado" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Habilitar la cuenta permite al usuario usar la cuenta de nuevo, junto con todas las funciones relacionadas como webhooks, equipos y claves API, por ejemplo." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Documento Adjunto" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Termina en" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Ingrese la contraseña" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Ingresa los detalles de tu marca" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Ingresa tu correo electrónico" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Ingresa tu dirección de correo electrónico para recibir el documento completado." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Ingresa tu nombre" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Ingresa tu texto aquí" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Error" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Todos pueden acceder y ver el documento" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Todos han firmado" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "¡Todos han firmado! Recibirás una copia por correo electrónico del documento firmado." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Tiempo de espera excedido" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Expirado" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Expira el {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "ID externo" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Falló al volver a sellar el documento" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Fallo al guardar configuraciones." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Falló al actualizar el destinatario" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Falló al actualizar el webhook" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Fallidos: {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Límite de caracteres del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Tamaño de fuente del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Formato de campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Etiqueta de campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Marcador de posición de campo" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Campo firmado" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Campo no firmado" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Campos" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "El archivo no puede ser mayor a {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "El tamaño del archivo excede el límite de {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Tamaño de fuente" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "Si tiene alguna pregunta sobre esta divulgación, firmas electrónicas o cualquier proceso relacionado, comuníquese con nosotros en: <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "Para cada destinatario, proporciona su correo electrónico (obligatorio) y nombre (opcional) en columnas separadas. Descarga el modelo CSV a continuación para el formato correcto." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "¿Olvidaste tu contraseña?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "¿Olvidaste tu contraseña?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Firma gratuita" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Nombre completo" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "General" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Generar enlaces" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Autenticación de acción de destinatario global" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Regresar" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Regresar a casa" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Regresar a casa" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Ir al propietario" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Ve a tu <0>configuración de perfil público para agregar documentos." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Verde" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "te ha invitado a aprobar este documento" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "te ha invitado a firmar este documento" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "te ha invitado a ver este documento" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Aquí puedes editar tus datos personales." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Aquí puedes gestionar tu contraseña y la configuración de seguridad." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Aquí puedes establecer preferencias y valores predeterminados para la marca." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Aquí puedes establecer preferencias y valores predeterminados para tu equipo." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "Así es como funciona:" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Hola, soy Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Hola, {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Hola, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Ocultar" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Ocultar información adicional" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "Soy un firmante de este documento" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "Soy un visualizador de este documento" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "Soy un aprobador de este documento" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "Se me requiere recibir una copia de este documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "Soy el propietario de este documento" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "¡Estoy seguro! Elimínalo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "Si aceptan esta solicitud, el equipo será transferido a su cuenta." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "Si no deseas usar el autenticador solicitado, puedes cerrarlo, lo que mostrará el próximo autenticador disponible." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "Si no encuentras el enlace de confirmación en tu bandeja de entrada, puedes solicitar uno nuevo a continuación." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "Si tu aplicación de autenticación no admite códigos QR, puedes usar el siguiente código en su lugar:" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Bandeja de entrada" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Documentos en bandeja de entrada" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Incluir el certificado de firma en el documento" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Información" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Heredar método de autenticación" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Iniciales" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Insertado" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Estadísticas de instancia" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Código inválido. Por favor, intenta nuevamente." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Email inválido" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Enlace inválido" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Token inválido" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Token inválido proporcionado. Por favor, inténtelo nuevamente." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "¡Invitación aceptada!" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Invitación rechazada" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "La invitación ha sido eliminada" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "La invitación ha sido reenviada" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Invitar" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Invitar miembro" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Invitar a miembros" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Invitar a miembros del equipo" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Invitado el" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Factura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "Dirección IP" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "Es crucial mantener su información de contacto, especialmente su dirección de correo electrónico, actual con nosotros. Por favor, notifíquenos inmediatamente sobre cualquier cambio para asegurarse de seguir recibiendo todas las comunicaciones necesarias." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Parece que {0} aún no ha agregado documentos a su perfil." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Parece que el token proporcionado ha expirado. Te hemos enviado otro token, por favor revisa tu correo electrónico y vuelve a intentarlo." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "Parece que no se ha proporcionado un token, si estás intentando verificar tu correo electrónico, por favor sigue el enlace en tu correo electrónico." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "Actualmente no es tu turno para firmar. Recibirás un correo electrónico con instrucciones una vez sea tu turno para firmar el documento." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Únete a {teamName} en Documenso" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Etiqueta" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Idioma" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "Últimos 14 días" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "Últimos 30 días" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "Últimos 7 días" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Última modificación" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Última actualización" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Última Actualización" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Última actualización el" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Último uso" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Tabla de clasificación" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Salir" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Salir del equipo" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Legalidad de las Firmas Electrónicas" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Modo claro" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "¿Te gustaría tener tu propio perfil público con acuerdos?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "El enlace expira en 1 hora." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Enlace de plantilla" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Enlaces generados" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Escuchando a {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Cargar actividad anterior" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Cargando documento..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Cargando Documento..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Cargando equipos..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Cargando..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Iniciar sesión" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Gestionar" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Gestionar el perfil de {0}" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Gestionar todos los equipos con los que estás asociado actualmente." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Gestionar y ver plantilla" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Gestionar detalles de esta plantilla pública" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Gestionar enlace directo" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Gestionar documentos" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Gestionar claves de acceso" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Gestionar suscripción" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Gestionar suscripciones" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Gestionar suscripción de equipo." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Gestionar equipos" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Gestionar la firma de enlace directo para esta plantilla" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Gestionar los miembros o invitar nuevos miembros." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Gestionar usuarios" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Gestionar tus claves de acceso." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Gestionar la configuración de tu sitio aquí" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Gerente" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Marcar como visto" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (documento creado)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (documento completado)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "Máx" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Tamaño máximo de archivo: 4MB. Máximo 100 filas por carga. Los valores en blanco usarán los valores predeterminados de la plantilla." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Miembro" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Miembro desde" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Miembros" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Mensaje <0>(Opcional)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "Mín" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Modificar destinatarios" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Mensual" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Usuarios activos mensuales: Usuarios que crearon al menos un documento" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Usuarios activos mensuales: Usuarios que completaron al menos uno de sus documentos" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Mover" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Mover documento al equipo" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Mover plantilla al equipo" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "Mover al equipo" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Moviendo..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "Mis plantillas" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Nombre" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "¿Necesitas firmar documentos?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Necesita aprobar" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Necesita firmar" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Necesita ver" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Nunca" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Nunca expira" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "Nuevo propietario del equipo" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "Nueva plantilla" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Siguiente" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Siguiente campo" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "No hay borradores activos" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "No further action is required from you at this time." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "No se requiere pago" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "No se encontraron plantillas de perfil público" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "No hay actividad reciente" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "No hay documentos recientes" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "No se encontró ningún destinatario que coincidiera con esta descripción." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "Sin destinatarios" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "No hay destinatarios con este rol" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "Sin restricciones" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "No se encontraron resultados" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "No se encontraron resultados." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "No se encontró campo de firma" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "No se encontraron plantillas directas válidas" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "No se encontraron destinatarios válidos" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "No se encontró valor." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "¡No te preocupes, sucede! Ingresa tu correo electrónico y te enviaremos un enlace especial para restablecer tu contraseña." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "Ninguno" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "No soportado" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Nada que hacer" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Número" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Formato de número" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "en nombre de \"{0}\" te ha invitado a aprobar este documento" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "en nombre de \"{0}\" te ha invitado a firmar este documento" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "en nombre de \"{0}\" te ha invitado a ver este documento" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "En esta página, puedes crear un nuevo webhook." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "En esta página, puedes editar el webhook y sus configuraciones." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "En esta página, puedes editar el webhook y su configuración." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Una vez confirmado, ocurrirá lo siguiente:" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Una vez habilitado, puede seleccionar cualquier destinatario activo para que sea un destinatario de firma por enlace directo, o crear uno nuevo. Este tipo de destinatario no puede ser editado ni eliminado." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Una vez que hayas escaneado el código QR o ingresado el código manualmente, ingresa el código proporcionado por tu aplicación de autenticación a continuación." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Una vez que su plantilla esté configurada, comparta el enlace donde desee. La persona que abra el enlace podrá ingresar su información en el campo de destinatario de enlace directo y completar cualquier otro campo que se le haya asignado." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Solo los administradores pueden acceder y ver el documento" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Solo los gerentes y superiores pueden acceder y ver el documento" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Solo los suscriptores pueden tener un nombre de usuario de menos de 6 caracteres" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "¡Ups! Algo salió mal." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Abierto" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "O" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "O continúa con" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "De lo contrario, el documento se creará como un borrador." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Propietario" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Página {0} de {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Página {0} de {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Pagado" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Clave de acceso" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "Ya existe una clave de acceso para el autenticador proporcionado" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "La creación de la clave de acceso se canceló debido a una de las siguientes razones:" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "La clave de acceso ha sido eliminada" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "La clave de acceso ha sido actualizada" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Nombre de clave de acceso" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Re-autenticación de Passkey" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Claves de acceso" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Las claves de acceso te permiten iniciar sesión y autenticarte utilizando biometría, gestores de contraseñas, etc." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Las claves de acceso no están soportadas en este navegador" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "Contraseña" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Se requiere contraseña" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Solicitud de restablecimiento de contraseña" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Restablecimiento de contraseña exitoso" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "La contraseña no debe ser común ni basarse en información personal" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Contraseña actualizada" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "¡Contraseña actualizada!" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Pagar" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "Se requiere pago para finalizar la creación de tu equipo." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Pago atrasado" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "Pendiente" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Documento pendiente" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Documentos pendientes" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Documentos Pendientes" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Invitaciones pendientes" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Equipo pendiente eliminado." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Personal" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Cuenta personal" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Seleccione un número" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Elige una contraseña" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Elige cualquiera de los siguientes acuerdos a continuación y comience a firmar para empezar" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Marcador de posición" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Por favor {0} tu documento<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Por favor {action} tu documento {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Por favor {recipientActionVerb} este documento" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Por favor {recipientActionVerb} este documento creado a partir de tu plantilla directa" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Por favor {recipientActionVerb} tu documento" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Por favor, revisa el archivo CSV y asegúrate de que esté de acuerdo con nuestro formato" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Por favor, revisa tu correo electrónico para actualizaciones." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Por favor, elige tu nueva contraseña" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Por favor confirma tu correo electrónico" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Por favor confirma tu dirección de correo electrónico" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Por favor, contacta al soporte si deseas revertir esta acción." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Por favor, ingresa un nombre significativo para tu token. Esto te ayudará a identificarlo más tarde." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Por favor, introduce un nombre válido." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Por favor, marca como visto para completar" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Por favor, ten en cuenta que proceder eliminará el destinatario de enlace directo y lo convertirá en un marcador de posición." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Por favor, ten en cuenta que esta acción es <0>irreversible." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Por favor, ten en cuenta que esta acción es <0>irreversible. Una vez confirmada, este documento será eliminado permanentemente." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Por favor, ten en cuenta que esta acción es irreversible. Una vez confirmada, tu plantilla será eliminada permanentemente." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Por favor, ten en cuenta que esta acción es irreversible. Una vez confirmada, tu token será eliminado permanentemente." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Por favor, ten en cuenta que esta acción es irreversible. Una vez confirmada, tu webhook será eliminado permanentemente." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Por favor, ten en cuenta que perderás acceso a todos los documentos asociados con este equipo y todos los miembros serán eliminados y notificados" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Please provide a reason" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Por favor, proporciona un token del autenticador o un código de respaldo. Si no tienes un código de respaldo disponible, contacta al soporte." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Por favor, proporciona un token de tu autenticador, o un código de respaldo." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Por favor, revise el documento antes de firmar." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Por favor seleccione un archivo PDF" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Por favor, intenta de nuevo y asegúrate de ingresar la dirección de correo electrónico correcta." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Por favor, inténtalo de nuevo o contacta a nuestro soporte." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Por favor, escriba {0} para confirmar" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Por favor, escribe <0>{0} para confirmar." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Plantilla CSV preformateada con datos de ejemplo." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Preferencias" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Vista previa" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Vista previa y configurar plantilla." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Privado" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "Las plantillas privadas solo pueden ser modificadas y vistas por ti." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Perfil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "El perfil está actualmente <0>oculto." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "El perfil está actualmente <0>visible." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Perfil actualizado" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Público" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Perfil Público" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "URL del perfil público" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Nombre de usuario del perfil público" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "Las plantillas públicas están conectadas a tu perfil público. Cualquier modificación a las plantillas públicas también aparecerá en tu perfil público." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "Radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Valores de radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Solo lectura" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Campo de solo lectura" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Lea la <0>divulgación de firma completa." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Listo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Razón" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "" -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Razón del rechazo: {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "Reason must be less than 500 characters" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "Se requiere reautenticación para firmar este campo" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Recibe copia" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Actividad reciente" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Documentos recientes" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Destinatario" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Autenticación de acción de destinatario" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "Correo electrónico de destinatario eliminado" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "Correo electrónico de destinatario firmado" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "Correo electrónico de solicitud de firma de destinatario" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Destinatario actualizado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Destinatarios" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Métricas de destinatarios" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "Los destinatarios aún conservarán su copia del documento" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Código de recuperación copiado" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Códigos de recuperación" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Rojo" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "URL de redirección" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Registro exitoso" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Rechazar Documento" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Rejected" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Rechazo Confirmado" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Razón del rechazo: {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "¿Recordaste tu contraseña? <0>Iniciar sesión" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Recordatorio: {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Recordatorio: {0} te invitó a {recipientActionVerb} un documento" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Recordatorio: Por favor {recipientActionVerb} este documento" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Recordatorio: Por favor {recipientActionVerb} tu documento" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Eliminar" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Eliminar correo electrónico del equipo" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Eliminar miembro del equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Renueva: {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Repetir contraseña" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Solicitar transferencia" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Campo obligatorio" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Re-sellar documento" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Reenviar" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Reenviar correo de confirmación" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Reenviar verificación" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Restablecer" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "Correo de restablecimiento enviado" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Restablecer contraseña" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Restableciendo contraseña..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Resolver" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Resolver pago" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Ten la seguridad de que tu documento es estrictamente confidencial y nunca será compartido. Solo se destacará tu experiencia de firma. ¡Comparte tu tarjeta de firma personalizada para mostrar tu firma!" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Retención de Documentos" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Reintentar" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Regresar" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Regresar al tablero" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Regresar a la página de inicio" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Regresar para iniciar sesión" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Revocar" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Revocar acceso" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Rol" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Roles" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Filas por página" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Guardar" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Guardar plantilla" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Buscar" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Buscar por título del documento" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Buscar por nombre o correo electrónico" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Buscar documentos..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Buscar idiomas..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Secreto" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Seguridad" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Actividad de seguridad" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Seleccionar" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Seleccionar un equipo" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Seleccionar un equipo para mover este documento. Esta acción no se puede deshacer." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Seleccionar un equipo para mover esta plantilla. Esta acción no se puede deshacer." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Seleccionar una plantilla que te gustaría mostrar en tu perfil público" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Seleccionar una plantilla que te gustaría mostrar en el perfil público de tu equipo" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Seleccionar una opción" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Seleccionar al menos" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Seleccionar opción predeterminada" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Seleccionar clave de acceso" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Enviar" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Enviar correo de confirmación" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Enviar documento" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Enviar documento" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "Enviar correo electrónico de documento completado" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "Enviar correo electrónico de documento completado al propietario" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "Enviar correo electrónico de documento eliminado" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "Enviar correo electrónico de documento pendiente" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Enviar documentos en nombre del equipo usando la dirección de correo electrónico" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Enviar documentos a los destinatarios inmediatamente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Enviar en nombre del equipo" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "Enviar correo electrónico de destinatario eliminado" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "Enviar correo electrónico de destinatario firmado" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "Enviar correo electrónico de solicitud de firma de destinatario" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Enviar recordatorio" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Remitente" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Enviando correo de restablecimiento..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Enviando..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Enviado" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Establecer una contraseña" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Configuraciones" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Configuración" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Compartir" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Compartir tarjeta de firma" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Compartir tarjeta de firma" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Compartir el enlace" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "¡Comparte tu experiencia de firma!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Mostrar" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Mostrar información adicional" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Mostrar configuraciones avanzadas" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Mostrar plantillas en tu perfil público para que tu audiencia firme y comience rápidamente" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Mostrar plantillas en el perfil público de tu equipo para que tu audiencia firme y comience rápidamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Firmar" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Firmar como {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Firmar como<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Firmar documento" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Firmar Documento" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Campo de firma" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Firmar aquí" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Iniciar sesión" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Inicia sesión en tu cuenta" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Cerrar sesión" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Firma el documento para completar el proceso." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "Regístrate" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "Regístrate con Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "Regístrate con OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "ID de Firma" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "La firma es demasiado pequeña. Proporcione una firma más completa." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Firmas recolectadas" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Las firmas aparecerán una vez que el documento se haya completado" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Firmado" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Firmante" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Eventos del Firmante" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Firmantes" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "Los firmantes deben tener correos electrónicos únicos" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Firmando" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Certificado de Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Certificado de firma proporcionado por" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "¡Firma completa!" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Iniciando sesión..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Enlaces de firma" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "Se han generado enlaces de firma para este documento." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Volumen de firmas" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Las inscripciones están deshabilitadas." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Desde {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Banner del sitio" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Configuraciones del sitio" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Algunos firmantes no han sido asignados a un campo de firma. Asigne al menos 1 campo de firma a cada firmante antes de continuar." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Algo salió mal" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Algo salió mal al intentar transferir la propiedad del equipo <0>{0} a tu equipo. Por favor, intenta de nuevo más tarde o contacta al soporte." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Algo salió mal al intentar verificar tu dirección de correo electrónico para <0>{0}. Por favor, intenta de nuevo más tarde." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Algo salió mal al cargar el documento." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Algo salió mal al cargar tus claves de acceso." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Algo salió mal al enviar el correo de confirmación." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Algo salió mal al actualizar la suscripción de facturación del equipo, por favor contacta al soporte." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "¡Algo salió mal!" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Algo salió mal." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Algo salió mal. Por favor, inténtelo de nuevo más tarde." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Algo salió mal. Por favor, intenta de nuevo o contacta al soporte." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Lo sentimos, no pudimos descargar los registros de auditoría. Por favor, intenta de nuevo más tarde." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Lo sentimos, no pudimos descargar el certificado. Por favor, intenta de nuevo más tarde." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Fuente" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Estadísticas" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Estado" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Paso <0>{step} de {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Asunto <0>(Opcional)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Enviar" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "" -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Suscripción" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Suscripciones" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Éxito" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Clave de acceso creada con éxito" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Creado con éxito: {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Resumen:" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "Requisitos del Sistema" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "Tema del sistema" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Equipo" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "El equipo \"{0}\" ha sido eliminado en Documenso" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Checkout del equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "Correo del equipo" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "Correo del equipo" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "¡Correo electrónico del equipo ya verificado!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "El correo del equipo ha sido eliminado" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "El correo electrónico del equipo ha sido revocado para {0}" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Correo electrónico del equipo eliminado" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Correo electrónico del equipo eliminado para {teamName} en Documenso" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Verificación del correo del equipo" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "¡Correo del equipo verificado!" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "El correo del equipo ha sido actualizado." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Invitación del equipo" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Las invitaciones al equipo han sido enviadas." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Miembro del equipo" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Nombre del equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Solo equipo" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "Las plantillas solo para el equipo no están vinculadas en ningún lado y son visibles solo para tu equipo." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Transferencia de propiedad del equipo" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "¡La transferencia de propiedad del equipo ya se ha completado!" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "¡Propiedad del equipo transferida!" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Preferencias del equipo" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Perfil público del equipo" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Configuraciones del equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Configuraciones del equipo" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Plantillas del equipo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Transferencia de equipo en progreso" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Solicitud de transferencia del equipo expirada" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "URL del equipo" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Equipos" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Equipos restringidos" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Plantilla" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Plantilla eliminada" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Documento de plantilla subido" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Plantilla duplicada" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "La plantilla ha sido eliminada de tu perfil público." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "La plantilla ha sido actualizada." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Plantilla movida" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Plantilla no encontrada o ya asociada con un equipo." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Plantilla guardada" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Título de plantilla" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Plantillas" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "Las plantillas te permiten generar documentos rápidamente con destinatarios y campos prellenados." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Texto" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Alineación de texto" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Color de texto" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Gracias por usar Documenso para realizar su firma electrónica de documentos. El propósito de esta divulgación es informarle sobre el proceso, la legalidad y sus derechos con respecto al uso de firmas electrónicas en nuestra plataforma. Al optar por usar una firma electrónica, usted está aceptando los términos y condiciones descritos a continuación." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "Está bien, ¡sucede! Haz clic en el botón de abajo para restablecer tu contraseña." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "La cuenta ha sido eliminada con éxito." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "La cuenta ha sido deshabilitada exitosamente." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "La cuenta ha sido habilitada exitosamente." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "La autenticación requerida para que los destinatarios firmen campos" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "La autenticación requerida para que los destinatarios firmen el campo de firma." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "La autenticación requerida para que los destinatarios vean el documento." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "El contenido que se mostrará en el banner, se permite HTML" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "El enlace directo ha sido copiado a tu portapapeles" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "El documento ha sido movido con éxito al equipo seleccionado." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "El documento ahora está completado, por favor sigue cualquier instrucción proporcionada dentro de la aplicación principal." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "El propietario del documento ha sido notificado de este rechazo. No se requiere ninguna acción adicional de su parte en este momento. El propietario del documento puede contactarlo con cualquier pregunta relacionada con este rechazo." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "The document owner has been notified of your decision. They may contact you with further instructions if necessary." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "El documento fue creado pero no se pudo enviar a los destinatarios." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "El documento será ocultado de tu cuenta" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "El documento se enviará inmediatamente a los destinatarios si esto está marcado." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "El nombre del documento" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "Los eventos que activarán un webhook para ser enviado a tu URL." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "Se produjeron los siguientes errores:" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "El siguiente equipo ha sido eliminado por su propietario. Ya no podrás acceder a este equipo y sus documentos" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "El siguiente equipo ha sido eliminado por ti" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "La propiedad del equipo <0>{0} ha sido transferida con éxito a ti." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "La página que buscas fue movida, eliminada, renombrada o puede que nunca haya existido." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "La contraseña que ha ingresado es incorrecta. Por favor, inténtelo de nuevo." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "El enlace del perfil ha sido copiado a tu portapapeles" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "El perfil que estás buscando no se pudo encontrar." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "La descripción pública que se mostrará con esta plantilla" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "El nombre público de tu plantilla" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "La razón proporcionada para la eliminación es la siguiente:" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "El destinatario ha sido actualizado con éxito" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "El destinatario no está obligado a tomar ninguna acción y recibe una copia del documento una vez completado." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "El destinatario debe aprobar el documento para que se complete." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "El destinatario debe firmar el documento para que se complete." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "El destinatario debe ver el documento para que se complete." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "El miembro del equipo seleccionado recibirá un correo electrónico que debe aceptar antes de que se transfiera el equipo" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "El enlace de compartición no se pudo crear en este momento. Por favor, inténtelo de nuevo." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "El enlace de compartición ha sido copiado a su portapapeles." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "El correo electrónico del firmante" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "El nombre del firmante" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "El enlace de firma ha sido copiado a tu portapapeles." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "El banner del sitio es un mensaje que se muestra en la parte superior del sitio. Se puede usar para mostrar información importante a tus usuarios." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "El correo electrónico del equipo <0>{teamEmail} ha sido eliminado del siguiente equipo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "La invitación para la transferencia de equipo ha sido eliminada con éxito." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "La solicitud de transferencia de equipo a <0>{0} ha expirado." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." msgstr "" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "La plantilla ha sido movida con éxito al equipo seleccionado." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "La plantilla será eliminada de tu perfil" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "El token fue copiado a tu portapapeles." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "El token fue eliminado con éxito." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "El token que has utilizado para restablecer tu contraseña ha expirado o nunca existió. Si aún has olvidado tu contraseña, por favor solicita un nuevo enlace de restablecimiento." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "La URL para Documenso para enviar eventos de webhook." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "El webhook ha sido eliminado con éxito." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "El webhook ha sido actualizado con éxito." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "El webhook fue creado con éxito." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "No hay borradores activos en este momento. Puedes subir un documento para comenzar a redactar." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "Aún no hay documentos completados. Los documentos que hayas creado o recibido aparecerán aquí una vez completados." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "Tienen permiso en tu nombre para:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "" -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "Esta acción no es reversible. Por favor, asegúrate." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "Esta acción es reversible, pero ten cuidado ya que la cuenta podría verse afectada permanentemente (por ejemplo, su configuración y contenidos podrían no restaurarse correctamente)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "Esto se puede anular configurando los requisitos de autenticación directamente en cada destinatario en el siguiente paso." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "Este documento no se puede recuperar, si deseas impugnar la razón para documentos futuros, por favor contacta con el soporte." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "Este documento no se pudo eliminar en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "Este documento no se pudo duplicar en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "Este documento no se pudo reenviar en este momento. Por favor, inténtalo de nuevo." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "Este documento ya ha sido enviado a este destinatario. Ya no puede editar a este destinatario." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "Este documento ha sido cancelado por el propietario y ya no está disponible para que otros lo firmen." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "Este documento ha sido cancelado por el propietario." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "Este documento ha sido firmado por todos los destinatarios" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "Este documento es actualmente un borrador y no ha sido enviado" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "Este documento está protegido por contraseña. Por favor ingrese la contraseña para ver el documento." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "Este documento fue creado por ti o un miembro del equipo usando la plantilla anterior." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "Este documento fue creado usando un enlace directo." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "Este documento fue enviado usando <0>Documenso." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "Este correo electrónico confirma que ha rechazado el documento <0>\"{documentName}\" enviado por {documentOwnerName}." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "Este correo electrónico ya está siendo utilizado por otro equipo." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "Este correo electrónico se envía al propietario del documento cuando un destinatario ha firmado el documento." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "Este correo electrónico se envía al destinatario si es eliminado de un documento pendiente." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "Este correo electrónico se envía al destinatario solicitando que firme el documento." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "Este correo electrónico se enviará al destinatario que acaba de firmar el documento, si todavía hay otros destinatarios que no han firmado." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "Este campo no se puede modificar ni eliminar. Cuando comparta el enlace directo de esta plantilla o lo agregue a su perfil público, cualquiera que acceda podrá ingresar su nombre y correo electrónico, y completar los campos que se le hayan asignado." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "Así es como el documento llegará a los destinatarios una vez que esté listo para firmarse." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "Este enlace es inválido o ha expirado. Por favor, contacta a tu equipo para reenviar una solicitud de transferencia." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "Este enlace es inválido o ha expirado. Por favor, contacta a tu equipo para reenviar una verificación." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "Esta clave de acceso ya ha sido registrada." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "Esta clave de acceso no está configurada para esta aplicación. Por favor, inicia sesión y añade una en la configuración del usuario." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "Este precio incluye un mínimo de 5 asientos." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "Este destinatario ya no puede ser modificado ya que ha firmado un campo o completado el documento." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "Esta sesión ha expirado. Por favor, inténtalo de nuevo." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "Este firmante ya ha firmado el documento." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "Este equipo, y cualquier dato asociado, excluyendo las facturas de facturación, serán eliminados permanentemente." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "Esta plantilla no se pudo eliminar en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "Este token es inválido o ha expirado. No se necesita ninguna acción." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "Este token es inválido o ha expirado. Por favor, contacta a tu equipo para una nueva invitación." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "Esta URL ya está en uso." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "Este nombre de usuario ya ha sido tomado" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Esto se enviará a todos los destinatarios si un documento pendiente ha sido eliminado." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "Esto se enviará a todos los destinatarios una vez que el documento esté completamente completado." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "Esto se enviará al propietario del documento una vez que el documento se haya completado por completo." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "Esto anulará cualquier configuración global." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Hora" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Zona horaria" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Zona horaria" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Título" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "Para aceptar esta invitación debes crear una cuenta." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "Para cambiar el correo electrónico debes eliminar y añadir una nueva dirección de correo electrónico." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "Para confirmar, por favor ingresa la dirección de correo electrónico de la cuenta <0/>({0})." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "Para confirmar, por favor ingresa la razón" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "Para rechazar esta invitación debes crear una cuenta." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "Para habilitar la autenticación de dos factores, escanea el siguiente código QR usando tu aplicación de autenticador." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "Para acceder a tu cuenta, por favor confirma tu dirección de correo electrónico haciendo clic en el enlace de confirmación de tu bandeja de entrada." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "Para marcar este documento como visto, debes iniciar sesión como <0>{0}" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "Para continuar, por favor establezca al menos un valor para el campo {0}." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "Para usar nuestro servicio de firma electrónica, debe tener acceso a:" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Para ver este documento debes iniciar sesión en tu cuenta, por favor inicia sesión para continuar." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Activa el interruptor para ocultar tu perfil del público." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Activa el interruptor para mostrar tu perfil al público." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Token" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token copiado al portapapeles" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token creado" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token eliminado" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "El token no tiene una fecha de expiración" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Fecha de expiración del token" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "El token ha expirado. Por favor, inténtelo de nuevo." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Nombre del token" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Total de documentos" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Total de destinatarios" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Filas totales procesadas: {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Total de firmantes que se registraron" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Total de usuarios" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "transferir {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Transferir la propiedad de este equipo a un miembro del equipo seleccionado." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Transferir equipo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Transferir la propiedad del equipo a otro miembro del equipo." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Desencadenadores" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Autenticación de dos factores" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "Los códigos de recuperación de autenticación de dos factores se utilizan para acceder a tu cuenta en caso de perder el acceso a tu aplicación de autenticador." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Autenticación de dos factores" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Autenticación de dos factores desactivada" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Autenticación de dos factores habilitada" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "La autenticación de dos factores ha sido desactivada para tu cuenta. Ya no se te pedirá ingresar un código de tu aplicación de autenticador al iniciar sesión." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Re-autenticación de Doble Factor" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Tipo" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Escribe un comando o busca..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "No se permiten firmas mecanografiadas. Por favor, dibuje su firma." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "¡Oh no! Parece que te falta un token" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "No se puede cambiar el idioma en este momento. Por favor intenta nuevamente más tarde." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "No se pudo copiar el código de recuperación" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "No se pudo copiar el token" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "No se pudo crear acceso directo a la plantilla. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "No se pudo rechazar esta invitación al equipo en este momento." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "No se pudo eliminar la invitación. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "No se pudo eliminar el equipo" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "No se pudo desactivar la autenticación de dos factores" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "No se pudo unirte a este equipo en este momento." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "No se pudo cargar el historial del documento" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "No se pueden cargar documentos" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "No se pudo cargar tus plantillas de perfil público en este momento" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "No se pudo eliminar la verificación de correo electrónico en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "No se pudo eliminar el correo electrónico del equipo en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "No se pudo reenviar la invitación. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "No se pudo reenviar la verificación en este momento. Por favor, inténtalo de nuevo." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "No se pudo restablecer la contraseña" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "No se pudo configurar la autenticación de dos factores" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "No se pudo iniciar sesión" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "No autorizado" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Incompleto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Desconocido" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "No pagado" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Actualizar" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Actualizar banner" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Actualizar clave de acceso" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Actualizar contraseña" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Actualizar perfil" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Actualizar destinatario" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Actualizar rol" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Actualizar equipo" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Actualizar correo electrónico del equipo" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Actualizar miembro del equipo" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Actualizar el rol y agregar campos según sea necesario para el destinatario directo. La persona que utilice el enlace directo firmará el documento como destinatario directo." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Actualizar usuario" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Actualizar webhook" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Actualizando contraseña..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Actualizando perfil..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Actualizando Su Información" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Actualizar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Sube un archivo CSV para crear múltiples documentos a partir de esta plantilla. Cada fila representa un documento con los detalles del destinatario." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Sube un documento personalizado para usar en lugar del documento predeterminado de la plantilla" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Subir y procesar" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Subir avatar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "Subir CSV" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Subir documento personalizado" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Subir firma" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Cargar Documento Plantilla" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Carga el logo de tu marca (máx 5MB, JPG, PNG o WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Subido por" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "El archivo subido es demasiado grande" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "El archivo subido es demasiado pequeño" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "El archivo subido no es un tipo de archivo permitido" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Usar" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Usar Autenticador" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Usar Código de Respaldo" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Usar Plantilla" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "Usuario" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "El usuario no tiene contraseña." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "ID de Usuario" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "Usuario no encontrado." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "¡Los perfiles de usuario están aquí!" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "Configuraciones del usuario" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "Un usuario con este correo electrónico ya existe. Por favor, use una dirección de correo diferente." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "El nombre de usuario solo puede contener caracteres alfanuméricos y guiones." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Usuarios" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Validación" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Valor" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Correo Electrónico de Verificación Enviado" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Correo electrónico de verificación enviado con éxito." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Verifica Ahora" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Verifica tu dirección de correo electrónico" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Verifica tu dirección de correo electrónico para desbloquear todas las funciones." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Verifica tu correo electrónico para subir documentos." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Verifica tu dirección de correo electrónico del equipo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Historial de Versiones" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "Ver" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "Ver actividad" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "Ver todos los documentos enviados hacia y desde esta dirección de correo electrónico" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "Ver todos los documentos enviados a tu cuenta" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "Ver toda la actividad de seguridad reciente relacionada con tu cuenta." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "Ver todos los documentos relacionados" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "Ver toda la actividad de seguridad relacionada con tu cuenta." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "Ver Códigos" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "Ver documento" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "Ver Documento" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "Ver documentos asociados con este correo electrónico" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "Ver invitaciones" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "Ver más" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "Ver Documento Original" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "Ver planes" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "Ver Códigos de Recuperación" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "Ver equipos" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Visto" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Visor" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Espectadores" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Viendo" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "Esperando" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "Esperando a otros" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "Esperando a que otros completen la firma." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "Esperando a que otros firmen" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "Esperando tu turno" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "¿Quieres enviar enlaces de firma elegantes como este? <0>Consulta Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "¿Quieres tu propio perfil público?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "No podemos proceder al portal de facturación en este momento. Por favor, inténtalo de nuevo o contacta con soporte." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "No podemos eliminar esta clave de acceso en este momento. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "No podemos actualizar esta clave de acceso en este momento. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "Encontramos un error al eliminar el enlace directo de la plantilla. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "Encontramos un error al actualizar el webhook. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "Encontramos un error desconocido al intentar añadir este correo electrónico. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "Encontramos un error desconocido al intentar crear un equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminarlo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar el equipo pendiente. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar este equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar este token. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar tu cuenta. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "Encontramos un error desconocido al intentar invitar a miembros del equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "Encontramos un error desconocido al intentar salir de este equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar esta plantilla de tu perfil. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "Encontramos un error desconocido al intentar eliminar esta transferencia. Por favor, inténtalo de nuevo o contacta con soporte." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "Encontramos un error desconocido al intentar eliminar a este usuario. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "Encontramos un error desconocido al intentar solicitar una transferencia de este equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "Encontramos un error desconocido al intentar restablecer tu contraseña. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Encontramos un error desconocido al intentar revocar el acceso. Por favor, inténtalo de nuevo o contacta con soporte." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "Encontramos un error desconocido al intentar iniciar sesión. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "Encontramos un error desconocido al intentar registrarte. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar el banner. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar la plantilla. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar a este miembro del equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar tu contraseña. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar tu perfil público. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar tu equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar el correo electrónico del equipo. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Encontramos un error desconocido al intentar actualizar su perfil. Por favor, inténtelo de nuevo más tarde." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "Hemos enviado un correo electrónico de confirmación para la verificación." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "Necesitamos un nombre de usuario para crear tu perfil" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "Necesitamos su firma para firmar documentos" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "No pudimos copiar el token en tu portapapeles. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "No pudimos copiar tu código de recuperación en tu portapapeles. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "No pudimos crear una sesión de pago. Por favor, inténtalo de nuevo o contacta con soporte" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "No pudimos crear su cuenta. Revise la información que proporcionó e inténtelo de nuevo." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "No pudimos desactivar la autenticación de dos factores para tu cuenta. Asegúrate de haber ingresado correctamente tu contraseña y código de respaldo e inténtalo de nuevo." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "No pudimos cerrar sesión en este momento." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "No pudimos configurar tu perfil público como público. Por favor, inténtalo de nuevo." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "No pudimos configurar la autenticación de dos factores para tu cuenta. Asegúrate de haber ingresado correctamente tu código e inténtalo de nuevo." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "No pudimos enviar este documento en este momento. Por favor, inténtalo de nuevo más tarde." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "No pudimos actualizar tus preferencias de marca en este momento, por favor intenta de nuevo más tarde" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "No pudimos actualizar tus preferencias de documento en este momento, por favor intenta de nuevo más tarde" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "No pudimos verificar tus datos. Por favor, inténtalo de nuevo o contacta con soporte" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "No pudimos verificar tu correo electrónico. Si tu correo electrónico no está verificado ya, por favor inténtalo de nuevo." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "Generaremos enlaces de firma para ti, que podrás enviar a los destinatarios a través de tu método preferido." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "Generaremos enlaces de firma para ti, que podrás enviar a los destinatarios a través de tu método preferido." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "No enviaremos nada para notificar a los destinatarios." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "No hay nada aquí" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "Aún estamos esperando a que otros firmantes firmen este documento.<0/>Te notificaremos tan pronto como esté listo." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "Hemos cambiado tu contraseña como solicitaste. Ahora puedes iniciar sesión con tu nueva contraseña." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "Hemos enviado un correo electrónico de confirmación a <0>{email}. Por favor, revisa tu bandeja de entrada y haz clic en el enlace del correo electrónico para verificar tu cuenta." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook creado" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook eliminado" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook actualizado" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "URL del Webhook" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhooks" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Bienvenido" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Bienvenido de nuevo, somos afortunados de tenerte." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "¡Bienvenido a Documenso!" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "¿Estabas intentando editar este documento en su lugar?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "Cuando haces clic en continuar, se te pedirá que añadas el primer autenticador disponible en tu sistema." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "Cuando firme un documento, podemos completar y firmar automáticamente los siguientes campos usando información que ya se ha proporcionado. También puede firmar manualmente o eliminar cualquier campo firmado automáticamente más tarde si lo desea." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Cuando utilice nuestra plataforma para colocar su firma electrónica en documentos, está consintiendo hacerlo bajo la Ley de Firmas Electrónicas en el Comercio Global y Nacional (Ley E-Sign) y otras leyes aplicables. Esta acción indica su aceptación de usar medios electrónicos para firmar documentos y recibir notificaciones." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Mientras esperas a que ellos lo hagan, puedes crear tu propia cuenta de Documenso y comenzar a firmar documentos de inmediato." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "¿A quién deseas recordar?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Retirar Consentimiento" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Escribe sobre el equipo" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Escribe sobre ti mismo" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Anual" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "Tú" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "Estás a punto de eliminar <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "Estás a punto de eliminar el siguiente correo electrónico del equipo de <0>{teamName}." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "Estás a punto de ocultar <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "Estás a punto de salir del siguiente equipo." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "Estás a punto de eliminar al siguiente usuario de <0>{teamName}." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "Estás a punto de revocar el acceso para el equipo <0>{0} ({1}) para usar tu correo electrónico." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "Está a punto de enviar este documento a los destinatarios. ¿Está seguro de que desea continuar?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "Actualmente estás actualizando <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "Actualmente estás actualizando la clave <0>{passkeyName}." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "No eres miembro de este equipo." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "No está autorizado para eliminar a este usuario." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "No estás autorizado para deshabilitar a este usuario." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "No estás autorizado para habilitar a este usuario." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "También puedes copiar y pegar este enlace en tu navegador: {confirmationLink} (el enlace expira en 1 hora)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "Puedes elegir habilitar o deshabilitar tu perfil para la vista pública." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "Puedes elegir habilitar o deshabilitar el perfil de tu equipo para la vista pública." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "Puede copiar y compartir estos enlaces con los destinatarios para que puedan gestionar el documento." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "Puedes revocar el acceso en cualquier momento en la configuración de tu equipo en Documenso <0>aquí." -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "Puedes actualizar la URL del perfil actualizando la URL del equipo en la página de configuración general." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "Puede usar las siguientes variables en su mensaje:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "Puedes ver documentos asociados a este correo electrónico y usar esta identidad al enviar documentos." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "Puedes ver los documentos creados en tu panel de control bajo la sección \"Documentos creados a partir de la plantilla\"." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "Puede ver el documento y su estado haciendo clic en el botón de abajo." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "No puedes tener más de {MAXIMUM_PASSKEYS} claves de acceso." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "No puedes modificar a un miembro del equipo que tenga un rol más alto que tú." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "No puede cargar documentos en este momento." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "No puedes subir PDFs encriptados" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "" -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "No tiene permiso para crear un token para este equipo" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "Ya no necesitas firmarlo." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "Has aceptado una invitación de <0>{0} para unirte a su equipo." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "Ya has completado la transferencia de propiedad para <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "Ya has verificado tu dirección de correo electrónico para <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "Has sido invitado por <0>{0} para unirte a su equipo." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "Te han invitado a unirte a {0} en Documenso" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "Te han invitado a unirte al siguiente equipo" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "Te han eliminado de un documento" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "Se te ha solicitado asumir la propiedad del equipo {0} en Documenso" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "Has rechazado la invitación de <0>{0} para unirte a su equipo." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "Has iniciado el documento {0} que requiere que {recipientActionVerb}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "Aún no tienes webhooks. Tus webhooks se mostrarán aquí una vez que los crees." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "Aún no has creado plantillas. Para crear una plantilla, por favor carga una." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "Aún no has creado ni recibido documentos. Para crear un documento, por favor carga uno." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "Has alcanzado el límite máximo de {0} plantillas directas. <0>¡Actualiza tu cuenta para continuar!" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "Ha alcanzado su límite de documentos para este mes. Por favor, actualice su plan." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "Ha alcanzado su límite de documentos." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "Has alcanzado tu límite de documentos. <0>¡Actualiza tu cuenta para continuar!" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "Ha rechazado el documento '{documentName}'" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "You have rejected this document" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "Has firmado “{documentName}”" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "Has salido de este equipo con éxito." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "Te has registrado con éxito. Por favor verifica tu cuenta haciendo clic en el enlace que recibiste en el correo electrónico." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "Has eliminado a este usuario del equipo con éxito." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "Has revocado el acceso con éxito." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "Usted tiene el derecho de retirar su consentimiento para usar firmas electrónicas en cualquier momento antes de completar el proceso de firma. Para retirar su consentimiento, comuníquese con el remitente del documento. Si no se comunica con el remitente, puede comunicarse con <0>{SUPPORT_EMAIL} para obtener asistencia. Tenga en cuenta que retirar el consentimiento puede retrasar o detener la finalización de la transacción o servicio relacionado." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "Has actualizado a {teamMemberName}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "Has verificado tu dirección de correo electrónico para <0>{0}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "Debes ser un administrador de este equipo para gestionar la facturación." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "Debes ingresar '{deleteMessage}' para continuar" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "Debes tener al menos otro miembro del equipo para transferir la propiedad." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "Debes establecer una URL de perfil antes de habilitar tu perfil público." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "Debes iniciar sesión como <0>{email} para ver esta página." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "Debes iniciar sesión para ver esta página." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "Debes configurar 2FA para marcar este documento como visto." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "Recibirás una notificación y podrás configurar tu perfil público de Documenso cuando lanzemos la función." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "Ahora se te pedirá que ingreses un código de tu aplicación de autenticador al iniciar sesión." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "Recibirás una copia por correo electrónico del documento firmado una vez que todos hayan firmado." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Tu cuenta ha sido eliminada con éxito." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Tu avatar ha sido actualizado con éxito." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Tu banner ha sido actualizado con éxito." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "La URL de tu sitio web de marca" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Tus preferencias de marca han sido actualizadas" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Tu envío masivo ha sido iniciado. Recibirás una notificación por correo electrónico al completarse." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "Tu operación de envío masivo para la plantilla \"{templateName}\" ha sido completada." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "Tus {0} plantillas de firma directa" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Tu documento no se pudo cargar." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Tu documento se ha creado exitosamente a partir de la plantilla." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "¡Tu documento ha sido eliminado por un administrador!" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Tu documento ha sido reenviado con éxito." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Tu documento ha sido enviado con éxito." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Tu documento ha sido duplicado con éxito." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Tu documento ha sido subido con éxito." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Tu documento ha sido subido con éxito. Serás redirigido a la página de plantillas." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Tus preferencias de documento han sido actualizadas" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "Tus documentos" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "¡Tu correo electrónico ha sido confirmado con éxito! Ahora puedes usar todas las funciones de Documenso." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "Tu correo electrónico está siendo utilizado actualmente por el equipo <0>{0} ({1})." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "Tus tokens existentes" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "Tu nueva contraseña no puede ser la misma que tu antigua contraseña." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "Tu contraseña ha sido actualizada con éxito." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "Tu contraseña ha sido actualizada." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Tu pago por equipos está vencido. Por favor, salda el pago para evitar interrupciones en el servicio." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Tu perfil ha sido actualizado con éxito." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Tu perfil ha sido actualizado." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Tu perfil público ha sido actualizado." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Tu código de recuperación ha sido copiado en tu portapapeles." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "Tus códigos de recuperación se enumeran a continuación. Por favor, guárdalos en un lugar seguro." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Tu suscripción está actualmente activa." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Tu equipo ha sido creado." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Tu equipo ha sido eliminado" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Tu equipo ha sido eliminado con éxito." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Tu equipo ha sido actualizado con éxito." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Tu plantilla ha sido duplicada con éxito." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Tu plantilla ha sido eliminada con éxito." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Tu plantilla será duplicada." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "Tus plantillas han sido guardadas con éxito." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "¡Tu token ha expirado!" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "¡Tu token se creó con éxito! ¡Asegúrate de copiarlo porque no podrás verlo de nuevo!" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "Tus tokens se mostrarán aquí una vez que los crees." diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index 5fe1534c7..279ed22aa 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -18,7164 +18,7143 @@ msgstr "" "X-Crowdin-File: web.po\n" "X-Crowdin-File-ID: 8\n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "\"{0}\" vous a invité à signer \"example document\"." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "" -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" a été supprimé par un administrateur." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "« {documentName} » a été signé" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "“{documentName}” a été signé par tous les signataires" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" a été supprimé avec succès" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" au nom de \"{0}\" vous a invité à signer \"exemple de document\"." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 caractère de trop)} other {(# caractères de trop)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# caractère au-dessus de la limite} other {# caractères au-dessus de la limite}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# destinataire} other {# destinataires}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# siège} other {# sièges}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>Vous avez <1>1 invitation d'équipe en attente} other {<2>Vous avez <3># invitations d'équipe en attente}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 champ correspondant} other {# champs correspondants}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 Destinataire} other {# Destinataires}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {En attente d'1 destinataire} other {En attente de # destinataires}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Sélectionner des valeurs} other {# sélectionnées...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "{0}" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} modèles de signature directe" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} vous a invité à {recipientActionVerb} le document \"{1}\"." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} vous a invité à {recipientActionVerb} un document" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} a rejoint l'équipe {teamName} sur Documenso" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} a quitté l'équipe {teamName} sur Documenso" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} des {1} documents restants ce mois-ci." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} sur {1} ligne(s) sélectionnée(s)." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} représentant \"{1}\" vous a invité à {recipientActionVerb} le document \"{2}\"." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Destinataire(s)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {1 caractère restant} other {{charactersRemaining} caractères restants}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} a annulé le document {documentName}, vous n'avez plus besoin de le signer." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} a annulé le document<0/>\"{documentName}\"" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} vous a invité à {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} vous a invité à {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} vous a invité à {action} le document \"{documentName}\"." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} vous a retiré du document {documentName}." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} vous a retiré du document<0/>\"{documentName}\"" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} représentant \"{teamName}\" vous a invité à {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} représentant \"{teamName}\" vous a invité à {action} {documentName}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} a rejoint l'équipe suivante" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} a quitté l'équipe suivante" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# membre} other {# membres}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} a ajouté un champ" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} a ajouté un destinataire" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} a créé le document" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} a supprimé le document" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} a déplacé le document vers l'équipe" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} a ouvert le document" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} a supprimé un champ" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} a supprimé un destinataire" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} a renvoyé un e-mail à {0}" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} a envoyé un email à {0}" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} a envoyé le document" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} a signé un champ" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} n'a pas signé un champ" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} a mis à jour un champ" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} a mis à jour un destinataire" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} a mis à jour le document" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} a mis à jour les exigences d'authentification d'accès au document" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} a mis à jour l'ID externe du document" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} a mis à jour les exigences d'authentification pour la signature des documents" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} a mis à jour le titre du document" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} a mis à jour la visibilité du document" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} document" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} the document to complete the process." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} un document en utilisant l'un de vos liens directs" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} a rejeté le document \"{documentName}\"" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} a terminé de signer le document." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} a signé \"{0}\"" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} a signé \"{documentName}\"" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} a signé {documentName}" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {# caractère restant} other {# caractères restants}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} a rejeté le document \"{documentName}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} vous a invité à {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} vous a invité à {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "Demande de transfert de propriété de {teamName}" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} a approuvé le document" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} a mis en copie le document" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} a terminé sa tâche" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} a rejeté le document" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} a signé le document" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} a consulté le document" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Affichage de # résultat.} other {Affichage de # résultats.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\" n'est plus disponible pour signer" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} a demandé que vous preniez en charge l'équipe suivante" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} a demandé à utiliser votre adresse e-mail pour leur équipe sur Documenso." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Cliquez pour télécharger ou faites glisser et déposez" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>Email - Le destinataire recevra le document par e-mail pour signer, approuver, etc." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Hériter de la méthode d'authentification - Utilisez la méthode globale d'authentification de signature d'action configurée dans l'étape \"Paramètres généraux\"" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>Aucune restriction - Aucune authentification requise" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>Aucune restriction - Le document peut être consulté directement via l'URL envoyée au destinataire" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>Aucun - Aucune authentification requise" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>Aucun - Nous générerons des liens que vous pourrez envoyer aux destinataires manuellement." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Remarque - Si vous utilisez des liens en combinaison avec des modèles directs, vous devrez envoyer manuellement les liens aux destinataires restants." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>Nécessite une authentification 2FA - Le destinataire doit avoir un compte avec 2FA activée via ses paramètres" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Nécessite un compte - Le destinataire doit être connecté pour voir le document" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Clé d'accès requise - Le destinataire doit avoir un compte et une clé d'accès configurés via ses paramètres" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Expéditeur : Tous" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>Vous êtes sur le point de terminer l'approbation de <1>\"{documentTitle}\".<2/> Êtes-vous sûr ?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Vous êtes sur le point de terminer la signature de \"<1>{documentTitle}\".<2/> Êtes-vous sûr ?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Vous êtes sur le point de terminer la visualisation de \"<1>{documentTitle}\".<2/> Êtes-vous sûr ?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "1 mois" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "12 mois" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "3 mois" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Profil non trouvé" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Équipe non trouvée" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "6 mois" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "7 jours" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "Un e-mail de confirmation a été envoyé et devrait arriver dans votre boîte de réception sous peu." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "Un appareil capable d'accéder, d'ouvrir et de lire des documents" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "Un document a été créé par votre modèle direct qui vous oblige à {recipientActionVerb}." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "Un document brouillon sera créé" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "Un champ a été ajouté" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "Un champ a été supprimé" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "Un champ a été mis à jour" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "Un moyen d'imprimer ou de télécharger des documents pour vos dossiers" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "Un nouveau membre a rejoint votre équipe" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "Un nouveau token a été créé avec succès." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "Un e-mail de réinitialisation de mot de passe a été envoyé, si vous avez un compte vous devriez le voir dans votre boîte de réception sous peu." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "Un destinataire a été ajouté" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "Un destinataire a été supprimé" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "Un destinataire a été mis à jour" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "Une demande pour transférer la propriété de cette équipe a été envoyée à <0>{0} ({1})" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "Une demande pour l'utiliser votre e-mail a été initiée par {0} sur Documenso" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "Un secret qui sera envoyé à votre URL afin que vous puissiez vérifier que la demande a été envoyée par Documenso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "Un secret qui sera envoyé à votre URL afin que vous puissiez vérifier que la demande a été envoyée par Documenso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "Une connexion Internet stable" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "Un membre de l'équipe a rejoint une équipe sur Documenso" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "Un membre de l'équipe a quitté {0}" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "Un membre de l'équipe a quitté une équipe sur Documenso" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "Une équipe dont vous faisiez partie a été supprimée" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "Une URL unique pour accéder à votre profil" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "Une URL unique pour identifier votre équipe" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "Un e-mail de vérification sera envoyé à l'adresse e-mail fournie." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Accepter" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Accepter l'invitation à rejoindre une équipe sur Documenso" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Accepter la demande d'e-mail de l'équipe pour {teamName} sur Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Accepter la demande de transfert d'équipe sur Documenso" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Acceptation et consentement" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Invitation d'équipe acceptée" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Authentification de compte" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Compte supprimé" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Compte désactivé" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Compte activé" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Ré-authentification de compte" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Reconnaissance" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Action" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Actions" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Actif" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Abonnements actifs" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Ajouter" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Ajouter un document" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Ajouter une URL pour rediriger l'utilisateur une fois le document signé" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Ajouter tous les champs pertinents pour chaque destinataire." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Ajouter tous les espaces réservés pertinents pour chaque destinataire." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Ajouter un authentificateur pour servir de méthode d'authentification secondaire pour signer des documents." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Ajouter un authentificateur pour servir de méthode d'authentification secondaire lors de la connexion ou lors de la signature de documents." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Ajouter un ID externe au document. Cela peut être utilisé pour identifier le document dans les systèmes externes." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Ajouter un ID externe au modèle. Cela peut être utilisé pour l'identifier dans les systèmes externes." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Ajouter une autre option" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Ajouter une autre valeur" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "Ajouter un e-mail" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Ajouter des champs" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Ajouter davantage" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "M'ajouter" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "M'ajouter" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Ajouter une clé de passe" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Ajouter un destinataire fictif" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Ajouter des espaces réservés" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Ajouter un signataire" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Ajouter des signataires" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Ajouter un e-mail d'équipe" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Ajouter du texte" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Ajouter du texte au champ" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Ajouter les personnes qui signeront le document." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Ajouter les destinataires pour créer le document avec" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Ajouter et supprimer des sièges ajustera votre facture en conséquence." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Informations supplémentaires sur la marque à afficher en bas des e-mails" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Administrateur" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Actions administratives" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Panneau d'administration" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Options avancées" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Paramètres avancés" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "Après avoir signé un document électroniquement, vous aurez l'occasion de visualiser, télécharger et imprimer le document pour vos dossiers. Il est fortement recommandé de conserver une copie de tous les documents signés électroniquement pour vos dossiers personnels. Nous conserverons également une copie du document signé pour nos dossiers, mais nous pourrions ne pas être en mesure de vous fournir une copie du document signé après une certaine période." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "Après soumission, un document sera automatiquement généré et ajouté à votre page de documents. Vous recevrez également une notification par e-mail." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "Tout" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "Tous les documents" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "Tous les documents ont été traités. Tous nouveaux documents envoyés ou reçus s'afficheront ici." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "Tous les documents relatifs au processus de signature électronique vous seront fournis électroniquement via notre plateforme ou par e-mail. Il est de votre responsabilité de vous assurer que votre adresse e-mail est à jour et que vous pouvez recevoir et ouvrir nos e-mails." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "Toutes les signatures insérées seront annulées" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "Tous les destinataires seront notifiés" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "Toutes les signatures ont été annulées." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "Tous les liens de signature ont été copiés dans votre presse-papiers." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "Tous les modèles" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "Depuis toujours" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Autoriser les destinataires du document à répondre directement à cette adresse e-mail" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Permet d'authentifier en utilisant des biométries, des gestionnaires de mots de passe, des clés matérielles, etc." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "Vous avez déjà un compte ? <0>Connectez-vous plutôt" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Montant" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "Un administrateur a supprimé votre document \"{documentName}\"." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "Une signature électronique fournie par vous sur notre plateforme, obtenue en cliquant sur un document et en saisissant votre nom, ou toute autre méthode de signature électronique que nous fournis, est juridiquement contraignante. Elle a le même poids et la même force exécutoire qu'une signature manuelle écrite à l'encre sur papier." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "Un compte e-mail" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "Un e-mail contenant une invitation sera envoyé à chaque membre." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "Un e-mail demandant le transfert de cette équipe a été envoyé." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "Une erreur est survenue" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "Une erreur est survenue lors de l'ajout des champs." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "Une erreur est survenue lors de l'ajout de signataires." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "Une erreur est survenue lors de l'ajout des champs." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "Une erreur est survenue lors de la signature automatique du document, certains champs peuvent ne pas être signés. Veuillez vérifier et signer manuellement tous les champs restants." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "Une erreur est survenue lors de la création du document à partir d'un modèle." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "Une erreur est survenue lors de la création du webhook. Veuillez réessayer." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "Une erreur s'est produite lors de la suppression de l'utilisateur." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "Une erreur est survenue lors de la désactivation de la signature par lien direct." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "Une erreur est survenue lors de la désactivation de l'utilisateur." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "Une erreur est survenue lors du téléchargement de votre document." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "Une erreur est survenue lors de la duplication du modèle." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "Une erreur est survenue lors de l'activation de la signature par lien direct." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "Une erreur est survenue lors de l'activation de l'utilisateur." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "Une erreur est survenue lors du chargement des membres de l'équipe. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "Une erreur est survenue lors du chargement du document." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "Une erreur est survenue lors du déplacement du document." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "Une erreur est survenue lors du déplacement du modèle." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "Une erreur est survenue lors de la suppression du champ." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "Une erreur est survenue lors de la suppression de la signature." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "Une erreur est survenue lors de l'envoi du document." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "Une erreur est survenue lors de l'envoi de votre e-mail de confirmation" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "Une erreur est survenue lors de la signature du document." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "" -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "Une erreur est survenue lors de la mise à jour des paramètres du document." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "Une erreur est survenue lors de la mise à jour de la signature." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "Une erreur est survenue lors de la mise à jour de votre profil." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "Une erreur est survenue lors du téléchargement de votre document." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "Une erreur inconnue est survenue" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Tous les moyens de paiement associés à cette équipe resteront associés à cette équipe. Veuillez nous contacter si vous avez besoin de mettre à jour ces informations." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Toute source" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Tout statut" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "Tokens API" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "Version de l'application" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Approuver" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Approuver le document" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Approuvé" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Approuveur" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Approuveurs" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Approval en cours" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "Êtes-vous sûr de vouloir supprimer ce token ?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Êtes-vous sûr de vouloir rejeter ce document ? Cette action ne peut pas être annulée." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "Êtes-vous sûr de vouloir supprimer la clé de passe <0>{passkeyName}." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "Êtes-vous sûr de vouloir supprimer cette équipe ?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "Êtes-vous sûr ?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "" -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Essaye de sceller le document à nouveau, utile après qu'un changement de code ait eu lieu pour résoudre un document erroné." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Journal d'audit" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Niveau d'authentification" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Authentification requise" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Avatar mis à jour" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "En attente de confirmation par e-mail" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Retour" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Retour aux documents" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Couleur d'arrière-plan" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Code de sauvegarde" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Codes de sauvegarde" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Bannière mise à jour" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Détails de base" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Avant de commencer, veuillez confirmer votre adresse e-mail en cliquant sur le bouton ci-dessous :" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Facturation" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Noir" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Bleu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Préférences de branding" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Préférences de branding mises à jour" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Navigateur" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Copie groupée" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Importation en masse" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Envoi en masse terminé : {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Envoi groupé terminé pour le modèle \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Envoi de modèle groupé via CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Envoi en masse via CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "par <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "En acceptant cette demande, vous accorderez à <0>{teamName} l'accès à :" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "En acceptant cette demande, vous assumerez la responsabilité de tous les éléments de facturation associés à cette équipe." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "En supprimant ce document, les éléments suivants se produiront :" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "En procédant à l'utilisation du service de signature électronique fourni par Documenso, vous affirmez avoir lu et compris cette divulgation. Vous acceptez tous les termes et conditions liés à l'utilisation des signatures électroniques et des transactions électroniques comme décrit ici." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "En procédant avec votre signature électronique, vous reconnaissez et consentez à ce qu'elle soit utilisée pour signer le document donné et a la même validité légale qu'une signature manuscrite. En complétant le processus de signature électronique, vous affirmez votre compréhension et votre acceptation de ces conditions." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "En utilisant la fonctionnalité de signature électronique, vous consentez à effectuer des transactions et à recevoir des divulgations électroniquement. Vous reconnaissez que votre signature électronique sur les documents est contraignante et que vous acceptez les termes énoncés dans les documents que vous signez." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Annuler" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Annulé par l'utilisateur" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "Impossible de supprimer le signataire" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "Copie Carboneurs" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Limite de caractères" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Graphiques" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Case à cocher" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Valeurs de la case à cocher" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Passer à la caisse" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Choisissez un destinataire existant ci-dessous pour continuer" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Choisissez un destinataire pour le lien direct" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Choisissez comment le document atteindra les destinataires" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Choisissez..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Revendiquer le compte" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Revendiquer le nom d'utilisateur" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Revendiquer votre nom d'utilisateur maintenant" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Effacer le fichier" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Effacer les filtres" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Effacer la signature" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Cliquez ici pour commencer" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Cliquez ici pour réessayer" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Cliquez ici pour télécharger" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Cliquez pour copier le lien de signature à envoyer au destinataire" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Cliquez pour insérer un champ" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Fermer" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Compléter" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Compléter l'approbation" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Compléter la signature" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Compléter la visualisation" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Terminé" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Document complété" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Documents complétés" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Documents Complétés" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Configurer le destinataire direct" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Configurer les paramètres généraux pour le document." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Configurer les paramètres généraux pour le modèle." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Configurer le modèle" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Configurer le champ {0}" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Confirmer" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Confirmer en tapant <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Confirmer en tapant <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Confirmer en tapant : <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Confirmer la suppression" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "Confirmer l'email" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "Email de confirmation envoyé" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Consentement aux transactions électroniques" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Coordonnées" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Contenu" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Continuer" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Continuer en approuvant le document." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "" -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Continuer en téléchargeant le document." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Continuer en signant le document." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Continuer en consultant le document." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Continuer vers la connexion" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Contrôle la langue par défaut d'un document téléchargé. Cela sera utilisé comme langue dans les communications par e-mail avec les destinataires." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Contrôle la visibilité par défaut d'un document téléchargé." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Contrôle le formatage du message qui sera envoyé lors de l'invitation d'un destinataire à signer un document. Si un message personnalisé a été fourni lors de la configuration du document, il sera utilisé à la place." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Contrôle si les destinataires peuvent signer les documents à l'aide d'une signature dactylographiée. Active ou désactive globalement la signature dactylographiée." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Contrôle si le certificat de signature sera inclus dans le document lorsqu'il sera téléchargé. Le certificat de signature peut toujours être téléchargé séparément à partir de la page d'historique'." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Copié" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "Copié dans le presse-papiers" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Copier" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Copier le lien" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Copier le lien partageable" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Copier le lien partageable" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Copier les liens de signature" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Copier le token" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Créer" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Créez un <0>compte gratuit pour accéder à vos documents signés à tout moment." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Créer un nouveau compte" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Créer une équipe pour collaborer avec vos membres." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Créer un compte" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Créer et envoyer" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Créer en tant que brouillon" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Créer comme en attente" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Créer un lien direct" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Créer un lien de signature directe" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Créer un document à partir du modèle" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Créer maintenant" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Créer un automatiquement" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Créer des liens de signature" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Créer une équipe" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Créer une équipe" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Créer le document comme en attente et prêt à signer." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Créer un token" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Créer un webhook" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Créer un Webhook" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Créez votre compte et commencez à utiliser la signature de documents à la pointe de la technologie." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Créez votre compte et commencez à utiliser la signature de documents à la pointe de la technologie. Une signature ouverte et magnifique est à votre portée." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Créé" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Créé le" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Créé par" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Créé le" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Créé le {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "Structure CSV" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Mot de passe actuel" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "Le mot de passe actuel est incorrect." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Destinataires actuels :" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Mode sombre" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Date" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Date de création" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Format de date" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Décliner" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Invitation d'équipe refusée" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Langue par défaut du document" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Visibilité par défaut du document" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "supprimer" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Supprimer" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "supprimer {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "supprimer {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Supprimer le compte" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Supprimer le compte" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Supprimer le document" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Supprimer le document" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Supprimer la clé d'accès" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Supprimer l'équipe" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Supprimer le membre de l'équipe" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Supprimez le document. Cette action est irréversible, soyez prudent." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Supprimez le compte de l'utilisateur et tout son contenu. Cette action est irréversible et annulera son abonnement, soyez prudent." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Supprimer le Webhook" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Supprimez votre compte et tout son contenu, y compris les documents complétés. Cette action est irréversible et annulera votre abonnement, soyez prudent." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Supprimé" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Suppression du compte..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Détails" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Appareil" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "Vous n'avez pas demandé de changement de mot de passe ? Nous sommes ici pour vous aider à sécuriser votre compte, il suffit de <0>nous contacter." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "lien direct" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Lien direct" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Lien direct" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "lien direct désactivé" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Receveur de lien direct" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Signature de lien direct" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "La signature de lien direct a été désactivée" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "La signature de lien direct a été activée" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "Les modèles de lien direct contiennent un espace réservé de destinataire dynamique. Quiconque ayant accès à ce lien peut signer le document, et il apparaîtra ensuite sur votre page de documents." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Modèle de lien direct supprimé" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "L'utilisation du lien de modèle direct a été dépassée ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Désactiver" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "Désactiver 2FA" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Désactiver le compte" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Désactiver le Compte" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Désactiver l'authentification à deux facteurs avant de supprimer votre compte." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Désactivé" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Désactiver la signature de lien direct empêchera quiconque d'accéder au lien." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Désactiver l'utilisateur a pour résultat que l'utilisateur ne peut pas utiliser le compte. Cela désactive également tous les contenus associés tels que l'abonnement, les webhooks, les équipes et les clés API." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Afficher votre nom et votre email dans les documents" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Distribuer le document" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "Voulez-vous supprimer ce modèle ?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "Voulez-vous dupliquer ce modèle ?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso supprimera <0>tous vos documents, ainsi que tous vos documents complétés, signatures, et toutes les autres ressources appartenant à votre compte." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Document" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Document \"{0}\" - Rejeté par {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Document \"{0}\" - Rejet Confirmé" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Accès au document" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "L'authentification d'accès au document a été mise à jour" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Document Tout" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Document Approuvé" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Document Annulé" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Document terminé" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "E-mail de document complété" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "Document Complété !" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Document créé" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Document créé par <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Document créé à partir d'un modèle direct" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Document créé en utilisant un <0>lien direct" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Création de document" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Document supprimé" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "E-mail de document supprimé" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "Document Supprimé !" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Méthode de distribution du document" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Brouillon de document" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Document dupliqué" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "ID externe du document mis à jour" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Historique du document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "ID du document" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Boîte de réception des documents" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "Limite de documents dépassée !" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Métriques du document" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Document déplacé" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Document déplacé vers l'équipe" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "Document non disponible pour signature" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Document ouvert" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Document en attente" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "E-mail de document en attente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Préférences de document mises à jour" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Document renvoyé" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Document Rejeté" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Document resealé" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Document envoyé" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Document signé" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Authentification de signature de document mise à jour" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "Le processus de signature du document sera annulé" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Statut du document" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Titre du document" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Titre du document mis à jour" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Document mis à jour" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "Téléchargement du document désactivé en raison de factures impayées" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Document téléchargé" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Document consulté" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Visibilité du document mise à jour" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "Le document sera supprimé de manière permanente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Documents" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Documents créés à partir du modèle" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Documents reçus" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Documents consultés" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "Vous n'avez pas de compte? <0>Inscrivez-vous" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Télécharger" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Télécharger les journaux d'audit" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Télécharger le certificat" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Télécharger le modèle CSV" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Brouillon" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Documents en brouillon" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Documents brouillon" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Faites glisser et déposez votre PDF ici." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Liste déroulante" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Options de liste déroulante" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "En raison d'une facture impayée, votre équipe a été restreinte. Veuillez régler le paiement pour rétablir l'accès complet à votre équipe." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Dupliquer" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Modifier" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Modifier le modèle" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Modifier le webhook" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Remise électronique de documents" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Divulgation de signature électronique" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "Email" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "Adresse email" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "Adresse e-mail" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "L'e-mail ne peut déjà exister dans le modèle" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "Email confirmé !" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "Options d'email" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "Email renvoyé" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "Email envoyé" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "Email envoyé !" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "La vérification par email a été supprimée" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "La vérification par email a été renvoyée" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Champ vide" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "Activer 2FA" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Activer le compte" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Activer le Compte" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Activer l'application Authenticator" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Activer la personnalisation de la marque pour tous les documents de cette équipe." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Activer la signature de lien direct" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Activer l'ordre de signature" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Activer la signature dactylographiée" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Activer les signatures tapées" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Activé" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Activer le compte permet à l'utilisateur de pouvoir utiliser le compte à nouveau, ainsi que toutes les fonctionnalités associées telles que les webhooks, les équipes et les clés API par exemple." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Document joint" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Se termine le" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Entrez le mot de passe" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Entrez les informations de votre marque" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Entrez votre email" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Entrez votre adresse e-mail pour recevoir le document complété." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Entrez votre nom" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Entrez votre texte ici" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Erreur" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Tout le monde peut accéder et voir le document" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Tout le monde a signé" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "Tout le monde a signé ! Vous recevrez une copie par email du document signé." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Délai dépassé" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Expiré" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Expire le {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "ID externe" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Échec du reseal du document" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Échec de l'enregistrement des paramètres." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Échec de la mise à jour du destinataire" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Échec de la mise à jour du webhook" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Échoués : {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Limite de caractères du champ" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Taille de police du champ" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Format du champ" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Étiquette du champ" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Espace réservé du champ" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Champ signé" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Champ non signé" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Champs" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "Le fichier ne peut pas dépasser {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} Mo" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "La taille du fichier dépasse la limite de {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Taille de Police" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "Pour toute question concernant cette divulgation, les signatures électroniques ou tout processus y afférent, veuillez nous contacter à : <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "Pour chaque destinataire, fournissez leur email (obligatoire) et leur nom (facultatif) dans des colonnes séparées. Téléchargez le modèle CSV ci-dessous pour le format correct." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "Mot de passe oublié ?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "Vous avez oublié votre mot de passe ?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Signature gratuite" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Nom complet" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "Général" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Générer des liens" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Authentification d'action de destinataire globale" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Retourner" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Revenir au tableau de bord" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Revenir au tableau de bord" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Aller au propriétaire" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Allez à vos <0>paramètres de profil public pour ajouter des documents." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Vert" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "t'a invité à approuver ce document" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "t'a invité à signer ce document" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "t'a invité à voir ce document" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Ici, vous pouvez modifier vos informations personnelles." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Ici, vous pouvez gérer votre mot de passe et vos paramètres de sécurité." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Ici, vous pouvez définir des préférences et des valeurs par défaut pour le branding." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Ici, vous pouvez définir des préférences et des valeurs par défaut pour votre équipe." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "Voici comment cela fonctionne :" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Salut, je suis Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Bonjour, {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Bonjour, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Cacher" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Cacher des informations supplémentaires" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "Je suis un signataire de ce document" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "Je suis un visualiseur de ce document" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "Je suis un approuveur de ce document" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "Je dois recevoir une copie de ce document" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "Je suis le propriétaire de ce document" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "Je suis sûr ! Supprimez-le" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "S'ils acceptent cette demande, l'équipe sera transférée à leur compte." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "Si vous ne souhaitez pas utiliser l'authentificateur proposé, vous pouvez le fermer, ce qui affichera l'authentificateur suivant disponible." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "Si vous ne trouvez pas le lien de confirmation dans votre boîte de réception, vous pouvez demander un nouveau ci-dessous." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "Si votre application d'authentification ne prend pas en charge les codes QR, vous pouvez utiliser le code suivant à la place :" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Boîte de réception" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Documents de la boîte de réception" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Includez le certificat de signature dans le document" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Information" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Hériter de la méthode d'authentification" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Initiales" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Inséré" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Statistiques de l'instance" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Code invalide. Veuillez réessayer." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Email invalide" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Lien invalide" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Token invalide" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Le token fourni est invalide. Veuillez réessayer." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "Invitation acceptée !" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Invitation refusée" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "L'invitation a été supprimée" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "L'invitation a été renvoyée" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Inviter" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Inviter un membre" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Inviter des membres" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Inviter des membres d'équipe" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Invité à" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Facture" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "Adresse IP" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "Il est crucial de maintenir vos coordonnées, en particulier votre adresse e-mail, à jour avec nous. Veuillez nous informer immédiatement de tout changement pour vous assurer que vous continuez à recevoir toutes les communications nécessaires." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Il semble que {0} n'ait pas encore ajouté de documents à son profil." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Il semble que le token fourni ait expiré. Nous venons de vous envoyer un autre token, veuillez vérifier votre email et réessayer." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "Il semble qu'aucun token n'ait été fourni, si vous essayez de vérifier votre email, veuillez suivre le lien dans votre email." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "Ce n'est actuellement pas votre tour de signer. Vous recevrez un e-mail avec des instructions une fois que ce sera votre tour de signer le document." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Rejoindre {teamName} sur Documenso" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Étiquette" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Langue" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "14 derniers jours" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "30 derniers jours" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "7 derniers jours" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Dernière modification" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Dernière mise à jour" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Dernière mise à jour" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Dernière mise à jour à" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Dernière utilisation" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Classement" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Quitter" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Quitter l'équipe" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Légalité des signatures électroniques" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Mode clair" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "Vous voulez avoir votre propre profil public avec des accords ?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "Le lien expire dans 1 heure." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Modèle de lien" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Liens générés" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Écoute {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Charger l'activité plus ancienne" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Chargement du document..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Chargement du Document..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Chargement des équipes..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Chargement..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Connexion" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Gérer" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Gérer le profil de {0}" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Gérer toutes les équipes avec lesquelles vous êtes actuellement associé." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Gérer et afficher le modèle" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Gérer les détails de ce modèle public" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Gérer le lien direct" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Gérer les documents" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Gérer les clés d'accès" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Gérer l'abonnement" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Gérer les abonnements" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Gérer l'abonnement de l'équipe." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Gérer les équipes" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Gérer la signature de lien direct pour ce modèle" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Gérer les membres ou inviter de nouveaux membres." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Gérer les utilisateurs" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Gérer vos clés d'accès." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Gérer les paramètres de votre site ici" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Gestionnaire" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Marquer comme vu" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (document créé)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (document terminé)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Taille maximale du fichier : 4 Mo. Maximum de 100 lignes par téléversement. Les valeurs vides utiliseront les valeurs par défaut du modèle." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Membre" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Membre depuis" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Membres" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Message <0>(Optionnel)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Modifier les destinataires" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Mensuel" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Utilisateurs actifs mensuels : utilisateurs ayant créé au moins un document" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Utilisateurs actifs mensuels : utilisateurs ayant terminé au moins un de leurs documents" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Déplacer" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Déplacer le document vers l'équipe" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Déplacer le modèle vers l'équipe" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "Déplacer vers l'équipe" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Déplacement..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "Mes modèles" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Nom" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "Besoin de signer des documents ?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Nécessite une approbation" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Nécessite une signature" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Nécessite une visualisation" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Jamais" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Ne jamais expirer" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "Nouveau propriétaire d'équipe" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "Nouveau modèle" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Suivant" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Champ suivant" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "Pas de brouillons actifs" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "Aucune autre action n'est requise de votre part pour le moment." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "Aucun paiement requis" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "Aucun modèle de profil public trouvé" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "Aucune activité récente" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "Aucun document récent" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "Aucun destinataire correspondant à cette description n'a été trouvé." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "Aucun destinataire" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "Aucun destinataire avec ce rôle" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "Aucune restriction" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "Aucun résultat trouvé" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "Aucun résultat trouvé." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "Aucun champ de signature trouvé" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "Aucun modèle direct valide trouvé" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "Aucun destinataire valide trouvé" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "Aucune valeur trouvée." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "Pas de soucis, ça arrive ! Entrez votre email et nous vous enverrons un lien spécial pour réinitialiser votre mot de passe." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "Aucun" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "Non pris en charge" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Rien à faire" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Numéro" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Format de numéro" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "au nom de \"{0}\" vous a invité à approuver ce document" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "au nom de \"{0}\" vous a invité à signer ce document" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "au nom de \"{0}\" vous a invité à voir ce document" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "Sur cette page, vous pouvez créer un nouveau webhook." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "Sur cette page, vous pouvez créer de nouveaux webhooks et gérer ceux existants." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "Sur cette page, vous pouvez modifier le webhook et ses paramètres." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Une fois confirmé, les éléments suivants se produiront :" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Une fois activé, vous pouvez sélectionner n'importe quel destinataire actif pour être un destinataire de signature de lien direct ou en créer un nouveau. Ce type de destinataire ne peut pas être modifié ou supprimé." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Une fois que vous avez scanné le code QR ou saisi le code manuellement, entrez le code fourni par votre application d'authentification ci-dessous." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Une fois votre modèle configuré, partagez le lien où vous le souhaitez. La personne qui ouvre le lien pourra saisir ses informations dans le champ de destinataire de lien direct et remplir tout autre champ qui lui est attribué." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Seules les administrateurs peuvent accéder et voir le document" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Seuls les responsables et au-dessus peuvent accéder et voir le document" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Seuls les abonnés peuvent avoir un nom d'utilisateur de moins de 6 caractères" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "Oups ! Quelque chose a mal tourné." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Ouvert" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "Ou" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "Ou continuez avec" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "Sinon, le document sera créé sous forme de brouillon." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Propriétaire" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Page {0} sur {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Page {0} sur {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Payé" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Clé d'accès" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "La clé d'accès existe déjà pour l'authentificateur fourni" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "La création de la clé d'accès a été annulée pour l'une des raisons suivantes :" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "La clé d'accès a été supprimée" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "La clé d'accès a été mise à jour" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Nom de la clé d'accès" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Ré-authentification par clé d'accès" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Clés d'accès" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Les clés d'accès vous permettent de vous connecter et de vous authentifier en utilisant des biométries, des gestionnaires de mots de passe, etc." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Les clés d'accès ne sont pas prises en charge sur ce navigateur" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "Mot de passe" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Mot de passe requis" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Réinitialisation du mot de passe demandée" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Réinitialisation du mot de passe réussie" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "Le mot de passe ne doit pas être commun ou basé sur des informations personnelles" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Mot de passe mis à jour" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "Mot de passe mis à jour !" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Payer" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "Un paiement est requis pour finaliser la création de votre équipe." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Paiement en retard" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "En attente" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Document En Attente" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Documents en attente" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Documents en attente" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Invitations en attente" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Équipe en attente supprimée." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Personnel" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Compte personnel" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Choisissez un numéro" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Choisir un mot de passe" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Choisissez l'un des accords suivants ci-dessous et commencez à signer pour commencer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Espace réservé" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Veuillez {0} votre document<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Veuillez {action} votre document {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Veuillez {recipientActionVerb} ce document" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Veuillez {recipientActionVerb} ce document créé par votre modèle direct" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Veuillez {recipientActionVerb} votre document" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Veuillez vérifier le fichier CSV et vous assurer qu'il est conforme à notre format" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Veuillez vérifier votre e-mail pour des mises à jour." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Veuillez choisir votre nouveau mot de passe" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Veuillez confirmer votre email" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Veuillez confirmer votre adresse email" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Veuillez contacter le support si vous souhaitez annuler cette action." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Veuillez entrer un nom significatif pour votre token. Cela vous aidera à l'identifier plus tard." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Veuiillez entrer un nom valide." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Veuillez marquer comme vu pour terminer" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Veuillez noter que la poursuite supprimera le destinataire de lien direct et le transformera en espace réservé." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Veuillez noter que cette action est <0>irréversible." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Veuillez noter que cette action est <0>irréversible. Une fois confirmée, ce document sera définitivement supprimé." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Veuillez noter que cette action est irréversible. Une fois confirmée, votre modèle sera définitivement supprimé." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Veuillez noter que cette action est irréversible. Une fois confirmée, votre token sera définitivement supprimé." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Veuillez noter que cette action est irréversible. Une fois confirmée, votre webhook sera définitivement supprimé." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Veuillez noter que vous perdrez l'accès à tous les documents associés à cette équipe et que tous les membres seront supprimés et notifiés" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Veuillez fournir une raison" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Veuillez fournir un token de l'authentificateur, ou un code de secours. Si vous n'avez pas de code de secours disponible, veuillez contacter le support." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Veuillez fournir un token de votre authentificateur, ou un code de secours." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Veuillez examiner le document avant de signer." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Veuillez sélectionner un fichier PDF" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Veuillez réessayer et assurez-vous d'entrer la bonne adresse email." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Veuillez réessayer ou contacter notre support." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Veuiillez taper {0} pour confirmer" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Veuillez taper <0>{0} pour confirmer." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Modèle CSV pré-formaté avec des données d'exemple." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Préférences" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Aperçu" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Aperçu et configurer le modèle." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Privé" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "Les modèles privés ne peuvent être modifiés et consultés que par vous." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "Le profil est actuellement <0>caché." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "Le profil est actuellement <0>visible." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Profil mis à jour" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Public" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Profil public" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "URL du profil public" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Nom d'utilisateur du profil public" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "Les modèles publics sont connectés à votre profil public. Toute modification apportée aux modèles publics apparaîtra également dans votre profil public." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Valeurs radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Lecture seule" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Champ en lecture seule" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Lisez l'intégralité de la <0>divulgation de signature." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Prêt" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Raison" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "" -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Raison du rejet : {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "La raison doit contenir moins de 500 caractères" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "Une nouvelle authentification est requise pour signer ce champ" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Recevoir une copie" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Activité récente" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Documents récents" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Destinataire" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Authentification d'action de destinataire" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "E-mail de destinataire supprimé" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "E-mail signé par le destinataire" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "E-mail de demande de signature de destinataire" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Destinataire mis à jour" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Destinataires" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Métriques des destinataires" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "Les destinataires conservent toujours leur copie du document" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Code de récupération copié" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Codes de récupération" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Rouge" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "URL de redirection" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Inscription réussie" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Rejeter le Document" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Rejeté" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Rejet Confirmé" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Motif du rejet : {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "Vous vous souvenez de votre mot de passe ? <0>Connectez-vous" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Rappel : {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Rappel : {0} vous a invité à {recipientActionVerb} un document" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Rappel : Veuillez {recipientActionVerb} ce document" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Rappel : Veuillez {recipientActionVerb} votre document" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Retirer" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Supprimer l'adresse e-mail de l'équipe" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Supprimer le membre de l'équipe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Renouvelle : {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Répéter le mot de passe" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Demander le transfert" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Champ requis" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Rescellage du document" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Renvoyer" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Renvoyer l'e-mail de confirmation" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Renvoyer la vérification" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Réinitialiser" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "E-mail de réinitialisation envoyé" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Réinitialiser le mot de passe" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Réinitialisation du mot de passe..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Résoudre" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Résoudre le paiement" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Soyez assuré, votre document eststrictement confidentiel et ne sera jamais partagé. Seule votre expérience de signature sera mise en avant. Partagez votre carte de signature personnalisée pour mettre en valeur votre signature !" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Conservation des documents" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Réessayer" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Retour" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Retour au tableau de bord" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Retour à l'accueil" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Retour à la connexion" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Révoquer" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Révoquer l'accès" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Rôle" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Rôles" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Lignes par page" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Sauvegarder" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Sauvegarder le modèle" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Recherche" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Recherche par titre de document" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Recherche par nom ou e-mail" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Rechercher des documents..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Rechercher des langues..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Secret" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Sécurité" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Activité de sécurité" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Sélectionner" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Sélectionner une équipe" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Sélectionnez une équipe pour déplacer ce document. Cette action ne peut pas être annulée." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Sélectionnez une équipe pour déplacer ce modèle. Cette action ne peut pas être annulée." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Sélectionnez un modèle que vous souhaitez afficher sur votre profil public" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Sélectionnez un modèle que vous souhaitez afficher sur le profil public de votre équipe" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Sélectionner une option" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Sélectionnez au moins" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Sélectionner l'option par défaut" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Sélectionner la clé d'authentification" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Envoyer" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Envoyer l'e-mail de confirmation" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Envoyer le document" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Envoyer le document" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "Envoyer l'e-mail de document complété" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "Envoyer l'e-mail de document complété au propriétaire" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "Envoyer l'e-mail de document supprimé" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "Envoyer l'e-mail de document en attente" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Envoyer des documents au nom de l'équipe en utilisant l'adresse e-mail" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Envoyer les documents aux destinataires immédiatement" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Envoyer au nom de l'équipe" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "Envoyer l'e-mail de destinataire supprimé" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "Envoyer l'e-mail signé par le destinataire" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "Envoyer l'e-mail de demande de signature de destinataire" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Envoyer un rappel" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Expéditeur" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Envoi de l'e-mail de réinitialisation..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Envoi..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Envoyé" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Définir un mot de passe" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Paramètres" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Configuration" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Partager" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Partager la carte de signature" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Partager la carte de signature" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Partager le lien" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "Partagez votre expérience de signature !" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Afficher" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Afficher des informations supplémentaires" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Afficher les paramètres avancés" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Afficher des modèles dans votre profil public pour que votre audience puisse signer et commencer rapidement" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Afficher des modèles dans le profil public de votre équipe pour que votre audience puisse signer et commencer rapidement" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Signer" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Signer comme {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Signer comme<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Signer le document" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Signer le document" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Champ de signature" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Signer ici" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Se connecter" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Connectez-vous à votre compte" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Déconnexion" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Signez le document pour terminer le processus." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "S'inscrire" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "S'inscrire avec Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "S'inscrire avec OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "ID de signature" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "La signature est trop petite. Veuillez fournir une signature plus grande." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Signatures collectées" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Les signatures apparaîtront une fois le document complété" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Signé" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Signataire" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Événements de signataire" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Signataires" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "Les signataires doivent avoir des e-mails uniques" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Signature en cours" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Certificat de signature" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Certificat de signature fourni par" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "Signature Complète !" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Connexion en cours..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Liens de signature" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "Des liens de signature ont été générés pour ce document." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Volume de signatures" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Les inscriptions sont désactivées." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Depuis {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Bannière du site" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Paramètres du site" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Certains signataires n'ont pas été assignés à un champ de signature. Veuillez assigner au moins 1 champ de signature à chaque signataire avant de continuer." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Quelque chose a mal tourné" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Quelque chose a mal tourné lors de la tentative de transfert de la propriété de l'équipe <0>{0} à vous. Veuillez réessayer plus tard ou contacter le support." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Quelque chose a mal tourné lors de la tentative de vérification de votre adresse e-mail pour <0>{0}. Veuillez réessayer plus tard." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Une erreur s'est produite lors du chargement du document." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Quelque chose a mal tourné lors du chargement de vos clés d'authentification." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Quelque chose a mal tourné lors de l'envoi de l'e-mail de confirmation." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Quelque chose a mal tourné lors de la mise à jour de l'abonnement de l'équipe, veuillez contacter le support." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "Quelque chose a mal tourné !" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Quelque chose a mal tourné." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Quelque chose a mal tourné. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Quelque chose a mal tourné. Veuillez réessayer ou contacter le support." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Désolé, nous n'avons pas pu télécharger les journaux d'audit. Veuillez réessayer plus tard." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Désolé, nous n'avons pas pu télécharger le certificat. Veuillez réessayer plus tard." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Source" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Statistiques" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Statut" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Étape <0>{step} sur {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Objet <0>(Optionnel)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Soumettre" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "" -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Abonnement" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Abonnements" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Succès" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Clé d'authentification créée avec succès" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Créés avec succès : {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Résumé :" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "Exigences du système" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "Thème système" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Équipe" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "L'équipe \"{0}\" a été supprimée sur Documenso" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Vérification de l'équipe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "Adresse e-mail de l'équipe" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "E-mail d'équipe" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "E-mail d'équipe déjà vérifié !" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "L'adresse e-mail de l'équipe a été supprimée" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "L'email d'équipe a été révoqué pour {0}" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Email d'équipe supprimé" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Email d'équipe supprimé pour {teamName} sur Documenso" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Vérification de l'e-mail de l'équipe" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "E-mail de l'équipe vérifié !" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "L'e-mail de l'équipe a été mis à jour." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Invitation d'équipe" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Les invitations d'équipe ont été envoyées." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Membre de l'équipe" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Nom de l'équipe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Équipe uniquement" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "Les modèles uniquement pour l'équipe ne sont liés nulle part et ne sont visibles que pour votre équipe." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Transfert de propriété d'équipe" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "Le transfert de propriété de l'équipe a déjà été effectué !" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "Propriété de l'équipe transférée !" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Préférences de l'équipe" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Profil public de l'équipe" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Paramètres de l'équipe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Paramètres de l'équipe" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Modèles d'équipe" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Transfert d'équipe en cours" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Demande de transfert d'équipe expirée" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "URL de l'équipe" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Équipes" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Équipes restreintes" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Modèle" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Modèle supprimé" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Document modèle téléchargé" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Modèle dupliqué" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "Le modèle a été retiré de votre profil public." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "Le modèle a été mis à jour." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Modèle déplacé" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Modèle introuvable ou déjà associé à une équipe." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Modèle enregistré" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Titre du modèle" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Modèles" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "Les modèles vous permettent de générer rapidement des documents avec des destinataires et des champs pré-remplis." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Texte" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Alignement du texte" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Couleur du texte" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Merci d'utiliser Documenso pour signer vos documents électroniquement. L'objectif de cette divulgation est de vous informer sur le processus, la légalité et vos droits concernant l'utilisation des signatures électroniques sur notre plateforme. En choisissant d'utiliser une signature électronique, vous acceptez les termes et conditions énoncés ci-dessous." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "C'est d'accord, cela arrive ! Cliquez sur le bouton ci-dessous pour réinitialiser votre mot de passe." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "Le compte a été supprimé avec succès." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "Le compte a été désactivé avec succès." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "Le compte a été activé avec succès." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "L'authentification requise pour que les destinataires signent des champs" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "L'authentification requise pour que les destinataires signent le champ de signature." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "L'authentification requise pour que les destinataires visualisent le document." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "Le contenu à afficher dans la bannière, le HTML est autorisé" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "Le lien direct a été copié dans votre presse-papiers" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "Le document a été déplacé avec succès vers l'équipe sélectionnée." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "Le document est maintenant complet, veuillez suivre toutes les instructions fournies dans l'application parente." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "Le propriétaire du document a été informé de ce rejet. Aucune action supplémentaire n'est requise de votre part pour le moment. Le propriétaire du document peut vous contacter pour toute question concernant ce rejet." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "Le propriétaire du document a été informé de votre décision. Il peut vous contacter pour des instructions supplémentaires si nécessaire." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "Le document a été créé mais n'a pas pu être envoyé aux destinataires." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "Le document sera caché de votre compte" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "Le document sera immédiatement envoyé aux destinataires si cela est coché." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "Le nom du document" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "Les événements qui déclencheront un webhook à envoyer à votre URL." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "Les erreurs suivantes se sont produites :" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "L'équipe suivante a été supprimée par son propriétaire. Vous ne pourrez plus accéder à cette équipe et à ses documents" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "L'équipe suivante a été supprimée par vous" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "La propriété de l'équipe <0>{0} a été transférée avec succès à vous." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "La page que vous recherchez a été déplacée, supprimée, renommée ou n'a peut-être jamais existé." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "Le mot de passe que vous avez entré est incorrect. Veuillez réessayer." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "Le lien de profil a été copié dans votre presse-papiers" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "Le profil que vous recherchez n'a pas pu être trouvé." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "La description publique qui sera affichée avec ce modèle" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "Le nom public pour votre modèle" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "La raison fournie pour la suppression est la suivante :" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "Le destinataire a été mis à jour avec succès" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "Le destinataire n'est pas tenu de prendre des mesures et reçoit une copie du document après son achèvement." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "Le destinataire doit approuver le document pour qu'il soit complété." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "Le destinataire doit signer le document pour qu'il soit complété." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "Le destinataire doit visualiser le document pour qu'il soit complété." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Le membre d'équipe sélectionné recevra un e-mail qu'il devra accepter avant que l'équipe soit transférée" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "Le lien de partage n'a pas pu être créé pour le moment. Veuillez réessayer." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "Le lien de partage a été copié dans votre presse-papiers." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "L'email du signataire" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "Le nom du signataire" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "Le lien de signature a été copié dans votre presse-papiers." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "La bannière du site est un message affiché en haut du site. Elle peut être utilisée pour afficher des informations importantes à vos utilisateurs." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "L'email d'équipe <0>{teamEmail} a été supprimé de l'équipe suivante" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "L'invitation au transfert d'équipe a été supprimée avec succès." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "La demande de transfert d'équipe à <0>{0} a expiré." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." msgstr "" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "Le modèle a été déplacé avec succès vers l'équipe sélectionnée." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "Le modèle sera retiré de votre profil" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "Le token a été copié dans votre presse-papiers." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "Le token a été supprimé avec succès." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "Le token que vous avez utilisé pour réinitialiser votre mot de passe a expiré ou n'a jamais existé. Si vous avez toujours oublié votre mot de passe, veuillez demander un nouveau lien de réinitialisation." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "L'URL pour Documenso pour envoyer des événements webhook." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "Le webhook a été supprimé avec succès." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "Le webhook a été mis à jour avec succès." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "Le webhook a été créé avec succès." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "Il n'y a pas de brouillons actifs pour le moment. Vous pouvez télécharger un document pour commencer à rédiger." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "Il n'y a pas encore de documents complétés. Les documents que vous avez créés ou reçus apparaîtront ici une fois complétés." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "Ils ont la permission en votre nom de:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "" -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "Cette action n'est pas réversible. Veuillez être sûr." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "Cette action est réversible, mais veuillez faire attention car le compte peut être affecté de façon permanente (par exemple, leurs paramètres et contenus ne pourraient pas être restaurés correctement)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "Cela peut être remplacé par le paramétrage direct des exigences d'authentification pour chaque destinataire à l'étape suivante." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "Ce document ne peut pas être récupéré, si vous souhaitez contester la raison des documents futurs, veuillez contacter le support." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "Ce document n'a pas pu être supprimé pour le moment. Veuillez réessayer." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "Ce document n'a pas pu être dupliqué pour le moment. Veuillez réessayer." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "Ce document n'a pas pu être renvoyé pour le moment. Veuillez réessayer." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "Ce document a déjà été envoyé à ce destinataire. Vous ne pouvez plus modifier ce destinataire." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "Ce document a été annulé par le propriétaire et n'est plus disponible pour d'autres à signer." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "Ce document a été annulé par le propriétaire." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "Ce document a été signé par tous les destinataires" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "Ce document est actuellement un brouillon et n'a pas été envoyé" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "Ce document est protégé par mot de passe. Veuillez entrer le mot de passe pour visualiser le document." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "Ce document a été créé par vous ou un membre de l'équipe en utilisant le modèle ci-dessus." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "Ce document a été créé en utilisant un lien direct." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "Ce document a été envoyé via <0>Documenso." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "Cet e-mail confirme que vous avez rejeté le document <0>\"{documentName}\" envoyé par {documentOwnerName}." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "Cet e-mail est déjà utilisé par une autre équipe." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "Cet e-mail est envoyé au propriétaire du document lorsqu'un destinataire a signé le document." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "Cet e-mail est envoyé au destinataire s'il est retiré d'un document en attente." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "Cet e-mail est envoyé au destinataire lui demandant de signer le document." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "Cet e-mail sera envoyé au destinataire qui vient de signer le document, s'il y a encore d'autres destinataires qui n'ont pas signé." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "Ce champ ne peut pas être modifié ou supprimé. Lorsque vous partagez le lien direct de ce modèle ou l'ajoutez à votre profil public, toute personne qui y accède peut saisir son nom et son email, et remplir les champs qui lui sont attribués." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "Voici comment le document atteindra les destinataires une fois qu'il sera prêt à être signé." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "Ce lien est invalide ou a expiré. Veuillez contacter votre équipe pour renvoyer une demande de transfert." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "Ce lien est invalide ou a expiré. Veuillez contacter votre équipe pour renvoyer une vérification." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "Cette clé d'accès a déjà été enregistrée." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "Cette clé d'accès n'est pas configurée pour cette application. Veuillez vous connecter et en ajouter une dans les paramètres de l'utilisateur." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "Ce prix inclut un minimum de 5 sièges." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "Ce destinataire ne peut plus être modifié car il a signé un champ ou complété le document." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "Cette session a expiré. Veuillez réessayer." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "Ce signataire a déjà signé le document." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "Cette équipe, et toutes les données associées à l'exception des factures de facturation, seront définitivement supprimées." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "Ce modèle n'a pas pu être supprimé pour le moment. Veuillez réessayer." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "Ce token est invalide ou a expiré. Aucune action n'est nécessaire." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "Ce token est invalide ou a expiré. Veuillez contacter votre équipe pour une nouvelle invitation." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "Cette URL est déjà utilisée." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "Ce nom d'utilisateur a déjà été pris" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Cela sera envoyé à tous les destinataires si un document en attente a été supprimé." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "Cela sera envoyé à tous les destinataires une fois que le document aura été entièrement complété." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "Cela sera envoyé au propriétaire du document une fois que le document aura été entièrement complété." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "Cela remplacera tous les paramètres globaux." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Temps" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Fuseau horaire" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Fuseau horaire" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Titre" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "Pour accepter cette invitation, vous devez créer un compte." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "Pour changer l'e-mail, vous devez supprimer et ajouter une nouvelle adresse e-mail." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "Pour confirmer, veuillez entrer l'adresse e-mail du compte <0/>({0})." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "Pour confirmer, veuillez entrer la raison" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "Pour décliner cette invitation, vous devez créer un compte." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "Pour activer l'authentification à deux facteurs, scannez le code QR suivant à l'aide de votre application d'authentification." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "Pour accéder à votre compte, veuillez confirmer votre adresse e-mail en cliquant sur le lien de confirmation dans votre boîte de réception." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "Pour marquer ce document comme consulté, vous devez être connecté en tant que <0>{0}" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "Pour continuer, veuillez définir au moins une valeur pour le champ {0}." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "Pour utiliser notre service de signature électronique, vous devez avoir accès à :" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Pour afficher ce document, vous devez être connecté à votre compte, veuillez vous connecter pour continuer." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Basculer l'interrupteur pour cacher votre profil du public." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Basculer l'interrupteur pour afficher votre profil au public." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Jeton" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token copié dans le presse-papiers" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token créé" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token supprimé" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "Le token n'a pas de date d'expiration" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Date d'expiration du token" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "Le token a expiré. Veuillez réessayer." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Nom du token" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Total des documents" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Total des destinataires" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Lignes totales traitées : {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Total des signataires qui se sont inscrits" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Total des utilisateurs" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "transférer {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Transférer la propriété de cette équipe à un membre d'équipe sélectionné." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Transférer l'équipe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Transférer la propriété de l'équipe à un autre membre de l'équipe." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Déclencheurs" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Authentification à deux facteurs" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "Les codes de récupération de l'authentification à deux facteurs sont utilisés pour accéder à votre compte dans le cas où vous perdez l'accès à votre application d'authentification." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Authentification à deux facteurs" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Authentification à deux facteurs désactivée" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Authentification à deux facteurs activée" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "L'authentification à deux facteurs a été désactivée pour votre compte. Vous ne serez plus tenu d'entrer un code de votre application d'authentification lors de la connexion." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Ré-authentification à deux facteurs" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Type" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Tapez une commande ou recherchez..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "Les signatures dactylographiées ne sont pas autorisées. Veuillez dessiner votre signature." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "Oh oh ! On dirait qu'il vous manque un token" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "Impossible de changer la langue pour le moment. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "Impossible de copier le code de récupération" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "Impossible de copier le token" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "Impossible de créer un accès direct au modèle. Veuillez réessayer plus tard." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "Impossible de refuser cette invitation d'équipe pour le moment." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "Impossible de supprimer l'invitation. Veuillez réessayer." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "Impossible de supprimer l'équipe" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "Impossible de désactiver l'authentification à deux facteurs" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "Impossible de rejoindre cette équipe pour le moment." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "Impossible de charger l'historique des documents" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "Impossible de charger les documents" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "Impossible de charger vos modèles de profil public pour le moment" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "Impossible de retirer la vérification par e-mail pour le moment. Veuillez réessayer." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "Impossible de retirer l'e-mail de l'équipe pour le moment. Veuillez réessayer." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "Impossible de renvoyer l'invitation. Veuillez réessayer." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "Impossible de renvoyer la vérification pour le moment. Veuillez réessayer." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "Impossible de réinitialiser le mot de passe" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "Impossible de configurer l'authentification à deux facteurs" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "Impossible de se connecter" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "Non autorisé" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Non complet" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Inconnu" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "Non payé" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Mettre à jour" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Mettre à jour la bannière" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Mettre à jour la clé d'accès" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Mettre à jour le mot de passe" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Mettre à jour le profil" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Mettre à jour le destinataire" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Mettre à jour le rôle" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Mettre à jour l'équipe" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Mettre à jour l'e-mail de l'équipe" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Mettre à jour le membre de l'équipe" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Mettez à jour le rôle et ajoutez des champs selon les besoins pour le destinataire direct. L'individu qui utilise le lien direct signera le document en tant que destinataire direct." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Mettre à jour l'utilisateur" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Mettre à jour le webhook" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Mise à jour du mot de passe..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Mise à jour du profil..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Mise à jour de vos informations" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Améliorer" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Téléchargez un fichier CSV pour créer plusieurs documents à partir de ce modèle. Chaque ligne représente un document avec ses détails de destinataire." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Téléchargez un document personnalisé à utiliser à la place du document par défaut du modèle" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Télécharger et traiter" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Télécharger un avatar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "Télécharger le CSV" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Télécharger un document personnalisé" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Importer une signature" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Télécharger le document modèle" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Téléchargez votre logo de marque (max 5 Mo, JPG, PNG ou WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Téléversé par" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "Le fichier téléchargé est trop volumineux" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "Le fichier téléchargé est trop petit" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "Le fichier téléchargé n'est pas un type de fichier autorisé" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Utiliser" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Utiliser l'authentificateur" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Utiliser le code de secours" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Utiliser le modèle" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "Utilisateur" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "L'utilisateur n'a pas de mot de passe." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "ID utilisateur" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "Utilisateur non trouvé." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "Les profils des utilisateurs sont ici !" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "Paramètres de l'utilisateur" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "Un utilisateur avec cet e-mail existe déjà. Veuillez utiliser une adresse e-mail différente." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "Le nom d'utilisateur ne peut contenir que des caractères alphanumériques et des tirets." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Utilisateurs" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Validation" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Valeur" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Email de vérification envoyé" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Email de vérification envoyé avec succès." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Vérifier maintenant" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Vérifiez votre adresse e-mail" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Vérifiez votre adresse e-mail pour débloquer toutes les fonctionnalités." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Vérifiez votre e-mail pour télécharger des documents." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Vérifiez votre adresse e-mail d'équipe" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Historique des versions" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "Voir" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "Voir l'activité" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "Voir tous les documents envoyés à et depuis cette adresse e-mail" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "Voir tous les documents envoyés à votre compte" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "Voir toute l'activité de sécurité récente liée à votre compte." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "Voir tous les documents associés" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "Voir toute l'activité de sécurité liée à votre compte." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "Voir les codes" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "Voir le document" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "Voir le document" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "Voir les documents associés à cet e-mail" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "Voir les invitations" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "Voir plus" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "Voir le document original" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "Voir les forfaits" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "Voir les codes de récupération" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "Voir les équipes" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Vu" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Visiteur" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Spectateurs" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Consultation" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "En attente" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "En attente des autres" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "En attente que d'autres terminent la signature." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "En attente que d'autres signent" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "En attente de votre tour" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "Vous voulez envoyer des liens de signature élégants comme celui-ci ? <0>Découvrez Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "Vous voulez votre propre profil public ?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "Nous ne pouvons pas accéder au portail de facturation pour le moment. Veuillez réessayer ou contacter le support." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "Nous ne pouvons pas supprimer cette clé de passkey pour le moment. Veuillez réessayer plus tard." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "Nous ne pouvons pas mettre à jour cette clé de passkey pour le moment. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "Une erreur s'est produite lors de la suppression du lien direct vers le modèle. Veuillez réessayer plus tard." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "Une erreur s'est produite lors de la mise à jour du webhook. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "Une erreur inconnue s'est produite lors de l'ajout de cet e-mail. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la création d'une équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression. Veuillez réessayer plus tard." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de l'équipe en attente. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de cette équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de ce token. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de votre compte. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "Une erreur inconnue s'est produite lors de l'invitation de membres de l'équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de votre départ de cette équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de ce modèle de votre profil. Veuillez réessayer plus tard." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "Une erreur inconnue s'est produite lors de la suppression de ce transfert. Veuillez réessayer ou contacter le support." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la suppression de cet utilisateur. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la demande de transfert de cette équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la réinitialisation de votre mot de passe. Veuillez réessayer plus tard." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Une erreur inconnue s'est produite lors de la révocation de l'accès. Veuillez réessayer ou contacter le support." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la connexion. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "Une erreur inconnue s'est produite lors de l'inscription. Veuillez réessayer plus tard." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de la bannière. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour du modèle. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de ce membre de l'équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de votre mot de passe. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de votre profil public. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de votre équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Une erreur inconnue s'est produite lors de la mise à jour de l'e-mail de l'équipe. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Nous avons rencontré une erreur inconnue lors de la tentative de mise à jour de votre profil. Veuillez réessayer plus tard." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "Nous avons envoyé un e-mail de confirmation pour vérification." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "Nous avons besoin d'un nom d'utilisateur pour créer votre profil" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "Nous avons besoin de votre signature pour signer des documents" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "Nous n'avons pas pu copier le token dans votre presse-papiers. Veuillez réessayer." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "Nous n'avons pas pu copier votre code de récupération dans votre presse-papiers. Veuillez réessayer." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "Nous n'avons pas pu créer de session de paiement. Veuillez réessayer ou contacter le support" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "Nous n'avons pas pu créer votre compte. Veuillez vérifier les informations que vous avez fournies et réessayer." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "Nous n'avons pas pu désactiver l'authentification à deux facteurs pour votre compte. Veuillez vous assurer que vous avez correctement entré votre mot de passe et votre code de secours, puis réessayez." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "Nous n'avons pas pu vous déconnecter pour le moment." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "Nous n'avons pas pu définir votre profil public comme public. Veuillez réessayer." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "Nous n'avons pas pu configurer l'authentification à deux facteurs pour votre compte. Veuillez vous assurer que vous avez correctement entré votre code et réessayez." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "Nous n'avons pas pu soumettre ce document pour le moment. Veuillez réessayer plus tard." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "Nous n'avons pas pu mettre à jour vos préférences de branding pour le moment, veuillez réessayer plus tard" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "Nous n'avons pas pu mettre à jour vos préférences de document pour le moment, veuillez réessayer plus tard" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "Nous n'avons pas pu vérifier vos détails. Veuillez réessayer ou contacter le support" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Nous n'avons pas pu vérifier votre e-mail. Si votre e-mail n'est pas déjà vérifié, veuillez réessayer." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "Nous générerons des liens de signature pour vous, que vous pourrez envoyer aux destinataires par votre méthode de choix." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "Nous allons générer des liens de signature pour vous, que vous pouvez envoyer aux destinataires par votre méthode de choix." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "Nous n'enverrons rien pour notifier les destinataires." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "Nous sommes tous vides" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "Nous attendons encore que d'autres signataires signent ce document.<0/>Nous vous préviendrons dès qu'il sera prêt." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "Nous avons changé votre mot de passe comme demandé. Vous pouvez maintenant vous connecter avec votre nouveau mot de passe." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "Nous avons envoyé un e-mail de confirmation à <0>{email}. Veuillez vérifier votre boîte de réception et cliquer sur le lien de l'e-mail pour vérifier votre compte." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook créé" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook supprimé" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook mis à jour" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "URL du webhook" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhooks" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Bienvenue" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Contentieux, nous avons de la chance de vous avoir." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "Bienvenue sur Documenso !" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "Essayiez-vous d'éditer ce document à la place ?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "Lorsque vous cliquez sur continuer, vous serez invité à ajouter le premier authentificateur disponible sur votre système." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "Lorsque vous signez un document, nous pouvons automatiquement remplir et signer les champs suivants à l'aide des informations déjà fournies. Vous pouvez également signer manuellement ou supprimer les champs signés automatiquement par la suite si vous le souhaitez." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Lorsque vous utilisez notre plateforme pour apposer votre signature électronique sur des documents, vous consentez à le faire conformément à la loi sur les signatures électroniques dans le commerce mondial et national (E-Sign Act) et aux autres lois applicables. Cette action indique votre accord à utiliser des moyens électroniques pour signer des documents et recevoir des notifications." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "En attendant qu'ils le fassent, vous pouvez créer votre propre compte Documenso et commencer à signer des documents dès maintenant." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "Qui voulez-vous rappeler ?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Retrait du consentement" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Écrivez sur l'équipe" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Écrivez sur vous-même" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Annuel" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "Vous" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "Vous êtes sur le point de supprimer <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "Vous êtes sur le point de supprimer l'e-mail d'équipe suivant de <0>{teamName}." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "Vous êtes sur le point de cacher <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "Vous êtes sur le point de quitter l'équipe suivante." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "Vous êtes sur le point de supprimer l'utilisateur suivant de <0>{teamName}." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "Vous êtes sur le point de révoquer l'accès de l'équipe <0>{0} ({1}) à votre e-mail." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "Vous êtes sur le point d'envoyer ce document aux destinataires. Êtes-vous sûr de vouloir continuer ?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "Vous mettez à jour actuellement <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "Vous mettez à jour actuellement la clé de passkey <0>{passkeyName}." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "Vous n'êtes pas membre de cette équipe." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "Vous n'êtes pas autorisé à supprimer cet utilisateur." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "Vous n'êtes pas autorisé à désactiver cet utilisateur." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "Vous n'êtes pas autorisé à activer cet utilisateur." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "Vous pouvez également copier et coller ce lien dans votre navigateur : {confirmationLink} (le lien expire dans 1 heure)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "Vous pouvez choisir d'activer ou de désactiver votre profil pour la vue publique." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "Vous pouvez choisir d'activer ou de désactiver le profil de votre équipe pour la vue publique." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "Vous pouvez copier et partager ces liens avec les destinataires afin qu'ils puissent agir sur le document." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "Vous pouvez révoquer l'accès à tout moment dans les paramètres de votre équipe sur Documenso <0>ici." -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "Vous pouvez mettre à jour l'URL de profil en mettant à jour l'URL de l'équipe dans la page des paramètres généraux." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "Vous pouvez utiliser les variables suivantes dans votre message :" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "Vous pouvez voir les documents associés à cet e-mail et utiliser cette identité lors de l'envoi de documents." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "Vous pouvez voir les documents créés dans votre tableau de bord sous la section \"Documents créés à partir du modèle\"." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "Vous pouvez voir le document et son statut en cliquant sur le bouton ci-dessous." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "Vous ne pouvez pas avoir plus de {MAXIMUM_PASSKEYS} clés de passkey." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "Vous ne pouvez pas modifier un membre de l'équipe qui a un rôle plus élevé que vous." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "Vous ne pouvez pas télécharger de documents pour le moment." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "Vous ne pouvez pas télécharger de PDF cryptés" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "" -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "Vous n'avez pas la permission de créer un jeton pour cette équipe" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "Vous n'avez plus besoin de le signer." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "Vous avez accepté une invitation de <0>{0} pour rejoindre leur équipe." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "Vous avez déjà terminé le transfert de propriété pour <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "Vous avez déjà vérifié votre adresse e-mail pour <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "Vous avez été invité par <0>{0} à rejoindre leur équipe." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "Vous avez été invité à rejoindre {0} sur Documenso" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "Vous avez été invité à rejoindre l'équipe suivante" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "Vous avez été supprimé d'un document" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "On vous a demandé de prendre possession de l'équipe {0} sur Documenso" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "Vous avez décliné l'invitation de <0>{0} pour rejoindre leur équipe." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "Vous avez initié le document {0} qui nécessite que vous {recipientActionVerb} celui-ci." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "Vous n'avez pas encore de webhooks. Vos webhooks seront affichés ici une fois que vous les aurez créés." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "Vous n'avez pas encore créé de modèles. Pour créer un modèle, veuillez en télécharger un." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "Vous n'avez pas encore créé ou reçu de documents. Pour créer un document, veuillez en télécharger un." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "Vous avez atteint la limite maximale de {0} modèles directs. <0>Mettez à niveau votre compte pour continuer !" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "Vous avez atteint votre limite de documents pour ce mois. Veuillez passer à un plan supérieur." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "Vous avez atteint votre limite de documents." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "Vous avez atteint votre limite de documents. <0>Mettez à niveau votre compte pour continuer !" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "Vous avez rejeté le document '{documentName}'" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "Vous avez rejeté ce document" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "Vous avez signé “{documentName}”" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "Vous avez quitté cette équipe avec succès." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "Vous vous êtes inscrit avec succès. Veuillez vérifier votre compte en cliquant sur le lien que vous avez reçu dans l'e-mail." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "Vous avez retiré cet utilisateur de l'équipe avec succès." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "Vous avez révoqué l'accès avec succès." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "Vous avez le droit de retirer votre consentement à l'utilisation des signatures électroniques à tout moment avant de terminer le processus de signature. Pour retirer votre consentement, veuillez contacter l'expéditeur du document. Si vous ne contactez pas l'expéditeur, vous pouvez contacter <0>{SUPPORT_EMAIL} pour obtenir de l'aide. Sachez que le retrait de consentement peut retarder ou arrêter l'achèvement de la transaction ou du service associé." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "Vous avez mis à jour {teamMemberName}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "Vous avez vérifié votre adresse e-mail pour <0>{0}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "Vous devez être un administrateur de cette équipe pour gérer la facturation." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "Vous devez entrer '{deleteMessage}' pour continuer" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "Vous devez avoir au moins un autre membre de l'équipe pour transférer la propriété." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "Vous devez définir une URL de profil avant d'activer votre profil public." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "Vous devez être connecté en tant que <0>{email} pour voir cette page." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "Vous devez être connecté pour voir cette page." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "Vous devez configurer 2FA pour marquer ce document comme vu." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "Vous serez notifié et pourrez configurer votre profil public Documenso lorsque nous lancerons la fonctionnalité." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "Vous devrez maintenant entrer un code de votre application d'authentification lors de la connexion." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "Vous recevrez une copie par e-mail du document signé une fois que tout le monde aura signé." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Votre compte a été supprimé avec succès." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Votre avatar a été mis à jour avec succès." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Votre bannière a été mise à jour avec succès." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "L'URL de votre site web de marque" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Vos préférences de branding ont été mises à jour" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Votre envoi groupé a été initié. Vous recevrez une notification par email une fois terminé." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "Votre opération d'envoi groupé pour le modèle \"{templateName}\" est terminée." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "Vos modèles de signature directe" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Votre document a échoué à se télécharger." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Votre document a été créé à partir du modèle avec succès." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "Votre document a été supprimé par un administrateur !" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Votre document a été renvoyé avec succès." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Votre document a été envoyé avec succès." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Votre document a été dupliqué avec succès." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Votre document a été téléchargé avec succès." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Votre document a été téléchargé avec succès. Vous serez redirigé vers la page de modèle." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Vos préférences de document ont été mises à jour" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "Vos documents" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Votre e-mail a été confirmé avec succès ! Vous pouvez maintenant utiliser toutes les fonctionnalités de Documenso." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "Votre e-mail est actuellement utilisé par l'équipe <0>{0} ({1})." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "Vos tokens existants" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "Ton nouveau mot de passe ne peut pas être le même que l'ancien." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "Votre mot de passe a été mis à jour avec succès." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "Votre mot de passe a été mis à jour." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Votre paiement pour les équipes est en retard. Veuillez régler le paiement pour éviter toute interruption de service." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Votre profil a été mis à jour avec succès." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Votre profil a été mis à jour." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Votre profil public a été mis à jour." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Votre code de récupération a été copié dans votre presse-papiers." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "Vos codes de récupération sont listés ci-dessous. Veuillez les conserver dans un endroit sûr." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Votre abonnement est actuellement actif." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Votre équipe a été créée." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Votre équipe a été supprimée" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Votre équipe a été supprimée avec succès." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Votre équipe a été mise à jour avec succès." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Votre modèle a été dupliqué avec succès." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Votre modèle a été supprimé avec succès." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Votre modèle sera dupliqué." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "Vos modèles ont été enregistrés avec succès." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "Votre token a expiré !" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "Votre token a été créé avec succès ! Assurez-vous de le copier car vous ne pourrez plus le voir !" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "Vos tokens seront affichés ici une fois que vous les aurez créés." diff --git a/packages/lib/translations/it/web.po b/packages/lib/translations/it/web.po index 90bcd603e..8d629fc03 100644 --- a/packages/lib/translations/it/web.po +++ b/packages/lib/translations/it/web.po @@ -18,7164 +18,7143 @@ msgstr "" "X-Crowdin-File: web.po\n" "X-Crowdin-File-ID: 8\n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "\"{0}\" ti ha invitato a firmare \"documento di esempio\"." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "" -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" è stato eliminato da un amministratore." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "“{documentName}” è stato firmato" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "“{documentName}” è stato firmato da tutti i firmatari" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" è stato eliminato con successo" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" per conto di \"{0}\" ti ha invitato a firmare \"documento di esempio\"." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 carattere in eccesso)} other {(# caratteri in eccesso)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# carattere oltre il limite} other {# caratteri oltre il limite}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# destinatario} other {# destinatari}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# posto} other {# posti}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>Hai <1>1 invito in sospeso alla squadra} other {<2>Hai <3># inviti in sospeso alla squadra}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 campo corrispondente} other {# campi corrispondenti}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 destinatario} other {# destinatari}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {In attesa di 1 destinatario} other {In attesa di # destinatari}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Seleziona valori} other {# selezionati...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} modelli di firma diretta" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} ti ha invitato a {recipientActionVerb} il documento \"{1}\"." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} ti ha invitato a {recipientActionVerb} un documento" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} si è unito al team {teamName} su Documenso" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} ha lasciato il team {teamName} su Documenso" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} di {1} documenti rimanenti questo mese." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} di {1} riga selezionata." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} per conto di \"{1}\" ti ha invitato a {recipientActionVerb} il documento \"{2}\"." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Destinatario(i)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {1 carattere rimanente} other {{charactersRemaining} caratteri rimanenti}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} ha annullato il documento {documentName}, non è più necessario firmarlo." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} ha annullato il documento<0/>\"{documentName}\"" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} ti ha invitato a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} ti ha invitato a {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} ti ha invitato a {action} il documento \"{documentName}\"." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} ti ha rimosso dal documento {documentName}." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} ti ha rimosso dal documento<0/>\"{documentName}\"" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} per conto di \"{teamName}\" ti ha invitato a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} per conto di \"{teamName}\" ti ha invitato a {action} {documentName}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} si è unito al seguente team" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} ha lasciato il seguente team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# membro} other {# membri}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} ha aggiunto un campo" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} ha aggiunto un destinatario" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} ha creato il documento" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} ha eliminato il documento" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} ha spostato il documento al team" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} ha aperto il documento" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} ha rimosso un campo" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} ha rimosso un destinatario" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} ha rinviato un'email a {0}" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} ha inviato un'email a {0}" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} ha inviato il documento" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} ha firmato un campo" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} ha annullato la firma di un campo" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} ha aggiornato un campo" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} ha aggiornato un destinatario" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} ha aggiornato il documento" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} ha aggiornato i requisiti di autenticazione per l'accesso al documento" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} ha aggiornato l'ID esterno del documento" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} ha aggiornato i requisiti di autenticazione per la firma del documento" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} ha aggiornato il titolo del documento" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} ha aggiornato la visibilità del documento" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} documento" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} il documento per completare il processo." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} un documento utilizzando uno dei tuoi link diretti" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} ha rifiutato il documento '{documentName}'" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} ha completato la firma del documento." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} ha firmato \"{0}\"" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} ha firmato \"{documentName}\"" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} ha firmato {documentName}" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {# carattere rimanente} other {# caratteri rimanenti}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} ha rifiutato il documento \"{documentName}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} ti ha invitato a {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} ti ha invitato a {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "richiesta di trasferimento di proprietà di {teamName}" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} ha approvato il documento" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} ha inoltrato il documento" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} ha completato il suo compito" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} ha rifiutato il documento" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} ha firmato il documento" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} ha visualizzato il documento" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Visualizzazione di # risultato.} other {Visualizzazione di # risultati.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\"non è più disponibile per la firma" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} ha richiesto di prendere in carico il seguente team" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} ha richiesto di utilizzare il tuo indirizzo email per il loro team su Documenso." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Fai clic per caricare o trascina e rilascia" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>Email - Al destinatario verrà inviato il documento tramite email per firmare, approvare, ecc." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Eredita metodo di autenticazione - Usa il metodo globale di autenticazione della firma configurato nel passaggio \"Impostazioni generali\"" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>Nessuna restrizione - Non è richiesta autenticazione" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>Nessuna restrizione - Il documento può essere accessibile direttamente tramite l'URL inviato al destinatario" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>Nessuno - Non è richiesta autenticazione" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>Nessuno - Genereremo i link che potrai inviare manualmente ai destinatari." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Nota - Se usi i link in combinazione con modelli diretti, dovrai inviare manualmente i link ai destinatari rimanenti." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>Richiedi 2FA - Il destinatario deve avere un account e 2FA abilitato tramite le sue impostazioni" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Richiede account - Il destinatario deve essere connesso per visualizzare il documento" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Richiede passkey - Il destinatario deve avere un account e una passkey configurati tramite le sue impostazioni" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Mittente: Tutti" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>Stai per completare l'approvazione di <1>\"{documentTitle}\".<2/> Sei sicuro?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Stai per completare la firma di \"<1>{documentTitle}\".<2/> Sei sicuro?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Stai per completare la visualizzazione di \"<1>{documentTitle}\".<2/> Sei sicuro?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "{VAR_PLURAL, select, one {1 mese} other {# mesi}}" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "{VAR_PLURAL, select, one {1 mese} other {12 mesi}}" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "{VAR_PLURAL, select, one {1 mese} other {3 mesi}}" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Profilo non trovato" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Squadra non trovata" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "{VAR_PLURAL, select, one {1 mese} other {6 mesi}}" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "{VAR_PLURAL, select, one {1 giorno} other {7 giorni}}" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "È stata inviata un'e-mail di conferma e dovrebbe arrivare nella tua casella di posta a breve." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "Un dispositivo in grado di accedere, aprire e leggere documenti" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "Un documento è stato creato dal tuo modello diretto che richiede di {recipientActionVerb}." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "Verrà creato un documento bozza" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "Un campo è stato aggiunto" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "Un campo è stato rimosso" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "Un campo è stato aggiornato" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "Un mezzo per stampare o scaricare documenti per i tuoi archivi" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "Un nuovo membro si è unito al tuo team" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "Un nuovo token è stato creato con successo." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "È stata inviata un'e-mail per il reset della password; se hai un account dovresti vederla nella tua casella di posta a breve." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "Un destinatario è stato aggiunto" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "Un destinatario è stato rimosso" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "Un destinatario è stato aggiornato" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "Una richiesta per trasferire la proprietà di questa squadra è stata inviata a <0>{0} ({1})" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "Una richiesta per utilizzare la tua email è stata avviata da {0} su Documenso" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "Un codice segreto che verrà inviato al tuo URL in modo che tu possa verificare che la richiesta sia stata inviata da Documenso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "Un codice segreto che verrà inviato al tuo URL in modo che tu possa verificare che la richiesta sia stata inviata da Documenso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "Una connessione Internet stabile" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "Un membro del team si è unito a un team su Documenso" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "Un membro del team ha lasciato {0}" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "Un membro del team ha lasciato un team su Documenso" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "Un team di cui facevi parte è stato eliminato" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "Un URL univoco per accedere al tuo profilo" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "Un URL univoco per identificare la tua squadra" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "Un'email di verifica sarà inviata all'email fornita." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Accetta" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Accetta l'invito a unirti a un team su Documenso" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Accetta la richiesta di email per il team {teamName} su Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Accetta la richiesta di trasferimento di team su Documenso" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Accettazione e Consenso" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Invito alla squadra accettato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Autenticazione dell'account" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Account eliminato" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Account disabilitato" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Account abilitato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Ri-autenticazione dell'account" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Riconoscimento" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Azione" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Azioni" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Attivo" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Abbonamenti attivi" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Aggiungi" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Aggiungi un documento" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Aggiungi un URL per reindirizzare l'utente una volta firmato il documento" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Aggiungi tutti i campi rilevanti per ciascun destinatario." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Aggiungi tutti i segnaposto pertinenti per ciascun destinatario." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Aggiungi un autenticatore come metodo di autenticazione secondario per firmare documenti." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Aggiungi un autenticatore come metodo di autenticazione secondario al momento dell'accesso o durante la firma di documenti." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Aggiungi un ID esterno al documento. Questo può essere usato per identificare il documento in sistemi esterni." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Aggiungi un ID esterno al modello. Questo può essere usato per identificare in sistemi esterni." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Aggiungi un'altra opzione" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Aggiungi un altro valore" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "Aggiungi email" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Aggiungi campi" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Aggiungi altro" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "Aggiungi me stesso" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "Aggiungi me stesso" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Aggiungi chiave d'accesso" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Aggiungi un destinatario segnaposto" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Aggiungi segnaposto" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Aggiungi un firmatario" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Aggiungi firmatari" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Aggiungi email del team" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Aggiungi testo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Aggiungi testo al campo" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Aggiungi le persone che firmeranno il documento." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Aggiungi i destinatari con cui creare il documento" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Aggiungere e rimuovere posti adeguerà di conseguenza la tua fattura." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Informazioni aggiuntive sul marchio da mostrare in fondo alle email" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Amministratore" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Azioni amministrative" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Pannello admin" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Opzioni avanzate" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Impostazioni avanzate" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "Dopo aver firmato un documento elettronicamente, avrai la possibilità di visualizzare, scaricare e stampare il documento per i tuoi archivi. È altamente consigliato conservare una copia di tutti i documenti firmati elettronicamente per i tuoi archivi personali. Noi conserveremo anche una copia del documento firmato per i nostri archivi, tuttavia potremmo non essere in grado di fornirti una copia del documento firmato dopo un certo periodo di tempo." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "Dopo l'invio, un documento verrà generato automaticamente e aggiunto alla tua pagina dei documenti. Riceverai anche una notifica via email." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "Tutto" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "Tutti i documenti" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "Tutti i documenti sono stati elaborati. Eventuali nuovi documenti inviati o ricevuti verranno mostrati qui." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "Tutti i documenti relativi al processo di firma elettronica ti saranno forniti elettronicamente tramite la nostra piattaforma o via email. È tua responsabilità assicurarti che il tuo indirizzo email sia attuale e che tu possa ricevere e aprire le nostre email." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "Tutte le firme inserite saranno annullate" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "Tutti i destinatari saranno notificati" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "Tutte le firme sono state annullate." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "Tutti i link di firma sono stati copiati negli Appunti." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "Tutti i modelli" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "Tutto il tempo" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Consenti ai destinatari del documento di rispondere direttamente a questo indirizzo email" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Consente di autenticare utilizzando biometria, gestori di password, chiavi hardware, ecc." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "Hai già un account? <0>Accedi al posto" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Importo" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "Un amministratore ha eliminato il tuo documento \"{documentName}\"." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "Una firma elettronica fornita da te sulla nostra piattaforma, ottenuta cliccando su un documento e inserendo il tuo nome, o qualsiasi altro metodo di firma elettronica che forniamo, è legalmente vincolante. Ha lo stesso peso e validità giuridica di una firma manuale scritta con inchiostro su carta." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "Un account email" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "Verrà inviato un'email contenente un invito a ciascun membro." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "È stata inviata un'email per richiedere il trasferimento di questo team." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "Si è verificato un errore" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "Si è verificato un errore durante l'aggiunta dei campi." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "Si è verificato un errore durante l'aggiunta di firmatari." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "Si è verificato un errore durante l'aggiunta dei campi." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "Si è verificato un errore durante la firma automatica del documento, alcuni campi potrebbero non essere firmati. Si prega di controllare e firmare manualmente eventuali campi rimanenti." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "Si è verificato un errore durante la creazione del documento dal modello." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "Si è verificato un errore durante la creazione del webhook. Prova di nuovo." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "Si è verificato un errore durante l'eliminazione dell'utente." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "Si è verificato un errore durante la disabilitazione della firma tramite link diretto." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "Si è verificato un errore durante la disabilitazione dell'utente." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "Si è verificato un errore durante il download del tuo documento." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "Si è verificato un errore durante la duplicazione del modello." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "Si è verificato un errore durante l'abilitazione della firma del link diretto." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "Si è verificato un errore durante l'abilitazione dell'utente." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "Si è verificato un errore durante il caricamento dei membri del team. Per favore riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "Si è verificato un errore durante il caricamento del documento." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "Si è verificato un errore durante lo spostamento del documento." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "Si è verificato un errore durante lo spostamento del modello." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "Si è verificato un errore durante la rimozione del campo." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "Si è verificato un errore durante la rimozione della firma." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "Si è verificato un errore durante l'invio del documento." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "Si è verificato un errore durante l'invio della tua email di conferma" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "Si è verificato un errore durante la firma del documento." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "" -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "Si è verificato un errore durante l'aggiornamento delle impostazioni del documento." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "Si è verificato un errore durante l'aggiornamento della firma." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "Si è verificato un errore durante l'aggiornamento del tuo profilo." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "Si è verificato un errore durante il caricamento del tuo documento." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "Si è verificato un errore sconosciuto" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Qualsiasi metodo di pagamento associato a questo team rimarrà associato a questo team. Si prega di contattarci se necessario per aggiornare queste informazioni." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Qualsiasi fonte" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Qualsiasi stato" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "Token API" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "Versione dell'app" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Approvare" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Approva Documento" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Approvato" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Approvante" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Approvanti" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Approvazione in corso" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "Sei sicuro di voler eliminare questo token?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Sei sicuro di voler rifiutare questo documento? Questa azione non può essere annullata." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "Sei sicuro di voler rimuovere la chiave di accesso <0>{passkeyName}." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "Sei sicuro di voler eliminare questo team?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "Sei sicuro?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "" -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Tenta nuovamente di sigillare il documento, utile dopo una modifica al codice per risolvere un documento errato." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Registro di controllo" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Livello di Autenticazione" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Autenticazione richiesta" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Avatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Avatar aggiornato" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "In attesa della conferma email" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Indietro" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Torna ai Documenti" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Colore di Sfondo" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Codice di Backup" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Codici di Backup" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Banner Aggiornato" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Dettagli di Base" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Prima di iniziare, conferma il tuo indirizzo email facendo clic sul pulsante qui sotto:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Fatturazione" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Nero" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Blu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Preferenze per il branding" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Preferenze di branding aggiornate" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Browser" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Copia massiva" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Importazione Massiva" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Invio Massivo Completato: {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Operazione di invio massivo completata per il modello \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Invio modello in blocco tramite CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Invio Massivo via CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "da <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "Accettando questa richiesta, concederai l'accesso a <0>{teamName} a:" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "Accettando questa richiesta, ti assumerai la responsabilità di qualsiasi voce di fatturazione associata a questo team." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "Eliminando questo documento, si verificherà quanto segue:" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "Procedendo con l'utilizzo del servizio di firma elettronica fornito da Documenso, affermi di aver letto e compreso questa divulgazione. Accetti tutti i termini e le condizioni relativi all'uso delle firme elettroniche e delle transazioni elettroniche come descritto in questo documento." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "Procedendo con la tua firma elettronica, riconosci e acconsenti che sarà utilizzata per firmare il documento dato e ha la stessa validità legale di una firma autografa. Completando il processo di firma elettronica, affermi la tua comprensione e accettazione di queste condizioni." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "Utilizzando la funzione di firma elettronica, acconsenti a effettuare transazioni e ricevere divulgazioni elettronicamente. Riconosci che la tua firma elettronica sui documenti è vincolante e accetti i termini delineati nei documenti che stai firmando." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Annulla" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Annullato dall'utente" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "Impossibile rimuovere il firmatario" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "Cc" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "CC" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "CC'd" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Limite di caratteri" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Grafici" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Casella di controllo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Valori della casella di controllo" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Pagamento" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Scegli un destinatario esistente qui sotto per continuare" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Scegli Destinatario Link Diretto" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Scegli come il documento verrà inviato ai destinatari" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Scegli..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Rivendica account" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Rivendica nome utente" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Rivendica il tuo nome utente ora" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Rimuovi file" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Cancella filtri" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Cancella firma" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Clicca qui per iniziare" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Clicca qui per riprovare" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Clicca qui per caricare" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Clicca per copiare il link di firma da inviare al destinatario" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Clicca per inserire il campo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Chiudi" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Completa" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Completa l'Approvazione" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Completa la Firma" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Completa la Visualizzazione" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Completato" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Documento completato" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Documenti Completati" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Documenti Completati" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Configura destinatario diretto" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Configura le impostazioni generali per il documento." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Configura le impostazioni generali per il modello." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Configura il modello" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Configura il campo {0}" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Conferma" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Conferma digitando <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Conferma digitando <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Conferma digitando: <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Conferma eliminazione" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "Conferma email" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "Email di conferma inviato" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Consenso alle transazioni elettroniche" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Informazioni di contatto" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Contenuto" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Continua" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Continua approvando il documento." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "" -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Continua scaricando il documento." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Continua firmando il documento." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Continua visualizzando il documento." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Continua per accedere" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Controlla la lingua predefinita di un documento caricato. Questa verrà usata come lingua nelle comunicazioni email con i destinatari." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Controlla la visibilità predefinita di un documento caricato." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Controlla la formattazione del messaggio che verrà inviato quando si invita un destinatario a firmare un documento. Se è stato fornito un messaggio personalizzato durante la configurazione del documento, verrà utilizzato invece." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Controlla se i destinatari possono firmare i documenti utilizzando una firma digitata. Abilita o disabilita la firma digitata a livello globale." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Controlla se il certificato di firma sarà incluso nel documento quando viene scaricato. Il certificato di firma può comunque essere scaricato separatamente dalla pagina dei log." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Copiato" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "Copiato negli appunti" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Copia" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Copia il link" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Copia il link condivisibile" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Copia il Link Condivisibile" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Copia link di firma" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Copia il token" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Crea" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Crea un <0>account gratuito per accedere ai tuoi documenti firmati in qualsiasi momento." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Crea un nuovo account" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Crea un team per collaborare con i membri del tuo team." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Crea un account" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Crea e invia" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Crea come bozza" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Crea come in attesa" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Crea Link Diretto" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Crea Link di Firma Diretto" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Crea documento da modello" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Crea ora" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Crea uno automaticamente" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Crea link di firma" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Crea team" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Crea Team" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Crea il documento come in attesa e pronto per la firma." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Crea token" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Crea webhook" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Crea Webhook" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Crea il tuo account e inizia a utilizzare firme digitali all'avanguardia." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Crea il tuo account e inizia a utilizzare firme digitali all'avanguardia. Una firma aperta e bella è a tua portata." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Creato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Creato il" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Creato da" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Creato il" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Creato il {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "Struttura CSV" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Password attuale" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "La password corrente è errata." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Destinatari attuali:" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Modalità Scura" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Data" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Data di creazione" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Formato data" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Declina" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Invito al team rifiutato" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Lingua predefinita del documento" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Visibilità predefinita del documento" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "elimina" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Elimina" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "elimina {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "elimina {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Elimina account" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Elimina Account" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Elimina documento" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Elimina Documento" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Elimina chiave d'accesso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Elimina squadra" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Elimina membro del team" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Elimina il documento. Questa azione è irreversibile quindi procedi con cautela." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Elimina l'account utente e tutti i suoi contenuti. Questa azione è irreversibile e annullerà l'abbonamento, quindi procedi con cautela." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Elimina Webhook" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Elimina il tuo account e tutti i suoi contenuti, inclusi i documenti completati. Questa azione è irreversibile e annullerà l'abbonamento, quindi procedi con cautela." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Eliminato" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Eliminazione account..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Dettagli" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Dispositivo" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "Non hai richiesto un cambio di password? Siamo qui per aiutarti a proteggere il tuo account, basta <0>contattarci." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "collegamento diretto" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Collegamento diretto" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Collegamento diretto" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "collegamento diretto disabilitato" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Ricevitore del link diretto" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Firma del collegamento diretto" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "La firma del collegamento diretto è stata disabilitata" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "La firma del collegamento diretto è stata abilitata" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "I modelli di collegamento diretto contengono un segnaposto per un destinatario dinamico. Chiunque abbia accesso a questo link può firmare il documento e apparirà successivamente nella tua pagina dei documenti." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Collegamento diretto al modello eliminato" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "Utilizzo del collegamento diretto al modello superato ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Disabilita" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "Disabilita 2FA" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Disabilita account" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Disabilita Account" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Disabilita l'Autenticazione a Due Fattori prima di eliminare il tuo account." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Disabilitato" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Disabilitare la firma del collegamento diretto impedirà a chiunque di accedere al collegamento." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Disabilitare l'utente porta all'impossibilità per l'utente di usare l'account. Disabilita anche tutti i contenuti correlati come abbonamento, webhook, team e chiavi API." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Mostra il tuo nome e email nei documenti" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Distribuire il documento" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "Vuoi eliminare questo modello?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "Vuoi duplicare questo modello?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso eliminerà <0>tutti i tuoi documenti, insieme a tutti i tuoi documenti completati, firme e tutte le altre risorse appartenenti al tuo account." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Documento" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Documento \"{0}\" - Rifiutato da {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Documento \"{0}\" - Rifiuto Confermato" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Accesso al documento" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "Autenticazione di accesso al documento aggiornata" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Documenta Tutto" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Documento Approvato" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Documento Annullato" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Documento completato" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "Email documento completato" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "Documento completato!" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Documento creato" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Documento creato da <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Documento creato da modello diretto" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Documento creato usando un <0>link diretto" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Creazione del documento" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Documento eliminato" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "Email documento eliminato" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "Documento Eliminato!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Metodo di distribuzione del documento" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Bozza del documento" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Documento Duplicato" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "ID esterno del documento aggiornato" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Cronologia del documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "ID del documento" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Posta in arrivo del documento" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "Limite di documenti superato!" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Metriche del documento" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Documento spostato" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Documento spostato al team" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "Documento non più disponibile per la firma" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Documento aperto" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Documento in sospeso" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "Email documento in attesa" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Preferenze del documento aggiornate" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Documento rinviato" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Documento Rifiutato" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Documento risigillato" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Documento inviato" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Documento firmato" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Autenticazione firma documento aggiornata" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "Il processo di firma del documento sarà annullato" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Stato del documento" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Titolo del documento" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Titolo documento aggiornato" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Documento aggiornato" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "Caricamento del documento disabilitato a causa di fatture non pagate" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Documento caricato" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Documento visualizzato" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Visibilità del documento aggiornata" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "Il documento sarà eliminato definitivamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Documenti" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Documenti creati da modello" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Documenti ricevuti" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Documenti visualizzati" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "Non hai un account? <0>Registrati" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Scarica" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Scarica i log di audit" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Scarica il certificato" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Scarica Modello CSV" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Bozza" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Documenti in bozza" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Documenti redatti" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Trascina e rilascia il tuo PDF qui." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Menu a tendina" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Opzioni del menu a tendina" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "A causa di una fattura non pagata, il vostro team è stato limitato. Si prega di effettuare il pagamento per ripristinare l'accesso completo al team." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Duplica" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Modifica" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Modifica Modello" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Modifica webhook" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Consegna elettronica dei documenti" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Divulgazione della firma elettronica" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "Email" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "Indirizzo email" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "Indirizzo Email" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "L'email non può già esistere nel modello" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "Email confermato!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "Opzioni email" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "Email rinviato" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "Email inviato" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "Email inviato!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "Verifica email rimossa" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "Verifica email rinviata" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Campo vuoto" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "Abilita 2FA" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Abilita account" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Abilita Account" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Abilita l'app Authenticator" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Abilita il branding personalizzato per tutti i documenti in questo team." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Abilita la firma di link diretto" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Abilita ordine di firma" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Abilita firma digitata" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Abilita firme digitate" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Abilitato" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Abilitare l'account consente all'utente di utilizzare nuovamente l'account, così come tutte le funzionalità correlate come webhook, team e chiavi API, per esempio." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Documento Allegato" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Termina il" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Inserisci la password" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Inserisci i dettagli del tuo marchio" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Inserisci la tua email" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Inserisci il tuo indirizzo email per ricevere il documento completato." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Inserisci il tuo nome" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Inserisci il tuo testo qui" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Errore" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Tutti possono accedere e visualizzare il documento" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Hanno firmato tutti" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "Hanno firmato tutti! Riceverai una copia via email del documento firmato." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Tempo scaduto" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Scaduto" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Scade il {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "ID esterno" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Fallito il risigillo del documento" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Impossibile salvare le impostazioni." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Aggiornamento destinario fallito" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Aggiornamento webhook fallito" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Falliti: {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Limite di caratteri del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Dimensione del carattere del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Formato del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Etichetta del campo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Segnaposto del campo" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Campo firmato" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Campo non firmato" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Campi" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "Il file non può essere più grande di {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "La dimensione del file supera il limite di {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Dimensione carattere" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "Per qualsiasi domanda riguardante questa divulgazione, le firme elettroniche o qualsiasi processo correlato, contattaci all'indirizzo: <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "Per ogni destinatario, fornisci la loro email (obbligatoria) e il nome (opzionale) in colonne separate. Scarica il modello CSV qui sotto per il formato corretto." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "Password dimenticata?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "Hai dimenticato la tua password?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Firma gratuita" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Nome completo" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "Generale" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Genera link" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Autenticazione globale del destinatario" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Torna indietro" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Torna alla home" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Torna alla home" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Vai al proprietario" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Vai alle tue <0>impostazioni del profilo pubblico per aggiungere documenti." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Verde" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "ti ha invitato ad approvare questo documento" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "ti ha invitato a firmare questo documento" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "ti ha invitato a visualizzare questo documento" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Qui puoi modificare i tuoi dati personali." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Qui puoi gestire la tua password e le impostazioni di sicurezza." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Qui puoi impostare preferenze e valori predefiniti per il branding." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Qui puoi impostare preferenze e valori predefiniti per il tuo team." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "Ecco come funziona:" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Ciao, sono Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Ciao {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Ciao, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Nascondi" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Nascondi informazioni aggiuntive" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "Sono un firmatario di questo documento" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "Sono un visualizzatore di questo documento" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "Sono un approvatore di questo documento" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "Sono tenuto a ricevere una copia di questo documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "Sono il proprietario di questo documento" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "Sono sicuro! Eliminalo" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "Se accettano questa richiesta, il team sarà trasferito sul loro account." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "Se non vuoi utilizzare l'autenticatore richiesto, puoi chiuderlo, dopodiché verrà mostrato il successivo disponibile." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "Se non trovi il link di conferma nella tua casella di posta, puoi richiederne uno nuovo qui sotto." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "Se la tua app autenticatrice non supporta i codici QR, puoi usare il seguente codice:" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Posta in arrivo" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Documenti in arrivo" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Includi il certificato di firma nel documento" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Informazioni" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Ereditare metodo di autenticazione" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Iniziali" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Inserito" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Statistiche istanze" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Codice non valido. Riprova." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Email non valida" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Link non valido" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Token non valido" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Token non valido fornito. Per favore riprova." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "Invito accettato!" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Invito rifiutato" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "L'invito è stato eliminato" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "L'invito è stato inviato nuovamente" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Invita" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Invita un membro" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Invita membri" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Invita membri del team" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Invitato il" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Fattura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "Indirizzo IP" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "È fondamentale mantenere aggiornate le tue informazioni di contatto, in particolare il tuo indirizzo email. Ti preghiamo di notificarci immediatamente qualsiasi modifica per assicurarti di continuare a ricevere tutte le comunicazioni necessarie." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Sembra che {0} non abbia ancora aggiunto documenti al proprio profilo." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Sembra che il token fornito sia scaduto. Ti abbiamo appena inviato un altro token, controlla la tua email e riprova." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "Sembra che non sia stato fornito alcun token, se stai cercando di verificare la tua email, segui il link nella tua email." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "Al momento, non è il tuo turno di firmare. Riceverai un'email con le istruzioni quando sarà il tuo turno di firmare il documento." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Unisci a {teamName} su Documenso" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Etichetta" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Lingua" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "Ultimi 14 giorni" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "Ultimi 30 giorni" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "Ultimi 7 giorni" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Ultima modifica" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Ultimo aggiornamento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Ultimo aggiornamento" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Ultimo aggiornamento il" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Ultimo utilizzo" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Classifica" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Lascia" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Lascia il team" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Legalità delle firme elettroniche" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Modalità chiara" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "Ti piacerebbe avere il tuo profilo pubblico con accordi?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "Il link scade tra 1 ora." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Collega modello" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Link Generati" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Ascoltando {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Carica attività precedente" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Caricamento del documento..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Caricamento Documento..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Caricamento dei team..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Caricamento in corso..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Accedi" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Gestisci" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Gestisci il profilo di {0}" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Gestisci tutti i team a cui sei attualmente associato." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Gestisci e visualizza il modello" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Gestisci i dettagli per questo modello pubblico" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Gestisci Link Diretto" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Gestisci documenti" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Gestisci chiavi di accesso" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Gestisci abbonamento" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Gestisci abbonamenti" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Gestisci abbonamento del team." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Gestisci gruppi" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Gestisci la firma del link diretto per questo modello" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Gestisci i membri o invita nuovi membri." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Gestisci utenti" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Gestisci le tue chiavi di accesso." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Gestisci le impostazioni del tuo sito qui" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Responsabile" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Segna come visto" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (documento creato)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (ha completato il documento)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Dimensione massima del file: 4MB. Massimo 100 righe per caricamento. I valori vuoti utilizzeranno i valori predefiniti del modello." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Membro" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Membro dal" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Membri" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Messaggio <0>(Opzionale)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Modifica destinatari" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Mensile" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Utenti attivi mensili: Utenti che hanno creato almeno un documento" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Utenti attivi mensili: Utenti con almeno uno dei loro documenti completati" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Sposta" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Sposta documento al team" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Sposta modello al team" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "Sposta nel team" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Spostamento..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "I miei modelli" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Nome" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "Hai bisogno di firmare documenti?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Necessita di approvazione" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Necessita di firma" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Necessita di visualizzazione" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Mai" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Mai scadere" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "Nuovo proprietario del team" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "Nuovo modello" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Successivo" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Campo successivo" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "Nessuna bozza attiva" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "Non sono richieste ulteriori azioni da parte tua in questo momento." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "Nessun pagamento richiesto" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "Nessun modello di profilo pubblico trovato" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "Nessuna attività recente" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "Nessun documento recente" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "Nessun destinatario corrispondente a questa descrizione è stato trovato." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "Nessun destinatario" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "Nessun destinatario con questo ruolo" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "Nessuna restrizione" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "Nessun risultato trovato" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "Nessun risultato trovato." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "Nessun campo di firma trovato" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "Nessun modello diretto valido trovato" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "Nessun destinatario valido trovato" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "Nessun valore trovato." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "Non ti preoccupare, succede! Inserisci la tua email e ti invieremo un link speciale per reimpostare la tua password." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "Nessuno" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "Non supportato" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Niente da fare" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Numero" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Formato numero" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "per conto di \"{0}\" ti ha invitato ad approvare questo documento" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "per conto di \"{0}\" ti ha invitato a firmare questo documento" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "per conto di \"{0}\" ti ha invitato a visualizzare questo documento" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "In questa pagina, puoi creare un nuovo webhook." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "In questa pagina, puoi creare nuovi Webhook e gestire quelli esistenti." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "In questa pagina, puoi modificare il webhook e le sue impostazioni." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Una volta confermato, si verificherà quanto segue:" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Una volta abilitato, puoi selezionare qualsiasi destinatario attivo per essere un destinatario di firma a link diretto, o crearne uno nuovo. Questo tipo di destinatario non può essere modificato o eliminato." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Una volta scansionato il codice QR o inserito manualmente il codice, inserisci il codice fornito dalla tua app di autenticazione qui sotto." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Una volta configurato il tuo modello, condividi il link ovunque tu voglia. La persona che apre il link potrà inserire le proprie informazioni nel campo destinatario del link diretto e completare qualsiasi altro campo assegnato a loro." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Solo gli amministratori possono accedere e visualizzare il documento" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Solo i manager e superiori possono accedere e visualizzare il documento" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Solo gli abbonati possono avere un nome utente più corto di 6 caratteri" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "Ops! Qualcosa è andato storto." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Aperto" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "Oppure" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "Oppure continua con" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "Altrimenti, il documento sarà creato come bozza." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Proprietario" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Pagina {0} di {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Pagina {0} di {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Pagato" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Password" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "Una passkey esiste già per l'autenticatore fornito" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "Creazione della passkey annullata per uno dei seguenti motivi:" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "La passkey è stata rimossa" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "La passkey è stata aggiornata" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Nome della passkey" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Ri-autenticazione con chiave di accesso" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Passkey" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Le passkey permettono di autenticarsi usando dati biometrici, gestori di password, ecc." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Le passkey non sono supportate su questo browser" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "\"Password\"" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Password richiesta" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Richiesta di reimpostazione password" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Reimpostazione password riuscita" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "La password non deve essere comune o basata su informazioni personali" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Password aggiornato" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "Password aggiornata!" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Paga" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "È necessario il pagamento per completare la creazione del tuo team." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Pagamento scaduto" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "In sospeso" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Documento in sospeso" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Documenti in sospeso" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Documenti in sospeso" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Inviti in sospeso" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Team in sospeso eliminato." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Personale" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Account personale" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Scegli un numero" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Inserisci una password" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Scegli uno dei seguenti accordi e inizia a firmare per iniziare" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Segnaposto" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Per favore {0} il tuo documento<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Per favore {action} il tuo documento {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Per favore {recipientActionVerb} questo documento" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Per favore {recipientActionVerb} questo documento creato dal tuo modello diretto" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Per favore {recipientActionVerb} il tuo documento" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Si prega di controllare il file CSV e assicurarsi che sia conforme al nostro formato" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Per favore controlla la tua email per aggiornamenti." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Per favore scegli la tua nuova password" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Per favore conferma la tua email" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Per favore conferma il tuo indirizzo email" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Si prega di contattare il supporto se si desidera annullare questa azione." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Si prega di inserire un nome significativo per il proprio token. Questo ti aiuterà a identificarlo più tardi." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Per favore inserisci un nome valido." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Si prega di segnare come visualizzato per completare" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Si prega di notare che procedendo si rimuoverà il destinatario del link diretto e si trasformerà in un segnaposto." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Si prega di notare che questa azione è <0>irreversibile." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Si prega di notare che questa azione è <0>irreversibile. Una volta confermato, questo documento sarà eliminato permanentemente." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Si prega di notare che questa azione è irreversibile. Una volta confermato, il tuo modello sarà eliminato permanentemente." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Si prega di notare che questa azione è irreversibile. Una volta confermato, il tuo token sarà eliminato permanentemente." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Si prega di notare che questa azione è irreversibile. Una volta confermato, il tuo webhook sarà eliminato permanentemente." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Si prega di notare che perderai l'accesso a tutti i documenti associati a questo team e tutti i membri saranno rimossi e notificati" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Per favore, fornire una ragione" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Si prega di fornire un token dal tuo autenticatore, o un codice di backup. Se non hai un codice di backup disponibile, contatta il supporto." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Si prega di fornire un token dal tuo autenticatore, o un codice di backup." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Rivedi il documento prima di firmare." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Seleziona un file PDF" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Si prega di riprovare assicurandosi di inserire l'indirizzo email corretto." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Si prega di riprovare più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Per favore, riprova o contatta il nostro supporto." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Per favore, digita {0} per confermare" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Si prega di digitare <0>{0} per confermare." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Modello CSV preformattato con dati di esempio." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Preferenze" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Anteprima" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Anteprima e configurazione del modello." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Privato" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "I modelli privati possono essere modificati e visualizzati solo da te." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Profilo" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "Il profilo è attualmente <0>nascosto." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "Il profilo è attualmente <0>visibile." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Profilo aggiornato" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Pubblico" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Profilo pubblico" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "URL del profilo pubblico" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Nome utente del profilo pubblico" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "I modelli pubblici sono collegati al tuo profilo pubblico. Ogni modifica ai modelli pubblici apparirà anche nel tuo profilo pubblico." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "Radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Valori radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Sola lettura" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Campo di sola lettura" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Leggi l'intera <0>divulgazione della firma." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Pronto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Motivo" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "" -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Motivo del rifiuto: {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "Il motivo deve essere inferiore a 500 caratteri" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "È richiesta una riautenticazione per firmare questo campo" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Riceve copia" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Attività recenti" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Documenti recenti" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Destinatario" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Autenticazione azione destinatario" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "Email destinatario rimosso" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "Email firmato dal destinatario" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "Email richiesta firma destinatario" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Destinatario aggiornato" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Destinatari" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Metriche dei destinatari" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "I destinatari conserveranno comunque la loro copia del documento" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Codice di recupero copiato" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Codici di recupero" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Rosso" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "URL di reindirizzamento" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Registrazione avvenuta con successo" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Rifiuta Documento" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Rifiutato" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Rifiuto confermato" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Motivo del rifiuto: {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "Ricordi la tua password? <0>Accedi" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Promemoria: {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Promemoria: {0} ti ha invitato a {recipientActionVerb} un documento" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Promemoria: per favore {recipientActionVerb} questo documento" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Promemoria: per favore {recipientActionVerb} il tuo documento" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Rimuovi" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Rimuovere l'email del team" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Rimuovere il membro del team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Rinnova: {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Ripeti Password" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Richiedi trasferimento" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Campo richiesto" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Risigilla documento" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Reinvia" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Reinvia email di conferma" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Reinvia verifica" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Ripristina" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "Email di reset inviato" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Reimposta password" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Reimpostazione della password..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Risolvi" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Risolvere il pagamento" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Stai tranquillo, il tuo documento è strettamente confidenziale e non sarà mai condiviso. Solo la tua esperienza di firma sarà evidenziata. Condividi la tua carta di firma personalizzata per mostrare la tua firma!" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Conservazione dei documenti" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Riprova" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Ritorna" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Torna al cruscotto" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Torna alla home" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Torna a accedere" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Revoca" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Revoca l'accesso" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Ruolo" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Ruoli" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Righe per pagina" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Salva" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Salva modello" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Cerca" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Cerca per titolo del documento" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Cerca per nome o email" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Cerca documenti..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Cerca lingue..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Segreto" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Sicurezza" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Attività di sicurezza" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Seleziona" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Seleziona un team" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Seleziona un team a cui spostare questo documento. Questa azione non può essere annullata." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Seleziona un team a cui spostare questo modello. Questa azione non può essere annullata." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Seleziona un modello che desideri mostrare nel tuo profilo pubblico" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Seleziona un modello che desideri mostrare nel profilo pubblico del tuo team" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Seleziona un'opzione" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Seleziona almeno" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Seleziona opzione predefinita" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Seleziona una chiave di accesso" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Invia" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Invia email di conferma" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Invia documento" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Invia documento" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "Invia email documento completato" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "Invia email documento completato al proprietario" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "Invia email documento eliminato" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "Invia email documento in sospeso" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Invia documenti a nome del team utilizzando l'indirizzo email" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Invia documenti ai destinatari immediatamente" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Invia per conto del team" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "Invia email destinatario rimosso" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "Invia email firmato dal destinatario" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "Invia email richiesta firma destinatario" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Invia promemoria" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Mittente" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Invio dell'email di ripristino..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Invio..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Inviato" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Imposta una password" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Impostazioni" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Configurazione" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Condividi" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Condividi carta firma" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Condividi scheda di firma" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Condividi il link" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "Condividi la tua esperienza di firma!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Mostra" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Mostra informazioni aggiuntive" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Mostra impostazioni avanzate" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Mostra modelli nel tuo profilo pubblico per il tuo pubblico da firmare e iniziare rapidamente" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Mostra modelli nel profilo pubblico della tua squadra per il tuo pubblico da firmare e iniziare rapidamente" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Firma" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Firma come {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Firma come<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Firma il documento" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Firma documento" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Campo di firma" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Firma qui" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Accedi" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Accedi al tuo account" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Disconnetti" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Firma il documento per completare il processo." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "Registrati" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "Iscriviti con Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "Iscriviti con OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "ID Firma" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "La firma è troppo piccola. Si prega di fornire una firma più completa." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Firme raccolte" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Le firme appariranno una volta completato il documento" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Firmato" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Firmatario" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Eventi del Firmatario" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Firmatari" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "I firmatari devono avere email uniche" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Certificato di Firma" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Certificato di firma fornito da" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "Firma completata!" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Accesso in corso..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Link di firma" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "I link di firma sono stati generati per questo documento." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Volume di firma" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Le iscrizioni sono disabilitate." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Dal {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Banner del sito" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Impostazioni del sito" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Alcuni firmatari non hanno un campo firma assegnato. Assegna almeno 1 campo di firma a ciascun firmatario prima di procedere." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Qualcosa è andato storto" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Qualcosa è andato storto durante il tentativo di trasferimento della proprietà del team <0>{0} a te. Riprova più tardi o contatta il supporto." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Qualcosa è andato storto durante il tentativo di verifica del tuo indirizzo e-mail per <0>{0}. Riprova più tardi." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Qualcosa è andato storto durante il caricamento del documento." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Qualcosa è andato storto durante il caricamento delle tue chiavi di accesso." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Qualcosa è andato storto durante l'invio dell'e-mail di conferma." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Qualcosa è andato storto durante l'aggiornamento dell'abbonamento di fatturazione del team, contatta il supporto." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "Qualcosa è andato storto!" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Qualcosa è andato storto." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Qualcosa è andato storto. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Qualcosa è andato storto. Riprova o contatta il supporto." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Siamo spiacenti, non siamo riusciti a scaricare i log di verifica. Riprova più tardi." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Siamo spiacenti, non siamo riusciti a scaricare il certificato. Riprova più tardi." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Fonte" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Statistiche" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Stato" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Passo <0>{step} di {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Oggetto <0>(Opzionale)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Invia" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "" -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Abbonamento" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Abbonamenti" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Successo" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Chiave di accesso creata con successo" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Creati con successo: {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Sommario:" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "Requisiti di sistema" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "Tema del sistema" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Squadra" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "Il team \"{0}\" è stato eliminato su Documenso" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Acquisto squadra" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "Email della squadra" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "Email del team" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "Email del team già verificato!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "L'email del team è stato rimosso" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "L'email del team è stata revocata per {0}" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Email del team rimosso" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Email del team rimosso per {teamName} su Documenso" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Verifica email del team" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "Email del team verificato!" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "L'email del team è stato aggiornato." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Invito del team" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Gli inviti del team sono stati inviati." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Membro del team" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Nome del team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Solo team" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "I modelli solo per il team non sono collegati da nessuna parte e sono visibili solo al tuo team." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Trasferimento di proprietà del team" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "Trasferimento della proprietà del team già completato!" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "Proprietà del team trasferita!" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Preferenze del team" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Profilo pubblico del team" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Impostazioni del team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Impostazioni del team" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Modelli del team" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Trasferimento del team in corso" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Richiesta di trasferimento del team scaduta" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "URL del team" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Team" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Team limitati" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Modello" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Modello eliminato" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Documento modello caricato" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Modello duplicato" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "Il modello è stato rimosso dal tuo profilo pubblico." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "Il modello è stato aggiornato." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Modello spostato" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Modello non trovato o già associato a un team." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Modello salvato" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Titolo del modello" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Modelli" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "I modelli ti consentono di generare rapidamente documenti con destinatari e campi precompilati." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Testo" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Allineamento del testo" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Colore del testo" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Grazie per aver utilizzato Documenso per eseguire la firma elettronica dei tuoi documenti. Lo scopo di questa divulgazione è informarti sul processo, la legalità e i tuoi diritti riguardanti l'uso delle firme elettroniche sulla nostra piattaforma. Optando per l'utilizzo di una firma elettronica, accetti i termini e le condizioni delineati di seguito." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "Va bene, succede! Fai clic sul pulsante qui sotto per reimpostare la tua password." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "L'account è stato eliminato con successo." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "L'account è stato disabilitato con successo." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "L'account è stato abilitato con successo." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "Autenticazione richiesta per i destinatari per firmare i campi" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "Autenticazione richiesta per i destinatari per firmare il campo della firma." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "Autenticazione richiesta per i destinatari per visualizzare il documento." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "Il contenuto da mostrare nel banner, HTML è consentito" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "Il link diretto è stato copiato negli appunti" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "Il documento è stato spostato con successo al team selezionato." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "Il documento è ora completato, si prega di seguire eventuali istruzioni fornite nell'applicazione principale." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "Il proprietario del documento è stato informato di questo rifiuto. Non sono necessarie ulteriori azioni da parte tua in questo momento. Il proprietario del documento potrebbe contattarti per qualsiasi domanda riguardante questo rifiuto." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "Il proprietario del documento è stato informato della tua decisione. Potrebbe contattarti per ulteriori istruzioni, se necessario." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "Il documento è stato creato ma non è stato possibile inviarlo ai destinatari." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "Il documento verrà nascosto dal tuo account" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "Il documento sarà immediatamente inviato ai destinatari se selezionato." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "Il nome del documento" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "Gli eventi che scateneranno un webhook da inviare al tuo URL." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "Si sono verificati i seguenti errori:" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "Il seguente team è stato eliminato dal suo proprietario. Non potrai più accedere a questo team e ai suoi documenti" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "Il seguente team è stato eliminato da te" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "La proprietà del team <0>{0} è stata trasferita con successo a te." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "La pagina che stai cercando è stata spostata, rimossa, rinominata o potrebbe non essere mai esistita." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "La password che hai inserito non è corretta. Per favore riprova." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "Il link del profilo è stato copiato negli appunti" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "Il profilo che stai cercando non è stato trovato." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "La descrizione pubblica che verrà visualizzata con questo modello" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "Il nome pubblico per il tuo modello" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "Il motivo fornito per l'eliminazione è il seguente:" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "Il destinatario è stato aggiornato con successo" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "Il destinatario non è tenuto a prendere alcuna azione e riceverà una copia del documento una volta completato." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "Il destinatario è tenuto ad approvare il documento affinché sia completato." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "Il destinatario è tenuto a firmare il documento affinché sia completato." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "Il destinatario è tenuto a visualizzare il documento affinché sia completato." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Il membro del team selezionato riceverà un'email che dovrà accettare prima che il team venga trasferito" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "Il link di condivisione non può essere creato in questo momento. Per favore riprova." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "Il link di condivisione è stato copiato negli appunti." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "L'email del firmatario" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "Il nome del firmatario" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "Il link di firma è stato copiato negli appunti." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "Il banner del sito è un messaggio che viene mostrato in cima al sito. Può essere utilizzato per visualizzare informazioni importanti ai tuoi utenti." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "L'email del team <0>{teamEmail} è stata rimossa dal seguente team" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "L'invito al trasferimento del team è stato eliminato con successo." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "La richiesta di trasferimento del team a <0>{0} è scaduta." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." msgstr "" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "Il modello è stato spostato con successo al team selezionato." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "Il modello sarà rimosso dal tuo profilo" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "Il token è stato copiato negli appunti." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "Il token è stato eliminato con successo." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "Il token che hai usato per reimpostare la tua password è scaduto o non è mai esistito. Se hai ancora dimenticato la tua password, richiedi un nuovo link per la reimpostazione." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "L'URL per Documenso per inviare eventi webhook." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "Il webhook è stato eliminato con successo." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "Il webhook è stato aggiornato con successo." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "Il webhook è stato creato con successo." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "Non ci sono bozze attive al momento attuale. Puoi caricare un documento per iniziare a redigere." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "Non ci sono ancora documenti completati. I documenti che hai creato o ricevuto appariranno qui una volta completati." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "Hanno il permesso per tuo conto di:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "" -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "Questa azione non è reversibile. Si prega di essere certi." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "Questa azione è reversibile, ma fai attenzione poiché l'account potrebbe essere influenzato permanentemente (ad es. le impostazioni e i contenuti potrebbero non essere ripristinati correttamente)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "Questo può essere sovrascritto impostando i requisiti di autenticazione direttamente su ciascun destinatario nel passaggio successivo." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "Questo documento non può essere recuperato, se vuoi contestare la ragione per i documenti futuri, contatta il supporto." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "Questo documento non può essere eliminato in questo momento. Riprova." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "Questo documento non può essere duplicato in questo momento. Riprova." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "Questo documento non può essere rinviato in questo momento. Riprova." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "Questo documento è già stato inviato a questo destinatario. Non puoi più modificare questo destinatario." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "Questo documento è stato annullato dal proprietario e non è più disponibile per la firma di altri." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "Questo documento è stato annullato dal proprietario." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "Questo documento è stato firmato da tutti i destinatari" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "Questo documento è attualmente una bozza e non è stato inviato" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "Questo documento è protetto da password. Inserisci la password per visualizzare il documento." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "Questo documento è stato creato da te o un membro del team utilizzando il modello sopra." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "Questo documento è stato creato utilizzando un link diretto." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "Questo documento è stato inviato utilizzando <0>Documenso." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "Questa email conferma che hai rifiutato il documento <0>\"{documentName}\" inviato da {documentOwnerName}." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "Questa email è già in uso da un altro team." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "Questa email viene inviata al proprietario del documento quando un destinatario ha firmato il documento." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "Questa email viene inviata al destinatario se viene rimosso da un documento in attesa." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "Questa email viene inviata al destinatario chiedendo loro di firmare il documento." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "Questa email sarà inviata al destinatario che ha appena firmato il documento, se ci sono ancora altri destinatari che non hanno ancora firmato." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "Questo campo non può essere modificato o eliminato. Quando condividi il link diretto di questo modello o lo aggiungi al tuo profilo pubblico, chiunque vi acceda può inserire il proprio nome e email, e compilare i campi assegnati." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "È così che il documento raggiungerà i destinatari una volta pronto per essere firmato." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "Questo link è invalido o è scaduto. Si prega di contattare il tuo team per inviare nuovamente una richiesta di trasferimento." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "Questo link è invalido o è scaduto. Si prega di contattare il tuo team per inviare nuovamente una verifica." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "Questa chiave d'accesso è già stata registrata." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "Questa chiave di accesso non è configurata per questa applicazione. Effettua il login e aggiungine una nelle impostazioni utente." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "Questo prezzo include almeno 5 posti." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "Questo destinatario non può più essere modificato poiché ha firmato un campo o completato il documento." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "Questa sessione è scaduta. Per favore prova di nuovo." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "Questo firmatario ha già firmato il documento." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "Questo team e tutti i dati associati, escluse le fatture di fatturazione, verranno eliminati definitivamente." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "Questo modello non può essere eliminato in questo momento. Per favore prova di nuovo." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "Questo token è invalido o è scaduto. Non è necessaria alcuna azione." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "Questo token è invalido o è scaduto. Si prega di contattare il vostro team per un nuovo invito." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "Questo URL è già in uso." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "Questo nome utente è già stato preso" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "Questo sarà inviato a tutti i destinatari se un documento in attesa è stato eliminato." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "Questo sarà inviato a tutti i destinatari una volta che il documento è stato completamente completato." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "Questo sarà inviato al proprietario del documento una volta che il documento è stato completamente completato." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "Questo sovrascriverà qualsiasi impostazione globale." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Ora" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Fuso orario" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Fuso orario" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Titolo" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "Per accettare questo invito devi creare un account." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "Per cambiare la email devi rimuovere e aggiungere un nuovo indirizzo email." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "Per confermare, inserisci l'indirizzo email dell'account <0/>({0})." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "Per confermare, per favore inserisci il motivo" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "Per rifiutare questo invito devi creare un account." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "Per abilitare l'autenticazione a due fattori, scansiona il seguente codice QR utilizzando la tua app di autenticazione." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "Per accedere al tuo account, conferma il tuo indirizzo email facendo clic sul link di conferma dalla tua casella di posta." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "Per contrassegnare questo documento come visualizzato, è necessario essere connessi come <0>{0}" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "Per procedere ulteriormente, si prega di impostare almeno un valore per il campo {0}." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "Per utilizzare il nostro servizio di firma elettronica, devi avere accesso a:" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Per visualizzare questo documento devi essere connesso al tuo account, per favore accedi per continuare." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Attiva l'interruttore per nascondere il tuo profilo al pubblico." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Attiva l'interruttore per mostrare il tuo profilo al pubblico." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Token" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token copiato negli appunti" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token creato" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token eliminato" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "Il token non ha una data di scadenza" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Data di scadenza del token" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "Il token è scaduto. Per favore riprova." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Nome del token" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Totale documenti" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Totale destinatari" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Righe totali elaborate: {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Totale firmatari che si sono iscritti" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Totale utenti" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "trasferisci {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Trasferisci la proprietà di questo team a un membro del team selezionato." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Trasferisci il team" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Trasferisci la proprietà del team a un altro membro del team." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Trigger" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Autenticazione a due fattori" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "I codici di recupero dell'autenticazione a due fattori sono utilizzati per accedere al tuo account nel caso in cui perdi l'accesso alla tua app di autenticazione." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Autenticazione a due fattori" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Autenticazione a due fattori disattivata" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Autenticazione a due fattori attivata" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "L'autenticazione a due fattori è stata disattivata per il tuo account. Non sarà più necessario inserire un codice dalla tua app di autenticazione quando accedi." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Ri-autenticazione a due fattori" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Tipo" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Digita un comando o cerca..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "Le firme digitate non sono consentite. Si prega di disegnare la propria firma." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "Oh no! Sembra che ti manchi un token" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "Impossibile cambiare la lingua in questo momento. Per favore riprova più tardi." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "Impossibile copiare il codice di recupero" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "Impossibile copiare il token" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "Impossibile creare l'accesso diretto al modello. Si prega di riprovare più tardi." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "Impossibile rifiutare questo invito al team in questo momento." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "Impossibile eliminare l'invito. Si prega di riprovare." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "Impossibile eliminare il team" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "Impossibile disabilitare l'autenticazione a due fattori" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "Impossibile unirsi a questo team in questo momento." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "Impossibile caricare la cronologia del documento" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "Impossibile caricare i documenti" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "Impossibile caricare i modelli del profilo pubblico in questo momento" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "Impossibile rimuovere la verifica e-mail in questo momento. Si prega di riprovare." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "Impossibile rimuovere l'e-mail del team in questo momento. Si prega di riprovare." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "Impossibile reinviare l'invito. Si prega di riprovare." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "Impossibile reinviare la verifica in questo momento. Si prega di riprovare." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "Impossibile reimpostare la password" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "Impossibile configurare l'autenticazione a due fattori" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "Impossibile accedere" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "Non autorizzato" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Incompleto" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Sconosciuto" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "Non pagato" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Aggiorna" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Aggiorna banner" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Aggiorna chiave d'accesso" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Aggiorna password" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Aggiorna profilo" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Aggiorna destinatario" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Aggiorna ruolo" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Aggiorna team" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Aggiorna email del team" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Aggiorna membro del team" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Aggiorna il ruolo e aggiungi campi come richiesto per il destinatario diretto. L'individuo che utilizza il link diretto firmerà il documento come destinatario diretto." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Aggiorna utente" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Aggiorna webhook" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Aggiornamento della password..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Aggiornamento del profilo..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Aggiornamento delle tue informazioni" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Aggiorna" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Carica un file CSV per creare più documenti da questo modello. Ogni riga rappresenta un documento con i dettagli del destinatario." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Carica un documento personalizzato da utilizzare al posto del documento predefinito del modello" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Carica e elabora" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Carica Avatar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "Carica CSV" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Carica documento personalizzato" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Carica Firma" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Carica Documento Modello" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Carica il tuo logo aziendale (max 5MB, JPG, PNG o WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Caricato da" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "Il file caricato è troppo grande" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "Il file caricato è troppo piccolo" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "Il file caricato non è di un tipo di file consentito" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Utilizza" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Usa Authenticator" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Usa il Codice di Backup" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Usa Modello" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "Utente" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "L'utente non ha password." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "ID Utente" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "Utente non trovato." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "I profili utente sono qui!" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "Impostazioni utente" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "Un utente con questo email esiste già. Si prega di utilizzare un indirizzo email diverso." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "Il nome utente può contenere solo caratteri alfanumerici e trattini." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Utenti" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Validazione" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Valore" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Email di Verifica Inviata" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Email di verifica inviata con successo." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Verifica Ora" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Verifica il tuo indirizzo email" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Verifica il tuo indirizzo email per sbloccare tutte le funzionalità." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Verifica il tuo email per caricare documenti." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Verifica il tuo indirizzo email del team" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Cronologia delle versioni" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "Visualizza" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "Visualizza attività" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "Visualizza tutti i documenti inviati a o da questo indirizzo email" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "Visualizza tutti i documenti inviati al tuo account" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "Visualizza tutte le attività di sicurezza recenti relative al tuo account." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "Visualizza tutti i documenti correlati" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "Visualizza tutte le attività di sicurezza relative al tuo account." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "Visualizza Codici" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "Visualizza documento" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "Visualizza documento" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "Visualizza documenti associati a questa email" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "Visualizza inviti" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "Vedi di più" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "Visualizza Documento Originale" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "Visualizza piani" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "Visualizza Codici di Recupero" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "Visualizza squadre" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Visualizzato" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Visualizzatore" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Visualizzatori" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Visualizzazione" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "In attesa" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "In attesa di altri" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "In attesa che altri completino la firma." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "In attesa degli altri per firmare" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "In attesa del tuo turno" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "Vuoi inviare link di firma eleganti come questo? <0>Scopri Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "Vuoi il tuo profilo pubblico?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "Non siamo in grado di procedere al portale di fatturazione in questo momento. Per favore riprova, o contatta l'assistenza." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "Non siamo in grado di rimuovere questa chiave d'accesso al momento. Per favore riprova più tardi." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "Non siamo in grado di aggiornare questa chiave d'accesso al momento. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "Abbiamo riscontrato un errore durante la rimozione del link diretto al modello. Per favore riprova più tardi." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "Abbiamo riscontrato un errore durante l'aggiornamento del webhook. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto mentre tentavamo di aggiungere questa email. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto mentre tentavamo di creare un team. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di eliminarlo. Per favore riprova più tardi." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto mentre tentavamo di eliminare il team in sospeso. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto mentre tentavamo di eliminare questo team. Per favore riprova più tardi." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di eliminare questo token. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di eliminare il tuo account. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di invitare membri del team. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di abbandonare questo team. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di rimuovere questo modello dal tuo profilo. Si prega di riprovare più tardi." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di rimuovere questo trasferimento. Si prega di riprovare o contattare il supporto." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di rimuovere questo utente. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di richiedere un trasferimento di questo team. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di reimpostare la tua password. Si prega di riprovare più tardi." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di revocare l'accesso. Si prega di riprovare o contattare il supporto." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di accedere. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di registrarti. Si prega di riprovare più tardi." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il banner. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il modello. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare questo membro del team. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare la tua password. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il tuo profilo pubblico. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il tuo team. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare l'email del team. Si prega di riprovare più tardi." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Abbiamo riscontrato un errore sconosciuto durante il tentativo di aggiornare il tuo profilo. Si prega di riprovare più tardi." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "Abbiamo inviato un'email di conferma per la verifica." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "Abbiamo bisogno di un nome utente per creare il tuo profilo" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "Abbiamo bisogno della tua firma per firmare i documenti" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "Non siamo riusciti a copiare il token negli appunti. Si prega di riprovare." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "Non siamo riusciti a copiare il tuo codice di recupero negli appunti. Si prega di riprovare." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "Non siamo riusciti a creare una sessione di pagamento. Si prega di riprovare o contattare il supporto" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "Non siamo riusciti a creare il tuo account. Si prega di rivedere le informazioni fornite e riprovare." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "Non siamo riusciti a disabilitare l'autenticazione a due fattori per il tuo account. Assicurati di aver inserito correttamente la password e il codice di backup e riprova." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "Non siamo riusciti a disconnetterti in questo momento." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "Non siamo riusciti a impostare il tuo profilo pubblico come pubblico. Per favore riprova." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "Non siamo riusciti a impostare l'autenticazione a due fattori per il tuo account. Assicurati di aver inserito correttamente il tuo codice e riprova." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "Non siamo riusciti a inviare questo documento in questo momento. Per favore riprova più tardi." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "Non siamo riusciti ad aggiornare le tue preferenze di branding al momento, riprova più tardi" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "Non siamo riusciti ad aggiornare le tue preferenze sui documenti al momento, riprova più tardi" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "Non siamo riusciti a verificare i tuoi dati. Per favore riprova o contatta il supporto" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Non siamo riusciti a verificare la tua email. Se la tua email non è già verificata, riprova." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "Genereremo link di firma con te, che potrai inviare ai destinatari tramite il tuo metodo preferito." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "Genereremo link di firma per te, che potrai inviare ai destinatari tramite il metodo di tua scelta." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "Non invieremo nulla per notificare i destinatari." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "Siamo tutti vuoti" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "Stiamo ancora aspettando che altri firmatari firmino questo documento.<0/>Ti avviseremo non appena sarà pronto." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "Abbiamo cambiato la tua password come richiesto. Ora puoi accedere con la tua nuova password." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "Abbiamo inviato un'email di conferma a <0>{email}. Controlla la tua casella di posta e clicca sul link nell'email per verificare il tuo account." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook creato" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook eliminato" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook aggiornato" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "URL del webhook" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhook" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Benvenuto" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Bentornato, siamo fortunati ad averti." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "Benvenuto su Documenso!" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "Stavi provando a modificare questo documento invece?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "Quando fai clic su continua, ti verrà chiesto di aggiungere il primo autenticatore disponibile sul tuo sistema." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "Quando firmi un documento, possiamo automaticamente compilare e firmare i seguenti campi utilizzando le informazioni già fornite. Puoi anche firmare manualmente o rimuovere eventuali campi firmati automaticamente in seguito, se lo desideri." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Quando utilizzi la nostra piattaforma per apporre la tua firma elettronica sui documenti, acconsenti a farlo ai sensi della Legge sulle firme elettroniche nel commercio globale e nazionale (E-Sign Act) e altre leggi applicabili. Questa azione indica il tuo consenso a utilizzare mezzi elettronici per firmare documenti e ricevere notifiche." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Mentre aspetti che lo facciano, puoi creare il tuo account Documenso e iniziare a firmare documenti subito." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "Chi vuoi ricordare?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Ritiro del consenso" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Scrivi della squadra" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Scrivi di te stesso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Annuale" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "Tu" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "Stai per eliminare <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "Stai per eliminare la seguente email del team da <0>{teamName}." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "Stai per nascondere <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "Stai per abbandonare il seguente team." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "Stai per rimuovere il seguente utente da <0>{teamName}." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "Stai per revocare l'accesso per il team <0>{0} ({1}) per utilizzare la tua email." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "Stai per inviare questo documento ai destinatari. Sei sicuro di voler continuare?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "Stai attualmente aggiornando <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "Stai attualmente aggiornando la chiave d'accesso <0>{passkeyName}." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "Non sei un membro di questo team." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "Non sei autorizzato a eliminare questo utente." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "Non sei autorizzato a disabilitare questo utente." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "Non sei autorizzato ad abilitare questo utente." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "Puoi anche copiare e incollare questo link nel tuo browser: {confirmationLink} (il link scade tra 1 ora)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "Puoi scegliere di abilitare o disabilitare il tuo profilo per la visualizzazione pubblica." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "Puoi scegliere di abilitare o disabilitare il profilo del tuo team per la visualizzazione pubblica." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "Puoi copiare e condividere questi link con i destinatari affinché possano agire sul documento." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "Puoi revocare l'accesso in qualsiasi momento nelle impostazioni del tuo team su Documenso <0>qui." -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "Puoi aggiornare l'URL del profilo aggiornando l'URL del team nella pagina delle impostazioni generali." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "Puoi utilizzare le seguenti variabili nel tuo messaggio:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "Puoi visualizzare i documenti associati a questa email e utilizzare questa identità quando invii documenti." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "Puoi visualizzare i documenti creati nel tuo dashboard nella sezione \"Documenti creati dal modello\"." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "Puoi visualizzare il documento e il suo stato cliccando sul pulsante qui sotto." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "Non puoi avere più di {MAXIMUM_PASSKEYS} passkey." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "Non puoi modificare un membro del team che ha un ruolo superiore al tuo." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "Non puoi caricare documenti in questo momento." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "Non puoi caricare PDF crittografati" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "" -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "Non hai il permesso di creare un token per questo team" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "Non hai più bisogno di firmarlo." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "Hai accettato un invito da <0>{0} per unirti al loro team." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "Hai già completato il trasferimento di proprietà per <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "Hai già verificato il tuo indirizzo email per <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "Sei stato invitato da <0>{0} a unirti al loro team." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "Sei stato invitato a unirti a {0} su Documenso" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "Sei stato invitato a unirti al seguente team" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "Sei stato rimosso da un documento" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "Ti è stato richiesto di prendere possesso del team {0} su Documenso" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "Hai rifiutato l'invito da <0>{0} per unirti al loro team." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "Hai avviato il documento {0} che richiede che tu lo {recipientActionVerb}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "Non hai ancora webhook. I tuoi webhook verranno visualizzati qui una volta creati." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "Non hai ancora creato alcun modello. Per creare un modello, caricane uno." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "Non hai ancora creato o ricevuto documenti. Per creare un documento caricane uno." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "Hai raggiunto il limite massimo di {0} modelli diretti. <0>Aggiorna il tuo account per continuare!" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "Hai raggiunto il limite dei documenti per questo mese. Si prega di aggiornare il proprio piano." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "Hai raggiunto il tuo limite di documenti." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "Hai raggiunto il tuo limite di documenti. <0>Aggiorna il tuo account per continuare!" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "Hai rifiutato il documento '{documentName}'" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "Hai rifiutato questo documento" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "Hai firmato “{documentName}”" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "Hai lasciato con successo questo team." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "Ti sei registrato con successo. Verifica il tuo account cliccando sul link ricevuto via email." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "Hai rimosso con successo questo utente dal team." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "Hai revocato con successo l'accesso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "Hai il diritto di ritirare il tuo consenso all'uso delle firme elettroniche in qualsiasi momento prima di completare il processo di firma. Per ritirare il tuo consenso, contatta il mittente del documento. Nel caso in cui non riesci a contattare il mittente, puoi contattare <0>{SUPPORT_EMAIL} per assistenza. Sii consapevole che il ritiro del consenso potrebbe ritardare o fermare il completamento della transazione o del servizio correlato." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "Hai aggiornato {teamMemberName}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "Hai verificato il tuo indirizzo email per <0>{0}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "Devi essere un amministratore di questo team per gestire la fatturazione." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "Devi inserire '{deleteMessage}' per procedere" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "Devi avere almeno un altro membro del team per trasferire la proprietà." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "Devi impostare un'URL del profilo prima di abilitare il tuo profilo pubblico." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "Devi essere loggato come <0>{email} per visualizzare questa pagina." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "Devi essere loggato per visualizzare questa pagina." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "Devi configurare l'autenticazione a due fattori per contrassegnare questo documento come visualizzato." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "Riceverai una notifica e potrai configurare il tuo profilo pubblico su Documenso quando lanceremo la funzionalità." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "Ora ti verrà richiesto di inserire un codice dalla tua app di autenticazione durante l'accesso." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "Riceverai una copia del documento firmato via email una volta che tutti hanno firmato." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Il tuo account è stato eliminato con successo." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Il tuo avatar è stato aggiornato correttamente." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Il tuo banner è stato aggiornato correttamente." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "URL del sito web del tuo marchio" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Le tue preferenze di branding sono state aggiornate" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Il tuo invio massivo è stato avviato. Riceverai una notifica via email al completamento." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "La tua operazione di invio massivo per il modello \"{templateName}\" è stata completata." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "I tuoi modelli di firma diretta" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Il tuo documento non è stato caricato." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Il tuo documento è stato creato con successo dal modello." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "Il tuo documento è stato eliminato da un amministratore!" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Il tuo documento è stato reinviato correttamente." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Il tuo documento è stato inviato correttamente." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Il tuo documento è stato duplicato correttamente." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Il tuo documento è stato caricato correttamente." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Il tuo documento è stato caricato correttamente. Sarai reindirizzato alla pagina del modello." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Le tue preferenze sui documenti sono state aggiornate" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "I tuoi documenti" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "La tua email è stata confermata con successo! Ora puoi utilizzare tutte le funzionalità di Documenso." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "La tua email è attualmente utilizzata dal team <0>{0} ({1})." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "I tuoi token esistenti" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "La tua nuova password non può essere la stessa della vecchia password." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "La tua password è stata aggiornata con successo." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "La tua password è stata aggiornata." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Il pagamento per i team è in ritardo. Si prega di effettuare il pagamento per evitare interruzioni del servizio." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Il tuo profilo è stato aggiornato correttamente." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Il tuo profilo è stato aggiornato." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Il tuo profilo pubblico è stato aggiornato." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Il tuo codice di recupero è stato copiato negli appunti." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "I tuoi codici di recupero sono elencati di seguito. Si prega di conservarli in un luogo sicuro." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Il tuo abbonamento è attualmente attivo." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Il tuo team è stato creato." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Il tuo team è stato eliminato" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Il tuo team è stato eliminato correttamente." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Il tuo team è stato aggiornato correttamente." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Il tuo modello è stato duplicato correttamente." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Il tuo modello è stato eliminato correttamente." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Il tuo modello sarà duplicato." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "I tuoi modelli sono stati salvati con successo." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "Il tuo token è scaduto!" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "Il tuo token è stato creato con successo! Assicurati di copiarlo perché non potrai più vederlo!" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "I tuoi token verranno mostrati qui una volta creati." diff --git a/packages/lib/translations/pl/web.po b/packages/lib/translations/pl/web.po index 5c90fd7f9..6536e758a 100644 --- a/packages/lib/translations/pl/web.po +++ b/packages/lib/translations/pl/web.po @@ -18,7164 +18,7143 @@ msgstr "" "X-Crowdin-File: web.po\n" "X-Crowdin-File-ID: 8\n" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid " Enable direct link signing" msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:171 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid " The events that will trigger a webhook to be sent to your URL." msgstr "" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:225 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{0}\" has invited you to sign \"example document\"." msgstr "Użytkownik \"{0}\" zaprosił Cię do podpisania \"przykładowego dokumentu\"." #. placeholder {0}: field.customText #. placeholder {1}: timezone || '' -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:65 +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx msgid "\"{0}\" will appear on the document as it has a timezone of \"{1}\"." msgstr "" -#: packages/email/template-components/template-document-super-delete.tsx:27 +#: packages/email/template-components/template-document-super-delete.tsx msgid "\"{documentName}\" has been deleted by an admin." msgstr "\"{documentName}\" został usunięty przez administratora." -#: packages/email/template-components/template-document-pending.tsx:37 +#: packages/email/template-components/template-document-pending.tsx msgid "“{documentName}” has been signed" msgstr "„{documentName}” został podpisany" -#: packages/email/template-components/template-document-completed.tsx:41 +#: packages/email/template-components/template-document-completed.tsx msgid "“{documentName}” was signed by all signers" msgstr "„{documentName}” został podpisany przez wszystkich sygnatariuszy" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "\"{documentTitle}\" has been successfully deleted" msgstr "\"{documentTitle}\" został pomyślnie usunięty" #. placeholder {0}: team.name -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:220 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "\"{placeholderEmail}\" on behalf of \"{0}\" has invited you to sign \"example document\"." msgstr "\"{placeholderEmail}\" w imieniu \"{0}\" zaprosił Cię do podpisania \"przykładowego dokumentu\"." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:273 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:372 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "(You)" msgstr "" #. placeholder {0}: Math.abs(charactersRemaining) -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:342 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{0, plural, one {(1 character over)} other {(# characters over)}}" msgstr "{0, plural, one {(1 znak przekroczony)} few {(# znaki przekroczone)} many {(# znaków przekroczonych)} other {(# znaków przekroczonych)}}" #. placeholder {0}: Math.abs(remaningLength) -#: apps/remix/app/components/forms/public-profile-form.tsx:236 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:392 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}" msgstr "{0, plural, one {# znak przekroczony} few {# znaki przekroczone} many {# znaków przekroczonych} other {# znaków przekroczonych}}" #. placeholder {0}: template.recipients.length -#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx:99 +#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx msgid "{0, plural, one {# recipient} other {# recipients}}" msgstr "{0, plural, one {# odbiorca} few {# odbiorców} many {# odbiorców} other {# odbiorców}}" #. placeholder {0}: row.original.quantity -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:66 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "{0, plural, one {# Seat} other {# Seats}}" msgstr "{0, plural, one {# miejsce} few {# miejsca} many {# miejsc} other {# miejsc}}" #. placeholder {0}: data.length -#: apps/remix/app/components/general/teams/team-invitations.tsx:36 -#: apps/remix/app/components/general/teams/team-invitations.tsx:65 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "{0, plural, one {<0>You have <1>1 pending team invitation} other {<2>You have <3># pending team invitations}}" msgstr "{0, plural, one {<0>Masz <1>1 oczekujące zaproszenie do zespołu} few {<2>Masz <3># oczekujące zaproszenia do zespołu} many {<2>Masz <3># oczekujących zaproszeń do zespołu} other {<2>Masz <3># oczekujących zaproszeń do zespołu}}" #. placeholder {0}: autoSignableFields.filter((f) => f.type === fieldType).length -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0, plural, one {1 matching field} other {# matching fields}}" msgstr "{0, plural, one {1 pasujące pole} few {# pasujące pola} many {# pasujących pól} other {# pasujących pól}}" #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:122 +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx msgid "{0, plural, one {1 Recipient} other {# Recipients}}" msgstr "{0, plural, one {1 odbiorca} few {# odbiorców} many {# odbiorców} other {# odbiorców}}" #. placeholder {0}: pendingRecipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:232 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0, plural, one {Waiting on 1 recipient} other {Waiting on # recipients}}" msgstr "{0, plural, one {Czekam na 1 odbiorcę} few {Czekam na # odbiorców} many {Czekam na # odbiorców} other {Czekam na # odbiorców}}" #. placeholder {0}: selectedValues.length -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:64 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx msgid "{0, plural, zero {Select values} other {# selected...}}" msgstr "{0, plural, zero {Wybierz wartości} one {# wybrana...} few {# wybrane...} many {# wybranych...} other {# wybranych...}}" #. placeholder {0}: _(FRIENDLY_FIELD_TYPE[fieldType as FieldType]) -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:185 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "{0}" msgstr "{0}" #. placeholder {0}: team.name -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:246 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{0} direct signing templates" msgstr "{0} bezpośrednich szablonów podpisu" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:122 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "{0} zaprosił cię do {recipientActionVerb} dokument „{1}”." #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:113 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{0} invited you to {recipientActionVerb} a document" msgstr "{0} zaprosił Cię do {recipientActionVerb} dokument" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-join.tsx:62 +#: packages/email/templates/team-join.tsx msgid "{0} joined the team {teamName} on Documenso" msgstr "{0} dołączył do zespołu {teamName} na Documenso" #. placeholder {0}: memberName || memberEmail -#: packages/email/templates/team-leave.tsx:62 +#: packages/email/templates/team-leave.tsx msgid "{0} left the team {teamName} on Documenso" msgstr "{0} opuścił zespół {teamName} na Documenso" #. placeholder {0}: remaining.documents #. placeholder {1}: quota.documents -#: apps/remix/app/components/general/document/document-upload.tsx:137 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "{0} of {1} documents remaining this month." msgstr "{0} z {1} dokumentów pozostałych w tym miesiącu." #. placeholder {0}: table.getFilteredSelectedRowModel().rows.length #. placeholder {1}: table.getFilteredRowModel().rows.length -#: packages/ui/primitives/data-table-pagination.tsx:30 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{0} of {1} row(s) selected." msgstr "{0} z {1} wybranych wierszy." #. placeholder {0}: user.name || user.email #. placeholder {1}: document.team.name #. placeholder {2}: document.title -#: packages/lib/server-only/document/resend-document.tsx:137 +#: packages/lib/server-only/document/resend-document.tsx msgid "{0} on behalf of \"{1}\" has invited you to {recipientActionVerb} the document \"{2}\"." msgstr "{0} w imieniu \"{1}\" zaprosił Cię do {recipientActionVerb} dokument „{2}”." #. placeholder {0}: recipients.length -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:167 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "{0} Recipient(s)" msgstr "{0} Odbiorca(ów)" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:323 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "{charactersRemaining, plural, one {1 character remaining} other {{charactersRemaining} characters remaining}}" msgstr "{charactersRemaining, plural, one {Pozostał # znak} few {Pozostały {charactersRemaining} znaki} many {Pozostało {charactersRemaining} znaków} other {Pozostało {charactersRemaining} znaków}}" -#: packages/email/templates/document-invite.tsx:96 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} <0>({inviterEmail})" msgstr "{inviterName} <0>({inviterEmail})" -#: packages/email/templates/document-cancel.tsx:21 +#: packages/email/templates/document-cancel.tsx msgid "{inviterName} has cancelled the document {documentName}, you don't need to sign it anymore." msgstr "{inviterName} anulował dokument {documentName}, nie musisz go już podpisywać." -#: packages/email/template-components/template-document-cancel.tsx:24 +#: packages/email/template-components/template-document-cancel.tsx msgid "{inviterName} has cancelled the document<0/>\"{documentName}\"" msgstr "{inviterName} anulował dokument<0/>\"{documentName}\"" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:74 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} zaprosił Cię do {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:42 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} {documentName}" msgstr "{inviterName} zaprosił Cię do {action} {documentName}" -#: packages/email/templates/document-invite.tsx:109 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} has invited you to {action} the document \"{documentName}\"." msgstr "{inviterName} zaprosił cię do {action} dokument „{documentName}”." -#: packages/email/templates/recipient-removed-from-document.tsx:21 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document {documentName}." msgstr "{inviterName} usunął Cię z dokumentu {documentName}." -#: packages/email/templates/recipient-removed-from-document.tsx:50 +#: packages/email/templates/recipient-removed-from-document.tsx msgid "{inviterName} has removed you from the document<0/>\"{documentName}\"" msgstr "{inviterName} usunął cię z dokumentu<0/>„{documentName}”" #. placeholder {0}: team.name #. placeholder {1}: document.title -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:121 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "{inviterName} on behalf of \"{0}\" has invited you to {recipientActionVerb} the document \"{1}\"." msgstr "" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:61 +#: packages/email/template-components/template-document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {0}<0/>\"{documentName}\"" msgstr "{inviterName} w imieniu \"{teamName}\" zaprosił Cię do {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:46 +#: packages/email/templates/document-invite.tsx msgid "{inviterName} on behalf of \"{teamName}\" has invited you to {action} {documentName}" msgstr "{inviterName} w imieniu \"{teamName}\" zaprosił Cię do {action} {documentName}" -#: packages/email/templates/team-join.tsx:68 +#: packages/email/templates/team-join.tsx msgid "{memberEmail} joined the following team" msgstr "{memberEmail} dołączył do następującego zespołu" -#: packages/email/templates/team-leave.tsx:68 +#: packages/email/templates/team-leave.tsx msgid "{memberEmail} left the following team" msgstr "{memberEmail} opuścił następujący zespół" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:65 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "{numberOfSeats, plural, one {# member} other {# members}}" msgstr "{numberOfSeats, plural, one {# członek} few {# członkowie} many {# członków} other {# członków}}" -#: packages/lib/utils/document-audit-logs.ts:278 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a field" msgstr "{prefix} dodał pole" -#: packages/lib/utils/document-audit-logs.ts:290 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} added a recipient" msgstr "{prefix} dodał odbiorcę" -#: packages/lib/utils/document-audit-logs.ts:302 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} created the document" msgstr "{prefix} utworzył dokument" -#: packages/lib/utils/document-audit-logs.ts:306 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} deleted the document" msgstr "{prefix} usunął dokument" -#: packages/lib/utils/document-audit-logs.ts:354 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} moved the document to team" msgstr "{prefix} przeniósł dokument do zespołu" -#: packages/lib/utils/document-audit-logs.ts:338 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} opened the document" msgstr "{prefix} otworzył dokument" -#: packages/lib/utils/document-audit-logs.ts:318 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} prefilled a field" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:282 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a field" msgstr "{prefix} usunął pole" -#: packages/lib/utils/document-audit-logs.ts:294 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} removed a recipient" msgstr "{prefix} usunął odbiorcę" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:384 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} resent an email to {0}" msgstr "{prefix} ponownie wysłał e-mail do {0}" #. placeholder {0}: data.recipientEmail -#: packages/lib/utils/document-audit-logs.ts:385 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent an email to {0}" msgstr "{prefix} wysłał e-mail do {0}" -#: packages/lib/utils/document-audit-logs.ts:350 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} sent the document" msgstr "{prefix} wysłał dokument" -#: packages/lib/utils/document-audit-logs.ts:310 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} signed a field" msgstr "{prefix} podpisał pole" -#: packages/lib/utils/document-audit-logs.ts:314 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} unsigned a field" msgstr "{prefix} niepodpisane pole" -#: packages/lib/utils/document-audit-logs.ts:286 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a field" msgstr "{prefix} zaktualizowane pole" -#: packages/lib/utils/document-audit-logs.ts:298 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated a recipient" msgstr "{prefix} zaktualizowany odbiorca" -#: packages/lib/utils/document-audit-logs.ts:334 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document" msgstr "{prefix} zaktualizowany dokument" -#: packages/lib/utils/document-audit-logs.ts:326 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document access auth requirements" msgstr "{prefix} zaktualizowane wymagania dotyczące autoryzacji dostępu do dokumentu" -#: packages/lib/utils/document-audit-logs.ts:346 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document external ID" msgstr "{prefix} zaktualizowane ID zewnętrzne dokumentu" -#: packages/lib/utils/document-audit-logs.ts:330 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document signing auth requirements" msgstr "{prefix} zaktualizowane wymagania dotyczące autoryzacji podpisu dokumentu" -#: packages/lib/utils/document-audit-logs.ts:342 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document title" msgstr "{prefix} zaktualizowany tytuł dokumentu" -#: packages/lib/utils/document-audit-logs.ts:322 +#: packages/lib/utils/document-audit-logs.ts msgid "{prefix} updated the document visibility" msgstr "{prefix} zaktualizowana widoczność dokumentu" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:68 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} document" msgstr "{recipientActionVerb} dokument" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:69 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "{recipientActionVerb} the document to complete the process." msgstr "{recipientActionVerb} dokument, aby zakończyć proces." -#: packages/email/templates/document-created-from-direct-template.tsx:62 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "{recipientName} {action} a document by using one of your direct links" msgstr "{recipientName} {action} dokument, korzystając z jednego z Twoich bezpośrednich linków" -#: packages/email/templates/document-rejected.tsx:27 +#: packages/email/templates/document-rejected.tsx msgid "{recipientName} has rejected the document '{documentName}'" msgstr "{recipientName} odrzucił dokument '{documentName}'" -#: packages/email/template-components/template-document-recipient-signed.tsx:49 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has completed signing the document." msgstr "{recipientReference} zakończył podpisywanie dokumentu." #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts:112 +#: packages/lib/jobs/definitions/emails/send-recipient-signed-email.handler.ts msgid "{recipientReference} has signed \"{0}\"" msgstr "{recipientReference} podpisał „{0}”" -#: packages/email/template-components/template-document-recipient-signed.tsx:43 +#: packages/email/template-components/template-document-recipient-signed.tsx msgid "{recipientReference} has signed \"{documentName}\"" msgstr "{recipientReference} podpisał „{documentName}”" -#: packages/email/templates/document-recipient-signed.tsx:27 +#: packages/email/templates/document-recipient-signed.tsx msgid "{recipientReference} has signed {documentName}" msgstr "{recipientReference} podpisał {documentName}" -#: apps/remix/app/components/forms/public-profile-form.tsx:230 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:386 +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "{remaningLength, plural, one {# character remaining} other {# characters remaining}}" msgstr "{remaningLength, plural, one {Pozostał # znak} few {Pozostały # znaki} many {Pozostało # znaków} other {Pozostało # znaków}}" -#: packages/email/template-components/template-document-rejected.tsx:25 +#: packages/email/template-components/template-document-rejected.tsx msgid "{signerName} has rejected the document \"{documentName}\"." msgstr "{signerName} odrzucił dokument \"{documentName}\"." #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:68 +#: packages/email/template-components/template-document-invite.tsx msgid "{teamName} has invited you to {0}<0/>\"{documentName}\"" msgstr "{teamName} zaprosił Cię do {0}<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:47 +#: packages/email/templates/document-invite.tsx msgid "{teamName} has invited you to {action} {documentName}" msgstr "{teamName} zaprosił cię do {action} {documentName}" -#: packages/email/templates/team-transfer-request.tsx:56 +#: packages/email/templates/team-transfer-request.tsx msgid "{teamName} ownership transfer request" msgstr "Prośba o przeniesienie własności zespołu {teamName}" -#: packages/lib/utils/document-audit-logs.ts:362 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} approved the document" msgstr "{userName} zatwierdził dokument" -#: packages/lib/utils/document-audit-logs.ts:363 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} CC'd the document" msgstr "{userName} dodał CC do dokumentu" -#: packages/lib/utils/document-audit-logs.ts:364 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} completed their task" msgstr "{userName} zakończył swoje zadanie" -#: packages/lib/utils/document-audit-logs.ts:374 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} rejected the document" msgstr "{userName} odrzucił dokument" -#: packages/lib/utils/document-audit-logs.ts:360 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} signed the document" msgstr "{userName} podpisał dokument" -#: packages/lib/utils/document-audit-logs.ts:361 +#: packages/lib/utils/document-audit-logs.ts msgid "{userName} viewed the document" msgstr "{userName} wyświetlił dokument" -#: packages/ui/primitives/data-table-pagination.tsx:41 +#: packages/ui/primitives/data-table-pagination.tsx msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}" msgstr "{visibleRows, plural, one {Wyświetlanie # wyniku.} other {Wyświetlanie # wyników.}}" #. placeholder {0}: document.title -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:181 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "<0>\"{0}\"is no longer available to sign" msgstr "<0>\"{0}\"nie jest już dostępny do podpisu" -#: packages/email/templates/team-transfer-request.tsx:60 +#: packages/email/templates/team-transfer-request.tsx msgid "<0>{senderName} has requested that you take ownership of the following team" msgstr "<0>{senderName} poprosił, abyś przejął własność następującego zespołu" -#: packages/email/templates/confirm-team-email.tsx:76 +#: packages/email/templates/confirm-team-email.tsx msgid "<0>{teamName} has requested to use your email address for their team on Documenso." msgstr "<0>{teamName} poprosił o używanie twojego adresu e-mail dla swojego zespołu w Documenso." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:461 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" msgstr "<0>Kliknij, aby przesłać lub przeciągnij i upuść" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:285 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." msgstr "<0>E-mail - Odbiorca otrzyma e-mail z dokumentem do podpisania, zatwierdzenia itp." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:52 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>Inherit authentication method - Use the global action signing authentication method configured in the \"General Settings\" step" msgstr "<0>Przechwyć metodę uwierzytelniania - Użyj globalnej metody uwierzytelniania podpisywania akcji skonfigurowanej w kroku \"Ustawienia ogólne\"" -#: packages/ui/components/document/document-global-auth-action-select.tsx:94 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>No restrictions - No authentication required" msgstr "<0>Brak ograniczeń - Uwierzytelnianie nie jest wymagane" -#: packages/ui/components/document/document-global-auth-access-select.tsx:76 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>No restrictions - The document can be accessed directly by the URL sent to the recipient" msgstr "<0>Brak ograniczeń - Dokument można bezpośrednio otworzyć za pomocą URL przesłanego do odbiorcy" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:74 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "<0>None - No authentication required" msgstr "<0>Brak - Uwierzytelnianie nie jest wymagane" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:291 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>None - We will generate links which you can send to the recipients manually." msgstr "<0>Brak - Wygenerujemy linki, które możesz wysłać do odbiorców ręcznie." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:298 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Note - If you use Links in combination with direct templates, you will need to manually send the links to the remaining recipients." msgstr "<0>Uwaga - Jeśli używasz linków w połączeniu z bezpośrednimi szablonami, musisz ręcznie wysłać linki do pozostałych odbiorców." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:68 -#: packages/ui/components/document/document-global-auth-action-select.tsx:88 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require 2FA - The recipient must have an account and 2FA enabled via their settings" msgstr "<0>Wymagana 2FA - Odbiorca musi mieć konto i włączoną 2FA w swoich ustawieniach" -#: packages/ui/components/document/document-global-auth-access-select.tsx:71 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "<0>Require account - The recipient must be signed in to view the document" msgstr "<0>Wymagana konto - Odbiorca musi być zalogowany, aby wyświetlić dokument" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:62 -#: packages/ui/components/document/document-global-auth-action-select.tsx:82 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "<0>Require passkey - The recipient must have an account and passkey configured via their settings" msgstr "<0>Wymagana passkey - Odbiorca musi mieć konto i skonfigurowaną passkey w swoich ustawieniach" -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:52 +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx msgid "<0>Sender: All" msgstr "<0>Rządzący: Wszyscy" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete approving <1>\"{documentTitle}\".<2/> Are you sure?" msgstr "<0>Jesteś na drodze do zatwierdzenia <1>\"{documentTitle}\".<2/> Czy jesteś pewien?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:91 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Jesteś na drodze do ukończenia podpisywania \"<1>{documentTitle}\".<2/> Czy jesteś pewien?" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:77 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Jesteś na drodze do zakończenia przeglądania \"<1>{documentTitle}\".<2/> Czy jesteś pewien?" -#: apps/remix/app/components/forms/token.tsx:45 +#: apps/remix/app/components/forms/token.tsx msgid "1 month" msgstr "1 miesiąc" -#: apps/remix/app/components/forms/token.tsx:48 +#: apps/remix/app/components/forms/token.tsx msgid "12 months" msgstr "12 miesięcy" -#: apps/remix/app/components/forms/token.tsx:46 +#: apps/remix/app/components/forms/token.tsx msgid "3 months" msgstr "3 miesiące" -#: apps/remix/app/components/general/generic-error-layout.tsx:41 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "404 not found" msgstr "" -#: apps/remix/app/routes/_profile+/_layout.tsx:102 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "404 Profile not found" msgstr "404 Profil nie znaleziony" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:62 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "404 Team not found" msgstr "404 Zespół nie znaleziony" -#: apps/remix/app/components/general/generic-error-layout.tsx:46 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "500 Internal Server Error" msgstr "" -#: apps/remix/app/components/forms/token.tsx:47 +#: apps/remix/app/components/forms/token.tsx msgid "6 months" msgstr "6 miesięcy" -#: apps/remix/app/components/forms/token.tsx:44 +#: apps/remix/app/components/forms/token.tsx msgid "7 days" msgstr "7 dni" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:52 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "A confirmation email has been sent, and it should arrive in your inbox shortly." msgstr "E-mail potwierdzający został wysłany i powinien niedługo dotrzeć do Twojej skrzynki odbiorczej." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:66 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A device capable of accessing, opening, and reading documents" msgstr "Urządzenie zdolne do uzyskiwania dostępu, otwierania i czytania dokumentów" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:105 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "A document was created by your direct template that requires you to {recipientActionVerb} it." msgstr "Dokument został utworzony przez Twój bezpośredni szablon, który wymaga, abyś go {recipientActionVerb}." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:228 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "A draft document will be created" msgstr "Zostanie utworzony szkic dokumentu" -#: packages/lib/utils/document-audit-logs.ts:277 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was added" msgstr "Dodano pole" -#: packages/lib/utils/document-audit-logs.ts:281 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was removed" msgstr "Usunięto pole" -#: packages/lib/utils/document-audit-logs.ts:285 +#: packages/lib/utils/document-audit-logs.ts msgid "A field was updated" msgstr "Zaktualizowano pole" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A means to print or download documents for your records" msgstr "Środek do drukowania lub pobierania dokumentów do swoich zapisów" -#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts:98 +#: packages/lib/jobs/definitions/emails/send-team-member-joined-email.handler.ts msgid "A new member has joined your team" msgstr "Nowy członek dołączył do Twojego zespołu" -#: apps/remix/app/components/forms/token.tsx:124 +#: apps/remix/app/components/forms/token.tsx msgid "A new token was created successfully." msgstr "Nowy token został utworzony." -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:21 -#: apps/remix/app/components/forms/forgot-password.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx +#: apps/remix/app/components/forms/forgot-password.tsx msgid "A password reset email has been sent, if you have an account you should see it in your inbox shortly." msgstr "E-mail z linkiem do resetowania hasła został wysłany. Jeśli masz konto, powinieneś go niedługo zobaczyć w skrzynce odbiorczej." -#: packages/lib/utils/document-audit-logs.ts:289 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was added" msgstr "Dodano odbiorcę" -#: packages/lib/utils/document-audit-logs.ts:293 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was removed" msgstr "Usunięto odbiorcę" -#: packages/lib/utils/document-audit-logs.ts:297 +#: packages/lib/utils/document-audit-logs.ts msgid "A recipient was updated" msgstr "Zaktualizowano odbiorcę" #. placeholder {0}: transferVerification.name #. placeholder {1}: transferVerification.email -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:91 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "A request to transfer the ownership of this team has been sent to <0>{0} ({1})" msgstr "Wniosek o przeniesienie własności tego zespołu został wysłany do <0>{0} ({1})" #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-email-verification.ts:160 +#: packages/lib/server-only/team/create-team-email-verification.ts msgid "A request to use your email has been initiated by {0} on Documenso" msgstr "Zgłoszenie potrzeby użycia twojego e-maila zostało inicjowane przez {0} na Documenso" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:221 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso" msgstr "Sekret, który zostanie wysłany na Twój adres URL, abyś mógł zweryfikować, że prośba została wysłana przez Documenso" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:191 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:192 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "A secret that will be sent to your URL so you can verify that the request has been sent by Documenso." msgstr "Sekret, który zostanie wysłany na Twój adres URL, abyś mógł zweryfikować, że prośba została wysłana przez Documenso." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:60 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "A stable internet connection" msgstr "Stabilne połączenie internetowe" -#: packages/email/templates/team-join.tsx:32 +#: packages/email/templates/team-join.tsx msgid "A team member has joined a team on Documenso" msgstr "Członek zespołu dołączył do zespołu na Documenso" #. placeholder {0}: team.name -#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts:87 +#: packages/lib/jobs/definitions/emails/send-team-member-left-email.handler.ts msgid "A team member has left {0}" msgstr "Członek zespołu opuścił {0}" -#: packages/email/templates/team-leave.tsx:32 +#: packages/email/templates/team-leave.tsx msgid "A team member has left a team on Documenso" msgstr "Członek zespołu opuścił zespół na Documenso" -#: packages/email/templates/team-delete.tsx:29 -#: packages/email/templates/team-delete.tsx:33 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "A team you were a part of has been deleted" msgstr "Zespół, którego częścią byłeś, został usunięty" -#: apps/remix/app/components/forms/public-profile-form.tsx:197 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "A unique URL to access your profile" msgstr "Unikalny URL do dostępu do Twojego profilu" -#: apps/remix/app/components/forms/team-update-form.tsx:136 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:205 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "A unique URL to identify your team" msgstr "Unikalny URL do identyfikacji Twojego zespołu" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:134 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "A verification email will be sent to the provided email." msgstr "E-mail weryfikacyjny zostanie wysłany na podany adres e-mail." -#: apps/remix/app/components/general/teams/team-invitations.tsx:146 -#: packages/email/templates/team-transfer-request.tsx:82 -#: packages/email/templates/team-invite.tsx:95 -#: packages/email/templates/confirm-team-email.tsx:119 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/team-invite.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Accept" msgstr "Akceptuj" -#: packages/email/templates/team-invite.tsx:43 +#: packages/email/templates/team-invite.tsx msgid "Accept invitation to join a team on Documenso" msgstr "Akceptuj zaproszenie do dołączenia do zespołu na Documenso" -#: packages/email/templates/confirm-team-email.tsx:42 +#: packages/email/templates/confirm-team-email.tsx msgid "Accept team email request for {teamName} on Documenso" msgstr "Akceptuj prośbę o email zespołowy dla {teamName} na Documenso" -#: packages/email/templates/team-transfer-request.tsx:30 +#: packages/email/templates/team-transfer-request.tsx msgid "Accept team transfer request on Documenso" msgstr "Akceptuj prośbę o przeniesienie zespołu na Documenso" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acceptance and Consent" msgstr "Akceptacja i Zgoda" -#: apps/remix/app/components/general/teams/team-invitations.tsx:126 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Accepted team invitation" msgstr "Akceptowane zaproszenie do zespołu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:134 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Authentication" msgstr "Uwierzytelnianie konta" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Account deleted" msgstr "Konto zostało usunięte" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:49 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Account disabled" msgstr "Konto wyłączone" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:46 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Account enabled" msgstr "Konto włączone" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:125 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Account Re-Authentication" msgstr "Ponowna Autoryzacja Konta" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:135 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Acknowledgment" msgstr "Potwierdzenie" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:112 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:158 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:46 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:112 -#: apps/remix/app/components/tables/document-logs-table.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:111 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Action" msgstr "Akcja" -#: apps/remix/app/components/tables/templates-table.tsx:154 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:103 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:112 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:127 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:136 -#: apps/remix/app/components/tables/documents-table.tsx:78 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:173 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Actions" msgstr "Akcje" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:70 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:105 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:64 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx msgid "Active" msgstr "Aktywne" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Active Subscriptions" msgstr "Aktywne subskrypcje" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:186 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add" msgstr "Dodaj" -#: packages/ui/primitives/document-dropzone.tsx:67 +#: packages/ui/primitives/document-dropzone.tsx msgid "Add a document" msgstr "Dodaj dokument" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:512 -#: packages/ui/primitives/document-flow/add-settings.tsx:388 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add a URL to redirect the user to once the document is signed" msgstr "Dodaj URL, aby przekierować użytkownika po podpisaniu dokumentu" -#: apps/remix/app/components/general/template/template-edit-form.tsx:83 -#: apps/remix/app/components/general/document/document-edit-form.tsx:151 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add all relevant fields for each recipient." msgstr "Dodaj wszystkie istotne pola dla każdego odbiorcy." -#: apps/remix/app/components/general/template/template-edit-form.tsx:78 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add all relevant placeholders for each recipient." msgstr "Dodaj wszystkie odpowiednie symbole zastępcze dla każdego odbiorcy." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:94 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method for signing documents." msgstr "Dodaj autoryzator, aby służył jako dodatkowa metoda uwierzytelniania do podpisywania dokumentów." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Add an authenticator to serve as a secondary authentication method when signing in, or when signing documents." msgstr "Dodaj autoryzator, aby służył jako dodatkowa metoda uwierzytelniania podczas logowania lub podpisywania dokumentów." -#: packages/ui/primitives/document-flow/add-settings.tsx:300 +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Add an external ID to the document. This can be used to identify the document in external systems." msgstr "Dodaj zewnętrzny ID do dokumentu. Może być używany do identyfikacji dokumentu w zewnętrznych systemach." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:429 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Add an external ID to the template. This can be used to identify in external systems." msgstr "Dodaj zewnętrzny ID do szablonu. Może być używany do identyfikacji w systemach zewnętrznych." -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:186 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Add another option" msgstr "Dodaj kolejną opcję" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:165 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:230 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Add another value" msgstr "Dodaj kolejną wartość" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add email" msgstr "Dodaj adres e-mail" -#: apps/remix/app/components/general/template/template-edit-form.tsx:82 -#: apps/remix/app/components/general/document/document-edit-form.tsx:150 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Fields" msgstr "Dodaj pola" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:362 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Add more" msgstr "Dodaj więcej" -#: packages/ui/primitives/document-flow/add-signers.tsx:693 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add myself" msgstr "Dodaj siebie" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:706 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Myself" msgstr "Dodaj siebie" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:145 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Add passkey" msgstr "Dodaj klucz dostępu" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:692 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Add Placeholder Recipient" msgstr "Dodaj odbiorcę zastępczego" -#: apps/remix/app/components/general/template/template-edit-form.tsx:77 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Add Placeholders" msgstr "Dodaj znaczniki" -#: packages/ui/primitives/document-flow/add-signers.tsx:682 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Add Signer" msgstr "Dodaj sygnatariusza" -#: apps/remix/app/components/general/document/document-edit-form.tsx:145 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add Signers" msgstr "Dodaj podpisujących" -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:130 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "Add team email" msgstr "Dodaj e-mail zespołowy" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:81 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text" msgstr "Dodaj tekst" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:86 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Add text to the field" msgstr "Dodaj tekst do pola" -#: apps/remix/app/components/general/document/document-edit-form.tsx:146 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Add the people who will sign the document." msgstr "Dodaj osoby, które podpiszą dokument." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:230 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Add the recipients to create the document with" msgstr "Dodaj odbiorców, aby utworzyć dokument" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:153 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Adding and removing seats will adjust your invoice accordingly." msgstr "Dodawanie i usuwanie miejsc dostosuje fakturę odpowiednio." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:302 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Additional brand information to display at the bottom of emails" msgstr "Dodatkowe informacje o marce do wyświetlenia na dole wiadomości e-mail" -#: packages/lib/constants/teams.ts:9 +#: packages/lib/constants/teams.ts msgid "Admin" msgstr "Administrator" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:95 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Admin Actions" msgstr "Akcje administratora" -#: apps/remix/app/components/general/menu-switcher.tsx:251 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Admin panel" msgstr "Panel administratora" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:411 -#: packages/ui/primitives/document-flow/add-settings.tsx:282 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Advanced Options" msgstr "Opcje zaawansowane" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:496 -#: packages/ui/primitives/document-flow/add-fields.tsx:583 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Advanced settings" msgstr "Ustawienia zaawansowane" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "After signing a document electronically, you will be provided the opportunity to view, download, and print the document for your records. It is highly recommended that you retain a copy of all electronically signed documents for your personal records. We will also retain a copy of the signed document for our records however we may not be able to provide you with a copy of the signed document after a certain period of time." msgstr "Po podpisaniu dokumentu elektronicznie, otrzymasz możliwość obejrzenia, pobrania i wydrukowania dokumentu dla swoich zapisów. Zaleca się, abyś zachował kopię wszystkich podpisanych elektronicznie dokumentów dla swoich osobistych zapisów. My również zachowamy kopię podpisanego dokumentu w naszych zapisach, jednak możemy nie być w stanie dostarczyć ci kopii podpisanego dokumentu po pewnym czasie." -#: packages/lib/constants/template.ts:21 +#: packages/lib/constants/template.ts msgid "After submission, a document will be automatically generated and added to your documents page. You will also receive a notification via email." msgstr "Po przesłaniu dokumentu zostanie automatycznie wygenerowany i dodany do Twojej strony dokumentów. Otrzymasz również powiadomienie pocztą elektroniczną." -#: apps/remix/app/components/general/document/document-status.tsx:46 +#: apps/remix/app/components/general/document/document-status.tsx msgid "All" msgstr "Wszystko" -#: apps/remix/app/components/general/app-command-menu.tsx:38 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All documents" msgstr "Wszystkie dokumenty" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:35 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "All documents have been processed. Any new documents that are sent or received will show here." msgstr "Wszystkie dokumenty zostały przetworzone. Nowe dokumenty, które zostaną wysłane lub odebrane, pojawią się tutaj." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:77 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "All documents related to the electronic signing process will be provided to you electronically through our platform or via email. It is your responsibility to ensure that your email address is current and that you can receive and open our emails." msgstr "Wszystkie dokumenty związane z procesem podpisywania elektronicznego będą dostarczane do Ciebie elektronicznie za pośrednictwem naszej platformy lub za pośrednictwem e-maila. To Twoja odpowiedzialność, aby upewnić się, że twój adres e-mail jest aktualny i że możesz odbierać i otwierać nasze e-maile." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:141 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All inserted signatures will be voided" msgstr "Wszystkie wstawione podpisy zostaną unieważnione" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:144 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "All recipients will be notified" msgstr "Wszyscy odbiorcy zostaną powiadomieni" -#: packages/email/template-components/template-document-cancel.tsx:31 +#: packages/email/template-components/template-document-cancel.tsx msgid "All signatures have been voided." msgstr "Wszystkie podpisy zostały unieważnione." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:60 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "All signing links have been copied to your clipboard." msgstr "Wszystkie linki do podpisania zostały skopiowane do schowka." -#: apps/remix/app/components/general/app-command-menu.tsx:53 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "All templates" msgstr "Wszystkie szablony" -#: apps/remix/app/components/general/period-selector.tsx:56 +#: apps/remix/app/components/general/period-selector.tsx msgid "All Time" msgstr "Cały czas" -#: packages/email/templates/confirm-team-email.tsx:99 +#: packages/email/templates/confirm-team-email.tsx msgid "Allow document recipients to reply directly to this email address" msgstr "Zezwól odbiorcom dokumentów na bezpośrednią odpowiedź na ten adres e-mail" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Allows authenticating using biometrics, password managers, hardware keys, etc." msgstr "Pozwala na uwierzytelnianie za pomocą biometrii, menedżerów haseł, kluczy sprzętowych itp." -#: apps/remix/app/components/forms/signup.tsx:420 +#: apps/remix/app/components/forms/signup.tsx msgid "Already have an account? <0>Sign in instead" msgstr "Masz już konto? <0>Zaloguj się zamiast tego" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:86 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Amount" msgstr "Kwota" -#: packages/email/templates/document-super-delete.tsx:22 +#: packages/email/templates/document-super-delete.tsx msgid "An admin has deleted your document \"{documentName}\"." msgstr "Administrator usunął Twój dokument \"{documentName}\"." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:44 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An electronic signature provided by you on our platform, achieved through clicking through to a document and entering your name, or any other electronic signing method we provide, is legally binding. It carries the same weight and enforceability as a manual signature written with ink on paper." msgstr "Podpis elektroniczny dostarczony przez Ciebie na naszej platformie, zrealizowany poprzez kliknięcie na dokument i wpisanie swojego imienia, lub dowolną inną metodą podpisu elektronicznego, którą udostępniamy, jest prawnie wiążący. Nosi tę samą wagę i wykonalność jak ręczny podpis wykonany tuszem na papierze." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:63 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "An email account" msgstr "Konto e-mail" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:258 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "An email containing an invitation will be sent to each member." msgstr "E-mail zawierający zaproszenie zostanie wysłany do każdego członka." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:107 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An email requesting the transfer of this team has been sent." msgstr "E-mail z prośbą o przeniesienie tego zespołu został wysłany." -#: apps/remix/app/components/general/claim-account.tsx:96 -#: apps/remix/app/components/forms/token.tsx:140 -#: apps/remix/app/components/forms/signup.tsx:160 -#: apps/remix/app/components/forms/reset-password.tsx:91 -#: apps/remix/app/components/forms/password.tsx:89 -#: apps/remix/app/components/forms/avatar-image.tsx:122 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "An error occurred" msgstr "Wystąpił błąd" -#: apps/remix/app/components/general/template/template-edit-form.tsx:217 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "An error occurred while adding fields." msgstr "Wystąpił błąd podczas dodawania pól." -#: apps/remix/app/components/general/template/template-edit-form.tsx:177 -#: apps/remix/app/components/general/document/document-edit-form.tsx:235 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding signers." msgstr "Wystąpił błąd podczas dodawania podpisujących." -#: apps/remix/app/components/general/document/document-edit-form.tsx:270 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while adding the fields." msgstr "Wystąpił błąd podczas dodawania pól." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:150 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "An error occurred while auto-signing the document, some fields may not be signed. Please review and manually sign any remaining fields." msgstr "Wystąpił błąd podczas automatycznego podpisywania dokumentu, niektóre pola mogą nie być podpisane. Proszę sprawdzić i ręcznie podpisać wszystkie pozostałe pola." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:186 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "An error occurred while creating document from template." msgstr "Wystąpił błąd podczas tworzenia dokumentu z szablonu." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "An error occurred while creating the webhook. Please try again." msgstr "Wystąpił błąd podczas tworzenia webhooka. Proszę spróbować ponownie." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "An error occurred while deleting the user." msgstr "Wystąpił błąd podczas usuwania użytkownika." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:125 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while disabling direct link signing." msgstr "Wystąpił błąd podczas dezaktywacji podpisywania za pomocą linku bezpośredniego." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:59 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "An error occurred while disabling the user." msgstr "Wystąpił błąd podczas wyłączania użytkownika." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:96 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:74 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:95 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:64 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "An error occurred while downloading your document." msgstr "Wystąpił błąd podczas pobierania dokumentu." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:45 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "An error occurred while duplicating template." msgstr "Wystąpił błąd podczas duplikowania szablonu." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:124 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "An error occurred while enabling direct link signing." msgstr "Wystąpił błąd podczas aktywacji podpisywania za pomocą linku bezpośredniego." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:56 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "An error occurred while enabling the user." msgstr "Wystąpił błąd podczas włączania użytkownika." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:262 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "An error occurred while loading team members. Please try again later." msgstr "Wystąpił błąd podczas ładowania członków zespołu. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:167 +#: packages/ui/primitives/pdf-viewer.tsx msgid "An error occurred while loading the document." msgstr "Wystąpił błąd podczas ładowania dokumentu." -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:55 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "An error occurred while moving the document." msgstr "Wystąpił błąd podczas przenoszenia dokumentu." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:81 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "An error occurred while moving the template." msgstr "Wystąpił błąd podczas przenoszenia szablonu." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:209 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:204 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:112 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:115 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:136 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:124 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:157 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while removing the field." msgstr "Wystąpił błąd podczas usuwania pola." -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:132 +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx msgid "An error occurred while removing the selection." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:188 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "An error occurred while removing the signature." msgstr "Wystąpił błąd podczas usuwania podpisu." -#: apps/remix/app/components/general/document/document-edit-form.tsx:312 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while sending the document." msgstr "Wystąpił błąd podczas wysyłania dokumentu." -#: apps/remix/app/components/forms/send-confirmation-email.tsx:61 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "An error occurred while sending your confirmation email" msgstr "Wystąpił błąd podczas wysyłania e-maila potwierdzającego" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:180 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:85 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:103 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:97 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing as assistant." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:181 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:162 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:105 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:155 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:129 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:89 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:104 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:98 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:128 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while signing the document." msgstr "Wystąpił błąd podczas podpisywania dokumentu." -#: apps/remix/app/components/general/billing-plans.tsx:63 +#: apps/remix/app/components/general/billing-plans.tsx msgid "An error occurred while trying to create a checkout session." msgstr "" -#: apps/remix/app/components/general/template/template-edit-form.tsx:149 -#: apps/remix/app/components/general/document/document-edit-form.tsx:205 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "An error occurred while updating the document settings." msgstr "Wystąpił błąd podczas aktualizowania ustawień dokumentu." -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:215 +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx msgid "An error occurred while updating the signature." msgstr "Wystąpił błąd podczas aktualizowania podpisu." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:79 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "An error occurred while updating your profile." msgstr "Wystąpił błąd podczas aktualizowania profilu." -#: apps/remix/app/components/general/document/document-upload.tsx:100 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." msgstr "Wystąpił błąd podczas przesyłania dokumentu." -#: apps/remix/app/components/general/generic-error-layout.tsx:48 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:88 -#: apps/remix/app/components/general/app-command-menu.tsx:309 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:51 -#: apps/remix/app/components/forms/team-update-form.tsx:91 -#: apps/remix/app/components/forms/signup.tsx:181 -#: apps/remix/app/components/forms/signup.tsx:195 -#: apps/remix/app/components/forms/signin.tsx:52 -#: apps/remix/app/components/forms/signin.tsx:265 -#: apps/remix/app/components/forms/signin.tsx:281 -#: apps/remix/app/components/forms/public-profile-form.tsx:103 -#: apps/remix/app/components/forms/profile.tsx:74 -#: apps/remix/app/components/forms/avatar-image.tsx:94 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:81 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:88 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:114 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:99 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:154 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:57 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:86 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:97 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:82 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:104 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:139 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:175 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:56 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "An unknown error occurred" msgstr "Wystąpił nieznany błąd" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:223 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Any payment methods attached to this team will remain attached to this team. Please contact us if you need to update this information." msgstr "Jakiekolwiek metody płatności przypisane do tego zespołu pozostaną przypisane do tego zespołu. Proszę skontaktować się z nami, jeśli potrzebujesz zaktualizować te informacje." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:217 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Source" msgstr "Jakiekolwiek źródło" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:197 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Any Status" msgstr "Jakikolwiek status" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:82 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:94 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:85 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "API Tokens" msgstr "Tokeny API" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:92 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "App Version" msgstr "Wersja aplikacji" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:135 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:143 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:89 -#: packages/lib/constants/recipient-roles.ts:7 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approve" msgstr "Zatwierdź" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:185 -#: packages/email/template-components/template-document-invite.tsx:108 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Approve Document" msgstr "Zatwierdź dokument" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:93 -#: packages/lib/constants/recipient-roles.ts:8 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Approved" msgstr "Zatwierdzono" -#: packages/lib/constants/recipient-roles.ts:10 +#: packages/lib/constants/recipient-roles.ts msgid "Approver" msgstr "Zatwierdzający" -#: packages/lib/constants/recipient-roles.ts:11 +#: packages/lib/constants/recipient-roles.ts msgid "Approvers" msgstr "Zatwierdzający" -#: packages/lib/constants/recipient-roles.ts:9 +#: packages/lib/constants/recipient-roles.ts msgid "Approving" msgstr "Zatwierdzanie" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:46 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Are you sure you want to complete the document? This action cannot be undone. Please ensure that you have completed prefilling all relevant fields before proceeding." msgstr "" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:120 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Are you sure you want to delete this token?" msgstr "Czy na pewno chcesz usunąć ten token?" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Are you sure you want to reject this document? This action cannot be undone." msgstr "Czy na pewno chcesz odrzucić ten dokument? Ta akcja nie może być cofnięta." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:193 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Are you sure you want to remove the <0>{passkeyName} passkey." msgstr "Czy na pewno chcesz usunąć klucz hasła <0>{passkeyName}." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Are you sure you wish to delete this team?" msgstr "Czy na pewno chcesz usunąć ten zespół?" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:93 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:455 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:113 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:436 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:94 +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Are you sure?" msgstr "Czy na pewno?" -#: packages/lib/constants/recipient-roles.ts:35 +#: packages/lib/constants/recipient-roles.ts msgid "Assist" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:186 -#: packages/email/template-components/template-document-invite.tsx:110 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Assist Document" msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:299 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Assist with signing" msgstr "" -#: packages/lib/constants/recipient-roles.ts:38 +#: packages/lib/constants/recipient-roles.ts msgid "Assistant" msgstr "" -#: packages/ui/components/recipient/recipient-role-select.tsx:140 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Assistant role is only available when the document is in sequential signing mode." msgstr "" -#: packages/lib/constants/recipient-roles.ts:39 +#: packages/lib/constants/recipient-roles.ts msgid "Assistants" msgstr "" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:125 -#: packages/lib/constants/recipient-roles.ts:36 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Assisted" msgstr "" -#: packages/lib/constants/recipient-roles.ts:37 +#: packages/lib/constants/recipient-roles.ts msgid "Assisting" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:115 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Attempts sealing the document again, useful for after a code change has occurred to resolve an erroneous document." msgstr "Ponowne próby zapieczętowania dokumentu, przydatne po zmianie kodu w celu rozwiązania błędnego dokumentu." -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:133 +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Audit Log" msgstr "Dziennik logów" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:206 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Authentication Level" msgstr "Poziom autoryzacji" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:48 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:38 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Authentication required" msgstr "Wymagana autoryzacja" -#: apps/remix/app/components/forms/avatar-image.tsx:142 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar" msgstr "Awatar" -#: apps/remix/app/components/forms/avatar-image.tsx:109 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Avatar Updated" msgstr "Awatar został zaktualizowany" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:125 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Awaiting email confirmation" msgstr "Czekam na potwierdzenie e-maila" -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:367 -#: apps/remix/app/components/forms/signup.tsx:503 +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Back" msgstr "Powrót" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Back to Documents" msgstr "Powrót do dokumentów" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:151 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Background Color" msgstr "Kolor tła" -#: apps/remix/app/components/forms/signin.tsx:463 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:162 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Backup Code" msgstr "Kod zapasowy" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:170 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Backup codes" msgstr "Kody zapasowe" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Banner Updated" msgstr "Baner został zaktualizowany" -#: apps/remix/app/components/forms/signup.tsx:466 +#: apps/remix/app/components/forms/signup.tsx msgid "Basic details" msgstr "Podstawowe szczegóły" -#: packages/email/template-components/template-confirmation-email.tsx:25 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Before you get started, please confirm your email address by clicking the button below:" msgstr "Zanim zaczniesz, proszę potwierdź swój adres e-mail, klikając przycisk poniżej:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:77 -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:84 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:111 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:109 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:121 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:112 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Billing" msgstr "Fakturowanie" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:534 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Black" msgstr "Czarny" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:548 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Blue" msgstr "Niebieski" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Branding Preferences" msgstr "Preferencje dotyczące marki" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:101 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Branding preferences updated" msgstr "Preferencje dotyczące marki zaktualizowane" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:93 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:48 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "Browser" msgstr "Przeglądarka" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:143 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Bulk Copy" msgstr "Masowa kopia" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:275 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Bulk Import" msgstr "Import zbiorczy" #. placeholder {0}: template.title -#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts:203 +#: packages/lib/jobs/definitions/internal/bulk-send-template.handler.ts msgid "Bulk Send Complete: {0}" msgstr "Zakończono wysyłkę zbiorczą: {0}" -#: packages/email/templates/bulk-send-complete.tsx:30 +#: packages/email/templates/bulk-send-complete.tsx msgid "Bulk send operation complete for template \"{templateName}\"" msgstr "Zakończono operację masowej wysyłki dla szablonu \"{templateName}\"" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:127 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send Template via CSV" msgstr "Szablon masowej wysyłki przez CSV" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:99 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:119 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Bulk Send via CSV" msgstr "Zbiorcza wysyłka przez CSV" -#: packages/email/templates/team-invite.tsx:85 +#: packages/email/templates/team-invite.tsx msgid "by <0>{senderName}" msgstr "przez <0>{senderName}" -#: packages/email/templates/confirm-team-email.tsx:88 +#: packages/email/templates/confirm-team-email.tsx msgid "By accepting this request, you will be granting <0>{teamName} access to:" msgstr "Akceptując tę prośbę, przyznasz <0>{teamName} dostęp do:" -#: packages/email/templates/team-transfer-request.tsx:71 +#: packages/email/templates/team-transfer-request.tsx msgid "By accepting this request, you will take responsibility for any billing items associated with this team." msgstr "Akceptując tę prośbę, przejmiesz odpowiedzialność za wszelkie pozycje dotyczące rozliczeń związane z tym zespołem." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:152 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "By deleting this document, the following will occur:" msgstr "Usunięcie tego dokumentu spowoduje następujące:" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:113 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "By enabling 2FA, you will be required to enter a code from your authenticator app every time you sign in using email password." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:138 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By proceeding to use the electronic signature service provided by Documenso, you affirm that you have read and understood this disclosure. You agree to all terms and conditions related to the use of electronic signatures and electronic transactions as outlined herein." msgstr "Kontynuując korzystanie z usługi podpisu elektronicznego oferowanej przez Documenso, potwierdzasz, że przeczytałeś i zrozumiałeś to ujawnienie. Zgadzasz się na wszystkie warunki i zasady związane z korzystaniem z podpisów elektronicznych i transakcji elektronicznych, jak opisano w tym dokumencie." -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:16 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "By proceeding with your electronic signature, you acknowledge and consent that it will be used to sign the given document and holds the same legal validity as a handwritten signature. By completing the electronic signing process, you affirm your understanding and acceptance of these conditions." msgstr "Kontynuując z Twoim podpisem elektronicznym, przyjmujesz i zgadzasz się, że będzie on użyty do podpisania danego dokumentu i ma tę samą ważność prawną jak odręczny podpis. Dokonując procesu podpisu elektronicznego, potwierdzasz swoje zrozumienie i akceptację tych warunków." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:88 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "By using the electronic signature feature, you are consenting to conduct transactions and receive disclosures electronically. You acknowledge that your electronic signature on documents is binding and that you accept the terms outlined in the documents you are signing." msgstr "Korzystając z funkcji podpisu elektronicznego, wyrażasz zgodę na przeprowadzanie transakcji i otrzymywanie ujawnień elektronicznie. Przyjmujesz do wiadomości, że Twój podpis elektroniczny na dokumentach jest wiążący i akceptujesz warunki przedstawione w dokumentach, które podpisujesz." -#: packages/ui/components/recipient/recipient-role-select.tsx:126 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Can prepare" msgstr "" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:162 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:203 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:108 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:364 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:315 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:160 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:349 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:234 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:383 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:165 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:190 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:75 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:175 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:172 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:263 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:156 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:234 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:167 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:145 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:71 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:472 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:78 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:262 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:241 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:186 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:367 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:103 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:101 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:159 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:147 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:182 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:161 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:217 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:167 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:447 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:247 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:183 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:115 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:112 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:186 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:58 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:321 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Cancel" msgstr "Anuluj" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Cancelled by user" msgstr "Anulowano przez użytkownika" -#: packages/ui/primitives/document-flow/add-signers.tsx:196 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Cannot remove signer" msgstr "Nie można usunąć sygnatariusza" -#: packages/lib/constants/recipient-roles.ts:17 +#: packages/lib/constants/recipient-roles.ts msgid "Cc" msgstr "Cc" -#: packages/lib/constants/recipient-roles.ts:14 -#: packages/lib/constants/recipient-roles.ts:16 +#: packages/lib/constants/recipient-roles.ts +#: packages/lib/constants/recipient-roles.ts msgid "CC" msgstr "CC" -#: packages/lib/constants/recipient-roles.ts:15 +#: packages/lib/constants/recipient-roles.ts msgid "CC'd" msgstr "CC'd" -#: packages/lib/constants/recipient-roles.ts:18 +#: packages/lib/constants/recipient-roles.ts msgid "Ccers" msgstr "Kserokopie" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:94 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Character Limit" msgstr "Limit znaków" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:148 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Charts" msgstr "Wykresy" -#: packages/ui/primitives/document-flow/types.ts:58 +#: packages/ui/primitives/document-flow/types.ts msgid "Checkbox" msgstr "Pole wyboru" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Checkbox values" msgstr "Wartości checkboxa" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:180 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Checkout" msgstr "Kasa" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:272 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose an existing recipient from below to continue" msgstr "Wybierz istniejącego odbiorcę, aby kontynuować" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:268 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Choose Direct Link Recipient" msgstr "Wybierz odbiorcę bezpośredniego linku" -#: apps/remix/app/components/general/document/document-edit-form.tsx:156 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Choose how the document will reach recipients" msgstr "Wybierz, jak dokument dotrze do odbiorców" -#: apps/remix/app/components/forms/token.tsx:194 +#: apps/remix/app/components/forms/token.tsx msgid "Choose..." msgstr "Wybierz..." -#: apps/remix/app/components/general/claim-account.tsx:155 +#: apps/remix/app/components/general/claim-account.tsx msgid "Claim account" msgstr "Zgłoś konto" -#: apps/remix/app/components/forms/signup.tsx:475 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim username" msgstr "Zgłoś nazwę użytkownika" -#: apps/remix/app/components/forms/signup.tsx:276 +#: apps/remix/app/components/forms/signup.tsx msgid "Claim your username now" msgstr "Zgłoś swoją nazwę użytkownika teraz" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:535 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Clear file" msgstr "Wyczyść plik" -#: packages/ui/primitives/data-table.tsx:154 +#: packages/ui/primitives/data-table.tsx msgid "Clear filters" msgstr "Wyczyść filtry" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:568 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Clear Signature" msgstr "Wyczyść podpis" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:124 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Click here to get started" msgstr "Kliknij, aby rozpocząć" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:112 -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:60 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:75 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:131 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Click here to retry" msgstr "Kliknij tutaj, aby spróbować ponownie" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:390 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" msgstr "Kliknij tutaj, aby przesłać" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:48 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:61 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx msgid "Click to copy signing link for sending to recipient" msgstr "Kliknij, aby skopiować link podpisu do wysłania do odbiorcy" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:176 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:181 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:486 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:479 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Click to insert field" msgstr "Kliknij, aby wstawić pole" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:118 -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:139 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:122 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:138 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:186 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:554 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:118 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:316 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:420 -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Close" msgstr "Zamknij" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 -#: apps/remix/app/components/forms/signup.tsx:528 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:476 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:469 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Complete" msgstr "Zakończono" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:70 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Approval" msgstr "Zakończ zatwierdzanie" -#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx:43 +#: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:69 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Signing" msgstr "Zakończ podpisywanie" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:227 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:68 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Zakończ wyświetlanie" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:75 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:200 -#: apps/remix/app/components/general/document/document-status.tsx:28 -#: packages/lib/constants/document.ts:9 -#: packages/email/template-components/template-document-self-signed.tsx:37 -#: packages/email/template-components/template-document-recipient-signed.tsx:37 -#: packages/email/template-components/template-document-completed.tsx:35 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts +#: packages/email/template-components/template-document-self-signed.tsx +#: packages/email/template-components/template-document-recipient-signed.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Completed" msgstr "Zakończone" -#: packages/email/templates/document-self-signed.tsx:19 -#: packages/email/templates/document-completed.tsx:23 +#: packages/email/templates/document-self-signed.tsx +#: packages/email/templates/document-completed.tsx msgid "Completed Document" msgstr "Dokument zakończony" -#: apps/remix/app/components/general/app-command-menu.tsx:44 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Completed documents" msgstr "Dokumenty zakończone" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Completed Documents" msgstr "Zakończone dokumenty" -#: packages/lib/constants/template.ts:12 +#: packages/lib/constants/template.ts msgid "Configure Direct Recipient" msgstr "Skonfiguruj bezpośredniego odbiorcę" -#: apps/remix/app/components/general/document/document-edit-form.tsx:141 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Configure general settings for the document." msgstr "Skonfiguruj ogólne ustawienia dokumentu." -#: apps/remix/app/components/general/template/template-edit-form.tsx:73 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Configure general settings for the template." msgstr "Skonfiguruj ogólne ustawienia szablonu." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:334 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Configure template" msgstr "Skonfiguruj szablon" #. placeholder {0}: parseMessageDescriptor( _, FRIENDLY_FIELD_TYPE[currentField.type], ) -#: packages/ui/primitives/template-flow/add-template-fields.tsx:497 -#: packages/ui/primitives/document-flow/add-fields.tsx:584 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Configure the {0} field" msgstr "Skonfiguruj pole {0}" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:481 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:457 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Confirm" msgstr "Potwierdź" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:205 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Confirm by typing <0>{confirmTransferMessage}" msgstr "Potwierdź, wpisując <0>{confirmTransferMessage}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Confirm by typing <0>{deleteMessage}" msgstr "Potwierdź, wpisując <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:133 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:143 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Confirm by typing: <0>{deleteMessage}" msgstr "Potwierdź, wpisując: <0>{deleteMessage}" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Confirm Deletion" msgstr "Potwierdź usunięcie" -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:15 -#: packages/email/template-components/template-confirmation-email.tsx:35 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx +#: packages/email/template-components/template-confirmation-email.tsx msgid "Confirm email" msgstr "Potwierdź adres e-mail" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:50 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Confirmation email sent" msgstr "E-mail potwierdzający został wysłany" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:85 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Consent to Electronic Transactions" msgstr "Zgoda na transakcje elektroniczne" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:147 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Contact Information" msgstr "Informacje kontaktowe" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:194 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Content" msgstr "Treść" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:156 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:149 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:133 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:171 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:158 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:325 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:251 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:140 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Continue" msgstr "Kontynuuj" -#: packages/email/template-components/template-document-invite.tsx:85 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by approving the document." msgstr "Kontynuuj, zatwierdzając dokument." -#: packages/email/template-components/template-document-invite.tsx:88 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by assisting with the document." msgstr "" -#: packages/email/template-components/template-document-completed.tsx:45 +#: packages/email/template-components/template-document-completed.tsx msgid "Continue by downloading the document." msgstr "Kontynuuj, pobierając dokument." -#: packages/email/template-components/template-document-invite.tsx:83 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by signing the document." msgstr "Kontynuuj, podpisując dokument." -#: packages/email/template-components/template-document-invite.tsx:84 +#: packages/email/template-components/template-document-invite.tsx msgid "Continue by viewing the document." msgstr "Kontynuuj, wyświetlając dokument." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Continue to login" msgstr "Kontynuuj do logowania" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:184 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." msgstr "Kontroluje domyślny język przesłanego dokumentu. Będzie używany jako język w komunikacji e-mailowej z odbiorcami." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:152 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." msgstr "Kontroluje domyślną widoczność przesłanego dokumentu." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:231 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." msgstr "Kontroluje formatowanie wiadomości, która zostanie wysłana podczas zapraszania odbiorcy do podpisania dokumentu. Jeśli w konfiguracji dokumentu podano niestandardową wiadomość, zostanie użyta zamiast tego." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:262 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the recipients can sign the documents using a typed signature. Enable or disable the typed signature globally." msgstr "Kontroluje, czy odbiorcy mogą podpisywać dokumenty za pomocą pisanych podpisów. Włącz lub wyłącz podpis pisany globalnie." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:292 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls whether the signing certificate will be included in the document when it is downloaded. The signing certificate can still be downloaded from the logs page separately." msgstr "Kontroluje, czy certyfikat podpisu zostanie dołączony do dokumentu podczas jego pobierania. Certyfikat podpisu można również pobrać osobno ze strony logów." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:126 -#: packages/ui/primitives/document-flow/add-subject.tsx:249 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copied" msgstr "Skopiowano" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:71 -#: apps/remix/app/components/general/avatar-with-recipient.tsx:36 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:30 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:59 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:115 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:167 -#: apps/remix/app/components/forms/public-profile-form.tsx:116 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:165 -#: packages/ui/primitives/document-flow/add-subject.tsx:236 -#: packages/ui/components/document/document-share-button.tsx:45 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Copied to clipboard" msgstr "Skopiowano do schowka" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:121 -#: packages/ui/primitives/document-flow/add-subject.tsx:244 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Copy" msgstr "Kopiuj" -#: packages/ui/components/document/document-share-button.tsx:193 +#: packages/ui/components/document/document-share-button.tsx msgid "Copy Link" msgstr "Skopiuj link" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:163 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Copy sharable link" msgstr "Kopiuj udostępnianą link" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:397 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Copy Shareable Link" msgstr "Kopiuj udostępniany link" -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:81 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "Copy Signing Links" msgstr "Kopiuj linki do podpisania" -#: apps/remix/app/components/forms/token.tsx:284 +#: apps/remix/app/components/forms/token.tsx msgid "Copy token" msgstr "Kopiuj token" -#: apps/remix/app/routes/_profile+/_layout.tsx:83 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:238 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create" msgstr "Utwórz" -#: packages/email/template-components/template-document-self-signed.tsx:47 +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create a <0>free account to access your signed documents at any time." msgstr "Utwórz <0>darmowe konto, aby uzyskać dostęp do podpisanych dokumentów w dowolnym momencie." -#: apps/remix/app/components/forms/signup.tsx:261 +#: apps/remix/app/components/forms/signup.tsx msgid "Create a new account" msgstr "Utwórz nowe konto" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create a team to collaborate with your team members." msgstr "Utwórz zespół, aby współpracować z członkami zespołu." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:136 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:131 -#: packages/email/template-components/template-document-self-signed.tsx:69 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx +#: packages/email/template-components/template-document-self-signed.tsx msgid "Create account" msgstr "Utwórz konto" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:562 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create and send" msgstr "Utwórz i wyślij" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:560 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as draft" msgstr "Utwórz jako szkic" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create as pending" msgstr "Utwórz jako oczekujące" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:35 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Create Direct Link" msgstr "Utwórz bezpośredni link" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:203 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create Direct Signing Link" msgstr "Utwórz bezpośredni link do podpisu" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:224 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create document from template" msgstr "Utwórz dokument z szablonu" -#: apps/remix/app/routes/_profile+/_layout.tsx:79 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Create now" msgstr "Utwórz teraz" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:352 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Create one automatically" msgstr "Utwórz jeden automatycznie" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:564 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create signing links" msgstr "Utwórz linki do podpisania" -#: apps/remix/app/components/general/menu-switcher.tsx:174 -#: apps/remix/app/components/general/menu-switcher.tsx:240 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:137 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:145 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create team" msgstr "Utwórz zespół" -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:225 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Create Team" msgstr "Utwórz zespół" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:370 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Create the document as pending and ready to sign." msgstr "Utwórz dokument jako oczekujący i gotowy do podpisania." -#: apps/remix/app/components/forms/token.tsx:244 -#: apps/remix/app/components/forms/token.tsx:253 +#: apps/remix/app/components/forms/token.tsx +#: apps/remix/app/components/forms/token.tsx msgid "Create token" msgstr "Utwórz token" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:118 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create webhook" msgstr "Utwórz webhook" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Create Webhook" msgstr "Utwórz webhook" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:241 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Create your account and start using state-of-the-art document signing." msgstr "Utwórz swoje konto i zacznij korzystać z nowoczesnego podpisywania dokumentów." -#: apps/remix/app/components/forms/signup.tsx:265 +#: apps/remix/app/components/forms/signup.tsx msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp." msgstr "Utwórz swoje konto i zacznij korzystać z nowoczesnego podpisywania dokumentów. Otwarty i piękny podpis jest w zasięgu ręki." -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:57 -#: apps/remix/app/components/tables/templates-table.tsx:63 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:60 -#: apps/remix/app/components/tables/documents-table.tsx:47 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:110 -#: apps/remix/app/components/general/template/template-page-view-information.tsx:34 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:101 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:35 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:271 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Created" msgstr "Utworzono" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:116 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:39 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Created At" msgstr "Utworzono w" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:90 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Created by" msgstr "Utworzono przez" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:84 -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:74 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx msgid "Created on" msgstr "Utworzone w" #. placeholder {0}: i18n.date(webhook.createdAt, DateTime.DATETIME_FULL) #. placeholder {0}: i18n.date(token.createdAt, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:83 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Created on {0}" msgstr "Utworzono {0}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:142 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "CSV Structure" msgstr "Struktura CSV" -#: apps/remix/app/components/forms/password.tsx:109 +#: apps/remix/app/components/forms/password.tsx msgid "Current Password" msgstr "Obecne hasło" -#: apps/remix/app/components/forms/password.tsx:78 +#: apps/remix/app/components/forms/password.tsx msgid "Current password is incorrect." msgstr "Aktualne hasło jest niepoprawne." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:153 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Current recipients:" msgstr "Aktualni odbiorcy:" -#: apps/remix/app/components/general/billing-plans.tsx:26 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Daily" msgstr "" -#: apps/remix/app/components/general/app-command-menu.tsx:261 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Dark Mode" msgstr "Tryb ciemny" -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:64 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:146 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:815 -#: packages/ui/primitives/document-flow/types.ts:53 -#: packages/ui/primitives/document-flow/add-fields.tsx:940 +#: apps/remix/app/components/tables/settings-security-activity-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Date" msgstr "Data" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:96 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Date created" msgstr "Data utworzenia" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:452 -#: packages/ui/primitives/document-flow/add-settings.tsx:323 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Date Format" msgstr "Format daty" -#: apps/remix/app/components/general/teams/team-invitations.tsx:184 -#: packages/email/templates/team-invite.tsx:101 +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: packages/email/templates/team-invite.tsx msgid "Decline" msgstr "Odmów" -#: apps/remix/app/components/general/teams/team-invitations.tsx:163 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Declined team invitation" msgstr "Odrzucono zaproszenie do zespołu" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:164 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Language" msgstr "Domyślny język dokumentu" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:128 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Default Document Visibility" msgstr "Domyślna widoczność dokumentu" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "delete" msgstr "usuń" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:100 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:103 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:109 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:182 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:216 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:144 -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:87 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:112 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:165 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Delete" msgstr "Usuń" #. placeholder {0}: webhook.webhookUrl #. placeholder {0}: token.name -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:49 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "delete {0}" msgstr "usuń {0}" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "delete {teamName}" msgstr "usuń {teamName}" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:129 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete account" msgstr "Usuń konto" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:97 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:72 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete Account" msgstr "Usuń konto" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete document" msgstr "Usuń dokument" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:86 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:93 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete Document" msgstr "Usuń dokument" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:189 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Delete passkey" msgstr "Usuń klucz dostępu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:195 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:116 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Delete team" msgstr "Usuń zespół" -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "Delete team member" msgstr "Usuń członka zespołu" -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "Delete the document. This action is irreversible so proceed with caution." msgstr "Usuń dokument. Działanie to jest nieodwracalne, więc działaj ostrożnie." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "Delete the users account and all its contents. This action is irreversible and will cancel their subscription, so proceed with caution." msgstr "Usuń konto użytkownika i wszystkie jego treści. Działanie to jest nieodwracalne i anuluję subskrypcję, więc działaj ostrożnie." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:110 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Delete Webhook" msgstr "Usuń webhook" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:75 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Delete your account and all its contents, including completed documents. This action is irreversible and will cancel your subscription, so proceed with caution." msgstr "Usuń swoje konto i wszystkie jego treści, w tym zakończone dokumenty. Działanie to jest nieodwracalne i anuluję twoją subskrypcję, więc działaj ostrożnie." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:102 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:77 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Deleted" msgstr "Usunięto" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:146 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Deleting account..." msgstr "Usuwanie konta..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:186 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Details" msgstr "Szczegóły" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:250 -#: apps/remix/app/components/tables/settings-security-activity-table.tsx:69 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/settings-security-activity-table.tsx msgid "Device" msgstr "Urządzenie" -#: packages/email/templates/reset-password.tsx:72 +#: packages/email/templates/reset-password.tsx msgid "Didn't request a password change? We are here to help you secure your account, just <0>contact us." msgstr "Nie prosiłeś o zmianę hasła? Jesteśmy tutaj, aby pomóc Ci zabezpieczyć swoje konto, po prostu <0>skontaktuj się z nami." -#: apps/remix/app/components/tables/templates-table.tsx:105 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link" msgstr "link bezpośredni" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:83 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:38 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct link" msgstr "Link bezpośredni" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:152 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:223 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Direct Link" msgstr "Bezpośredni link" -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:45 +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx msgid "direct link disabled" msgstr "link bezpośredni wyłączony" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:639 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "Direct link receiver" msgstr "Odbiorca linku bezpośredniego" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:363 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct Link Signing" msgstr "Podpisywanie bezpośrednim linkiem" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:116 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been disabled" msgstr "Podpisywanie bezpośrednim linkiem zostało wyłączone" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:115 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct link signing has been enabled" msgstr "Podpisywanie za pomocą linku bezpośredniego zostało włączone" -#: apps/remix/app/components/tables/templates-table.tsx:109 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Direct link templates contain one dynamic recipient placeholder. Anyone with access to this link can sign the document, and it will then appear on your documents page." msgstr "Szablony linków bezpośrednich zawierają jedno dynamiczne miejsce odbiorcy. Każdy, kto ma dostęp do tego linku, może podpisać dokument, a następnie pojawi się on na stronie twoich dokumentów." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:145 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link deleted" msgstr "Link szablonu bezpośredniego usunięty" #. placeholder {0}: quota.directTemplates #. placeholder {1}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:229 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Direct template link usage exceeded ({0}/{1})" msgstr "Przekroczono użycie linku szablonu bezpośredniego ({0}/{1})" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:414 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Disable" msgstr "Wyłącz" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:111 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:118 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:187 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Disable 2FA" msgstr "Wyłącz 2FA" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:134 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable account" msgstr "Wyłącz konto" -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:90 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:97 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disable Account" msgstr "Wyłącz konto" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Disable Two Factor Authentication before deleting your account." msgstr "Wyłącz dwuskładnikowe uwierzytelnianie przed usunięciem konta." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Disabled" msgstr "Wyłączone" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Disabling direct link signing will prevent anyone from accessing the link." msgstr "Wyłączenie podpisywania za pomocą linku bezpośredniego uniemożliwi dostęp do linku." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:79 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "Disabling the user results in the user not being able to use the account. It also disables all the related contents such as subscription, webhooks, teams, and API keys." msgstr "Wyłączenie użytkownika uniemożliwia korzystanie z konta oraz dezaktywuje powiązane elementy takie jak subskrypcje, webhooki, zespoły i klucze API." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:74 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Display your name and email in documents" msgstr "Wyświetl swoją nazwę i adres e-mail w dokumentach" -#: apps/remix/app/components/general/document/document-edit-form.tsx:155 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Distribute Document" msgstr "Rozprowadź dokument" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Do you want to delete this template?" msgstr "Czy chcesz usunąć ten szablon?" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:56 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Do you want to duplicate this template?" msgstr "Czy chcesz zduplikować ten szablon?" -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:111 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Documenso will delete <0>all of your documents, along with all of your completed documents, signatures, and all other resources belonging to your Account." msgstr "Documenso usunie <0>wszystkie twoje dokumenty, wraz ze wszystkimi zakończonymi dokumentami, podpisami i wszystkimi innymi zasobami należącymi do twojego konta." -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:129 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:36 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Document" msgstr "Dokument" #. placeholder {0}: document.title #. placeholder {1}: recipient.name -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:140 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejected by {1}" msgstr "Dokument \"{0}\" - Odrzucony przez {1}" #. placeholder {0}: document.title -#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-rejection-emails.handler.ts msgid "Document \"{0}\" - Rejection Confirmed" msgstr "Dokument \"{0}\" - Odrzucenie potwierdzone" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:222 -#: packages/ui/primitives/document-flow/add-settings.tsx:225 -#: packages/ui/components/document/document-global-auth-access-select.tsx:61 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "Document access" msgstr "Dostęp do dokumentu" -#: packages/lib/utils/document-audit-logs.ts:325 +#: packages/lib/utils/document-audit-logs.ts msgid "Document access auth updated" msgstr "Zaktualizowano autoryzację dostępu do dokumentu" -#: apps/remix/app/components/general/document/document-status.tsx:47 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document All" msgstr "Wszystkie dokumenty" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:152 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Approved" msgstr "Dokument zatwierdzony" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:176 -#: packages/lib/server-only/document/super-delete-document.ts:99 -#: packages/lib/server-only/document/delete-document.ts:261 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx +#: packages/lib/server-only/document/super-delete-document.ts +#: packages/lib/server-only/document/delete-document.ts msgid "Document Cancelled" msgstr "Dokument anulowany" -#: apps/remix/app/components/general/document/document-status.tsx:29 -#: packages/lib/utils/document-audit-logs.ts:388 -#: packages/lib/utils/document-audit-logs.ts:389 +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Document completed" msgstr "Dokument ukończony" -#: packages/ui/components/document/document-email-checkboxes.tsx:203 -#: packages/ui/components/document/document-email-checkboxes.tsx:279 +#: packages/ui/components/document/document-email-checkboxes.tsx +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document completed email" msgstr "E-mail ukończonego dokumentu" -#: apps/remix/app/components/embed/embed-document-completed.tsx:17 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "Document Completed!" msgstr "Dokument Zakończony!" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:166 -#: packages/lib/utils/document-audit-logs.ts:301 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document created" msgstr "Dokument utworzony" #. placeholder {0}: document.user.name -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:121 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created by <0>{0}" msgstr "Dokument utworzony przez <0>{0}" -#: packages/lib/server-only/template/create-document-from-direct-template.ts:589 -#: packages/email/templates/document-created-from-direct-template.tsx:33 +#: packages/lib/server-only/template/create-document-from-direct-template.ts +#: packages/email/templates/document-created-from-direct-template.tsx msgid "Document created from direct template" msgstr "Dokument utworzony z bezpośredniego szablonu" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:126 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Document created using a <0>direct link" msgstr "Dokument utworzony za pomocą <0>bezpośredniego linku" -#: packages/lib/constants/template.ts:20 +#: packages/lib/constants/template.ts msgid "Document Creation" msgstr "Tworzenie dokumentu" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:58 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:48 -#: packages/lib/utils/document-audit-logs.ts:305 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document deleted" msgstr "Dokument usunięty" -#: packages/ui/components/document/document-email-checkboxes.tsx:241 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document deleted email" msgstr "E-mail usuniętego dokumentu" -#: packages/lib/server-only/document/send-delete-email.ts:86 +#: packages/lib/server-only/document/send-delete-email.ts msgid "Document Deleted!" msgstr "Dokument usunięty!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:263 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:272 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Document Distribution Method" msgstr "Metoda dystrybucji dokumentu" -#: apps/remix/app/components/general/document/document-status.tsx:35 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document draft" msgstr "Szkic dokumentu" -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:61 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Document Duplicated" msgstr "Dokument zduplikowany" -#: packages/lib/utils/document-audit-logs.ts:345 +#: packages/lib/utils/document-audit-logs.ts msgid "Document external ID updated" msgstr "Zaktualizowane ID zewnętrzne dokumentu" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:186 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Document history" msgstr "Historia dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:86 -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:82 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document ID" msgstr "Identyfikator dokumentu" -#: apps/remix/app/components/general/document/document-status.tsx:41 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document inbox" msgstr "Skrzynka odbiorcza dokumentu" -#: apps/remix/app/components/tables/templates-table.tsx:201 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Document Limit Exceeded!" msgstr "Przekroczono limit dokumentów!" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:98 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Document metrics" msgstr "Metryki dokumentów" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:45 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Document moved" msgstr "Dokument przeniesiony" -#: packages/lib/utils/document-audit-logs.ts:353 +#: packages/lib/utils/document-audit-logs.ts msgid "Document moved to team" msgstr "Dokument przeniesiony do zespołu" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:176 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document no longer available to sign" msgstr "Dokument nie jest już dostępny do podpisania" -#: packages/lib/utils/document-audit-logs.ts:337 +#: packages/lib/utils/document-audit-logs.ts msgid "Document opened" msgstr "Dokument otwarty" -#: apps/remix/app/components/general/document/document-status.tsx:23 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Document pending" msgstr "Dokument w toku" -#: packages/ui/components/document/document-email-checkboxes.tsx:164 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Document pending email" msgstr "E-mail oczekującego dokumentu" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Document preferences updated" msgstr "Preferencje dokumentu zaktualizowane" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:95 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Document re-sent" msgstr "Dokument ponownie wysłany" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:97 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:12 -#: packages/email/template-components/template-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx +#: packages/email/template-components/template-document-rejected.tsx msgid "Document Rejected" msgstr "Dokument odrzucone" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Document resealed" msgstr "Dokument ponownie zaplombowany" -#: apps/remix/app/components/general/document/document-edit-form.tsx:292 -#: packages/lib/utils/document-audit-logs.ts:349 +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "Document sent" msgstr "Dokument wysłany" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:150 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Signed" msgstr "Dokument podpisany" -#: packages/lib/utils/document-audit-logs.ts:329 +#: packages/lib/utils/document-audit-logs.ts msgid "Document signing auth updated" msgstr "Zaktualizowano autoryzację podpisu dokumentu" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:138 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document signing process will be cancelled" msgstr "Proces podpisywania dokumentu zostanie anulowany" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:86 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document status" msgstr "Status dokumentu" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:78 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Document title" msgstr "Tytuł dokumentu" -#: packages/lib/utils/document-audit-logs.ts:341 +#: packages/lib/utils/document-audit-logs.ts msgid "Document title updated" msgstr "Zaktualizowano tytuł dokumentu" -#: packages/lib/utils/document-audit-logs.ts:333 +#: packages/lib/utils/document-audit-logs.ts msgid "Document updated" msgstr "Zaktualizowano dokument" -#: apps/remix/app/components/general/document/document-upload.tsx:52 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" msgstr "Przesyłanie dokumentu wyłączone z powodu nieopłaconych faktur" -#: apps/remix/app/components/general/document/document-upload.tsx:77 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" msgstr "Przesłano dokument" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:151 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" msgstr "Dokument został wyświetlony" -#: packages/lib/utils/document-audit-logs.ts:321 +#: packages/lib/utils/document-audit-logs.ts msgid "Document visibility updated" msgstr "Zaktualizowano widoczność dokumentu" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:135 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Document will be permanently deleted" msgstr "Dokument zostanie trwale usunięty" -#: apps/remix/app/routes/_profile+/p.$url.tsx:163 -#: apps/remix/app/routes/_authenticated+/documents._index.tsx:111 -#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx:99 -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:138 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:69 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:89 -#: apps/remix/app/components/general/user-profile-timur.tsx:56 -#: apps/remix/app/components/general/generic-error-layout.tsx:114 -#: apps/remix/app/components/general/app-nav-mobile.tsx:31 -#: apps/remix/app/components/general/app-nav-desktop.tsx:17 -#: apps/remix/app/components/general/app-command-menu.tsx:200 -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:12 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/routes/_authenticated+/documents._index.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx msgid "Documents" msgstr "Dokumenty" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:218 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Documents created from template" msgstr "Dokumenty utworzone z szablonu" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:129 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Received" msgstr "Odebrane dokumenty" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Documents Viewed" msgstr "Wyświetlone dokumenty" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:63 -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:46 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Don't have an account? <0>Sign up" msgstr "Nie masz konta? <0>Zarejestruj się" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:110 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:151 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:139 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:126 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:111 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:116 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:191 -#: packages/ui/components/document/document-download-button.tsx:66 -#: packages/email/template-components/template-document-completed.tsx:57 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: packages/ui/components/document/document-download-button.tsx +#: packages/email/template-components/template-document-completed.tsx msgid "Download" msgstr "Pobierz" -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:78 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Download Audit Logs" msgstr "Pobierz dziennik logów" -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:83 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Download Certificate" msgstr "Pobierz certyfikat" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Download Template CSV" msgstr "Pobierz szablon CSV" -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:206 -#: apps/remix/app/components/general/document/document-status.tsx:34 -#: packages/lib/constants/document.ts:12 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: packages/lib/constants/document.ts msgid "Draft" msgstr "Szkic" -#: apps/remix/app/components/general/app-command-menu.tsx:42 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Draft documents" msgstr "Dokumenty szkiców" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:102 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Drafted Documents" msgstr "Szkice dokumentów" -#: packages/ui/primitives/document-dropzone.tsx:156 +#: packages/ui/primitives/document-dropzone.tsx msgid "Drag & drop your PDF here." msgstr "Przeciągnij i upuść swój PDF tutaj." -#: packages/ui/primitives/template-flow/add-template-fields.tsx:946 -#: packages/ui/primitives/document-flow/add-fields.tsx:1071 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Dropdown" msgstr "Lista rozwijana" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:157 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Dropdown options" msgstr "Opcje rozwijane" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:120 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Due to an unpaid invoice, your team has been restricted. Please settle the payment to restore full access to your team." msgstr "Z powodu nieopłaconej faktury Twój zespół został ograniczony. Proszę uregulować płatność, aby przywrócić pełny dostęp do zespołu." -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:78 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:156 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:139 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:83 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:89 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:122 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Duplicate" msgstr "Zduplikuj" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:95 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:90 -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:69 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:116 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:145 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:100 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:76 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:118 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:104 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx msgid "Edit" msgstr "Edytuj" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:135 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Edit Template" msgstr "Edytuj szablon" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:93 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:90 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Edit webhook" msgstr "Edytuj webhook" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:74 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Delivery of Documents" msgstr "Elektroniczna dostawa dokumentów" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:13 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Electronic Signature Disclosure" msgstr "Ujawnienie podpisu elektronicznego" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:128 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:135 -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:114 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:158 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:68 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:131 -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:120 -#: apps/remix/app/components/forms/signin.tsx:318 -#: apps/remix/app/components/forms/profile.tsx:108 -#: apps/remix/app/components/forms/forgot-password.tsx:77 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:409 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:405 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:275 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:282 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:150 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:166 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:529 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:536 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:763 -#: packages/ui/primitives/document-flow/types.ts:54 -#: packages/ui/primitives/document-flow/add-signers.tsx:510 -#: packages/ui/primitives/document-flow/add-signers.tsx:517 -#: packages/ui/primitives/document-flow/add-fields.tsx:888 -#: packages/lib/constants/document.ts:27 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx +#: packages/lib/constants/document.ts msgid "Email" msgstr "Adres e-mail" -#: apps/remix/app/components/general/claim-account.tsx:129 -#: apps/remix/app/components/forms/send-confirmation-email.tsx:80 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:296 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/send-confirmation-email.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Email address" msgstr "Adres e-mail" -#: apps/remix/app/components/forms/signup.tsx:325 +#: apps/remix/app/components/forms/signup.tsx msgid "Email Address" msgstr "Adres e-mail" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:172 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email already confirmed" msgstr "" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:82 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Email cannot already exist in the template" msgstr "E-mail nie może już istnieć w szablonie" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Email Confirmed!" msgstr "E-mail potwierdzony!" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:351 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Email Options" msgstr "Opcje e-mail" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email resent" msgstr "E-mail wysłany ponownie" -#: packages/lib/utils/document-audit-logs.ts:382 +#: packages/lib/utils/document-audit-logs.ts msgid "Email sent" msgstr "E-mail wysłany" -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Email sent!" msgstr "E-mail wysłany!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Email verification has been removed" msgstr "Weryfikacja e-mailu została usunięta" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:32 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Email verification has been resent" msgstr "Weryfikacja e-mailu została ponownie wysłana" -#: packages/ui/primitives/document-flow/add-fields.tsx:1136 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Empty field" msgstr "Puste pole" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:159 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:268 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable 2FA" msgstr "Włącz 2FA" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:120 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable account" msgstr "Włącz konto" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:87 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:94 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enable Account" msgstr "Włącz konto" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:200 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Enable Authenticator App" msgstr "Włącz aplikację uwierzytelniającą" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:169 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enable custom branding for all documents in this team." msgstr "Włącz niestandardowe brandowanie dla wszystkich dokumentów w tym zespole." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:374 -#: packages/lib/constants/template.ts:8 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/constants/template.ts msgid "Enable Direct Link Signing" msgstr "Włącz podpisywanie linku bezpośredniego" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:428 -#: packages/ui/primitives/document-flow/add-signers.tsx:399 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Enable signing order" msgstr "Włącz kolejność podpisów" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:247 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Enable Typed Signature" msgstr "Włącz podpis pisany" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:684 -#: packages/ui/primitives/document-flow/add-fields.tsx:809 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Enable Typed Signatures" msgstr "Włącz podpisy typu pisanego" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:74 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:135 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:69 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:134 -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:128 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:159 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Enabled" msgstr "Włączone" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:76 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "Enabling the account results in the user being able to use the account again, and all the related features such as webhooks, teams, and API keys for example." msgstr "Włączenie konta pozwala użytkownikowi na ponowne korzystanie z niego oraz przywraca wszystkie powiązane funkcje, takie jak webhooki, zespoły i klucze API." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:92 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Enclosed Document" msgstr "Załączony dokument" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:42 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Ends On" msgstr "Kończy się" -#: packages/ui/primitives/document-password-dialog.tsx:85 -msgid "Enter password" -msgstr "Wprowadź hasło" - -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:294 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Enter your brand details" msgstr "Wprowadź szczegóły swojej marki" -#: apps/remix/app/components/general/claim-account.tsx:132 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your email" msgstr "Wprowadź swój adres e-mail" -#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx:137 +#: apps/remix/app/components/general/direct-template/direct-template-configure-form.tsx msgid "Enter your email address to receive the completed document." msgstr "Wprowadź swój adres e-mail, aby otrzymać ukończony dokument." -#: apps/remix/app/components/general/claim-account.tsx:117 +#: apps/remix/app/components/general/claim-account.tsx msgid "Enter your name" msgstr "Wprowadź swoje imię" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:305 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx msgid "Enter your text here" msgstr "Wprowadź swój tekst tutaj" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:78 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:60 -#: apps/remix/app/components/general/verify-email-banner.tsx:56 -#: apps/remix/app/components/general/template/template-edit-form.tsx:148 -#: apps/remix/app/components/general/template/template-edit-form.tsx:176 -#: apps/remix/app/components/general/template/template-edit-form.tsx:216 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:178 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:208 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:128 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:161 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:187 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:102 -#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx:131 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:152 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:203 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:126 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:154 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:83 -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:111 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:86 -#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:101 -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:135 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:95 -#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:125 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx:214 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:148 -#: apps/remix/app/components/general/document/document-upload.tsx:103 -#: apps/remix/app/components/general/document/document-edit-form.tsx:204 -#: apps/remix/app/components/general/document/document-edit-form.tsx:234 -#: apps/remix/app/components/general/document/document-edit-form.tsx:269 -#: apps/remix/app/components/general/document/document-edit-form.tsx:311 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:94 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:185 -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:84 -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:44 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:59 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:62 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:62 -#: packages/ui/primitives/pdf-viewer.tsx:166 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:222 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-radio-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-email-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-date-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-checkbox-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document/document-upload.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Error" msgstr "Błąd" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:139 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Everyone can access and view the document" msgstr "Każdy może uzyskać dostęp do dokumentu i go wyświetlić" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:160 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed" msgstr "Wszyscy podpisali" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:184 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Everyone has signed! You will receive an Email copy of the signed document." msgstr "Wszyscy podpisali! Otrzymasz wiadomość e-mail z podpisanym dokumentem." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:231 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Exceeded timeout" msgstr "Przekroczono limit czasu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:118 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Expired" msgstr "Wygasło" #. placeholder {0}: i18n.date(token.expires, DateTime.DATETIME_FULL) -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:89 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Expires on {0}" msgstr "Wygasa {0}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:422 -#: packages/ui/primitives/document-flow/add-settings.tsx:293 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "External ID" msgstr "Zewnętrzny ID" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:61 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Failed to reseal document" msgstr "Nie udało się ponownie zaplombować dokumentu" -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:223 +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Failed to save settings." msgstr "Nie udało się zapisać ustawień." -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:117 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Failed to update recipient" msgstr "Nie udało się zaktualizować odbiorcy" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:81 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Failed to update webhook" msgstr "Nie udało się zaktualizować webhooku" -#: packages/email/templates/bulk-send-complete.tsx:55 +#: packages/email/templates/bulk-send-complete.tsx msgid "Failed: {failedCount}" msgstr "Niepowodzenia: {failedCount}" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:101 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field character limit" msgstr "Limit znaków pola" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:115 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:129 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:47 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:52 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:70 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Field font size" msgstr "Rozmiar czcionki pola" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:109 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Field format" msgstr "Format pola" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:61 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field label" msgstr "Etykieta pola" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:73 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx msgid "Field placeholder" msgstr "Zastępczy tekst pola" -#: packages/lib/utils/document-audit-logs.ts:317 +#: packages/lib/utils/document-audit-logs.ts msgid "Field prefilled by assistant" msgstr "" -#: packages/lib/utils/document-audit-logs.ts:309 +#: packages/lib/utils/document-audit-logs.ts msgid "Field signed" msgstr "Pole podpisane" -#: packages/lib/utils/document-audit-logs.ts:313 +#: packages/lib/utils/document-audit-logs.ts msgid "Field unsigned" msgstr "Pole niepodpisane" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:182 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Fields" msgstr "Pola" -#: apps/remix/app/components/general/document/document-upload.tsx:116 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "File cannot be larger than {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" msgstr "Plik nie może mieć większej wielkości niż {APP_DOCUMENT_UPLOAD_SIZE_LIMIT}MB" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:511 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "File size exceeds the limit of {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" msgstr "Rozmiar pliku przekracza limit {APP_DOCUMENT_UPLOAD_SIZE_LIMIT} MB" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:109 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:123 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:41 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:46 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:64 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Font Size" msgstr "Rozmiar czcionki" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "For any questions regarding this disclosure, electronic signatures, or any related process, please contact us at: <0>{SUPPORT_EMAIL}" msgstr "W przypadku jakichkolwiek pytań dotyczących tego ujawnienia, podpisów elektronicznych lub jakiegokolwiek powiązanego procesu, prosimy o kontakt z nami pod adresem: <0>{SUPPORT_EMAIL}" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:146 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." msgstr "Dla każdego odbiorcy podaj jego email (wymagany) i nazwę (opcjonalnie) w oddzielnych kolumnach. Pobierz poniżej szablon CSV dla właściwego formatu." -#: packages/lib/server-only/auth/send-forgot-password.ts:62 +#: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" msgstr "Zapomniałeś hasła?" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:16 -#: apps/remix/app/components/forms/signin.tsx:350 -#: packages/email/template-components/template-forgot-password.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Forgot your password?" msgstr "Zapomniałeś swoje hasło?" -#: packages/ui/primitives/document-flow/types.ts:50 +#: packages/ui/primitives/document-flow/types.ts msgid "Free Signature" msgstr "Podpis wolny" -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:212 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:328 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:323 -#: apps/remix/app/components/forms/signup.tsx:309 -#: apps/remix/app/components/forms/profile.tsx:96 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:394 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:390 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Full Name" msgstr "Imię i nazwisko" -#: apps/remix/app/components/general/template/template-edit-form.tsx:72 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:35 -#: apps/remix/app/components/general/document/document-edit-form.tsx:140 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:63 +#: apps/remix/app/components/general/template/template-edit-form.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx +#: apps/remix/app/components/general/document/document-edit-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "General" msgstr "Ogólne" -#: packages/ui/primitives/document-flow/add-subject.tsx:84 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Generate Links" msgstr "Generuj linki" -#: packages/ui/components/document/document-global-auth-action-select.tsx:63 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "Global recipient action authentication" msgstr "Globalne uwierzytelnianie akcji odbiorcy" -#: apps/remix/app/routes/_recipient+/_layout.tsx:41 -#: apps/remix/app/routes/_profile+/_layout.tsx:116 -#: apps/remix/app/components/general/generic-error-layout.tsx:106 -#: packages/ui/primitives/document-flow/document-flow-root.tsx:141 +#: apps/remix/app/routes/_recipient+/_layout.tsx +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" msgstr "Wróć" -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:35 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:100 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:128 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:183 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Go back home" msgstr "Wróć do domu" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:252 -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:193 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Go Back Home" msgstr "Wróć do domu" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:125 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Go to owner" msgstr "Przejdź do właściciela" -#: apps/remix/app/routes/_profile+/p.$url.tsx:144 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Go to your <0>public profile settings to add documents." msgstr "Przejdź do swojego <0>ustawienia profilu publicznego, aby dodać dokumenty." -#: packages/ui/primitives/signature-pad/signature-pad.tsx:555 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Green" msgstr "Zielony" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:118 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to approve this document" msgstr "Zaproszono Cię do zatwierdzenia tego dokumentu" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:127 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to assist this document" msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:109 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to sign this document" msgstr "Zaproszono Cię do podpisania tego dokumentu" -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:100 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "has invited you to view this document" msgstr "Zaproszono Cię do wyświetlenia tego dokumentu" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:226 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:323 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:359 -#: packages/ui/primitives/document-flow/add-signers.tsx:259 -#: packages/ui/primitives/document-flow/add-signers.tsx:297 -#: packages/ui/primitives/document-flow/add-signers.tsx:336 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Having an assistant as the last signer means they will be unable to take any action as there are no subsequent signers to assist." msgstr "" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:324 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Help complete the document for other signers." msgstr "" -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:21 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx msgid "Here you can edit your personal details." msgstr "Tutaj możesz edytować szczegóły konta." -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:68 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Here you can manage your password and security settings." msgstr "Tutaj możesz zarządzać swoim hasłem i ustawieniami zabezpieczeń." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:41 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for branding." msgstr "Tutaj możesz ustawić preferencje i domyślne ustawienia dla brandowania." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:32 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Here you can set preferences and defaults for your team." msgstr "Tutaj możesz ustawić preferencje i domyślne ustawienia dla swojego zespołu." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:207 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Here's how it works:" msgstr "Oto jak to działa:" -#: apps/remix/app/components/general/user-profile-timur.tsx:45 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Hey I’m Timur" msgstr "Cześć, jestem Timur" -#: packages/email/templates/bulk-send-complete.tsx:36 +#: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," msgstr "Cześć, {userName}," -#: packages/email/templates/reset-password.tsx:57 +#: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" msgstr "Cześć, {userName} <0>({userEmail})" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:164 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:175 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Hide" msgstr "Ukryj" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:109 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Hide additional information" msgstr "Ukryj dodatkowe informacje" -#: packages/lib/constants/recipient-roles.ts:57 +#: packages/lib/constants/recipient-roles.ts msgid "I am a signer of this document" msgstr "Jestem sygnatariuszem tego dokumentu" -#: packages/lib/constants/recipient-roles.ts:60 +#: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" msgstr "Jestem widzem tego dokumentu" -#: packages/lib/constants/recipient-roles.ts:58 +#: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" msgstr "Jestem zatwierdzającym tego dokumentu" -#: packages/lib/constants/recipient-roles.ts:61 +#: packages/lib/constants/recipient-roles.ts msgid "I am an assistant of this document" msgstr "" -#: packages/lib/constants/recipient-roles.ts:59 +#: packages/lib/constants/recipient-roles.ts msgid "I am required to receive a copy of this document" msgstr "Muszę otrzymać kopię tego dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:35 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "I am the owner of this document" msgstr "Jestem właścicielem tego dokumentu" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:166 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:177 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "I'm sure! Delete it" msgstr "Jestem pewny! Usuń to" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:100 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "If they accept this request, the team will be transferred to their account." msgstr "Jeśli zaakceptują tę prośbę, zespół zostanie przeniesiony na ich konto." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:195 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "If you do not want to use the authenticator prompted, you can close it, which will then display the next available authenticator." msgstr "Jeśli nie chcesz korzystać z proponowanego uwierzytelnienia, możesz je zamknąć, a następnie wyświetlić następne dostępne uwierzytelnienie." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:26 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "If you don't find the confirmation link in your inbox, you can request a new one below." msgstr "Jeśli nie znajdziesz linku potwierdzającego w swojej skrzynce odbiorczej, możesz poprosić o nowy poniżej." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:219 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "If your authenticator app does not support QR codes, you can use the following code instead:" msgstr "Jeśli Twoja aplikacja uwierzytelniająca nie obsługuje kodów QR, możesz użyć poniższego kodu:" -#: apps/remix/app/components/general/document/document-status.tsx:40 +#: apps/remix/app/components/general/document/document-status.tsx msgid "Inbox" msgstr "Skrzynka odbiorcza" -#: apps/remix/app/components/general/app-command-menu.tsx:48 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Inbox documents" msgstr "Skrzynka odbiorcza dokumentów" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:277 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Include the Signing Certificate in the Document" msgstr "Dołącz certyfikat podpisu do dokumentu" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:50 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:53 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Information" msgstr "Informacje" -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:28 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:86 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Inherit authentication method" msgstr "Przechwyć metodę uwierzytelniania" -#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx:133 -#: packages/ui/primitives/document-flow/types.ts:51 +#: apps/remix/app/components/general/document-signing/document-signing-initials-field.tsx +#: packages/ui/primitives/document-flow/types.ts msgid "Initials" msgstr "Inicjały" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:70 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Inserted" msgstr "Wstawione" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:80 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Instance Stats" msgstr "Statystyki instancji" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:160 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Invalid code. Please try again." msgstr "Nieprawidłowy kod. Proszę spróbuj ponownie." -#: packages/ui/primitives/document-flow/add-signers.types.ts:17 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Invalid email" msgstr "Nieprawidłowy email" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:75 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:98 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Invalid link" msgstr "Nieprawidłowy link" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:98 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:95 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invalid token" msgstr "Nieprawidłowy token" -#: apps/remix/app/components/forms/reset-password.tsx:80 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Invalid token provided. Please try again." msgstr "Podano nieprawidłowy token. Spróbuj ponownie." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:146 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "Invitation accepted!" msgstr "Zaproszenie zaakceptowane!" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Invitation declined" msgstr "Zaproszenie odrzucone" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:74 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been deleted" msgstr "Zaproszenie zostało usunięte" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:57 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invitation has been resent" msgstr "Zaproszenie zostało ponownie wysłane" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:372 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite" msgstr "Zaproszenie" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:246 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite member" msgstr "Zaproś członka" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:271 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite Members" msgstr "Zaproś członków" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:254 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Invite team members" msgstr "Zaproś członków zespołu" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:122 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Invited At" msgstr "Zaproś o" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:55 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Invoice" msgstr "Faktura" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:243 -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:47 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/internal-audit-log-table.tsx msgid "IP Address" msgstr "Adres IP" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:114 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "It is crucial to keep your contact information, especially your email address, up to date with us. Please notify us immediately of any changes to ensure that you continue to receive all necessary communications." msgstr "Konieczne jest, aby mieć aktualne informacje kontaktowe, szczególnie swój adres e-mail. Proszę niezwłocznie powiadomić nas o wszelkich zmianach, aby zapewnić ciągłość wszystkich niezbędnych komunikacji." #. placeholder {0}: publicProfile.name -#: apps/remix/app/routes/_profile+/p.$url.tsx:131 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "It looks like {0} hasn't added any documents to their profile yet." msgstr "Wygląda na to, że {0} jeszcze nie dodał żadnych dokumentów do swojego profilu." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "It seems that the provided token has expired. We've just sent you another token, please check your email and try again." msgstr "Wydaje się, że podany token wygasł. Właśnie wysłaliśmy Ci nowy token, proszę sprawdź swoją pocztę i spróbuj ponownie." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:27 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "It seems that there is no token provided, if you are trying to verify your email please follow the link in your email." msgstr "Wydaje się, że nie podano tokena, jeśli próbujesz zweryfikować swój e-mail, proszę postępuj zgodnie z linkiem w swoim e-mailu." -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:34 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "It's currently not your turn to sign. Please check back soon as this document should be available for you to sign shortly." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:79 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "It's currently not your turn to sign. You will receive an email with instructions once it's your turn to sign the document." msgstr "Obecnie nie jest Twój czas na podpisanie dokumentu. Otrzymasz e-mail z instrukcjami, gdy przyjdzie Twój czas na podpisanie dokumentu." -#: packages/email/templates/team-invite.tsx:73 +#: packages/email/templates/team-invite.tsx msgid "Join {teamName} on Documenso" msgstr "Dołącz do {teamName} na Documenso" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:56 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:66 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:71 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Label" msgstr "Etykieta" -#: apps/remix/app/components/general/menu-switcher.tsx:275 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:182 -#: packages/ui/primitives/document-flow/add-settings.tsx:185 +#: apps/remix/app/components/general/menu-switcher.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Language" msgstr "Język" -#: apps/remix/app/components/general/period-selector.tsx:62 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 14 days" msgstr "Ostatnie 14 dni" -#: apps/remix/app/components/general/period-selector.tsx:65 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 30 days" msgstr "Ostatnie 30 dni" -#: apps/remix/app/components/general/period-selector.tsx:59 +#: apps/remix/app/components/general/period-selector.tsx msgid "Last 7 days" msgstr "Ostatnie 7 dni" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:38 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:41 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Last modified" msgstr "Ostatnia modyfikacja" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:102 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Last updated" msgstr "Zaktualizowano" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Last Updated" msgstr "Zaktualizowano" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Last updated at" msgstr "Ostatnia aktualizacja o" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:66 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Last used" msgstr "Ostatnie użycie" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:97 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Leaderboard" msgstr "Ranking" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:114 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:110 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave" msgstr "Wyjdź" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:72 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "Leave team" msgstr "Opuszczaj zespół" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:41 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Legality of Electronic Signatures" msgstr "Legalność podpisów elektronicznych" -#: apps/remix/app/components/general/app-command-menu.tsx:260 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Light Mode" msgstr "Jasny tryb" -#: apps/remix/app/routes/_profile+/_layout.tsx:71 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Like to have your own public profile with agreements?" msgstr "Czy chcesz mieć własny publiczny profil z umowami?" -#: packages/email/templates/team-transfer-request.tsx:88 -#: packages/email/templates/confirm-team-email.tsx:125 +#: packages/email/templates/team-transfer-request.tsx +#: packages/email/templates/confirm-team-email.tsx msgid "Link expires in 1 hour." msgstr "Link wygasa za 1 godzinę." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:225 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Link template" msgstr "Szablon linku" -#: apps/remix/app/components/general/document/document-edit-form.tsx:300 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Links Generated" msgstr "Wygenerowane linki" #. placeholder {0}: webhook.eventTriggers .map((trigger) => toFriendlyWebhookEventName(trigger)) .join(', ') -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:79 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:74 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "Listening to {0}" msgstr "Słuchając {0}" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Load older activity" msgstr "Załaduj starszą aktywność" -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:29 -#: packages/ui/primitives/pdf-viewer.tsx:44 -#: packages/ui/primitives/lazy-pdf-viewer.tsx:12 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Loading document..." msgstr "Ładowanie dokumentu..." -#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx:16 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:95 +#: apps/remix/app/components/general/skeletons/document-edit-skeleton.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Loading Document..." msgstr "Ładowanie dokumentu..." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:119 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:89 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Loading teams..." msgstr "Ładowanie zespołów..." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:97 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Loading..." msgstr "Ładowanie..." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:79 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:51 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "Login" msgstr "Zaloguj się" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Manage" msgstr "Zarządzaj" #. placeholder {0}: user?.name -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Manage {0}'s profile" msgstr "Zarządzaj profilem {0}" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:23 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx msgid "Manage all teams you are currently associated with." msgstr "Zarządzaj wszystkimi zespołami, z którymi jesteś obecnie związany." -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:183 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Manage and view template" msgstr "Zarządzaj i przeglądaj szablon" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:146 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Manage billing" msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:338 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Manage details for this public template" msgstr "Zarządzaj szczegółami tego publicznego szablonu" -#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx:33 +#: apps/remix/app/components/dialogs/template-direct-link-dialog-wrapper.tsx msgid "Manage Direct Link" msgstr "Zarządzaj Bezpośrednim Linkiem" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:134 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Manage documents" msgstr "Zarządzaj dokumentami" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:149 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Manage passkeys" msgstr "Zarządzaj kluczami dostępu" -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:40 +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "Manage subscription" msgstr "Zarządzaj subskrypcją" -#: apps/remix/app/components/general/billing-portal-button.tsx:45 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "Manage Subscription" msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:28 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "Manage subscriptions" msgstr "Zarządzaj subskrypcjami" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:93 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Manage team subscription." msgstr "Zarządzaj subskrypcją zespołu." -#: apps/remix/app/components/general/menu-switcher.tsx:161 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Manage teams" msgstr "Zarządzaj zespołami" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:367 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Manage the direct link signing for this template" msgstr "Zarządzaj podpisywaniem bezpośredniego linku dla tego szablonu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:53 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx msgid "Manage the members or invite new members." msgstr "Zarządzaj członkami lub zaproś nowych członków." -#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/admin+/users._index.tsx msgid "Manage users" msgstr "Zarządzaj użytkownikami" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:20 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx msgid "Manage your passkeys." msgstr "Zarządzaj kluczami dostępu." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:101 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Manage your site settings here" msgstr "Zarządzaj ustawieniami swojej witryny tutaj" -#: packages/lib/constants/teams.ts:10 +#: packages/lib/constants/teams.ts msgid "Manager" msgstr "Menedżer" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:141 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Oznacz jako wyświetlone" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:153 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (created document)" msgstr "MAU (utworzony dokument)" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:159 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "MAU (had document completed)" msgstr "MAU (zakończony dokument)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:208 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" msgstr "Max" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:226 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." msgstr "Maksymalny rozmiar pliku: 4MB. Maksymalnie 100 wierszy na przesyłkę. Puste wartości zostaną zastąpione domyślnymi z szablonu." -#: packages/lib/constants/teams.ts:11 +#: packages/lib/constants/teams.ts msgid "Member" msgstr "Członek" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:87 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:98 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Member Since" msgstr "Data dołączenia" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:52 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:84 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:75 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Members" msgstr "Członkowie" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:382 -#: packages/ui/primitives/document-flow/add-subject.tsx:155 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Message <0>(Optional)" msgstr "Wiadomość <0>(Opcjonalnie)" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:196 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Min" msgstr "Min" -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:35 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Modify recipients" msgstr "Modyfikuj odbiorców" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:60 -#: apps/remix/app/components/general/billing-plans.tsx:28 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Monthly" msgstr "Miesięczny" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:154 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that created at least one Document" msgstr "Miesięczni aktywni użytkownicy: Użytkownicy, którzy utworzyli przynajmniej jeden dokument" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:161 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Monthly Active Users: Users that had at least one of their documents completed" msgstr "Miesięczni aktywni użytkownicy: Użytkownicy, którzy mieli przynajmniej jeden z ukończonych dokumentów" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move" msgstr "Przenieś" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:75 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Move Document to Team" msgstr "Przenieś dokument do zespołu" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:105 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Move Template to Team" msgstr "Przenieś szablon do zespołu" -#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx:89 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:163 +#: apps/remix/app/components/tables/templates-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx msgid "Move to Team" msgstr "Przenieś do zespołu" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:152 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:118 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Moving..." msgstr "Przenoszenie..." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:36 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "My templates" msgstr "Moje szablony" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:99 -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:56 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:149 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:54 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:140 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:63 -#: apps/remix/app/components/general/claim-account.tsx:114 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:177 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:297 -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:304 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:138 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:150 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:564 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:570 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:789 -#: packages/ui/primitives/document-flow/types.ts:55 -#: packages/ui/primitives/document-flow/add-signers.tsx:548 -#: packages/ui/primitives/document-flow/add-signers.tsx:554 -#: packages/ui/primitives/document-flow/add-fields.tsx:914 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Name" msgstr "Nazwa" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:237 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Need to sign documents?" msgstr "Potrzebujesz podpisać dokumenty?" -#: packages/ui/components/recipient/recipient-role-select.tsx:53 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to approve" msgstr "Wymaga zatwierdzenia" -#: packages/ui/components/recipient/recipient-role-select.tsx:32 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to sign" msgstr "Wymaga podpisania" -#: packages/ui/components/recipient/recipient-role-select.tsx:74 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Needs to view" msgstr "Wymaga obejrzenia" -#: apps/remix/app/components/tables/settings-security-passkey-table.tsx:71 +#: apps/remix/app/components/tables/settings-security-passkey-table.tsx msgid "Never" msgstr "Nigdy" -#: apps/remix/app/components/forms/token.tsx:218 +#: apps/remix/app/components/forms/token.tsx msgid "Never expire" msgstr "Nigdy nie wygasa" -#: apps/remix/app/components/forms/password.tsx:125 +#: apps/remix/app/components/forms/password.tsx msgid "New Password" msgstr "" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:174 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "New team owner" msgstr "Nowy właściciel zespołu" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:88 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:95 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "New Template" msgstr "Nowy szablon" -#: apps/remix/app/components/forms/signup.tsx:515 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:465 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:460 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Next" msgstr "Dalej" -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:61 +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Next field" msgstr "Następne pole" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:24 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "No active drafts" msgstr "Brak aktywnych szkiców" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:113 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:28 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "No further action is required from you at this time." msgstr "Nie są wymagane żadne dalsze działania z Twojej strony w tym momencie." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:49 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "No payment required" msgstr "Brak wymaganej płatności" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:119 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "No public profile templates found" msgstr "Nie znaleziono szablonów profilu publicznego" -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "No recent activity" msgstr "Brak ostatnich aktywności" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:95 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "No recent documents" msgstr "Brak ostatnich dokumentów" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:604 -#: packages/ui/primitives/document-flow/add-fields.tsx:701 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipient matching this description was found." msgstr "Nie znaleziono odbiorcy pasującego do tego opisu." -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:49 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:69 -#: packages/ui/primitives/document-flow/add-subject.tsx:210 +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "No recipients" msgstr "Brak odbiorców" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:619 -#: packages/ui/primitives/document-flow/add-fields.tsx:716 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "No recipients with this role" msgstr "Brak odbiorców z tą rolą" -#: packages/ui/components/document/document-global-auth-action-select.tsx:30 -#: packages/ui/components/document/document-global-auth-action-select.tsx:45 -#: packages/ui/components/document/document-global-auth-access-select.tsx:29 -#: packages/ui/components/document/document-global-auth-access-select.tsx:42 +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-action-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "No restrictions" msgstr "Brak ograniczeń" -#: packages/ui/primitives/data-table.tsx:146 +#: packages/ui/primitives/data-table.tsx msgid "No results found" msgstr "Nie znaleziono wyników" -#: apps/remix/app/components/general/app-command-menu.tsx:195 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "No results found." msgstr "Brak wyników." -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:28 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "No signature field found" msgstr "Nie znaleziono pola podpisu" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:281 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "No valid direct templates found" msgstr "Nie znaleziono ważnych szablonów bezpośrednich" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:294 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "No valid recipients found" msgstr "Nie znaleziono ważnych odbiorców" -#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx:77 -#: apps/remix/app/components/general/multiselect-role-combobox.tsx:64 -#: packages/ui/primitives/multi-select-combobox.tsx:151 -#: packages/ui/primitives/combobox.tsx:61 +#: apps/remix/app/components/general/webhook-multiselect-combobox.tsx +#: apps/remix/app/components/general/multiselect-role-combobox.tsx +#: packages/ui/primitives/multi-select-combobox.tsx +#: packages/ui/primitives/combobox.tsx msgid "No value found." msgstr "Nie znaleziono wartości." -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "No worries, it happens! Enter your email and we'll email you a special link to reset your password." msgstr "Nie martw się, to się zdarza! Wprowadź swój e-mail, a my wyślemy Ci specjalny link do zresetowania hasła." -#: packages/lib/constants/document.ts:31 +#: packages/lib/constants/document.ts msgid "None" msgstr "Brak" -#: apps/remix/app/components/forms/signin.tsx:155 +#: apps/remix/app/components/forms/signin.tsx msgid "Not supported" msgstr "Nieobsługiwane" -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:19 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:34 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "Nothing to do" msgstr "Nic do zrobienia" -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:292 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:867 -#: packages/ui/primitives/document-flow/types.ts:56 -#: packages/ui/primitives/document-flow/add-fields.tsx:992 +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Number" msgstr "Numer" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:102 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Number format" msgstr "Format liczby" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to approve this document" msgstr "W imieniu \"{0}\" zaproszono Cię do zatwierdzenia tego dokumentu" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:123 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to assist this document" msgstr "" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to sign this document" msgstr "W imieniu \"{0}\" zaproszono Cię do podpisania tego dokumentu" #. placeholder {0}: document.team?.name -#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx:96 +#: apps/remix/app/components/general/document-signing/document-signing-page-view.tsx msgid "on behalf of \"{0}\" has invited you to view this document" msgstr "W imieniu \"{0}\" zaproszono Cię do wyświetlenia tego dokumentu" -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:121 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "On this page, you can create a new webhook." msgstr "Na tej stronie możesz utworzyć nowy webhook." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:28 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "On this page, you can create and manage API tokens. See our <0>Documentation for more information." msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:32 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:27 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "On this page, you can create new Webhooks and manage the existing ones." msgstr "Na tej stronie możesz utworzyć nowe webhooki i zarządzać istniejącymi." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:94 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:91 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "On this page, you can edit the webhook and its settings." msgstr "Na tej stronie możesz edytować webhook i jego ustawienia." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:130 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Once confirmed, the following will occur:" msgstr "Po potwierdzeniu, nastąpi:" -#: packages/lib/constants/template.ts:9 +#: packages/lib/constants/template.ts msgid "Once enabled, you can select any active recipient to be a direct link signing recipient, or create a new one. This recipient type cannot be edited or deleted." msgstr "Po włączeniu możesz wybrać dowolnego aktywnego odbiorcę na sygnatariusza bezpośredniego lub utworzyć nowego. Tego typu odbiorca nie może być edytowany ani usunięty." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:230 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Once you have scanned the QR code or entered the code manually, enter the code provided by your authenticator app below." msgstr "Po zeskanowaniu kodu QR lub ręcznym wpisaniu kodu, wprowadź poniżej kod dostarczony przez swoją aplikację uwierzytelniającą." -#: packages/lib/constants/template.ts:17 +#: packages/lib/constants/template.ts msgid "Once your template is set up, share the link anywhere you want. The person who opens the link will be able to enter their information in the direct link recipient field and complete any other fields assigned to them." msgstr "Po skonfigurowaniu szablonu udostępnij link wszędzie, gdzie chcesz. Osoba, która otworzy link, będzie mogła wprowadzić swoje dane w polu odbiorcy linku bezpośredniego i wypełnić wszelkie inne przypisane jej pola." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:145 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only admins can access and view the document" msgstr "Tylko administratorzy mogą uzyskać dostęp do dokumentu i go wyświetlić" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:142 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Only managers and above can access and view the document" msgstr "Tylko menedżerowie i wyżej mogą uzyskać dostęp do dokumentu i go wyświetlić" -#: apps/remix/app/components/forms/signup.tsx:75 +#: apps/remix/app/components/forms/signup.tsx msgid "Only subscribers can have a username shorter than 6 characters" msgstr "Tylko subskrybenci mogą mieć nazwę użytkownika krótszą niż 6 znaków" -#: apps/remix/app/routes/_profile+/_layout.tsx:103 -#: apps/remix/app/components/general/generic-error-layout.tsx:42 -#: apps/remix/app/components/general/generic-error-layout.tsx:47 +#: apps/remix/app/routes/_profile+/_layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "Oops! Something went wrong." msgstr "Ups! Coś poszło nie tak." -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:138 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Opened" msgstr "Otwarto" -#: apps/remix/app/components/forms/signup.tsx:380 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:338 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Or" msgstr "Lub" -#: apps/remix/app/components/forms/signin.tsx:370 +#: apps/remix/app/components/forms/signin.tsx msgid "Or continue with" msgstr "Lub kontynuuj z" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:349 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Otherwise, the document will be created as a draft." msgstr "W przeciwnym razie dokument zostanie utworzony jako wersja robocza." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:108 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:81 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:83 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:94 -#: apps/remix/app/components/general/menu-switcher.tsx:78 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Owner" msgstr "Właściciel" #. placeholder {0}: table.getState().pagination.pageIndex + 1 #. placeholder {1}: table.getPageCount() || 1 -#: packages/ui/primitives/data-table-pagination.tsx:77 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Page {0} of {1}" msgstr "Strona {0} z {1}" #. placeholder {0}: i + 1 -#: packages/ui/primitives/pdf-viewer.tsx:259 +#: packages/ui/primitives/pdf-viewer.tsx msgid "Page {0} of {numPages}" msgstr "Strona {0} z {numPages}" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Paid" msgstr "Opłacono" -#: apps/remix/app/components/forms/signin.tsx:414 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkey" msgstr "Klucz dostępu" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:228 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey already exists for the provided authenticator" msgstr "Klucz dostępu już istnieje dla podanego uwierzytelniającego" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:218 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey creation cancelled due to one of the following reasons:" msgstr "Tworzenie klucza dostępu anulowane z jednego z następujących powodów:" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:91 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been removed" msgstr "Klucz dostępu został usunięty" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:69 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Passkey has been updated" msgstr "Klucz dostępu został zaktualizowany" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:176 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkey name" msgstr "Nazwa klucza dostępu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:127 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Passkey Re-Authentication" msgstr "Ponowna Autoryzacja Klucza Dostępu" -#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx:19 -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:137 +#: apps/remix/app/routes/_authenticated+/settings+/security.passkeys.tsx +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Passkeys" msgstr "Klucze dostępu" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:157 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Passkeys allow you to sign in and authenticate using biometrics, password managers, etc." msgstr "Klucze dostępu pozwalają na logowanie i uwierzytelnianie przy użyciu danych biometrycznych, menedżerów haseł itp." -#: apps/remix/app/components/forms/signin.tsx:156 +#: apps/remix/app/components/forms/signin.tsx msgid "Passkeys are not supported on this browser" msgstr "Klucze dostępu nie są obsługiwane w tej przeglądarce" -#: apps/remix/app/components/general/app-command-menu.tsx:66 -#: apps/remix/app/components/forms/signup.tsx:341 -#: apps/remix/app/components/forms/signin.tsx:336 -#: apps/remix/app/components/forms/reset-password.tsx:111 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/reset-password.tsx msgid "Password" msgstr "Hasło" -#: packages/ui/primitives/document-password-dialog.tsx:63 -msgid "Password Required" -msgstr "Wymagane hasło" - -#: packages/email/templates/forgot-password.tsx:19 +#: packages/email/templates/forgot-password.tsx msgid "Password Reset Requested" msgstr "Żądanie resetowania hasła" -#: packages/email/templates/reset-password.tsx:21 +#: packages/email/templates/reset-password.tsx msgid "Password Reset Successful" msgstr "Resetowanie hasła zakończone sukcesem" -#: apps/remix/app/components/general/claim-account.tsx:49 -#: apps/remix/app/components/forms/signup.tsx:65 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Password should not be common or based on personal information" msgstr "Hasło nie powinno być powszechne ani oparte na informacjach osobistych" -#: apps/remix/app/components/forms/reset-password.tsx:71 -#: apps/remix/app/components/forms/password.tsx:69 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Password updated" msgstr "Hasło zostało zaktualizowane" -#: packages/email/template-components/template-reset-password.tsx:23 +#: packages/email/template-components/template-reset-password.tsx msgid "Password updated!" msgstr "Hasło zaktualizowane!" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:47 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pay" msgstr "Zapłać" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Payment is required to finalise the creation of your team." msgstr "Płatność jest wymagana do zakończenia tworzenia zespołu." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:81 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:106 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Payment overdue" msgstr "Płatność zaległa" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:76 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:70 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:203 -#: apps/remix/app/components/general/document/document-status.tsx:22 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:87 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:136 -#: packages/lib/constants/document.ts:15 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/document/document-status.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/document.ts msgid "Pending" msgstr "Oczekujące" -#: packages/email/templates/document-pending.tsx:19 +#: packages/email/templates/document-pending.tsx msgid "Pending Document" msgstr "Dokument oczekujący" -#: apps/remix/app/components/general/app-command-menu.tsx:47 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Pending documents" msgstr "Oczekujące Dokumenty" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:105 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Pending Documents" msgstr "Oczekujące dokumenty" -#: apps/remix/app/components/general/teams/team-invitations.tsx:61 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Pending invitations" msgstr "Oczekujące zaproszenia" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:29 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "Pending team deleted." msgstr "Oczekujący zespół usunięty." -#: apps/remix/app/components/general/menu-switcher.tsx:131 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal" msgstr "Osobiste" -#: apps/remix/app/components/general/menu-switcher.tsx:74 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Personal Account" msgstr "Konto osobiste" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:155 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Pick a number" msgstr "Wybierz numer" -#: apps/remix/app/components/general/claim-account.tsx:147 +#: apps/remix/app/components/general/claim-account.tsx msgid "Pick a password" msgstr "Wybierz hasło" -#: apps/remix/app/components/general/user-profile-timur.tsx:49 +#: apps/remix/app/components/general/user-profile-timur.tsx msgid "Pick any of the following agreements below and start signing to get started" msgstr "Wybierz dowolną z poniższych umów i zacznij podpisywanie, aby rozpocząć" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:68 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:78 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:83 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Placeholder" msgstr "Zastępczy tekst" #. placeholder {0}: _(actionVerb).toLowerCase() -#: packages/email/template-components/template-document-invite.tsx:55 +#: packages/email/template-components/template-document-invite.tsx msgid "Please {0} your document<0/>\"{documentName}\"" msgstr "Proszę {0} Twój dokument<0/>\"{documentName}\"" -#: packages/email/templates/document-invite.tsx:51 +#: packages/email/templates/document-invite.tsx msgid "Please {action} your document {documentName}" msgstr "Proszę {action} Twój dokument {documentName}" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:94 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document" msgstr "Proszę {recipientActionVerb} ten dokument" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:108 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} this document created by your direct template" msgstr "Proszę {recipientActionVerb} ten dokument utworzony przez Twój bezpośredni szablon" -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:100 +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "Please {recipientActionVerb} your document" msgstr "Proszę {recipientActionVerb} Twój dokument" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:208 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Please check the CSV file and make sure it is according to our format" msgstr "Proszę sprawdzić plik CSV i upewnić się, że jest zgodny z naszym formatem" -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:41 +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Please check with the parent application for more information." msgstr "" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:86 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Please check your email for updates." msgstr "Proszę sprawdzić swój email w celu aktualizacji." -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:40 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx msgid "Please choose your new password" msgstr "Proszę wybrać nowe hasło" -#: packages/lib/server-only/auth/send-confirmation-email.ts:68 +#: packages/lib/server-only/auth/send-confirmation-email.ts msgid "Please confirm your email" msgstr "Proszę potwierdzić swój email" -#: packages/email/templates/confirm-email.tsx:17 +#: packages/email/templates/confirm-email.tsx msgid "Please confirm your email address" msgstr "Proszę potwierdzić swój adres email" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:170 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please contact support if you would like to revert this action." msgstr "Proszę skontaktować się z pomocą techniczną, jeśli chcesz cofnąć tę akcję." -#: apps/remix/app/components/forms/token.tsx:169 +#: apps/remix/app/components/forms/token.tsx msgid "Please enter a meaningful name for your token. This will help you identify it later." msgstr "Wpisz nazwę tokena. Pomoże to później w jego identyfikacji." -#: apps/remix/app/components/general/claim-account.tsx:39 -#: apps/remix/app/components/forms/signup.tsx:46 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Please enter a valid name." msgstr "Proszę wpisać poprawną nazwę." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:192 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please mark as viewed to complete" msgstr "Proszę zaznaczyć jako obejrzane, aby zakończyć" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:459 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Please note that proceeding will remove direct linking recipient and turn it into a placeholder." msgstr "Proszę zauważyć, że kontynuowanie usunie bezpośrednio łączącego odbiorcę i zamieni go w symbol zastępczy." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible." msgstr "Proszę zauważyć, że ta czynność jest <0>nieodwracalna." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:115 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please note that this action is <0>irreversible. Once confirmed, this document will be permanently deleted." msgstr "Proszę pamiętać, że ta czynność jest <0>nieodwracalna. Po potwierdzeniu, ten dokument zostanie trwale usunięty." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:64 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your template will be permanently deleted." msgstr "Proszę pamiętać, że ta czynność jest nieodwracalna. Po potwierdzeniu, Twój szablon zostanie trwale usunięty." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:124 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your token will be permanently deleted." msgstr "Proszę zauważyć, że ta czynność jest nieodwracalna. Po potwierdzeniu, twój token zostanie trwale usunięty." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:114 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Please note that this action is irreversible. Once confirmed, your webhook will be permanently deleted." msgstr "Proszę pamiętać, że ta czynność jest nieodwracalna. Po potwierdzeniu, Twój webhook zostanie trwale usunięty." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:128 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Please note that you will lose access to all documents associated with this team & all the members will be removed and notified" msgstr "Proszę pamiętać, że stracisz dostęp do wszystkich dokumentów powiązanych z tym zespołem i wszyscy członkowie zostaną usunięci oraz powiadomieni" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:36 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Please provide a reason" msgstr "Proszę podać powód" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:122 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Please provide a token from the authenticator, or a backup code. If you do not have a backup code available, please contact support." msgstr "Proszę podać token z aplikacji uwierzytelniającej lub kod zapasowy. Jeśli nie masz dostępnego kodu zapasowego, skontaktuj się z pomocą techniczną." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:129 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "Please provide a token from your authenticator, or a backup code." msgstr "Proszę podać token z Twojego uwierzytelniacza lub kod zapasowy." -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:316 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Proszę przejrzeć dokument przed podpisaniem." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:501 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Please select a PDF file" msgstr "Proszę wybrać plik PDF" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:62 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Please try again and make sure you enter the correct email address." msgstr "Spróbuj ponownie i upewnij się, że wprowadzasz poprawny adres email." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:72 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Please try again later." msgstr "Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:223 -#: packages/ui/primitives/pdf-viewer.tsx:238 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Please try again or contact our support." msgstr "Spróbuj ponownie lub skontaktuj się z naszym wsparciem." #. placeholder {0}: `'${_(deleteMessage)}'` -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:180 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Please type {0} to confirm" msgstr "Wpisz {0}, aby potwierdzić" #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:123 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Please type <0>{0} to confirm." msgstr "Wpisz <0>{0}, aby potwierdzić." -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:171 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Pre-formatted CSV template with example data." msgstr "Wstępnie sformatowany szablon CSV z przykładowymi danymi." -#: apps/remix/app/components/general/app-command-menu.tsx:209 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:49 +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Preferences" msgstr "Preferencje" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:215 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Preview" msgstr "Podgląd" -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:64 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx msgid "Preview and configure template." msgstr "Podgląd i konfiguracja szablonu." -#: apps/remix/app/components/tables/templates-table.tsx:119 -#: apps/remix/app/components/general/template/template-type.tsx:22 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Private" msgstr "Prywatne" -#: apps/remix/app/components/tables/templates-table.tsx:129 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Private templates can only be modified and viewed by you." msgstr "Prywatne szablony mogą być modyfikowane i przeglądane tylko przez Ciebie." -#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx:20 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:32 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:30 -#: apps/remix/app/components/general/app-command-menu.tsx:65 +#: apps/remix/app/routes/_authenticated+/settings+/profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Profile" msgstr "Profil" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:193 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>hidden." msgstr "Profil jest obecnie <0>ukryty." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:181 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Profile is currently <0>visible." msgstr "Profil jest obecnie <0>widoczny." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:72 -#: apps/remix/app/components/forms/profile.tsx:68 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/forms/profile.tsx msgid "Profile updated" msgstr "Profil zaktualizowano" -#: apps/remix/app/components/tables/templates-table.tsx:92 -#: apps/remix/app/components/general/template/template-type.tsx:27 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/general/template/template-type.tsx msgid "Public" msgstr "Publiczny" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:34 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:45 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:43 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:62 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Public Profile" msgstr "Profil publiczny" -#: apps/remix/app/components/forms/public-profile-form.tsx:145 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Public profile URL" msgstr "Adres URL profilu publicznego" -#: apps/remix/app/components/forms/signup.tsx:444 +#: apps/remix/app/components/forms/signup.tsx msgid "Public profile username" msgstr "Nazwa użytkownika profilu publicznego" -#: apps/remix/app/components/tables/templates-table.tsx:96 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Public templates are connected to your public profile. Any modifications to public templates will also appear in your public profile." msgstr "Szablony publiczne są powiązane z Twoim publicznym profilem. Wszelkie modyfikacje szablonów publicznych również pojawią się w Twoim publicznym profilu." -#: packages/ui/primitives/document-flow/types.ts:57 +#: packages/ui/primitives/document-flow/types.ts msgid "Radio" msgstr "Radio" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx msgid "Radio values" msgstr "Wartości radiowe" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:162 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:120 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:176 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:146 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:185 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Read only" msgstr "Tylko do odczytu" -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:144 +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx msgid "Read only field" msgstr "Pole tylko do odczytu" -#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx:23 +#: apps/remix/app/components/general/document-signing/document-signing-disclosure.tsx msgid "Read the full <0>signature disclosure." msgstr "Przeczytaj pełne <0>ujawnienie podpisu." -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:105 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Ready" msgstr "Gotowy" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:297 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Reason" msgstr "Powód" -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:151 +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Reason for rejection: " msgstr "" -#: packages/email/template-components/template-document-rejected.tsx:32 +#: packages/email/template-components/template-document-rejected.tsx msgid "Reason for rejection: {rejectionReason}" msgstr "Powód odrzucenia: {rejectionReason}" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:37 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx msgid "Reason must be less than 500 characters" msgstr "Powód musi mieć mniej niż 500 znaków" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:62 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Reauthentication is required to sign this field" msgstr "Wymagana jest ponowna autoryzacja, aby podpisać to pole" -#: packages/ui/components/recipient/recipient-role-select.tsx:96 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "Receives copy" msgstr "Otrzymuje kopię" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:160 -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:54 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx msgid "Recent activity" msgstr "Ostatnia aktywność" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:39 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Recent documents" msgstr "Ostatnie dokumenty" -#: apps/remix/app/components/tables/documents-table.tsx:62 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:112 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:281 -#: packages/lib/utils/document-audit-logs.ts:357 -#: packages/lib/utils/document-audit-logs.ts:372 +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/lib/utils/document-audit-logs.ts +#: packages/lib/utils/document-audit-logs.ts msgid "Recipient" msgstr "Odbiorca" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:335 -#: packages/ui/primitives/document-flow/add-settings.tsx:267 -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:38 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "Recipient action authentication" msgstr "Uwierzytelnianie akcji odbiorcy" -#: packages/ui/components/document/document-email-checkboxes.tsx:126 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient removed email" msgstr "E-mail usuniętego odbiorcy" -#: packages/ui/components/document/document-email-checkboxes.tsx:50 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signed email" msgstr "Podpisany e-mail odbiorcy" -#: packages/ui/components/document/document-email-checkboxes.tsx:88 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Recipient signing request email" msgstr "E-mail z prośbą o podpisanie przez odbiorcę" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:110 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Recipient updated" msgstr "Odbiorca zaktualizowany" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:144 -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:132 -#: apps/remix/app/components/general/template/template-page-view-recipients.tsx:30 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:48 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/general/template/template-page-view-recipients.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Recipients" msgstr "Odbiorcy" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:118 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Recipients metrics" msgstr "Metryki odbiorców" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:160 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "Recipients will still retain their copy of the document" msgstr "Odbiorcy nadal zachowają swoją kopię dokumentu" -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:26 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Recovery code copied" msgstr "Kod odzyskiwania skopiowany" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:116 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Recovery codes" msgstr "Kody odzyskiwania" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:541 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Red" msgstr "Czerwony" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:505 -#: packages/ui/primitives/document-flow/add-settings.tsx:381 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Redirect URL" msgstr "Adres URL przekierowania" -#: apps/remix/app/components/general/claim-account.tsx:79 -#: apps/remix/app/components/forms/signup.tsx:136 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "Registration Successful" msgstr "Rejestracja zakończona sukcesem" -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:116 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:123 -#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx:169 -#: packages/email/template-components/template-document-invite.tsx:98 +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-reject-dialog.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Reject Document" msgstr "Odrzuć dokument" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:99 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:146 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Rejected" msgstr "Odrzucony" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:22 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection Confirmed" msgstr "Odmowa potwierdzona" -#: packages/email/template-components/template-document-rejection-confirmed.tsx:34 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "Rejection reason: {reason}" msgstr "Powód odrzucenia: {reason}" -#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/forgot-password.tsx msgid "Remembered your password? <0>Sign In" msgstr "Zapamiętałeś hasło? <0>Zaloguj się" #. placeholder {0}: customEmail.subject -#: packages/lib/server-only/document/resend-document.tsx:192 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0}" msgstr "Przypomnienie: {0}" #. placeholder {0}: document.team.name -#: packages/lib/server-only/document/resend-document.tsx:132 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: {0} invited you to {recipientActionVerb} a document" msgstr "Przypomnienie: {0} zaprosił Cię do {recipientActionVerb} dokument" -#: packages/lib/server-only/document/resend-document.tsx:121 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} this document" msgstr "Przypomnienie: Proszę {recipientActionVerb} ten dokument" -#: packages/lib/server-only/document/resend-document.tsx:127 +#: packages/lib/server-only/document/resend-document.tsx msgid "Reminder: Please {recipientActionVerb} your document" msgstr "Przypomnienie: Proszę {recipientActionVerb} Twój dokument" -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:55 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:152 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:160 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:187 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:88 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:156 -#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx:180 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:249 -#: apps/remix/app/components/forms/avatar-image.tsx:162 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:431 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:216 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:156 -#: packages/ui/primitives/document-flow/add-fields.tsx:1123 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/forms/avatar-image.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Remove" msgstr "Usuń" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Remove team email" msgstr "Usuń e-mail zespołu" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:149 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Remove team member" msgstr "Usuń użytkownika" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Renews: {formattedDate}" msgstr "Odnawia się: {formattedDate}" -#: apps/remix/app/components/forms/reset-password.tsx:127 -#: apps/remix/app/components/forms/password.tsx:141 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Repeat Password" msgstr "Potwierdź hasło" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:245 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Request transfer" msgstr "Zleć przeniesienie" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:152 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx:110 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:166 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:136 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:175 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/radio-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Required field" msgstr "Wymagane pole" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx msgid "Reseal document" msgstr "Zapieczętuj ponownie dokument" -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:148 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:116 -#: packages/ui/primitives/document-flow/add-subject.tsx:79 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Resend" msgstr "Wyślij ponownie" -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Resend Confirmation Email" msgstr "Wyślij ponownie e-mail potwierdzający" -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:66 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Resend verification" msgstr "Wyślij ponownie weryfikację" -#: apps/remix/app/components/forms/team-update-form.tsx:161 -#: apps/remix/app/components/forms/public-profile-form.tsx:266 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Reset" msgstr "Resetuj" -#: apps/remix/app/components/forms/forgot-password.tsx:54 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Reset email sent" msgstr "Wysłano e-mail z resetowaniem" -#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx:36 -#: apps/remix/app/components/forms/reset-password.tsx:139 -#: apps/remix/app/components/forms/forgot-password.tsx:89 -#: packages/email/template-components/template-forgot-password.tsx:33 +#: apps/remix/app/routes/_unauthenticated+/reset-password.$token.tsx +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/forgot-password.tsx +#: packages/email/template-components/template-forgot-password.tsx msgid "Reset Password" msgstr "Zresetuj hasło" -#: apps/remix/app/components/forms/reset-password.tsx:139 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Resetting Password..." msgstr "Resetowanie hasła..." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:98 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve" msgstr "Rozwiąż" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:131 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Resolve payment" msgstr "Rozwiąż płatność" -#: packages/ui/components/document/document-share-button.tsx:146 +#: packages/ui/components/document/document-share-button.tsx msgid "Rest assured, your document is strictly confidential and will never be shared. Only your signing experience will be highlighted. Share your personalized signing card to showcase your signature!" msgstr "Możesz być spokojny, Twój dokument jest ściśle poufny i nigdy nie zostanie udostępniony. Tylko Twoje doświadczenie podpisywania będzie wyróżnione. Podziel się swoją spersonalizowaną kartą podpisu, aby zaprezentować swój podpis!" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Retention of Documents" msgstr "Przechowywanie dokumentów" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:169 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Retry" msgstr "Spróbuj ponownie" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:87 -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:110 -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:109 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:104 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return" msgstr "Zwróć" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:153 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Dashboard" msgstr "Powrót do pulpitu" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:159 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Return to Home" msgstr "Powrót do strony głównej" -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:29 -#: apps/remix/app/routes/_unauthenticated+/check-email.tsx:29 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx +#: apps/remix/app/routes/_unauthenticated+/check-email.tsx msgid "Return to sign in" msgstr "Powrót do logowania" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:117 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke" msgstr "Cofnij" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:86 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Revoke access" msgstr "Cofnij dostęp" -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:79 -#: apps/remix/app/components/tables/team-settings-members-table.tsx:90 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:117 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:284 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:162 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:314 +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Role" msgstr "Rola" -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:131 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Roles" msgstr "Role" -#: packages/ui/primitives/data-table-pagination.tsx:55 +#: packages/ui/primitives/data-table-pagination.tsx msgid "Rows per page" msgstr "Wiersze na stronę" -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:373 -#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx:358 -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:304 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:311 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:446 -#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx:320 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-number-field.tsx +#: apps/remix/app/components/forms/team-document-preferences-form.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx msgid "Save" msgstr "Zapisz" -#: packages/ui/primitives/template-flow/add-template-fields.tsx:979 +#: packages/ui/primitives/template-flow/add-template-fields.tsx msgid "Save Template" msgstr "Zapisz szablon" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx:63 -#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx:57 -#: apps/remix/app/components/tables/documents-table-sender-filter.tsx:58 -#: apps/remix/app/components/general/app-nav-desktop.tsx:84 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.members.tsx +#: apps/remix/app/components/tables/user-settings-teams-page-table.tsx +#: apps/remix/app/components/tables/documents-table-sender-filter.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx msgid "Search" msgstr "Szukaj" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:141 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx msgid "Search by document title" msgstr "Szukaj tytułu dokumentu" -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:172 -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:141 +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Search by name or email" msgstr "Szukaj nazwy lub adresu e-mail" -#: apps/remix/app/components/general/document/document-search.tsx:39 +#: apps/remix/app/components/general/document/document-search.tsx msgid "Search documents..." msgstr "Szukaj dokumentów..." -#: packages/ui/components/common/language-switcher-dialog.tsx:41 +#: packages/ui/components/common/language-switcher-dialog.tsx msgid "Search languages..." msgstr "Szukaj języków..." -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:185 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:210 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Secret" msgstr "Sekret" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:67 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:71 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx msgid "Security" msgstr "Bezpieczeństwo" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:18 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "Security activity" msgstr "Aktywność bezpieczeństwa" -#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx:193 -#: packages/ui/primitives/document-flow/types.ts:59 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:114 +#: apps/remix/app/components/general/document-signing/document-signing-dropdown-field.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select" msgstr "Wybierz" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:114 -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:84 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team" msgstr "Wybierz drużynę" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "Select a team to move this document to. This action cannot be undone." msgstr "Wybierz drużynę, do której chcesz przenieść ten dokument. Ta akcja nie może być cofnięta." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:108 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Select a team to move this template to. This action cannot be undone." msgstr "Wybierz drużynę, do której chcesz przenieść ten szablon. Ta akcja nie może być cofnięta." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:258 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your public profile" msgstr "Wybierz szablon, który chcesz wyświetlić w profilu publicznym" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:254 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Select a template you'd like to display on your team's public profile" msgstr "Wybierz szablon, który chcesz wyświetlić w profilu publicznym zespołu" -#: packages/ui/primitives/combobox.tsx:39 +#: packages/ui/primitives/combobox.tsx msgid "Select an option" msgstr "Wybierz opcję" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:138 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Select at least" msgstr "Wybierz co najmniej" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx:104 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/dropdown-field.tsx msgid "Select default option" msgstr "Wybierz domyślną opcję" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:223 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Select passkey" msgstr "Wybierz klucz uwierzytelniający" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:34 -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:64 -#: packages/ui/primitives/document-flow/add-subject.tsx:77 -#: packages/ui/primitives/document-flow/add-subject.tsx:80 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Send" msgstr "Wyślij" -#: apps/remix/app/components/forms/send-confirmation-email.tsx:92 +#: apps/remix/app/components/forms/send-confirmation-email.tsx msgid "Send confirmation email" msgstr "Wyślij e-mail potwierdzający" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:334 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Send document" msgstr "Wyślij dokument" -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:41 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "Send Document" msgstr "Wyślij dokument" -#: packages/ui/components/document/document-email-checkboxes.tsx:193 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email" msgstr "Wyślij e-mail ukończonego dokumentu" -#: packages/ui/components/document/document-email-checkboxes.tsx:269 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document completed email to the owner" msgstr "Wyślij e-mail ukończonego dokumentu do właściciela" -#: packages/ui/components/document/document-email-checkboxes.tsx:231 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document deleted email" msgstr "Wyślij e-mail usuniętego dokumentu" -#: packages/ui/components/document/document-email-checkboxes.tsx:154 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send document pending email" msgstr "Wyślij e-mail oczekującego dokumentu" -#: packages/email/templates/confirm-team-email.tsx:102 +#: packages/email/templates/confirm-team-email.tsx msgid "Send documents on behalf of the team using the email address" msgstr "Wyślij dokumenty w imieniu zespołu, używając adresu e-mail" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:252 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Send documents to recipients immediately" msgstr "Wyślij dokumenty do odbiorców natychmiast" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:199 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Send on Behalf of Team" msgstr "Wyślij w imieniu zespołu" -#: packages/ui/components/document/document-email-checkboxes.tsx:116 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient removed email" msgstr "Wyślij e-mail usuniętego odbiorcy" -#: packages/ui/components/document/document-email-checkboxes.tsx:40 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signed email" msgstr "Wyślij podpisany e-mail odbiorcy" -#: packages/ui/components/document/document-email-checkboxes.tsx:78 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "Send recipient signing request email" msgstr "Wyślij e-mail z prośbą o podpisanie przez odbiorcę" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:188 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Send reminder" msgstr "Wyślij przypomnienie" -#: apps/remix/app/components/tables/documents-table.tsx:58 +#: apps/remix/app/components/tables/documents-table.tsx msgid "Sender" msgstr "Nadawca" -#: apps/remix/app/components/forms/forgot-password.tsx:89 +#: apps/remix/app/components/forms/forgot-password.tsx msgid "Sending Reset Email..." msgstr "Wysyłanie e-maila resetującego..." -#: apps/remix/app/components/general/verify-email-banner.tsx:132 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Sending..." msgstr "Wysyłanie..." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:264 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:100 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx msgid "Sent" msgstr "Wysłano" -#: apps/remix/app/components/general/claim-account.tsx:144 +#: apps/remix/app/components/general/claim-account.tsx msgid "Set a password" msgstr "Ustaw hasło" -#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx:16 -#: apps/remix/app/components/general/app-nav-mobile.tsx:43 -#: apps/remix/app/components/general/app-command-menu.tsx:61 -#: apps/remix/app/components/general/app-command-menu.tsx:206 +#: apps/remix/app/routes/_authenticated+/settings+/_layout.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-command-menu.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Settings" msgstr "Ustawienia" -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:197 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Setup" msgstr "Konfiguracja" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:148 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share" msgstr "Udostępnij" -#: packages/ui/components/document/document-share-button.tsx:134 +#: packages/ui/components/document/document-share-button.tsx msgid "Share Signature Card" msgstr "Udostępnij kartę podpisu" -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:205 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:175 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Share Signing Card" msgstr "Udostępnij kartę podpisu" -#: packages/lib/constants/template.ts:16 +#: packages/lib/constants/template.ts msgid "Share the Link" msgstr "Udostępnij link" -#: packages/ui/components/document/document-share-button.tsx:142 +#: packages/ui/components/document/document-share-button.tsx msgid "Share your signing experience!" msgstr "Podziel się swoim doświadczeniem podpisywania!" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:172 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show" msgstr "Pokaż" -#: apps/remix/app/components/general/document/document-history-sheet.tsx:111 +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Show additional information" msgstr "Pokaż dodatkowe informacje" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:723 -#: packages/ui/primitives/document-flow/add-signers.tsx:710 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Show advanced settings" msgstr "Pokaż ustawienia zaawansowane" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:37 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your public profile for your audience to sign and get started quickly" msgstr "Pokaż szablony w profilu publicznym, aby szybko podpisać dokument" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:44 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Show templates in your team public profile for your audience to sign and get started quickly" msgstr "Pokaż szablony w profilu publicznym zespołu, aby szybko podpisać dokument" -#: apps/remix/app/routes/_profile+/p.$url.tsx:189 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:128 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:112 -#: apps/remix/app/components/general/user-profile-timur.tsx:77 -#: apps/remix/app/components/general/user-profile-skeleton.tsx:73 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:323 -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:243 -#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx:142 -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:221 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:179 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:83 -#: packages/lib/constants/recipient-roles.ts:21 +#: apps/remix/app/routes/_profile+/p.$url.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/user-profile-timur.tsx +#: apps/remix/app/components/general/user-profile-skeleton.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Sign" msgstr "Podpisz" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:272 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Sign as {0} <0>({1})" msgstr "Podpisz jako {0} <0>({1})" #. placeholder {0}: recipient.name #. placeholder {1}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx:202 +#: apps/remix/app/components/general/document-signing/document-signing-name-field.tsx msgid "Sign as<0>{0} <1>({1})" msgstr "Podpisz jako<0>{0} <1>({1})" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:301 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:358 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign document" msgstr "Podpisz dokument" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:184 -#: packages/email/template-components/template-document-invite.tsx:106 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "Sign Document" msgstr "Podpisz dokument" -#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx:59 +#: apps/remix/app/components/general/document-signing/document-signing-auth-dialog.tsx msgid "Sign field" msgstr "Pole podpisu" -#: apps/remix/app/components/forms/signup.tsx:359 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Here" msgstr "Podpisz tutaj" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 -#: packages/email/template-components/template-reset-password.tsx:35 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx +#: packages/email/template-components/template-reset-password.tsx msgid "Sign In" msgstr "Zaloguj się" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:47 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Sign in to your account" msgstr "Zaloguj się na swoje konto" -#: apps/remix/app/components/general/menu-switcher.tsx:282 -#: apps/remix/app/components/general/app-nav-mobile.tsx:76 +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Sign Out" msgstr "Wyloguj" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:326 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:379 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Sign the document to complete the process." msgstr "Podpisz dokument, aby zakończyć proces." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:63 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "Sign up" msgstr "Zarejestruj się" -#: apps/remix/app/components/forms/signup.tsx:398 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with Google" msgstr "Zarejestruj się za pomocą Google" -#: apps/remix/app/components/forms/signup.tsx:414 +#: apps/remix/app/components/forms/signup.tsx msgid "Sign Up with OIDC" msgstr "Zarejestruj się za pomocą OIDC" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:185 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:80 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:245 -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:280 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:342 -#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx:335 -#: apps/remix/app/components/forms/profile.tsx:118 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:423 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:420 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:711 -#: packages/ui/primitives/document-flow/types.ts:49 -#: packages/ui/primitives/document-flow/field-icon.tsx:44 -#: packages/ui/primitives/document-flow/add-fields.tsx:836 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +#: apps/remix/app/components/forms/profile.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/field-icon.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Signature" msgstr "Podpis" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:236 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signature ID" msgstr "Identyfikator podpisu" -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:297 -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:366 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:449 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:446 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "Signature is too small. Please provide a more complete signature." msgstr "Podpis jest zbyt mały. Proszę podać bardziej kompletny podpis." -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:139 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Signatures Collected" msgstr "Zebrane podpisy" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:221 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Signatures will appear once the document has been completed" msgstr "Podpisy pojawią się po ukończeniu dokumentu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:286 -#: apps/remix/app/components/general/document/document-read-only-fields.tsx:82 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:113 -#: packages/lib/constants/recipient-roles.ts:22 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-read-only-fields.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Signed" msgstr "Podpisano" -#: packages/lib/constants/recipient-roles.ts:24 +#: packages/lib/constants/recipient-roles.ts msgid "Signer" msgstr "Sygnatariusz" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:184 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signer Events" msgstr "Wydarzenia sygnatariusza" -#: packages/lib/constants/recipient-roles.ts:25 +#: packages/lib/constants/recipient-roles.ts msgid "Signers" msgstr "Podpisujący" -#: packages/ui/primitives/document-flow/add-signers.types.ts:36 +#: packages/ui/primitives/document-flow/add-signers.types.ts msgid "Signers must have unique emails" msgstr "Podpisujący muszą mieć unikalne emaile" -#: packages/lib/constants/recipient-roles.ts:23 +#: packages/lib/constants/recipient-roles.ts msgid "Signing" msgstr "Podpisywanie" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:176 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing Certificate" msgstr "Certyfikat podpisu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:319 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Signing certificate provided by" msgstr "Certyfikat podpisu dostarczony przez" -#: packages/lib/server-only/document/send-completed-email.ts:120 -#: packages/lib/server-only/document/send-completed-email.ts:200 +#: packages/lib/server-only/document/send-completed-email.ts +#: packages/lib/server-only/document/send-completed-email.ts msgid "Signing Complete!" msgstr "Podpisywanie zakończone!" -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:339 +#: apps/remix/app/components/embed/embed-document-signing-page.tsx msgid "Signing for" msgstr "" -#: apps/remix/app/components/forms/signin.tsx:363 -#: apps/remix/app/components/forms/signin.tsx:488 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Signing in..." msgstr "Logowanie..." -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:189 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:160 +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx msgid "Signing Links" msgstr "Linki do podpisania" -#: apps/remix/app/components/general/document/document-edit-form.tsx:301 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Signing links have been generated for this document." msgstr "Linki do podpisania zostały wygenerowane dla tego dokumentu." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:340 -#: packages/ui/primitives/document-flow/add-signers.tsx:278 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Signing order is enabled." msgstr "" -#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx:52 -#: apps/remix/app/components/tables/admin-leaderboard-table.tsx:88 +#: apps/remix/app/routes/_authenticated+/admin+/leaderboard.tsx +#: apps/remix/app/components/tables/admin-leaderboard-table.tsx msgid "Signing Volume" msgstr "Liczba podpisów" -#: apps/remix/app/components/forms/signup.tsx:71 +#: apps/remix/app/components/forms/signup.tsx msgid "Signups are disabled." msgstr "Rejestracje są wyłączone." #. placeholder {0}: DateTime.fromJSDate(publicProfile.badge.since).toFormat('LLL ‘yy') -#: apps/remix/app/routes/_profile+/p.$url.tsx:106 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "Since {0}" msgstr "Od {0}" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:107 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Site Banner" msgstr "Baner strony" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:100 -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:111 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Site Settings" msgstr "Ustawienia strony" -#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx:32 +#: packages/ui/primitives/document-flow/missing-signature-field-dialog.tsx msgid "Some signers have not been assigned a signature field. Please assign at least 1 signature field to each signer before proceeding." msgstr "Niektórzy sygnatariusze nie zostali przypisani do pola podpisu. Przypisz co najmniej 1 pole podpisu do każdego sygnatariusza przed kontynuowaniem." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:56 -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:88 -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:133 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:34 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:62 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:79 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:76 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:98 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:95 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:73 -#: apps/remix/app/components/general/billing-portal-button.tsx:35 -#: apps/remix/app/components/general/billing-plans.tsx:62 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:52 -#: apps/remix/app/components/general/teams/team-invitations.tsx:132 -#: apps/remix/app/components/general/teams/team-invitations.tsx:169 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:43 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:38 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:28 -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:34 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:44 -#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx:94 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:63 -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:65 -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:62 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:24 -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:119 -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:106 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:167 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:260 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:103 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:128 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:153 -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:47 -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:71 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:206 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:61 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:80 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:51 -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:100 -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:103 -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:76 -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:69 -#: packages/ui/components/document/document-share-button.tsx:50 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/billing-plans.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/document/document-page-view-dropdown.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx +#: apps/remix/app/components/dialogs/template-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx +#: packages/ui/components/document/document-share-button.tsx msgid "Something went wrong" msgstr "Coś poszło nie tak" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:125 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Something went wrong while attempting to transfer the ownership of team <0>{0} to your. Please try again later or contact support." msgstr "Coś poszło nie tak podczas próby przeniesienia własności zespołu <0>{0} do Ciebie. Proszę spróbować ponownie później lub skontaktować się z pomocą techniczną." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Something went wrong while attempting to verify your email address for <0>{0}. Please try again later." msgstr "Coś poszło nie tak podczas próby weryfikacji adresu e-mail dla <0>{0}. Proszę spróbować ponownie później." -#: packages/ui/primitives/pdf-viewer.tsx:220 -#: packages/ui/primitives/pdf-viewer.tsx:235 +#: packages/ui/primitives/pdf-viewer.tsx +#: packages/ui/primitives/pdf-viewer.tsx msgid "Something went wrong while loading the document." msgstr "Coś poszło nie tak podczas ładowania dokumentu." -#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx:159 +#: apps/remix/app/components/general/document-signing/document-signing-auth-passkey.tsx msgid "Something went wrong while loading your passkeys." msgstr "Coś poszło nie tak podczas ładowania Twoich kluczy uwierzytelniających." -#: apps/remix/app/components/general/verify-email-banner.tsx:57 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Something went wrong while sending the confirmation email." msgstr "Coś poszło nie tak podczas wysyłania e-maila potwierdzającego." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:94 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Something went wrong while updating the team billing subscription, please contact support." msgstr "Coś poszło nie tak podczas aktualizacji subskrypcji płatniczej zespołu, prosimy o kontakt z pomocą techniczną." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:107 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Something went wrong!" msgstr "Coś poszło nie tak!" -#: packages/ui/primitives/data-table.tsx:134 +#: packages/ui/primitives/data-table.tsx msgid "Something went wrong." msgstr "Coś poszło nie tak." -#: apps/remix/app/components/forms/token.tsx:137 +#: apps/remix/app/components/forms/token.tsx msgid "Something went wrong. Please try again later." msgstr "Coś poszło nie tak. Proszę spróbować ponownie później." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:163 -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:239 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Something went wrong. Please try again or contact support." msgstr "Coś poszło nie tak. Proszę spróbować ponownie lub skontaktować się z pomocą techniczną." -#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx:64 +#: apps/remix/app/components/general/document/document-audit-log-download-button.tsx msgid "Sorry, we were unable to download the audit logs. Please try again later." msgstr "Nie mogliśmy pobrać dzienniku logów. Spróbuj ponownie później." -#: apps/remix/app/components/general/document/document-certificate-download-button.tsx:67 +#: apps/remix/app/components/general/document/document-certificate-download-button.tsx msgid "Sorry, we were unable to download the certificate. Please try again later." msgstr "Przepraszamy, nie mogliśmy pobrać certyfikatu. Proszę spróbować ponownie później." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:130 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Source" msgstr "Źródło" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:41 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Stats" msgstr "Statystyki" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:98 -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:36 -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:76 -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:73 -#: apps/remix/app/components/tables/documents-table.tsx:72 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:122 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "Status" msgstr "Stan" -#: packages/ui/primitives/document-flow/document-flow-root.tsx:106 +#: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Step <0>{step} of {maxStep}" msgstr "Krok <0>{step} z {maxStep}" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:362 -#: packages/ui/primitives/document-flow/add-subject.tsx:138 +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Subject <0>(Optional)" msgstr "Temat <0>(Opcjonalnie)" -#: packages/ui/primitives/document-password-dialog.tsx:98 -msgid "Submit" -msgstr "Prześlij" - -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:299 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Submitting..." msgstr "" -#: apps/remix/app/components/general/billing-plans.tsx:129 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Subscribe" msgstr "" -#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx:78 +#: apps/remix/app/components/tables/admin-dashboard-users-table.tsx msgid "Subscription" msgstr "Subskrypcja" -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:83 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Subscriptions" msgstr "Subskrypcje" -#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx:54 -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:28 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:56 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:73 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:68 -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:90 -#: apps/remix/app/components/general/verify-email-banner.tsx:46 -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:41 -#: apps/remix/app/components/general/teams/team-invitations.tsx:125 -#: apps/remix/app/components/general/teams/team-invitations.tsx:162 -#: apps/remix/app/components/general/teams/team-email-usage.tsx:36 -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:31 -#: apps/remix/app/components/forms/team-update-form.tsx:65 -#: apps/remix/app/components/forms/public-profile-form.tsx:79 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:119 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:144 -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:94 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:106 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:91 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:146 -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:48 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:54 -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:73 -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:76 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:70 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:87 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:131 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:167 +#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/general/verify-email-banner.tsx +#: apps/remix/app/components/general/teams/team-transfer-status.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-invitations.tsx +#: apps/remix/app/components/general/teams/team-email-usage.tsx +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Success" msgstr "Sukces" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "Successfully created passkey" msgstr "Pomyślnie utworzono klucz uwierzytelniający" -#: packages/email/templates/bulk-send-complete.tsx:52 +#: packages/email/templates/bulk-send-complete.tsx msgid "Successfully created: {successCount}" msgstr "Pomyślnie utworzono: {successCount}" -#: packages/email/templates/bulk-send-complete.tsx:44 +#: packages/email/templates/bulk-send-complete.tsx msgid "Summary:" msgstr "Podsumowanie:" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:53 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "System Requirements" msgstr "Wymagania systemowe" -#: apps/remix/app/components/general/app-command-menu.tsx:262 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "System Theme" msgstr "Motyw systemowy" -#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx:60 -#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx:62 +#: apps/remix/app/components/tables/user-settings-pending-teams-table.tsx +#: apps/remix/app/components/tables/user-settings-current-teams-table.tsx msgid "Team" msgstr "Zespół" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team.ts:124 +#: packages/lib/server-only/team/delete-team.ts msgid "Team \"{0}\" has been deleted on Documenso" msgstr "Zespół \"{0}\" został usunięty z Documenso" -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:86 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "Team checkout" msgstr "Zakupy zespołowe" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:65 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:144 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Team email" msgstr "E-mail zespołu" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:57 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Team Email" msgstr "E-mail zespołu" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:122 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email already verified!" msgstr "E-mail zespołu został już zweryfikowany!" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:55 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Team email has been removed" msgstr "E-mail zespołu został usunięty" #. placeholder {0}: team.name -#: packages/lib/server-only/team/delete-team-email.ts:105 +#: packages/lib/server-only/team/delete-team-email.ts msgid "Team email has been revoked for {0}" msgstr "Email zespołowy został anulowany dla {0}" -#: packages/email/templates/team-email-removed.tsx:60 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed" msgstr "Email zespołowy usunięty" -#: packages/email/templates/team-email-removed.tsx:30 +#: packages/email/templates/team-email-removed.tsx msgid "Team email removed for {teamName} on Documenso" msgstr "Email zespołowy usunięty dla {teamName} na Documenso" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:144 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verification" msgstr "Weryfikacja e-maila zespołu" -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:160 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "Team email verified!" msgstr "E-mail zespołu zweryfikowany!" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Team email was updated." msgstr "E-mail zespołu został zaktualizowany." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:121 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "Team invitation" msgstr "Zaproszenie do zespołu" -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Team invitations have been sent." msgstr "Zaproszenia do zespołu zostały wysłane." -#: apps/remix/app/components/tables/team-settings-members-table.tsx:71 -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:103 +#: apps/remix/app/components/tables/team-settings-members-table.tsx +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Team Member" msgstr "Użytkownik zespołu" -#: apps/remix/app/components/forms/team-update-form.tsx:110 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:165 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team Name" msgstr "Nazwa zespołu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:61 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "Team not found" msgstr "" -#: apps/remix/app/components/tables/templates-table.tsx:119 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team Only" msgstr "Tylko dla zespołu" -#: apps/remix/app/components/tables/templates-table.tsx:124 +#: apps/remix/app/components/tables/templates-table.tsx msgid "Team only templates are not linked anywhere and are visible only to your team." msgstr "Szablony tylko dla zespołu nie są nigdzie linkowane i są widoczne tylko dla Twojego zespołu." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:121 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer" msgstr "Przeniesienie własności zespołu" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transfer already completed!" msgstr "Transfer własności zespołu został już zakończony!" -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:137 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "Team ownership transferred!" msgstr "Własność zespołu przeniesiona!" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx:31 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.preferences.tsx msgid "Team Preferences" msgstr "Preferencje zespołu" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:41 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team Public Profile" msgstr "Profil publiczny zespołu" -#: apps/remix/app/components/general/menu-switcher.tsx:266 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "Team settings" msgstr "Ustawienia zespołu" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx:39 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._layout.tsx msgid "Team Settings" msgstr "Ustawienia zespołu" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:43 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Team templates" msgstr "Szablony zespołu" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:76 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer in progress" msgstr "Przeniesienie zespołu w toku" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:74 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "Team transfer request expired" msgstr "Żądanie przeniesienia zespołu wygasło" -#: apps/remix/app/components/forms/team-update-form.tsx:126 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:195 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Team URL" msgstr "Adres URL zespołu" -#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx:22 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:58 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:56 -#: apps/remix/app/components/general/menu-switcher.tsx:155 -#: apps/remix/app/components/general/app-nav-mobile.tsx:39 +#: apps/remix/app/routes/_authenticated+/settings+/teams.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/menu-switcher.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx msgid "Teams" msgstr "Zespoły" -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:82 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Teams restricted" msgstr "Zespoły ograniczone" -#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx:71 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:166 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:37 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:140 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:220 -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:406 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:268 +#: apps/remix/app/routes/_authenticated+/templates.$id.edit.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template" msgstr "Szablon" -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:38 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Template deleted" msgstr "Szablon usunięty" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:59 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" msgstr "Dokument szablonu przesłany" -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:35 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" msgstr "Szablon skopiowany" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:132 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been removed from your public profile." msgstr "Szablon został usunięty z profilu publicznego." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:168 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Template has been updated." msgstr "Szablon został zaktualizowany." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:65 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template moved" msgstr "Szablon przeniesiony" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:78 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "Template not found or already associated with a team." msgstr "Szablon nie znaleziony lub już powiązany z zespołem." -#: apps/remix/app/components/general/template/template-edit-form.tsx:206 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Template saved" msgstr "Szablon zapisany" -#: packages/ui/primitives/template-flow/add-template-settings.tsx:165 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "Template title" msgstr "Tytuł szablonu" -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:56 -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:102 -#: apps/remix/app/components/general/app-nav-mobile.tsx:35 -#: apps/remix/app/components/general/app-nav-desktop.tsx:21 -#: apps/remix/app/components/general/app-command-menu.tsx:203 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx +#: apps/remix/app/components/general/app-nav-mobile.tsx +#: apps/remix/app/components/general/app-nav-desktop.tsx +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Templates" msgstr "Szablony" -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:98 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Templates allow you to quickly generate documents with pre-filled recipients and fields." msgstr "Szablony pozwalają na szybkie generowanie dokumentów z wypełnionymi odbiorcami i polami." -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:270 -#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx:299 -#: packages/ui/primitives/template-flow/add-template-fields.tsx:841 -#: packages/ui/primitives/document-flow/types.ts:52 -#: packages/ui/primitives/document-flow/add-fields.tsx:966 +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: apps/remix/app/components/general/document-signing/document-signing-text-field.tsx +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/types.ts +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "Text" msgstr "Tekst" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx:125 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:139 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx:57 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx:62 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx:80 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/name-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/initials-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/email-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/date-field.tsx msgid "Text Align" msgstr "Wyrównanie tekstu" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:171 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Text Color" msgstr "Kolor tekstu" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:20 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." msgstr "Dziękujemy za korzystanie z Documenso do wykonywania podpisu elektronicznego dokumentu. Celem tego ujawnienia jest poinformowanie Cię o procesie, legalności oraz Twoich prawach dotyczących korzystania z podpisów elektronicznych na naszej platformie. Decydując się na korzystanie z podpisu elektronicznego, zgadzasz się na warunki opisane poniżej." -#: packages/email/template-components/template-forgot-password.tsx:25 +#: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." msgstr "To w porządku, zdarza się! Kliknij przycisk poniżej, aby zresetować hasło." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." msgstr "Konto zostało pomyślnie usunięte." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:50 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "The account has been disabled successfully." msgstr "Konto zostało pomyślnie wyłączone." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:47 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "The account has been enabled successfully." msgstr "Konto zostało pomyślnie włączone." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:43 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "The authentication required for recipients to sign fields" msgstr "Uwierzytelnianie wymagane dla odbiorców do podpisania pól" -#: packages/ui/components/document/document-global-auth-action-select.tsx:67 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "The authentication required for recipients to sign the signature field." msgstr "Uwierzytelnianie wymagane dla odbiorców do podpisania pola podpisu." -#: packages/ui/components/document/document-global-auth-access-select.tsx:66 +#: packages/ui/components/document/document-global-auth-access-select.tsx msgid "The authentication required for recipients to view the document." msgstr "Uwierzytelnianie wymagane dla odbiorców do wyświetlenia dokumentu." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:202 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The content to show in the banner, HTML is allowed" msgstr "Treść do wyświetlenia w banerze, dozwolone HTML" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:72 -#: apps/remix/app/components/general/template/template-direct-link-badge.tsx:31 -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:166 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/general/template/template-direct-link-badge.tsx +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "The direct link has been copied to your clipboard" msgstr "Bezpośredni link został skopiowany do schowka" -#: apps/remix/app/components/dialogs/document-move-dialog.tsx:46 +#: apps/remix/app/components/dialogs/document-move-dialog.tsx msgid "The document has been successfully moved to the selected team." msgstr "Dokument został pomyślnie przeniesiony do wybranego zespołu." -#: apps/remix/app/components/embed/embed-document-completed.tsx:30 +#: apps/remix/app/components/embed/embed-document-completed.tsx msgid "The document is now completed, please follow any instructions provided within the parent application." msgstr "Dokument jest teraz zakończony, proszę postępować zgodnie z wszelkimi instrukcjami podanymi w aplikacji nadrzędnej." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:39 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "The document owner has been notified of this rejection. No further action is required from you at this time. The document owner may contact you with any questions regarding this rejection." msgstr "Właściciel dokumentu został poinformowany o tym odrzuceniu. W tej chwili nie są wymagane żadne dalsze działania z Twojej strony. Właściciel dokumentu może się z Tobą skontaktować z pytaniami dotyczącymi tego odrzucenia." -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:106 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:21 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "The document owner has been notified of your decision. They may contact you with further instructions if necessary." msgstr "Właściciel dokumentu został poinformowany o Twojej decyzji. Mogą się z Tobą skontaktować w celu podania dalszych instrukcji, jeśli to konieczne." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:192 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document was created but could not be sent to recipients." msgstr "Dokument został utworzony, ale nie mógł zostać wysłany do odbiorców." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:157 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "The document will be hidden from your account" msgstr "Dokument zostanie ukryty w Twoim koncie" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:342 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "The document will be immediately sent to recipients if this is checked." msgstr "Dokument zostanie natychmiast wysłany do odbiorców, jeśli to zostanie zaznaczone." -#: packages/ui/components/document/document-send-email-message-helper.tsx:29 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The document's name" msgstr "Nazwa dokumentu" -#: apps/remix/app/components/forms/signin.tsx:242 +#: apps/remix/app/components/forms/signin.tsx msgid "The email or password provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:172 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:196 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The events that will trigger a webhook to be sent to your URL." msgstr "Wydarzenia, które wyzwolą webhook do wysłania do Twojego URL." -#: packages/email/templates/bulk-send-complete.tsx:62 +#: packages/email/templates/bulk-send-complete.tsx msgid "The following errors occurred:" msgstr "Wystąpiły następujące błędy:" -#: packages/email/templates/team-delete.tsx:37 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by its owner. You will no longer be able to access this team and its documents" msgstr "Następujący zespół został usunięty przez jego właściciela. Nie będziesz mógł już uzyskać dostępu do tego zespołu i jego dokumentów" -#: packages/email/templates/team-delete.tsx:36 +#: packages/email/templates/team-delete.tsx msgid "The following team has been deleted by you" msgstr "Następujący zespół został usunięty przez Ciebie" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:141 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "The ownership of team <0>{0} has been successfully transferred to you." msgstr "Własność zespołu <0>{0} została pomyślnie przeniesiona na Ciebie." -#: apps/remix/app/components/general/generic-error-layout.tsx:43 +#: apps/remix/app/components/general/generic-error-layout.tsx msgid "The page you are looking for was moved, removed, renamed or might never have existed." msgstr "Strona, której szukasz, została przeniesiona, usunięta, zmieniona lub mogła nigdy nie istnieć." -#: packages/ui/primitives/document-password-dialog.tsx:53 -msgid "The password you have entered is incorrect. Please try again." -msgstr "Wprowadzone hasło jest niepoprawne. Proszę spróbować ponownie." - -#: apps/remix/app/components/forms/public-profile-form.tsx:117 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "The profile link has been copied to your clipboard" msgstr "Link do profilu został skopiowany do schowka" -#: apps/remix/app/routes/_profile+/_layout.tsx:104 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "The profile you are looking for could not be found." msgstr "Profil, którego szukasz, nie mógł zostać znaleziony." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:377 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public description that will be displayed with this template" msgstr "Publiczny opis, który zostanie wyświetlony z tym szablonem" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:355 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The public name for your template" msgstr "Publiczna nazwa Twojego szablonu" -#: packages/email/template-components/template-document-super-delete.tsx:38 +#: packages/email/template-components/template-document-super-delete.tsx msgid "The reason provided for deletion is the following:" msgstr "Podana przyczyna usunięcia jest następująca:" -#: packages/ui/components/recipient/recipient-role-select.tsx:135 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient can prepare the document for later signers by pre-filling suggest values." msgstr "" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:111 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "The recipient has been updated successfully" msgstr "Odbiorca został pomyślnie zaktualizowany" -#: packages/ui/components/recipient/recipient-role-select.tsx:104 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is not required to take any action and receives a copy of the document after it is completed." msgstr "Odbiorca nie jest zobowiązany do podjęcia żadnych działań i otrzymuje kopię dokumentu po jego zakończeniu." -#: packages/ui/components/recipient/recipient-role-select.tsx:61 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to approve the document for it to be completed." msgstr "Odbiorca musi zatwierdzić dokument, aby mógł być zakończony." -#: packages/ui/components/recipient/recipient-role-select.tsx:40 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to sign the document for it to be completed." msgstr "Odbiorca musi podpisać dokument, aby mógł być zakończony." -#: packages/ui/components/recipient/recipient-role-select.tsx:82 +#: packages/ui/components/recipient/recipient-role-select.tsx msgid "The recipient is required to view the document for it to be completed." msgstr "Odbiorca musi wyświetlić dokument, aby mógł być zakończony." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:230 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "The selected team member will receive an email which they must accept before the team is transferred" msgstr "Wybrany członek zespołu otrzyma e-mail, który musi zaakceptować przed przeniesieniem zespołu" -#: packages/ui/components/document/document-share-button.tsx:51 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link could not be created at this time. Please try again." msgstr "Nie udało się utworzyć linku udostępnienia w tym czasie. Proszę spróbować ponownie." -#: packages/ui/components/document/document-share-button.tsx:46 +#: packages/ui/components/document/document-share-button.tsx msgid "The sharing link has been copied to your clipboard." msgstr "Link do udostępniania został skopiowany do schowka." -#: packages/ui/components/document/document-send-email-message-helper.tsx:23 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's email" msgstr "Adres e-mail podpisującego" -#: packages/ui/components/document/document-send-email-message-helper.tsx:17 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "The signer's name" msgstr "Nazwa podpisującego" -#: apps/remix/app/components/general/avatar-with-recipient.tsx:37 -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:116 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:168 -#: packages/ui/primitives/document-flow/add-subject.tsx:238 +#: apps/remix/app/components/general/avatar-with-recipient.tsx +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "The signing link has been copied to your clipboard." msgstr "Link do podpisu został skopiowany do schowka." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:110 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "The site banner is a message that is shown at the top of the site. It can be used to display important information to your users." msgstr "Baner strony to wiadomość, która jest wyświetlana u góry strony. Może być używany do wyświetlania ważnych informacji użytkownikom." -#: packages/email/templates/team-email-removed.tsx:64 +#: packages/email/templates/team-email-removed.tsx msgid "The team email <0>{teamEmail} has been removed from the following team" msgstr "Email zespołowy <0>{teamEmail} został usunięty z następującego zespołu" -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:42 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer invitation has been successfully deleted." msgstr "Zaproszenie do przeniesienia zespołu zostało pomyślnie usunięte." #. placeholder {0}: transferVerification.name -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:83 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "The team transfer request to <0>{0} has expired." msgstr "Prośba o przeniesienie zespołu do <0>{0} wygasła." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:63 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "" "The team you are looking for may have been removed, renamed or may have never\n" " existed." msgstr "" -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:66 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "The template has been successfully moved to the selected team." msgstr "Szablon został pomyślnie przeniesiony do wybranego zespołu." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:440 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "The template will be removed from your profile" msgstr "Szablon zostanie usunięty z Twojego profilu" -#: apps/remix/app/components/forms/token.tsx:103 +#: apps/remix/app/components/forms/token.tsx msgid "The token was copied to your clipboard." msgstr "Token został skopiowany do schowka." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "The token was deleted successfully." msgstr "Token został pomyślnie usunięty." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:21 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "The token you have used to reset your password is either expired or it never existed. If you have still forgotten your password, please request a new reset link." msgstr "Token, którego użyłeś do zresetowania hasła, jest albo wygasły, albo nigdy nie istniał. Jeśli nadal zapomniałeś hasła, poproś o nowy link resetujący." -#: apps/remix/app/components/forms/signin.tsx:246 +#: apps/remix/app/components/forms/signin.tsx msgid "The two-factor authentication code provided is incorrect" msgstr "" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:121 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:120 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:145 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The URL for Documenso to send webhook events to." msgstr "URL dla Documenso do wysyłania zdarzeń webhook." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:74 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "The webhook has been successfully deleted." msgstr "Webhook został pomyślnie usunięty." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:74 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:71 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "The webhook has been updated successfully." msgstr "Webhook został pomyślnie zaktualizowany." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "The webhook was successfully created." msgstr "Webhook został pomyślnie utworzony." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:25 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." msgstr "Brak aktywnych szkiców. Prześlij, aby utworzyć." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:20 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." msgstr "Brak zakończonych dokumentów. Utworzone lub odebrane dokumentu pojawią się tutaj, gdy zostaną zakończone." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:69 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "They have permission on your behalf to:" msgstr "Mają pozwolenie w Twoim imieniu na:" -#: apps/remix/app/components/forms/signin.tsx:45 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has been disabled. Please contact support." msgstr "" -#: apps/remix/app/components/forms/signin.tsx:232 +#: apps/remix/app/components/forms/signin.tsx msgid "This account has not been verified. Please verify your account before signing in." msgstr "" -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:102 -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:98 -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:98 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "This action is not reversible. Please be certain." msgstr "Ta akcja nie jest odwracalna. Proszę być pewnym." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:102 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "This action is reversible, but please be careful as the account may be affected permanently (e.g. their settings and contents not being restored properly)." msgstr "Ta akcja jest odwracalna, ale proszę być ostrożnym, ponieważ konto może zostać trwałe uszkodzone (np. ich ustawienia i zawartość mogą nie zostać prawidłowo przywrócone)." -#: packages/ui/components/document/document-global-auth-action-select.tsx:71 +#: packages/ui/components/document/document-global-auth-action-select.tsx msgid "This can be overriden by setting the authentication requirements directly on each recipient in the next step." msgstr "To można nadpisać, ustawiając wymagania dotyczące uwierzytelniania bezpośrednio na każdym odbiorcy w następnym kroku." -#: packages/email/template-components/template-document-super-delete.tsx:31 +#: packages/email/template-components/template-document-super-delete.tsx msgid "This document can not be recovered, if you would like to dispute the reason for future documents please contact support." msgstr "Dokument ten nie może być odzyskany. Jeśli chcesz zakwestionować przyczynę przyszłych dokumentów, skontaktuj się z administracją." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:70 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "This document could not be deleted at this time. Please try again." msgstr "Nie można usunąć tego dokumentu w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:77 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "This document could not be duplicated at this time. Please try again." msgstr "Nie można skopiować tego dokumentu w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:104 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "This document could not be re-sent at this time. Please try again." msgstr "Nie można ponownie wysłać tego dokumentu w tej chwili. Proszę spróbować ponownie." -#: packages/ui/primitives/document-flow/add-fields.tsx:772 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This document has already been sent to this recipient. You can no longer edit this recipient." msgstr "Ten dokument został już wysłany do tego odbiorcy. Nie można już edytować tego odbiorcy." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:198 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "This document has been cancelled by the owner and is no longer available for others to sign." msgstr "Ten dokument został anulowany przez właściciela i nie jest już dostępny do podpisania przez innych." -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:188 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "This document has been cancelled by the owner." msgstr "Ten dokument został anulowany przez właściciela." -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:221 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document has been signed by all recipients" msgstr "Ten dokument został podpisany przez wszystkich odbiorców" -#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx:224 +#: apps/remix/app/routes/_authenticated+/documents.$id._index.tsx msgid "This document is currently a draft and has not been sent" msgstr "Ten dokument jest obecnie szkicowany i nie został wysłany" -#: packages/ui/primitives/document-password-dialog.tsx:67 -msgid "This document is password protected. Please enter the password to view the document." -msgstr "Ten dokument jest zabezpieczony hasłem. Proszę wprowadzić hasło, aby wyświetlić dokument." - -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:144 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created by you or a team member using the template above." msgstr "Ten dokument został stworzony przez Ciebie lub członka zespołu przy użyciu powyższego szablonu." -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:156 +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx msgid "This document was created using a direct link." msgstr "Ten dokument został stworzony przy użyciu bezpośredniego linku." -#: packages/email/template-components/template-footer.tsx:17 +#: packages/email/template-components/template-footer.tsx msgid "This document was sent using <0>Documenso." msgstr "Ten dokument został wysłany za pomocą <0>Documenso." -#: packages/email/template-components/template-document-rejection-confirmed.tsx:26 +#: packages/email/template-components/template-document-rejection-confirmed.tsx msgid "This email confirms that you have rejected the document <0>\"{documentName}\" sent by {documentOwnerName}." msgstr "Ten email potwierdza, że odrzuciłeś dokument <0>\"{documentName}\" wysłany przez {documentOwnerName}." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:90 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "This email is already being used by another team." msgstr "Ten e-mail jest już używany przez inny zespół." -#: packages/ui/components/document/document-email-checkboxes.tsx:55 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the document owner when a recipient has signed the document." msgstr "Ten e-mail jest wysyłany do właściciela dokumentu, gdy odbiorca podpisze dokument." -#: packages/ui/components/document/document-email-checkboxes.tsx:131 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient if they are removed from a pending document." msgstr "Ten e-mail jest wysyłany do odbiorcy, jeśli zostanie usunięty z oczekującego dokumentu." -#: packages/ui/components/document/document-email-checkboxes.tsx:93 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email is sent to the recipient requesting them to sign the document." msgstr "Ten e-mail jest wysyłany do odbiorcy, prosząc go o podpisanie dokumentu." -#: packages/ui/components/document/document-email-checkboxes.tsx:169 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This email will be sent to the recipient who has just signed the document, if there are still other recipients who have not signed yet." msgstr "Ten e-mail zostanie wysłany do odbiorcy, który właśnie podpisał dokument, jeśli są jeszcze inni odbiorcy, którzy nie podpisali." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:642 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx msgid "This field cannot be modified or deleted. When you share this template's direct link or add it to your public profile, anyone who accesses it can input their name and email, and fill in the fields assigned to them." msgstr "To pole nie może być modyfikowane ani usuwane. Po udostępnieniu bezpośredniego linku do tego szablonu lub dodaniu go do swojego publicznego profilu, każdy, kto się w nim dostanie, może wpisać swoje imię i email oraz wypełnić przypisane mu pola." -#: packages/ui/primitives/template-flow/add-template-settings.tsx:277 +#: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "This is how the document will reach the recipients once the document is ready for signing." msgstr "W ten sposób dokument dotrze do odbiorców, gdy tylko dokument będzie gotowy do podpisania." -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:79 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a transfer request." msgstr "Ten link jest nieprawidłowy lub wygasł. Proszę skontaktować się ze swoim zespołem, aby ponownie wysłać prośbę o transfer." -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "This link is invalid or has expired. Please contact your team to resend a verification." msgstr "Ten link jest nieprawidłowy lub wygasł. Proszę skontaktować się ze swoim zespołem, aby ponownie wysłać weryfikację." -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:207 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "This passkey has already been registered." msgstr "Ten klucz dostępu został już zarejestrowany." -#: apps/remix/app/components/forms/signin.tsx:190 +#: apps/remix/app/components/forms/signin.tsx msgid "This passkey is not configured for this application. Please login and add one in the user settings." msgstr "Ten klucz dostępu nie jest skonfigurowany dla tej aplikacji. Proszę zalogować się i dodać jeden w ustawieniach użytkownika." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:149 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "This price includes minimum 5 seats." msgstr "Ta cena obejmuje co najmniej 5 miejsc." -#: packages/ui/primitives/document-flow/add-fields.tsx:1103 +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "This recipient can no longer be modified as they have signed a field, or completed the document." msgstr "Ten odbiorca nie może być już modyfikowany, ponieważ podpisał pole lub ukończył dokument." -#: apps/remix/app/components/forms/signin.tsx:194 +#: apps/remix/app/components/forms/signin.tsx msgid "This session has expired. Please try again." msgstr "Ta sesja wygasła. Proszę spróbować ponownie." -#: packages/ui/primitives/document-flow/add-signers.tsx:197 +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "This signer has already signed the document." msgstr "Ten sygnatariusz już podpisał dokument." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:199 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "This team, and any associated data excluding billing invoices will be permanently deleted." msgstr "Ten zespół oraz wszelkie powiązane dane, z wyjątkiem faktur, zostaną trwale usunięte." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "This template could not be deleted at this time. Please try again." msgstr "Ten szablon nie mógł zostać usunięty w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:99 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "This token is invalid or has expired. No action is needed." msgstr "Ten token jest nieprawidłowy lub wygasł. Nie wymaga żadnej akcji." -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:102 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "This token is invalid or has expired. Please contact your team for a new invitation." msgstr "Ten token jest nieprawidłowy lub wygasł. Proszę skontaktować się ze swoim zespołem o nowe zaproszenie." -#: apps/remix/app/components/forms/team-update-form.tsx:84 -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:97 +#: apps/remix/app/components/forms/team-update-form.tsx +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "This URL is already in use." msgstr "Ten URL jest już używany." -#: apps/remix/app/components/forms/signup.tsx:74 +#: apps/remix/app/components/forms/signup.tsx msgid "This username has already been taken" msgstr "Ta nazwa użytkownika została już zajęta" -#: packages/ui/components/document/document-email-checkboxes.tsx:246 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients if a pending document has been deleted." msgstr "To zostanie wysłane do wszystkich odbiorców, jeśli oczekujący dokument został usunięty." -#: packages/ui/components/document/document-email-checkboxes.tsx:208 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to all recipients once the document has been fully completed." msgstr "To zostanie wysłane do wszystkich odbiorców, gdy dokument będzie całkowicie ukończony." -#: packages/ui/components/document/document-email-checkboxes.tsx:284 +#: packages/ui/components/document/document-email-checkboxes.tsx msgid "This will be sent to the document owner once the document has been fully completed." msgstr "To zostanie wysłane do właściciela dokumentu, gdy dokument zostanie w pełni ukończony." -#: packages/ui/components/recipient/recipient-action-auth-select.tsx:47 +#: packages/ui/components/recipient/recipient-action-auth-select.tsx msgid "This will override any global settings." msgstr "To zastąpi wszystkie globalne ustawienia." -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:44 -#: apps/remix/app/components/tables/document-logs-table.tsx:67 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "Time" msgstr "Czas" -#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx:108 +#: apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx msgid "Time zone" msgstr "Strefa czasowa" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:136 -#: packages/ui/primitives/template-flow/add-template-settings.tsx:482 -#: packages/ui/primitives/document-flow/add-settings.tsx:357 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx +#: packages/ui/primitives/template-flow/add-template-settings.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Time Zone" msgstr "Strefa czasowa" -#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx:62 -#: apps/remix/app/components/tables/templates-table.tsx:68 -#: apps/remix/app/components/tables/documents-table.tsx:53 -#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx:107 -#: packages/ui/primitives/document-flow/add-settings.tsx:164 +#: apps/remix/app/routes/_authenticated+/admin+/documents._index.tsx +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/documents-table.tsx +#: apps/remix/app/components/general/template/template-page-view-documents-table.tsx +#: packages/ui/primitives/document-flow/add-settings.tsx msgid "Title" msgstr "Tytuł" -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:131 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "To accept this invitation you must create an account." msgstr "Aby zaakceptować to zaproszenie, musisz założyć konto." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:122 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "To change the email you must remove and add a new email address." msgstr "Aby zmienić e-mail, musisz usunąć i dodać nowy adres e-mail." #. placeholder {0}: userToEnable.email #. placeholder {0}: userToDisable.email #. placeholder {0}: user.email -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:100 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:113 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:109 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "To confirm, please enter the accounts email address <0/>({0})." msgstr "Aby potwierdzić, proszę wpisać adres e-mail konta <0/>({0})." -#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx:105 +#: apps/remix/app/components/dialogs/admin-document-delete-dialog.tsx msgid "To confirm, please enter the reason" msgstr "Aby potwierdzić, proszę wpisać powód" -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "To decline this invitation you must create an account." msgstr "Aby odrzucić to zaproszenie, musisz założyć konto." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:203 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "To enable two-factor authentication, scan the following QR code using your authenticator app." msgstr "Aby włączyć uwierzytelnianie dwuetapowe, zeskanuj poniższy kod QR za pomocą swojej aplikacji uwierzytelniającej." -#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx:19 +#: apps/remix/app/routes/_unauthenticated+/unverified-account.tsx msgid "To gain access to your account, please confirm your email address by clicking on the confirmation link from your inbox." msgstr "Aby uzyskać dostęp do swojego konta, proszę potwierdzić swój adres e-mail, klikając na link potwierdzający w swojej skrzynce odbiorczej." #. placeholder {0}: recipient.email -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:58 +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx msgid "To mark this document as viewed, you need to be logged in as <0>{0}" msgstr "Aby oznaczyć ten dokument jako wyświetlony, musisz być zalogowany jako <0>{0}" #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' #. placeholder {0}: emptyCheckboxFields.length > 0 ? 'Checkbox' : emptyRadioFields.length > 0 ? 'Radio' : 'Select' -#: packages/ui/primitives/template-flow/add-template-fields.tsx:959 -#: packages/ui/primitives/document-flow/add-fields.tsx:1086 +#: packages/ui/primitives/template-flow/add-template-fields.tsx +#: packages/ui/primitives/document-flow/add-fields.tsx msgid "To proceed further, please set at least one value for the {0} field." msgstr "Aby kontynuować, ustaw przynajmniej jedną wartość dla pola {0}." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:56 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "To use our electronic signature service, you must have access to:" msgstr "Aby skorzystać z naszej usługi podpisu elektronicznego, musisz mieć dostęp do:" -#: apps/remix/app/components/embed/embed-authentication-required.tsx:30 +#: apps/remix/app/components/embed/embed-authentication-required.tsx msgid "To view this document you need to be signed into your account, please sign in to continue." msgstr "Aby zobaczyć ten dokument, musisz być zalogowany na swoje konto, proszę zaloguj się, aby kontynuować." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:187 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to hide your profile from the public." msgstr "Przełącz przełącznik, aby ukryć swój profil przed publicznością." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:199 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "Toggle the switch to show your profile to the public." msgstr "Przełącz przełącznik, aby pokazać swój profil publicznie." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:242 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Token" msgstr "Token" -#: apps/remix/app/components/forms/token.tsx:102 +#: apps/remix/app/components/forms/token.tsx msgid "Token copied to clipboard" msgstr "Token został skopiowany do schowka" -#: apps/remix/app/components/forms/token.tsx:123 +#: apps/remix/app/components/forms/token.tsx msgid "Token created" msgstr "Token został utworzony" -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:80 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "Token deleted" msgstr "Token usunięty" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:95 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Token doesn't have an expiration date" msgstr "Token nie ma daty wygaśnięcia" -#: apps/remix/app/components/forms/token.tsx:187 +#: apps/remix/app/components/forms/token.tsx msgid "Token expiration date" msgstr "Data wygaśnięcia tokena" -#: apps/remix/app/components/forms/reset-password.tsx:79 +#: apps/remix/app/components/forms/reset-password.tsx msgid "Token has expired. Please try again." msgstr "Token wygasł. Proszę spróbować ponownie." -#: apps/remix/app/components/forms/token.tsx:159 +#: apps/remix/app/components/forms/token.tsx msgid "Token name" msgstr "Nazwa tokena" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:85 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Documents" msgstr "Łączna liczba dokumentów" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:124 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Recipients" msgstr "Łączna liczba odbiorców" -#: packages/email/templates/bulk-send-complete.tsx:49 +#: packages/email/templates/bulk-send-complete.tsx msgid "Total rows processed: {totalProcessed}" msgstr "Łączna liczba przetworzonych wierszy: {totalProcessed}" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:169 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Signers that Signed Up" msgstr "Łączna liczba podpisujących, którzy się zarejestrowali" -#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx:84 +#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx msgid "Total Users" msgstr "Łączna liczba użytkowników" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:74 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "transfer {teamName}" msgstr "przenieś {teamName}" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:158 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer ownership of this team to a selected team member." msgstr "Przenieś własność tego zespołu na wybranego członka zespołu." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:173 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:145 -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "Transfer team" msgstr "Przenieś zespół" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:177 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "Transfer the ownership of the team to another team member." msgstr "Przenieś własność zespołu na innego członka zespołu." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:160 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:159 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:184 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Triggers" msgstr "Wyzwalacze" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:84 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication" msgstr "Uwierzytelnianie dwuetapowe" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:120 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "Two factor authentication recovery codes are used to access your account in the event that you lose access to your authenticator app." msgstr "Kody odzyskiwania uwierzytelniania dwuetapowego są używane do uzyskania dostępu do Twojego konta w przypadku, gdy stracisz dostęp do aplikacji uwierzytelniającej." -#: apps/remix/app/components/forms/signin.tsx:426 +#: apps/remix/app/components/forms/signin.tsx msgid "Two-Factor Authentication" msgstr "Uwierzytelnianie dwuetapowe" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:85 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication disabled" msgstr "Uwierzytelnianie dwuetapowe wyłączone" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Two-factor authentication enabled" msgstr "Uwierzytelnianie dwuetapowe włączone" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Two-factor authentication has been disabled for your account. You will no longer be required to enter a code from your authenticator app when signing in." msgstr "Uwierzytelnianie dwuetapowe zostało wyłączone dla Twojego konta. Nie będziesz już musiał wprowadzać kodu z aplikacji uwierzytelniającej podczas logowania." -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:126 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx msgid "Two-Factor Re-Authentication" msgstr "Ponowna autoryzacja za pomocą dwuetapowej weryfikacji" -#: apps/remix/app/components/tables/templates-table.tsx:81 -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:65 +#: apps/remix/app/components/tables/templates-table.tsx +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Type" msgstr "Typ" -#: apps/remix/app/components/general/app-command-menu.tsx:181 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Type a command or search..." msgstr "Wpisz polecenie lub wyszukaj..." -#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx:129 +#: apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx msgid "Typed signatures are not allowed. Please draw your signature." msgstr "Podpisy pisane nie są dozwolone. Proszę narysować swój podpis." -#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx:23 +#: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx msgid "Uh oh! Looks like you're missing a token" msgstr "Ups! Wygląda na to, że brakuje Ci tokenu" -#: apps/remix/app/components/general/app-command-menu.tsx:311 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Unable to change the language at this time. Please try again later." msgstr "Nie można zmienić języka w tej chwili. Spróbuj ponownie później." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:31 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Unable to copy recovery code" msgstr "Nie można skopiować kodu odzyskiwania" -#: apps/remix/app/components/forms/token.tsx:107 +#: apps/remix/app/components/forms/token.tsx msgid "Unable to copy token" msgstr "Nie można skopiować tokena" -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:104 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "Unable to create direct template access. Please try again later." msgstr "Nie można utworzyć bezpośredniego dostępu do szablonu. Proszę spróbować ponownie później." -#: apps/remix/app/components/general/teams/team-invitations.tsx:170 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to decline this team invitation at this time." msgstr "Nie można w tej chwili odrzucić zaproszenia do zespołu." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:80 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to delete invitation. Please try again." msgstr "Nie można usunąć zaproszenia. Proszę spróbować ponownie." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Unable to delete team" msgstr "Nie można usunąć zespołu" -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:98 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Unable to disable two-factor authentication" msgstr "Nie można wyłączyć uwierzytelniania dwuetapowego" -#: apps/remix/app/components/general/teams/team-invitations.tsx:133 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "Unable to join this team at this time." msgstr "Nie można dołączyć do tego zespołu w tej chwili." -#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx:69 -#: apps/remix/app/components/general/document/document-history-sheet.tsx:125 +#: apps/remix/app/components/general/document/document-page-view-recent-activity.tsx +#: apps/remix/app/components/general/document/document-history-sheet.tsx msgid "Unable to load document history" msgstr "Nie można załadować historii dokumentu" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:54 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "Unable to load documents" msgstr "Nie można załadować dokumentów" -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:105 +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx msgid "Unable to load your public profile templates at this time" msgstr "Nie można załadować szablonów publicznego profilu w tej chwili" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:81 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove email verification at this time. Please try again." msgstr "Nie można usunąć weryfikacji e-maila w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:62 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "Unable to remove team email at this time. Please try again." msgstr "Nie można usunąć e-maila zespołu w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx:63 +#: apps/remix/app/components/tables/team-settings-member-invites-table.tsx msgid "Unable to resend invitation. Please try again." msgstr "Nie można ponownie wysłać zaproszenia. Proszę spróbować ponownie." -#: apps/remix/app/components/general/teams/team-email-dropdown.tsx:39 +#: apps/remix/app/components/general/teams/team-email-dropdown.tsx msgid "Unable to resend verification at this time. Please try again." msgstr "Nie można ponownie wysłać weryfikacji w tej chwili. Proszę spróbować ponownie." -#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/reset-password._index.tsx msgid "Unable to reset password" msgstr "Nie można zresetować hasła" -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:81 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:107 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Unable to setup two-factor authentication" msgstr "Nie można skonfigurować uwierzytelniania dwuetapowego" -#: apps/remix/app/components/forms/signin.tsx:230 -#: apps/remix/app/components/forms/signin.tsx:251 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "Unable to sign in" msgstr "Nie można się zalogować" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:49 -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:163 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "Unauthorized" msgstr "Nieautoryzowany" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:153 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Uncompleted" msgstr "Niezakończony" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:245 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:270 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:281 -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:292 -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:61 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Unknown" msgstr "Nieznany" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:79 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx msgid "Unpaid" msgstr "Nieopłacone" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:167 -#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx:175 -#: apps/remix/app/components/forms/public-profile-form.tsx:278 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:190 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:163 -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:425 -#: packages/ui/primitives/document-flow/add-subject.tsx:81 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx +#: apps/remix/app/components/tables/settings-public-profile-templates-table.tsx +#: apps/remix/app/components/forms/public-profile-form.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "Update" msgstr "Zaktualizuj" -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:216 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Update Banner" msgstr "Zaktualizuj baner" -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:123 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "Update passkey" msgstr "Zaktualizuj klucz dostępu" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Update password" msgstr "Zaktualizuj hasło" -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Update profile" msgstr "Zaktualizuj profil" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:172 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx msgid "Update Recipient" msgstr "Zaktualizuj odbiorcę" -#: apps/remix/app/components/tables/team-settings-members-table.tsx:131 +#: apps/remix/app/components/tables/team-settings-members-table.tsx msgid "Update role" msgstr "Zaktualizuj rolę" -#: apps/remix/app/components/forms/team-update-form.tsx:173 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Update team" msgstr "Zaktualizuj zespół" -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:110 -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:118 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "Update team email" msgstr "Zaktualizuj e-mail zespołu" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:135 -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:143 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "Update team member" msgstr "Zaktualizuj członka zespołu" -#: packages/lib/constants/template.ts:13 +#: packages/lib/constants/template.ts msgid "Update the role and add fields as required for the direct recipient. The individual who uses the direct link will sign the document as the direct recipient." msgstr "Zaktualizuj rolę i dodaj pola, jeśli to konieczne dla bezpośredniego odbiorcy. Osoba, która korzysta z bezpośredniego linku, podpisze dokument jako bezpośredni odbiorca." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:147 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Update user" msgstr "Zaktualizuj użytkownika" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:203 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:204 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Update webhook" msgstr "Zaktualizuj webhook" -#: apps/remix/app/components/forms/password.tsx:154 +#: apps/remix/app/components/forms/password.tsx msgid "Updating password..." msgstr "Aktualizowanie hasła..." -#: apps/remix/app/components/forms/profile.tsx:137 +#: apps/remix/app/components/forms/profile.tsx msgid "Updating profile..." msgstr "Aktualizacja profilu..." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:111 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Updating Your Information" msgstr "Aktualizacja Twoich informacji" -#: packages/ui/primitives/document-dropzone.tsx:162 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upgrade" msgstr "Ulepsz" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:131 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." msgstr "Prześlij plik CSV, aby utworzyć wiele dokumentów z tego szablonu. Każda linia reprezentuje jeden dokument z jego szczegółami odbiorcy." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:424 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" msgstr "Prześlij niestandardowy dokument do użycia zamiast domyślnego dokumentu szablonu" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:266 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" msgstr "Prześlij i przetwórz" -#: apps/remix/app/components/forms/avatar-image.tsx:175 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" msgstr "Prześlij awatar" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:197 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" msgstr "Prześlij CSV" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:417 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" msgstr "Prześlij niestandardowy dokument" -#: packages/ui/primitives/signature-pad/signature-pad.tsx:519 +#: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" msgstr "Prześlij podpis" -#: packages/ui/primitives/document-dropzone.tsx:68 +#: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" msgstr "Prześlij dokument szablonu" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:255 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" msgstr "Prześlij logo swojej marki (maks. 5MB, JPG, PNG lub WebP)" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:29 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:30 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx msgid "Uploaded by" msgstr "Przesłane przez" -#: apps/remix/app/components/forms/avatar-image.tsx:91 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" msgstr "Przesłany plik jest zbyt duży" -#: apps/remix/app/components/forms/avatar-image.tsx:92 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" msgstr "Przesłany plik jest zbyt mały" -#: apps/remix/app/components/forms/avatar-image.tsx:93 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" msgstr "Przesłany plik nie jest dozwolonym typem pliku" -#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx:194 +#: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" msgstr "Użyj" -#: apps/remix/app/components/forms/signin.tsx:483 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:182 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Authenticator" msgstr "Użyj Authenticatora" -#: apps/remix/app/components/forms/signin.tsx:481 -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:180 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "Use Backup Code" msgstr "Użyj kodu zapasowego" -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:217 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Use Template" msgstr "Użyj szablonu" -#: apps/remix/app/components/tables/internal-audit-log-table.tsx:45 -#: apps/remix/app/components/tables/document-logs-table.tsx:72 +#: apps/remix/app/components/tables/internal-audit-log-table.tsx +#: apps/remix/app/components/tables/document-logs-table.tsx msgid "User" msgstr "Użytkownik" -#: apps/remix/app/components/forms/password.tsx:77 +#: apps/remix/app/components/forms/password.tsx msgid "User has no password." msgstr "Użytkownik nie ma hasła." -#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx:45 +#: apps/remix/app/routes/_authenticated+/admin+/subscriptions.tsx msgid "User ID" msgstr "ID użytkownika" -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:54 -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:57 -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:57 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "User not found." msgstr "Nie znaleziono użytkownika." -#: apps/remix/app/components/forms/signup.tsx:231 +#: apps/remix/app/components/forms/signup.tsx msgid "User profiles are here!" msgstr "Profile użytkowników są tutaj!" -#: apps/remix/app/components/general/menu-switcher.tsx:258 +#: apps/remix/app/components/general/menu-switcher.tsx msgid "User settings" msgstr "Ustawienia użytkownika" -#: apps/remix/app/components/forms/signup.tsx:72 +#: apps/remix/app/components/forms/signup.tsx msgid "User with this email already exists. Please use a different email address." msgstr "Użytkownik z tym adresem e-mail już istnieje. Proszę użyć innego adresu e-mail." -#: apps/remix/app/components/forms/signup.tsx:56 +#: apps/remix/app/components/forms/signup.tsx msgid "Username can only container alphanumeric characters and dashes." msgstr "Nazwa użytkownika może zawierać tylko znaki alfanumeryczne i myślniki." -#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx:55 +#: apps/remix/app/routes/_authenticated+/admin+/_layout.tsx msgid "Users" msgstr "Użytkownicy" -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:187 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx:131 +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/checkbox-field.tsx msgid "Validation" msgstr "Walidacja" -#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx:75 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:90 -#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx:95 +#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx +#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Value" msgstr "Wartość" -#: apps/remix/app/components/general/verify-email-banner.tsx:104 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification Email Sent" msgstr "Wysłano wiadomość e-mail z weryfikacją" -#: apps/remix/app/components/general/verify-email-banner.tsx:47 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verification email sent successfully." msgstr "Wiadomość e-mail z weryfikacją została wysłana pomyślnie." -#: apps/remix/app/components/general/verify-email-banner.tsx:106 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify Now" msgstr "Zweryfikuj teraz" -#: apps/remix/app/components/general/verify-email-banner.tsx:116 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address" msgstr "Zweryfikuj swój adres e-mail" -#: apps/remix/app/components/general/verify-email-banner.tsx:92 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "Verify your email address to unlock all features." msgstr "Zweryfikuj swój adres e-mail, aby odblokować wszystkie funkcje." -#: apps/remix/app/components/general/document/document-upload.tsx:57 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." msgstr "Zweryfikuj adres e-mail, aby przesłać dokumenty." -#: packages/email/templates/confirm-team-email.tsx:72 +#: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" msgstr "Zweryfikuj swój adres e-mail zespołu" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx:80 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/audit-log.tsx msgid "Version History" msgstr "Historia wersji" -#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx:100 -#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx:121 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:124 -#: apps/remix/app/components/tables/documents-table-action-button.tsx:133 -#: apps/remix/app/components/general/document/document-page-view-button.tsx:95 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:177 -#: packages/lib/constants/recipient-roles.ts:28 +#: apps/remix/app/components/tables/team-settings-billing-invoices-table.tsx +#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/tables/documents-table-action-button.tsx +#: apps/remix/app/components/general/document/document-page-view-button.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: packages/lib/constants/recipient-roles.ts msgid "View" msgstr "Widok" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:170 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View activity" msgstr "Wyświetl aktywność" -#: packages/email/templates/confirm-team-email.tsx:96 +#: packages/email/templates/confirm-team-email.tsx msgid "View all documents sent to and from this email address" msgstr "Wyświetl wszystkie dokumenty wysłane do i z tego adresu e-mail" -#: apps/remix/app/components/general/teams/team-email-usage.tsx:77 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "View all documents sent to your account" msgstr "Wyświetl wszystkie dokumenty wysłane na twoje konto" -#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx:164 +#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx msgid "View all recent security activity related to your account." msgstr "Wyświetl wszystkie ostatnie aktywności związane z bezpieczeństwem twojego konta." -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:149 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View all related documents" msgstr "Zobacz wszystkie powiązane dokumenty" -#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx:19 +#: apps/remix/app/routes/_authenticated+/settings+/security.activity.tsx msgid "View all security activity related to your account." msgstr "Wyświetl wszystkie aktywności związane z bezpieczeństwem twojego konta." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:87 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Codes" msgstr "Wyświetl kody" -#: packages/email/templates/document-created-from-direct-template.tsx:76 +#: packages/email/templates/document-created-from-direct-template.tsx msgid "View document" msgstr "Zobacz dokument" -#: apps/remix/app/components/general/document-signing/document-signing-form.tsx:183 -#: packages/ui/primitives/document-flow/add-subject.tsx:85 -#: packages/ui/primitives/document-flow/add-subject.tsx:86 -#: packages/email/template-components/template-document-rejected.tsx:44 -#: packages/email/template-components/template-document-invite.tsx:107 +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx +#: packages/email/template-components/template-document-rejected.tsx +#: packages/email/template-components/template-document-invite.tsx msgid "View Document" msgstr "Wyświetl dokument" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:154 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "View documents associated with this email" msgstr "Wyświetl dokumenty powiązane z tym e-mailem" -#: apps/remix/app/components/general/teams/team-invitations.tsx:54 +#: apps/remix/app/components/general/teams/team-invitations.tsx msgid "View invites" msgstr "Wyświetl zaproszenia" -#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx:87 +#: apps/remix/app/components/general/template/template-page-view-recent-activity.tsx msgid "View more" msgstr "Zobacz więcej" -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:225 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "View Original Document" msgstr "Wyświetl oryginalny dokument" -#: packages/email/template-components/template-document-self-signed.tsx:80 +#: packages/email/template-components/template-document-self-signed.tsx msgid "View plans" msgstr "Zobacz plany" -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:96 -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:125 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx msgid "View Recovery Codes" msgstr "Wyświetl kody odzyskiwania" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/_layout.tsx msgid "View teams" msgstr "Wyświetl zespoły" -#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx:275 -#: apps/remix/app/components/general/document/document-page-view-recipients.tsx:119 -#: packages/lib/constants/recipient-roles.ts:29 +#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx +#: apps/remix/app/components/general/document/document-page-view-recipients.tsx +#: packages/lib/constants/recipient-roles.ts msgid "Viewed" msgstr "Wyświetlono" -#: packages/lib/constants/recipient-roles.ts:31 +#: packages/lib/constants/recipient-roles.ts msgid "Viewer" msgstr "Użytkownik widoku" -#: packages/lib/constants/recipient-roles.ts:32 +#: packages/lib/constants/recipient-roles.ts msgid "Viewers" msgstr "Widokowcy" -#: packages/lib/constants/recipient-roles.ts:30 +#: packages/lib/constants/recipient-roles.ts msgid "Viewing" msgstr "Wyświetlanie" -#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx:123 +#: apps/remix/app/components/general/stack-avatars-with-tooltip.tsx msgid "Waiting" msgstr "Czekam" -#: packages/email/template-components/template-document-pending.tsx:31 +#: packages/email/template-components/template-document-pending.tsx msgid "Waiting for others" msgstr "Czekam na innych" -#: packages/lib/server-only/document/send-pending-email.ts:97 +#: packages/lib/server-only/document/send-pending-email.ts msgid "Waiting for others to complete signing." msgstr "Czekam na innych, aby zakończyć podpisywanie." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:168 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Waiting for others to sign" msgstr "Czekam na podpisy innych" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:75 -#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx:29 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx +#: apps/remix/app/components/embed/embed-document-waiting-for-turn.tsx msgid "Waiting for Your Turn" msgstr "Czekając na Twój Ruch" -#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx:197 +#: apps/remix/app/routes/_recipient+/sign.$token+/_index.tsx msgid "Want to send slick signing links like this one? <0>Check out Documenso." msgstr "Chcesz wysłać eleganckie linki do podpisywania, takie jak ten? <0>Sprawdź Documenso." -#: apps/remix/app/routes/_profile+/_layout.tsx:68 +#: apps/remix/app/routes/_profile+/_layout.tsx msgid "Want your own public profile?" msgstr "Chcesz mieć profil publiczny?" -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:224 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:321 -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:357 -#: packages/ui/primitives/document-flow/add-signers.tsx:257 -#: packages/ui/primitives/document-flow/add-signers.tsx:295 -#: packages/ui/primitives/document-flow/add-signers.tsx:334 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "Warning: Assistant as last signer" msgstr "" -#: apps/remix/app/components/general/billing-portal-button.tsx:25 -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:54 -#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx +#: apps/remix/app/components/general/teams/team-billing-portal-button.tsx msgid "We are unable to proceed to the billing portal at this time. Please try again, or contact support." msgstr "Nie możemy przejść do portalu rozliczeń w tej chwili. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:100 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to remove this passkey at the moment. Please try again later." msgstr "Nie możemy usunąć tego klucza zabezpieczeń w tej chwili. Proszę spróbuj ponownie później." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:78 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "We are unable to update this passkey at the moment. Please try again later." msgstr "Nie możemy zaktualizować tego klucza zabezpieczeń w tej chwili. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:155 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "We encountered an error while removing the direct template link. Please try again later." msgstr "Wystąpił błąd podczas usuwania bezpośredniego linku do szablonu. Proszę spróbować ponownie później." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:83 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:80 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "We encountered an error while updating the webhook. Please try again later." msgstr "Natknęliśmy się na błąd podczas aktualizacji webhooka. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:99 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We encountered an unknown error while attempting to add this email. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby dodania tego e-maila. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:106 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "We encountered an unknown error while attempting to create a team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby utworzenia zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:83 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete it. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego. Proszę spróbuj ponownie później." -#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx:36 +#: apps/remix/app/components/tables/user-settings-pending-teams-table-actions.tsx msgid "We encountered an unknown error while attempting to delete the pending team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia oczekującego zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:90 +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete this token. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego tokena. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "We encountered an unknown error while attempting to delete your account. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia twojego konta. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx:156 +#: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "We encountered an unknown error while attempting to invite team members. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaproszenia członków zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "We encountered an unknown error while attempting to leave this team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby opuszczenia tego zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:141 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to remove this template from your profile. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego szablonu z twojego profilu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/general/teams/team-transfer-status.tsx:53 +#: apps/remix/app/components/general/teams/team-transfer-status.tsx msgid "We encountered an unknown error while attempting to remove this transfer. Please try again or contact support." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego transferu. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:59 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "We encountered an unknown error while attempting to remove this user. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby usunięcia tego użytkownika. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:116 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "We encountered an unknown error while attempting to request a transfer of this team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zażądania transferu tego zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/reset-password.tsx:87 +#: apps/remix/app/components/forms/reset-password.tsx msgid "We encountered an unknown error while attempting to reset your password. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zresetowania hasła. Proszę spróbuj ponownie później." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:45 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "We encountered an unknown error while attempting to revoke access. Please try again or contact support." msgstr "Natknęliśmy się na nieznany błąd podczas próby odwołania dostępu. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną." -#: apps/remix/app/components/forms/signin.tsx:267 -#: apps/remix/app/components/forms/signin.tsx:283 +#: apps/remix/app/components/forms/signin.tsx +#: apps/remix/app/components/forms/signin.tsx msgid "We encountered an unknown error while attempting to sign you In. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zalogowania się. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/signup.tsx:183 -#: apps/remix/app/components/forms/signup.tsx:197 +#: apps/remix/app/components/forms/signup.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "We encountered an unknown error while attempting to sign you Up. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby rejestracji. Proszę spróbuj ponownie później." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:91 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "We encountered an unknown error while attempting to update the banner. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania banera. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:177 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "We encountered an unknown error while attempting to update the template. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania szablonu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:101 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "We encountered an unknown error while attempting to update this team member. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania tego członka zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/password.tsx:85 -#: apps/remix/app/components/forms/avatar-image.tsx:118 +#: apps/remix/app/components/forms/password.tsx +#: apps/remix/app/components/forms/avatar-image.tsx msgid "We encountered an unknown error while attempting to update your password. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania twojego hasła. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/public-profile-form.tsx:105 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "We encountered an unknown error while attempting to update your public profile. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania twojego profilu publicznego. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/team-update-form.tsx:93 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "We encountered an unknown error while attempting to update your team. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania twojego zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-email-update-dialog.tsx msgid "We encountered an unknown error while attempting update the team email. Please try again later." msgstr "Natknęliśmy się na nieznany błąd podczas próby zaktualizowania e-maila zespołu. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/profile.tsx:76 +#: apps/remix/app/components/forms/profile.tsx msgid "We encountered an unknown error while attempting update your profile. Please try again later." msgstr "Napotkaliśmy nieznany błąd podczas próby aktualizacji Twojego profilu. Proszę spróbować ponownie później." -#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx:77 +#: apps/remix/app/components/dialogs/team-email-add-dialog.tsx msgid "We have sent a confirmation email for verification." msgstr "Wysłaliśmy wiadomość e-mail z potwierdzeniem dla weryfikacji." -#: apps/remix/app/components/forms/signup.tsx:54 +#: apps/remix/app/components/forms/signup.tsx msgid "We need a username to create your profile" msgstr "Potrzebujemy nazwy użytkownika, aby utworzyć Twój profil" -#: apps/remix/app/components/forms/signup.tsx:49 +#: apps/remix/app/components/forms/signup.tsx msgid "We need your signature to sign documents" msgstr "Potrzebujemy Twojego podpisu, aby podpisać dokumenty" -#: apps/remix/app/components/forms/token.tsx:108 +#: apps/remix/app/components/forms/token.tsx msgid "We were unable to copy the token to your clipboard. Please try again." msgstr "Nie udało nam się skopiować tokena do schowka. Spróbuj ponownie." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:33 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "We were unable to copy your recovery code to your clipboard. Please try again." msgstr "Nie udało nam się skopiować twojego kodu odzyskiwania do schowka. Spróbuj ponownie." -#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx:53 +#: apps/remix/app/components/dialogs/team-checkout-create-dialog.tsx msgid "We were unable to create a checkout session. Please try again, or contact support" msgstr "Nie udało się utworzyć sesji zakupu. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną" -#: apps/remix/app/components/forms/signup.tsx:73 +#: apps/remix/app/components/forms/signup.tsx msgid "We were unable to create your account. Please review the information you provided and try again." msgstr "Nie udało się utworzyć Twojego konta. Proszę sprawdzić podane informacje i spróbować ponownie." -#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx:100 +#: apps/remix/app/components/forms/2fa/disable-authenticator-app-dialog.tsx msgid "We were unable to disable two-factor authentication for your account. Please ensure that you have entered your password and backup code correctly and try again." msgstr "Nie udało nam się wyłączyć uwierzytelniania dwuskładnikowego dla twojego konta. Upewnij się, że wpisałeś poprawnie swoje hasło i kod zapasowy, a następnie spróbuj ponownie." -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:35 -#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx:45 -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:25 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx +#: apps/remix/app/components/general/document-signing/document-signing-auth-account.tsx +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "We were unable to log you out at this time." msgstr "Nie udało nam się wylogować w tej chwili." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:134 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "We were unable to set your public profile to public. Please try again." msgstr "Nie udało nam się ustawić twojego profilu publicznego na publiczny. Proszę spróbuj ponownie." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:83 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:109 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "We were unable to setup two-factor authentication for your account. Please ensure that you have entered your code correctly and try again." msgstr "Nie udało nam się skonfigurować uwierzytelniania dwuskładnikowego dla twojego konta. Upewnij się, że wpisałeś poprawnie swój kod, a następnie spróbuj ponownie." -#: apps/remix/app/components/general/direct-template/direct-template-page.tsx:121 -#: apps/remix/app/components/embed/embed-document-signing-page.tsx:169 -#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx:262 +#: apps/remix/app/components/general/direct-template/direct-template-page.tsx +#: apps/remix/app/components/embed/embed-document-signing-page.tsx +#: apps/remix/app/components/embed/embed-direct-template-client-page.tsx msgid "We were unable to submit this document at this time. Please try again later." msgstr "Nie udało nam się złożyć tego dokumentu w tej chwili. Proszę spróbuj ponownie później." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:108 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "We were unable to update your branding preferences at this time, please try again later" msgstr "Nie udało nam się zaktualizować ustawień dotyczących marki w tym czasie, spróbuj ponownie później" -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:109 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "We were unable to update your document preferences at this time, please try again later" msgstr "Nie udało nam się zaktualizować preferencji dokumentu w tym czasie, spróbuj ponownie później" -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:166 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "We were unable to verify your details. Please try again or contact support" msgstr "Nie udało się zweryfikować twoich danych. Proszę spróbuj ponownie lub skontaktuj się z pomocą techniczną" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:57 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email at this time." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:92 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "We were unable to verify your email. If your email is not verified already, please try again." msgstr "Nie udało się zweryfikować twojego e-maila. Jeśli twój e-mail nie jest jeszcze zweryfikowany, spróbuj ponownie." -#: packages/ui/primitives/document-flow/add-subject.tsx:200 +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We will generate signing links for with you, which you can send to the recipients through your method of choice." msgstr "Wygenerujemy linki do podpisu dla Ciebie, które możesz wysłać do odbiorców w wybrany przez siebie sposób." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:380 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "We will generate signing links for you, which you can send to the recipients through your method of choice." msgstr "Wygenerujemy dla Ciebie linki do podpisania, które możesz wysłać do odbiorców za pomocą wybranej metody." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:376 -#: packages/ui/primitives/document-flow/add-subject.tsx:196 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx +#: packages/ui/primitives/document-flow/add-subject.tsx msgid "We won't send anything to notify recipients." msgstr "Nie wyślemy nic, aby powiadomić odbiorców." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:72 -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:29 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "We're all empty" msgstr "Pusto" -#: packages/email/template-components/template-document-pending.tsx:41 +#: packages/email/template-components/template-document-pending.tsx msgid "We're still waiting for other signers to sign this document.<0/>We'll notify you as soon as it's ready." msgstr "Wciąż czekamy na innych sygnatariuszy, aby podpisać ten dokument.<0/>Powiadomimy Cię, gdy będzie gotowy." -#: packages/email/templates/reset-password.tsx:66 +#: packages/email/templates/reset-password.tsx msgid "We've changed your password as you asked. You can now sign in with your new password." msgstr "Zmieniłem hasło, jak prosiłeś. Teraz możesz zalogować się za pomocą nowego hasła." -#: apps/remix/app/components/general/verify-email-banner.tsx:120 +#: apps/remix/app/components/general/verify-email-banner.tsx msgid "We've sent a confirmation email to <0>{email}. Please check your inbox and click the link in the email to verify your account." msgstr "Wysłaliśmy wiadomość e-mail z potwierdzeniem na <0>{email}. Proszę sprawdź swoją skrzynkę odbiorczą i kliknij link w e-maile, aby zweryfikować swoje konto." -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:87 +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook created" msgstr "Webhook utworzony" -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:73 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx msgid "Webhook deleted" msgstr "Webhook usunięty" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx:73 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:70 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks.$id.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx msgid "Webhook updated" msgstr "Webhook zaktualizowany" -#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx:113 -#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx:138 +#: apps/remix/app/routes/_authenticated+/settings+/webhooks.$id.tsx +#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx msgid "Webhook URL" msgstr "URL webhooka" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:31 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:26 -#: apps/remix/app/components/general/settings-nav-mobile.tsx:97 -#: apps/remix/app/components/general/settings-nav-desktop.tsx:95 -#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx:107 -#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx:98 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx +#: apps/remix/app/components/general/settings-nav-mobile.tsx +#: apps/remix/app/components/general/settings-nav-desktop.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-mobile.tsx +#: apps/remix/app/components/general/teams/team-settings-nav-desktop.tsx msgid "Webhooks" msgstr "Webhooki" -#: apps/remix/app/components/general/billing-plans.tsx:27 +#: apps/remix/app/components/general/billing-plans.tsx msgid "Weekly" msgstr "" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:17 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Welcome" msgstr "Witaj" -#: apps/remix/app/routes/_unauthenticated+/signin.tsx:51 +#: apps/remix/app/routes/_unauthenticated+/signin.tsx msgid "Welcome back, we are lucky to have you." msgstr "Witamy z powrotem, mamy szczęście, że mamy cię." -#: packages/email/template-components/template-confirmation-email.tsx:21 +#: packages/email/template-components/template-confirmation-email.tsx msgid "Welcome to Documenso!" msgstr "Witamy w Documenso!" -#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx:93 +#: apps/remix/app/routes/_recipient+/sign.$token+/waiting.tsx msgid "Were you trying to edit this document instead?" msgstr "Czy próbowałeś raczej edytować ten dokument?" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:188 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "When you click continue, you will be prompted to add the first available authenticator on your system." msgstr "Kiedy klikniesz kontynuuj, zostaniesz poproszony o dodanie pierwszego dostępnego autoryzatora w swoim systemie." -#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx:175 +#: apps/remix/app/components/general/document-signing/document-signing-auto-sign.tsx msgid "When you sign a document, we can automatically fill in and sign the following fields using information that has already been provided. You can also manually sign or remove any automatically signed fields afterwards if you desire." msgstr "Gdy podpisujesz dokument, możemy automatycznie wypełnić i podpisać następujące pola, używając już podanych informacji. Możesz też ręcznie podpisać lub usunąć wszystkie automatycznie podpisane pola, jeśli chcesz." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:32 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "When you use our platform to affix your electronic signature to documents, you are consenting to do so under the Electronic Signatures in Global and National Commerce Act (E-Sign Act) and other applicable laws. This action indicates your agreement to use electronic means to sign documents and receive notifications." msgstr "Kiedy korzystasz z naszej platformy, aby przyczepić swój podpis elektroniczny do dokumentów, wyrażasz zgodę na dokonanie tego zgodnie z Ustawą o podpisach elektronicznych w handlu globalnym i krajowym (Ustawa E-Sign) oraz innymi obowiązującymi przepisami. Ta czynność wskazuje na twoją zgodę na korzystanie z elektronicznych środków do podpisywania dokumentów i otrzymywania powiadomień." -#: apps/remix/app/routes/_profile+/p.$url.tsx:136 +#: apps/remix/app/routes/_profile+/p.$url.tsx msgid "While waiting for them to do so you can create your own Documenso account and get started with document signing right away." msgstr "Czekając na ich działania możesz utworzyć własne konto Documenso i od razu rozpocząć podpisywanie dokumentów." -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:124 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Who do you want to remind?" msgstr "Kogo chcesz przypomnieć?" -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:97 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Withdrawing Consent" msgstr "Wycofanie zgody" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about the team" msgstr "Napisz o zespole" -#: apps/remix/app/components/forms/public-profile-form.tsx:222 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Write about yourself" msgstr "Napisz o sobie" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:59 -#: apps/remix/app/components/general/billing-plans.tsx:29 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx +#: apps/remix/app/components/general/billing-plans.tsx msgid "Yearly" msgstr "Rocznie" -#: apps/remix/app/components/general/template/template-page-view-information.tsx:31 -#: apps/remix/app/components/general/document/document-page-view-information.tsx:32 -#: packages/lib/utils/document-audit-logs.ts:273 +#: apps/remix/app/components/general/template/template-page-view-information.tsx +#: apps/remix/app/components/general/document/document-page-view-information.tsx +#: packages/lib/utils/document-audit-logs.ts msgid "You" msgstr "Ty" -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:99 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to delete <0>\"{documentTitle}\"" msgstr "Zaraz usuniesz <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx:117 +#: apps/remix/app/components/dialogs/team-email-delete-dialog.tsx msgid "You are about to delete the following team email from <0>{teamName}." msgstr "Zaraz usuniesz następujący e-mail zespołowy z <0>{teamName}." -#: apps/remix/app/components/dialogs/document-delete-dialog.tsx:103 +#: apps/remix/app/components/dialogs/document-delete-dialog.tsx msgid "You are about to hide <0>\"{documentTitle}\"" msgstr "Zaraz ukryjesz <0>\"{documentTitle}\"" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You are about to leave the following team." msgstr "Zaraz opuścisz następujący zespół." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:84 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You are about to remove the following user from <0>{teamName}." msgstr "Zaraz usuniesz następującego użytkownika z <0>{teamName}." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:97 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You are about to revoke access for team <0>{0} ({1}) to use your email." msgstr "Zaraz cofniesz dostęp dla zespołu <0>{0} ({1}) do korzystania z twojego e-maila." -#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx:44 +#: packages/ui/primitives/document-flow/send-document-action-dialog.tsx msgid "You are about to send this document to the recipients. Are you sure you want to continue?" msgstr "Zaraz wyślesz ten dokument do odbiorców. Czy na pewno chcesz kontynuować?" -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:90 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." msgstr "" -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:147 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." msgstr "Obecnie aktualizujesz <0>{teamMemberName}." -#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx:127 +#: apps/remix/app/components/tables/settings-security-passkey-table-actions.tsx msgid "You are currently updating the <0>{passkeyName} passkey." msgstr "Obecnie aktualizujesz klucz zabezpieczeń <0>{passkeyName}." -#: apps/remix/app/components/dialogs/template-move-dialog.tsx:80 +#: apps/remix/app/components/dialogs/template-move-dialog.tsx msgid "You are not a member of this team." msgstr "Nie jesteś członkiem tego zespołu." -#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "You are not authorized to delete this user." msgstr "Nie masz uprawnień do usunięcia tego użytkownika." -#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx:58 +#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx msgid "You are not authorized to disable this user." msgstr "Nie masz uprawnień, aby wyłączyć tego użytkownika." -#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx:55 +#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx msgid "You are not authorized to enable this user." msgstr "Nie masz uprawnień, aby włączyć tego użytkownika." -#: packages/email/template-components/template-confirmation-email.tsx:38 +#: packages/email/template-components/template-confirmation-email.tsx msgid "You can also copy and paste this link into your browser: {confirmationLink} (link expires in 1 hour)" msgstr "Możesz także skopiować i wkleić ten link do przeglądarki: {confirmationLink} (link wygasa za 1 godzinę)" -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:35 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your profile for public view." msgstr "Możesz wybrać, aby włączyć lub wyłączyć swój profil do publicznego widoku." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:42 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You can choose to enable or disable your team profile for public view." msgstr "Możesz wybrać, aby włączyć lub wyłączyć profil swojego zespołu do publicznego widoku." -#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx:85 +#: apps/remix/app/components/general/document/document-recipient-link-copy-dialog.tsx msgid "You can copy and share these links to recipients so they can action the document." msgstr "Możesz skopiować i udostępnić te linki odbiorcom, aby mogli wykonać dokument." -#: packages/email/templates/confirm-team-email.tsx:107 +#: packages/email/templates/confirm-team-email.tsx msgid "You can revoke access at any time in your team settings on Documenso <0>here." msgstr "Możesz w każdej chwili cofnąć dostęp w ustawieniach zespołu na Documenso <0>tutaj." -#: apps/remix/app/components/forms/public-profile-form.tsx:153 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "You can update the profile URL by updating the team URL in the general settings page." msgstr "Możesz zaktualizować adres URL profilu, aktualizując adres URL zespołu na stronie ogólnych ustawień." -#: packages/ui/components/document/document-send-email-message-helper.tsx:9 +#: packages/ui/components/document/document-send-email-message-helper.tsx msgid "You can use the following variables in your message:" msgstr "Możesz użyć następujących zmiennych w swojej wiadomości:" -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx:69 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings._index.tsx msgid "You can view documents associated with this email and use this identity when sending documents." msgstr "Możesz wyświetlać dokumenty powiązane z tym e-mailem i używać tej tożsamości podczas wysyłania dokumentów." -#: packages/email/templates/bulk-send-complete.tsx:76 +#: packages/email/templates/bulk-send-complete.tsx msgid "You can view the created documents in your dashboard under the \"Documents created from template\" section." msgstr "Możesz zobaczyć utworzone dokumenty na swoim pulpicie w sekcji \"Dokumenty utworzone z szablonu\"." -#: packages/email/template-components/template-document-rejected.tsx:37 +#: packages/email/template-components/template-document-rejected.tsx msgid "You can view the document and its status by clicking the button below." msgstr "Możesz zobaczyć dokument i jego status, klikając przycisk poniżej." -#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx:341 -#: packages/ui/primitives/document-flow/add-signers.tsx:279 +#: packages/ui/primitives/template-flow/add-template-placeholder-recipients.tsx +#: packages/ui/primitives/document-flow/add-signers.tsx msgid "You cannot add assistants when signing order is disabled." msgstr "" -#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx:212 +#: apps/remix/app/components/dialogs/passkey-create-dialog.tsx msgid "You cannot have more than {MAXIMUM_PASSKEYS} passkeys." msgstr "Nie możesz mieć więcej niż {MAXIMUM_PASSKEYS} kluczy zabezpieczeń." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:119 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You cannot modify a team member who has a higher role than you." msgstr "Nie możesz modyfikować członka zespołu, który ma wyższą rolę niż ty." -#: packages/ui/primitives/document-dropzone.tsx:41 +#: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." msgstr "Nie możesz przesyłać dokumentów w tej chwili." -#: apps/remix/app/components/general/document/document-upload.tsx:95 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" msgstr "Nie możesz przesyłać zaszyfrowanych plików PDF" -#: apps/remix/app/components/general/billing-portal-button.tsx:30 +#: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." msgstr "" -#: apps/remix/app/components/forms/token.tsx:135 +#: apps/remix/app/components/forms/token.tsx msgid "You do not have permission to create a token for this team" msgstr "Nie masz uprawnień do utworzenia tokenu dla tego zespołu" -#: packages/email/template-components/template-document-cancel.tsx:35 +#: packages/email/template-components/template-document-cancel.tsx msgid "You don't need to sign it anymore." msgstr "Nie musisz go już podpisywać." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:150 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx msgid "You have accepted an invitation from <0>{0} to join their team." msgstr "Zaakceptowałeś zaproszenie od <0>{0}, aby dołączyć do ich zespołu." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx:103 +#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.token.tsx msgid "You have already completed the ownership transfer for <0>{0}." msgstr "Już zakończyłeś transfer własności dla <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:126 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have already verified your email address for <0>{0}." msgstr "Już zweryfikowałeś swój adres e-mail dla <0>{0}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx:125 -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:120 +#: apps/remix/app/routes/_unauthenticated+/team.invite.$token.tsx +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have been invited by <0>{0} to join their team." msgstr "Zostałeś zaproszony przez <0>{0}, aby dołączyć do ich zespołu." #. placeholder {0}: team.name -#: packages/lib/server-only/team/create-team-member-invites.ts:186 +#: packages/lib/server-only/team/create-team-member-invites.ts msgid "You have been invited to join {0} on Documenso" msgstr "Zostałeś zaproszony do dołączenia do {0} na Documenso" -#: packages/email/templates/team-invite.tsx:77 +#: packages/email/templates/team-invite.tsx msgid "You have been invited to join the following team" msgstr "Zostałeś zaproszony do dołączenia do następującego zespołu" -#: packages/lib/server-only/recipient/set-document-recipients.ts:326 -#: packages/lib/server-only/recipient/delete-document-recipient.ts:156 +#: packages/lib/server-only/recipient/set-document-recipients.ts +#: packages/lib/server-only/recipient/delete-document-recipient.ts msgid "You have been removed from a document" msgstr "Zostałeś usunięty z dokumentu" #. placeholder {0}: team.name -#: packages/lib/server-only/team/request-team-ownership-transfer.ts:114 +#: packages/lib/server-only/team/request-team-ownership-transfer.ts msgid "You have been requested to take ownership of team {0} on Documenso" msgstr "Poproszono Cię o przejęcie własności zespołu {0} na Documenso" #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx:145 +#: apps/remix/app/routes/_unauthenticated+/team.decline.$token.tsx msgid "You have declined the invitation from <0>{0} to join their team." msgstr "Odrzuciłeś zaproszenie od <0>{0}, aby dołączyć do ich zespołu." #. placeholder {0}: `"${document.title}"` -#: packages/lib/server-only/document/resend-document.tsx:125 -#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts:98 +#: packages/lib/server-only/document/resend-document.tsx +#: packages/lib/jobs/definitions/emails/send-signing-email.handler.ts msgid "You have initiated the document {0} that requires you to {recipientActionVerb} it." msgstr "Rozpocząłeś dokument {0}, który wymaga, abyś go {recipientActionVerb}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx:45 -#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx:40 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.webhooks._index.tsx +#: apps/remix/app/routes/_authenticated+/settings+/webhooks._index.tsx msgid "You have no webhooks yet. Your webhooks will be shown here once you create them." msgstr "Nie masz jeszcze żadnych webhooków. Twoje webhooki będą tutaj widoczne, gdy je utworzysz." -#: apps/remix/app/routes/_authenticated+/templates._index.tsx:76 +#: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." msgstr "Brak utworzonych szablonów. Prześlij, aby utworzyć." -#: apps/remix/app/components/tables/documents-table-empty-state.tsx:30 +#: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." msgstr "Brak utworzonych lub odebranych dokumentów. Prześlij, aby utworzyć." #. placeholder {0}: quota.directTemplates -#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx:235 +#: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx msgid "You have reached the maximum limit of {0} direct templates. <0>Upgrade your account to continue!" msgstr "Osiągnąłeś maksymalny limit {0} bezpośrednich szablonów. <0>Ulepsz swoje konto, aby kontynuować!" -#: apps/remix/app/components/general/document/document-upload.tsx:98 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." msgstr "Osiągnąłeś limit dokumentów na ten miesiąc. Proszę zaktualizować swój plan." -#: apps/remix/app/components/general/document/document-upload.tsx:53 -#: packages/ui/primitives/document-dropzone.tsx:67 +#: apps/remix/app/components/general/document/document-upload.tsx +#: packages/ui/primitives/document-dropzone.tsx msgid "You have reached your document limit." msgstr "Osiągnięto limit dokumentów." -#: apps/remix/app/components/tables/templates-table.tsx:204 +#: apps/remix/app/components/tables/templates-table.tsx msgid "You have reached your document limit. <0>Upgrade your account to continue!" msgstr "Osiągnąłeś limit dokumentów. <0>Ulepsz swoje konto, aby kontynuować!" -#: packages/email/templates/document-rejection-confirmed.tsx:27 +#: packages/email/templates/document-rejection-confirmed.tsx msgid "You have rejected the document '{documentName}'" msgstr "Odrzuciłeś dokument '{documentName}'" -#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx:102 -#: apps/remix/app/components/embed/embed-document-rejected.tsx:17 +#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx +#: apps/remix/app/components/embed/embed-document-rejected.tsx msgid "You have rejected this document" msgstr "Odrzuciłeś ten dokument" -#: packages/email/template-components/template-document-self-signed.tsx:43 +#: packages/email/template-components/template-document-self-signed.tsx msgid "You have signed “{documentName}”" msgstr "Podpisałeś „{documentName}”" -#: apps/remix/app/components/dialogs/team-leave-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-leave-dialog.tsx msgid "You have successfully left this team." msgstr "Sukces! Opuszczono ten zespół." -#: apps/remix/app/components/general/claim-account.tsx:81 -#: apps/remix/app/components/forms/signup.tsx:138 +#: apps/remix/app/components/general/claim-account.tsx +#: apps/remix/app/components/forms/signup.tsx msgid "You have successfully registered. Please verify your account by clicking on the link you received in the email." msgstr "Rejestracja zakończona sukcesem. Zweryfikuj swoje konto, klikając w link, który otrzymałeś w e-mailu." -#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx:49 +#: apps/remix/app/components/dialogs/team-member-delete-dialog.tsx msgid "You have successfully removed this user from the team." msgstr "Sukces! Usunięto tego użytkownika z zespołu." -#: apps/remix/app/components/general/teams/team-email-usage.tsx:37 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "You have successfully revoked access." msgstr "Sukces! Odebrano dostęp." -#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx:100 +#: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "You have the right to withdraw your consent to use electronic signatures at any time before completing the signing process. To withdraw your consent, please contact the sender of the document. In failing to contact the sender you may reach out to <0>{SUPPORT_EMAIL} for assistance. Be aware that withdrawing consent may delay or halt the completion of the related transaction or service." msgstr "Masz prawo do wycofania zgody na korzystanie z podpisów elektronicznych w dowolnym czasie przed zakończeniem procesu podpisywania. Aby wycofać zgodę, prosimy o kontakt z nadawcą dokumentu. Jeśli nie uda Ci się skontaktować z nadawcą, możesz skontaktować się z <0>{SUPPORT_EMAIL} w celu uzyskania pomocy. Należy pamiętać, że wycofanie zgody może opóźnić lub zatrzymać zakończenie związanej z tym transakcji lub usługi." -#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx:92 +#: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You have updated {teamMemberName}." msgstr "Zaktualizowałeś {teamMemberName}." #. placeholder {0}: data.teamName -#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx:164 +#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx msgid "You have verified your email address for <0>{0}." msgstr "Zweryfikowałeś swój adres e-mail dla <0>{0}." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:94 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "You must be an admin of this team to manage billing." msgstr "Musisz być administratorem tego zespołu, aby zarządzać płatnościami." -#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/token-delete-dialog.tsx:53 -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:52 +#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx +#: apps/remix/app/components/dialogs/token-delete-dialog.tsx +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "You must enter '{deleteMessage}' to proceed" msgstr "Musisz wpisać '{deleteMessage}' aby kontynuować" -#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx:264 +#: apps/remix/app/components/dialogs/team-transfer-dialog.tsx msgid "You must have at least one other team member to transfer ownership." msgstr "Musisz mieć przynajmniej jednego innego członka zespołu, aby przenieść własność." -#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx:118 +#: apps/remix/app/routes/_authenticated+/settings+/public-profile.tsx msgid "You must set a profile URL before enabling your public profile." msgstr "Musisz ustawić URL profilu przed włączeniem swojego publicznego profilu." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:52 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "You need to be an admin to manage API tokens." msgstr "" -#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx:52 +#: apps/remix/app/components/general/document-signing/document-signing-auth-page.tsx msgid "You need to be logged in as <0>{email} to view this page." msgstr "Musisz być zalogowany jako <0>{email}, aby zobaczyć tę stronę." -#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx:42 +#: apps/remix/app/components/general/direct-template/direct-template-signing-auth-page.tsx msgid "You need to be logged in to view this page." msgstr "Musisz być zalogowany, aby zobaczyć tę stronę." -#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx:105 +#: apps/remix/app/components/general/document-signing/document-signing-auth-2fa.tsx msgid "You need to setup 2FA to mark this document as viewed." msgstr "Musisz skonfigurować 2FA, aby oznaczyć ten dokument jako przeczytany." -#: apps/remix/app/components/forms/signup.tsx:280 +#: apps/remix/app/components/forms/signup.tsx msgid "You will get notified & be able to set up your documenso public profile when we launch the feature." msgstr "Otrzymasz powiadomienie i będziesz mógł skonfigurować swój publiczny profil documenso, gdy uruchomimy tę funkcję." -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:102 +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "You will now be required to enter a code from your authenticator app when signing in." msgstr "Będziesz teraz zobowiązany do wpisania kodu z aplikacji uwierzytelniającej podczas logowania." -#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx:191 +#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "You will receive an Email copy of the signed document once everyone has signed." msgstr "Otrzymasz kopię e-maila podpisanego dokumentu, gdy wszyscy podpiszą." -#: apps/remix/app/components/dialogs/account-delete-dialog.tsx:48 +#: apps/remix/app/components/dialogs/account-delete-dialog.tsx msgid "Your account has been deleted successfully." msgstr "Konto zostało usunięte." -#: apps/remix/app/components/forms/avatar-image.tsx:110 +#: apps/remix/app/components/forms/avatar-image.tsx msgid "Your avatar has been updated successfully." msgstr "Awatar został zaktualizowany." -#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx:81 +#: apps/remix/app/routes/_authenticated+/admin+/site-settings.tsx msgid "Your banner has been updated successfully." msgstr "Twój banner został pomyślnie zaktualizowany." -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:279 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your brand website URL" msgstr "Adres URL witryny Twojej marki" -#: apps/remix/app/components/forms/team-branding-preferences-form.tsx:102 +#: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Your branding preferences have been updated" msgstr "Preferencje dotyczące marki zostały zaktualizowane" -#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx:96 +#: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Your bulk send has been initiated. You will receive an email notification upon completion." msgstr "Twoja masowa wysyłka została zainicjowana. Otrzymasz powiadomienie e-mail po jej zakończeniu." -#: packages/email/templates/bulk-send-complete.tsx:40 +#: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." msgstr "Twoja operacja masowej wysyłki dla szablonu \"{templateName}\" została zakończona." -#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx:135 +#: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." msgstr "" -#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx:248 +#: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" msgstr "Twoje bezpośrednie szablony podpisu" -#: apps/remix/app/components/general/document/document-upload.tsx:115 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." msgstr "Twój dokument nie udało się załadować." -#: apps/remix/app/components/dialogs/template-use-dialog.tsx:167 +#: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." msgstr "Twój dokument został pomyślnie utworzony na podstawie szablonu." -#: packages/email/template-components/template-document-super-delete.tsx:23 +#: packages/email/template-components/template-document-super-delete.tsx msgid "Your document has been deleted by an admin!" msgstr "Dokument został usunięty przez administratora!" -#: apps/remix/app/components/dialogs/document-resend-dialog.tsx:96 +#: apps/remix/app/components/dialogs/document-resend-dialog.tsx msgid "Your document has been re-sent successfully." msgstr "Twój dokument został pomyślnie ponownie wysłany." -#: apps/remix/app/components/general/document/document-edit-form.tsx:293 +#: apps/remix/app/components/general/document/document-edit-form.tsx msgid "Your document has been sent successfully." msgstr "Twój dokument został pomyślnie wysłany." -#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx:62 +#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx msgid "Your document has been successfully duplicated." msgstr "Twój dokument został pomyślnie zduplikowany." -#: apps/remix/app/components/general/document/document-upload.tsx:78 +#: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." msgstr "Twój dokument został pomyślnie załadowany." -#: apps/remix/app/components/dialogs/template-create-dialog.tsx:61 +#: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." msgstr "Twój dokument został pomyślnie załadowany. Zostaniesz przekierowany na stronę szablonu." -#: apps/remix/app/components/forms/team-document-preferences-form.tsx:103 +#: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" msgstr "Preferencje dokumentu zostały zaktualizowane" -#: apps/remix/app/components/general/app-command-menu.tsx:218 +#: apps/remix/app/components/general/app-command-menu.tsx msgid "Your documents" msgstr "Twoje dokumenty" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:176 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has already been confirmed. You can now use all features of Documenso." msgstr "" -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:148 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your email has been successfully confirmed! You can now use all features of Documenso." msgstr "Twój adres e-mail został pomyślnie potwierdzony! Możesz teraz korzystać ze wszystkich funkcji Documenso." #. placeholder {0}: teamEmail.team.name #. placeholder {1}: teamEmail.team.url -#: apps/remix/app/components/general/teams/team-email-usage.tsx:61 +#: apps/remix/app/components/general/teams/team-email-usage.tsx msgid "Your email is currently being used by team <0>{0} ({1})." msgstr "Twój adres e-mail jest aktualnie używany przez zespół <0>{0} ({1})." -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:63 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your existing tokens" msgstr "Istniejące tokeny" -#: apps/remix/app/components/forms/reset-password.tsx:83 -#: apps/remix/app/components/forms/password.tsx:81 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your new password cannot be the same as your old password." msgstr "Twoje nowe hasło nie może być takie samo jak stare hasło." -#: apps/remix/app/components/forms/reset-password.tsx:72 -#: apps/remix/app/components/forms/password.tsx:70 +#: apps/remix/app/components/forms/reset-password.tsx +#: apps/remix/app/components/forms/password.tsx msgid "Your password has been updated successfully." msgstr "Hasło zostało zaktualizowane." -#: packages/email/template-components/template-reset-password.tsx:27 +#: packages/email/template-components/template-reset-password.tsx msgid "Your password has been updated." msgstr "Hasło zostało zaktualizowane." -#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx:112 +#: apps/remix/app/components/general/teams/team-layout-billing-banner.tsx msgid "Your payment for teams is overdue. Please settle the payment to avoid any service disruptions." msgstr "Twoja płatność za zespoły jest przeterminowana. Proszę uregulować płatność, aby uniknąć zakłóceń w świadczeniu usług." -#: apps/remix/app/components/forms/profile.tsx:69 +#: apps/remix/app/components/forms/profile.tsx msgid "Your profile has been updated successfully." msgstr "Twój profil został pomyślnie zaktualizowany." -#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx:73 +#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx msgid "Your profile has been updated." msgstr "Twój profil został zaktualizowany." -#: apps/remix/app/components/forms/public-profile-form.tsx:80 +#: apps/remix/app/components/forms/public-profile-form.tsx msgid "Your public profile has been updated." msgstr "Profil publiczny został zaktualizowany." -#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx:27 +#: apps/remix/app/components/forms/2fa/recovery-code-list.tsx msgid "Your recovery code has been copied to your clipboard." msgstr "Twój kod odzyskiwania został skopiowany do schowka." -#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx:100 -#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx:173 +#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx +#: apps/remix/app/components/forms/2fa/enable-authenticator-app-dialog.tsx msgid "Your recovery codes are listed below. Please store them in a safe place." msgstr "Twoje kody odzyskiwania są wymienione poniżej. Proszę przechowywać je w bezpiecznym miejscu." -#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx:78 +#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.billing.tsx msgid "Your subscription is currently active." msgstr "Twoja subskrypcja jest aktualnie aktywna." -#: apps/remix/app/components/dialogs/team-create-dialog.tsx:88 +#: apps/remix/app/components/dialogs/team-create-dialog.tsx msgid "Your team has been created." msgstr "Twój zespół został utworzony." -#: packages/email/templates/team-delete.tsx:28 -#: packages/email/templates/team-delete.tsx:32 +#: packages/email/templates/team-delete.tsx +#: packages/email/templates/team-delete.tsx msgid "Your team has been deleted" msgstr "Twój zespół został usunięty" -#: apps/remix/app/components/dialogs/team-delete-dialog.tsx:71 +#: apps/remix/app/components/dialogs/team-delete-dialog.tsx msgid "Your team has been successfully deleted." msgstr "Twój zespół został pomyślnie usunięty." -#: apps/remix/app/components/forms/team-update-form.tsx:66 +#: apps/remix/app/components/forms/team-update-form.tsx msgid "Your team has been successfully updated." msgstr "Twój zespół został pomyślnie zaktualizowany." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:36 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template has been duplicated successfully." msgstr "Twój szablon został pomyślnie zduplikowany." -#: apps/remix/app/components/dialogs/template-delete-dialog.tsx:39 +#: apps/remix/app/components/dialogs/template-delete-dialog.tsx msgid "Your template has been successfully deleted." msgstr "Twój szablon został pomyślnie usunięty." -#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx:60 +#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Your template will be duplicated." msgstr "Twój szablon zostanie zduplikowany." -#: apps/remix/app/components/general/template/template-edit-form.tsx:207 +#: apps/remix/app/components/general/template/template-edit-form.tsx msgid "Your templates has been saved successfully." msgstr "Twoje szablony zostały pomyślnie zapisane." -#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx:116 +#: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx msgid "Your token has expired!" msgstr "Twój token wygasł!" -#: apps/remix/app/components/forms/token.tsx:273 +#: apps/remix/app/components/forms/token.tsx msgid "Your token was created successfully! Make sure to copy it because you won't be able to see it again!" msgstr "Twój token został pomyślnie utworzony! Upewnij się, że go skopiujesz, ponieważ nie będziesz mógł go zobaczyć ponownie!" -#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx:69 +#: apps/remix/app/routes/_authenticated+/settings+/tokens.tsx msgid "Your tokens will be shown here once you create them." msgstr "Twoje tokeny będą tutaj wyświetlane po ich utworzeniu." diff --git a/packages/trpc/server/document-router/router.ts b/packages/trpc/server/document-router/router.ts index 2d4643f49..1b11fe3b1 100644 --- a/packages/trpc/server/document-router/router.ts +++ b/packages/trpc/server/document-router/router.ts @@ -4,7 +4,6 @@ import { DateTime } from 'luxon'; import { getServerLimits } from '@documenso/ee/server-only/limits/server'; import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; -import { DOCUMENSO_ENCRYPTION_KEY } from '@documenso/lib/constants/crypto'; import { AppError, AppErrorCode } from '@documenso/lib/errors/app-error'; import { encryptSecondaryData } from '@documenso/lib/server-only/crypto/encrypt'; import { createDocumentData } from '@documenso/lib/server-only/document-data/create-document-data'; @@ -26,7 +25,6 @@ import { searchDocumentsWithKeyword } from '@documenso/lib/server-only/document/ import { sendDocument } from '@documenso/lib/server-only/document/send-document'; import { updateDocument } from '@documenso/lib/server-only/document/update-document'; import { getTeamById } from '@documenso/lib/server-only/team/get-team'; -import { symmetricEncrypt } from '@documenso/lib/universal/crypto'; import { getPresignPostUrl } from '@documenso/lib/universal/upload/server-actions'; import { authenticatedProcedure, procedure, router } from '../trpc'; @@ -55,7 +53,6 @@ import { ZMoveDocumentToTeamSchema, ZResendDocumentMutationSchema, ZSearchDocumentsMutationSchema, - ZSetPasswordForDocumentMutationSchema, ZSetSigningOrderForDocumentMutationSchema, ZSuccessResponseSchema, ZUpdateDocumentRequestSchema, @@ -444,35 +441,6 @@ export const documentRouter = router({ }); }), - /** - * @private - */ - setPasswordForDocument: authenticatedProcedure - .input(ZSetPasswordForDocumentMutationSchema) - .mutation(async ({ input, ctx }) => { - const { teamId } = ctx; - const { documentId, password } = input; - - const key = DOCUMENSO_ENCRYPTION_KEY; - - if (!key) { - throw new Error('Missing encryption key'); - } - - const securePassword = symmetricEncrypt({ - data: password, - key, - }); - - await upsertDocumentMeta({ - userId: ctx.user.id, - teamId, - documentId, - password: securePassword, - requestMetadata: ctx.metadata, - }); - }), - /** * @private * diff --git a/packages/ui/components/document/document-dialog.tsx b/packages/ui/components/document/document-dialog.tsx index c4388c190..5e039cbe4 100644 --- a/packages/ui/components/document/document-dialog.tsx +++ b/packages/ui/components/document/document-dialog.tsx @@ -6,7 +6,7 @@ import { X } from 'lucide-react'; import { cn } from '../../lib/utils'; import { Dialog, DialogOverlay, DialogPortal, DialogTrigger } from '../../primitives/dialog'; -import { LazyPDFViewerNoLoader } from '../../primitives/lazy-pdf-viewer'; +import PDFViewer from '../../primitives/pdf-viewer'; export type DocumentDialogProps = { trigger?: React.ReactNode; @@ -43,7 +43,7 @@ export default function DocumentDialog({ trigger, documentData, ...props }: Docu )} onClick={() => props.onOpenChange?.(false)} > - e.stopPropagation()} diff --git a/packages/ui/primitives/document-password-dialog.tsx b/packages/ui/primitives/document-password-dialog.tsx deleted file mode 100644 index 24c416baf..000000000 --- a/packages/ui/primitives/document-password-dialog.tsx +++ /dev/null @@ -1,107 +0,0 @@ -import { useEffect } from 'react'; - -import { zodResolver } from '@hookform/resolvers/zod'; -import { msg } from '@lingui/core/macro'; -import { useLingui } from '@lingui/react'; -import { Trans } from '@lingui/react/macro'; -import { useForm } from 'react-hook-form'; -import { z } from 'zod'; - -import { Button } from './button'; -import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from './dialog'; -import { Form, FormControl, FormField, FormItem, FormMessage } from './form/form'; -import { Input } from './input'; - -const ZPasswordDialogFormSchema = z.object({ - password: z.string(), -}); - -type TPasswordDialogFormSchema = z.infer; - -type PasswordDialogProps = { - open: boolean; - onOpenChange: (_open: boolean) => void; - defaultPassword?: string; - onPasswordSubmit?: (password: string) => void; - isError?: boolean; -}; - -export const PasswordDialog = ({ - open, - onOpenChange, - defaultPassword, - onPasswordSubmit, - isError, -}: PasswordDialogProps) => { - const { _ } = useLingui(); - - const form = useForm({ - defaultValues: { - password: defaultPassword ?? '', - }, - resolver: zodResolver(ZPasswordDialogFormSchema), - }); - - const onFormSubmit = ({ password }: TPasswordDialogFormSchema) => { - onPasswordSubmit?.(password); - }; - - useEffect(() => { - if (isError) { - form.setError('password', { - type: 'manual', - message: _(msg`The password you have entered is incorrect. Please try again.`), - }); - } - }, [form, isError]); - - return ( - - - - - Password Required - - - - - This document is password protected. Please enter the password to view the document. - - - - -
- -
- ( - - - - - - - - )} - /> - -
- -
-
-
- -
-
- ); -}; diff --git a/packages/ui/primitives/lazy-pdf-viewer.tsx b/packages/ui/primitives/lazy-pdf-viewer.tsx deleted file mode 100644 index 74ee72110..000000000 --- a/packages/ui/primitives/lazy-pdf-viewer.tsx +++ /dev/null @@ -1,31 +0,0 @@ -// Todo: (RR7) Not sure if this actually makes it client-only. -import { Suspense, lazy } from 'react'; - -import { Trans } from '@lingui/react/macro'; -import { Loader } from 'lucide-react'; -import { Await } from 'react-router'; - -const LoadingComponent = () => ( -
- -

- Loading document... -

-
-); - -export const LazyPDFViewerImport = lazy(async () => import('./pdf-viewer')); - -export const LazyPDFViewer = (props: React.ComponentProps) => ( - }> - - - - -); - -export const LazyPDFViewerNoLoader = (props: React.ComponentProps) => ( - - - -); diff --git a/packages/ui/primitives/pdf-viewer.tsx b/packages/ui/primitives/pdf-viewer.tsx index 8ebc94bff..bb19a4444 100644 --- a/packages/ui/primitives/pdf-viewer.tsx +++ b/packages/ui/primitives/pdf-viewer.tsx @@ -5,18 +5,15 @@ import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; import type { DocumentData } from '@prisma/client'; import { Loader } from 'lucide-react'; -import { type PDFDocumentProxy, PasswordResponses } from 'pdfjs-dist'; -import pdfWorker from 'pdfjs-dist/build/pdf.worker.min?url'; +import { type PDFDocumentProxy } from 'pdfjs-dist'; import { Document as PDFDocument, Page as PDFPage, pdfjs } from 'react-pdf'; import 'react-pdf/dist/esm/Page/AnnotationLayer.css'; import 'react-pdf/dist/esm/Page/TextLayer.css'; -import { match } from 'ts-pattern'; import { PDF_VIEWER_PAGE_SELECTOR } from '@documenso/lib/constants/pdf-viewer'; import { getFile } from '@documenso/lib/universal/upload/get-file'; import { cn } from '../lib/utils'; -import { PasswordDialog } from './document-password-dialog'; import { useToast } from './use-toast'; export type LoadedPDFDocument = PDFDocumentProxy; @@ -24,7 +21,10 @@ export type LoadedPDFDocument = PDFDocumentProxy; /** * This imports the worker from the `pdfjs-dist` package. */ -pdfjs.GlobalWorkerOptions.workerSrc = pdfWorker; +pdfjs.GlobalWorkerOptions.workerSrc = new URL( + 'pdfjs-dist/build/pdf.worker.min.js', + import.meta.url, +).toString(); export type OnPDFViewerPageClick = (_event: { pageNumber: number; @@ -49,8 +49,6 @@ const PDFLoader = () => ( export type PDFViewerProps = { className?: string; documentData: DocumentData; - password?: string | null; - onPasswordSubmit?: (password: string) => void | Promise; onDocumentLoad?: (_doc: LoadedPDFDocument) => void; onPageClick?: OnPDFViewerPageClick; [key: string]: unknown; @@ -59,8 +57,6 @@ export type PDFViewerProps = { export const PDFViewer = ({ className, documentData, - password: defaultPassword, - onPasswordSubmit, onDocumentLoad, onPageClick, ...props @@ -70,11 +66,7 @@ export const PDFViewer = ({ const $el = useRef(null); - const passwordCallbackRef = useRef<((password: string | null) => void) | null>(null); - const [isDocumentBytesLoading, setIsDocumentBytesLoading] = useState(false); - const [isPasswordModalOpen, setIsPasswordModalOpen] = useState(false); - const [isPasswordError, setIsPasswordError] = useState(false); const [documentBytes, setDocumentBytes] = useState(null); const [width, setWidth] = useState(0); @@ -190,21 +182,6 @@ export const PDFViewer = ({ className={cn('w-full overflow-hidden rounded', { 'h-[80vh] max-h-[60rem]': numPages === 0, })} - onPassword={(callback, reason) => { - // If the document already has a password, we don't need to ask for it again. - if (defaultPassword && reason !== PasswordResponses.INCORRECT_PASSWORD) { - callback(defaultPassword); - return; - } - - setIsPasswordModalOpen(true); - - passwordCallbackRef.current = callback; - - match(reason) - .with(PasswordResponses.NEED_PASSWORD, () => setIsPasswordError(false)) - .with(PasswordResponses.INCORRECT_PASSWORD, () => setIsPasswordError(true)); - }} onLoadSuccess={(d) => onDocumentLoaded(d)} // Uploading a invalid document causes an error which doesn't appear to be handled by the `error` prop. // Therefore we add some additional custom error handling. @@ -263,19 +240,6 @@ export const PDFViewer = ({
))} - - { - passwordCallbackRef.current?.(password); - - setIsPasswordModalOpen(false); - - void onPasswordSubmit?.(password); - }} - isError={isPasswordError} - /> )}
From ad520bb032d5ef04aa1f91efc9f2554fcce11b06 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Thu, 27 Feb 2025 14:08:59 +1100 Subject: [PATCH 31/61] fix: remove oauth from embeds --- .../embed/embed-authentication-required.tsx | 13 +++++++------ apps/remix/app/entry.client.tsx | 1 + apps/remix/app/root.tsx | 2 ++ apps/remix/package.json | 4 ++-- apps/remix/server/middleware.ts | 4 +++- package-lock.json | 17 +++++++++-------- packages/lib/package.json | 1 + 7 files changed, 25 insertions(+), 17 deletions(-) diff --git a/apps/remix/app/components/embed/embed-authentication-required.tsx b/apps/remix/app/components/embed/embed-authentication-required.tsx index d86256dce..db65e7a2f 100644 --- a/apps/remix/app/components/embed/embed-authentication-required.tsx +++ b/apps/remix/app/components/embed/embed-authentication-required.tsx @@ -16,9 +16,9 @@ export type EmbedAuthenticationRequiredProps = { export const EmbedAuthenticationRequired = ({ email, returnTo, - isGoogleSSOEnabled, - isOIDCSSOEnabled, - oidcProviderLabel, + // isGoogleSSOEnabled, + // isOIDCSSOEnabled, + // oidcProviderLabel, }: EmbedAuthenticationRequiredProps) => { return (
@@ -35,9 +35,10 @@ export const EmbedAuthenticationRequired = ({ ; diff --git a/apps/remix/package.json b/apps/remix/package.json index f5971dbc2..0bdf674b5 100644 --- a/apps/remix/package.json +++ b/apps/remix/package.json @@ -49,8 +49,8 @@ "luxon": "^3.4.0", "papaparse": "^5.4.1", "plausible-tracker": "^0.3.9", - "posthog-js": "^1.223.3", - "posthog-node": "^4.7.0", + "posthog-js": "^1.224.0", + "posthog-node": "^4.8.1", "react": "^18", "react-call": "^1.3.0", "react-dom": "^18", diff --git a/apps/remix/server/middleware.ts b/apps/remix/server/middleware.ts index b7fca6731..5fb194ec1 100644 --- a/apps/remix/server/middleware.ts +++ b/apps/remix/server/middleware.ts @@ -49,7 +49,9 @@ export const appMiddleware = async (c: Context, next: Next) => { if (pathname.startsWith('/t/')) { debug.log('Setting preferred team url cookie'); - setCookie(c, 'preferred-team-url', pathname.split('/')[2]); + setCookie(c, 'preferred-team-url', pathname.split('/')[2], { + sameSite: 'lax', + }); return; } diff --git a/package-lock.json b/package-lock.json index 1236eeaeb..58e67c573 100644 --- a/package-lock.json +++ b/package-lock.json @@ -131,8 +131,8 @@ "luxon": "^3.4.0", "papaparse": "^5.4.1", "plausible-tracker": "^0.3.9", - "posthog-js": "^1.223.3", - "posthog-node": "^4.7.0", + "posthog-js": "^1.224.0", + "posthog-node": "^4.8.1", "react": "^18", "react-call": "^1.3.0", "react-dom": "^18", @@ -902,9 +902,9 @@ } }, "apps/remix/node_modules/posthog-node": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-4.7.0.tgz", - "integrity": "sha512-RgdUKSW8MfMOkjUa8cYVqWndNjPePNuuxlGbrZC6z1WRBsVc6TdGl8caidmC10RW8mu/BOfmrGbP4cRTo2jARg==", + "version": "4.8.1", + "resolved": "https://registry.npmjs.org/posthog-node/-/posthog-node-4.8.1.tgz", + "integrity": "sha512-ApMEC1+DbctP/88+VhaCl8SRKpIoReibMf7Mb3rxw3yMthr1rKaM4opbHdZJ0buLhwS5zX8B2ckqLjpwpSjRPg==", "license": "MIT", "dependencies": { "axios": "^1.7.4" @@ -31060,9 +31060,9 @@ "license": "MIT" }, "node_modules/posthog-js": { - "version": "1.223.3", - "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.223.3.tgz", - "integrity": "sha512-ZQTc17M21IzkQmECJa2Xjont4tZrvIn252uGT3sTfmahTqZoW4j+kBj4eOJt9SNR6hOheFNkg7MSiI/rA6FaDA==", + "version": "1.224.0", + "resolved": "https://registry.npmjs.org/posthog-js/-/posthog-js-1.224.0.tgz", + "integrity": "sha512-JT1XQQeYs0CKb4lU2vujmeLTDLWc61I5lT7d6oG/H/cnCpXAqBi5rMuCFFeotHeMy3hqJ/Tpu3eAPFE2p5ErHA==", "license": "MIT", "dependencies": { "core-js": "^3.38.1", @@ -41567,6 +41567,7 @@ "pdf-lib": "^1.17.1", "pg": "^8.11.3", "playwright": "1.43.0", + "posthog-js": "^1.224.0", "react": "^18", "remeda": "^2.17.3", "sharp": "0.32.6", diff --git a/packages/lib/package.json b/packages/lib/package.json index 374a22226..8afe56c85 100644 --- a/packages/lib/package.json +++ b/packages/lib/package.json @@ -45,6 +45,7 @@ "pdf-lib": "^1.17.1", "pg": "^8.11.3", "playwright": "1.43.0", + "posthog-js": "^1.224.0", "react": "^18", "remeda": "^2.17.3", "sharp": "0.32.6", From 3dce814ab28328d6aa26bc040052950165e8985f Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Fri, 28 Feb 2025 09:04:25 +1100 Subject: [PATCH 32/61] fix: stripe price fetch (#1677) Currently Stripe prices search is omitting a price for an unknown reason. Changed our fetch logic to use `list` instead of `search` allows us to work around the issue. It's unknown on the performance impact of using `list` vs `search` --- packages/ee/server-only/stripe/get-prices-by-plan.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/packages/ee/server-only/stripe/get-prices-by-plan.ts b/packages/ee/server-only/stripe/get-prices-by-plan.ts index 45906d54a..52c9d1e5e 100644 --- a/packages/ee/server-only/stripe/get-prices-by-plan.ts +++ b/packages/ee/server-only/stripe/get-prices-by-plan.ts @@ -4,15 +4,14 @@ import { stripe } from '@documenso/lib/server-only/stripe'; type PlanType = (typeof STRIPE_PLAN_TYPE)[keyof typeof STRIPE_PLAN_TYPE]; export const getPricesByPlan = async (plan: PlanType | PlanType[]) => { - const planTypes = typeof plan === 'string' ? [plan] : plan; + const planTypes: string[] = typeof plan === 'string' ? [plan] : plan; - const query = planTypes.map((planType) => `metadata['plan']:'${planType}'`).join(' OR '); - - const { data: prices } = await stripe.prices.search({ - query, + const prices = await stripe.prices.list({ expand: ['data.product'], limit: 100, }); - return prices.filter((price) => price.type === 'recurring'); + return prices.data.filter( + (price) => price.type === 'recurring' && planTypes.includes(price.metadata.plan), + ); }; From d970976299fd93a94698493b5d845b8f6f8e3037 Mon Sep 17 00:00:00 2001 From: Mythie Date: Fri, 28 Feb 2025 10:11:08 +1100 Subject: [PATCH 33/61] fix: remove auto-expand in embeddding --- .../components/embed/embed-direct-template-client-page.tsx | 2 +- .../app/components/embed/embed-document-signing-page.tsx | 2 +- apps/remix/app/routes/embed+/direct.$url.tsx | 4 +++- apps/remix/app/routes/embed+/sign.$url.tsx | 4 +++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx index aece8cfac..718f2cb32 100644 --- a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx +++ b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx @@ -347,7 +347,7 @@ export const EmbedDirectTemplateClientPage = ({ {/* Widget */}
diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index 54d7cff84..ee8814ef5 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -287,7 +287,7 @@ export const EmbedSignDocumentClientPage = ({ {/* Widget */}
diff --git a/apps/remix/app/routes/embed+/direct.$url.tsx b/apps/remix/app/routes/embed+/direct.$url.tsx index f5ac53f8f..0b9b84c84 100644 --- a/apps/remix/app/routes/embed+/direct.$url.tsx +++ b/apps/remix/app/routes/embed+/direct.$url.tsx @@ -145,7 +145,9 @@ export default function EmbedDirectTemplatePage() { recipient={recipient} fields={fields} metadata={template.templateMeta} - hidePoweredBy={isPlatformDocument || isEnterpriseDocument || hidePoweredBy} + hidePoweredBy={ + isCommunityPlan || isPlatformDocument || isEnterpriseDocument || hidePoweredBy + } allowWhiteLabelling={isCommunityPlan || isPlatformDocument || isEnterpriseDocument} /> diff --git a/apps/remix/app/routes/embed+/sign.$url.tsx b/apps/remix/app/routes/embed+/sign.$url.tsx index ed242bf5a..bb874fc50 100644 --- a/apps/remix/app/routes/embed+/sign.$url.tsx +++ b/apps/remix/app/routes/embed+/sign.$url.tsx @@ -169,7 +169,9 @@ export default function EmbedSignDocumentPage() { fields={fields} metadata={document.documentMeta} isCompleted={document.status === DocumentStatus.COMPLETED} - hidePoweredBy={isPlatformDocument || isEnterpriseDocument || hidePoweredBy} + hidePoweredBy={ + isCommunityPlan || isPlatformDocument || isEnterpriseDocument || hidePoweredBy + } allowWhitelabelling={isCommunityPlan || isPlatformDocument || isEnterpriseDocument} allRecipients={allRecipients} /> From e79d76271034b2022283d800fdfeeacec84c9e76 Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Fri, 28 Feb 2025 12:09:38 +0200 Subject: [PATCH 34/61] chore: add label for checkbox and radio fields (#1607) --- .../document-signing-field-container.tsx | 17 ++++++++ .../primitives/document-flow/field-item.tsx | 40 +++++++++++++++++++ .../checkbox-field.tsx | 12 ++++++ .../radio-field.tsx | 16 ++++++++ 4 files changed, 85 insertions(+) diff --git a/apps/remix/app/components/general/document-signing/document-signing-field-container.tsx b/apps/remix/app/components/general/document-signing/document-signing-field-container.tsx index 148117b55..14fe95c44 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-field-container.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-field-container.tsx @@ -181,6 +181,23 @@ export const DocumentSigningFieldContainer = ({ )} + {(field.type === FieldType.RADIO || field.type === FieldType.CHECKBOX) && + field.fieldMeta?.label && ( +
+ {field.fieldMeta.label} +
+ )} + {children}
diff --git a/packages/ui/primitives/document-flow/field-item.tsx b/packages/ui/primitives/document-flow/field-item.tsx index 3682f84a2..e78cf7429 100644 --- a/packages/ui/primitives/document-flow/field-item.tsx +++ b/packages/ui/primitives/document-flow/field-item.tsx @@ -8,6 +8,7 @@ import { match } from 'ts-pattern'; import { PDF_VIEWER_PAGE_SELECTOR } from '@documenso/lib/constants/pdf-viewer'; import type { TFieldMetaSchema } from '@documenso/lib/types/field-meta'; import { ZCheckboxFieldMeta, ZRadioFieldMeta } from '@documenso/lib/types/field-meta'; +import { FieldType } from '@documenso/prisma/client'; import { useSignerColors } from '../../lib/signer-colors'; import { cn } from '../../lib/utils'; @@ -174,11 +175,35 @@ export const FieldItem = ({ () => hasFieldMetaValues('CHECKBOX', field.fieldMeta, ZCheckboxFieldMeta), [field.fieldMeta], ); + const radioHasValues = useMemo( () => hasFieldMetaValues('RADIO', field.fieldMeta, ZRadioFieldMeta), [field.fieldMeta], ); + const hasCheckedValues = (fieldMeta: TFieldMetaSchema, type: FieldType) => { + if (!fieldMeta || (type !== FieldType.RADIO && type !== FieldType.CHECKBOX)) { + return false; + } + + if (type === FieldType.RADIO) { + const parsed = ZRadioFieldMeta.parse(fieldMeta); + return parsed.values?.some((value) => value.checked) ?? false; + } + + if (type === FieldType.CHECKBOX) { + const parsed = ZCheckboxFieldMeta.parse(fieldMeta); + return parsed.values?.some((value) => value.checked) ?? false; + } + + return false; + }; + + const fieldHasCheckedValues = useMemo( + () => hasCheckedValues(field.fieldMeta, field.type), + [field.fieldMeta, field.type], + ); + const fixedSize = checkBoxHasValues || radioHasValues; return createPortal( @@ -218,6 +243,21 @@ export const FieldItem = ({ onMove?.(d.node); }} > + {(field.type === FieldType.RADIO || field.type === FieldType.CHECKBOX) && + field.fieldMeta?.label && ( +
+ {field.fieldMeta.label} +
+ )} +
+
+ + handleFieldChange('label', e.target.value)} + /> +
diff --git a/apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx b/apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx index dbc655a0d..ee0350576 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx @@ -3,6 +3,7 @@ import { useMemo, useState } from 'react'; import { Trans } from '@lingui/react/macro'; import type { Field } from '@prisma/client'; import { RecipientRole } from '@prisma/client'; +import { match } from 'ts-pattern'; import { fieldsContainUnsignedRequiredField } from '@documenso/lib/utils/advanced-fields-helpers'; import { Button } from '@documenso/ui/primitives/button'; @@ -58,62 +59,88 @@ export const DocumentSigningCompleteDialog = ({ loading={isSubmitting} disabled={disabled} > - {isComplete ? Complete : Next field} + {match({ isComplete, role }) + .with({ isComplete: false }, () => Next field) + .with({ isComplete: true, role: RecipientRole.APPROVER }, () => Approve) + .with({ isComplete: true, role: RecipientRole.VIEWER }, () => ( + Mark as viewed + )) + .with({ isComplete: true }, () => Complete) + .exhaustive()}
- {role === RecipientRole.VIEWER && Complete Viewing} - {role === RecipientRole.SIGNER && Complete Signing} - {role === RecipientRole.APPROVER && Complete Approval} + {match(role) + .with(RecipientRole.VIEWER, () => Complete Viewing) + .with(RecipientRole.SIGNER, () => Complete Signing) + .with(RecipientRole.APPROVER, () => Complete Approval) + .with(RecipientRole.CC, () => Complete Viewing) + .with(RecipientRole.ASSISTANT, () => Complete Assisting) + .exhaustive()}
- {role === RecipientRole.VIEWER && ( - - - - You are about to complete viewing " - - {documentTitle} + {match(role) + .with(RecipientRole.VIEWER, () => ( + + + + You are about to complete viewing " + + {documentTitle} + + ". - ". - -
Are you sure? -
-
- )} - {role === RecipientRole.SIGNER && ( - - - - You are about to complete signing " - - {documentTitle} +
Are you sure? +
+
+ )) + .with(RecipientRole.SIGNER, () => ( + + + + You are about to complete signing " + + {documentTitle} + + ". - ". - -
Are you sure? - - - )} - {role === RecipientRole.APPROVER && ( - - - - You are about to complete approving{' '} - - "{documentTitle}" +
Are you sure? +
+
+ )) + .with(RecipientRole.APPROVER, () => ( + + + + You are about to complete approving{' '} + + "{documentTitle}" + + . - . - -
Are you sure? - - - )} +
Are you sure? + + + )) + .otherwise(() => ( + + + + You are about to complete viewing " + + {documentTitle} + + ". + +
Are you sure? +
+
+ ))}
@@ -138,9 +165,13 @@ export const DocumentSigningCompleteDialog = ({ loading={isSubmitting} onClick={onSignatureComplete} > - {role === RecipientRole.VIEWER && Mark as Viewed} - {role === RecipientRole.SIGNER && Sign} - {role === RecipientRole.APPROVER && Approve} + {match(role) + .with(RecipientRole.VIEWER, () => Mark as Viewed) + .with(RecipientRole.SIGNER, () => Sign) + .with(RecipientRole.APPROVER, () => Approve) + .with(RecipientRole.CC, () => Mark as Viewed) + .with(RecipientRole.ASSISTANT, () => Complete) + .exhaustive()}
diff --git a/apps/remix/app/components/general/document-signing/document-signing-form.tsx b/apps/remix/app/components/general/document-signing/document-signing-form.tsx index ef6847c34..a293afac8 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-form.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-form.tsx @@ -313,7 +313,11 @@ export const DocumentSigningForm = ({ <>

- Please review the document before signing. + {recipient.role === RecipientRole.APPROVER && !hasSignatureField ? ( + Please review the document before approving. + ) : ( + Please review the document before signing. + )}


@@ -337,38 +341,40 @@ export const DocumentSigningForm = ({ />
-
- + {hasSignatureField && ( +
+ - - - { - setSignatureValid(isValid); - }} - onChange={(value) => { - if (signatureValid) { - setSignature(value); - } - }} - allowTypedSignature={document.documentMeta?.typedSignatureEnabled} - /> - - + + + { + setSignatureValid(isValid); + }} + onChange={(value) => { + if (signatureValid) { + setSignature(value); + } + }} + allowTypedSignature={document.documentMeta?.typedSignatureEnabled} + /> + + - {hasSignatureField && !signatureValid && ( -
- - Signature is too small. Please provide a more complete signature. - -
- )} -
+ {!signatureValid && ( +
+ + Signature is too small. Please provide a more complete signature. + +
+ )} +
+ )}
diff --git a/packages/app-tests/e2e/document-flow/stepper-component.spec.ts b/packages/app-tests/e2e/document-flow/stepper-component.spec.ts index 1dd03aa76..94bb5320f 100644 --- a/packages/app-tests/e2e/document-flow/stepper-component.spec.ts +++ b/packages/app-tests/e2e/document-flow/stepper-component.spec.ts @@ -377,7 +377,9 @@ test('[DOCUMENT_FLOW]: should be able to approve a document', async ({ page }) = await expect(page.locator(`#field-${field.id}`)).toHaveAttribute('data-inserted', 'true'); } - await page.getByRole('button', { name: 'Complete' }).click(); + await page + .getByRole('button', { name: role === RecipientRole.SIGNER ? 'Complete' : 'Approve' }) + .click(); await page .getByRole('button', { name: role === RecipientRole.SIGNER ? 'Sign' : 'Approve' }) .click(); @@ -447,7 +449,7 @@ test('[DOCUMENT_FLOW]: should be able to create, send with redirect url, sign a const { status } = await getDocumentByToken(token); expect(status).toBe(DocumentStatus.PENDING); - await page.getByRole('button', { name: 'Complete' }).click(); + await page.getByRole('button', { name: 'Approve' }).click(); await expect(page.getByRole('dialog').getByText('Complete Approval').first()).toBeVisible(); await page.getByRole('button', { name: 'Approve' }).click(); From 0df29fce36cc596041f32a2f3f3700f49b06a405 Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Thu, 6 Mar 2025 10:47:24 +0200 Subject: [PATCH 43/61] fix: invalid request body (#1686) Fix the invalid request body so the webhooks work again. --- packages/lib/server-only/webhooks/trigger/handler.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/lib/server-only/webhooks/trigger/handler.ts b/packages/lib/server-only/webhooks/trigger/handler.ts index 968f7ce5b..4889e54ed 100644 --- a/packages/lib/server-only/webhooks/trigger/handler.ts +++ b/packages/lib/server-only/webhooks/trigger/handler.ts @@ -21,14 +21,16 @@ export const handlerTriggerWebhooks = async (req: Request) => { return Response.json({ success: false, error: 'Missing signature' }, { status: 400 }); } - const valid = verify(req.body, signature); + const body = await req.json(); + + const valid = verify(body, signature); if (!valid) { console.log('Invalid signature'); return Response.json({ success: false, error: 'Invalid signature' }, { status: 400 }); } - const result = ZTriggerWebhookBodySchema.safeParse(req.body); + const result = ZTriggerWebhookBodySchema.safeParse(body); if (!result.success) { console.log('Invalid request body'); From 65be37514f29120d8f155b29ffcb05383d54b788 Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Fri, 7 Mar 2025 00:09:15 +0200 Subject: [PATCH 44/61] fix: prefill fields (#1689) Users can now selectively choose which properties to pre-fill for each field - from just a label to all available properties. --- .../template/create-document-from-template.ts | 14 ++++++++++-- packages/lib/types/field-meta.ts | 22 ++++++++++--------- 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/packages/lib/server-only/template/create-document-from-template.ts b/packages/lib/server-only/template/create-document-from-template.ts index 860f8cb98..477ebba0b 100644 --- a/packages/lib/server-only/template/create-document-from-template.ts +++ b/packages/lib/server-only/template/create-document-from-template.ts @@ -118,6 +118,7 @@ const getUpdatedFieldMeta = (field: Field, prefillField?: TFieldMetaPrefillField ...existingMeta, type: 'text', label: field.label, + placeholder: field.placeholder, text: field.value, }; @@ -134,6 +135,7 @@ const getUpdatedFieldMeta = (field: Field, prefillField?: TFieldMetaPrefillField ...existingMeta, type: 'number', label: field.label, + placeholder: field.placeholder, value: field.value, }; @@ -190,8 +192,16 @@ const getUpdatedFieldMeta = (field: Field, prefillField?: TFieldMetaPrefillField const checkboxMeta = result.data; + if (!field.value) { + throw new AppError(AppErrorCode.INVALID_BODY, { + message: `Value is required for CHECKBOX field ${field.id}`, + }); + } + + const fieldValue = field.value; + // Validate that all values exist in the options - for (const value of field.value) { + for (const value of fieldValue) { const valueExists = checkboxMeta.values?.some((option) => option.value === value); if (!valueExists) { @@ -203,7 +213,7 @@ const getUpdatedFieldMeta = (field: Field, prefillField?: TFieldMetaPrefillField const newValues = checkboxMeta.values?.map((option) => ({ ...option, - checked: field.value.includes(option.value), + checked: fieldValue.includes(option.value), })); const meta: TCheckboxFieldMeta = { diff --git a/packages/lib/types/field-meta.ts b/packages/lib/types/field-meta.ts index 89b58aaed..ee2d9172f 100644 --- a/packages/lib/types/field-meta.ts +++ b/packages/lib/types/field-meta.ts @@ -130,28 +130,30 @@ export const ZFieldMetaPrefillFieldsSchema = z z.discriminatedUnion('type', [ z.object({ type: z.literal('text'), - label: z.string(), - value: z.string(), + label: z.string().optional(), + placeholder: z.string().optional(), + value: z.string().optional(), }), z.object({ type: z.literal('number'), - label: z.string(), - value: z.string(), + label: z.string().optional(), + placeholder: z.string().optional(), + value: z.string().optional(), }), z.object({ type: z.literal('radio'), - label: z.string(), - value: z.string(), + label: z.string().optional(), + value: z.string().optional(), }), z.object({ type: z.literal('checkbox'), - label: z.string(), - value: z.array(z.string()), + label: z.string().optional(), + value: z.array(z.string()).optional(), }), z.object({ type: z.literal('dropdown'), - label: z.string(), - value: z.string(), + label: z.string().optional(), + value: z.string().optional(), }), ]), ); From b99053263355a3a84d6358e311ce4701af3e4c8d Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Sat, 8 Mar 2025 15:30:13 +1100 Subject: [PATCH 45/61] fix: remove refresh on focus --- apps/remix/app/components/general/refresh-on-focus.tsx | 3 +++ apps/remix/app/root.tsx | 3 --- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/apps/remix/app/components/general/refresh-on-focus.tsx b/apps/remix/app/components/general/refresh-on-focus.tsx index a86bc65b6..bf8f7a68a 100644 --- a/apps/remix/app/components/general/refresh-on-focus.tsx +++ b/apps/remix/app/components/general/refresh-on-focus.tsx @@ -2,6 +2,9 @@ import { useCallback, useEffect } from 'react'; import { useRevalidator } from 'react-router'; +/** + * Not really used anymore, this causes random 500s when the user refreshes while this occurs. + */ export const RefreshOnFocus = () => { const { revalidate, state } = useRevalidator(); diff --git a/apps/remix/app/root.tsx b/apps/remix/app/root.tsx index 8e72dee2d..c9a453622 100644 --- a/apps/remix/app/root.tsx +++ b/apps/remix/app/root.tsx @@ -27,7 +27,6 @@ import { TooltipProvider } from '@documenso/ui/primitives/tooltip'; import type { Route } from './+types/root'; import stylesheet from './app.css?url'; import { GenericErrorLayout } from './components/general/generic-error-layout'; -import { RefreshOnFocus } from './components/general/refresh-on-focus'; import { langCookie } from './storage/lang-cookie.server'; import { themeSessionResolver } from './storage/theme-session.server'; import { appMetaTags } from './utils/meta'; @@ -159,8 +158,6 @@ export function LayoutContent({ children }: { children: React.ReactNode }) { - - diff --git a/apps/documentation/pages/developers/embedding/vue.mdx b/apps/documentation/pages/developers/embedding/vue.mdx index 8051dbe35..dc68f979d 100644 --- a/apps/documentation/pages/developers/embedding/vue.mdx +++ b/apps/documentation/pages/developers/embedding/vue.mdx @@ -97,9 +97,9 @@ Platform customers have access to advanced styling options: } `; const cssVars = { - colorPrimary: '#0000FF', - colorBackground: '#F5F5F5', - borderRadius: '8px', + primary: '#0000FF', + background: '#F5F5F5', + radius: '8px', }; From 63d990ce8d1451f55509b90b0581d13363208b98 Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Sat, 8 Mar 2025 01:21:29 +0200 Subject: [PATCH 47/61] fix: optional fields in embeds (#1691) --- .../embed-direct-template-client-page.tsx | 36 +++++++++---------- .../embed/embed-document-signing-page.tsx | 16 ++++++--- .../direct-template-signing-form.tsx | 6 ++-- .../create-document-from-direct-template.ts | 28 ++++++++++++--- packages/lib/translations/de/web.po | 17 +++++++++ packages/lib/translations/en/web.po | 17 +++++++++ packages/lib/translations/es/web.po | 17 +++++++++ packages/lib/translations/fr/web.po | 17 +++++++++ packages/lib/translations/it/web.po | 17 +++++++++ packages/lib/translations/pl/web.po | 17 +++++++++ packages/trpc/server/field-router/router.ts | 2 +- packages/trpc/server/field-router/schema.ts | 2 +- 12 files changed, 159 insertions(+), 33 deletions(-) diff --git a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx index 2f2a47058..c88813e1f 100644 --- a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx +++ b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx @@ -13,6 +13,10 @@ import { useThrottleFn } from '@documenso/lib/client-only/hooks/use-throttle-fn' import { DEFAULT_DOCUMENT_DATE_FORMAT } from '@documenso/lib/constants/date-formats'; import { PDF_VIEWER_PAGE_SELECTOR } from '@documenso/lib/constants/pdf-viewer'; import { DEFAULT_DOCUMENT_TIME_ZONE } from '@documenso/lib/constants/time-zones'; +import { + isFieldUnsignedAndRequired, + isRequiredField, +} from '@documenso/lib/utils/advanced-fields-helpers'; import { validateFieldsInserted } from '@documenso/lib/utils/fields'; import { trpc } from '@documenso/trpc/react'; import type { @@ -92,7 +96,7 @@ export const EmbedDirectTemplateClientPage = ({ const [localFields, setLocalFields] = useState(() => fields); const [pendingFields, _completedFields] = [ - localFields.filter((field) => !field.inserted), + localFields.filter((field) => isFieldUnsignedAndRequired(field)), localFields.filter((field) => field.inserted), ]; @@ -110,7 +114,7 @@ export const EmbedDirectTemplateClientPage = ({ const newField: DirectTemplateLocalField = structuredClone({ ...field, - customText: payload.value, + customText: payload.value ?? '', inserted: true, signedValue: payload, }); @@ -121,8 +125,10 @@ export const EmbedDirectTemplateClientPage = ({ created: new Date(), recipientId: 1, fieldId: 1, - signatureImageAsBase64: payload.value.startsWith('data:') ? payload.value : null, - typedSignature: payload.value.startsWith('data:') ? null : payload.value, + signatureImageAsBase64: + payload.value && payload.value.startsWith('data:') ? payload.value : null, + typedSignature: + payload.value && !payload.value.startsWith('data:') ? payload.value : null, } satisfies Signature; } @@ -180,7 +186,7 @@ export const EmbedDirectTemplateClientPage = ({ }; const onNextFieldClick = () => { - validateFieldsInserted(localFields); + validateFieldsInserted(pendingFields); setShowPendingFieldTooltip(true); setIsExpanded(false); @@ -192,7 +198,7 @@ export const EmbedDirectTemplateClientPage = ({ return; } - const valid = validateFieldsInserted(localFields); + const valid = validateFieldsInserted(pendingFields); if (!valid) { setShowPendingFieldTooltip(true); @@ -205,12 +211,6 @@ export const EmbedDirectTemplateClientPage = ({ directTemplateExternalId = decodeURIComponent(directTemplateExternalId); } - localFields.forEach((field) => { - if (!field.signedValue) { - throw new Error('Invalid configuration'); - } - }); - const { documentId, token: documentToken, @@ -221,13 +221,11 @@ export const EmbedDirectTemplateClientPage = ({ directRecipientName: fullName, directRecipientEmail: email, templateUpdatedAt: updatedAt, - signedFieldValues: localFields.map((field) => { - if (!field.signedValue) { - throw new Error('Invalid configuration'); - } - - return field.signedValue; - }), + signedFieldValues: localFields + .filter((field) => { + return field.signedValue && (isRequiredField(field) || field.inserted); + }) + .map((field) => field.signedValue!), }); if (window.parent) { diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index 05b48fbb1..5361ded5e 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1,4 +1,4 @@ -import { useEffect, useId, useLayoutEffect, useState } from 'react'; +import { useEffect, useId, useLayoutEffect, useMemo, useState } from 'react'; import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; @@ -15,6 +15,7 @@ import { LucideChevronDown, LucideChevronUp } from 'lucide-react'; import { useThrottleFn } from '@documenso/lib/client-only/hooks/use-throttle-fn'; import { PDF_VIEWER_PAGE_SELECTOR } from '@documenso/lib/constants/pdf-viewer'; +import { isFieldUnsignedAndRequired } from '@documenso/lib/utils/advanced-fields-helpers'; import { validateFieldsInserted } from '@documenso/lib/utils/fields'; import type { RecipientWithFields } from '@documenso/prisma/types/recipient-with-fields'; import { trpc } from '@documenso/trpc/react'; @@ -101,19 +102,26 @@ export const EmbedSignDocumentClientPage = ({ const [throttledOnCompleteClick, isThrottled] = useThrottleFn(() => void onCompleteClick(), 500); const [pendingFields, _completedFields] = [ - fields.filter((field) => field.recipientId === recipient.id && !field.inserted), + fields.filter( + (field) => field.recipientId === recipient.id && isFieldUnsignedAndRequired(field), + ), fields.filter((field) => field.inserted), ]; const { mutateAsync: completeDocumentWithToken, isPending: isSubmitting } = trpc.recipient.completeDocumentWithToken.useMutation(); + const fieldsRequiringValidation = useMemo( + () => fields.filter(isFieldUnsignedAndRequired), + [fields], + ); + const hasSignatureField = fields.some((field) => field.type === FieldType.SIGNATURE); const assistantSignersId = useId(); const onNextFieldClick = () => { - validateFieldsInserted(fields); + validateFieldsInserted(fieldsRequiringValidation); setShowPendingFieldTooltip(true); setIsExpanded(false); @@ -125,7 +133,7 @@ export const EmbedSignDocumentClientPage = ({ return; } - const valid = validateFieldsInserted(fields); + const valid = validateFieldsInserted(fieldsRequiringValidation); if (!valid) { setShowPendingFieldTooltip(true); diff --git a/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx b/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx index 5483e051d..9bbcf09a7 100644 --- a/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +++ b/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx @@ -91,7 +91,7 @@ export const DirectTemplateSigningForm = ({ const tempField: DirectTemplateLocalField = { ...field, - customText: value.value, + customText: value.value ?? '', inserted: true, signedValue: value, }; @@ -102,8 +102,8 @@ export const DirectTemplateSigningForm = ({ created: new Date(), recipientId: 1, fieldId: 1, - signatureImageAsBase64: value.value.startsWith('data:') ? value.value : null, - typedSignature: value.value.startsWith('data:') ? null : value.value, + signatureImageAsBase64: value.value?.startsWith('data:') ? value.value : null, + typedSignature: value.value && !value.value.startsWith('data:') ? value.value : null, } satisfies Signature; } diff --git a/packages/lib/server-only/template/create-document-from-direct-template.ts b/packages/lib/server-only/template/create-document-from-direct-template.ts index cfc2efb75..965bc6583 100644 --- a/packages/lib/server-only/template/create-document-from-direct-template.ts +++ b/packages/lib/server-only/template/create-document-from-direct-template.ts @@ -37,6 +37,7 @@ import { mapDocumentToWebhookDocumentPayload, } from '../../types/webhook-payload'; import type { ApiRequestMetadata } from '../../universal/extract-request-metadata'; +import { isRequiredField } from '../../utils/advanced-fields-helpers'; import type { CreateDocumentAuditLogDataResponse } from '../../utils/document-audit-logs'; import { createDocumentAuditLogData } from '../../utils/document-audit-logs'; import { @@ -176,20 +177,28 @@ export const createDocumentFromDirectTemplate = async ({ const metaSigningOrder = template.templateMeta?.signingOrder || DocumentSigningOrder.PARALLEL; // Associate, validate and map to a query every direct template recipient field with the provided fields. + // Only process fields that are either required or have been signed by the user + const fieldsToProcess = directTemplateRecipient.fields.filter((templateField) => { + const signedFieldValue = signedFieldValues.find((value) => value.fieldId === templateField.id); + + // Include if it's required or has a signed value + return isRequiredField(templateField) || signedFieldValue !== undefined; + }); + const createDirectRecipientFieldArgs = await Promise.all( - directTemplateRecipient.fields.map(async (templateField) => { + fieldsToProcess.map(async (templateField) => { const signedFieldValue = signedFieldValues.find( (value) => value.fieldId === templateField.id, ); - if (!signedFieldValue) { + if (isRequiredField(templateField) && !signedFieldValue) { throw new AppError(AppErrorCode.INVALID_BODY, { message: 'Invalid, missing or changed fields', }); } if (templateField.type === FieldType.NAME && directRecipientName === undefined) { - directRecipientName === signedFieldValue.value; + directRecipientName === signedFieldValue?.value; } const derivedRecipientActionAuth = await validateFieldAuth({ @@ -200,9 +209,18 @@ export const createDocumentFromDirectTemplate = async ({ }, field: templateField, userId: user?.id, - authOptions: signedFieldValue.authOptions, + authOptions: signedFieldValue?.authOptions, }); + if (!signedFieldValue) { + return { + templateField, + customText: '', + derivedRecipientActionAuth, + signature: null, + }; + } + const { value, isBase64 } = signedFieldValue; const isSignatureField = @@ -380,7 +398,7 @@ export const createDocumentFromDirectTemplate = async ({ positionY: templateField.positionY, width: templateField.width, height: templateField.height, - customText, + customText: customText ?? '', inserted: true, fieldMeta: templateField.fieldMeta || Prisma.JsonNull, })), diff --git a/packages/lib/translations/de/web.po b/packages/lib/translations/de/web.po index 28bfd50bf..8f0961af1 100644 --- a/packages/lib/translations/de/web.po +++ b/packages/lib/translations/de/web.po @@ -473,6 +473,7 @@ msgstr "<0>Sie sind dabei, die Genehmigung von <1>\"{documentTitle}\" abzusc msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Sie sind dabei, die Unterzeichnung von \"<1>{documentTitle}\" abzuschließen.<2/> Sind Sie sicher?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Sie sind dabei, die Ansicht von \"<1>{documentTitle}\" abzuschließen.<2/> Sind Sie sicher?" @@ -1144,6 +1145,7 @@ msgstr "App-Version" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1565,6 +1567,7 @@ msgstr "Klicken, um das Feld auszufüllen" msgid "Close" msgstr "Schließen" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1576,6 +1579,10 @@ msgstr "Abschließen" msgid "Complete Approval" msgstr "Genehmigung abschließen" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" @@ -1588,6 +1595,7 @@ msgstr "Unterzeichnung abschließen" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Betrachten abschließen" @@ -3373,6 +3381,11 @@ msgstr "Verwalten Sie hier Ihre Seiteneinstellungen" msgid "Manager" msgstr "Manager" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Als angesehen markieren" @@ -3988,6 +4001,10 @@ msgstr "Bitte geben Sie ein Token von der Authentifizierungs-App oder einen Back msgid "Please provide a token from your authenticator, or a backup code." msgstr "Bitte geben Sie ein Token von Ihrem Authentifizierer oder einen Backup-Code an." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "" + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Bitte überprüfen Sie das Dokument vor der Unterzeichnung." diff --git a/packages/lib/translations/en/web.po b/packages/lib/translations/en/web.po index f1fd481ce..97a33b80a 100644 --- a/packages/lib/translations/en/web.po +++ b/packages/lib/translations/en/web.po @@ -468,6 +468,7 @@ msgstr "<0>You are about to complete approving <1>\"{documentTitle}\".<2 msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" @@ -1139,6 +1140,7 @@ msgstr "App Version" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1560,6 +1562,7 @@ msgstr "Click to insert field" msgid "Close" msgstr "Close" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1571,6 +1574,10 @@ msgstr "Complete" msgid "Complete Approval" msgstr "Complete Approval" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "Complete Assisting" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "Complete Document" @@ -1583,6 +1590,7 @@ msgstr "Complete Signing" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Complete Viewing" @@ -3368,6 +3376,11 @@ msgstr "Manage your site settings here" msgid "Manager" msgstr "Manager" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "Mark as viewed" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Mark as Viewed" @@ -3983,6 +3996,10 @@ msgstr "Please provide a token from the authenticator, or a backup code. If you msgid "Please provide a token from your authenticator, or a backup code." msgstr "Please provide a token from your authenticator, or a backup code." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "Please review the document before approving." + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Please review the document before signing." diff --git a/packages/lib/translations/es/web.po b/packages/lib/translations/es/web.po index a1d27c0f2..91c795f37 100644 --- a/packages/lib/translations/es/web.po +++ b/packages/lib/translations/es/web.po @@ -473,6 +473,7 @@ msgstr "<0>Está a punto de completar la aprobación de <1>\"{documentTitle}\"You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Está a punto de completar la firma de \"<1>{documentTitle}\".<2/> ¿Está seguro?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Está a punto de completar la visualización de \"<1>{documentTitle}\".<2/> ¿Está seguro?" @@ -1144,6 +1145,7 @@ msgstr "Versión de la Aplicación" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1565,6 +1567,7 @@ msgstr "Haga clic para insertar campo" msgid "Close" msgstr "Cerrar" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1576,6 +1579,10 @@ msgstr "Completo" msgid "Complete Approval" msgstr "Completar Aprobación" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" @@ -1588,6 +1595,7 @@ msgstr "Completar Firmado" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Completar Visualización" @@ -3373,6 +3381,11 @@ msgstr "Gestionar la configuración de tu sitio aquí" msgid "Manager" msgstr "Gerente" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Marcar como visto" @@ -3988,6 +4001,10 @@ msgstr "Por favor, proporciona un token del autenticador o un código de respald msgid "Please provide a token from your authenticator, or a backup code." msgstr "Por favor, proporciona un token de tu autenticador, o un código de respaldo." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "" + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Por favor, revise el documento antes de firmar." diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index f218e9f44..2d96104f7 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -473,6 +473,7 @@ msgstr "<0>Vous êtes sur le point de terminer l'approbation de <1>\"{documentTi msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Vous êtes sur le point de terminer la signature de \"<1>{documentTitle}\".<2/> Êtes-vous sûr ?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Vous êtes sur le point de terminer la visualisation de \"<1>{documentTitle}\".<2/> Êtes-vous sûr ?" @@ -1144,6 +1145,7 @@ msgstr "Version de l'application" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1565,6 +1567,7 @@ msgstr "Cliquez pour insérer un champ" msgid "Close" msgstr "Fermer" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1576,6 +1579,10 @@ msgstr "Compléter" msgid "Complete Approval" msgstr "Compléter l'approbation" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" @@ -1588,6 +1595,7 @@ msgstr "Compléter la signature" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Compléter la visualisation" @@ -3373,6 +3381,11 @@ msgstr "Gérer les paramètres de votre site ici" msgid "Manager" msgstr "Gestionnaire" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Marquer comme vu" @@ -3988,6 +4001,10 @@ msgstr "Veuillez fournir un token de l'authentificateur, ou un code de secours. msgid "Please provide a token from your authenticator, or a backup code." msgstr "Veuillez fournir un token de votre authentificateur, ou un code de secours." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "" + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Veuillez examiner le document avant de signer." diff --git a/packages/lib/translations/it/web.po b/packages/lib/translations/it/web.po index 621505b89..ec1f01975 100644 --- a/packages/lib/translations/it/web.po +++ b/packages/lib/translations/it/web.po @@ -473,6 +473,7 @@ msgstr "<0>Stai per completare l'approvazione di <1>\"{documentTitle}\". msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Stai per completare la firma di \"<1>{documentTitle}\".<2/> Sei sicuro?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Stai per completare la visualizzazione di \"<1>{documentTitle}\".<2/> Sei sicuro?" @@ -1144,6 +1145,7 @@ msgstr "Versione dell'app" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1565,6 +1567,7 @@ msgstr "Clicca per inserire il campo" msgid "Close" msgstr "Chiudi" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1576,6 +1579,10 @@ msgstr "Completa" msgid "Complete Approval" msgstr "Completa l'Approvazione" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" @@ -1588,6 +1595,7 @@ msgstr "Completa la Firma" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Completa la Visualizzazione" @@ -3373,6 +3381,11 @@ msgstr "Gestisci le impostazioni del tuo sito qui" msgid "Manager" msgstr "Responsabile" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Segna come visto" @@ -3988,6 +4001,10 @@ msgstr "Si prega di fornire un token dal tuo autenticatore, o un codice di backu msgid "Please provide a token from your authenticator, or a backup code." msgstr "Si prega di fornire un token dal tuo autenticatore, o un codice di backup." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "" + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Rivedi il documento prima di firmare." diff --git a/packages/lib/translations/pl/web.po b/packages/lib/translations/pl/web.po index c1c2c25b7..b79d85c43 100644 --- a/packages/lib/translations/pl/web.po +++ b/packages/lib/translations/pl/web.po @@ -473,6 +473,7 @@ msgstr "<0>Jesteś na drodze do zatwierdzenia <1>\"{documentTitle}\".<2/ msgid "<0>You are about to complete signing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Jesteś na drodze do ukończenia podpisywania \"<1>{documentTitle}\".<2/> Czy jesteś pewien?" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "<0>You are about to complete viewing \"<1>{documentTitle}\".<2/> Are you sure?" msgstr "<0>Jesteś na drodze do zakończenia przeglądania \"<1>{documentTitle}\".<2/> Czy jesteś pewien?" @@ -1144,6 +1145,7 @@ msgstr "Wersja aplikacji" #: apps/remix/app/components/tables/documents-table-action-dropdown.tsx #: apps/remix/app/components/tables/documents-table-action-button.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document/document-page-view-button.tsx #: packages/lib/constants/recipient-roles.ts msgid "Approve" @@ -1565,6 +1567,7 @@ msgstr "Kliknij, aby wstawić pole" msgid "Close" msgstr "Zamknij" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/forms/signup.tsx #: apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -1576,6 +1579,10 @@ msgstr "Zakończono" msgid "Complete Approval" msgstr "Zakończ zatwierdzanie" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Complete Assisting" +msgstr "" + #: apps/remix/app/components/dialogs/assistant-confirmation-dialog.tsx msgid "Complete Document" msgstr "" @@ -1588,6 +1595,7 @@ msgstr "Zakończ podpisywanie" msgid "Complete the fields for the following signers. Once reviewed, they will inform you if any modifications are needed." msgstr "" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Complete Viewing" msgstr "Zakończ wyświetlanie" @@ -3373,6 +3381,11 @@ msgstr "Zarządzaj ustawieniami swojej witryny tutaj" msgid "Manager" msgstr "Menedżer" +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx +msgid "Mark as viewed" +msgstr "" + +#: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx #: apps/remix/app/components/general/document-signing/document-signing-complete-dialog.tsx msgid "Mark as Viewed" msgstr "Oznacz jako wyświetlone" @@ -3988,6 +4001,10 @@ msgstr "Proszę podać token z aplikacji uwierzytelniającej lub kod zapasowy. J msgid "Please provide a token from your authenticator, or a backup code." msgstr "Proszę podać token z Twojego uwierzytelniacza lub kod zapasowy." +#: apps/remix/app/components/general/document-signing/document-signing-form.tsx +msgid "Please review the document before approving." +msgstr "" + #: apps/remix/app/components/general/document-signing/document-signing-form.tsx msgid "Please review the document before signing." msgstr "Proszę przejrzeć dokument przed podpisaniem." diff --git a/packages/trpc/server/field-router/router.ts b/packages/trpc/server/field-router/router.ts index f8afecf5c..236afc360 100644 --- a/packages/trpc/server/field-router/router.ts +++ b/packages/trpc/server/field-router/router.ts @@ -451,7 +451,7 @@ export const fieldRouter = router({ return await signFieldWithToken({ token, fieldId, - value, + value: value ?? '', isBase64, userId: ctx.user?.id, authOptions, diff --git a/packages/trpc/server/field-router/schema.ts b/packages/trpc/server/field-router/schema.ts index 1f1dfe7e3..fcb26e0f2 100644 --- a/packages/trpc/server/field-router/schema.ts +++ b/packages/trpc/server/field-router/schema.ts @@ -153,7 +153,7 @@ export const ZSetFieldsForTemplateResponseSchema = z.object({ export const ZSignFieldWithTokenMutationSchema = z.object({ token: z.string(), fieldId: z.number(), - value: z.string().trim(), + value: z.string().trim().optional(), isBase64: z.boolean().optional(), authOptions: ZRecipientActionAuthSchema.optional(), }); From c646afcd97203cdd1e95638178d1614419368d49 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Sun, 9 Mar 2025 15:10:19 +1100 Subject: [PATCH 48/61] fix: tests --- apps/remix/app/routes/_profile+/_layout.tsx | 9 +++++++-- apps/remix/app/routes/_recipient+/_layout.tsx | 9 +++++++-- .../app-tests/e2e/api/v1/template-field-prefill.spec.ts | 4 +++- .../app-tests/e2e/api/v2/template-field-prefill.spec.ts | 4 +++- 4 files changed, 20 insertions(+), 6 deletions(-) diff --git a/apps/remix/app/routes/_profile+/_layout.tsx b/apps/remix/app/routes/_profile+/_layout.tsx index bc0cc871a..7025fefec 100644 --- a/apps/remix/app/routes/_profile+/_layout.tsx +++ b/apps/remix/app/routes/_profile+/_layout.tsx @@ -4,7 +4,7 @@ import { msg } from '@lingui/core/macro'; import { Trans } from '@lingui/react/macro'; import { PlusIcon } from 'lucide-react'; import { ChevronLeft } from 'lucide-react'; -import { Link, Outlet } from 'react-router'; +import { Link, Outlet, isRouteErrorResponse } from 'react-router'; import LogoIcon from '@documenso/assets/logo_icon.png'; import { useOptionalSession } from '@documenso/lib/client-only/providers/session'; @@ -16,6 +16,8 @@ import { BrandingLogo } from '~/components/general/branding-logo'; import { GenericErrorLayout } from '~/components/general/generic-error-layout'; import { appMetaTags } from '~/utils/meta'; +import type { Route } from './+types/_layout'; + export function meta() { return appMetaTags('Profile'); } @@ -96,7 +98,9 @@ export default function PublicProfileLayout() { ); } -export function ErrorBoundary() { +export function ErrorBoundary({ error }: Route.ErrorBoundaryProps) { + const errorCode = isRouteErrorResponse(error) ? error.status : 500; + const errorCodeMap = { 404: { subHeading: msg`404 Profile not found`, @@ -107,6 +111,7 @@ export function ErrorBoundary() { return ( diff --git a/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts b/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts index c0de8a7c1..e95bb1556 100644 --- a/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts +++ b/packages/app-tests/e2e/api/v1/template-field-prefill.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from '@playwright/test'; -import { WEBAPP_BASE_URL } from '@documenso/lib/constants/app'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token'; import type { TCheckboxFieldMeta, TRadioFieldMeta } from '@documenso/lib/types/field-meta'; import { prisma } from '@documenso/prisma'; @@ -10,6 +10,8 @@ import { seedUser } from '@documenso/prisma/seed/users'; import { apiSignin } from '../../fixtures/authentication'; +const WEBAPP_BASE_URL = NEXT_PUBLIC_WEBAPP_URL(); + test.describe('Template Field Prefill API v1', () => { test('should create a document from template with prefilled fields', async ({ page, diff --git a/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts b/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts index 812c86f97..ee0053c01 100644 --- a/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts +++ b/packages/app-tests/e2e/api/v2/template-field-prefill.spec.ts @@ -1,6 +1,6 @@ import { expect, test } from '@playwright/test'; -import { WEBAPP_BASE_URL } from '@documenso/lib/constants/app'; +import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app'; import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token'; import type { TCheckboxFieldMeta, TRadioFieldMeta } from '@documenso/lib/types/field-meta'; import { prisma } from '@documenso/prisma'; @@ -10,6 +10,8 @@ import { seedUser } from '@documenso/prisma/seed/users'; import { apiSignin } from '../../fixtures/authentication'; +const WEBAPP_BASE_URL = NEXT_PUBLIC_WEBAPP_URL(); + test.describe('Template Field Prefill API v2', () => { test('should create a document from template with prefilled fields', async ({ page, From fec078081b765e0ebba35d656de89c5de312a071 Mon Sep 17 00:00:00 2001 From: Ephraim Duncan <55143799+ephraimduncan@users.noreply.github.com> Date: Wed, 12 Mar 2025 05:05:45 +0000 Subject: [PATCH 49/61] fix: correct signer deletion (#1596) --- packages/ui/primitives/document-flow/add-signers.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/ui/primitives/document-flow/add-signers.tsx b/packages/ui/primitives/document-flow/add-signers.tsx index ce86cff42..72b1f0b5b 100644 --- a/packages/ui/primitives/document-flow/add-signers.tsx +++ b/packages/ui/primitives/document-flow/add-signers.tsx @@ -201,10 +201,12 @@ export const AddSignersFormPartial = ({ return; } - removeSigner(index); - - const updatedSigners = signers.filter((_, idx) => idx !== index); - form.setValue('signers', normalizeSigningOrders(updatedSigners)); + const formStateIndex = form.getValues('signers').findIndex((s) => s.formId === signer.formId); + if (formStateIndex !== -1) { + removeSigner(formStateIndex); + const updatedSigners = form.getValues('signers').filter((s) => s.formId !== signer.formId); + form.setValue('signers', normalizeSigningOrders(updatedSigners)); + } }; const onAddSelfSigner = () => { From 8d6bf91d12f295bd0f6b4461c7c8a971a56a5f95 Mon Sep 17 00:00:00 2001 From: Ephraim Duncan <55143799+ephraimduncan@users.noreply.github.com> Date: Wed, 12 Mar 2025 05:09:37 +0000 Subject: [PATCH 50/61] fix: persist theme cookie for a much longer time (#1693) --- apps/remix/app/storage/theme-session.server.ts | 1 + package-lock.json | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/apps/remix/app/storage/theme-session.server.ts b/apps/remix/app/storage/theme-session.server.ts index f98200706..193b8fecd 100644 --- a/apps/remix/app/storage/theme-session.server.ts +++ b/apps/remix/app/storage/theme-session.server.ts @@ -12,6 +12,7 @@ const themeSessionStorage = createCookieSessionStorage({ secrets: ['insecure-secret-do-not-care'], secure: useSecureCookies, domain: getCookieDomain(), + maxAge: 60 * 60 * 24 * 365, }, }); diff --git a/package-lock.json b/package-lock.json index b69e388bc..58e67c573 100644 --- a/package-lock.json +++ b/package-lock.json @@ -42172,4 +42172,4 @@ } } } -} \ No newline at end of file +} From 7214965c0c2b934fd972a76b5b9ea6ed562f76cc Mon Sep 17 00:00:00 2001 From: Tom <64775524+tom-rh@users.noreply.github.com> Date: Wed, 12 Mar 2025 06:16:44 +0100 Subject: [PATCH 51/61] chore: update French translations (#1679) --- packages/lib/translations/fr/web.po | 82 ++++++++++++++--------------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/packages/lib/translations/fr/web.po b/packages/lib/translations/fr/web.po index 2d96104f7..f2d810409 100644 --- a/packages/lib/translations/fr/web.po +++ b/packages/lib/translations/fr/web.po @@ -417,7 +417,7 @@ msgstr "<0>{teamName} a demandé à utiliser votre adresse e-mail pour leur #: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "<0>Click to upload or drag and drop" -msgstr "<0>Cliquez pour télécharger ou faites glisser et déposez" +msgstr "<0>Cliquez pour importer ou faites glisser et déposez" #: packages/ui/primitives/template-flow/add-template-settings.tsx msgid "<0>Email - The recipient will be emailed the document to sign, approve, etc." @@ -1082,7 +1082,7 @@ msgstr "Une erreur est survenue lors de la mise à jour de votre profil." #: apps/remix/app/components/general/document/document-upload.tsx msgid "An error occurred while uploading your document." -msgstr "Une erreur est survenue lors du téléchargement de votre document." +msgstr "Une erreur est survenue lors de l'importation de votre document." #: apps/remix/app/components/general/generic-error-layout.tsx msgid "An unexpected error occurred." @@ -1539,7 +1539,7 @@ msgstr "Cliquez ici pour réessayer" #: apps/remix/app/components/dialogs/team-member-invite-dialog.tsx msgid "Click here to upload" -msgstr "Cliquez ici pour télécharger" +msgstr "Cliquez ici pour importer" #: apps/remix/app/components/general/avatar-with-recipient.tsx #: apps/remix/app/components/general/avatar-with-recipient.tsx @@ -1727,11 +1727,11 @@ msgstr "Continuer vers la connexion" #: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default language of an uploaded document. This will be used as the language in email communications with the recipients." -msgstr "Contrôle la langue par défaut d'un document téléchargé. Cela sera utilisé comme langue dans les communications par e-mail avec les destinataires." +msgstr "Contrôle la langue par défaut d'un document importé. Cela sera utilisé comme langue dans les communications par e-mail avec les destinataires." #: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the default visibility of an uploaded document." -msgstr "Contrôle la visibilité par défaut d'un document téléchargé." +msgstr "Contrôle la visibilité par défaut d'un document importé." #: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Controls the formatting of the message that will be sent when inviting a recipient to sign a document. If a custom message has been provided while configuring the document, it will be used instead." @@ -2394,11 +2394,11 @@ msgstr "Document mis à jour" #: apps/remix/app/components/general/document/document-upload.tsx msgid "Document upload disabled due to unpaid invoices" -msgstr "Téléchargement du document désactivé en raison de factures impayées" +msgstr "Importation de documents désactivé en raison de factures impayées" #: apps/remix/app/components/general/document/document-upload.tsx msgid "Document uploaded" -msgstr "Document téléchargé" +msgstr "Document importé" #: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx msgid "Document Viewed" @@ -2860,7 +2860,7 @@ msgstr "Pour toute question concernant cette divulgation, les signatures électr #: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "For each recipient, provide their email (required) and name (optional) in separate columns. Download the template CSV below for the correct format." -msgstr "Pour chaque destinataire, fournissez leur email (obligatoire) et leur nom (facultatif) dans des colonnes séparées. Téléchargez le modèle CSV ci-dessous pour le format correct." +msgstr "Pour chaque destinataire, fournissez son e-mail (obligatoire) et son nom (facultatif) dans des colonnes séparées. Téléchargez le modèle CSV ci-dessous pour obtenir le format requis." #: packages/lib/server-only/auth/send-forgot-password.ts msgid "Forgot Password?" @@ -2907,7 +2907,7 @@ msgstr "Authentification d'action de destinataire globale" #: apps/remix/app/components/general/generic-error-layout.tsx #: packages/ui/primitives/document-flow/document-flow-root.tsx msgid "Go Back" -msgstr "Retourner" +msgstr "Retour" #: apps/remix/app/routes/_unauthenticated+/verify-email._index.tsx #: apps/remix/app/routes/_unauthenticated+/verify-email.$token.tsx @@ -2988,7 +2988,7 @@ msgstr "Salut, je suis Timur" #: packages/email/templates/bulk-send-complete.tsx msgid "Hi {userName}," -msgstr "Bonjour, {userName}," +msgstr "Bonjour {userName}," #: packages/email/templates/reset-password.tsx msgid "Hi, {userName} <0>({userEmail})" @@ -3010,7 +3010,7 @@ msgstr "Je suis un signataire de ce document" #: packages/lib/constants/recipient-roles.ts msgid "I am a viewer of this document" -msgstr "Je suis un visualiseur de ce document" +msgstr "Je suis un lecteur de ce document" #: packages/lib/constants/recipient-roles.ts msgid "I am an approver of this document" @@ -3400,11 +3400,11 @@ msgstr "MAU (document terminé)" #: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx msgid "Max" -msgstr "" +msgstr "Maximum" #: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Maximum file size: 4MB. Maximum 100 rows per upload. Blank values will use template defaults." -msgstr "Taille maximale du fichier : 4 Mo. Maximum de 100 lignes par téléversement. Les valeurs vides utiliseront les valeurs par défaut du modèle." +msgstr "Taille maximale du fichier : 4 Mo. Maximum de 100 lignes par importation. Les valeurs vides utiliseront les valeurs par défaut du modèle." #: packages/lib/constants/teams.ts msgid "Member" @@ -5215,7 +5215,7 @@ msgstr "Modèle supprimé" #: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Template document uploaded" -msgstr "Document modèle téléchargé" +msgstr "Document modèle importé" #: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx msgid "Template duplicated" @@ -5280,11 +5280,11 @@ msgstr "Couleur du texte" #: apps/remix/app/routes/_unauthenticated+/articles.signature-disclosure.tsx msgid "Thank you for using Documenso to perform your electronic document signing. The purpose of this disclosure is to inform you about the process, legality, and your rights regarding the use of electronic signatures on our platform. By opting to use an electronic signature, you are agreeing to the terms and conditions outlined below." -msgstr "Merci d'utiliser Documenso pour signer vos documents électroniquement. L'objectif de cette divulgation est de vous informer sur le processus, la légalité et vos droits concernant l'utilisation des signatures électroniques sur notre plateforme. En choisissant d'utiliser une signature électronique, vous acceptez les termes et conditions énoncés ci-dessous." +msgstr "Merci d'utiliser Documenso pour signer vos documents électroniquement. L'objectif de cette clause est de vous informer sur le processus, la légalité et vos droits concernant l'utilisation de la signature électronique sur notre plateforme. En choisissant d'utiliser un sytème de signature électronique, vous acceptez les termes et conditions exposés ci-dessous." #: packages/email/template-components/template-forgot-password.tsx msgid "That's okay, it happens! Click the button below to reset your password." -msgstr "C'est d'accord, cela arrive ! Cliquez sur le bouton ci-dessous pour réinitialiser votre mot de passe." +msgstr "Ce n'est pas grave, cela arrive ! Cliquez sur le bouton ci-dessous pour réinitialiser votre mot de passe." #: apps/remix/app/components/dialogs/admin-user-delete-dialog.tsx msgid "The account has been deleted successfully." @@ -5522,7 +5522,7 @@ msgstr "Le webhook a été créé avec succès." #: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no active drafts at the current moment. You can upload a document to start drafting." -msgstr "Il n'y a pas de brouillons actifs pour le moment. Vous pouvez télécharger un document pour commencer à rédiger." +msgstr "Il n'y a pas de brouillons actifs pour le moment. Vous pouvez importer un document pour commencer un brouillon." #: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "There are no completed documents yet. Documents that you have created or received will appear here once completed." @@ -6091,27 +6091,27 @@ msgstr "Améliorer" #: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload a CSV file to create multiple documents from this template. Each row represents one document with its recipient details." -msgstr "Téléchargez un fichier CSV pour créer plusieurs documents à partir de ce modèle. Chaque ligne représente un document avec ses détails de destinataire." +msgstr "Importer un fichier CSV pour créer plusieurs documents à partir de ce modèle. Chaque ligne représente un document avec les coordonnées de son destinataire." #: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload a custom document to use instead of the template's default document" -msgstr "Téléchargez un document personnalisé à utiliser à la place du document par défaut du modèle" +msgstr "Importer un document personnalisé à utiliser à la place du modèle par défaut" #: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload and Process" -msgstr "Télécharger et traiter" +msgstr "Importer et traiter" #: apps/remix/app/components/forms/avatar-image.tsx msgid "Upload Avatar" -msgstr "Télécharger un avatar" +msgstr "Importer un avatar" #: apps/remix/app/components/dialogs/template-bulk-send-dialog.tsx msgid "Upload CSV" -msgstr "Télécharger le CSV" +msgstr "Importer le CSV" #: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Upload custom document" -msgstr "Télécharger un document personnalisé" +msgstr "Importer un document personnalisé" #: packages/ui/primitives/signature-pad/signature-pad.tsx msgid "Upload Signature" @@ -6119,7 +6119,7 @@ msgstr "Importer une signature" #: packages/ui/primitives/document-dropzone.tsx msgid "Upload Template Document" -msgstr "Télécharger le document modèle" +msgstr "Importer le document modèle" #: apps/remix/app/components/forms/team-branding-preferences-form.tsx msgid "Upload your brand logo (max 5MB, JPG, PNG, or WebP)" @@ -6132,15 +6132,15 @@ msgstr "Téléversé par" #: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too large" -msgstr "Le fichier téléchargé est trop volumineux" +msgstr "Le fichier importé est trop volumineux" #: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file is too small" -msgstr "Le fichier téléchargé est trop petit" +msgstr "Le fichier importé est trop petit" #: apps/remix/app/components/forms/avatar-image.tsx msgid "Uploaded file not an allowed file type" -msgstr "Le fichier téléchargé n'est pas un type de fichier autorisé" +msgstr "Le fichier importé n'est pas un type de fichier autorisé" #: apps/remix/app/routes/_authenticated+/templates.$id._index.tsx msgid "Use" @@ -6232,7 +6232,7 @@ msgstr "Vérifiez votre adresse e-mail pour débloquer toutes les fonctionnalit #: apps/remix/app/components/general/document/document-upload.tsx msgid "Verify your email to upload documents." -msgstr "Vérifiez votre e-mail pour télécharger des documents." +msgstr "Vérifiez votre e-mail pour importer des documents." #: packages/email/templates/confirm-team-email.tsx msgid "Verify your team email address" @@ -6329,11 +6329,11 @@ msgstr "Vu" #: packages/lib/constants/recipient-roles.ts msgid "Viewer" -msgstr "Visiteur" +msgstr "Lecteur" #: packages/lib/constants/recipient-roles.ts msgid "Viewers" -msgstr "Spectateurs" +msgstr "Lecteurs" #: packages/lib/constants/recipient-roles.ts msgid "Viewing" @@ -6728,7 +6728,7 @@ msgstr "Vous êtes sur le point d'envoyer ce document aux destinataires. Êtes-v #: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "You are currently on the <0>Free Plan." -msgstr "" +msgstr "Vous êtes actuellement sur l'<0>Abonnement Gratuit." #: apps/remix/app/components/dialogs/team-member-update-dialog.tsx msgid "You are currently updating <0>{teamMemberName}." @@ -6809,11 +6809,11 @@ msgstr "Vous ne pouvez pas modifier un membre de l'équipe qui a un rôle plus #: packages/ui/primitives/document-dropzone.tsx msgid "You cannot upload documents at this time." -msgstr "Vous ne pouvez pas télécharger de documents pour le moment." +msgstr "Vous ne pouvez pas importer de documents pour le moment." #: apps/remix/app/components/general/document/document-upload.tsx msgid "You cannot upload encrypted PDFs" -msgstr "Vous ne pouvez pas télécharger de PDF cryptés" +msgstr "Vous ne pouvez pas importer de PDF cryptés" #: apps/remix/app/components/general/billing-portal-button.tsx msgid "You do not currently have a customer record, this should not happen. Please contact support for assistance." @@ -6885,11 +6885,11 @@ msgstr "Vous n'avez pas encore de webhooks. Vos webhooks seront affichés ici un #: apps/remix/app/routes/_authenticated+/templates._index.tsx msgid "You have not yet created any templates. To create a template please upload one." -msgstr "Vous n'avez pas encore créé de modèles. Pour créer un modèle, veuillez en télécharger un." +msgstr "Vous n'avez pas encore créé de modèles. Pour créer un modèle, veuillez en importer un." #: apps/remix/app/components/tables/documents-table-empty-state.tsx msgid "You have not yet created or received any documents. To create a document please upload one." -msgstr "Vous n'avez pas encore créé ou reçu de documents. Pour créer un document, veuillez en télécharger un." +msgstr "Vous n'avez pas encore créé ou reçu de documents. Pour créer un document, veuillez en importer un." #. placeholder {0}: quota.directTemplates #: apps/remix/app/components/dialogs/template-direct-link-dialog.tsx @@ -6898,7 +6898,7 @@ msgstr "Vous avez atteint la limite maximale de {0} modèles directs. <0>Mettez #: apps/remix/app/components/general/document/document-upload.tsx msgid "You have reached your document limit for this month. Please upgrade your plan." -msgstr "Vous avez atteint votre limite de documents pour ce mois. Veuillez passer à un plan supérieur." +msgstr "Vous avez atteint votre limite de documents pour ce mois. Veuillez passer à l'abonnement supérieur." #: apps/remix/app/components/general/document/document-upload.tsx #: packages/ui/primitives/document-dropzone.tsx @@ -7024,11 +7024,11 @@ msgstr "Votre envoi groupé a été initié. Vous recevrez une notification par #: packages/email/templates/bulk-send-complete.tsx msgid "Your bulk send operation for template \"{templateName}\" has completed." -msgstr "Votre opération d'envoi groupé pour le modèle \"{templateName}\" est terminée." +msgstr "Votre envoi groupé pour le modèle \"{templateName}\" est terminé." #: apps/remix/app/routes/_authenticated+/settings+/billing.tsx msgid "Your current plan is past due. Please update your payment information." -msgstr "" +msgstr "Votre abonnement actuel est arrivé à échéance. Veuillez mettre à jour vos informations de paiement." #: apps/remix/app/components/dialogs/public-profile-template-manage-dialog.tsx msgid "Your direct signing templates" @@ -7036,7 +7036,7 @@ msgstr "Vos modèles de signature directe" #: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document failed to upload." -msgstr "Votre document a échoué à se télécharger." +msgstr "L'importation de votre document a échoué." #: apps/remix/app/components/dialogs/template-use-dialog.tsx msgid "Your document has been created from the template successfully." @@ -7060,11 +7060,11 @@ msgstr "Votre document a été dupliqué avec succès." #: apps/remix/app/components/general/document/document-upload.tsx msgid "Your document has been uploaded successfully." -msgstr "Votre document a été téléchargé avec succès." +msgstr "Votre document a été importé avec succès." #: apps/remix/app/components/dialogs/template-create-dialog.tsx msgid "Your document has been uploaded successfully. You will be redirected to the template page." -msgstr "Votre document a été téléchargé avec succès. Vous serez redirigé vers la page de modèle." +msgstr "Votre document a été importé avec succès. Vous serez redirigé vers la page de modèle." #: apps/remix/app/components/forms/team-document-preferences-form.tsx msgid "Your document preferences have been updated" From 44cdbeecb4da1a737e7d4150485af5e7f76ea3bc Mon Sep 17 00:00:00 2001 From: Jenil Savani Date: Wed, 12 Mar 2025 10:59:48 +0530 Subject: [PATCH 52/61] fix: improve layout and truncate document information in logs page (#1656) --- .../_authenticated+/documents.$id.logs.tsx | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx b/apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx index 8be1a843b..d59b2bba6 100644 --- a/apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx +++ b/apps/remix/app/routes/_authenticated+/documents.$id.logs.tsx @@ -129,7 +129,7 @@ export default function DocumentsLogsPage({ loaderData }: Route.ComponentProps) Document -
+

{document.title}

- +
+
-
+
+ -
- - - + +
@@ -163,7 +163,7 @@ export default function DocumentsLogsPage({ loaderData }: Route.ComponentProps) {documentInformation.map((info, i) => (

{_(info.description)}

-

{info.value}

+

{info.value}

))} From b3db3be8e9efca98fc16b2350707d11d7d7cbcf0 Mon Sep 17 00:00:00 2001 From: Ephraim Duncan <55143799+ephraimduncan@users.noreply.github.com> Date: Wed, 12 Mar 2025 05:43:52 +0000 Subject: [PATCH 53/61] fix: signing field disabled when pointer is out of canvas (#1652) --- packages/ui/primitives/signature-pad/signature-pad.tsx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/ui/primitives/signature-pad/signature-pad.tsx b/packages/ui/primitives/signature-pad/signature-pad.tsx index 54865a411..91fd1ca0e 100644 --- a/packages/ui/primitives/signature-pad/signature-pad.tsx +++ b/packages/ui/primitives/signature-pad/signature-pad.tsx @@ -271,7 +271,11 @@ export const SignaturePad = ({ event.preventDefault(); } - onMouseUp(event, false); + if (isPressed) { + onMouseUp(event, true); + } else { + onMouseUp(event, false); + } }; const onClearClick = () => { From a0ace803cfb5ba0eec2bc1b771f3c251a46f21e4 Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Wed, 12 Mar 2025 16:53:09 +1100 Subject: [PATCH 54/61] fix: admin signing page crash --- packages/lib/server-only/admin/get-signing-volume.ts | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/packages/lib/server-only/admin/get-signing-volume.ts b/packages/lib/server-only/admin/get-signing-volume.ts index bf2a5d038..dbaa6307a 100644 --- a/packages/lib/server-only/admin/get-signing-volume.ts +++ b/packages/lib/server-only/admin/get-signing-volume.ts @@ -1,4 +1,4 @@ -import { DocumentStatus } from '@prisma/client'; +import { DocumentStatus, SubscriptionStatus } from '@prisma/client'; import { kyselyPrisma, sql } from '@documenso/prisma'; @@ -44,7 +44,6 @@ export async function getSigningVolume({ .on('td.status', '=', sql.lit(DocumentStatus.COMPLETED)) .on('td.deletedAt', 'is', null), ) - // @ts-expect-error - Raw SQL enum casting not properly typed by Kysely .where(sql`s.status = ${SubscriptionStatus.ACTIVE}::"SubscriptionStatus"`) .where((eb) => eb.or([ @@ -82,7 +81,6 @@ export async function getSigningVolume({ .selectFrom('Subscription as s') .leftJoin('User as u', 's.userId', 'u.id') .leftJoin('Team as t', 's.teamId', 't.id') - // @ts-expect-error - Raw SQL enum casting not properly typed by Kysely .where(sql`s.status = ${SubscriptionStatus.ACTIVE}::"SubscriptionStatus"`) .where((eb) => eb.or([ From 91ae818213128867c5f2d944c8b173865d9eefd3 Mon Sep 17 00:00:00 2001 From: Catalin Pit Date: Wed, 12 Mar 2025 13:54:58 +0200 Subject: [PATCH 55/61] fix: missing prefillfields property from the api v2 documentation (#1700) --- packages/trpc/server/template-router/schema.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/trpc/server/template-router/schema.ts b/packages/trpc/server/template-router/schema.ts index 080939d90..ab238d283 100644 --- a/packages/trpc/server/template-router/schema.ts +++ b/packages/trpc/server/template-router/schema.ts @@ -68,7 +68,12 @@ export const ZCreateDocumentFromTemplateRequestSchema = z.object({ 'The data ID of an alternative PDF to use when creating the document. If not provided, the PDF attached to the template will be used.', ) .optional(), - prefillFields: z.array(ZFieldMetaPrefillFieldsSchema).optional(), + prefillFields: z + .array(ZFieldMetaPrefillFieldsSchema) + .describe( + 'The fields to prefill on the document before sending it out. Useful when you want to create a document from an existing template and pre-fill the fields with specific values.', + ) + .optional(), }); export const ZCreateDocumentFromTemplateResponseSchema = ZDocumentSchema; From 9f17c1e48efa651d5ee3668c346c626c97895558 Mon Sep 17 00:00:00 2001 From: Jenil Savani Date: Thu, 13 Mar 2025 05:05:24 +0530 Subject: [PATCH 56/61] fix: adjust desktop nav search button width and spacing (#1699) --- apps/remix/app/components/general/app-nav-desktop.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/remix/app/components/general/app-nav-desktop.tsx b/apps/remix/app/components/general/app-nav-desktop.tsx index eaa0c0bf5..631fff212 100644 --- a/apps/remix/app/components/general/app-nav-desktop.tsx +++ b/apps/remix/app/components/general/app-nav-desktop.tsx @@ -76,7 +76,7 @@ export const AppNavDesktop = ({
); From 3e97643e7ed51bce03083d6113d1fafa7d48d44e Mon Sep 17 00:00:00 2001 From: David Nguyen Date: Mon, 24 Mar 2025 15:25:29 +1100 Subject: [PATCH 61/61] feat: add signature configurations (#1710) Add ability to enable or disable allowed signature types: - Drawn - Typed - Uploaded **Tabbed style signature dialog** ![image](https://github.com/user-attachments/assets/a816fab6-b071-42a5-bb5c-6d4a2572431e) **Document settings** ![image](https://github.com/user-attachments/assets/f0c1bff1-6be1-4c87-b384-1666fa25d7a6) **Team preferences** ![image](https://github.com/user-attachments/assets/8767b05e-1463-4087-8672-f3f43d8b0f2c) ## Changes Made - Add multiselect to select allowed signatures in document and templates settings tab - Add multiselect to select allowed signatures in teams preferences - Removed "Enable typed signatures" from document/template edit page - Refactored signature pad to use tabs instead of an all in one signature pad ## Testing Performed Added E2E tests to check settings are applied correctly for documents and templates --- .../embed-direct-template-client-page.tsx | 59 +- .../embed/embed-document-fields.tsx | 2 + .../embed/embed-document-signing-page.tsx | 60 +- apps/remix/app/components/forms/profile.tsx | 21 +- apps/remix/app/components/forms/signup.tsx | 9 +- .../forms/team-branding-preferences-form.tsx | 2 +- .../forms/team-document-preferences-form.tsx | 87 ++- .../direct-template-signing-form.tsx | 36 +- .../document-signing-form.tsx | 45 +- .../document-signing-page-view.tsx | 2 + .../document-signing-provider.tsx | 38 +- .../document-signing-signature-field.tsx | 54 +- .../general/document/document-edit-form.tsx | 17 +- .../general/template/template-edit-form.tsx | 14 +- .../routes/_recipient+/d.$token+/_index.tsx | 9 +- .../_recipient+/sign.$token+/_index.tsx | 3 + apps/remix/app/routes/embed+/direct.$url.tsx | 9 +- apps/remix/app/routes/embed+/sign.$url.tsx | 3 + packages/api/v1/implementation.ts | 2 + packages/api/v1/schema.ts | 4 + .../e2e/document-auth/action-auth.spec.ts | 8 +- .../include-document-certificate.spec.ts | 10 +- packages/app-tests/e2e/fixtures/signature.ts | 38 +- .../e2e/teams/team-global-settings.spec.ts | 4 +- .../e2e/teams/team-signature-settings.spec.ts | 182 +++++ .../e2e/templates/direct-templates.spec.ts | 1 + .../app-tests/e2e/user/update-name.spec.ts | 3 +- packages/lib/constants/document.ts | 26 + packages/lib/constants/signatures.ts | 4 + .../emails/send-team-deleted-email.ts | 2 + .../document-meta/upsert-document-meta.ts | 8 + .../document/create-document-v2.ts | 4 + .../server-only/document/create-document.ts | 4 +- .../field/sign-field-with-token.ts | 2 +- .../team/update-team-document-settings.ts | 73 -- .../create-document-from-direct-template.ts | 3 + .../create-document-from-template-legacy.ts | 3 + .../template/create-document-from-template.ts | 8 +- .../server-only/template/create-template.ts | 21 +- packages/lib/types/document-meta.ts | 53 ++ packages/lib/types/document.ts | 2 + packages/lib/types/template.ts | 2 + packages/lib/types/webhook-payload.ts | 2 + packages/lib/utils/teams.ts | 29 + .../migration.sql | 11 + packages/prisma/prisma-middleware.ts | 25 + packages/prisma/schema.prisma | 59 +- packages/prisma/seed/documents.ts | 144 +++- packages/tailwind-config/index.cjs | 16 + .../trpc/server/document-router/router.ts | 21 +- .../trpc/server/document-router/schema.ts | 39 +- .../server/document-router/update-document.ts | 52 ++ .../document-router/update-document.types.ts | 67 ++ packages/trpc/server/team-router/router.ts | 16 +- packages/trpc/server/team-router/schema.ts | 20 +- .../update-team-document-settings.ts | 71 ++ .../update-team-document-settings.types.ts | 23 + .../trpc/server/template-router/schema.ts | 4 + packages/trpc/server/trpc.ts | 6 +- .../document-signature-settings-tooltip.tsx | 58 ++ .../primitives/document-flow/add-fields.tsx | 31 +- .../document-flow/add-fields.types.ts | 1 - .../primitives/document-flow/add-settings.tsx | 45 +- .../document-flow/add-settings.types.ts | 10 +- .../ui/primitives/multi-select-combobox.tsx | 13 +- .../ui/primitives/signature-pad/canvas.ts | 4 +- .../signature-pad-color-picker.tsx | 63 ++ .../signature-pad/signature-pad-dialog.tsx | 150 ++++ .../signature-pad/signature-pad-draw.tsx | 327 ++++++++ .../signature-pad/signature-pad-type.tsx | 29 + .../signature-pad/signature-pad-upload.tsx | 166 +++++ .../signature-pad/signature-pad.tsx | 702 ++++-------------- .../signature-pad/signature-render.tsx | 128 ++++ .../signature-pad/signature-tabs.tsx | 147 ++++ .../template-flow/add-template-fields.tsx | 37 +- .../add-template-fields.types.ts | 1 - .../template-flow/add-template-settings.tsx | 43 +- .../add-template-settings.types.tsx | 5 + 78 files changed, 2390 insertions(+), 1112 deletions(-) create mode 100644 packages/app-tests/e2e/teams/team-signature-settings.spec.ts create mode 100644 packages/lib/constants/signatures.ts delete mode 100644 packages/lib/server-only/team/update-team-document-settings.ts create mode 100644 packages/lib/types/document-meta.ts create mode 100644 packages/prisma/migrations/20250313015104_add_signatures_toggle/migration.sql create mode 100644 packages/prisma/prisma-middleware.ts create mode 100644 packages/trpc/server/document-router/update-document.ts create mode 100644 packages/trpc/server/document-router/update-document.types.ts create mode 100644 packages/trpc/server/team-router/update-team-document-settings.ts create mode 100644 packages/trpc/server/team-router/update-team-document-settings.types.ts create mode 100644 packages/ui/components/document/document-signature-settings-tooltip.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-pad-color-picker.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-pad-dialog.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-pad-draw.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-pad-type.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-pad-upload.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-render.tsx create mode 100644 packages/ui/primitives/signature-pad/signature-tabs.tsx diff --git a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx index c88813e1f..aa780385c 100644 --- a/apps/remix/app/components/embed/embed-direct-template-client-page.tsx +++ b/apps/remix/app/components/embed/embed-direct-template-client-page.tsx @@ -3,8 +3,8 @@ import { useEffect, useLayoutEffect, useState } from 'react'; import { msg } from '@lingui/core/macro'; import { useLingui } from '@lingui/react'; import { Trans } from '@lingui/react/macro'; -import { type DocumentData, type Field, FieldType } from '@prisma/client'; import type { DocumentMeta, Recipient, Signature, TemplateMeta } from '@prisma/client'; +import { type DocumentData, type Field, FieldType } from '@prisma/client'; import { LucideChevronDown, LucideChevronUp } from 'lucide-react'; import { DateTime } from 'luxon'; import { useSearchParams } from 'react-router'; @@ -25,12 +25,11 @@ import type { } from '@documenso/trpc/server/field-router/schema'; import { FieldToolTip } from '@documenso/ui/components/field/field-tooltip'; import { Button } from '@documenso/ui/primitives/button'; -import { Card, CardContent } from '@documenso/ui/primitives/card'; import { ElementVisible } from '@documenso/ui/primitives/element-visible'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; -import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; +import { SignaturePadDialog } from '@documenso/ui/primitives/signature-pad/signature-pad-dialog'; import { useToast } from '@documenso/ui/primitives/use-toast'; import { BrandingLogo } from '~/components/general/branding-logo'; @@ -69,16 +68,8 @@ export const EmbedDirectTemplateClientPage = ({ const [searchParams] = useSearchParams(); - const { - fullName, - email, - signature, - signatureValid, - setFullName, - setEmail, - setSignature, - setSignatureValid, - } = useRequiredDocumentSigningContext(); + const { fullName, email, signature, setFullName, setEmail, setSignature } = + useRequiredDocumentSigningContext(); const [hasFinishedInit, setHasFinishedInit] = useState(false); const [hasDocumentLoaded, setHasDocumentLoaded] = useState(false); @@ -194,10 +185,6 @@ export const EmbedDirectTemplateClientPage = ({ const onCompleteClick = async () => { try { - if (hasSignatureField && !signatureValid) { - return; - } - const valid = validateFieldsInserted(pendingFields); if (!valid) { @@ -419,34 +406,16 @@ export const EmbedDirectTemplateClientPage = ({ Signature - - - { - setSignature(value); - }} - onValidityChange={(isValid) => { - setSignatureValid(isValid); - }} - allowTypedSignature={Boolean( - metadata && - 'typedSignatureEnabled' in metadata && - metadata.typedSignatureEnabled, - )} - /> - - - - {hasSignatureField && !signatureValid && ( -
- - Signature is too small. Please provide a more complete signature. - -
- )} + setSignature(v ?? '')} + typedSignatureEnabled={metadata?.typedSignatureEnabled} + uploadSignatureEnabled={metadata?.uploadSignatureEnabled} + drawSignatureEnabled={metadata?.drawSignatureEnabled} + />
)}
diff --git a/apps/remix/app/components/embed/embed-document-fields.tsx b/apps/remix/app/components/embed/embed-document-fields.tsx index 99c8e4600..0cb53f17c 100644 --- a/apps/remix/app/components/embed/embed-document-fields.tsx +++ b/apps/remix/app/components/embed/embed-document-fields.tsx @@ -54,6 +54,8 @@ export const EmbedDocumentFields = ({ onSignField={onSignField} onUnsignField={onUnsignField} typedSignatureEnabled={metadata?.typedSignatureEnabled} + uploadSignatureEnabled={metadata?.uploadSignatureEnabled} + drawSignatureEnabled={metadata?.drawSignatureEnabled} /> )) .with(FieldType.INITIALS, () => ( diff --git a/apps/remix/app/components/embed/embed-document-signing-page.tsx b/apps/remix/app/components/embed/embed-document-signing-page.tsx index 5361ded5e..79d87e6aa 100644 --- a/apps/remix/app/components/embed/embed-document-signing-page.tsx +++ b/apps/remix/app/components/embed/embed-document-signing-page.tsx @@ -21,13 +21,12 @@ import type { RecipientWithFields } from '@documenso/prisma/types/recipient-with import { trpc } from '@documenso/trpc/react'; import { FieldToolTip } from '@documenso/ui/components/field/field-tooltip'; import { Button } from '@documenso/ui/primitives/button'; -import { Card, CardContent } from '@documenso/ui/primitives/card'; import { ElementVisible } from '@documenso/ui/primitives/element-visible'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; import { PDFViewer } from '@documenso/ui/primitives/pdf-viewer'; import { RadioGroup, RadioGroupItem } from '@documenso/ui/primitives/radio-group'; -import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; +import { SignaturePadDialog } from '@documenso/ui/primitives/signature-pad/signature-pad-dialog'; import { useToast } from '@documenso/ui/primitives/use-toast'; import { BrandingLogo } from '~/components/general/branding-logo'; @@ -70,15 +69,8 @@ export const EmbedSignDocumentClientPage = ({ const { _ } = useLingui(); const { toast } = useToast(); - const { - fullName, - email, - signature, - signatureValid, - setFullName, - setSignature, - setSignatureValid, - } = useRequiredDocumentSigningContext(); + const { fullName, email, signature, setFullName, setSignature } = + useRequiredDocumentSigningContext(); const [hasFinishedInit, setHasFinishedInit] = useState(false); const [hasDocumentLoaded, setHasDocumentLoaded] = useState(false); @@ -129,10 +121,6 @@ export const EmbedSignDocumentClientPage = ({ const onCompleteClick = async () => { try { - if (hasSignatureField && !signatureValid) { - return; - } - const valid = validateFieldsInserted(fieldsRequiringValidation); if (!valid) { @@ -432,34 +420,16 @@ export const EmbedSignDocumentClientPage = ({ Signature - - - { - setSignature(value); - }} - onValidityChange={(isValid) => { - setSignatureValid(isValid); - }} - allowTypedSignature={Boolean( - metadata && - 'typedSignatureEnabled' in metadata && - metadata.typedSignatureEnabled, - )} - /> - - - - {hasSignatureField && !signatureValid && ( -
- - Signature is too small. Please provide a more complete signature. - -
- )} + setSignature(v ?? '')} + typedSignatureEnabled={metadata?.typedSignatureEnabled} + uploadSignatureEnabled={metadata?.uploadSignatureEnabled} + drawSignatureEnabled={metadata?.drawSignatureEnabled} + />
)} @@ -477,9 +447,7 @@ export const EmbedSignDocumentClientPage = ({ ) : (
+ ( + render={({ field: { onChange, value } }) => ( Signature - onChange(v ?? '')} - allowTypedSignature={true} /> @@ -134,7 +135,7 @@ export const ProfileForm = ({ className }: ProfileFormProps) => { diff --git a/apps/remix/app/components/forms/signup.tsx b/apps/remix/app/components/forms/signup.tsx index f2abb9fcc..b26f56742 100644 --- a/apps/remix/app/components/forms/signup.tsx +++ b/apps/remix/app/components/forms/signup.tsx @@ -30,7 +30,7 @@ import { } from '@documenso/ui/primitives/form/form'; import { Input } from '@documenso/ui/primitives/input'; import { PasswordInput } from '@documenso/ui/primitives/password-input'; -import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; +import { SignaturePadDialog } from '@documenso/ui/primitives/signature-pad/signature-pad-dialog'; import { useToast } from '@documenso/ui/primitives/use-toast'; import { UserProfileSkeleton } from '~/components/general/user-profile-skeleton'; @@ -353,16 +353,15 @@ export const SignUpForm = ({ ( + render={({ field: { onChange, value } }) => ( Sign Here - onChange(v ?? '')} /> diff --git a/apps/remix/app/components/forms/team-branding-preferences-form.tsx b/apps/remix/app/components/forms/team-branding-preferences-form.tsx index f33345d3b..5cc519960 100644 --- a/apps/remix/app/components/forms/team-branding-preferences-form.tsx +++ b/apps/remix/app/components/forms/team-branding-preferences-form.tsx @@ -308,7 +308,7 @@ export function TeamBrandingPreferencesForm({ team, settings }: TeamBrandingPref
diff --git a/apps/remix/app/components/forms/team-document-preferences-form.tsx b/apps/remix/app/components/forms/team-document-preferences-form.tsx index 98701b36b..2b4846116 100644 --- a/apps/remix/app/components/forms/team-document-preferences-form.tsx +++ b/apps/remix/app/components/forms/team-document-preferences-form.tsx @@ -8,12 +8,15 @@ import { useForm } from 'react-hook-form'; import { z } from 'zod'; import { useSession } from '@documenso/lib/client-only/providers/session'; +import { DOCUMENT_SIGNATURE_TYPES, DocumentSignatureType } from '@documenso/lib/constants/document'; import { SUPPORTED_LANGUAGES, SUPPORTED_LANGUAGE_CODES, isValidLanguageCode, } from '@documenso/lib/constants/i18n'; +import { extractTeamSignatureSettings } from '@documenso/lib/utils/teams'; import { trpc } from '@documenso/trpc/react'; +import { DocumentSignatureSettingsTooltip } from '@documenso/ui/components/document/document-signature-settings-tooltip'; import { Alert } from '@documenso/ui/primitives/alert'; import { Button } from '@documenso/ui/primitives/button'; import { @@ -23,7 +26,9 @@ import { FormField, FormItem, FormLabel, + FormMessage, } from '@documenso/ui/primitives/form/form'; +import { MultiSelectCombobox } from '@documenso/ui/primitives/multi-select-combobox'; import { Select, SelectContent, @@ -38,8 +43,10 @@ const ZTeamDocumentPreferencesFormSchema = z.object({ documentVisibility: z.nativeEnum(DocumentVisibility), documentLanguage: z.enum(SUPPORTED_LANGUAGE_CODES), includeSenderDetails: z.boolean(), - typedSignatureEnabled: z.boolean(), includeSigningCertificate: z.boolean(), + signatureTypes: z.array(z.nativeEnum(DocumentSignatureType)).min(1, { + message: msg`At least one signature type must be enabled`.id, + }), }); type TTeamDocumentPreferencesFormSchema = z.infer; @@ -69,8 +76,8 @@ export const TeamDocumentPreferencesForm = ({ ? settings?.documentLanguage : 'en', includeSenderDetails: settings?.includeSenderDetails ?? false, - typedSignatureEnabled: settings?.typedSignatureEnabled ?? true, includeSigningCertificate: settings?.includeSigningCertificate ?? true, + signatureTypes: extractTeamSignatureSettings(settings), }, resolver: zodResolver(ZTeamDocumentPreferencesFormSchema), }); @@ -84,7 +91,7 @@ export const TeamDocumentPreferencesForm = ({ documentLanguage, includeSenderDetails, includeSigningCertificate, - typedSignatureEnabled, + signatureTypes, } = data; await updateTeamDocumentPreferences({ @@ -93,8 +100,10 @@ export const TeamDocumentPreferencesForm = ({ documentVisibility, documentLanguage, includeSenderDetails, - typedSignatureEnabled, includeSigningCertificate, + typedSignatureEnabled: signatureTypes.includes(DocumentSignatureType.TYPE), + uploadSignatureEnabled: signatureTypes.includes(DocumentSignatureType.UPLOAD), + drawSignatureEnabled: signatureTypes.includes(DocumentSignatureType.DRAW), }, }); @@ -190,6 +199,44 @@ export const TeamDocumentPreferencesForm = ({ )} /> + ( + + + Default Signature Settings + + + + + ({ + label: _(option.label), + value: option.value, + }))} + selectedValues={field.value} + onChange={field.onChange} + className="bg-background w-full" + enableSearch={false} + emptySelectionPlaceholder="Select signature types" + testId="signature-types-combobox" + /> + + + {form.formState.errors.signatureTypes ? ( + + ) : ( + + + Controls which signatures are allowed to be used when signing a document. + + + )} + + )} + /> + - ( - - - Enable Typed Signature - - -
- - - -
- - - - Controls whether the recipients can sign the documents using a typed signature. - Enable or disable the typed signature globally. - - -
- )} - /> -
diff --git a/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx b/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx index 26e542f43..943932c27 100644 --- a/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx +++ b/apps/remix/app/components/general/direct-template/direct-template-signing-form.tsx @@ -24,7 +24,6 @@ import type { } from '@documenso/trpc/server/field-router/schema'; import { FieldToolTip } from '@documenso/ui/components/field/field-tooltip'; import { Button } from '@documenso/ui/primitives/button'; -import { Card, CardContent } from '@documenso/ui/primitives/card'; import { DocumentFlowFormContainerContent, DocumentFlowFormContainerFooter, @@ -35,7 +34,7 @@ import type { DocumentFlowStep } from '@documenso/ui/primitives/document-flow/ty import { ElementVisible } from '@documenso/ui/primitives/element-visible'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; -import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; +import { SignaturePadDialog } from '@documenso/ui/primitives/signature-pad/signature-pad-dialog'; import { useStep } from '@documenso/ui/primitives/stepper'; import { DocumentSigningCheckboxField } from '~/components/general/document-signing/document-signing-checkbox-field'; @@ -73,8 +72,7 @@ export const DirectTemplateSigningForm = ({ template, onSubmit, }: DirectTemplateSigningFormProps) => { - const { fullName, signature, signatureValid, setFullName, setSignature } = - useRequiredDocumentSigningContext(); + const { fullName, signature, setFullName, setSignature } = useRequiredDocumentSigningContext(); const [localFields, setLocalFields] = useState(directRecipientFields); const [validateUninsertedFields, setValidateUninsertedFields] = useState(false); @@ -135,8 +133,6 @@ export const DirectTemplateSigningForm = ({ ); }; - const hasSignatureField = localFields.some((field) => field.type === FieldType.SIGNATURE); - const uninsertedFields = useMemo(() => { return sortFieldsByPosition(localFields.filter((field) => !field.inserted)); }, [localFields]); @@ -149,10 +145,6 @@ export const DirectTemplateSigningForm = ({ const handleSubmit = async () => { setValidateUninsertedFields(true); - if (hasSignatureField && !signatureValid) { - return; - } - const isFieldsValid = validateFieldsInserted(localFields); if (!isFieldsValid) { @@ -240,6 +232,8 @@ export const DirectTemplateSigningForm = ({ onSignField={onSignField} onUnsignField={onUnsignField} typedSignatureEnabled={template.templateMeta?.typedSignatureEnabled} + uploadSignatureEnabled={template.templateMeta?.uploadSignatureEnabled} + drawSignatureEnabled={template.templateMeta?.drawSignatureEnabled} /> )) .with(FieldType.INITIALS, () => ( @@ -384,19 +378,15 @@ export const DirectTemplateSigningForm = ({ Signature - - - { - setSignature(value); - }} - allowTypedSignature={template.templateMeta?.typedSignatureEnabled} - /> - - + setSignature(value)} + typedSignatureEnabled={template.templateMeta?.typedSignatureEnabled} + uploadSignatureEnabled={template.templateMeta?.uploadSignatureEnabled} + drawSignatureEnabled={template.templateMeta?.drawSignatureEnabled} + />
diff --git a/apps/remix/app/components/general/document-signing/document-signing-form.tsx b/apps/remix/app/components/general/document-signing/document-signing-form.tsx index a293afac8..81c089399 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-form.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-form.tsx @@ -18,11 +18,10 @@ import { trpc } from '@documenso/trpc/react'; import { FieldToolTip } from '@documenso/ui/components/field/field-tooltip'; import { cn } from '@documenso/ui/lib/utils'; import { Button } from '@documenso/ui/primitives/button'; -import { Card, CardContent } from '@documenso/ui/primitives/card'; import { Input } from '@documenso/ui/primitives/input'; import { Label } from '@documenso/ui/primitives/label'; import { RadioGroup, RadioGroupItem } from '@documenso/ui/primitives/radio-group'; -import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; +import { SignaturePadDialog } from '@documenso/ui/primitives/signature-pad/signature-pad-dialog'; import { useToast } from '@documenso/ui/primitives/use-toast'; import { AssistantConfirmationDialog } from '../../dialogs/assistant-confirmation-dialog'; @@ -59,8 +58,7 @@ export const DocumentSigningForm = ({ const assistantSignersId = useId(); - const { fullName, signature, setFullName, setSignature, signatureValid, setSignatureValid } = - useRequiredDocumentSigningContext(); + const { fullName, signature, setFullName, setSignature } = useRequiredDocumentSigningContext(); const [validateUninsertedFields, setValidateUninsertedFields] = useState(false); const [isConfirmationDialogOpen, setIsConfirmationDialogOpen] = useState(false); @@ -105,10 +103,6 @@ export const DocumentSigningForm = ({ const isFieldsValid = validateFieldsInserted(fieldsRequiringValidation); - if (hasSignatureField && !signatureValid) { - return; - } - if (!isFieldsValid) { return; } @@ -347,32 +341,15 @@ export const DocumentSigningForm = ({ Signature - - - { - setSignatureValid(isValid); - }} - onChange={(value) => { - if (signatureValid) { - setSignature(value); - } - }} - allowTypedSignature={document.documentMeta?.typedSignatureEnabled} - /> - - - - {!signatureValid && ( -
- - Signature is too small. Please provide a more complete signature. - -
- )} + setSignature(v ?? '')} + typedSignatureEnabled={document.documentMeta?.typedSignatureEnabled} + uploadSignatureEnabled={document.documentMeta?.uploadSignatureEnabled} + drawSignatureEnabled={document.documentMeta?.drawSignatureEnabled} + />
)}
diff --git a/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx b/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx index ddb9dc555..9d8fb1b2c 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-page-view.tsx @@ -177,6 +177,8 @@ export const DocumentSigningPageView = ({ key={field.id} field={field} typedSignatureEnabled={documentMeta?.typedSignatureEnabled} + uploadSignatureEnabled={documentMeta?.uploadSignatureEnabled} + drawSignatureEnabled={documentMeta?.drawSignatureEnabled} /> )) .with(FieldType.INITIALS, () => ( diff --git a/apps/remix/app/components/general/document-signing/document-signing-provider.tsx b/apps/remix/app/components/general/document-signing/document-signing-provider.tsx index ca231949d..9d704f591 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-provider.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-provider.tsx @@ -1,4 +1,6 @@ -import { createContext, useContext, useEffect, useState } from 'react'; +import { createContext, useContext, useState } from 'react'; + +import { isBase64Image } from '@documenso/lib/constants/signatures'; export type DocumentSigningContextValue = { fullName: string; @@ -7,8 +9,6 @@ export type DocumentSigningContextValue = { setEmail: (_value: string) => void; signature: string | null; setSignature: (_value: string | null) => void; - signatureValid: boolean; - setSignatureValid: (_valid: boolean) => void; }; const DocumentSigningContext = createContext(null); @@ -31,6 +31,9 @@ export interface DocumentSigningProviderProps { fullName?: string | null; email?: string | null; signature?: string | null; + typedSignatureEnabled?: boolean; + uploadSignatureEnabled?: boolean; + drawSignatureEnabled?: boolean; children: React.ReactNode; } @@ -38,18 +41,31 @@ export const DocumentSigningProvider = ({ fullName: initialFullName, email: initialEmail, signature: initialSignature, + typedSignatureEnabled = true, + uploadSignatureEnabled = true, + drawSignatureEnabled = true, children, }: DocumentSigningProviderProps) => { const [fullName, setFullName] = useState(initialFullName || ''); const [email, setEmail] = useState(initialEmail || ''); - const [signature, setSignature] = useState(initialSignature || null); - const [signatureValid, setSignatureValid] = useState(true); - useEffect(() => { - if (initialSignature) { - setSignature(initialSignature); - } - }, [initialSignature]); + // Ensure the user signature doesn't show up if it's not allowed. + const [signature, setSignature] = useState( + (() => { + const sig = initialSignature || ''; + const isBase64 = isBase64Image(sig); + + if (isBase64 && (uploadSignatureEnabled || drawSignatureEnabled)) { + return sig; + } + + if (!isBase64 && typedSignatureEnabled) { + return sig; + } + + return null; + })(), + ); return ( {children} diff --git a/apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx b/apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx index 1b1f92dbd..381658ab3 100644 --- a/apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx +++ b/apps/remix/app/components/general/document-signing/document-signing-signature-field.tsx @@ -17,7 +17,6 @@ import type { } from '@documenso/trpc/server/field-router/schema'; import { Button } from '@documenso/ui/primitives/button'; import { Dialog, DialogContent, DialogFooter, DialogTitle } from '@documenso/ui/primitives/dialog'; -import { Label } from '@documenso/ui/primitives/label'; import { SignaturePad } from '@documenso/ui/primitives/signature-pad'; import { useToast } from '@documenso/ui/primitives/use-toast'; @@ -29,11 +28,14 @@ import { useRequiredDocumentSigningContext } from './document-signing-provider'; import { useDocumentSigningRecipientContext } from './document-signing-recipient-provider'; type SignatureFieldState = 'empty' | 'signed-image' | 'signed-text'; + export type DocumentSigningSignatureFieldProps = { field: FieldWithSignature; onSignField?: (value: TSignFieldWithTokenMutationSchema) => Promise | void; onUnsignField?: (value: TRemovedSignedFieldWithTokenMutationSchema) => Promise | void; typedSignatureEnabled?: boolean; + uploadSignatureEnabled?: boolean; + drawSignatureEnabled?: boolean; }; export const DocumentSigningSignatureField = ({ @@ -41,6 +43,8 @@ export const DocumentSigningSignatureField = ({ onSignField, onUnsignField, typedSignatureEnabled, + uploadSignatureEnabled, + drawSignatureEnabled, }: DocumentSigningSignatureFieldProps) => { const { _ } = useLingui(); const { toast } = useToast(); @@ -52,12 +56,8 @@ export const DocumentSigningSignatureField = ({ const containerRef = useRef(null); const [fontSize, setFontSize] = useState(2); - const { - signature: providedSignature, - setSignature: setProvidedSignature, - signatureValid, - setSignatureValid, - } = useRequiredDocumentSigningContext(); + const { signature: providedSignature, setSignature: setProvidedSignature } = + useRequiredDocumentSigningContext(); const { executeActionAuthProcedure } = useRequiredDocumentSigningAuthContext(); @@ -89,7 +89,7 @@ export const DocumentSigningSignatureField = ({ }, [field.inserted, signature?.signatureImageAsBase64]); const onPreSign = () => { - if (!providedSignature || !signatureValid) { + if (!providedSignature) { setShowSignatureModal(true); return false; } @@ -102,6 +102,7 @@ export const DocumentSigningSignatureField = ({ const onDialogSignClick = () => { setShowSignatureModal(false); setProvidedSignature(localSignature); + if (!localSignature) { return; } @@ -116,14 +117,14 @@ export const DocumentSigningSignatureField = ({ try { const value = signature || providedSignature; - if (!value || (signature && !signatureValid)) { + if (!value) { setShowSignatureModal(true); return; } const isTypedSignature = !value.startsWith('data:image'); - if (isTypedSignature && !typedSignatureEnabled) { + if (isTypedSignature && typedSignatureEnabled === false) { toast({ title: _(msg`Error`), description: _(msg`Typed signatures are not allowed. Please draw your signature.`), @@ -275,29 +276,14 @@ export const DocumentSigningSignatureField = ({
-
- - -
- setLocalSignature(value)} - allowTypedSignature={typedSignatureEnabled} - onValidityChange={(isValid) => { - setSignatureValid(isValid); - }} - /> -
- - {!signatureValid && ( -
- Signature is too small. Please provide a more complete signature. -
- )} -
+ setLocalSignature(value)} + typedSignatureEnabled={typedSignatureEnabled} + uploadSignatureEnabled={uploadSignatureEnabled} + drawSignatureEnabled={drawSignatureEnabled} + /> @@ -317,7 +303,7 @@ export const DocumentSigningSignatureField = ({ + + + + + + + + ); +}; diff --git a/packages/ui/primitives/signature-pad/signature-pad-draw.tsx b/packages/ui/primitives/signature-pad/signature-pad-draw.tsx new file mode 100644 index 000000000..bb66c8aeb --- /dev/null +++ b/packages/ui/primitives/signature-pad/signature-pad-draw.tsx @@ -0,0 +1,327 @@ +import type { MouseEvent, PointerEvent, RefObject, TouchEvent } from 'react'; +import { useMemo, useRef, useState } from 'react'; + +import { Trans } from '@lingui/react/macro'; +import { Undo2 } from 'lucide-react'; +import type { StrokeOptions } from 'perfect-freehand'; +import { getStroke } from 'perfect-freehand'; + +import { unsafe_useEffectOnce } from '@documenso/lib/client-only/hooks/use-effect-once'; +import { + SIGNATURE_CANVAS_DPI, + SIGNATURE_MIN_COVERAGE_THRESHOLD, +} from '@documenso/lib/constants/signatures'; + +import { cn } from '../../lib/utils'; +import { getSvgPathFromStroke } from './helper'; +import { Point } from './point'; +import { SignaturePadColorPicker } from './signature-pad-color-picker'; + +const checkSignatureValidity = (element: RefObject) => { + if (!element.current) { + return false; + } + + const ctx = element.current.getContext('2d'); + + if (!ctx) { + return false; + } + + const imageData = ctx.getImageData(0, 0, element.current.width, element.current.height); + const data = imageData.data; + let filledPixels = 0; + const totalPixels = data.length / 4; + + for (let i = 0; i < data.length; i += 4) { + if (data[i + 3] > 0) filledPixels++; + } + + const filledPercentage = filledPixels / totalPixels; + const isValid = filledPercentage > SIGNATURE_MIN_COVERAGE_THRESHOLD; + + return isValid; +}; + +export type SignaturePadDrawProps = { + className?: string; + value: string; + onChange: (_signatureDataUrl: string) => void; +}; + +export const SignaturePadDraw = ({ + className, + value, + onChange, + ...props +}: SignaturePadDrawProps) => { + const $el = useRef(null); + + const $imageData = useRef(null); + const $fileInput = useRef(null); + + const [isPressed, setIsPressed] = useState(false); + const [lines, setLines] = useState([]); + const [currentLine, setCurrentLine] = useState([]); + const [isSignatureValid, setIsSignatureValid] = useState(null); + + const [selectedColor, setSelectedColor] = useState('black'); + + const perfectFreehandOptions = useMemo(() => { + const size = $el.current ? Math.min($el.current.height, $el.current.width) * 0.03 : 10; + + return { + size, + thinning: 0.25, + streamline: 0.5, + smoothing: 0.5, + end: { + taper: size * 2, + }, + } satisfies StrokeOptions; + }, []); + + const onMouseDown = (event: MouseEvent | PointerEvent | TouchEvent) => { + if (event.cancelable) { + event.preventDefault(); + } + + setIsPressed(true); + + const point = Point.fromEvent(event, SIGNATURE_CANVAS_DPI, $el.current); + + setCurrentLine([point]); + }; + + const onMouseMove = (event: MouseEvent | PointerEvent | TouchEvent) => { + if (event.cancelable) { + event.preventDefault(); + } + + if (!isPressed) { + return; + } + + const point = Point.fromEvent(event, SIGNATURE_CANVAS_DPI, $el.current); + const lastPoint = currentLine[currentLine.length - 1]; + + if (lastPoint && point.distanceTo(lastPoint) > 5) { + setCurrentLine([...currentLine, point]); + + // Update the canvas here to draw the lines + if ($el.current) { + const ctx = $el.current.getContext('2d'); + + if (ctx) { + ctx.restore(); + ctx.imageSmoothingEnabled = true; + ctx.imageSmoothingQuality = 'high'; + ctx.fillStyle = selectedColor; + + lines.forEach((line) => { + const pathData = new Path2D( + getSvgPathFromStroke(getStroke(line, perfectFreehandOptions)), + ); + + ctx.fill(pathData); + }); + + const pathData = new Path2D( + getSvgPathFromStroke(getStroke([...currentLine, point], perfectFreehandOptions)), + ); + ctx.fill(pathData); + } + } + } + }; + + const onMouseUp = (event: MouseEvent | PointerEvent | TouchEvent, addLine = true) => { + if (event.cancelable) { + event.preventDefault(); + } + + setIsPressed(false); + + const point = Point.fromEvent(event, SIGNATURE_CANVAS_DPI, $el.current); + + const newLines = [...lines]; + + if (addLine && currentLine.length > 0) { + newLines.push([...currentLine, point]); + setCurrentLine([]); + } + + setLines(newLines); + + if ($el.current && newLines.length > 0) { + const ctx = $el.current.getContext('2d'); + + if (ctx) { + ctx.restore(); + ctx.imageSmoothingEnabled = true; + ctx.imageSmoothingQuality = 'high'; + ctx.fillStyle = selectedColor; + + newLines.forEach((line) => { + const pathData = new Path2D( + getSvgPathFromStroke(getStroke(line, perfectFreehandOptions)), + ); + ctx.fill(pathData); + }); + + const isValidSignature = checkSignatureValidity($el); + + setIsSignatureValid(isValidSignature); + + if (isValidSignature) { + onChange?.($el.current.toDataURL()); + } + ctx.save(); + } + } + }; + + const onMouseEnter = (event: MouseEvent | PointerEvent | TouchEvent) => { + if (event.cancelable) { + event.preventDefault(); + } + + if ('buttons' in event && event.buttons === 1) { + onMouseDown(event); + } + }; + + const onMouseLeave = (event: MouseEvent | PointerEvent | TouchEvent) => { + if (event.cancelable) { + event.preventDefault(); + } + + if (isPressed) { + onMouseUp(event, true); + } else { + onMouseUp(event, false); + } + }; + + const onClearClick = () => { + if ($el.current) { + const ctx = $el.current.getContext('2d'); + + ctx?.clearRect(0, 0, $el.current.width, $el.current.height); + $imageData.current = null; + } + + if ($fileInput.current) { + $fileInput.current.value = ''; + } + + onChange(''); + + setLines([]); + setCurrentLine([]); + setIsPressed(false); + }; + + const onUndoClick = () => { + if (lines.length === 0 || !$el.current) { + return; + } + + const newLines = lines.slice(0, -1); + setLines(newLines); + + // Clear and redraw the canvas + const ctx = $el.current.getContext('2d'); + const { width, height } = $el.current; + ctx?.clearRect(0, 0, width, height); + + if ($imageData.current) { + ctx?.putImageData($imageData.current, 0, 0); + } + + newLines.forEach((line) => { + const pathData = new Path2D(getSvgPathFromStroke(getStroke(line, perfectFreehandOptions))); + ctx?.fill(pathData); + }); + + onChange?.($el.current.toDataURL()); + }; + + unsafe_useEffectOnce(() => { + if ($el.current) { + $el.current.width = $el.current.clientWidth * SIGNATURE_CANVAS_DPI; + $el.current.height = $el.current.clientHeight * SIGNATURE_CANVAS_DPI; + } + + if ($el.current && value) { + const ctx = $el.current.getContext('2d'); + + const { width, height } = $el.current; + + const img = new Image(); + + img.onload = () => { + ctx?.drawImage(img, 0, 0, Math.min(width, img.width), Math.min(height, img.height)); + + const defaultImageData = ctx?.getImageData(0, 0, width, height) || null; + + $imageData.current = defaultImageData; + }; + + img.src = value; + } + }); + + return ( +
+ onMouseMove(event)} + onPointerDown={(event) => onMouseDown(event)} + onPointerUp={(event) => onMouseUp(event)} + onPointerLeave={(event) => onMouseLeave(event)} + onPointerEnter={(event) => onMouseEnter(event)} + {...props} + /> + + + +
+ +
+ + {isSignatureValid === false && ( +
+ + Signature is too small + +
+ )} + + {isSignatureValid && lines.length > 0 && ( +
+ +
+ )} +
+ ); +}; diff --git a/packages/ui/primitives/signature-pad/signature-pad-type.tsx b/packages/ui/primitives/signature-pad/signature-pad-type.tsx new file mode 100644 index 000000000..4685bc6ad --- /dev/null +++ b/packages/ui/primitives/signature-pad/signature-pad-type.tsx @@ -0,0 +1,29 @@ +import { useState } from 'react'; + +import { cn } from '../../lib/utils'; + +export type SignaturePadTypeProps = { + className?: string; + value?: string; + onChange: (_value: string) => void; +}; + +export const SignaturePadType = ({ className, value, onChange }: SignaturePadTypeProps) => { + // Colors don't actually work for text. + const [selectedColor, setSelectedColor] = useState('black'); + + return ( +
+ onChange(event.target.value.trimStart())} + /> + + {/* */} +
+ ); +}; diff --git a/packages/ui/primitives/signature-pad/signature-pad-upload.tsx b/packages/ui/primitives/signature-pad/signature-pad-upload.tsx new file mode 100644 index 000000000..726363c02 --- /dev/null +++ b/packages/ui/primitives/signature-pad/signature-pad-upload.tsx @@ -0,0 +1,166 @@ +import { useRef } from 'react'; + +import { Trans } from '@lingui/react/macro'; +import { motion } from 'framer-motion'; +import { UploadCloudIcon } from 'lucide-react'; + +import { unsafe_useEffectOnce } from '@documenso/lib/client-only/hooks/use-effect-once'; +import { SIGNATURE_CANVAS_DPI } from '@documenso/lib/constants/signatures'; + +import { cn } from '../../lib/utils'; + +const loadImage = async (file: File | undefined): Promise => { + if (!file) { + throw new Error('No file selected'); + } + + if (!file.type.startsWith('image/')) { + throw new Error('Invalid file type'); + } + + if (file.size > 5 * 1024 * 1024) { + throw new Error('Image size should be less than 5MB'); + } + + return new Promise((resolve, reject) => { + const img = new Image(); + const objectUrl = URL.createObjectURL(file); + + img.onload = () => { + URL.revokeObjectURL(objectUrl); + resolve(img); + }; + + img.onerror = () => { + URL.revokeObjectURL(objectUrl); + reject(new Error('Failed to load image')); + }; + + img.src = objectUrl; + }); +}; + +const loadImageOntoCanvas = ( + image: HTMLImageElement, + canvas: HTMLCanvasElement, + ctx: CanvasRenderingContext2D, +): ImageData => { + const scale = Math.min((canvas.width * 0.8) / image.width, (canvas.height * 0.8) / image.height); + + const x = (canvas.width - image.width * scale) / 2; + const y = (canvas.height - image.height * scale) / 2; + + ctx.clearRect(0, 0, canvas.width, canvas.height); + + ctx.save(); + ctx.imageSmoothingEnabled = true; + ctx.imageSmoothingQuality = 'high'; + + ctx.drawImage(image, x, y, image.width * scale, image.height * scale); + + ctx.restore(); + + const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height); + + return imageData; +}; + +export type SignaturePadUploadProps = { + className?: string; + value: string; + onChange: (_signatureDataUrl: string) => void; +}; + +export const SignaturePadUpload = ({ + className, + value, + onChange, + ...props +}: SignaturePadUploadProps) => { + const $el = useRef(null); + const $imageData = useRef(null); + const $fileInput = useRef(null); + + const handleImageUpload = async (event: React.ChangeEvent) => { + try { + const img = await loadImage(event.target.files?.[0]); + + if (!$el.current) return; + + const ctx = $el.current.getContext('2d'); + if (!ctx) return; + + $imageData.current = loadImageOntoCanvas(img, $el.current, ctx); + onChange?.($el.current.toDataURL()); + } catch (error) { + console.error(error); + } + }; + + unsafe_useEffectOnce(() => { + // Todo: Not really sure if this is required for uploaded images. + if ($el.current) { + $el.current.width = $el.current.clientWidth * SIGNATURE_CANVAS_DPI; + $el.current.height = $el.current.clientHeight * SIGNATURE_CANVAS_DPI; + } + + if ($el.current && value) { + const ctx = $el.current.getContext('2d'); + + const { width, height } = $el.current; + + const img = new Image(); + + img.onload = () => { + ctx?.drawImage(img, 0, 0, Math.min(width, img.width), Math.min(height, img.height)); + + const defaultImageData = ctx?.getImageData(0, 0, width, height) || null; + + $imageData.current = defaultImageData; + }; + + img.src = value; + } + }); + + return ( +
+ + + + + $fileInput.current?.click()} + > + {!value && ( + +
+
+ + + Upload Signature + +
+
+
+ )} +
+
+ ); +}; diff --git a/packages/ui/primitives/signature-pad/signature-pad.tsx b/packages/ui/primitives/signature-pad/signature-pad.tsx index 91fd1ca0e..20fbb1aad 100644 --- a/packages/ui/primitives/signature-pad/signature-pad.tsx +++ b/packages/ui/primitives/signature-pad/signature-pad.tsx @@ -1,591 +1,199 @@ -import type { HTMLAttributes, MouseEvent, PointerEvent, TouchEvent } from 'react'; -import { useEffect, useMemo, useRef, useState } from 'react'; +import type { HTMLAttributes } from 'react'; +import { useState } from 'react'; -import { Trans } from '@lingui/react/macro'; -import { Undo2, Upload } from 'lucide-react'; -import type { StrokeOptions } from 'perfect-freehand'; -import { getStroke } from 'perfect-freehand'; +import { KeyboardIcon, UploadCloudIcon } from 'lucide-react'; +import { match } from 'ts-pattern'; -import { unsafe_useEffectOnce } from '@documenso/lib/client-only/hooks/use-effect-once'; -import { Input } from '@documenso/ui/primitives/input'; -import { - Select, - SelectContent, - SelectItem, - SelectTrigger, - SelectValue, -} from '@documenso/ui/primitives/select'; +import { DocumentSignatureType } from '@documenso/lib/constants/document'; +import { isBase64Image } from '@documenso/lib/constants/signatures'; +import { SignatureIcon } from '../../icons/signature'; import { cn } from '../../lib/utils'; -import { getSvgPathFromStroke } from './helper'; -import { Point } from './point'; +import { SignaturePadDraw } from './signature-pad-draw'; +import { SignaturePadType } from './signature-pad-type'; +import { SignaturePadUpload } from './signature-pad-upload'; +import { Tabs, TabsContent, TabsList, TabsTrigger } from './signature-tabs'; -const DPI = 2; - -const isBase64Image = (value: string) => value.startsWith('data:image/png;base64,'); - -const loadImage = async (file: File | undefined): Promise => { - if (!file) { - throw new Error('No file selected'); - } - - if (!file.type.startsWith('image/')) { - throw new Error('Invalid file type'); - } - - if (file.size > 5 * 1024 * 1024) { - throw new Error('Image size should be less than 5MB'); - } - - return new Promise((resolve, reject) => { - const img = new Image(); - const objectUrl = URL.createObjectURL(file); - - img.onload = () => { - URL.revokeObjectURL(objectUrl); - resolve(img); - }; - - img.onerror = () => { - URL.revokeObjectURL(objectUrl); - reject(new Error('Failed to load image')); - }; - - img.src = objectUrl; - }); -}; - -const loadImageOntoCanvas = ( - image: HTMLImageElement, - canvas: HTMLCanvasElement, - ctx: CanvasRenderingContext2D, -): ImageData => { - const scale = Math.min((canvas.width * 0.8) / image.width, (canvas.height * 0.8) / image.height); - - const x = (canvas.width - image.width * scale) / 2; - const y = (canvas.height - image.height * scale) / 2; - - ctx.clearRect(0, 0, canvas.width, canvas.height); - - ctx.save(); - ctx.imageSmoothingEnabled = true; - ctx.imageSmoothingQuality = 'high'; - - ctx.drawImage(image, x, y, image.width * scale, image.height * scale); - - ctx.restore(); - - const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height); - - return imageData; +export type SignaturePadValue = { + type: DocumentSignatureType; + value: string; }; export type SignaturePadProps = Omit, 'onChange'> & { - onChange?: (_signatureDataUrl: string | null) => void; - containerClassName?: string; + value?: string; + onChange?: (_value: SignaturePadValue) => void; + disabled?: boolean; - allowTypedSignature?: boolean; - defaultValue?: string; + + typedSignatureEnabled?: boolean; + uploadSignatureEnabled?: boolean; + drawSignatureEnabled?: boolean; + onValidityChange?: (isValid: boolean) => void; - minCoverageThreshold?: number; }; export const SignaturePad = ({ - className, - containerClassName, - defaultValue, + value = '', onChange, disabled = false, - allowTypedSignature, - onValidityChange, - minCoverageThreshold = 0.01, - ...props + typedSignatureEnabled = true, + uploadSignatureEnabled = true, + drawSignatureEnabled = true, }: SignaturePadProps) => { - const $el = useRef(null); - const $imageData = useRef(null); - const $fileInput = useRef(null); + const [imageSignature, setImageSignature] = useState(isBase64Image(value) ? value : ''); + const [drawSignature, setDrawSignature] = useState(isBase64Image(value) ? value : ''); + const [typedSignature, setTypedSignature] = useState(isBase64Image(value) ? '' : value); - const [isPressed, setIsPressed] = useState(false); - const [lines, setLines] = useState([]); - const [currentLine, setCurrentLine] = useState([]); - const [selectedColor, setSelectedColor] = useState('black'); - const [typedSignature, setTypedSignature] = useState( - defaultValue && !isBase64Image(defaultValue) ? defaultValue : '', + /** + * This is cooked. + * + * Get the first enabled tab that has a signature if possible, otherwise just get + * the first enabled tab. + */ + const [tab, setTab] = useState( + ((): 'draw' | 'text' | 'image' => { + // First passthrough to check to see if there's a signature for a given tab. + if (drawSignatureEnabled && drawSignature) { + return 'draw'; + } + + if (typedSignatureEnabled && typedSignature) { + return 'text'; + } + + if (uploadSignatureEnabled && imageSignature) { + return 'image'; + } + + // Second passthrough to just select the first avaliable tab. + if (drawSignatureEnabled) { + return 'draw'; + } + + if (typedSignatureEnabled) { + return 'text'; + } + + if (uploadSignatureEnabled) { + return 'image'; + } + + throw new Error('No signature enabled'); + })(), ); - const perfectFreehandOptions = useMemo(() => { - const size = $el.current ? Math.min($el.current.height, $el.current.width) * 0.03 : 10; + const onImageSignatureChange = (value: string) => { + setImageSignature(value); - return { - size, - thinning: 0.25, - streamline: 0.5, - smoothing: 0.5, - end: { - taper: size * 2, - }, - } satisfies StrokeOptions; - }, []); - - const checkSignatureValidity = () => { - if ($el.current) { - const ctx = $el.current.getContext('2d'); - - if (ctx) { - const imageData = ctx.getImageData(0, 0, $el.current.width, $el.current.height); - const data = imageData.data; - let filledPixels = 0; - const totalPixels = data.length / 4; - - for (let i = 0; i < data.length; i += 4) { - if (data[i + 3] > 0) filledPixels++; - } - - const filledPercentage = filledPixels / totalPixels; - const isValid = filledPercentage > minCoverageThreshold; - onValidityChange?.(isValid); - - return isValid; - } - } + onChange?.({ + type: DocumentSignatureType.UPLOAD, + value, + }); }; - const onMouseDown = (event: MouseEvent | PointerEvent | TouchEvent) => { - if (event.cancelable) { - event.preventDefault(); - } + const onDrawSignatureChange = (value: string) => { + setDrawSignature(value); - setIsPressed(true); - - if (typedSignature) { - setTypedSignature(''); - if ($el.current) { - const ctx = $el.current.getContext('2d'); - ctx?.clearRect(0, 0, $el.current.width, $el.current.height); - } - } - - const point = Point.fromEvent(event, DPI, $el.current); - - setCurrentLine([point]); + onChange?.({ + type: DocumentSignatureType.DRAW, + value, + }); }; - const onMouseMove = (event: MouseEvent | PointerEvent | TouchEvent) => { - if (event.cancelable) { - event.preventDefault(); - } + const onTypedSignatureChange = (value: string) => { + setTypedSignature(value); - if (!isPressed) { + onChange?.({ + type: DocumentSignatureType.TYPE, + value, + }); + }; + + const onTabChange = (value: 'draw' | 'text' | 'image') => { + if (disabled) { return; } - const point = Point.fromEvent(event, DPI, $el.current); - const lastPoint = currentLine[currentLine.length - 1]; + setTab(value); - if (lastPoint && point.distanceTo(lastPoint) > 5) { - setCurrentLine([...currentLine, point]); - - // Update the canvas here to draw the lines - if ($el.current) { - const ctx = $el.current.getContext('2d'); - - if (ctx) { - ctx.restore(); - ctx.imageSmoothingEnabled = true; - ctx.imageSmoothingQuality = 'high'; - ctx.fillStyle = selectedColor; - - lines.forEach((line) => { - const pathData = new Path2D( - getSvgPathFromStroke(getStroke(line, perfectFreehandOptions)), - ); - - ctx.fill(pathData); - }); - - const pathData = new Path2D( - getSvgPathFromStroke(getStroke([...currentLine, point], perfectFreehandOptions)), - ); - ctx.fill(pathData); - } - } - } + match(value) + .with('draw', () => { + onDrawSignatureChange(drawSignature); + }) + .with('text', () => { + onTypedSignatureChange(typedSignature); + }) + .with('image', () => { + onImageSignatureChange(imageSignature); + }) + .exhaustive(); }; - const onMouseUp = (event: MouseEvent | PointerEvent | TouchEvent, addLine = true) => { - if (event.cancelable) { - event.preventDefault(); - } - - setIsPressed(false); - - const point = Point.fromEvent(event, DPI, $el.current); - - const newLines = [...lines]; - - if (addLine && currentLine.length > 0) { - newLines.push([...currentLine, point]); - setCurrentLine([]); - } - - setLines(newLines); - - if ($el.current && newLines.length > 0) { - const ctx = $el.current.getContext('2d'); - - if (ctx) { - ctx.restore(); - ctx.imageSmoothingEnabled = true; - ctx.imageSmoothingQuality = 'high'; - ctx.fillStyle = selectedColor; - - newLines.forEach((line) => { - const pathData = new Path2D( - getSvgPathFromStroke(getStroke(line, perfectFreehandOptions)), - ); - ctx.fill(pathData); - }); - - const isValidSignature = checkSignatureValidity(); - - if (isValidSignature) { - onChange?.($el.current.toDataURL()); - } - ctx.save(); - } - } - }; - - const onMouseEnter = (event: MouseEvent | PointerEvent | TouchEvent) => { - if (event.cancelable) { - event.preventDefault(); - } - - if ('buttons' in event && event.buttons === 1) { - onMouseDown(event); - } - }; - - const onMouseLeave = (event: MouseEvent | PointerEvent | TouchEvent) => { - if (event.cancelable) { - event.preventDefault(); - } - - if (isPressed) { - onMouseUp(event, true); - } else { - onMouseUp(event, false); - } - }; - - const onClearClick = () => { - if ($el.current) { - const ctx = $el.current.getContext('2d'); - - ctx?.clearRect(0, 0, $el.current.width, $el.current.height); - $imageData.current = null; - } - - if ($fileInput.current) { - $fileInput.current.value = ''; - } - - onChange?.(null); - - setTypedSignature(''); - setLines([]); - setCurrentLine([]); - setIsPressed(false); - }; - - const renderTypedSignature = () => { - if ($el.current && typedSignature) { - const ctx = $el.current.getContext('2d'); - - if (ctx) { - const canvasWidth = $el.current.width; - const canvasHeight = $el.current.height; - const fontFamily = 'Caveat'; - - ctx.clearRect(0, 0, canvasWidth, canvasHeight); - ctx.textAlign = 'center'; - ctx.textBaseline = 'middle'; - ctx.fillStyle = selectedColor; - - // Calculate the desired width (25ch) - const desiredWidth = canvasWidth * 0.85; // 85% of canvas width - - // Start with a base font size - let fontSize = 18; - ctx.font = `${fontSize}px ${fontFamily}`; - - // Measure 10 characters and calculate scale factor - const characterWidth = ctx.measureText('m'.repeat(10)).width; - const scaleFactor = desiredWidth / characterWidth; - - // Apply scale factor to font size - fontSize = fontSize * scaleFactor; - - // Adjust font size if it exceeds canvas width - ctx.font = `${fontSize}px ${fontFamily}`; - - const textWidth = ctx.measureText(typedSignature).width; - - if (textWidth > desiredWidth) { - fontSize = fontSize * (desiredWidth / textWidth); - } - - // Set final font and render text - ctx.font = `${fontSize}px ${fontFamily}`; - ctx.fillText(typedSignature, canvasWidth / 2, canvasHeight / 2); - } - } - }; - - const handleTypedSignatureChange = (event: React.ChangeEvent) => { - const newValue = event.target.value; - - // Deny input while drawing. - if (isPressed) { - return; - } - - if (lines.length > 0) { - setLines([]); - setCurrentLine([]); - } - - setTypedSignature(newValue); - - if ($el.current) { - const ctx = $el.current.getContext('2d'); - ctx?.clearRect(0, 0, $el.current.width, $el.current.height); - } - - if (newValue.trim() !== '') { - onChange?.(newValue); - onValidityChange?.(true); - } else { - onChange?.(null); - onValidityChange?.(false); - } - }; - - const handleImageUpload = async (event: React.ChangeEvent) => { - try { - const img = await loadImage(event.target.files?.[0]); - - if (!$el.current) return; - - const ctx = $el.current.getContext('2d'); - if (!ctx) return; - - $imageData.current = loadImageOntoCanvas(img, $el.current, ctx); - onChange?.($el.current.toDataURL()); - - setLines([]); - setCurrentLine([]); - setTypedSignature(''); - } catch (error) { - console.error(error); - } - }; - - useEffect(() => { - if (typedSignature.trim() !== '' && !isBase64Image(typedSignature)) { - renderTypedSignature(); - onChange?.(typedSignature); - } - }, [typedSignature, selectedColor]); - - const onUndoClick = () => { - if (lines.length === 0 && typedSignature.length === 0) { - return; - } - - if (typedSignature.length > 0) { - const newTypedSignature = typedSignature.slice(0, -1); - setTypedSignature(newTypedSignature); - // You might want to call onChange here as well - // onChange?.(newTypedSignature); - } else { - const newLines = lines.slice(0, -1); - setLines(newLines); - - // Clear and redraw the canvas - if ($el.current) { - const ctx = $el.current.getContext('2d'); - const { width, height } = $el.current; - ctx?.clearRect(0, 0, width, height); - - if (typeof defaultValue === 'string' && $imageData.current) { - ctx?.putImageData($imageData.current, 0, 0); - } - - newLines.forEach((line) => { - const pathData = new Path2D( - getSvgPathFromStroke(getStroke(line, perfectFreehandOptions)), - ); - ctx?.fill(pathData); - }); - - onChange?.($el.current.toDataURL()); - } - } - }; - - useEffect(() => { - if ($el.current) { - $el.current.width = $el.current.clientWidth * DPI; - $el.current.height = $el.current.clientHeight * DPI; - } - - if (defaultValue && typedSignature) { - renderTypedSignature(); - } - }, []); - - unsafe_useEffectOnce(() => { - if ($el.current && typeof defaultValue === 'string') { - const ctx = $el.current.getContext('2d'); - - const { width, height } = $el.current; - - const img = new Image(); - - img.onload = () => { - ctx?.drawImage(img, 0, 0, Math.min(width, img.width), Math.min(height, img.height)); - - const defaultImageData = ctx?.getImageData(0, 0, width, height) || null; - - $imageData.current = defaultImageData; - }; - - img.src = defaultValue; - } - }); + if (!drawSignatureEnabled && !typedSignatureEnabled && !uploadSignatureEnabled) { + return null; + } return ( -
onTabChange(value as 'draw' | 'text' | 'image')} > - + {drawSignatureEnabled && ( + + + Draw + )} - style={{ touchAction: 'none' }} - onPointerMove={(event) => onMouseMove(event)} - onPointerDown={(event) => onMouseDown(event)} - onPointerUp={(event) => onMouseUp(event)} - onPointerLeave={(event) => onMouseLeave(event)} - onPointerEnter={(event) => onMouseEnter(event)} - {...props} - /> - {allowTypedSignature && ( -
0 || typedSignature.length > 0, - })} - > - -
- )} + {typedSignatureEnabled && ( + + + Type + + )} -
-
$fileInput.current?.click()} - > - - - - Upload Signature - -
-
+ {uploadSignatureEnabled && ( + + + Upload + + )} + -
- -
- -
- -
- - {(lines.length > 0 || typedSignature.length > 0) && ( -
- -
- )} -
+ + + + ); }; diff --git a/packages/ui/primitives/signature-pad/signature-render.tsx b/packages/ui/primitives/signature-pad/signature-render.tsx new file mode 100644 index 000000000..ba8c05ec2 --- /dev/null +++ b/packages/ui/primitives/signature-pad/signature-render.tsx @@ -0,0 +1,128 @@ +import { useEffect, useRef } from 'react'; + +import { SIGNATURE_CANVAS_DPI, isBase64Image } from '@documenso/lib/constants/signatures'; + +import { cn } from '../../lib/utils'; + +export type SignatureRenderProps = { + className?: string; + value: string; +}; + +/** + * Renders a typed, uploaded or drawn signature. + */ +export const SignatureRender = ({ className, value }: SignatureRenderProps) => { + const $el = useRef(null); + const $imageData = useRef(null); + + const renderTypedSignature = () => { + if (!$el.current) { + return; + } + + const ctx = $el.current.getContext('2d'); + + if (!ctx) { + return; + } + + ctx.clearRect(0, 0, $el.current.width, $el.current.height); + + const canvasWidth = $el.current.width; + const canvasHeight = $el.current.height; + const fontFamily = 'Caveat'; + + ctx.clearRect(0, 0, canvasWidth, canvasHeight); + ctx.textAlign = 'center'; + ctx.textBaseline = 'middle'; + // ctx.fillStyle = selectedColor; // Todo: Color not implemented... + + // Calculate the desired width (25ch) + const desiredWidth = canvasWidth * 0.85; // 85% of canvas width + + // Start with a base font size + let fontSize = 18; + ctx.font = `${fontSize}px ${fontFamily}`; + + // Measure 10 characters and calculate scale factor + const characterWidth = ctx.measureText('m'.repeat(10)).width; + const scaleFactor = desiredWidth / characterWidth; + + // Apply scale factor to font size + fontSize = fontSize * scaleFactor; + + // Adjust font size if it exceeds canvas width + ctx.font = `${fontSize}px ${fontFamily}`; + + const textWidth = ctx.measureText(value).width; + + if (textWidth > desiredWidth) { + fontSize = fontSize * (desiredWidth / textWidth); + } + + // Set final font and render text + ctx.font = `${fontSize}px ${fontFamily}`; + ctx.fillText(value, canvasWidth / 2, canvasHeight / 2); + }; + + const renderImageSignature = () => { + if (!$el.current || typeof value !== 'string') { + return; + } + + const ctx = $el.current.getContext('2d'); + + if (!ctx) { + return; + } + + ctx.clearRect(0, 0, $el.current.width, $el.current.height); + + const { width, height } = $el.current; + + const img = new Image(); + + img.onload = () => { + // Calculate the scaled dimensions while maintaining aspect ratio + const scale = Math.min(width / img.width, height / img.height); + const scaledWidth = img.width * scale; + const scaledHeight = img.height * scale; + + // Calculate center position + const x = (width - scaledWidth) / 2; + const y = (height - scaledHeight) / 2; + + ctx?.drawImage(img, x, y, scaledWidth, scaledHeight); + + const defaultImageData = ctx?.getImageData(0, 0, width, height) || null; + + $imageData.current = defaultImageData; + }; + + img.src = value; + }; + + useEffect(() => { + if ($el.current) { + $el.current.width = $el.current.clientWidth * SIGNATURE_CANVAS_DPI; + $el.current.height = $el.current.clientHeight * SIGNATURE_CANVAS_DPI; + } + }, []); + + useEffect(() => { + if (isBase64Image(value)) { + renderImageSignature(); + } else { + renderTypedSignature(); + } + }, [value]); + + return ( + + ); +}; diff --git a/packages/ui/primitives/signature-pad/signature-tabs.tsx b/packages/ui/primitives/signature-pad/signature-tabs.tsx new file mode 100644 index 000000000..35b988311 --- /dev/null +++ b/packages/ui/primitives/signature-pad/signature-tabs.tsx @@ -0,0 +1,147 @@ +import * as React from 'react'; + +import { motion } from 'framer-motion'; + +import { cn } from '../../lib/utils'; + +interface TabsProps extends React.HTMLAttributes { + defaultValue?: string; + value?: string; + onValueChange?: (value: string) => void; + children: React.ReactNode; +} + +interface TabsContextValue { + value: string; + onValueChange: (value: string) => void; +} + +const TabsContext = React.createContext(undefined); + +function useTabs() { + const context = React.useContext(TabsContext); + if (!context) { + throw new Error('useTabs must be used within a Tabs provider'); + } + return context; +} + +export function Tabs({ + defaultValue, + value, + onValueChange, + children, + className, + ...props +}: TabsProps) { + const [tabValue, setTabValue] = React.useState(defaultValue || ''); + + const handleValueChange = React.useCallback( + (newValue: string) => { + setTabValue(newValue); + onValueChange?.(newValue); + }, + [onValueChange], + ); + + const contextValue = React.useMemo( + () => ({ + value: value !== undefined ? value : tabValue, + onValueChange: handleValueChange, + }), + [value, tabValue, handleValueChange], + ); + + return ( + +
+ {children} +
+
+ ); +} + +interface TabsListProps extends React.HTMLAttributes { + children: React.ReactNode; +} + +export function TabsList({ children, className, ...props }: TabsListProps) { + return ( +
+ {children} +
+ ); +} + +interface TabsTriggerProps extends React.ButtonHTMLAttributes { + value: string; + icon?: React.ReactNode; + children: React.ReactNode; +} + +export function TabsTrigger({ value, icon, children, className, ...props }: TabsTriggerProps) { + const { value: selectedValue, onValueChange } = useTabs(); + const isSelected = selectedValue === value; + + return ( + + ); +} + +interface TabsContentProps extends React.HTMLAttributes { + value: string; + children: React.ReactNode; +} + +export function TabsContent({ value, children, className, ...props }: TabsContentProps) { + const { value: selectedValue } = useTabs(); + const isSelected = selectedValue === value; + + if (!isSelected) { + return null; + } + + return ( +
+ {children} +
+ ); +} diff --git a/packages/ui/primitives/template-flow/add-template-fields.tsx b/packages/ui/primitives/template-flow/add-template-fields.tsx index 88ae949f2..f82c9656f 100644 --- a/packages/ui/primitives/template-flow/add-template-fields.tsx +++ b/packages/ui/primitives/template-flow/add-template-fields.tsx @@ -54,10 +54,9 @@ import { Popover, PopoverContent, PopoverTrigger } from '@documenso/ui/primitive import { useToast } from '@documenso/ui/primitives/use-toast'; import { getSignerColorStyles, useSignerColors } from '../../lib/signer-colors'; -import { Checkbox } from '../checkbox'; import type { FieldFormType } from '../document-flow/add-fields'; import { FieldAdvancedSettings } from '../document-flow/field-item-advanced-settings'; -import { Form, FormControl, FormField, FormItem, FormLabel } from '../form/form'; +import { Form } from '../form/form'; import { useStep } from '../stepper'; import type { TAddTemplateFieldsFormSchema } from './add-template-fields.types'; @@ -74,7 +73,6 @@ export type AddTemplateFieldsFormProps = { fields: Field[]; onSubmit: (_data: TAddTemplateFieldsFormSchema) => void; teamId?: number; - typedSignatureEnabled?: boolean; }; export const AddTemplateFieldsFormPartial = ({ @@ -84,7 +82,6 @@ export const AddTemplateFieldsFormPartial = ({ fields, onSubmit, teamId, - typedSignatureEnabled, }: AddTemplateFieldsFormProps) => { const { _ } = useLingui(); const { toast } = useToast(); @@ -119,7 +116,6 @@ export const AddTemplateFieldsFormPartial = ({ recipients.find((recipient) => recipient.id === field.recipientId)?.token ?? '', fieldMeta: field.fieldMeta ? ZFieldMetaSchema.parse(field.fieldMeta) : undefined, })), - typedSignatureEnabled: typedSignatureEnabled ?? false, }, }); @@ -483,12 +479,6 @@ export const AddTemplateFieldsFormPartial = ({ form.setValue('fields', updatedFields); }; - const isTypedSignatureEnabled = form.watch('typedSignatureEnabled'); - - const handleTypedSignatureChange = (value: boolean) => { - form.setValue('typedSignatureEnabled', value, { shouldDirty: true }); - }; - return ( <> {showAdvancedSettings && currentField ? ( @@ -662,31 +652,6 @@ export const AddTemplateFieldsFormPartial = ({ )} - ( - - - field.onChange(checked)} - disabled={form.formState.isSubmitting} - /> - - - - Enable Typed Signatures - - - )} - /> -