Compare commits

...

14 Commits

Author SHA1 Message Date
02f36a0eb8 fix: open dialog 2025-07-11 15:31:38 +00:00
ff1343b422 fix: preserve params when you are not signed in 2025-07-11 13:01:07 +00:00
91a38045f7 Merge branch 'main' into feat/billing-page 2025-07-11 11:58:34 +00:00
e04e5a7d2e feat: add direct marketing to billing subscription flow 2025-07-11 11:48:49 +00:00
49c70fc8a8 chore: update docs 2025-07-11 17:02:10 +10:00
4195a871ce chore: update gitginore (#1894) 2025-07-11 13:16:51 +10:00
37ed5ad222 v1.12.2-rc.1 2025-07-11 12:55:56 +10:00
d6c11bd195 fix: sign-able readonly fields (#1885) 2025-07-10 16:47:36 +10:00
cb73d21e05 chore: api tests (#1856) 2025-07-10 12:56:46 +10:00
106f796fea fix: readonly field styling (#1887)
Changes:
- Updating styling of read only fields
- Removed truncation for fields and used overflow hidden instead
2025-07-10 12:35:18 +10:00
9917def0ca v1.12.2-rc.0 2025-07-03 10:31:22 +10:00
cdb9b9ee03 chore: add certificate error logs (#1875)
Add certificate logs
2025-07-03 10:13:12 +10:00
8d1d098e3a v1.12.1 2025-07-03 10:07:54 +10:00
b682d2785f chore: add translations (#1835)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-07-03 10:07:11 +10:00
30 changed files with 3022 additions and 507 deletions

6
.gitignore vendored
View File

@ -52,4 +52,8 @@ yarn-error.log*
!.vscode/extensions.json
# logs
logs.json
logs.json
# claude
.claude
CLAUDE.md

View File

@ -33,7 +33,7 @@ Our new API V2 supports the following typed SDKs:
<Callout type="info">
For the staging API, please use the following base URL:
`https://stg-app.documenso.dev/api/v2-beta/`
`https://stg-app.documenso.com/api/v2-beta/`
</Callout>
🚀 [V2 Announcement](https://documen.so/sdk-blog)

View File

@ -1,4 +1,4 @@
import { useMemo, useState } from 'react';
import { useEffect, useMemo, useState } from 'react';
import { zodResolver } from '@hookform/resolvers/zod';
import { useLingui } from '@lingui/react/macro';
@ -44,12 +44,22 @@ const MotionCard = motion(Card);
export type BillingPlansProps = {
plans: InternalClaimPlans;
selectedPlan?: string | null;
selectedCycle?: 'monthly' | 'yearly' | null;
isFromPricingPage?: boolean;
};
export const BillingPlans = ({ plans }: BillingPlansProps) => {
export const BillingPlans = ({
plans,
selectedPlan,
selectedCycle,
isFromPricingPage,
}: BillingPlansProps) => {
const isMounted = useIsMounted();
const [interval, setInterval] = useState<'monthlyPrice' | 'yearlyPrice'>('yearlyPrice');
const [interval, setInterval] = useState<'monthlyPrice' | 'yearlyPrice'>(
selectedCycle === 'monthly' ? 'monthlyPrice' : 'yearlyPrice',
);
const pricesToDisplay = useMemo(() => {
const prices = [];
@ -85,56 +95,65 @@ export const BillingPlans = ({ plans }: BillingPlansProps) => {
<div className="mt-8 grid gap-8 lg:grid-cols-2 2xl:grid-cols-3">
<AnimatePresence mode="wait">
{pricesToDisplay.map((price) => (
<MotionCard
key={price.id}
initial={{ opacity: isMounted ? 0 : 1, y: isMounted ? 20 : 0 }}
animate={{ opacity: 1, y: 0, transition: { duration: 0.3 } }}
exit={{ opacity: 0, transition: { duration: 0.3 } }}
>
<CardContent className="flex h-full flex-col p-6">
<CardTitle>{price.product.name}</CardTitle>
{pricesToDisplay.map((price) => {
const planId = price.claim.toLowerCase().replace('claim_', '');
const isSelected = selectedPlan && planId === selectedPlan?.toLowerCase();
<div className="text-muted-foreground mt-2 text-lg font-medium">
{price.friendlyPrice + ' '}
<span className="text-xs">
{interval === 'monthlyPrice' ? (
<Trans>per month</Trans>
) : (
<Trans>per year</Trans>
)}
</span>
</div>
return (
<MotionCard
key={price.id}
initial={{ opacity: isMounted ? 0 : 1, y: isMounted ? 20 : 0 }}
animate={{ opacity: 1, y: 0, transition: { duration: 0.3 } }}
exit={{ opacity: 0, transition: { duration: 0.3 } }}
className={isSelected ? 'ring-primary ring-2' : ''}
>
<CardContent className="flex h-full flex-col p-6">
<CardTitle>{price.product.name}</CardTitle>
<div className="text-muted-foreground mt-1.5 text-sm">
{price.product.description}
</div>
{price.product.features && price.product.features.length > 0 && (
<div className="text-muted-foreground mt-4">
<div className="text-sm font-medium">Includes:</div>
<ul className="mt-1 divide-y text-sm">
{price.product.features.map((feature, index) => (
<li key={index} className="py-2">
{feature.name}
</li>
))}
</ul>
<div className="text-muted-foreground mt-2 text-lg font-medium">
{price.friendlyPrice + ' '}
<span className="text-xs">
{interval === 'monthlyPrice' ? (
<Trans>per month</Trans>
) : (
<Trans>per year</Trans>
)}
</span>
</div>
)}
<div className="flex-1" />
<div className="text-muted-foreground mt-1.5 text-sm">
{price.product.description}
</div>
<BillingDialog
priceId={price.id}
planName={price.product.name}
memberCount={price.memberCount}
claim={price.claim}
/>
</CardContent>
</MotionCard>
))}
{price.product.features && price.product.features.length > 0 && (
<div className="text-muted-foreground mt-4">
<div className="text-sm font-medium">Includes:</div>
<ul className="mt-1 divide-y text-sm">
{price.product.features.map((feature, index) => (
<li key={index} className="py-2">
{feature.name}
</li>
))}
</ul>
</div>
)}
<div className="flex-1" />
<BillingDialog
priceId={price.id}
planName={price.product.name}
memberCount={price.memberCount}
claim={price.claim}
isSelected={isSelected || false}
isFromPricingPage={isFromPricingPage}
interval={interval}
/>
</CardContent>
</MotionCard>
);
})}
</AnimatePresence>
</div>
</div>
@ -145,14 +164,26 @@ const BillingDialog = ({
priceId,
planName,
claim,
isSelected,
isFromPricingPage,
interval,
}: {
priceId: string;
planName: string;
memberCount: number;
claim: string;
isSelected?: boolean;
isFromPricingPage?: boolean;
interval: 'monthlyPrice' | 'yearlyPrice';
}) => {
const [isOpen, setIsOpen] = useState(false);
useEffect(() => {
if (isSelected && isFromPricingPage) {
setIsOpen(true);
}
}, [isSelected, isFromPricingPage]);
const { t } = useLingui();
const { toast } = useToast();
@ -227,11 +258,13 @@ const BillingDialog = ({
<DialogContent>
<DialogHeader>
<DialogTitle>
<Trans>Subscribe</Trans>
<Trans>
Subscribe to {planName} {interval === 'monthlyPrice' ? '(Monthly)' : '(Yearly)'}
</Trans>
</DialogTitle>
<DialogDescription>
<Trans>You are about to subscribe to the {planName}</Trans>
<Trans>Choose how to proceed with your subscription</Trans>
</DialogDescription>
</DialogHeader>

View File

@ -10,6 +10,7 @@ import { useRevalidator } from 'react-router';
import { P, match } from 'ts-pattern';
import { unsafe_useEffectOnce } from '@documenso/lib/client-only/hooks/use-effect-once';
import { AUTO_SIGNABLE_FIELD_TYPES } from '@documenso/lib/constants/autosign';
import { DocumentAuth } from '@documenso/lib/types/document-auth';
import { extractInitials } from '@documenso/lib/utils/recipient-formatter';
import { trpc } from '@documenso/trpc/react';
@ -30,13 +31,6 @@ import { DocumentSigningDisclosure } from '~/components/general/document-signing
import { useRequiredDocumentSigningAuthContext } from './document-signing-auth-provider';
import { useRequiredDocumentSigningContext } from './document-signing-provider';
const AUTO_SIGNABLE_FIELD_TYPES: string[] = [
FieldType.NAME,
FieldType.INITIALS,
FieldType.EMAIL,
FieldType.DATE,
];
// The action auth types that are not allowed to be auto signed
//
// Reasoning: If the action auth is a passkey or 2FA, it's likely that the owner of the document

View File

@ -286,6 +286,7 @@ export const DocumentSigningCheckboxField = ({
className="h-3 w-3"
id={`checkbox-${field.id}-${item.id}`}
checked={checkedValues.includes(itemValue)}
disabled={isReadOnly}
onCheckedChange={() => handleCheckboxChange(item.value, item.id)}
/>
{!item.value.includes('empty-value-') && item.value && (
@ -314,7 +315,7 @@ export const DocumentSigningCheckboxField = ({
className="h-3 w-3"
id={`checkbox-${field.id}-${item.id}`}
checked={parsedCheckedValues.includes(itemValue)}
disabled={isLoading}
disabled={isLoading || isReadOnly}
onCheckedChange={() => void handleCheckboxOptionClick(item)}
/>
{!item.value.includes('empty-value-') && item.value && (

View File

@ -131,7 +131,12 @@ export const DocumentSigningFieldContainer = ({
return (
<div className={cn('[container-type:size]')}>
<FieldRootContainer color={RECIPIENT_COLOR_STYLES.green} field={field}>
<FieldRootContainer
color={
field.fieldMeta?.readOnly ? RECIPIENT_COLOR_STYLES.readOnly : RECIPIENT_COLOR_STYLES.green
}
field={field}
>
{!field.inserted && !loading && !readOnlyField && (
<button
type="submit"
@ -140,14 +145,6 @@ export const DocumentSigningFieldContainer = ({
/>
)}
{readOnlyField && (
<button className="bg-background/40 absolute inset-0 z-10 flex h-full w-full items-center justify-center rounded-md text-sm opacity-0 duration-200 group-hover:opacity-100">
<span className="bg-foreground/50 text-background rounded-xl p-2">
<Trans>Read only field</Trans>
</span>
</button>
)}
{type === 'Checkbox' && field.inserted && !loading && !readOnlyField && (
<button
className="absolute -bottom-10 flex items-center justify-evenly rounded-md border bg-gray-900 opacity-0 group-hover:opacity-100"

View File

@ -34,7 +34,7 @@ export const DocumentSigningFieldsInserted = ({
textAlign = 'left',
}: DocumentSigningFieldsInsertedProps) => {
return (
<div className="flex h-full w-full items-center">
<div className="flex h-full w-full items-center overflow-hidden">
<p
className={cn(
'text-foreground w-full text-left text-[clamp(0.425rem,25cqw,0.825rem)] duration-200',

View File

@ -41,6 +41,7 @@ export const DocumentSigningRadioField = ({
const { recipient, targetSigner, isAssistantMode } = useDocumentSigningRecipientContext();
const parsedFieldMeta = ZRadioFieldMeta.parse(field.fieldMeta);
const isReadOnly = parsedFieldMeta.readOnly;
const values = parsedFieldMeta.values?.map((item) => ({
...item,
value: item.value.length > 0 ? item.value : `empty-value-${item.id}`,
@ -164,6 +165,7 @@ export const DocumentSigningRadioField = ({
value={item.value}
id={`option-${field.id}-${item.id}`}
checked={item.checked}
disabled={isReadOnly}
/>
{!item.value.includes('empty-value-') && item.value && (
<Label
@ -187,6 +189,7 @@ export const DocumentSigningRadioField = ({
value={item.value}
id={`option-${field.id}-${item.id}`}
checked={item.value === field.customText}
disabled={isReadOnly}
/>
{!item.value.includes('empty-value-') && item.value && (
<Label

View File

@ -262,9 +262,7 @@ export const DocumentSigningTextField = ({
{field.inserted && (
<DocumentSigningFieldsInserted textAlign={parsedFieldMeta?.textAlign}>
{field.customText.length < 20
? field.customText
: field.customText.substring(0, 20) + '...'}
{field.customText}
</DocumentSigningFieldsInserted>
)}

View File

@ -1,6 +1,7 @@
import { useLingui } from '@lingui/react';
import { Trans } from '@lingui/react/macro';
import { Loader } from 'lucide-react';
import { useSearchParams } from 'react-router';
import type Stripe from 'stripe';
import { match } from 'ts-pattern';
@ -19,9 +20,14 @@ export function meta() {
export default function TeamsSettingBillingPage() {
const { _, i18n } = useLingui();
const [searchParams] = useSearchParams();
const organisation = useCurrentOrganisation();
const selectedPlan = searchParams.get('plan');
const selectedCycle = searchParams.get('cycle') as 'monthly' | 'yearly' | null;
const source = searchParams.get('source');
const { data: subscriptionQuery, isLoading: isLoadingSubscription } =
trpc.billing.subscription.get.useQuery({
organisationId: organisation.id,
@ -48,8 +54,21 @@ export default function TeamsSettingBillingPage() {
// eslint-disable-next-line @typescript-eslint/consistent-type-assertions
(stripeSubscription?.items.data[0].price.product as Stripe.Product | undefined)?.name;
const isFromPricingPage = source === 'pricing';
return (
<div>
{isFromPricingPage && selectedPlan && !subscription && (
<div className="bg-muted mb-4 rounded-lg p-4">
<p className="text-sm">
<Trans>
Select a plan below to upgrade <strong>{organisation.name}</strong> to the{' '}
{selectedPlan} plan
</Trans>
</p>
</div>
)}
<div className="flex flex-row items-end justify-between">
<div>
<h3 className="text-2xl font-semibold">
@ -134,7 +153,14 @@ export default function TeamsSettingBillingPage() {
<hr className="my-4" />
{!subscription && canManageBilling && <BillingPlans plans={plans} />}
{!subscription && canManageBilling && (
<BillingPlans
plans={plans}
selectedPlan={selectedPlan}
selectedCycle={selectedCycle}
isFromPricingPage={source === 'pricing'}
/>
)}
<section className="mt-6">
<OrganisationBillingInvoicesTable

View File

@ -20,6 +20,8 @@ export function meta() {
export async function loader({ request }: Route.LoaderArgs) {
const { isAuthenticated } = await getOptionalSession(request);
const url = new URL(request.url);
const redirectParam = url.searchParams.get('redirect');
// SSR env variables.
const isGoogleSSOEnabled = IS_GOOGLE_SSO_ENABLED;
@ -27,6 +29,9 @@ export async function loader({ request }: Route.LoaderArgs) {
const oidcProviderLabel = OIDC_PROVIDER_LABEL;
if (isAuthenticated) {
if (redirectParam) {
throw redirect(redirectParam);
}
throw redirect('/');
}
@ -34,11 +39,12 @@ export async function loader({ request }: Route.LoaderArgs) {
isGoogleSSOEnabled,
isOIDCSSOEnabled,
oidcProviderLabel,
redirectTo: redirectParam,
};
}
export default function SignIn({ loaderData }: Route.ComponentProps) {
const { isGoogleSSOEnabled, isOIDCSSOEnabled, oidcProviderLabel } = loaderData;
const { isGoogleSSOEnabled, isOIDCSSOEnabled, oidcProviderLabel, redirectTo } = loaderData;
return (
<div className="w-screen max-w-lg px-4">
@ -56,6 +62,7 @@ export default function SignIn({ loaderData }: Route.ComponentProps) {
isGoogleSSOEnabled={isGoogleSSOEnabled}
isOIDCSSOEnabled={isOIDCSSOEnabled}
oidcProviderLabel={oidcProviderLabel}
returnTo={redirectTo || undefined}
/>
{env('NEXT_PUBLIC_DISABLE_SIGNUP') !== 'true' && (

View File

@ -0,0 +1,49 @@
import { redirect } from 'react-router';
import { getOptionalSession } from '@documenso/auth/server/lib/utils/get-session';
import { isPersonalLayout } from '@documenso/lib/utils/organisations';
import { getOrganisations } from '@documenso/trpc/server/organisation-router/get-organisations';
import type { Route } from './+types/billing-redirect';
export async function loader({ request }: Route.LoaderArgs) {
const session = await getOptionalSession(request);
if (!session.isAuthenticated) {
const currentUrl = new URL(request.url);
const redirectParam = encodeURIComponent(currentUrl.pathname + currentUrl.search);
throw redirect(`/signin?redirect=${redirectParam}`);
}
const url = new URL(request.url);
const plan = url.searchParams.get('plan');
const cycle = url.searchParams.get('cycle');
const source = url.searchParams.get('source');
const queryParams = new URLSearchParams();
if (plan) {
queryParams.set('plan', plan);
}
if (cycle) {
queryParams.set('cycle', cycle);
}
if (source) {
queryParams.set('source', source);
}
const queryString = queryParams.toString() ? `?${queryParams.toString()}` : '';
const organisations = await getOrganisations({ userId: session.user.id });
if (isPersonalLayout(organisations)) {
return redirect(`/settings/billing${queryString}`);
}
const personalOrg = organisations.find((org) => org.type === 'PERSONAL') || organisations[0];
if (personalOrg) {
return redirect(`/o/${personalOrg.url}/settings/billing${queryString}`);
}
return redirect('/settings/profile');
}
export default function BillingRedirect() {
return null;
}

View File

@ -101,5 +101,5 @@
"vite-plugin-babel-macros": "^1.0.6",
"vite-tsconfig-paths": "^5.1.4"
},
"version": "1.12.0"
"version": "1.12.2-rc.1"
}

6
package-lock.json generated
View File

@ -1,12 +1,12 @@
{
"name": "@documenso/root",
"version": "1.12.0",
"version": "1.12.2-rc.1",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@documenso/root",
"version": "1.12.0",
"version": "1.12.2-rc.1",
"workspaces": [
"apps/*",
"packages/*"
@ -89,7 +89,7 @@
},
"apps/remix": {
"name": "@documenso/remix",
"version": "1.12.0",
"version": "1.12.2-rc.1",
"dependencies": {
"@documenso/api": "*",
"@documenso/assets": "*",

View File

@ -1,6 +1,6 @@
{
"private": true,
"version": "1.12.0",
"version": "1.12.2-rc.1",
"scripts": {
"build": "turbo run build",
"dev": "turbo run dev --filter=@documenso/remix",

View File

@ -0,0 +1,540 @@
import { expect, test } from '@playwright/test';
import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app';
import { createApiToken } from '@documenso/lib/server-only/public-api/create-api-token';
import { prisma } from '@documenso/prisma';
import { FieldType } from '@documenso/prisma/client';
import {
seedBlankDocument,
seedCompletedDocument,
seedDraftDocument,
seedPendingDocumentWithFullFields,
} from '@documenso/prisma/seed/documents';
import { seedBlankTemplate } from '@documenso/prisma/seed/templates';
import { seedUser } from '@documenso/prisma/seed/users';
const WEBAPP_BASE_URL = NEXT_PUBLIC_WEBAPP_URL();
test.describe.configure({
mode: 'parallel',
});
test.describe('Document Access API V1', () => {
test('should block unauthorized access to documents not owned by the user', async ({
request,
}) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const documentA = await seedBlankDocument(userA, teamA.id);
// User B cannot access User A's document
const resB = await request.get(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(404);
});
test('should block unauthorized access to document download endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const documentA = await seedCompletedDocument(userA, teamA.id, ['test@example.com'], {
createDocumentOptions: { title: 'Document 1 - Completed' },
});
const resB = await request.get(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/download`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(500);
});
test('should block unauthorized access to document delete endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const documentA = await seedBlankDocument(userA, teamA.id);
const resB = await request.delete(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(404);
});
test('should block unauthorized access to document send endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { document: documentA } = await seedPendingDocumentWithFullFields({
owner: userA,
recipients: ['test@example.com'],
teamId: teamA.id,
});
const resB = await request.post(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/send`, {
headers: { Authorization: `Bearer ${tokenB}` },
data: {},
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(500);
});
test('should block unauthorized access to document resend endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: recipientUser } = await seedUser();
const { document: documentA, recipients } = await seedPendingDocumentWithFullFields({
owner: userA,
recipients: [recipientUser.email],
teamId: teamA.id,
});
const resB = await request.post(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/resend`, {
headers: { Authorization: `Bearer ${tokenB}` },
data: {
recipients: [recipients[0].id],
},
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(500);
});
test('should block unauthorized access to document recipients endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const documentA = await seedBlankDocument(userA, teamA.id);
const resB = await request.post(
`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/recipients`,
{
headers: { Authorization: `Bearer ${tokenB}` },
data: { name: 'Test', email: 'test@example.com' },
},
);
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(401);
});
test('should block unauthorized access to PATCH on recipients endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: userRecipient } = await seedUser();
const documentA = await seedDraftDocument(userA, teamA.id, [userRecipient.email]);
const recipient = await prisma.recipient.findFirst({
where: {
documentId: documentA.id,
email: userRecipient.email,
},
});
const patchRes = await request.patch(
`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/recipients/${recipient!.id}`,
{
headers: { Authorization: `Bearer ${tokenB}` },
data: {
name: 'New Name',
email: 'new@example.com',
role: 'SIGNER',
signingOrder: null,
authOptions: {
accessAuth: [],
actionAuth: [],
},
},
},
);
expect(patchRes.ok()).toBeFalsy();
expect(patchRes.status()).toBe(401);
});
test('should block unauthorized access to DELETE on recipients endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: userRecipient } = await seedUser();
const documentA = await seedDraftDocument(userA, teamA.id, [userRecipient.email]);
const recipient = await prisma.recipient.findFirst({
where: {
documentId: documentA.id,
email: userRecipient.email,
},
});
const deleteRes = await request.delete(
`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/recipients/${recipient!.id}`,
{
headers: { Authorization: `Bearer ${tokenB}` },
data: {},
},
);
expect(deleteRes.ok()).toBeFalsy();
expect(deleteRes.status()).toBe(401);
});
test('should block unauthorized access to document fields endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: recipientUser } = await seedUser();
const documentA = await seedDraftDocument(userA, teamA.id, [recipientUser.email]);
const documentRecipient = await prisma.recipient.findFirst({
where: {
documentId: documentA.id,
email: recipientUser.email,
},
});
const resB = await request.post(`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/fields`, {
headers: { Authorization: `Bearer ${tokenB}` },
data: {
recipientId: documentRecipient!.id,
type: 'SIGNATURE',
pageNumber: 1,
pageX: 1,
pageY: 1,
pageWidth: 1,
pageHeight: 1,
},
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(404);
});
test('should block unauthorized access to template get endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const templateA = await seedBlankTemplate(userA, teamA.id);
const resB = await request.get(`${WEBAPP_BASE_URL}/api/v1/templates/${templateA.id}`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(404);
});
test('should block unauthorized access to template delete endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const templateA = await seedBlankTemplate(userA, teamA.id);
const resB = await request.delete(`${WEBAPP_BASE_URL}/api/v1/templates/${templateA.id}`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(404);
});
test('should block unauthorized access to PATCH on fields endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: userRecipient } = await seedUser();
const documentA = await seedDraftDocument(userA, teamA.id, [userRecipient.email]);
const recipient = await prisma.recipient.findFirst({
where: {
documentId: documentA.id,
email: userRecipient.email,
},
});
const field = await prisma.field.create({
data: {
documentId: documentA.id,
recipientId: recipient!.id,
type: FieldType.TEXT,
page: 1,
positionX: 5,
positionY: 5,
width: 10,
height: 5,
customText: '',
inserted: false,
fieldMeta: {
type: 'text',
label: 'Default Text Field',
},
},
});
const patchRes = await request.patch(
`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/fields/${field.id}`,
{
headers: { Authorization: `Bearer ${tokenB}` },
data: {
recipientId: recipient!.id,
type: FieldType.TEXT,
pageNumber: 1,
pageX: 99,
pageY: 99,
pageWidth: 99,
pageHeight: 99,
fieldMeta: {
type: 'text',
label: 'My new field',
},
},
},
);
expect(patchRes.ok()).toBeFalsy();
expect(patchRes.status()).toBe(401);
});
test('should block unauthorized access to DELETE on fields endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const { user: userRecipient } = await seedUser();
const documentA = await seedDraftDocument(userA, teamA.id, [userRecipient.email]);
const recipient = await prisma.recipient.findFirst({
where: {
documentId: documentA.id,
email: userRecipient.email,
},
});
const field = await prisma.field.create({
data: {
documentId: documentA.id,
recipientId: recipient!.id,
type: FieldType.NUMBER,
page: 1,
positionX: 5,
positionY: 5,
width: 10,
height: 5,
customText: '',
inserted: false,
fieldMeta: {
type: 'number',
label: 'Default Number Field',
},
},
});
const deleteRes = await request.delete(
`${WEBAPP_BASE_URL}/api/v1/documents/${documentA.id}/fields/${field.id}`,
{
headers: { Authorization: `Bearer ${tokenB}` },
data: {},
},
);
expect(deleteRes.ok()).toBeFalsy();
expect(deleteRes.status()).toBe(401);
});
test('should block unauthorized access to documents list endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
await seedBlankDocument(userA, teamA.id);
const resB = await request.get(`${WEBAPP_BASE_URL}/api/v1/documents`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
const reqData = await resB.json();
expect(resB.ok()).toBeTruthy();
expect(resB.status()).toBe(200);
expect(reqData.documents.every((doc: { userId: number }) => doc.userId !== userA.id)).toBe(
true,
);
expect(reqData.documents.length).toBe(0);
expect(reqData.totalPages).toBe(0);
});
test('should block unauthorized access to templates list endpoint', async ({ request }) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
await seedBlankTemplate(userA, teamA.id);
const resB = await request.get(`${WEBAPP_BASE_URL}/api/v1/templates`, {
headers: { Authorization: `Bearer ${tokenB}` },
});
const reqData = await resB.json();
expect(resB.ok()).toBeTruthy();
expect(resB.status()).toBe(200);
expect(reqData.templates.every((tpl: { userId: number }) => tpl.userId !== userA.id)).toBe(
true,
);
expect(reqData.templates.length).toBe(0);
expect(reqData.totalPages).toBe(0);
});
test('should block unauthorized access to create-document-from-template endpoint', async ({
request,
}) => {
const { user: userA, team: teamA } = await seedUser();
const { user: userB, team: teamB } = await seedUser();
const { token: tokenB } = await createApiToken({
userId: userB.id,
teamId: teamB.id,
tokenName: 'userB',
expiresIn: null,
});
const templateA = await seedBlankTemplate(userA, teamA.id);
const resB = await request.post(
`${WEBAPP_BASE_URL}/api/v1/templates/${templateA.id}/create-document`,
{
headers: {
Authorization: `Bearer ${tokenB}`,
'Content-Type': 'application/json',
},
data: {
title: 'Should not work',
recipients: [{ name: 'Test user', email: 'test@example.com' }],
meta: {
subject: 'Test',
message: 'Test',
timezone: 'UTC',
dateFormat: 'yyyy-MM-dd',
redirectUrl: 'https://example.com',
},
},
},
);
expect(resB.ok()).toBeFalsy();
expect(resB.status()).toBe(401);
});
});

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,100 @@
import { expect, test } from '@playwright/test';
import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app';
import {
seedBlankDocument,
seedCompletedDocument,
seedPendingDocument,
} from '@documenso/prisma/seed/documents';
import { seedUser } from '@documenso/prisma/seed/users';
import { apiSignin } from '../fixtures/authentication';
test.describe.configure({
mode: 'parallel',
});
test.describe('Unauthorized Access to Documents', () => {
test('should block unauthorized access to the draft document page', async ({ page }) => {
const { user, team } = await seedUser();
const document = await seedBlankDocument(user, team.id);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/documents`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/documents/${document.id}`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
test('should block unauthorized access to the draft document edit page', async ({ page }) => {
const { user, team } = await seedUser();
const document = await seedBlankDocument(user, team.id);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/documents/${document.id}/edit`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/documents/${document.id}/edit`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
test('should block unauthorized access to the pending document page', async ({ page }) => {
const { user, team } = await seedUser();
const { user: recipient } = await seedUser();
const document = await seedPendingDocument(user, team.id, [recipient]);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/documents/${document.id}`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/documents/${document.id}`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
test('should block unauthorized access to pending document edit page', async ({ page }) => {
const { user, team } = await seedUser();
const { user: recipient } = await seedUser();
const document = await seedPendingDocument(user, team.id, [recipient]);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/documents/${document.id}/edit`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/documents/${document.id}/edit`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
test('should block unauthorized access to completed document page', async ({ page }) => {
const { user, team } = await seedUser();
const { user: recipient } = await seedUser();
const document = await seedCompletedDocument(user, team.id, [recipient]);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/documents/${document.id}`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/documents/${document.id}`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
});

View File

@ -0,0 +1,45 @@
import { expect, test } from '@playwright/test';
import { NEXT_PUBLIC_WEBAPP_URL } from '@documenso/lib/constants/app';
import { seedBlankTemplate } from '@documenso/prisma/seed/templates';
import { seedUser } from '@documenso/prisma/seed/users';
import { apiSignin } from '../fixtures/authentication';
test.describe.configure({
mode: 'parallel',
});
test.describe('Unauthorized Access to Templates', () => {
test('should block unauthorized access to the template page', async ({ page }) => {
const { user, team } = await seedUser();
const template = await seedBlankTemplate(user, team.id);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/templates/${template.id}`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/templates/${template.id}`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
test('should block unauthorized access to the template edit page', async ({ page }) => {
const { user, team } = await seedUser();
const template = await seedBlankTemplate(user, team.id);
const { user: unauthorizedUser } = await seedUser();
await apiSignin({
page,
email: unauthorizedUser.email,
redirectPath: `/t/${team.url}/templates/${template.id}/edit`,
});
await page.goto(`${NEXT_PUBLIC_WEBAPP_URL()}/t/${team.url}/templates/${template.id}/edit`);
await expect(page.getByRole('heading', { name: 'Oops! Something went wrong.' })).toBeVisible();
});
});

View File

@ -0,0 +1,8 @@
import { FieldType } from '@prisma/client';
export const AUTO_SIGNABLE_FIELD_TYPES: FieldType[] = [
FieldType.NAME,
FieldType.INITIALS,
FieldType.EMAIL,
FieldType.DATE,
];

View File

@ -117,7 +117,12 @@ export const sealDocument = async ({
? await getCertificatePdf({
documentId,
language: document.documentMeta?.language,
}).catch(() => null)
}).catch((e) => {
console.log('Failed to get certificate PDF');
console.error(e);
return null;
})
: null;
const doc = await PDFDocument.load(pdfData);

View File

@ -1,5 +1,6 @@
import { DocumentStatus, FieldType, RecipientRole, SigningStatus } from '@prisma/client';
import { DateTime } from 'luxon';
import { isDeepEqual } from 'remeda';
import { match } from 'ts-pattern';
import { validateCheckboxField } from '@documenso/lib/advanced-fields-validation/validate-checkbox';
@ -10,6 +11,7 @@ import { validateTextField } from '@documenso/lib/advanced-fields-validation/val
import { fromCheckboxValue } from '@documenso/lib/universal/field-checkbox';
import { prisma } from '@documenso/prisma';
import { AUTO_SIGNABLE_FIELD_TYPES } from '../../constants/autosign';
import { DEFAULT_DOCUMENT_DATE_FORMAT } from '../../constants/date-formats';
import { DEFAULT_DOCUMENT_TIME_ZONE } from '../../constants/time-zones';
import { DOCUMENT_AUDIT_LOG_TYPE } from '../../types/document-audit-logs';
@ -205,6 +207,29 @@ export const signFieldWithToken = async ({
throw new Error('Typed signatures are not allowed. Please draw your signature');
}
if (field.fieldMeta?.readOnly && !AUTO_SIGNABLE_FIELD_TYPES.includes(field.type)) {
// !: This is a bit of a hack at the moment, readonly fields with default values
// !: should be inserted with their default value on document creation instead of
// !: this weird programattic approach. Until that's fixed though this will verify
// !: that the programmatic signed value is only that of its default.
const isAutomaticSigningValueValid = match(field.fieldMeta)
.with({ type: 'text' }, (meta) => customText === meta.text)
.with({ type: 'number' }, (meta) => customText === meta.value)
.with({ type: 'checkbox' }, (meta) =>
isDeepEqual(
fromCheckboxValue(customText ?? ''),
meta.values?.filter((v) => v.checked).map((v) => v.value) ?? [],
),
)
.with({ type: 'radio' }, (meta) => customText === meta.values?.find((v) => v.checked)?.value)
.with({ type: 'dropdown' }, (meta) => customText === meta.defaultValue)
.otherwise(() => false);
if (!isAutomaticSigningValueValid) {
throw new Error('Field is read only and only accepts its default value for signing.');
}
}
const assistant = recipient.role === RecipientRole.ASSISTANT ? recipient : undefined;
return await prisma.$transaction(async (tx) => {

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: de\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: German\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@ -75,12 +75,12 @@ msgstr "{0, plural, one {# Zeichen über dem Limit} other {# Zeichen über dem L
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr ""
msgstr "{0, plural, one {# Dokument} other {# Dokumente}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr ""
msgstr "{0, plural, one {# Ordner} other {# Ordner}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
@ -95,7 +95,7 @@ msgstr "{0, plural, one {# Team} other {# Teams}}"
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr ""
msgstr "{0, plural, one {# Vorlage} other {# Vorlagen}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -313,10 +313,6 @@ msgstr "{prefix} hat den Titel des Dokuments aktualisiert"
msgid "{prefix} updated the document visibility"
msgstr "{prefix} hat die Sichtbarkeit des Dokuments aktualisiert"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} viewed the document"
msgstr ""
#: apps/remix/app/components/general/direct-template/direct-template-page.tsx
msgid "{recipientActionVerb} document"
msgstr "{recipientActionVerb} Dokument"
@ -774,7 +770,7 @@ msgstr "Aktiv"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr ""
msgstr "Aktive Sitzungen"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
@ -1345,7 +1341,7 @@ msgstr "Sind Sie sicher, dass Sie den folgenden Antrag löschen möchten?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr ""
msgstr "Möchten Sie diesen Ordner wirklich löschen?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
@ -1771,6 +1767,7 @@ msgstr "Klicken Sie hier, um zu beginnen"
#: 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"
@ -2164,11 +2161,11 @@ msgstr "Dokument aus der Vorlage erstellen"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr ""
msgstr "Ordner erstellen"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr ""
msgstr "Ordner erstellen"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
@ -2181,7 +2178,7 @@ msgstr "Gruppen erstellen"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr ""
msgstr "Neuen Ordner erstellen"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
@ -2303,11 +2300,11 @@ msgstr "CSV-Struktur"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr ""
msgstr "Kumulative MAU (angemeldet)"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr ""
msgstr "Aktuell"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
@ -2447,7 +2444,7 @@ msgstr "Dokument löschen"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr ""
msgstr "Ordner löschen"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
@ -2752,6 +2749,11 @@ msgstr "Externe ID des Dokuments aktualisiert"
msgid "Document found in your account"
msgstr "Dokument in Ihrem Konto gefunden"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.logs.tsx
msgid "Document ID"
@ -2870,10 +2872,6 @@ msgstr "Dokumenten-Upload deaktiviert aufgrund unbezahlter Rechnungen"
msgid "Document uploaded"
msgstr "Dokument hochgeladen"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document viewed"
msgstr ""
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Viewed"
msgstr "Dokument angesehen"
@ -3194,7 +3192,7 @@ msgstr "Beigefügte Dokument"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr ""
msgstr "Geben Sie einen Namen für Ihren neuen Ordner ein. Ordner helfen Ihnen, Ihre Dateien zu organisieren."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
@ -3334,7 +3332,7 @@ msgstr "Fehler beim Erstellen des Abonnementsanspruchs."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr ""
msgstr "Ordner konnte nicht gelöscht werden"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
@ -3346,7 +3344,7 @@ msgstr "Fehler beim Laden des Dokuments"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr ""
msgstr "Ordner konnte nicht verschoben werden"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
@ -3354,7 +3352,7 @@ msgstr "Dokument konnte nicht erneut versiegelt werden"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr ""
msgstr "Sitzung konnte nicht widerrufen werden"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
@ -3362,7 +3360,7 @@ msgstr "Einstellungen konnten nicht gespeichert werden."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr ""
msgstr "Fehler beim Abmelden aller Sitzungen"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
@ -3466,15 +3464,15 @@ msgstr "Ordner erfolgreich erstellt"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr ""
msgstr "Ordner erfolgreich gelöscht"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr ""
msgstr "Ordner erfolgreich verschoben"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr ""
msgstr "Ordnername"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3714,6 +3712,10 @@ msgstr "Hallo, {userName} <0>({userEmail})</0>"
msgid "Hide"
msgstr "Ausblenden"
#: apps/remix/app/components/general/document/document-history-sheet.tsx
msgid "Hide additional information"
msgstr "Zusätzliche Informationen ausblenden"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3723,7 +3725,7 @@ msgstr "Startseite"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr ""
msgstr "Startseite (kein Ordner)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
@ -3972,7 +3974,7 @@ msgstr "Die letzten 7 Tage"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr ""
msgstr "Zuletzt aktiv"
#: apps/remix/app/components/general/template/template-page-view-information.tsx
#: apps/remix/app/components/general/document/document-page-view-information.tsx
@ -4125,7 +4127,7 @@ msgstr "Verwalten Sie Berechtigungen und Zugangskontrollen"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr ""
msgstr "Sitzungen verwalten"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
@ -4137,10 +4139,10 @@ msgstr "Abonnement verwalten"
msgid "Manage the {0} organisation"
msgstr "Verwalten Sie die {0} Organisation"
#. placeholder {1}: organisation.name
#. placeholder {0}: organisation.name
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage the {1} organisation subscription"
msgstr ""
msgid "Manage the {0} organisation subscription"
msgstr "Verwalten Sie das Abonnement der {0} Organisation"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups._index.tsx
msgid "Manage the custom groups of members for your organisation."
@ -4206,7 +4208,7 @@ msgstr "MAU (hat Dokument abgeschlossen)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr ""
msgstr "MAU (angemeldet)"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
@ -4295,7 +4297,7 @@ msgstr "Dokument in Ordner verschieben"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr ""
msgstr "Ordner verschieben"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
@ -4312,7 +4314,7 @@ msgstr "Es können mehrere Zugriffsmethoden ausgewählt werden."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr ""
msgstr "Mein Ordner"
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/components/tables/settings-security-passkey-table.tsx
@ -4405,12 +4407,12 @@ msgstr "Keine aktiven Entwürfe"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr ""
msgstr "Keine Ordner gefunden"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr ""
msgstr "Keine Ordner gefunden, die \"{searchTerm}\" entsprechen"
#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx
#: apps/remix/app/components/embed/embed-document-rejected.tsx
@ -4723,7 +4725,7 @@ msgstr "Organisationen, in denen der Benutzer Mitglied ist."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr ""
msgstr "Organisiere deine Dokumente"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
@ -4731,7 +4733,7 @@ msgstr "Organisieren Sie Ihre Mitglieder in Gruppen, die Teams zugewiesen werden
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr ""
msgstr "Organisiere deine Vorlagen"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
@ -4910,7 +4912,7 @@ msgstr "Wählen Sie eine der folgenden Vereinbarungen aus und beginnen Sie das S
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr ""
msgstr "Anheften"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
@ -5466,7 +5468,7 @@ msgstr "Zugriff widerrufen"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr ""
msgstr "Alle Sitzungen widerrufen"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
@ -5544,7 +5546,7 @@ msgstr "Dokumente suchen..."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr ""
msgstr "Ordner durchsuchen..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
@ -5572,7 +5574,7 @@ msgstr "Auswählen"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr ""
msgstr "Wählen Sie ein Ziel für diesen Ordner aus."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
@ -5629,7 +5631,7 @@ msgstr "Gruppen auswählen"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr ""
msgstr "Mitgliedsgruppen auswählen, die dem Team hinzugefügt werden sollen."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
@ -5753,11 +5755,11 @@ msgstr "Gesendet"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr ""
msgstr "Sitzung widerrufen"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr ""
msgstr "Sitzungen wurden widerrufen"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
@ -5812,6 +5814,10 @@ msgstr "Teilen Sie Ihre Unterzeichnungserfahrung!"
msgid "Show"
msgstr "Anzeigen"
#: 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
#: packages/ui/primitives/document-flow/add-signers.tsx
msgid "Show advanced settings"
@ -6627,8 +6633,7 @@ msgid "The following team has been deleted. You will no longer be able to access
msgstr "Das folgende Team wurde gelöscht. Sie können nicht mehr auf dieses Team und seine Dokumente zugreifen."
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
msgid ""
"The organisation group you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation group you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Die Organisationsgruppe, nach der Sie suchen, wurde möglicherweise entfernt, umbenannt oder hat möglicherweise nie existiert."
@ -6637,14 +6642,12 @@ msgid "The organisation role that will be applied to all members in this group."
msgstr "Die Organisationsrolle, die auf alle Mitglieder in dieser Gruppe angewendet wird."
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Die Organisation, nach der Sie suchen, wurde möglicherweise entfernt, umbenannt oder hat möglicherweise nie existiert."
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Die Organisation, nach der Sie suchen, wurde möglicherweise entfernt, umbenannt oder hat möglicherweise nie existiert."
@ -6728,14 +6731,12 @@ msgid "The team email <0>{teamEmail}</0> has been removed from the following tea
msgstr "Die Team-E-Mail <0>{teamEmail}</0> wurde aus dem folgenden Team entfernt"
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The team you are looking for may have been removed, renamed or may have never\n"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Das Team, das Sie suchen, wurde möglicherweise entfernt, umbenannt oder hat möglicherweise nie existiert."
#: 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"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Das Team, das Sie suchen, könnte entfernt, umbenannt oder nie existiert haben."
@ -6773,8 +6774,7 @@ msgid "The URL for Documenso to send webhook events to."
msgstr "Die URL für Documenso, um Webhook-Ereignisse zu senden."
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
msgid ""
"The user you are looking for may have been removed, renamed or may have never\n"
msgid "The user you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Der Benutzer, nach dem Sie suchen, wurde möglicherweise entfernt, umbenannt oder hat möglicherweise nie existiert."
@ -6930,7 +6930,7 @@ msgstr "Dieses Feld kann nicht geändert oder gelöscht werden. Wenn Sie den dir
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr ""
msgstr "Dieser Ordner enthält mehrere Elemente. Wenn Sie ihn löschen, werden auch alle Elemente im Ordner gelöscht, einschließlich verschachtelter Ordner und deren Inhalt."
#: 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."
@ -7012,7 +7012,7 @@ msgstr "Diese werden NUR Funktionsflags zurückspielen, die auf wahr gesetzt sin
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr ""
msgstr "Dies meldet Sie auf allen anderen Geräten ab. Sie müssen sich erneut auf diesen Geräten anmelden, um Ihr Konto weiter zu nutzen."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
@ -7241,6 +7241,7 @@ msgid "Unable to join this organisation at this time."
msgstr "Zurzeit kann dieser Organisation nicht beigetreten werden."
#: 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"
@ -7315,7 +7316,7 @@ msgstr "Unbegrenzte Dokumente, API und mehr"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr ""
msgstr "Lösen"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
@ -7662,7 +7663,7 @@ msgstr "Sehen Sie sich alle Sicherheitsaktivitäten in Ihrem Konto an."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr ""
msgstr "Alle aktiven Sitzungen Ihres Kontos anzeigen und verwalten."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
@ -8009,8 +8010,11 @@ msgstr "Wir konnten Ihre E-Mail derzeit nicht verifizieren."
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."
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: 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
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."
@ -8724,3 +8728,4 @@ msgstr "Ihr Token wurde erfolgreich erstellt! Stellen Sie sicher, dass Sie es ko
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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."

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: es\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: Spanish\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@ -75,12 +75,12 @@ msgstr "{0, plural, one {# carácter sobre el límite} other {# caracteres sobre
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr ""
msgstr "{0, plural, one {# documento} other {# documentos}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr ""
msgstr "{0, plural, one {# carpeta} other {# carpetas}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
@ -95,7 +95,7 @@ msgstr "{0, plural, one {# equipo} other {# equipos}}"
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr ""
msgstr "{0, plural, one {# plantilla} other {# plantillas}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -313,10 +313,6 @@ msgstr "{prefix} actualizó el título del documento"
msgid "{prefix} updated the document visibility"
msgstr "{prefix} actualizó la visibilidad del documento"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} viewed the document"
msgstr ""
#: apps/remix/app/components/general/direct-template/direct-template-page.tsx
msgid "{recipientActionVerb} document"
msgstr "{recipientActionVerb} documento"
@ -774,7 +770,7 @@ msgstr "Activo"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr ""
msgstr "Sesiones activas"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
@ -1345,7 +1341,7 @@ msgstr "¿Estás seguro de que quieres eliminar la siguiente solicitud?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr ""
msgstr "¿Está seguro de que quiere eliminar esta carpeta?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
@ -1771,6 +1767,7 @@ msgstr "Haga clic aquí para comenzar"
#: 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"
@ -2164,11 +2161,11 @@ msgstr "Crear documento a partir de la plantilla"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr ""
msgstr "Crear carpeta"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr ""
msgstr "Crear Carpeta"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
@ -2181,7 +2178,7 @@ msgstr "Crear Grupos"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr ""
msgstr "Crear Nueva Carpeta"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
@ -2303,11 +2300,11 @@ msgstr "Estructura CSV"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr ""
msgstr "MAU acumulativo (con sesión iniciada)"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr ""
msgstr "Actual"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
@ -2447,7 +2444,7 @@ msgstr "Eliminar Documento"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr ""
msgstr "Eliminar Carpeta"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
@ -2752,6 +2749,11 @@ msgstr "ID externo del documento actualizado"
msgid "Document found in your account"
msgstr "Documento encontrado en tu cuenta"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.logs.tsx
msgid "Document ID"
@ -2870,10 +2872,6 @@ msgstr "La carga de documentos está deshabilitada debido a facturas impagadas"
msgid "Document uploaded"
msgstr "Documento subido"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document viewed"
msgstr ""
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Viewed"
msgstr "Documento visto"
@ -3194,7 +3192,7 @@ msgstr "Documento Adjunto"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr ""
msgstr "Ingrese un nombre para su nueva carpeta. Las carpetas le ayudan a organizar sus elementos."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
@ -3334,7 +3332,7 @@ msgstr "Error al crear reclamación de suscripción."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr ""
msgstr "Error al eliminar la carpeta"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
@ -3346,7 +3344,7 @@ msgstr "Error al cargar el documento"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr ""
msgstr "Error al mover la carpeta"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
@ -3354,7 +3352,7 @@ msgstr "Falló al volver a sellar el documento"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr ""
msgstr "Error al revocar la sesión"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
@ -3362,7 +3360,7 @@ msgstr "Fallo al guardar configuraciones."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr ""
msgstr "Error al cerrar sesión en todas las sesiones"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
@ -3466,15 +3464,15 @@ msgstr "Carpeta creada exitosamente"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr ""
msgstr "Carpeta eliminada correctamente"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr ""
msgstr "Carpeta movida correctamente"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr ""
msgstr "Nombre de la Carpeta"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3714,6 +3712,10 @@ msgstr "Hola, {userName} <0>({userEmail})</0>"
msgid "Hide"
msgstr "Ocultar"
#: apps/remix/app/components/general/document/document-history-sheet.tsx
msgid "Hide additional information"
msgstr "Ocultar información adicional"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3723,7 +3725,7 @@ msgstr "Inicio"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr ""
msgstr "Inicio (Sin Carpeta)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
@ -3972,7 +3974,7 @@ msgstr "Últimos 7 días"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr ""
msgstr "Última actividad"
#: apps/remix/app/components/general/template/template-page-view-information.tsx
#: apps/remix/app/components/general/document/document-page-view-information.tsx
@ -4125,7 +4127,7 @@ msgstr "Gestiona permisos y controles de acceso"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr ""
msgstr "Gestionar sesiones"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
@ -4137,10 +4139,10 @@ msgstr "Gestionar suscripción"
msgid "Manage the {0} organisation"
msgstr "Gestionar la organización {0}"
#. placeholder {1}: organisation.name
#. placeholder {0}: organisation.name
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage the {1} organisation subscription"
msgstr ""
msgid "Manage the {0} organisation subscription"
msgstr "Gestionar la suscripción de la organización {0}"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups._index.tsx
msgid "Manage the custom groups of members for your organisation."
@ -4206,7 +4208,7 @@ msgstr "MAU (documento completado)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr ""
msgstr "MAU (con sesión iniciada)"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
@ -4295,7 +4297,7 @@ msgstr "Mover Documento a Carpeta"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr ""
msgstr "Mover Carpeta"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
@ -4312,7 +4314,7 @@ msgstr "Se pueden seleccionar varios métodos de acceso."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr ""
msgstr "Mi Carpeta"
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/components/tables/settings-security-passkey-table.tsx
@ -4405,12 +4407,12 @@ msgstr "No hay borradores activos"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr ""
msgstr "No se encontraron carpetas"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr ""
msgstr "No se encontraron carpetas que coincidan con \"{searchTerm}\""
#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx
#: apps/remix/app/components/embed/embed-document-rejected.tsx
@ -4723,7 +4725,7 @@ msgstr "Organizaciones de las que el usuario es miembro."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr ""
msgstr "Organiza tus documentos"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
@ -4731,7 +4733,7 @@ msgstr "Organiza a tus miembros en grupos que se puedan asignar a equipos"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr ""
msgstr "Organiza tus plantillas"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
@ -4910,7 +4912,7 @@ msgstr "Elige cualquiera de los siguientes acuerdos a continuación y comience a
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr ""
msgstr "Fijar"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
@ -5466,7 +5468,7 @@ msgstr "Revocar acceso"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr ""
msgstr "Revocar todas las sesiones"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
@ -5544,7 +5546,7 @@ msgstr "Buscar documentos..."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr ""
msgstr "Buscar carpetas..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
@ -5572,7 +5574,7 @@ msgstr "Seleccionar"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr ""
msgstr "Selecciona un destino para esta carpeta."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
@ -5629,7 +5631,7 @@ msgstr "Seleccionar grupos"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr ""
msgstr "Seleccionar grupos de miembros para añadir al equipo."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
@ -5753,11 +5755,11 @@ msgstr "Enviado"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr ""
msgstr "Sesión revocada"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr ""
msgstr "Las sesiones han sido revocadas"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
@ -5812,6 +5814,10 @@ msgstr "¡Comparte tu experiencia de firma!"
msgid "Show"
msgstr "Mostrar"
#: 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
#: packages/ui/primitives/document-flow/add-signers.tsx
msgid "Show advanced settings"
@ -6627,8 +6633,7 @@ msgid "The following team has been deleted. You will no longer be able to access
msgstr "El siguiente equipo ha sido eliminado. Ya no podrá acceder a este equipo y sus documentos"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
msgid ""
"The organisation group you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation group you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "El grupo de organización que está buscando puede haber sido eliminado, renombrado o puede que nunca haya existido."
@ -6637,14 +6642,12 @@ msgid "The organisation role that will be applied to all members in this group."
msgstr "El rol de organización que se aplicará a todos los miembros de este grupo."
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "La organización que está buscando puede haber sido eliminada, renombrada o puede que nunca haya existido."
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "La organización que está buscando puede haber sido eliminada, renombrada o puede que nunca haya existido."
@ -6728,17 +6731,14 @@ msgid "The team email <0>{teamEmail}</0> has been removed from the following tea
msgstr "El correo electrónico del equipo <0>{teamEmail}</0> ha sido eliminado del siguiente equipo"
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The team you are looking for may have been removed, renamed or may have never\n"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "El equipo que está buscando puede haber sido eliminado, renombrado o puede que nunca haya existido."
#: 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"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"El equipo que buscas puede haber sido eliminado, renombrado o quizás nunca\n"
msgstr "El equipo que buscas puede haber sido eliminado, renombrado o quizás nunca\n"
" existió."
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
@ -6775,8 +6775,7 @@ msgid "The URL for Documenso to send webhook events to."
msgstr "La URL para Documenso para enviar eventos de webhook."
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
msgid ""
"The user you are looking for may have been removed, renamed or may have never\n"
msgid "The user you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "El usuario que está buscando puede haber sido eliminado, renombrado o puede que nunca haya existido."
@ -6932,7 +6931,7 @@ msgstr "Este campo no se puede modificar ni eliminar. Cuando comparta el enlace
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr ""
msgstr "Esta carpeta contiene múltiples elementos. Eliminándola también se eliminarán todos los elementos de la carpeta, incluidas las carpetas anidadas y sus contenidos."
#: 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."
@ -7014,7 +7013,7 @@ msgstr "Esto solo retroalimentará las banderas de características que estén c
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr ""
msgstr "Esto cerrará la sesión en todos los demás dispositivos. Necesitarás iniciar sesión nuevamente en esos dispositivos para continuar usando tu cuenta."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
@ -7243,6 +7242,7 @@ msgid "Unable to join this organisation at this time."
msgstr "No se puede unirse a esta organización en este momento."
#: 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"
@ -7317,7 +7317,7 @@ msgstr "Documentos ilimitados, API y más"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr ""
msgstr "Desanclar"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
@ -7664,7 +7664,7 @@ msgstr "Ver toda la actividad de seguridad relacionada con tu cuenta."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr ""
msgstr "Ver y gestionar todas las sesiones activas de tu cuenta."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
@ -8011,8 +8011,11 @@ msgstr "No pudimos verificar tu correo electrónico en este momento."
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."
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: 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
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."
@ -8726,3 +8729,4 @@ msgstr "¡Tu token se creó con éxito! ¡Asegúrate de copiarlo porque no podr
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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."

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: fr\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: French\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
@ -75,12 +75,12 @@ msgstr "{0, plural, one {# caractère au-dessus de la limite} other {# caractèr
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr ""
msgstr "{0, plural, one {# document} other {# documents}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr ""
msgstr "{0, plural, one {# dossier} other {# dossiers}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
@ -95,7 +95,7 @@ msgstr "{0, plural, one {# équipe} other {# équipes}}"
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr ""
msgstr "{0, plural, one {# modèle} other {# modèles}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -313,10 +313,6 @@ msgstr "{prefix} a mis à jour le titre du document"
msgid "{prefix} updated the document visibility"
msgstr "{prefix} a mis à jour la visibilité du document"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} viewed the document"
msgstr ""
#: apps/remix/app/components/general/direct-template/direct-template-page.tsx
msgid "{recipientActionVerb} document"
msgstr "{recipientActionVerb} document"
@ -774,7 +770,7 @@ msgstr "Actif"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr ""
msgstr "Sessions actives"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
@ -1345,7 +1341,7 @@ msgstr "Êtes-vous sûr de vouloir supprimer la réclamation suivante?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr ""
msgstr "Êtes-vous sûr de vouloir supprimer ce dossier ?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
@ -1771,6 +1767,7 @@ msgstr "Cliquez ici pour commencer"
#: 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"
@ -2164,11 +2161,11 @@ msgstr "Créer un document à partir du modèle"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr ""
msgstr "Créer un dossier"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr ""
msgstr "Créer un Dossier"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
@ -2181,7 +2178,7 @@ msgstr "Créer des groupes"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr ""
msgstr "Créer un Nouveau Dossier"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
@ -2303,11 +2300,11 @@ msgstr "Structure CSV"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr ""
msgstr "MAU cumulatif (connecté)"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr ""
msgstr "Actuel"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
@ -2447,7 +2444,7 @@ msgstr "Supprimer le document"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr ""
msgstr "Supprimer le Dossier"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
@ -2752,6 +2749,11 @@ msgstr "ID externe du document mis à jour"
msgid "Document found in your account"
msgstr "Document trouvé dans votre compte"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.logs.tsx
msgid "Document ID"
@ -2870,10 +2872,6 @@ msgstr "Importation de documents désactivé en raison de factures impayées"
msgid "Document uploaded"
msgstr "Document importé"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document viewed"
msgstr ""
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Viewed"
msgstr "Document consulté"
@ -3194,7 +3192,7 @@ msgstr "Document joint"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr ""
msgstr "Entrez un nom pour votre nouveau dossier. Les dossiers vous aident à organiser vos éléments."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
@ -3334,7 +3332,7 @@ msgstr "Échec de la création de la réclamation d'abonnement."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr ""
msgstr "Échec de la suppression du dossier"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
@ -3346,7 +3344,7 @@ msgstr "Échec du chargement du document"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr ""
msgstr "Échec du déplacement du dossier"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
@ -3354,7 +3352,7 @@ msgstr "Échec du reseal du document"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr ""
msgstr "Échec de la révocation de la session"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
@ -3362,7 +3360,7 @@ msgstr "Échec de l'enregistrement des paramètres."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr ""
msgstr "Impossible de se déconnecter de toutes les sessions"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
@ -3466,15 +3464,15 @@ msgstr "Dossier créé avec succès"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr ""
msgstr "Dossier supprimé avec succès"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr ""
msgstr "Dossier déplacé avec succès"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr ""
msgstr "Nom du Dossier"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3714,6 +3712,10 @@ msgstr "Bonjour, {userName} <0>({userEmail})</0>"
msgid "Hide"
msgstr "Cacher"
#: apps/remix/app/components/general/document/document-history-sheet.tsx
msgid "Hide additional information"
msgstr "Cacher des informations supplémentaires"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3723,7 +3725,7 @@ msgstr "Accueil"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr ""
msgstr "Accueil (Pas de Dossier)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
@ -3972,7 +3974,7 @@ msgstr "7 derniers jours"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr ""
msgstr "Dernière activité"
#: apps/remix/app/components/general/template/template-page-view-information.tsx
#: apps/remix/app/components/general/document/document-page-view-information.tsx
@ -4125,7 +4127,7 @@ msgstr "Gérez les autorisations et les contrôles d'accès"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr ""
msgstr "Gérer les sessions"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
@ -4137,10 +4139,10 @@ msgstr "Gérer l'abonnement"
msgid "Manage the {0} organisation"
msgstr "Gérer l'organisation {0}"
#. placeholder {1}: organisation.name
#. placeholder {0}: organisation.name
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage the {1} organisation subscription"
msgstr ""
msgid "Manage the {0} organisation subscription"
msgstr "Gérer l'abonnement de l'organisation {0}"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups._index.tsx
msgid "Manage the custom groups of members for your organisation."
@ -4206,7 +4208,7 @@ msgstr "MAU (document terminé)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr ""
msgstr "MAU (connecté)"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
@ -4295,7 +4297,7 @@ msgstr "Déplacer le document vers un dossier"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr ""
msgstr "Déplacer le Dossier"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
@ -4312,7 +4314,7 @@ msgstr "Plusieurs méthodes d'accès peuvent être sélectionnées."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr ""
msgstr "Mon Dossier"
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/components/tables/settings-security-passkey-table.tsx
@ -4405,12 +4407,12 @@ msgstr "Pas de brouillons actifs"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr ""
msgstr "Aucun dossier trouvé"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr ""
msgstr "Aucun dossier correspondant à \"{searchTerm}\" trouvé"
#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx
#: apps/remix/app/components/embed/embed-document-rejected.tsx
@ -4723,7 +4725,7 @@ msgstr "Organisations dont l'utilisateur est membre."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr ""
msgstr "Organisez vos documents"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
@ -4731,7 +4733,7 @@ msgstr "Organisez vos membres en groupes qui peuvent être assignés à des équ
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr ""
msgstr "Organisez vos modèles"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
@ -4910,7 +4912,7 @@ msgstr "Choisissez l'un des accords suivants ci-dessous et commencez à signer p
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr ""
msgstr "Épingler"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
@ -5466,7 +5468,7 @@ msgstr "Révoquer l'accès"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr ""
msgstr "Révoquer toutes les sessions"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
@ -5544,7 +5546,7 @@ msgstr "Rechercher des documents..."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr ""
msgstr "Rechercher dans les dossiers..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
@ -5572,7 +5574,7 @@ msgstr "Sélectionner"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr ""
msgstr "Sélectionnez une destination pour ce dossier."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
@ -5629,7 +5631,7 @@ msgstr "Sélectionnez des groupes"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr ""
msgstr "Sélectionnez des groupes de membres à ajouter à l'équipe."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
@ -5753,11 +5755,11 @@ msgstr "Envoyé"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr ""
msgstr "Session révoquée"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr ""
msgstr "Les sessions ont été révoquées"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
@ -5812,6 +5814,10 @@ msgstr "Partagez votre expérience de signature !"
msgid "Show"
msgstr "Afficher"
#: 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
#: packages/ui/primitives/document-flow/add-signers.tsx
msgid "Show advanced settings"
@ -6627,8 +6633,7 @@ msgid "The following team has been deleted. You will no longer be able to access
msgstr "L'équipe suivante a été supprimée. Vous ne pourrez plus accéder à cette équipe et à ses documents"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
msgid ""
"The organisation group you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation group you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Le groupe d'organisation que vous cherchez peut avoir été supprimé, renommé ou n'a peut-être jamais existé."
@ -6637,14 +6642,12 @@ msgid "The organisation role that will be applied to all members in this group."
msgstr "Le rôle d'organisation qui sera appliqué à tous les membres de ce groupe."
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "L'organisation que vous cherchez peut avoir été supprimée, renommée ou n'a peut-être jamais existé."
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "L'organisation que vous cherchez peut avoir été supprimée, renommée ou n'a peut-être jamais existé."
@ -6728,14 +6731,12 @@ msgid "The team email <0>{teamEmail}</0> has been removed from the following tea
msgstr "L'email d'équipe <0>{teamEmail}</0> a été supprimé de l'équipe suivante"
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The team you are looking for may have been removed, renamed or may have never\n"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "L'équipe que vous cherchez peut avoir été supprimée, renommée ou n'a peut-être jamais existé."
#: 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"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "L'équipe que vous cherchez a peut-être été supprimée, renommée ou n'a peut-être jamais existé."
@ -6773,8 +6774,7 @@ msgid "The URL for Documenso to send webhook events to."
msgstr "L'URL pour Documenso pour envoyer des événements webhook."
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
msgid ""
"The user you are looking for may have been removed, renamed or may have never\n"
msgid "The user you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "L'utilisateur que vous cherchez peut avoir été supprimé, renommé ou n'a peut-être jamais existé."
@ -6930,7 +6930,7 @@ msgstr "Ce champ ne peut pas être modifié ou supprimé. Lorsque vous partagez
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr ""
msgstr "Ce dossier contient plusieurs éléments. Le supprimer supprimera également tous les éléments du dossier, y compris les dossiers imbriqués et leur contenu."
#: 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."
@ -7012,7 +7012,7 @@ msgstr "Cela ne fera que rétroporter les drapeaux de fonctionnalité qui sont a
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr ""
msgstr "Cela entraînera votre déconnexion de tous les autres appareils. Vous devrez vous reconnecter sur ces appareils pour continuer à utiliser votre compte."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
@ -7241,6 +7241,7 @@ msgid "Unable to join this organisation at this time."
msgstr "Impossible de rejoindre cette organisation pour le moment."
#: 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"
@ -7315,7 +7316,7 @@ msgstr "Documents illimités, API et plus"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr ""
msgstr "Détacher"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
@ -7662,7 +7663,7 @@ msgstr "Voir toute l'activité de sécurité liée à votre compte."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr ""
msgstr "Afficher et gérer toutes les sessions actives de votre compte."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
@ -8009,8 +8010,11 @@ msgstr "Nous n'avons pas pu vérifier votre email pour le moment."
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."
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: 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
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."
@ -8724,3 +8728,4 @@ msgstr "Votre token a été créé avec succès ! Assurez-vous de le copier car
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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."

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: it\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: Italian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@ -75,12 +75,12 @@ msgstr "{0, plural, one {# carattere oltre il limite} other {# caratteri oltre i
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr ""
msgstr "{0, plural, one {# documento} other {# documenti}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr ""
msgstr "{0, plural, one {# cartella} other {# cartelle}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
@ -95,7 +95,7 @@ msgstr "{0, plural, one {# squadra} other {# squadre}}"
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr ""
msgstr "{0, plural, one {# modello} other {# modelli}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -313,10 +313,6 @@ msgstr "{prefix} ha aggiornato il titolo del documento"
msgid "{prefix} updated the document visibility"
msgstr "{prefix} ha aggiornato la visibilità del documento"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} viewed the document"
msgstr ""
#: apps/remix/app/components/general/direct-template/direct-template-page.tsx
msgid "{recipientActionVerb} document"
msgstr "{recipientActionVerb} documento"
@ -774,7 +770,7 @@ msgstr "Attivo"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr ""
msgstr "Sessioni attive"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
@ -1345,7 +1341,7 @@ msgstr "Sei sicuro di voler eliminare la seguente richiesta?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr ""
msgstr "Sei sicuro di voler eliminare questa cartella?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
@ -1771,6 +1767,7 @@ msgstr "Clicca qui per iniziare"
#: 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"
@ -2164,11 +2161,11 @@ msgstr "Crea documento da modello"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr ""
msgstr "Crea cartella"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr ""
msgstr "Crea Cartella"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
@ -2181,7 +2178,7 @@ msgstr "Crea Gruppi"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr ""
msgstr "Crea Nuova Cartella"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
@ -2307,7 +2304,7 @@ msgstr ""
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr ""
msgstr "Corrente"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
@ -2447,7 +2444,7 @@ msgstr "Elimina Documento"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr ""
msgstr "Elimina Cartella"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
@ -2752,6 +2749,11 @@ msgstr "ID esterno del documento aggiornato"
msgid "Document found in your account"
msgstr "Documento trovato nel tuo account"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.logs.tsx
msgid "Document ID"
@ -2870,10 +2872,6 @@ msgstr "Caricamento del documento disabilitato a causa di fatture non pagate"
msgid "Document uploaded"
msgstr "Documento caricato"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document viewed"
msgstr ""
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Viewed"
msgstr "Documento visualizzato"
@ -3194,7 +3192,7 @@ msgstr "Documento Allegato"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr ""
msgstr "Inserisci un nome per la tua nuova cartella. Le cartelle ti aiutano a organizzare i tuoi elementi."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
@ -3334,7 +3332,7 @@ msgstr "Creazione della richiesta di abbonamento non riuscita."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr ""
msgstr "Impossibile eliminare la cartella"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
@ -3346,7 +3344,7 @@ msgstr "Caricamento documento fallito."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr ""
msgstr "Impossibile spostare la cartella"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
@ -3354,7 +3352,7 @@ msgstr "Fallito il risigillo del documento"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr ""
msgstr "Impossibile revocare la sessione"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
@ -3362,7 +3360,7 @@ msgstr "Impossibile salvare le impostazioni."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr ""
msgstr "Non è stato possibile disconnettere tutte le sessioni"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
@ -3466,15 +3464,15 @@ msgstr "Cartella creata con successo"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr ""
msgstr "Cartella eliminata con successo"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr ""
msgstr "Cartella spostata con successo"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr ""
msgstr "Nome Cartella"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3714,6 +3712,10 @@ msgstr "Ciao, {userName} <0>({userEmail})</0>"
msgid "Hide"
msgstr "Nascondi"
#: apps/remix/app/components/general/document/document-history-sheet.tsx
msgid "Hide additional information"
msgstr "Nascondi informazioni aggiuntive"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3723,7 +3725,7 @@ msgstr "Home"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr ""
msgstr "Home (Nessuna Cartella)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
@ -3972,7 +3974,7 @@ msgstr "Ultimi 7 giorni"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr ""
msgstr "Ultimo accesso"
#: apps/remix/app/components/general/template/template-page-view-information.tsx
#: apps/remix/app/components/general/document/document-page-view-information.tsx
@ -4125,7 +4127,7 @@ msgstr "Gestisci le autorizzazioni e i controlli di accesso"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr ""
msgstr "Gestisci le sessioni"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
@ -4137,10 +4139,10 @@ msgstr "Gestisci abbonamento"
msgid "Manage the {0} organisation"
msgstr "Gestisci l'organizzazione {0}"
#. placeholder {1}: organisation.name
#. placeholder {0}: organisation.name
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage the {1} organisation subscription"
msgstr ""
msgid "Manage the {0} organisation subscription"
msgstr "Gestisci l'abbonamento dell'organizzazione {0}"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups._index.tsx
msgid "Manage the custom groups of members for your organisation."
@ -4295,7 +4297,7 @@ msgstr "Sposta documento nella cartella"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr ""
msgstr "Sposta Cartella"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
@ -4312,7 +4314,7 @@ msgstr "Possono essere selezionati più metodi di accesso."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr ""
msgstr "La Mia Cartella"
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/components/tables/settings-security-passkey-table.tsx
@ -4405,12 +4407,12 @@ msgstr "Nessuna bozza attiva"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr ""
msgstr "Nessuna cartella trovata"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr ""
msgstr "Nessuna cartella trovata corrispondente a \"{searchTerm}\""
#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx
#: apps/remix/app/components/embed/embed-document-rejected.tsx
@ -4723,7 +4725,7 @@ msgstr "Organizzazioni di cui l'utente è membro."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr ""
msgstr "Organizza i tuoi documenti"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
@ -4731,7 +4733,7 @@ msgstr "Organizza i tuoi membri in gruppi che possono essere assegnati ai team."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr ""
msgstr "Organizza i tuoi modelli"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
@ -4910,7 +4912,7 @@ msgstr "Scegli uno dei seguenti accordi e inizia a firmare per iniziare"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr ""
msgstr "Fissa"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
@ -5466,7 +5468,7 @@ msgstr "Revoca l'accesso"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr ""
msgstr "Revoca tutte le sessioni"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
@ -5544,7 +5546,7 @@ msgstr "Cerca documenti..."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr ""
msgstr "Cerca cartelle..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
@ -5572,7 +5574,7 @@ msgstr "Seleziona"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr ""
msgstr "Seleziona una destinazione per questa cartella."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
@ -5629,7 +5631,7 @@ msgstr "Seleziona gruppi"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr ""
msgstr "Seleziona i gruppi di membri da aggiungere al team."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
@ -5753,11 +5755,11 @@ msgstr "Inviato"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr ""
msgstr "Sessione revocata"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr ""
msgstr "Le sessioni sono state revocate"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
@ -5812,6 +5814,10 @@ msgstr "Condividi la tua esperienza di firma!"
msgid "Show"
msgstr "Mostra"
#: 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
#: packages/ui/primitives/document-flow/add-signers.tsx
msgid "Show advanced settings"
@ -6627,11 +6633,9 @@ msgid "The following team has been deleted. You will no longer be able to access
msgstr "Il seguente team è stato eliminato. Non potrai più accedere a questo team e ai suoi documenti"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
msgid ""
"The organisation group you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation group you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"Il gruppo organizzativo che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
msgstr "Il gruppo organizzativo che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
" esistito."
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
@ -6639,19 +6643,15 @@ msgid "The organisation role that will be applied to all members in this group."
msgstr "Il ruolo organizzativo che verrà applicato a tutti i membri in questo gruppo."
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"L'organizzazione che cerchi potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
msgstr "L'organizzazione che cerchi potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
" esistita."
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"L'organizzazione che cerchi potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
msgstr "L'organizzazione che cerchi potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
" esistita."
#: apps/remix/app/components/general/generic-error-layout.tsx
@ -6734,19 +6734,15 @@ msgid "The team email <0>{teamEmail}</0> has been removed from the following tea
msgstr "L'email del team <0>{teamEmail}</0> è stata rimossa dal seguente team"
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The team you are looking for may have been removed, renamed or may have never\n"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"Il team che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
msgstr "Il team che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
" esistito."
#: 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"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"La squadra che stai cercando potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
msgstr "La squadra che stai cercando potrebbe essere stata rimossa, rinominata o potrebbe non essere mai\n"
" esistita."
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
@ -6783,11 +6779,9 @@ msgid "The URL for Documenso to send webhook events to."
msgstr "L'URL per Documenso per inviare eventi webhook."
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
msgid ""
"The user you are looking for may have been removed, renamed or may have never\n"
msgid "The user you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr ""
"L'utente che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
msgstr "L'utente che cerchi potrebbe essere stato rimosso, rinominato o potrebbe non essere mai\n"
" esistito."
#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx
@ -6942,7 +6936,7 @@ msgstr "Questo campo non può essere modificato o eliminato. Quando condividi il
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr ""
msgstr "Questa cartella contiene più elementi. Cancellarla eliminerà anche tutti gli elementi nella cartella, incluse le cartelle nidificate e i loro contenuti."
#: 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."
@ -7024,7 +7018,7 @@ msgstr "Questo farà SOLO il retroporting degli indicatori delle funzionalità i
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr ""
msgstr "Questa azione ti disconnetterà da tutti gli altri dispositivi. Dovrai accedere nuovamente su quei dispositivi per continuare a usare il tuo account."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
@ -7253,6 +7247,7 @@ msgid "Unable to join this organisation at this time."
msgstr "Impossibile unirsi a questa organizzazione in questo momento."
#: 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"
@ -7327,7 +7322,7 @@ msgstr "Documenti illimitati, API e altro"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr ""
msgstr "Rimuovi"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
@ -7674,7 +7669,7 @@ msgstr "Visualizza tutte le attività di sicurezza relative al tuo account."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr ""
msgstr "Visualizza e gestisci tutte le sessioni attive per il tuo account."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
@ -8021,8 +8016,11 @@ msgstr "Non siamo stati in grado di verificare la tua email in questo momento."
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."
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: 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
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."
@ -8736,3 +8734,4 @@ msgstr "Il tuo token è stato creato con successo! Assicurati di copiarlo perch
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.tokens.tsx
msgid "Your tokens will be shown here once you create them."
msgstr "I tuoi token verranno mostrati qui una volta creati."

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: ko\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: Korean\n"
"Plural-Forms: nplurals=1; plural=0;\n"
@ -72,6 +72,16 @@ msgstr "{0, plural, other {(#자 초과)}}"
msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}"
msgstr "{0, plural, other {#자 제한 초과}}"
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr "{0, plural, other {# 문서}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr "{0, plural, other {# 폴더}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
msgid "{0, plural, one {# recipient} other {# recipients}}"
@ -82,6 +92,11 @@ msgstr "{0, plural, other {#명의 수신자}}"
msgid "{0, plural, one {# team} other {# teams}}"
msgstr ""
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr "{0, plural, other {# 템플릿}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -752,6 +767,11 @@ msgstr "행동들"
msgid "Active"
msgstr "활성화됨"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr "활성 세션"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
msgstr "활성 구독"
@ -817,13 +837,13 @@ msgstr "필드 추가"
msgid "Add group roles"
msgstr "그룹 역할 추가"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Add groups"
msgstr "그룹 추가"
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Add members"
msgstr "멤버 추가"
@ -1243,17 +1263,14 @@ msgstr "예상치 못한 오류가 발생했습니다."
msgid "An unknown error occurred"
msgstr "알 수 없는 오류가 발생했습니다"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "An unknown error occurred while creating the folder."
msgstr "폴더를 생성하는 동안 알 수 없는 오류가 발생했습니다."
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "An unknown error occurred while deleting the folder."
msgstr "폴더를 삭제하는 동안 알 수 없는 오류가 발생했습니다."
#: apps/remix/app/components/dialogs/template-folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "An unknown error occurred while moving the folder."
msgstr "폴더를 이동하는 동안 알 수 없는 오류가 발생했습니다."
@ -1322,6 +1339,10 @@ msgstr "문서를 완료하시겠습니까? 이 작업은 되돌릴 수 없습
msgid "Are you sure you want to delete the following claim?"
msgstr "정말 이 클레임을 삭제하시겠습니까?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr "이 폴더를 삭제하시겠습니까?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
msgstr "정말 이 토큰을 삭제하시겠습니까?"
@ -1614,6 +1635,7 @@ msgstr "준비 가능"
#: apps/remix/app/components/dialogs/team-delete-dialog.tsx
#: apps/remix/app/components/dialogs/team-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-create-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-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/organisation-member-update-dialog.tsx
@ -1626,6 +1648,9 @@ msgstr "준비 가능"
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/document-resend-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx
@ -1921,7 +1946,6 @@ msgstr "확인을 위해 입력하세요 <0>{deleteMessage}</0>"
#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Confirm by typing: <0>{deleteMessage}</0>"
msgstr "확인을 위해 입력하세요: <0>{deleteMessage}</0>"
@ -2065,6 +2089,7 @@ msgstr "토큰 복사"
#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/admin-organisation-create-dialog.tsx
msgid "Create"
msgstr "만들기"
@ -2134,6 +2159,14 @@ msgstr "직접 서명 링크 생성"
msgid "Create document from template"
msgstr "템플릿에서 문서 생성"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr "폴더 만들기"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr "폴더 생성"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Create group"
@ -2143,6 +2176,10 @@ msgstr "그룹 생성"
msgid "Create Groups"
msgstr "그룹 생성"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr "새 폴더 생성"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
msgstr "지금 생성"
@ -2221,6 +2258,7 @@ msgstr "계정을 만들고 최첨단 문서 서명을 사용해보세요."
msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp."
msgstr "계정을 만들고 최첨단 문서 서명을 사용해보세요. 개방적이고 아름다운 서명은 당신의 손 안에 있습니다."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: 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
@ -2260,6 +2298,14 @@ msgstr "{0}에 생성됨"
msgid "CSV Structure"
msgstr "CSV 구조"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr "누적 MAU (로그인 완료)"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr "현재"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
msgstr "현재 비밀번호"
@ -2342,6 +2388,7 @@ msgstr "삭제"
#: apps/remix/app/components/tables/organisation-groups-table.tsx
#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx
#: apps/remix/app/components/tables/admin-claims-table.tsx
#: apps/remix/app/components/general/folder/folder-card.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
@ -2353,6 +2400,7 @@ msgstr "삭제"
#: apps/remix/app/components/dialogs/organisation-group-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/document-delete-dialog.tsx
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Delete"
@ -2360,10 +2408,9 @@ msgstr "삭제"
#. placeholder {0}: webhook.webhookUrl
#. placeholder {0}: token.name
#. placeholder {0}: folder?.name ?? 'folder'
#. placeholder {0}: organisation.name
#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "delete {0}"
@ -2395,6 +2442,10 @@ msgstr "문서 삭제"
msgid "Delete Document"
msgstr "문서 삭제"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr "폴더 삭제"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
msgstr "조직 삭제"
@ -2453,6 +2504,7 @@ msgid "Details"
msgstr "세부 정보"
#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/tables/settings-security-activity-table.tsx
msgid "Device"
msgstr "장치"
@ -2833,7 +2885,6 @@ msgid "Document will be permanently deleted"
msgstr "문서가 영구적으로 삭제될 것입니다"
#: apps/remix/app/routes/_profile+/p.$url.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.edit.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id._index.tsx
@ -3139,6 +3190,10 @@ msgstr "계정을 활성화하면 사용자가 다시 계정을 사용할 수
msgid "Enclosed Document"
msgstr "첨부 문서"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr "새 폴더의 이름을 입력하세요. 폴더는 항목을 정리하는 데 도움을 줍니다."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
msgstr "클레임 이름 입력"
@ -3179,6 +3234,7 @@ msgstr "엔터프라이즈"
#: apps/remix/app/routes/embed+/v1+/authoring+/template.edit.$id.tsx
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
@ -3221,6 +3277,7 @@ msgstr "엔터프라이즈"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx
@ -3265,8 +3322,7 @@ msgstr "{0}에 만료됨"
msgid "External ID"
msgstr "외부 ID"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Failed to create folder"
msgstr "폴더 생성에 실패했습니다"
@ -3274,6 +3330,10 @@ msgstr "폴더 생성에 실패했습니다"
msgid "Failed to create subscription claim."
msgstr "구독 클레임 생성에 실패했습니다."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr "폴더 삭제 실패"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
msgstr "구독 클레임 삭제에 실패했습니다."
@ -3282,14 +3342,26 @@ msgstr "구독 클레임 삭제에 실패했습니다."
msgid "Failed to load document"
msgstr "문서 로드에 실패했습니다"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr "폴더 이동 실패"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
msgstr "문서 걸쇠 잠금 실패"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr "세션을 취소하는 데 실패했습니다"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
msgstr "설정 저장 실패."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr "모든 세션에서 로그아웃에 실패했습니다."
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
msgstr "문서 업데이트에 실패했습니다"
@ -3386,16 +3458,28 @@ msgstr "새로운 구독 클레임을 만들기 위한 세부 정보를 입력
msgid "Folder"
msgstr "폴더"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder created successfully"
msgstr "폴더가 성공적으로 생성되었습니다"
#: apps/remix/app/components/dialogs/template-folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr "폴더가 성공적으로 삭제되었습니다"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr "폴더가 성공적으로 이동되었습니다"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr "폴더 이름"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder not found"
msgstr "폴더를 찾을 수 없습니다"
#: apps/remix/app/components/dialogs/template-folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
msgid "Folder updated successfully"
msgstr "폴더가 성공적으로 업데이트되었습니다"
@ -3633,9 +3717,16 @@ msgid "Hide additional information"
msgstr "추가 정보 숨기기"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Home"
msgstr "홈"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr "홈 (폴더 없음)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
msgstr "저는 이 문서의 서명자입니다"
@ -3747,7 +3838,6 @@ msgstr "잘못된 코드입니다. 다시 시도해 주세요."
msgid "Invalid email"
msgstr "잘못된 이메일"
#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.$token.tsx
#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx
msgid "Invalid link"
msgstr "잘못된 링크"
@ -3811,6 +3901,7 @@ msgid "Invoice"
msgstr "송장"
#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
msgid "IP Address"
msgstr "IP 주소"
@ -3881,6 +3972,10 @@ msgstr "지난 30일"
msgid "Last 7 days"
msgstr "지난 7일"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr "마지막 활동"
#: 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"
@ -4030,6 +4125,10 @@ msgstr "패스키 관리"
msgid "Manage permissions and access controls"
msgstr "권한 및 접근 제어 관리"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr "세션 관리"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage subscription"
@ -4107,6 +4206,10 @@ msgstr "MAU (생성된 문서)"
msgid "MAU (had document completed)"
msgstr "MAU (문서 완료)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr "MAU (로그인 완료)"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
msgstr "최대"
@ -4177,7 +4280,9 @@ msgstr "월간 활성 사용자: 최소 하나의 문서를 생성한 사용자"
msgid "Monthly Active Users: Users that had at least one of their documents completed"
msgstr "월간 활성 사용자: 최소 한 개의 문서가 완료된 사용자"
#: apps/remix/app/components/general/folder/folder-card.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Move"
msgstr "이동"
@ -4190,6 +4295,10 @@ msgstr "\"{templateTitle}\"를 폴더로 이동"
msgid "Move Document to Folder"
msgstr "문서를 폴더로 이동"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr "폴더 이동"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
msgstr "템플릿을 폴더로 이동"
@ -4203,6 +4312,10 @@ msgstr "폴더로 이동"
msgid "Multiple access methods can be selected."
msgstr "다중 접근 방법을 선택할 수 있습니다."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr "내 폴더"
#: 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
@ -4291,6 +4404,16 @@ msgstr "아니요"
msgid "No active drafts"
msgstr "활성화된 초안이 없음"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr "폴더를 찾을 수 없습니다"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr "'{searchTerm}'와 일치하는 폴더를 찾을 수 없습니다"
#: 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."
@ -4600,10 +4723,18 @@ msgstr "조직들"
msgid "Organisations that the user is a member of."
msgstr "이 사용자가 멤버로 있는 조직들."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr "문서를 정리하세요"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
msgstr "멤버들을 팀에 할당할 수 있는 그룹으로 구성하세요"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr "템플릿을 정리하세요"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
msgstr "문서 및 템플릿을 정리하세요"
@ -4779,6 +4910,10 @@ msgstr "비밀번호 설정"
msgid "Pick any of the following agreements below and start signing to get started"
msgstr "다음의 동의서 중 하나를 선택하고 서명을 시작하여 시작하세요"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr "고정"
#: 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
@ -5305,7 +5440,6 @@ msgstr "문서 보유"
msgid "Retry"
msgstr "다시 시도"
#: 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+/organisation.invite.$token.tsx
#: apps/remix/app/routes/_unauthenticated+/organisation.decline.$token.tsx
@ -5321,6 +5455,7 @@ msgstr "홈으로 돌아가기"
msgid "Return to sign in"
msgstr "로그인 화면으로 돌아가기"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/general/teams/team-email-usage.tsx
msgid "Revoke"
msgstr "취소"
@ -5329,6 +5464,12 @@ msgstr "취소"
msgid "Revoke access"
msgstr "접근 권한 취소"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr "모든 세션 취소"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
#: apps/remix/app/components/tables/team-groups-table.tsx
@ -5348,11 +5489,6 @@ msgstr "역할"
msgid "Roles"
msgstr "역할들"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Root (No Folder)"
msgstr "루트 (폴더 없음)"
#: packages/ui/primitives/data-table-pagination.tsx
msgid "Rows per page"
msgstr "페이지당 행 수"
@ -5404,6 +5540,14 @@ msgstr "조직 ID, 이름, 고객 ID 또는 소유자 이메일로 검색"
msgid "Search documents..."
msgstr "문서 검색…"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr "폴더 검색..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
msgstr "언어 검색…"
@ -5428,6 +5572,10 @@ msgstr "보안 활동"
msgid "Select"
msgstr "선택"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr "이 폴더의 목적지를 선택하세요."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
msgstr "이 문서를 이동할 폴더를 선택하세요."
@ -5481,6 +5629,10 @@ msgstr "기본 옵션 선택"
msgid "Select groups"
msgstr "그룹 선택"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr "팀에 추가할 구성원 그룹을 선택하세요."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
msgstr "이 팀에 추가할 그룹 선택"
@ -5492,7 +5644,6 @@ msgid "Select members"
msgstr "멤버 선택"
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select members or groups of members to add to the team."
msgstr "팀에 추가할 멤버 또는 멤버 그룹을 선택하세요."
@ -5602,6 +5753,14 @@ msgstr "보내는 중…"
msgid "Sent"
msgstr "보냈음"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr "세션이 해제되었습니다."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr "세션이 취소되었습니다."
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
msgstr "비밀번호 설정"
@ -5621,6 +5780,7 @@ msgstr "템플릿 속성과 수신자 정보를 설정하세요"
#: 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
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Settings"
msgstr "설정"
@ -6318,7 +6478,6 @@ msgstr "템플릿 제목"
msgid "Template updated successfully"
msgstr "템플릿이 성공적으로 업데이트되었습니다"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.$id._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.public-profile.tsx
@ -6449,12 +6608,10 @@ msgstr "URL로 전송될 웹훅을 트리거할 이벤트입니다."
msgid "The fields have been updated to the new field insertion method successfully"
msgstr "필드가 새로운 필드 삽입 방법으로 성공적으로 업데이트되었습니다"
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "The folder you are trying to delete does not exist."
msgstr "삭제하려는 폴더가 존재하지 않습니다."
#: apps/remix/app/components/dialogs/template-folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "The folder you are trying to move does not exist."
msgstr "이동하려는 폴더가 존재하지 않습니다."
@ -6771,10 +6928,9 @@ msgstr "다른 수신자가 아직 서명하지 않았을 경우 문서에 서
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 "이 필드는 수정되거나 삭제될 수 없습니다. 이 템플릿의 직접 링크를 공유하거나 공개 프로필에 추가하면, 누구나 이름과 이메일을 입력하고 할당된 필드를 기입할 수 있습니다."
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "This folder name is already taken."
msgstr "이 폴더 이름은 이미 사용 중입니다."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr "이 폴더에는 여러 항목이 포함되어 있습니다. 삭제하면 중첩 폴더 및 그 내용물을 포함한 모든 항목이 삭제됩니다."
#: 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."
@ -6784,10 +6940,6 @@ msgstr "이 문서를 서명할 준비가 되면 수신자에게 이렇게 도
msgid "This is the claim that this organisation was initially created with. Any feature flag changes to this claim will be backported into this organisation."
msgstr "이것이 조직 초기 설립 당시의 클레임입니다. 이 클레임으로의 기능 플래그 변경은 조직에 백포팅됩니다."
#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.$token.tsx
msgid "This link is invalid or has expired."
msgstr "이 링크는 유효하지 않거나 만료되었습니다."
#: 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 "이 링크는 유효하지 않거나 만료되었습니다. 팀에 문의하여 확인을 다시 요청하십시오."
@ -6858,6 +7010,10 @@ msgstr "문서가 완전히 완료된 후 문서 소유자에게 이것이 발
msgid "This will ONLY backport feature flags which are set to true, anything disabled in the initial claim will not be backported"
msgstr "기능 플래그 기본 설정은 사실의 경우에만 백포팅됩니다. 초기 클레임에 비활성화된 사항은 백포팅되지 않습니다."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr "이 작업은 다른 모든 기기에서 로그아웃됩니다. 계정을 계속 사용하려면 해당 기기에서 다시 로그인해야 합니다."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
msgid "Time"
@ -7144,6 +7300,9 @@ msgstr "미완료"
#: 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+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Unknown"
msgstr "알 수 없음"
@ -7155,6 +7314,10 @@ msgstr "무제한"
msgid "Unlimited documents, API and more"
msgstr "무제한 문서, API 및 기타"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr "고정 해제"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
msgstr "제목없는 그룹"
@ -7497,6 +7660,11 @@ msgstr "모든 관련 문서 보기"
msgid "View all security activity related to your account."
msgstr "귀하의 계정과 관련된 모든 보안 활동 보기."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr "계정의 모든 활성 세션을 보고 관리하십시오."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
msgstr "코드 보기"
@ -7855,7 +8023,6 @@ msgstr "저희가 서명 링크를 생성해드리며, 원하시는 방법으로
msgid "We won't send anything to notify recipients."
msgstr "수신자에게 알리기 위해 아무것도 보내지 않습니다."
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
#: apps/remix/app/components/tables/documents-table-empty-state.tsx
msgid "We're all empty"
@ -8215,7 +8382,6 @@ msgstr "귀하에게 {recipientActionVerb}을 요구하는 문서 {0}을 시작
msgid "You have no webhooks yet. Your webhooks will be shown here once you create them."
msgstr "아직 웹훅이 없습니다.웹훅을 만들면 여기에 표시됩니다."
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
msgid "You have not yet created any templates. To create a template please upload one."
msgstr "아직 템플릿을 생성하지 않았습니다.템플릿을 만들려면 하나를 업로드하세요."
@ -8317,7 +8483,6 @@ msgstr "<0>{0}</0>에 대한 이메일 주소를 확인했습니다."
msgid "You must enter '{deleteMessage}' to proceed"
msgstr "계속하려면 '{deleteMessage}'을(를) 입력해야 합니다"
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "You must type '{deleteMessage}' to confirm"
msgstr "확인을 위해 '{deleteMessage}'를 입력해야 합니다"

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: pl\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 12:05\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: Polish\n"
"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
@ -75,12 +75,12 @@ msgstr "{0, plural, one {# znak przekroczony} few {# znaki przekroczone} many {#
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr ""
msgstr "{0, plural, one {# dokument} few {# dokumenty} many {# dokumentów} other {# dokumentów}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr ""
msgstr "{0, plural, one {# folder} few {# foldery} many {# folderów} other {# folderów}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
@ -95,7 +95,7 @@ msgstr "{0, plural, one {# zespół} few {# zespoły} many {# zespołów} other
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr ""
msgstr "{0, plural, one {# szablon} few {# szablony} many {# szablonów} other {# szablonów}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -283,7 +283,7 @@ msgstr "{prefix} niepodpisane pole"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} updated a field"
msgstr "{prefix} zaktualizowane pole"
msgstr "Użytkownik {prefix} zaktualizował pole"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} updated a recipient"
@ -313,10 +313,6 @@ msgstr "Użytkownik {prefix} zaktualizował tytuł dokumentu"
msgid "{prefix} updated the document visibility"
msgstr "Użytkownik {prefix} zaktualizował widoczność dokumentu"
#: packages/lib/utils/document-audit-logs.ts
msgid "{prefix} viewed the document"
msgstr ""
#: apps/remix/app/components/general/direct-template/direct-template-page.tsx
msgid "{recipientActionVerb} document"
msgstr "{recipientActionVerb} dokument"
@ -374,7 +370,7 @@ msgstr "{teamName} zaprosił cię do {action} {documentName}"
#: packages/lib/utils/document-audit-logs.ts
msgid "{userName} approved the document"
msgstr "{userName} zatwierdził dokument"
msgstr "Użytkownik {userName} zatwierdził dokument"
#: packages/lib/utils/document-audit-logs.ts
msgid "{userName} CC'd the document"
@ -386,15 +382,15 @@ msgstr "{userName} zakończył swoje zadanie"
#: packages/lib/utils/document-audit-logs.ts
msgid "{userName} rejected the document"
msgstr "{userName} odrzucił dokument"
msgstr "Użytkownik {userName} odrzucił dokument"
#: packages/lib/utils/document-audit-logs.ts
msgid "{userName} signed the document"
msgstr "{userName} podpisał dokument"
msgstr "Użytkownik {userName} podpisał dokument"
#: packages/lib/utils/document-audit-logs.ts
msgid "{userName} viewed the document"
msgstr "{userName} wyświetlił dokument"
msgstr "Użytkownik {userName} wyświetlił dokument"
#: packages/ui/primitives/data-table-pagination.tsx
msgid "{visibleRows, plural, one {Showing # result.} other {Showing # results.}}"
@ -490,11 +486,11 @@ msgstr "<0>Jesteś na drodze do zakończenia przeglądania \"<1>{documentTitle}<
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
msgid "0 Free organisations left"
msgstr "0 Wolnych organizacji pozostało"
msgstr "Pozostało 0 darmowych organizacji"
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
msgid "1 Free organisations left"
msgstr "1 Darmowa organizacja pozostała"
msgstr "Pozostała 1 darmowa organizacja"
#: apps/remix/app/components/forms/token.tsx
msgid "1 month"
@ -549,7 +545,7 @@ msgstr "5 dokumentów miesięcznie"
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
msgid "5 Documents a month"
msgstr "5 Dokumentów miesięcznie"
msgstr "5 dokumentów miesięcznie"
#: apps/remix/app/components/general/generic-error-layout.tsx
msgid "500 Internal Server Error"
@ -725,11 +721,11 @@ msgstr "Konto zostało usunięte"
#: apps/remix/app/components/dialogs/admin-user-disable-dialog.tsx
msgid "Account disabled"
msgstr "Konto wyłączone"
msgstr "Konto zostało wyłączone"
#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx
msgid "Account enabled"
msgstr "Konto włączone"
msgstr "Konto zostało włączone"
#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx
msgid "Account Re-Authentication"
@ -774,7 +770,7 @@ msgstr "Aktywne"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr ""
msgstr "Aktywne sesje"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
@ -1345,7 +1341,7 @@ msgstr "Czy na pewno chcesz usunąć następujący wniosek?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr ""
msgstr "Czy na pewno chcesz usunąć ten folder?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
@ -1771,6 +1767,7 @@ msgstr "Kliknij, aby rozpocząć"
#: 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"
@ -2164,11 +2161,11 @@ msgstr "Utwórz dokument z szablonu"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr ""
msgstr "Utwórz folder"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr ""
msgstr "Utwórz folder"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
@ -2181,7 +2178,7 @@ msgstr "Utwórz grupy"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr ""
msgstr "Utwórz nowy folder"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
@ -2303,11 +2300,11 @@ msgstr "Struktura CSV"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr ""
msgstr "Łączne MAU (zalogowani)"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr ""
msgstr "Bieżący"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
@ -2447,7 +2444,7 @@ msgstr "Usuń dokument"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr ""
msgstr "Usuń folder"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
@ -2692,7 +2689,7 @@ msgstr "Dokument Zakończony!"
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: packages/lib/utils/document-audit-logs.ts
msgid "Document created"
msgstr "Dokument utworzony"
msgstr "Utworzono dokument"
#: apps/remix/app/routes/embed+/v1+/authoring_.completed.create.tsx
msgid "Document Created"
@ -2752,6 +2749,11 @@ msgstr "Zaktualizowane ID zewnętrzne dokumentu"
msgid "Document found in your account"
msgstr "Dokument znaleziony na Twoim koncie"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.logs.tsx
msgid "Document ID"
@ -2791,7 +2793,7 @@ msgstr "Dokument nie jest już dostępny do podpisania"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document opened"
msgstr "Dokument otwarty"
msgstr "Otwarto dokument"
#: apps/remix/app/components/general/document/document-status.tsx
msgid "Document pending"
@ -2827,7 +2829,7 @@ msgstr "Dokument ponownie zaplombowany"
#: apps/remix/app/components/general/document/document-edit-form.tsx
#: packages/lib/utils/document-audit-logs.ts
msgid "Document sent"
msgstr "Dokument wysłany"
msgstr "Wysłano dokument"
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Signed"
@ -2870,10 +2872,6 @@ msgstr "Przesyłanie dokumentu wyłączone z powodu nieopłaconych faktur"
msgid "Document uploaded"
msgstr "Przesłano dokument"
#: packages/lib/utils/document-audit-logs.ts
msgid "Document viewed"
msgstr ""
#: apps/remix/app/routes/_recipient+/sign.$token+/complete.tsx
msgid "Document Viewed"
msgstr "Dokument został wyświetlony"
@ -3102,11 +3100,11 @@ msgstr "Opcje e-mail"
#: packages/lib/utils/document-audit-logs.ts
msgid "Email resent"
msgstr "E-mail wysłany ponownie"
msgstr "Wysłano ponownie wiadomość"
#: packages/lib/utils/document-audit-logs.ts
msgid "Email sent"
msgstr "E-mail wysłany"
msgstr "Wysłano wiadomość"
#: apps/remix/app/routes/_unauthenticated+/check-email.tsx
msgid "Email sent!"
@ -3194,7 +3192,7 @@ msgstr "Załączony dokument"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr ""
msgstr "Wprowadź nazwę dla nowego folderu. Foldery pomogą ci zorganizować przedmioty."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
@ -3334,7 +3332,7 @@ msgstr "Nie udało się utworzyć roszczenia subskrypcyjnego."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr ""
msgstr "Nie udało się usunąć folder"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
@ -3346,7 +3344,7 @@ msgstr "Nie udało się załadować dokumentu"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr ""
msgstr "Nie udało się przenieść folderu"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
@ -3354,7 +3352,7 @@ msgstr "Nie udało się ponownie zaplombować dokumentu"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr ""
msgstr "Nie udało się unieważnić sesji"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
@ -3362,7 +3360,7 @@ msgstr "Nie udało się zapisać ustawień."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr ""
msgstr "Nie udało się wylogować ze wszystkich sesji"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
@ -3427,11 +3425,11 @@ msgstr "Pole wstępnie wypełnione przez asystenta"
#: packages/lib/utils/document-audit-logs.ts
msgid "Field signed"
msgstr "Pole podpisane"
msgstr "Podpisano pole"
#: packages/lib/utils/document-audit-logs.ts
msgid "Field unsigned"
msgstr "Pole niepodpisane"
msgstr "Niepodpisano pole"
#: apps/remix/app/components/tables/admin-document-recipient-item-table.tsx
msgid "Fields"
@ -3466,15 +3464,15 @@ msgstr "Folder utworzony pomyślnie"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr ""
msgstr "Folder został pomyślnie usunięty"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr ""
msgstr "Folder został pomyślnie przeniesiony"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr ""
msgstr "Nazwa foldera"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3714,6 +3712,10 @@ msgstr "Cześć, {userName} <0>({userEmail})</0>"
msgid "Hide"
msgstr "Ukryj"
#: apps/remix/app/components/general/document/document-history-sheet.tsx
msgid "Hide additional information"
msgstr "Ukryj dodatkowe informacje"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
@ -3723,7 +3725,7 @@ msgstr "Dom"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr ""
msgstr "Strona główna (Brak folderu)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
@ -3972,7 +3974,7 @@ msgstr "Ostatnie 7 dni"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr ""
msgstr "Ostatnia aktywność"
#: apps/remix/app/components/general/template/template-page-view-information.tsx
#: apps/remix/app/components/general/document/document-page-view-information.tsx
@ -4125,7 +4127,7 @@ msgstr "Zarządzaj uprawnieniami i kontrolą dostępu"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr ""
msgstr "Zarządzaj sesjami"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
@ -4137,10 +4139,10 @@ msgstr "Zarządzaj subskrypcją"
msgid "Manage the {0} organisation"
msgstr "Zarządzaj organizacją {0}"
#. placeholder {1}: organisation.name
#. placeholder {0}: organisation.name
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage the {1} organisation subscription"
msgstr ""
msgid "Manage the {0} organisation subscription"
msgstr "Zarządzaj subskrypcjami organizacji {0}"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups._index.tsx
msgid "Manage the custom groups of members for your organisation."
@ -4206,7 +4208,7 @@ msgstr "MAU (zakończony dokument)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr ""
msgstr "MAU (zalogowani)"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
@ -4295,7 +4297,7 @@ msgstr "Przenieś dokument do folderu"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr ""
msgstr "Przenieś folder"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
@ -4312,7 +4314,7 @@ msgstr "Można wybrać wiele metod dostępu."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr ""
msgstr "Mój folder"
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/components/tables/settings-security-passkey-table.tsx
@ -4405,12 +4407,12 @@ msgstr "Brak aktywnych szkiców"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr ""
msgstr "Nie znaleziono folderów"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr ""
msgstr "Nie znaleziono folderów zgodnych z \"{searchTerm}\""
#: apps/remix/app/routes/_recipient+/sign.$token+/rejected.tsx
#: apps/remix/app/components/embed/embed-document-rejected.tsx
@ -4723,7 +4725,7 @@ msgstr "Organizacje, których użytkownik jest członkiem."
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr ""
msgstr "Zorganizuj swoje dokumenty"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
@ -4731,7 +4733,7 @@ msgstr "Zorganizuj swoich członków w grupy, które można przypisać do zespo
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr ""
msgstr "Zorganizuj swoje szablony"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
@ -4910,7 +4912,7 @@ msgstr "Wybierz dowolną z poniższych umów i zacznij podpisywanie, aby rozpocz
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr ""
msgstr "Przypnij"
#: packages/ui/primitives/document-flow/field-items-advanced-settings/text-field.tsx
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
@ -5466,7 +5468,7 @@ msgstr "Cofnij dostęp"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr ""
msgstr "Cofnij wszystkie sesje"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
@ -5544,7 +5546,7 @@ msgstr "Szukaj dokumentów..."
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr ""
msgstr "Szukaj folderów..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
@ -5572,7 +5574,7 @@ msgstr "Wybierz"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr ""
msgstr "Wybierz miejsce docelowe dla tego folderu."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
@ -5629,7 +5631,7 @@ msgstr "Wybierz grupy"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr ""
msgstr "Wybierz grupy członków do dodania do zespołu."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
@ -5753,11 +5755,11 @@ msgstr "Wysłano"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr ""
msgstr "Sesja odwołana"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr ""
msgstr "Sesje zostały odwołane"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
@ -5812,6 +5814,10 @@ msgstr "Podziel się swoim doświadczeniem podpisywania!"
msgid "Show"
msgstr "Pokaż"
#: 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
#: packages/ui/primitives/document-flow/add-signers.tsx
msgid "Show advanced settings"
@ -6627,8 +6633,7 @@ msgid "The following team has been deleted. You will no longer be able to access
msgstr "Poniższy zespół został usunięty. Nie będziesz mógł już uzyskać dostępu do tego zespołu i jego dokumentów."
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.groups.$id.tsx
msgid ""
"The organisation group you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation group you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Grupa organizacji, której szukasz, mogła zostać usunięta, zmieniona nazwa lub mogła nigdy nie istnieć."
@ -6637,14 +6642,12 @@ msgid "The organisation role that will be applied to all members in this group."
msgstr "Rola organizacji, która zostanie zastosowana do wszystkich członków tej grupy."
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Organizacja, której szukasz, mogła zostać usunięta, zmieniona nazwa lub mogła nigdy nie istnieć."
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The organisation you are looking for may have been removed, renamed or may have never\n"
msgid "The organisation you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Organizacja, której szukasz, mogła zostać usunięta, zmieniona nazwa lub mogła nigdy nie istnieć."
@ -6728,14 +6731,12 @@ msgid "The team email <0>{teamEmail}</0> has been removed from the following tea
msgstr "Email zespołowy <0>{teamEmail}</0> został usunięty z następującego zespołu"
#: apps/remix/app/routes/_authenticated+/_layout.tsx
msgid ""
"The team you are looking for may have been removed, renamed or may have never\n"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Zespół, którego szukasz, mógł zostać usunięty, zmienić nazwę lub mógł nigdy nie istnieć."
#: 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"
msgid "The team you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Zespół, którego szukasz, mógł zostać usunięty, zmieniony na, albo nigdy nie istniał."
@ -6773,8 +6774,7 @@ msgid "The URL for Documenso to send webhook events to."
msgstr "URL dla Documenso do wysyłania zdarzeń webhook."
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
msgid ""
"The user you are looking for may have been removed, renamed or may have never\n"
msgid "The user you are looking for may have been removed, renamed or may have never\n"
" existed."
msgstr "Użytkownik, którego szukasz, mógł zostać usunięty, zmieniony nazwę lub mógł nigdy nie istnieć."
@ -6930,7 +6930,7 @@ msgstr "To pole nie może być modyfikowane ani usuwane. Po udostępnieniu bezpo
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr ""
msgstr "Ten folder zawiera wiele elementów. Usunięcie go również usunie wszystkie elementy w folderze, w tym zagnieżdżone foldery i ich zawartość."
#: 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."
@ -7012,7 +7012,7 @@ msgstr "To będzie TYLKO przenoś funkcje flag, które są ustawione na true, ws
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr ""
msgstr "Zostaniesz wylogowany z wszystkich innych urządzeń. Aby dalej korzystać z konta, musisz ponownie się zalogować na tych urządzeniach."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
@ -7241,6 +7241,7 @@ msgid "Unable to join this organisation at this time."
msgstr "Nie można w tej chwili dołączyć do tej organizacji."
#: 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"
@ -7315,7 +7316,7 @@ msgstr "Nieograniczone dokumenty, API i więcej"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr ""
msgstr "Odepnij"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
@ -7662,7 +7663,7 @@ msgstr "Wyświetl wszystkie aktywności związane z bezpieczeństwem twojego kon
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr ""
msgstr "Przeglądaj i zarządzaj wszystkimi aktywnymi sesjami swojego konta."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
@ -8009,8 +8010,11 @@ msgstr "Nie udało się zweryfikować Twojego e-maila w tym momencie."
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."
#: apps/remix/app/components/dialogs/template-use-dialog.tsx
#: 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
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."
@ -8724,3 +8728,4 @@ msgstr "Twój token został pomyślnie utworzony! Upewnij się, że go skopiujes
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/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."

View File

@ -8,7 +8,7 @@ msgstr ""
"Language: sq\n"
"Project-Id-Version: documenso-app\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2025-06-10 02:27\n"
"PO-Revision-Date: 2025-06-19 06:05\n"
"Last-Translator: \n"
"Language-Team: Albanian\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
@ -72,6 +72,16 @@ msgstr "{0, plural, one {(1 karakter më shumë)} other {(# karaktere më shumë
msgid "{0, plural, one {# character over the limit} other {# characters over the limit}}"
msgstr "{0, plural, one {# karakter mbi kufi} other {# karaktere mbi kufi}}"
#. placeholder {0}: folder._count.documents
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# document} other {# documents}}"
msgstr "{0, plural, one {# dokument} other {# dokumente}}"
#. placeholder {0}: folder._count.subfolders
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# folder} other {# folders}}"
msgstr "{0, plural, one {# dosje} other {# dosje}}"
#. placeholder {0}: template.recipients.length
#: apps/remix/app/routes/_recipient+/d.$token+/_index.tsx
msgid "{0, plural, one {# recipient} other {# recipients}}"
@ -82,6 +92,11 @@ msgstr "{0, plural, one {# marrës} other {# marrësa}}"
msgid "{0, plural, one {# team} other {# teams}}"
msgstr "{0, plural, one {# ekip} other {# ekipe}}"
#. placeholder {0}: folder._count.templates
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "{0, plural, one {# template} other {# templates}}"
msgstr "{0, plural, one {# model} other {# modele}}"
#. placeholder {0}: data.length
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
#: apps/remix/app/components/general/organisations/organisation-invitations.tsx
@ -752,6 +767,11 @@ msgstr "Veprime"
msgid "Active"
msgstr "Aktive"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Active sessions"
msgstr "Seanca aktive"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Active Subscriptions"
msgstr "Abonime aktive"
@ -817,13 +837,13 @@ msgstr "Shto fusha"
msgid "Add group roles"
msgstr "Shto rolet e grupeve"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Add groups"
msgstr "Shto grupet"
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Add members"
msgstr "Shto anëtarët"
@ -1243,17 +1263,14 @@ msgstr "Ndodhi një gabim i papritur."
msgid "An unknown error occurred"
msgstr "Ndodhi një gabim i panjohur"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "An unknown error occurred while creating the folder."
msgstr "Një gabim i panjohur ndodhi gjatë krijimit të dosjes."
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "An unknown error occurred while deleting the folder."
msgstr "Një gabim i panjohur ndodhi gjatë fshirjes së dosjes."
#: apps/remix/app/components/dialogs/template-folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "An unknown error occurred while moving the folder."
msgstr "Një gabim i panjohur ndodhi gjatë zhvendosjes së dosjes."
@ -1322,6 +1339,10 @@ msgstr "A jeni të sigurt se doni të përfundoni dokumentin? Ky veprim nuk mund
msgid "Are you sure you want to delete the following claim?"
msgstr "A jeni të sigurt që doni të fshini ankesën e mëposhtme?"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Are you sure you want to delete this folder?"
msgstr "A jeni i sigurt që doni ta fshini këtë dosje?"
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
msgid "Are you sure you want to delete this token?"
msgstr "A jeni i sigurt që doni të fshini këtë token?"
@ -1614,6 +1635,7 @@ msgstr "Mund të përgatitë"
#: apps/remix/app/components/dialogs/team-delete-dialog.tsx
#: apps/remix/app/components/dialogs/team-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-create-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-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/organisation-member-update-dialog.tsx
@ -1626,6 +1648,9 @@ msgstr "Mund të përgatitë"
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/document-resend-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-duplicate-dialog.tsx
@ -1921,7 +1946,6 @@ msgstr "Konfirmo duke shtypur <0>{deleteMessage}</0>"
#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Confirm by typing: <0>{deleteMessage}</0>"
msgstr "Konfirmo duke shtypur: <0>{deleteMessage}</0>"
@ -2065,6 +2089,7 @@ msgstr "Kopjo token"
#: apps/remix/app/components/dialogs/webhook-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/admin-organisation-create-dialog.tsx
msgid "Create"
msgstr "Krijo"
@ -2134,6 +2159,14 @@ msgstr "Krijo Lidhje të Drejtpërdrejtë për Nënshkrim"
msgid "Create document from template"
msgstr "Krijo dokument nga modeli"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Create folder"
msgstr "Krijo dosje"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create Folder"
msgstr "Krijo Dosje"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Create group"
@ -2143,6 +2176,10 @@ msgstr "Krijo grup"
msgid "Create Groups"
msgstr "Krijo Grupet"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Create New Folder"
msgstr "Krijo Dosje të Re"
#: apps/remix/app/routes/_profile+/_layout.tsx
msgid "Create now"
msgstr "Krijo tani"
@ -2221,6 +2258,7 @@ msgstr "Krijoni llogarinë tuaj dhe filloni të përdorni nënshkrimin e dokumen
msgid "Create your account and start using state-of-the-art document signing. Open and beautiful signing is within your grasp."
msgstr "Krijoni llogarinë tuaj dhe filloni të përdorni nënshkrimin e dokumenteve në gjendje të artit. Nënshkrimi i hapur dhe i bukur është brenda arritjes tuaj."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: 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
@ -2260,6 +2298,14 @@ msgstr "Krijuar më {0}"
msgid "CSV Structure"
msgstr "Struktura CSV"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "Cumulative MAU (signed in)"
msgstr ""
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Current"
msgstr "Aktual"
#: apps/remix/app/components/forms/password.tsx
msgid "Current Password"
msgstr "Fjalëkalimi aktual"
@ -2342,6 +2388,7 @@ msgstr "fshi"
#: apps/remix/app/components/tables/organisation-groups-table.tsx
#: apps/remix/app/components/tables/documents-table-action-dropdown.tsx
#: apps/remix/app/components/tables/admin-claims-table.tsx
#: apps/remix/app/components/general/folder/folder-card.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
@ -2353,6 +2400,7 @@ msgstr "fshi"
#: apps/remix/app/components/dialogs/organisation-group-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/document-delete-dialog.tsx
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Delete"
@ -2360,10 +2408,9 @@ msgstr "Fshi"
#. placeholder {0}: webhook.webhookUrl
#. placeholder {0}: token.name
#. placeholder {0}: folder?.name ?? 'folder'
#. placeholder {0}: organisation.name
#: apps/remix/app/components/dialogs/webhook-delete-dialog.tsx
#: apps/remix/app/components/dialogs/token-delete-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/organisation-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "delete {0}"
@ -2395,6 +2442,10 @@ msgstr "Fshi dokumentin"
msgid "Delete Document"
msgstr "Fshi Dokumentin"
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Delete Folder"
msgstr "Fshij Dosjen"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl.settings.general.tsx
msgid "Delete organisation"
msgstr "Fshij organizatën"
@ -2453,6 +2504,7 @@ msgid "Details"
msgstr "Detaje"
#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/tables/settings-security-activity-table.tsx
msgid "Device"
msgstr "Pajisje"
@ -2833,7 +2885,6 @@ msgid "Document will be permanently deleted"
msgstr "Dokumenti do të Fshihet Përgjithmonë"
#: apps/remix/app/routes/_profile+/p.$url.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id.edit.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.$id._index.tsx
@ -3139,6 +3190,10 @@ msgstr "Aktivizimi i llogarisë rezulton që përdoruesi të jetë në gjendje t
msgid "Enclosed Document"
msgstr "Dokumenti i Bashkangjitur"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Enter a name for your new folder. Folders help you organise your items."
msgstr "Shkruani emrin për dosjen tuaj të re. Dosjet ju ndihmojnë të organizoni sendet tuaja."
#: apps/remix/app/components/forms/subscription-claim-form.tsx
msgid "Enter claim name"
msgstr "Vendos emrin e pretendimit"
@ -3179,6 +3234,7 @@ msgstr "Ndërmarrje"
#: apps/remix/app/routes/embed+/v1+/authoring+/template.edit.$id.tsx
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/admin+/users.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
@ -3221,6 +3277,7 @@ msgstr "Ndërmarrje"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/template-duplicate-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/admin-user-enable-dialog.tsx
@ -3265,8 +3322,7 @@ msgstr "Skadon më {0}"
msgid "External ID"
msgstr "ID i jashtëm"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Failed to create folder"
msgstr "Dështoi krijimi i dosjes"
@ -3274,6 +3330,10 @@ msgstr "Dështoi krijimi i dosjes"
msgid "Failed to create subscription claim."
msgstr "Dështoi krijimi i pretendimit të abonimit."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Failed to delete folder"
msgstr "Deshtim në fshirjen e dosjes"
#: apps/remix/app/components/dialogs/claim-delete-dialog.tsx
msgid "Failed to delete subscription claim."
msgstr "Dështoi fshirja e pretendimit të abonimit."
@ -3282,14 +3342,26 @@ msgstr "Dështoi fshirja e pretendimit të abonimit."
msgid "Failed to load document"
msgstr "Dështoi ngarkimi i dokumentit"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Failed to move folder"
msgstr "Deshtim në zhvendosjen e dosjes"
#: apps/remix/app/routes/_authenticated+/admin+/documents.$id.tsx
msgid "Failed to reseal document"
msgstr "Dështoi rihapja e dokumentit"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Failed to revoke session"
msgstr "Dështoi të revokojë seancën"
#: packages/ui/primitives/document-flow/field-item-advanced-settings.tsx
msgid "Failed to save settings."
msgstr "Dështoi të ruajë parametrat."
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Failed to sign out all sessions"
msgstr "Dështoi të dilni nga të gjitha sesionet"
#: apps/remix/app/routes/embed+/v1+/authoring+/document.edit.$id.tsx
msgid "Failed to update document"
msgstr "Dështoi përditësimi i dokumentit"
@ -3386,16 +3458,28 @@ msgstr "Plotësoni detajet për të krijuar një pretendim të ri të abonimit."
msgid "Folder"
msgstr "Dosje"
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder created successfully"
msgstr "Dosja u krijua me sukses"
#: apps/remix/app/components/dialogs/template-folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder deleted successfully"
msgstr "Dosja u fshi me sukses"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Folder moved successfully"
msgstr "Dosja u zhvendos me sukses"
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "Folder Name"
msgstr "Emri i Dosjes"
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "Folder not found"
msgstr "Dosja nuk u gjet"
#: apps/remix/app/components/dialogs/template-folder-settings-dialog.tsx
#: apps/remix/app/components/dialogs/folder-settings-dialog.tsx
msgid "Folder updated successfully"
msgstr "Dosja përditësuar me sukses"
@ -3633,9 +3717,16 @@ msgid "Hide additional information"
msgstr "Fshih informacionin shtesë"
#: apps/remix/app/components/general/generic-error-layout.tsx
#: apps/remix/app/components/general/folder/folder-grid.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Home"
msgstr "Shtëpia"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Home (No Folder)"
msgstr "Kryefaqe (Pa Dosje)"
#: packages/lib/constants/recipient-roles.ts
msgid "I am a signer of this document"
msgstr "Unë jam një nënshkrues i këtij dokumenti"
@ -3747,7 +3838,6 @@ msgstr "Kodi i pavlefshëm. Ju lutemi provoni përsëri."
msgid "Invalid email"
msgstr "Email i pavlefshëm"
#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.$token.tsx
#: apps/remix/app/routes/_unauthenticated+/team.verify.email.$token.tsx
msgid "Invalid link"
msgstr "Lidhja e pavlefshme"
@ -3811,6 +3901,7 @@ msgid "Invoice"
msgstr "Fatura"
#: apps/remix/app/routes/_internal+/[__htmltopdf]+/certificate.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
msgid "IP Address"
msgstr "Adresa IP"
@ -3881,6 +3972,10 @@ msgstr "30 ditët e fundit"
msgid "Last 7 days"
msgstr "7 ditët e fundit"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Last Active"
msgstr "Aktiviteti i fundit"
#: 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"
@ -4030,6 +4125,10 @@ msgstr "Menaxho çelësat e aksesit"
msgid "Manage permissions and access controls"
msgstr "Menaxhoni lejet dhe kontrollin e qasjes"
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "Manage sessions"
msgstr "Menaxho seancat"
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
#: apps/remix/app/routes/_authenticated+/admin+/organisations.$id.tsx
msgid "Manage subscription"
@ -4107,6 +4206,10 @@ msgstr "MAU (dokument i krijuar)"
msgid "MAU (had document completed)"
msgstr "MAU (dokument i përfunduar)"
#: apps/remix/app/routes/_authenticated+/admin+/stats.tsx
msgid "MAU (signed in)"
msgstr ""
#: packages/ui/primitives/document-flow/field-items-advanced-settings/number-field.tsx
msgid "Max"
msgstr "Maks"
@ -4177,7 +4280,9 @@ msgstr "Përdorues Aktivë Mujorë: Përdorues që kanë krijuar të paktën nj
msgid "Monthly Active Users: Users that had at least one of their documents completed"
msgstr "Përdorues Aktivë Mujorë: Përdorues që kanë përfunduar të paktën një nga dokumentet e tyre"
#: apps/remix/app/components/general/folder/folder-card.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Move"
msgstr "Zhvendos"
@ -4190,6 +4295,10 @@ msgstr "Zhvendos \"{templateTitle}\" në një dosje"
msgid "Move Document to Folder"
msgstr "Zhvendos Dokumentin në Dosje"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Move Folder"
msgstr "Zhvendos Dosjen"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
msgid "Move Template to Folder"
msgstr "Zhvendos Shabllonin në Dosje"
@ -4203,6 +4312,10 @@ msgstr "Zhvendos në Dosje"
msgid "Multiple access methods can be selected."
msgstr "Mund të zgjedhni metoda të shumta të qasje."
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "My Folder"
msgstr "Dosja Ime"
#: 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
@ -4291,6 +4404,16 @@ msgstr "Jo"
msgid "No active drafts"
msgstr "Asnjë draft aktiv"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "No folders found"
msgstr "Nuk u gjetën dosje"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
msgid "No folders found matching \"{searchTerm}\""
msgstr "Nuk u gjetën dosje që përputhen me \"{searchTerm}\""
#: 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."
@ -4600,10 +4723,18 @@ msgstr "Organizatat"
msgid "Organisations that the user is a member of."
msgstr "Organizatat të cilat përdoruesi është anëtar i. "
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your documents"
msgstr "Organizoni dokumentet tuaja"
#: apps/remix/app/components/dialogs/organisation-group-create-dialog.tsx
msgid "Organise your members into groups which can be assigned to teams"
msgstr "Organizoni anëtarët tuaj në grupe që mund të caktohen në ekipe"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Organise your templates"
msgstr "Organizoni shabllonet tuaja"
#: apps/remix/app/routes/_authenticated+/o.$orgUrl._index.tsx
msgid "Organize your documents and templates"
msgstr "Organizoni dokumentet dhe shabllonet tuaj"
@ -4779,6 +4910,10 @@ msgstr "Zgjidhni një fjalëkalim"
msgid "Pick any of the following agreements below and start signing to get started"
msgstr "Zgjidhni ndonjë nga marrëveshjet e mëposhtme dhe filloni të nënshkruani për të nisur"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Pin"
msgstr "Vendos"
#: 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
@ -5305,7 +5440,6 @@ msgstr "Ruajtja e Dokumenteve"
msgid "Retry"
msgstr "Provoni përsëri"
#: 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+/organisation.invite.$token.tsx
#: apps/remix/app/routes/_unauthenticated+/organisation.decline.$token.tsx
@ -5321,6 +5455,7 @@ msgstr "Kthehu në Faqen Kryesore"
msgid "Return to sign in"
msgstr "Kthehu te Hyrja"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/components/general/teams/team-email-usage.tsx
msgid "Revoke"
msgstr "Revoko"
@ -5329,6 +5464,12 @@ msgstr "Revoko"
msgid "Revoke access"
msgstr "Revoko qasje"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Revoke all sessions"
msgstr "Revoko të gjitha seancat"
#: apps/remix/app/components/tables/user-organisations-table.tsx
#: apps/remix/app/components/tables/team-members-table.tsx
#: apps/remix/app/components/tables/team-groups-table.tsx
@ -5348,11 +5489,6 @@ msgstr "Roli"
msgid "Roles"
msgstr "Rolet"
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Root (No Folder)"
msgstr "Rrënjë (Pa Dosje)"
#: packages/ui/primitives/data-table-pagination.tsx
msgid "Rows per page"
msgstr "Rreshta për faqe"
@ -5404,6 +5540,14 @@ msgstr "Kërko sipas ID të organizatës, emrit, ID të klientit ose email i pro
msgid "Search documents..."
msgstr "Kërko dokumente..."
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.folders._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/documents.folders._index.tsx
#: apps/remix/app/components/dialogs/template-move-to-folder-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Search folders..."
msgstr "Kërkoni dosje..."
#: packages/ui/components/common/language-switcher-dialog.tsx
msgid "Search languages..."
msgstr "Kërko gjuhë..."
@ -5428,6 +5572,10 @@ msgstr "Aktiviteti i Sigurisë"
msgid "Select"
msgstr "Zgjidh"
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "Select a destination for this folder."
msgstr "Zgjidhni një destinacion për këtë dosje."
#: apps/remix/app/components/dialogs/document-move-to-folder-dialog.tsx
msgid "Select a folder to move this document to."
msgstr "Zgjidhni një dosje për të zhvendosur këtë dokument."
@ -5481,6 +5629,10 @@ msgstr "Zgjidh opsionin e paracaktuar"
msgid "Select groups"
msgstr "Zgjidh grupet"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups of members to add to the team."
msgstr "Zgjidh grupet e anëtarëve për t'i shtuar në ekip."
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select groups to add to this team"
msgstr "Zgjidh grupet për t'u shtuar në këtë ekip"
@ -5492,7 +5644,6 @@ msgid "Select members"
msgstr "Zgjidh anëtarët"
#: apps/remix/app/components/dialogs/team-member-create-dialog.tsx
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Select members or groups of members to add to the team."
msgstr "Zgjidh anëtarët ose grupet e anëtarëve për t'i shtuar në ekip."
@ -5602,6 +5753,14 @@ msgstr "Duke Dërguar..."
msgid "Sent"
msgstr "Dërguar"
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Session revoked"
msgstr "Sesion i revokuar"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "Sessions have been revoked"
msgstr "Sesione janë revokuar"
#: apps/remix/app/components/general/claim-account.tsx
msgid "Set a password"
msgstr "Vendosni një fjalëkalim"
@ -5621,6 +5780,7 @@ msgstr "Vendosni cilësitë e shabllonit tuaj dhe informacionin e marrësit"
#: 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
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Settings"
msgstr "Cilësimet"
@ -6318,7 +6478,6 @@ msgstr "Titulli i shabllonit"
msgid "Template updated successfully"
msgstr "Shablloni u përditësua me sukses"
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.$id._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/settings.public-profile.tsx
@ -6449,12 +6608,10 @@ msgstr "Ngjarjet që do të nxisin dërgimin e një webhook në URL-në tuaj."
msgid "The fields have been updated to the new field insertion method successfully"
msgstr "Fushat janë përditësuar në metodën e re të futjes së fushës me sukses"
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "The folder you are trying to delete does not exist."
msgstr "Dosja që po përpiqeni të fshini nuk ekziston."
#: apps/remix/app/components/dialogs/template-folder-move-dialog.tsx
#: apps/remix/app/components/dialogs/folder-move-dialog.tsx
msgid "The folder you are trying to move does not exist."
msgstr "Dosja që po përpiqeni të zhvendosni nuk ekziston."
@ -6771,10 +6928,9 @@ msgstr "Ky email do t'i ndërlidhet marrësit që sapo ka nënshkruar dokumentin
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 "Ky fushë nuk mund të modifikohet apo të fshihet. Kur ndani lidhjen direkte të këtij model ose e shtoni në profilin tuaj publik, kushdo që e akseson mund të shkruajë emrin dhe email-in e tij, dhe të plotësojë fushat e caktuara për ta."
#: apps/remix/app/components/dialogs/template-folder-create-dialog.tsx
#: apps/remix/app/components/dialogs/folder-create-dialog.tsx
msgid "This folder name is already taken."
msgstr "Ky emër dosjeje është marrë tashmë."
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "This folder contains multiple items. Deleting it will also delete all items in the folder, including nested folders and their contents."
msgstr "Kjo dosje përmban disa artikuj. Fshirja e saj do të fshijë gjithashtu të gjitha artikujt në dosje, duke përfshirë dosjet e mbivendosura dhe përmbajtjet e tyre."
#: 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."
@ -6784,10 +6940,6 @@ msgstr "Kështu do të arrijë dokumenti te marrësit sapo dokumenti të jetë g
msgid "This is the claim that this organisation was initially created with. Any feature flag changes to this claim will be backported into this organisation."
msgstr "Kjo është kërkesa që kjo organizatë fillimisht u krijua me të. Çdo ndryshim në flamurët e veçorive në këtë kërkesë do të transferohet në këtë organizatë."
#: apps/remix/app/routes/_unauthenticated+/team.verify.transfer.$token.tsx
msgid "This link is invalid or has expired."
msgstr "Ky lidhje është e pavlefshme ose ka skaduar."
#: 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 "Ky link është i pavlefshëm ose ka skaduar. Ju lutem kontaktoni ekipin tuaj për të dërguar përsëri një verifikim."
@ -6858,6 +7010,10 @@ msgstr "Kjo do të dërgohet pronarit të dokumentit sapo dokumenti të jetë pl
msgid "This will ONLY backport feature flags which are set to true, anything disabled in the initial claim will not be backported"
msgstr "Kjo do të TRANSFEROHET VETËM flamujt e veçorive që janë vendosur në të vërtetë, çdo gjë që është çaktivizuar në kërkesën fillestare nuk do të transferohet"
#: apps/remix/app/components/dialogs/session-logout-all-dialog.tsx
msgid "This will sign you out of all other devices. You will need to sign in again on those devices to continue using your account."
msgstr "Kjo do t'ju nxjerrë nga të gjitha pajisjet e tjera. Do të duhet të hyni përsëri në ato pajisje për të vazhduar përdorimin e llogarisë suaj."
#: apps/remix/app/components/tables/internal-audit-log-table.tsx
#: apps/remix/app/components/tables/document-logs-table.tsx
msgid "Time"
@ -7144,6 +7300,9 @@ msgstr "I papërfunduar"
#: 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+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
msgid "Unknown"
msgstr "E panjohur"
@ -7155,6 +7314,10 @@ msgstr "E pakufizuar"
msgid "Unlimited documents, API and more"
msgstr "Dokumente pa kufi, API dhe më shumë"
#: apps/remix/app/components/general/folder/folder-card.tsx
msgid "Unpin"
msgstr "Çaktivizo"
#: apps/remix/app/components/dialogs/team-group-create-dialog.tsx
msgid "Untitled Group"
msgstr "Grup pa titull"
@ -7497,6 +7660,11 @@ msgstr "Shiko të gjitha dokumentet e lidhura"
msgid "View all security activity related to your account."
msgstr "Shiko të gjitha aktivitetet e sigurisë lidhur me llogarinë tuaj."
#: apps/remix/app/routes/_authenticated+/settings+/security.sessions.tsx
#: apps/remix/app/routes/_authenticated+/settings+/security._index.tsx
msgid "View and manage all active sessions for your account."
msgstr "Shiko dhe menaxho të gjitha seancat aktive për llogarinë tuaj."
#: apps/remix/app/components/forms/2fa/view-recovery-codes-dialog.tsx
msgid "View Codes"
msgstr "Shiko Kodet"
@ -7855,7 +8023,6 @@ msgstr "Ne do të gjenerojmë lidhje nënshkrimi për ju, të cilat mund t'i dë
msgid "We won't send anything to notify recipients."
msgstr "Ne nuk do të dërgojmë asgjë për të njoftuar pranuesit."
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
#: apps/remix/app/components/tables/documents-table-empty-state.tsx
msgid "We're all empty"
@ -8215,7 +8382,6 @@ msgstr "Ju e keni iniciuar dokumentin {0} që ju kërkon të {recipientActionVer
msgid "You have no webhooks yet. Your webhooks will be shown here once you create them."
msgstr "Ju nuk keni ende ndonjë webhook. Webhook-et tuaja do të shfaqen këtu sapo t'i krijoni."
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates.f.$folderId._index.tsx
#: apps/remix/app/routes/_authenticated+/t.$teamUrl+/templates._index.tsx
msgid "You have not yet created any templates. To create a template please upload one."
msgstr "Ju ende nuk keni krijuar ndonjë shabllon. Për të krijuar një shabllon ju lutemi ngarkoni një."
@ -8317,7 +8483,6 @@ msgstr "Ju keni verifikuar adresën tuaj të emailit për <0>{0}</0>."
msgid "You must enter '{deleteMessage}' to proceed"
msgstr "Duhet të shkruani '{deleteMessage}' për të vazhduar"
#: apps/remix/app/components/dialogs/template-folder-delete-dialog.tsx
#: apps/remix/app/components/dialogs/folder-delete-dialog.tsx
msgid "You must type '{deleteMessage}' to confirm"
msgstr "Ju duhet të shkruani '{deleteMessage}' për të konfirmuar"

View File

@ -15,6 +15,15 @@ export type RecipientColorStyles = {
// !: values of the declared variable to do all the background, border and shadow styles.
export const RECIPIENT_COLOR_STYLES = {
readOnly: {
base: 'ring-neutral-400',
fieldItem: 'group/field-item rounded-[2px]',
fieldItemInitials: '',
comboxBoxTrigger:
'ring-2 ring-recipient-green shadow-[0_0_0_5px_hsl(var(--recipient-green)/10%),0_0_0_2px_hsl(var(--recipient-green)/60%),0_0_0_0.5px_hsl(var(--recipient-green))]',
comboxBoxItem: '',
},
green: {
base: 'ring-recipient-green hover:bg-recipient-green/30',
fieldItem: 'group/field-item rounded-[2px]',