import { type LocaleCode } from "@agent-native/core/client/i18n"; import zhTW from "./i18n/zh-TW"; const enUS = { common: { connect: "Connect", connected: "Connected", connecting: "Connecting...", clipboardUnavailable: "Clipboard access is unavailable", disconnect: "Disconnect", notConnected: "Not connected", loadFailed: "Could not load this data.", retry: "Retry", saving: "Saving...", }, root: { commandActions: "Actions", commandSearch: "Search", commandAppearance: "Appearance", toggleTheme: "Toggle theme", }, timezone: { select: "Select timezone", searchPlaceholder: "Search timezone or city...", empty: "No timezone found.", }, navigation: { brand: "Calendar", calendar: "Calendar", bookingLinks: "Booking links", team: "Team", settings: "Settings", }, routeTitles: { bookingLinks: "Booking Links — Calendar", bookMeeting: "Book a Meeting", eventPreview: "Event Preview", manageBooking: "Manage Booking", notFound: "Not Found - Calendar", settings: "Settings — Calendar", team: "Team — Calendar", }, notFound: { backToCalendar: "Back to Calendar", pageMissing: "This page doesn't exist yet.", }, eventPreview: { couldNotLoadEvent: "Could not load event", noEventId: "No event id provided. Add ?id= to the URL.", openCalendar: "Open calendar", }, agentSidebar: { emptyState: "Ask me anything about your calendar", suggestions: { today: "What's on my calendar today?", findSlot: "Find a 30-min slot with Alice next week", scheduleZoom: "Schedule a Zoom with the team Friday", }, }, cloudUpgrade: { authToken: "Auth token", connectedReloading: "Connected successfully. Reloading...", connectionFailed: "Connection failed", databaseUrlRequired: "Database URL is required", savingCredentials: "Saving credentials...", setupSteps: "Setup steps", testAndConnect: "Test & Connect", testingConnection: "Testing connection...", providers: { turso: { description: "SQLite at the edge", steps: { step1: "Install CLI: curl -sSfL https://get.tur.so/install.sh | bash", step2: "Sign up / login: turso auth login (opens browser)", step3: "Create a database: turso db create my-app", step4: "Copy the URL: turso db show my-app --url → starts with libsql://", step5: "Create an auth token: turso db tokens create my-app → paste below", }, }, neon: { description: "Serverless Postgres", steps: { step1: "Go to console.neon.tech and sign up or log in", step2: 'Click "New Project" → pick a name and region → click Create', step3: "On the project dashboard, find the Connection Details panel", step4: 'Select "Connection string" tab → copy the postgres://... URL', step5: "Paste the full connection string (includes password) below", }, }, supabase: { description: "Open source Firebase alternative", steps: { step1: "Go to supabase.com/dashboard and sign up or log in", step2: 'Click "New Project" → set a name and database password → click Create', step3: "Wait for the project to finish provisioning (~30 seconds)", step4: "Go to Project Settings → Database → Connection string", step5: 'Select "URI" tab → copy the postgres://... string (replace [YOUR-PASSWORD] with your DB password)', }, }, d1: { description: "SQLite on Cloudflare's edge", steps: { step1: "Go to dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'Click "Create" → name your database → click Create', step3: "Copy the Database ID from the database overview page", step4: "For the auth token: go to My Profile → API Tokens → Create Token", step5: 'Select "Edit Cloudflare Workers" template → Create Token → copy it', step6: "Paste as: d1:// with the API token below", }, }, }, }, apollo: { apiKeyPlaceholder: "Paste Apollo API key...", attendeeCount_one: "{{count}} person", attendeeCount_other: "{{count}} people", connectApollo: "Connect Apollo", description: "Add your Apollo API key to enrich attendee profiles with company, title, and contact data.", howToGetKey: "How to get your key", openSettings: "Open Apollo Settings →", researchMeeting: "Research meeting", steps: { login: "Log in to Apollo.io", api: "Go to Settings → Integrations → API", connect: 'Click "Connect" to generate a key', }, }, attendees: { addAnotherGuest: "Add another guest", clearTimezone: "Clear timezone", contacts: "Contacts", contactsReconnect: "Contacts or directory access needs to be reconnected.", directory: "Directory", guestOptions: "Guest options for {{email}}", inviteEmail: "Invite {{email}}", markOptional: "Mark as optional", markRequired: "Mark as required", optionalBadge: "Optional", otherContacts: "Other contacts", removeAttendee: "Remove {{email}}", searchingPeople: "Searching people", setTimezone: "Set timezone…", }, findTime: { busy: "Busy", noMatchingSlots: "No matching slots", refreshing: "Refreshing", suggestedTimes: "Suggested Times", takeoverDescription: "Review shared availability and choose a meeting time.", you: "You", }, googleSync: { failed: "Failed to sync with Google Calendar", syncGoogle: "Sync Google", syncedCount_one: "{{count}} event synced", syncedCount_other: "{{count}} events synced", syncedFromGoogleCalendar_one: "Synced {{count}} event from Google Calendar", syncedFromGoogleCalendar_other: "Synced {{count}} events from Google Calendar", }, sidebar: { collapseSidebar: "Collapse sidebar", expandSidebar: "Expand sidebar", addGoogleAccount: "Add Google account", colorByMeetingType: "Color by meeting type (external, internal, 1:1, group, etc.)", googleCalendarSettings: "Google Calendar settings", hideCalendar: "Hide calendar", myCalendars: "My Calendars", nextYear: "Next year", otherCalendars: "Other Calendars", otherCalendarsDescription: "Add a teammate's calendar or subscribe to a public calendar URL", previousYear: "Previous year", showCalendar: "Show calendar", }, integrations: { addIntegration: "Add integration", addIntegrations: "Add integrations", apolloDescription: "Contact enrichment & company data", apolloKeyPlaceholder: "Apollo API key...", connectedCount: "Integrations ({{connected}}/{{total}})", gongDescription: "Recent calls & conversation intelligence", gongKeyPlaceholder: "Gong API key or access_key:secret...", go: "Go", hubSpotDescription: "CRM contacts, deals & tickets", hubSpotKeyPlaceholder: "HubSpot private app token...", newIntegration: "New integration", newIntegrationPlaceholder: "e.g. Salesforce, Intercom...", openProviderSettings: "Open {{provider}} Settings →", pylonDescription: "Support issues & account data", pylonKeyPlaceholder: "Pylon API token...", title: "Integrations", toGetApiKey: "To get your API key:", updateKey: "Update key", steps: { apolloLogin: "Log in to Apollo.io", apolloApi: "Go to Settings > Integrations > API", apolloConnect: 'Click "Connect" to generate a key', hubSpotPrivateApps: "Go to HubSpot > Settings > Integrations > Private Apps", hubSpotCreateApp: "Create a private app with CRM scopes", copyAccessToken: "Copy the access token", gongApi: "Go to Gong > Company Settings > API", gongGenerate: "Generate API credentials", gongCopyAccessKey: "Copy the access key (or key:secret)", pylonApi: "Go to Pylon > Settings > API", pylonCreateToken: "Create an API token (requires Admin)", copyBearerToken: "Copy the bearer token", }, }, settings: { title: "Settings", description: "Configure your calendar and integrations.", languageTitle: "Language", languageDescription: "Choose the interface language for Calendar.", languageLabel: "Interface language", agentTitle: "Manage agent", agentDescription: "Manage the agent's model, API keys, automations, voice, and other controls.", openAgentSettings: "Manage agent", googleCalendar: "Google Calendar", googleDescription: "Connect your Google Calendar to sync events.", googleFailed: "Google sign-in failed", googleDisconnected: "Google Calendar disconnected", disconnectFailed: "Failed to disconnect", zoomOpened: "Zoom connection opened", zoomConnectFailed: "Could not connect Zoom", zoomDisconnected: "Zoom disconnected", zoomDisconnectFailed: "Failed to disconnect Zoom", general: "General", generalDescription: "Calendar defaults and fallback booking copy.", timezone: "Timezone", saveSettings: "Save Settings", saved: "Settings saved", saveFailed: "Failed to save settings", appearance: "Appearance", appearanceDescription: "Pick a color theme for your workspace. Or just ask the agent.", connectGoogleCalendar: "Connect Google Calendar", connectGoogleDescription: "Sync your events and manage everything in one place.", zoomDescription: "Connect Zoom to create meeting links for calendar events and bookings.", zoomNotConfigured: "Not configured", zoomCredentialsPrompt: "Add Zoom OAuth credentials to enable connection.", bookingTitleLabel: "Fallback booking page title", bookingTitlePlaceholder: "Book a Meeting", bookingTitleHelp: "Used only when a booking link has no title. Create, open, and copy public URLs from Booking links.", bookingDescriptionLabel: "Fallback booking page description", bookingDescriptionPlaceholder: "Pick a time that works for you.", bookingDescriptionHelp: "Used only when a booking link has no description of its own.", defaultDurationLabel: "Default event duration (minutes)", defaultDurationHelp: "Default length for new calendar events and booking slots. Booking links can override this per link.", }, eventDialog: { eventUpdated: "Event updated", updateFailed: "Failed to update event", eventDeleted: "Event deleted", deleteFailed: "Failed to delete event", description: "Description", addDescription: "Add a description...", start: "Start", end: "End", location: "Location", addLocation: "Add a location...", pressToSave: "Press {{shortcut}} to save", pressToEditDelete: "Press E to edit · Del to delete", allDay: "All day", cancel: "Cancel", saving: "Saving...", saveChanges: "Save changes", edit: "Edit", delete: "Delete", close: "Close", }, deleteEvent: { title: "Delete event?", fallbackDescription: "This event will be deleted.", recurringTitle: "This is a recurring event", removeTitle: "Remove event?", chooseScope: "Choose how much of the series to {{action}}.", notifyGuests: "You can notify guests with an optional note.", willBeActioned: "This event will be {{action}}d.", thisEvent: "This event", thisAndFollowing: "This and following events", allEvents: "All events", cancellationNote: "Add a cancellation note", cancellationPlaceholder: "Why the event is being cancelled...", guest_one: "{{count}} guest", guest_other: "{{count}} guests", cancel: "Cancel", dontNotify: "Don't notify", sendCancellation: "Send cancellation", removeEvent: "Remove event", deleteEvent: "Delete event", removeAction: "remove", deleteAction: "delete", }, keyboardShortcuts: { title: "Keyboard Shortcuts", navigation: "Navigation", views: "Views", events: "Events", searchQuickActions: "Search & Quick Actions", nextPeriod: "Next period (day / week / month)", previousPeriod: "Previous period", goToday: "Go to today", showTeammateCalendars: "Show teammate calendars", monthView: "Month view", weekView: "Week view", dayView: "Day view", createNewEvent: "Create new event", deleteSelectedEvent: "Delete selected event", closeDialog: "Close dialog / cancel", openCommandPalette: "Open command palette", showKeyboardShortcuts: "Show keyboard shortcuts", disabledWhileTyping: "Shortcuts are disabled while typing in text fields.", }, manageBooking: { title: "Manage Booking", description: "Cancel or reschedule your meeting.", notFound: "Booking not found", notFoundDescription: "This link may have expired or the booking may have been removed.", cancelled: "Booking Cancelled", cancelledPrefix: "Your booking for", cancelledDateConnector: "on", cancelledSuffix: "has been cancelled.", reschedule: "Reschedule", bookedBy: "Booked by {{name}}", pastMeeting: "This meeting has already passed.", rescheduleTitle: "Reschedule this booking?", rescheduleDescription: "Your current booking will be cancelled and you'll be taken to pick a new time.", keepCurrentTime: "Keep Current Time", cancelFailed: "Failed to cancel booking", cancelBooking: "Cancel Booking", cancelTitle: "Cancel this booking?", cancelDescriptionPrefix: "This will cancel your", cancelDescriptionDateConnector: "on", cancelDescriptionSuffix: ". This action cannot be undone.", keepBooking: "Keep Booking", cancelling: "Cancelling...", yesCancel: "Yes, Cancel", }, eventOptions: { calendarDefault: "Calendar default", noAlerts: "No alerts", customAlerts: "Custom alerts", addAlert: "Add alert", removeAlert: "Remove alert {{number}}", addAttachment: "Add attachment", removeAttachment: "Remove attachment {{number}}", attachmentTitle: "Attachment title", uploadAttachment: "Upload attachment", attachmentUploaded: "Attachment uploaded", attachmentUploadLimit: "Attachment uploads can be up to 25 MB.", uploadFailed: "Could not upload attachment.", uploadMissingUrl: "Upload did not return an attachment URL.", attachmentFallbackTitle: "Attachment", fileUploadsNotConfigured: "File uploads are not configured. Paste a Drive or HTTPS URL instead.", fileUploadsNeedProvider: "File uploads need a configured upload provider. Paste a Drive or HTTPS URL for now.", uploadFile: "Upload file", uploading: "Uploading", maxAttachments: "Google Calendar supports up to {{count}} attachments per event.", uploadProviderPermissionError: "File upload is not available with the current upload provider credentials. Check Builder.io permissions in Settings, or paste a Drive/HTTPS URL instead.", setEventColorTo: "Set event color to {{color}}", }, googleConnect: { addAccount: "Add account", addAccountWithPlus: "+ Add account", connectGoogleCalendar: "Connect Google Calendar", connectGoogle: "Connect Google", signInWithGoogle: "Sign in with Google", syncEventsDescription: "Sync your events and manage your schedule.", readyToConnect: "Ready to connect — sign in with your Google account", connectToSync: "Connect Google to sync your calendar", hideSetup: "Hide setup", followSteps: "Follow these steps to connect your Google account. Takes about 3 minutes.", googleMayShowWarning: "Google may show a warning", googleNotVerifiedTitle: "“Google hasn’t verified this app”", googleWarningBeforeAdvanced: "You’ll see this screen because the calendar connects through your own Google Cloud project, not a Google-reviewed public app. It’s safe to continue: click", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", then", googleWarningUnsafe: "“Go to … (unsafe)”", googleWarningAfterUnsafe: "to finish connecting.", accountConnectedElsewhere: "This account is connected to another login", googleConnectionFailed: "Google connection failed", managedCredentialsUnavailable: "Google Calendar is unavailable", managedCredentialsUnavailableDescription: "Calendar's Google connection is not configured for this deployment. Please try again later.", thatGoogleAccount: "that Google account", signOutThenSignIn: "Sign out, then sign in with {{account}}.", signOut: "Sign out", dismiss: "Dismiss", dismissNotice: "Dismiss Google sign-in notice", copy: "Copy", copied: "Copied", uploadJson: "Upload JSON", credentialsConfiguredSignIn: 'Credentials configured. Click "Connect Google Calendar" above to sign in.', missingClientCredentials: "Could not find client_id and client_secret in JSON", failedSaveCredentials: "Failed to save credentials", failedSave: "Failed to save", failedParseJson: "Failed to parse JSON", clientId: "Client ID", clientSecret: "Client Secret", credentialsConfiguredAbove: "Credentials configured. You can now connect your Google Calendar above.", hideManualEntry: "Hide manual entry", orPasteManually: "Or paste manually", saveCredentials: "Save credentials", steps: { enableApi: { title: "Enable the Google Calendar API", description: "Open Google Cloud Console and click 'Enable' on the Calendar API.", linkText: "Enable Calendar API", }, consent: { title: "Configure OAuth consent screen", description: 'Set the app name to anything (e.g. "My Calendar"), choose "External" user type, and add your email as a test user. If you see an overview page, consent is already configured — skip to the next step.', linkText: "Configure consent screen", }, credentials: { title: "Create OAuth credentials", description: '1) Click "+ Create Credentials" → "OAuth client ID"\n2) Choose "Web application"\n3) Add this redirect URI:', linkText: "Create credentials", }, upload: { title: "Upload credentials JSON", description: 'Click "Download JSON" on the credentials page, then upload it here.', }, }, }, bookingLinks: { add: "Add", availability: "Availability", availabilityDescription: "Set your available hours for bookings.", availabilitySaved: "Availability saved", availabilitySaveFailed: "Failed to save availability", availabilityUnavailable: "This host's calendar availability can't be checked right now. Please try again later.", availableTimes: "Available Times", allCount: "All ({{count}})", back: "Back", bookAMeeting: "Book a Meeting", bookingDetails: "Booking Details", bookingCancelled: "Booking cancelled", bookingLinkNotFound: "Booking link not found", bookingLinkCopied: "Booking link copied", bookingLinkCreated: "Booking link created", bookingLinkCreateFailed: "Failed to create booking link", bookingLinkDeleted: "Booking link deleted", bookingLinkDeleteFailed: "Failed to delete booking link", bookingLinkUpdated: "Booking link updated", bookingLinkUpdateFailed: "Failed to update booking link", bookingPageSlug: "Booking page slug", booking: "Booking...", bookingConfirmed: "Booking Confirmed", bookingRules: "Booking Rules", bookingRulesDescription: "Configure buffer time, notice periods, and slot settings.", bookingUsername: "Booking username", bookingUsernameHelp: "Your unique handle for booking URLs, e.g.", bookingUsernameUpdateFailed: "Failed to update booking username", bookersChooseBetween: "Bookers will choose between: {{durations}}", bookAnother: "Book Another", bookings: "Bookings", bufferBetweenEvents: "Buffer between events (min)", cancelOrReschedule: "Cancel or reschedule", cancelBooking: "Cancel booking", cancelled: "Cancelled", cancelledCount: "Cancelled ({{count}})", changeDate: "Change date", changeTime: "Change time", chooseDuration: "Choose a Duration", cloudUpgradeDescription: "To share your booking page publicly, connect a cloud database so bookings can be received from anywhere.", collapsePreview: "Collapse preview", confirmBooking: "Confirm Booking", confirmation: "confirmation", confirmationSent: "You're all set! A confirmation has been sent to your email.", confirmed: "Confirmed", confirmedCount: "Confirmed ({{count}})", confirming: "Confirming", conferencing: "Conferencing", connectZoom: "Connect Zoom", copyBookingLink: "Copy booking link", copyLink: "Copy link", createFirstLink: "Create your first link", createLink: "Create link", custom: "Custom", customLink: "Custom link", customLinkDescription: "Paste any meeting URL", date: "Date", dateAndTime: "Date & Time", dateSelection: "date selection", defaultDescription: "Pick a time that works for you.", deleteBookingLink: "Delete booking link", deleteDescriptionPrefix: "This will permanently remove", deleteDescriptionSuffix: "and its public booking page. This can't be undone.", description: "Create meeting types with public links and configure your availability.", detailCount_one: "{{count}} detail", detailCount_other: "{{count}} details", details: "Details", durationSelection: "duration selection", disable: "Disable", durationMinError: "Duration must be at least 5 minutes.", durationOptions: "Duration options", durationOptionsDescription: "Select one or more — bookers will choose when scheduling.", durationRangeError: "Enter a duration between 5 and 480 minutes", email: "Email", enable: "Enable", everyDay: "Every day", failedToCancelBooking: "Failed to cancel booking", failedToCreateBooking: "Failed to create booking", generalAccess: "General management access", goToStep: "Go to {{step}}", goToPreviewStep: "Go to preview step {{step}}", googleMeet: "Google Meet", googleMeetDescription: "Auto-generate a Meet link", hidden: "Hidden", hoursShort: "{{count}} hr", invalidEmail: "Invalid email: {{email}}", fieldFormatError: "{{label}} does not match the expected format", fieldRequired: "{{label}} is required", linkDisabled: "{{title}} disabled", linkEnabled: "{{title}} enabled", linkVisibility: "Link visibility", linkVisibilityDescription: "Turn this off to disable the public page.", loadingMeetingTypes: "Loading meeting types", maxAdvanceBooking: "Max advance booking (days)", meetingName: "Meeting name", meetingLink: "Meeting Link", meetingTypeUnavailable: "This meeting type may have been removed or is no longer active.", meetingTypes: "Meeting Types", meetingUrl: "Meeting URL", minuteMeeting: "{{count}} minute meeting", minutes: "Minutes", minutesLong: "{{count}} minutes", minutesShort: "{{count}} min", minimumNotice: "Minimum notice (hours)", name: "Name", needToMakeChanges: "Need to make changes?", newBookingLink: "New booking link", noBookingsFound: "No bookings found.", noAvailabilityOnDay: "No availability on this day", noAvailableSlotsForDate: "No available slots for this date.", noAvailabilitySet: "No availability set", noBookingCreated: "No booking was created.", noBookingLinks: "No booking links yet", noBookingLinksDescription: "Create a booking link to let people schedule meetings with you.", noConferencing: "No conferencing", noConferencingDescription: "In-person, phone, or add details later", no: "No", notesOptional: "Notes (optional)", notes: "Notes", notesPlaceholder: "Anything you'd like to share", oneOnOne: "One-on-One", onlyYouRequired: "Only you are required.", openBookingLink: "Open booking link", openBookingPageNewTab: "Open booking page in new tab", openInNewTab: "Open in new tab", openInteractiveBookingLink: "Open interactive booking link", openLink: "Open link", openPreview: "Open preview", optional: "(optional)", orgAccessDescription: "Anyone in your organization can open and manage this booking link", peopleAccess: "People with management access", preview: "Preview", previewConfirmed: "Preview Confirmed", previewGuest: "Preview Guest", privateAccessDescription: "Only invited people can manage this booking link", publicAccessDescription: "Anyone with the app link can view this booking link setup", publicBookingLink: "Public booking link", publicManagementAccess: "Public management access", quickChat: "Quick Chat", requiredHosts: "Required hosts", requiredHostsCount: "{{count}} required hosts", requiredHostsDescription: "You are included automatically. Add teammates who must also be free.", removeHost: "Remove {{email}}", saveAvailability: "Save Availability", saved: "Saved", selectDate: "Select a Date", selectTime: "Select a Time", selectedDateTime: "{{date}} at {{time}}", selectPlaceholder: "Select...", shareBookingLink: "Share Booking Link", shareUrlDescription: "Bookers use this URL to pick a time. Sharing controls who can manage this booking link.", shownOnBookingPage: "Shown on the booking page", slotDuration: "Slot duration (minutes)", status: "Status", stillCreating: "Still creating — please try again in a moment", time: "Time", timeSelection: "time selection", timezoneHelp: "Weekly hours like 9 AM-5 PM are interpreted in this timezone before visitors see them in their own browser timezone.", title: "Booking links", to: "to", tryAgain: "Try Again", unavailable: "Unavailable", untitledMeeting: "Untitled Meeting", url: "URL", weekdays: "Weekdays", weekends: "Weekends", weeklySchedule: "Weekly Schedule", weeklyScheduleDescription: "Toggle days and set available hours.", yes: "Yes", yourName: "Your name", yourInformation: "Your Information", zoom: "Zoom", zoomConnectAccount: "Zoom is selected. Connect your account to create a meeting for each booking.", zoomDescription: "Auto-create a Zoom meeting per booking", zoomMissingCredentials: "Zoom is selected, but this deployment is missing Zoom OAuth credentials.", zoomStartFailed: "Could not start Zoom connection", days: { sunday: "Sunday", sundayShort: "Su", monday: "Monday", mondayShort: "Mo", tuesday: "Tuesday", tuesdayShort: "Tu", wednesday: "Wednesday", wednesdayShort: "We", thursday: "Thursday", thursdayShort: "Th", friday: "Friday", fridayShort: "Fr", saturday: "Saturday", saturdayShort: "Sa", }, }, calendarView: { addTitleBeforeCreate: "Add a title before creating the event", calendarSettingsLoading: "Calendar settings are still loading. Try again in a moment.", day: "Day", display: "Display", endTimeAfterStart: "End time must be after start time", eventDeleted: "Event deleted", eventMoved: "Event moved", eventRemoved: "Event removed", eventUpdated: "Event updated", failedDeleteEvent: "Failed to delete event", failedRestoreAttendance: "Failed to restore attendance", failedMoveEvent: "Failed to move event", failedUpdateEvent: "Failed to update event", googleCalendarLinkUnavailable: "Google Calendar link unavailable", hideWeekends: "Hide weekends", loadingCalendars: "Loading calendars", manageAccounts: "Manage accounts", month: "Month", movingEvent: "Moving event...", notificationEmptyDescription: "Calendar can pop browser alerts while this app is open. Clips desktop handles fuller meeting prompts with one-click notes.", openNavigation: "Open navigation", today: "Today", undo: "Undo", updatingEvent: "Updating event...", updatingRecurringEvent: "Updating recurring event...", week: "Week", }, eventForm: { addAttachment: "Add attachment", addCalendar: "Add Calendar", addCalendarFailed: "Failed to add calendar", addCalendarFromUrl: "Add calendar from URL", addGuest: "Add guest", addGuests: "Add guests", addNote: "Add note", addLocation: "Add location", addShortNote: "Add a short note...", addTitle: "Add title", addUpdateNote: "Add an update note", addingMeetingLink: "Adding {{provider}} link", alerts: "Alerts", allDay: "All day", allDays: "All days", allEvents: "All events", applyChangesTo: "Apply changes to", applyTo: "Apply to", askAi: "Ask AI", atStart: "At start", attachments: "Attachments", attendees: "Attendees", attendeesPlaceholder: "Search contacts or type an email", added: "Added", awaiting: "Awaiting", busy: "Busy", calendarFeedAdded: '"{{name}}" added', cancel: "Cancel", cancelEvent: "Cancel event", cancelRecurringDescription: "Choose how much of the series to cancel.", cancelRecurringEventQuestion: "Cancel recurring event?", cancelRecurringNotifyDescription: "Choose how much of the series to cancel and whether to notify guests.", color: "Color", commandPlaceholder: "Search events, go to date, or ask AI...", conferencingLinkOnSave: "Conferencing link is added when you save the event.", connectZoomBeforeCreate: "Connect Zoom before creating this event.", create: "Create", createAndSend: "Create and send", createEvent: "Create event", createEventWithTitle: 'Create "{{title}}"', createFailed: "Failed to create event", creating: "Creating…", custom: "Custom", customEllipsis: "Custom...", customRepeatGoogleCalendar: "Custom repeat schedules must be edited in Google Calendar.", customSchedule: "Custom schedule", daily: "Daily", default: "Default", delete: "Delete", description: "Description", directorySearchLimited: "Directory search is limited. Type a full email and press Enter to add.", discard: "Discard", doesNotRepeat: "Does not repeat", draftEvent: "Draft event", edit: "Edit", editNote: "Edit note", end: "End", endDate: "End date", event: "Event", eventAlerts: "Event alerts", eventOptions: "Event options", eventTitlePlaceholder: "Event title", events: "Events", everyWeekday: "Every weekday", everyTwoWeeks: "Every 2 weeks", findTime: "Find a time", focusTime: "Focus time", focusTimeTimedOnly: "Focus time events must have a specific start and end time.", free: "Free", fromUrl: "From URL", goToDate: "Go to {{date}}", goToToday: "Go to today", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet added", googleMeetAddFailed: "Failed to add Google Meet", home: "Home", invite: "Invite", invitedNotice: "{{count}} invited — Google will email them when you create", joinMeet: "Join Meet", joinMeeting: "Join Meeting", joinTeams: "Join Teams", joinZoom: "Join Zoom", jumpTo: "Jump to", loadingRepeat: "Loading repeat...", location: "Location", meet: "Meet", monthly: "Monthly", newEvent: "New Event", newEventLower: "New event", noGuests: "No guests", noVideo: "No video", notifyGuestsQuestion: "Notify guests?", none: "None", office: "Office", other: "Other", openInSidebar: "Open in sidebar", openInGoogleCalendar: "Open in Google Calendar", optionalDescription: "Optional description", optionalLocation: "Optional location", optionalNote: "Optional note", organizer: "Organizer", outOfOffice: "Out of office", outOfOfficeTimedOnly: "Out of office events must have a specific start and end time.", passcode: "Passcode: {{passcode}}", pasteLink: "Paste link", pasteShareableCalendarLink: "Paste a shareable calendar link from Google Calendar, iCloud, Outlook, etc.", pasteMeetingLink: "Paste meeting link (Zoom, Meet, Teams...)", people: "People", participants: "{{count}} participants", pin: "PIN: {{pin}}", private: "Private", press: "Press", public: "Public", quickCreate: "Quick create", recurringResponseScope: "Recurring response scope", repeats: "Repeats", repeat: "Repeat", reviewInvite: "Review Invite", responseAwaitingCount: "{{count}} awaiting", responseMaybeCount: "{{count}} maybe", responseNoCount: "{{count}} no", responseYesCount: "{{count}} yes", rsvpAccepted: "Yes", rsvpDeclined: "No", rsvpMaybe: "Maybe", rsvpNo: "No", rsvpTentative: "Maybe", rsvpYes: "Yes", save: "Save", saveRecurringResponseStatus: "Save response status for recurring event", saveResponse: "Save response", saveResponseStatus: "Save response status", savedAsVideoLink: "Saved as this event's video link", searchPeoplePlaceholder: "Search by name or type an email...", seeAllParticipants: "See all {{count}} participants", selectedEvent: "Selected event", sendCancellationDescription: "Send a cancellation to guests with an optional note.", sendUpdate: "Send update", sendUpdateDescription: "Send an update to guests with an optional note.", showAs: "Show as", showLess: "Show less", showMore: "Show more", showingCalendars: "Showing calendars", start: "Start", startDate: "Start date", subscribedFeeds: "Subscribed feeds", thisDayOnly: "This day only", thisEvent: "This event", timeSelected: "Time selected", timezone: "Timezone", title: "Title", titleRequired: "Title is required", toSave: "to save", toAdd: "to add", type: "Type", updateEvent: "Update event", updateNotePlaceholder: "What changed or what guests should know...", updateRecurringDescription: "Choose how much of the series to update.", updateRecurringEventQuestion: "Update recurring event?", updateRecurringNotifyDescription: "Choose how much of the series to update and whether to notify guests.", usePopoverInstead: "Use popover instead", video: "Video", viewTeammateCalendar: "View a teammate's calendar", viewingOwnerCalendar: "Viewing {{owner}}'s calendar", yourResponse: "Your response: {{status}}", visibility: "Visibility", onDate: "on {{date}}", onDay: "on {{day}}", onMonthDay: "on the {{day}}", weekdaysShort: "Mon–Fri", weekly: "Weekly", workingFrom: "Working from", workingLocation: "Working location", workingLocationDesk: "Desk {{desk}}", workingLocationFloor: "Floor {{floor}}", workingLocationTitle: "Working location: {{location}}", yearly: "Yearly", zoom: "Zoom", zoomAdded: "Zoom added", zoomAddFailed: "Failed to add Zoom", zoomConnectFailed: "Could not connect Zoom", zoomConnectionOpened: "Zoom connection opened", zoomNotConfigured: "Zoom OAuth is not configured.", zoomNotConfiguredDeployment: "Zoom is not configured for this deployment.", ai: { descriptionMessage: 'Draft a concise calendar event description for "{{title}}".', descriptionContext: "New event draft:\nTitle: {{title}}\nDate: {{date}}{{endDate}}\nTime: {{time}}\nTimezone: {{timezone}}\nLocation: {{location}}\nAttendees: {{attendees}}\nCurrent description: {{description}}\n\nWrite a short, useful meeting description. Keep it paste-ready and avoid adding facts that are not in the draft.", existingDescriptionContext: "Event id: {{id}}\nTitle: {{title}}\nWhen: {{start}} to {{end}}\nTimezone: {{timezone}}\nLocation: {{location}}\nAttendees: {{attendees}}\nCurrent description: {{description}}\n\nWrite a short, useful meeting description. If I ask you to apply it, update this event with the update-event action.", empty: "(empty)", none: "(none)", notSet: "(not set)", timeRange: "{{startTime}} to {{endTime}}", toDate: " to {{endDate}}", untitledEvent: "Untitled event", }, }, }; type Messages = typeof enUS; type DeepPartial = { [K in keyof T]?: T[K] extends Record ? DeepPartial : T[K]; } & Record; type PartialMessages = { [K in keyof Messages]?: DeepPartial; }; function mergeMessageGroup>( source: T, overrides: DeepPartial | undefined, ): T { const merged: Record = { ...source }; for (const [key, value] of Object.entries(source)) { if (value && typeof value === "object" && !Array.isArray(value)) { merged[key] = mergeMessageGroup( value as Record, undefined, ); } } if (!overrides) return merged as T; for (const [key, value] of Object.entries(overrides)) { const sourceValue = source[key]; merged[key] = sourceValue && typeof sourceValue === "object" && !Array.isArray(sourceValue) && value && typeof value === "object" && !Array.isArray(value) ? mergeMessageGroup( sourceValue as Record, value as DeepPartial>, ) : value; } return merged as T; } function mergeMessages(overrides: PartialMessages): Messages { return { common: mergeMessageGroup(enUS.common, overrides.common), root: mergeMessageGroup(enUS.root, overrides.root), timezone: mergeMessageGroup(enUS.timezone, overrides.timezone), navigation: mergeMessageGroup(enUS.navigation, overrides.navigation), routeTitles: mergeMessageGroup(enUS.routeTitles, overrides.routeTitles), notFound: mergeMessageGroup(enUS.notFound, overrides.notFound), eventPreview: mergeMessageGroup(enUS.eventPreview, overrides.eventPreview), agentSidebar: mergeMessageGroup(enUS.agentSidebar, overrides.agentSidebar), cloudUpgrade: mergeMessageGroup(enUS.cloudUpgrade, overrides.cloudUpgrade), apollo: mergeMessageGroup(enUS.apollo, overrides.apollo), attendees: mergeMessageGroup(enUS.attendees, overrides.attendees), findTime: mergeMessageGroup(enUS.findTime, overrides.findTime), googleSync: mergeMessageGroup(enUS.googleSync, overrides.googleSync), sidebar: mergeMessageGroup(enUS.sidebar, overrides.sidebar), integrations: mergeMessageGroup(enUS.integrations, overrides.integrations), settings: mergeMessageGroup(enUS.settings, overrides.settings), eventDialog: mergeMessageGroup(enUS.eventDialog, overrides.eventDialog), deleteEvent: mergeMessageGroup(enUS.deleteEvent, overrides.deleteEvent), keyboardShortcuts: mergeMessageGroup( enUS.keyboardShortcuts, overrides.keyboardShortcuts, ), manageBooking: mergeMessageGroup( enUS.manageBooking, overrides.manageBooking, ), eventOptions: mergeMessageGroup(enUS.eventOptions, overrides.eventOptions), googleConnect: mergeMessageGroup( enUS.googleConnect, overrides.googleConnect, ), bookingLinks: mergeMessageGroup(enUS.bookingLinks, overrides.bookingLinks), calendarView: mergeMessageGroup(enUS.calendarView, overrides.calendarView), eventForm: mergeMessageGroup(enUS.eventForm, overrides.eventForm), }; } const calendarSurfaceTranslations = { "zh-TW": zhTW, "zh-CN": { bookingLinks: { add: "添加", availability: "可用性", availabilitySaved: "已保存可用性", availabilitySaveFailed: "无法保存可用性", availableTimes: "可用时间", back: "返回", bookingDetails: "预订详情", bookingLinkCopied: "预订链接已复制", bookingLinkCreated: "预订链接已创建", bookingLinkCreateFailed: "创建预订链接失败", bookingLinkDeleted: "预订链接已删除", bookingLinkDeleteFailed: "删除预订链接失败", bookingLinkUpdated: "预订链接已更新", bookingLinkUpdateFailed: "无法更新预订链接", bookingRules: "预订规则", bookingRulesDescription: "配置缓冲时间、通知期限和时段设置。", bookingUsername: "预订用户名", bookingUsernameHelp: "您预订 URL 的独特处理方式,例如", bookingUsernameUpdateFailed: "更新预订用户名失败", bookersChooseBetween: "预订者将选择:{{durations}}", bookings: "预订", bufferBetweenEvents: "事件之间的缓冲区(分钟)", changeDate: "更改日期", changeTime: "变更时间", chooseDuration: "选择持续时间", cloudUpgradeDescription: "要公开共享您的预订页面,请连接云数据库,以便可以从任何地方接收预订。", collapsePreview: "折叠预览", confirmBooking: "确认预订", conferencing: "会议", connectZoom: "连接Zoom", copyBookingLink: "复制预订链接", copyLink: "复制链接", createFirstLink: "创建您的第一个链接", createLink: "创建链接", custom: "定制", customLink: "自定义链接", customLinkDescription: "粘贴任何会议URL", date: "日期", deleteBookingLink: "删除预订链接", deleteDescriptionPrefix: "这将永久删除", deleteDescriptionSuffix: "及其公共预订页面。这无法撤消。", description: "使用公共链接创建会议类型并配置您的可用性。", disable: "禁用", durationMinError: "持续时间必须至少为 5 分钟。", durationOptions: "持续时间选项", durationOptionsDescription: "选择一项或多项 — 预订者将在安排时选择。", durationRangeError: "输入 5 到 480 分钟之间的持续时间", email: "电子邮件", enable: "启用", everyDay: "每天", generalAccess: "一般管理访问", goToPreviewStep: "转到预览步骤 {{step}}", googleMeet: "Google Meet", googleMeetDescription: "自动生成 Meet 链接", hidden: "隐藏", hoursShort: "{{count}}小时", invalidEmail: "无效电子邮件:{{email}}", linkDisabled: "{{title}} 禁用", linkEnabled: "{{title}}已启用", linkVisibility: "链接可见性", linkVisibilityDescription: "关闭此功能可禁用公共页面。", loadingMeetingTypes: "正在加载会议类型", maxAdvanceBooking: "最多提前预订(天)", meetingName: "会议名称", meetingTypes: "会议类型", meetingUrl: "会议URL", minuteMeeting: "{{count}}分钟会议", minutes: "分钟", minutesLong: "{{count}}分钟", minutesShort: "{{count}} 分钟", minimumNotice: "最短通知时间(小时)", name: "名称", newBookingLink: "新的预订链接", noAvailabilityOnDay: "当天无空位", noAvailabilitySet: "未设置可用性", noBookingCreated: "未创建任何预订。", noBookingLinks: "还没有预订链接", noBookingLinksDescription: "创建预订链接,以便人们安排与您的会议。", noConferencing: "没有会议", noConferencingDescription: "亲自、电话或稍后添加详细信息", notesOptional: "注释(可选)", notesPlaceholder: "任何您想分享的内容", oneOnOne: "一对一", onlyYouRequired: "只有你需要。", openBookingLink: "打开预订链接", openBookingPageNewTab: "在新选项卡中打开预订页面", openInNewTab: "在新选项卡中打开", openInteractiveBookingLink: "打开互动预订链接", openLink: "打开链接", openPreview: "打开预览", optional: "(可选)", orgAccessDescription: "您组织中的任何人都可以打开和管理此预订链接", peopleAccess: "具有管理权限的人员", preview: "预览", previewConfirmed: "预览已确认", previewGuest: "预览嘉宾", privateAccessDescription: "只有受邀请的人才能管理此预订链接", publicAccessDescription: "知道该应用链接的任何人都可以查看此预订链接设置", publicBookingLink: "公开预订链接", publicManagementAccess: "公共管理访问", quickChat: "快速聊天", requiredHosts: "所需主机", requiredHostsCount: "{{count}} 所需主机", requiredHostsDescription: "您将自动包含在内。添加也必须空闲的队友。", removeHost: "删除{{email}}", saveAvailability: "保存可用性", saved: "已保存", selectDate: "选择日期", selectedDateTime: "{{date}} 于 {{time}}", selectPlaceholder: "选择...", shareBookingLink: "分享预订链接", shareUrlDescription: "预订者使用这款 URL 来选择时间。共享控制谁可以管理此预订链接。", shownOnBookingPage: "预订页面显示", slotDuration: "时段持续时间(分钟)", stillCreating: "仍在创建 - 请稍后再试", time: "时间", timezoneHelp: "每周上午 9 点至下午 5 点等时间在访问者在自己的浏览器时区中看到之前会先在该时区中进行解释。", title: "预订链接", to: "到", tryAgain: "再试一次", unavailable: "不可用", untitledMeeting: "无标题会议", url: "URL", weekdays: "平日", weekends: "周末", weeklySchedule: "每周日程", weeklyScheduleDescription: "切换日期并设置可用时间。", zoom: "Zoom", zoomConnectAccount: "选择 Zoom。连接您的帐户以便为每个预订创建会议。", zoomDescription: "每次预订自动创建 Zoom 会议", zoomMissingCredentials: "选择了 Zoom,但此部署缺少 Zoom OAuth 凭据。", zoomStartFailed: "无法启动 Zoom 连接", days: { sunday: "周日", sundayShort: "苏", monday: "星期一", mondayShort: "莫", tuesday: "星期二", tuesdayShort: "涂", wednesday: "星期三", wednesdayShort: "我们", thursday: "星期四", thursdayShort: "钍", friday: "周五", fridayShort: "Fr", saturday: "星期六", saturdayShort: "萨", }, }, eventForm: { addAttachment: "添加附件", addGuests: "添加客人", addLocation: "添加位置", addTitle: "添加标题", addingMeetingLink: "添加 {{provider}} 链接", alerts: "警报", allDay: "全天", allDays: "所有日期", allEvents: "所有活动", applyTo: "适用于", askAi: "询问人工智能", atStart: "开始时", attachments: "附件", attendees: "出席者", attendeesPlaceholder: "搜索联系人或输入电子邮件", busy: "忙", cancel: "取消", color: "颜色", conferencingLinkOnSave: "保存活动时会添加会议链接。", connectZoomBeforeCreate: "在创建此事件之前连接 Zoom。", create: "创建", createAndSend: "创建并发送", createEvent: "创建活动", createFailed: "创建事件失败", creating: "创造……", custom: "定制", customEllipsis: "定制...", customRepeatGoogleCalendar: "自定义重复计划必须在 Google Calendar 中编辑。", customSchedule: "定制时间表", daily: "每日", default: "默认", delete: "删除", description: "描述", discard: "丢弃", doesNotRepeat: "不重复", draftEvent: "选秀活动", edit: "编辑", end: "结束", endDate: "结束日期", event: "活动", eventAlerts: "事件提醒", eventOptions: "活动选项", eventTitlePlaceholder: "活动标题", everyWeekday: "每个工作日", findTime: "找个时间", focusTime: "专注时间", focusTimeTimedOnly: "焦点时间事件必须有特定的开始和结束时间。", free: "免费", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "添加了 Google Meet", googleMeetAddFailed: "添加Google Meet失败", home: "首页", invite: "邀请", invitedNotice: "{{count}} 受邀 — Google 在您创建时会向他们发送电子邮件", joinMeet: "加入聚会", joinMeeting: "加入会议", joinTeams: "加入团队", joinZoom: "加入Zoom", loadingRepeat: "正在加载重复...", location: "地点", meet: "见面", monthly: "每月", newEvent: "新活动", newEventLower: "新活动", noGuests: "没有客人", noVideo: "没有视频", none: "无", office: "办公室", other: "其他", openInSidebar: "在侧边栏中打开", optionalDescription: "可选描述", optionalLocation: "可选位置", outOfOffice: "不在办公室", outOfOfficeTimedOnly: "外出活动必须有特定的开始和结束时间。", passcode: "密码:{{passcode}}", pasteLink: "粘贴链接", pasteMeetingLink: "粘贴会议链接(Zoom、Meet、Teams...)", pin: "PIN:{{pin}}", private: "私人", public: "公共", repeats: "重复", reviewInvite: "审核邀请", save: "保存", savedAsVideoLink: "已保存为本次活动的视频链接", showAs: "显示为", start: "开始", startDate: "开始日期", thisDayOnly: "仅当天", thisEvent: "本次活动", timeSelected: "选定时间", timezone: "时区", title: "标题", titleRequired: "标题为必填项", toSave: "保存", type: "类型", video: "视频", viewingOwnerCalendar: "查看 {{owner}} 的日历", visibility: "能见度", weekly: "每周", workingFrom: "工作自", workingLocation: "工作地点", workingLocationDesk: "工位 {{desk}}", workingLocationFloor: "楼层 {{floor}}", workingLocationTitle: "工作地点:{{location}}", yearly: "每年", zoom: "Zoom", zoomAdded: "添加Zoom", zoomAddFailed: "添加Zoom失败", zoomConnectFailed: "无法连接Zoom", zoomConnectionOpened: "Zoom 连接已打开", zoomNotConfigured: "Zoom OAuth 未配置。", zoomNotConfiguredDeployment: "未为此部署配置 Zoom。", ai: { descriptionMessage: "为“{{title}}”起草一份简洁的日历事件描述。", descriptionContext: "新活动草稿:\n标题: {{title}}\n日期:{{date}}{{endDate}}\n时间:{{time}}\n时区: {{timezone}}\n地点:{{location}}\n参加者:{{attendees}}\n当前描述:{{description}}\n\n撰写简短、有用的会议说明。保持其粘贴就绪状态,并避免添加草稿中未包含的事实。", existingDescriptionContext: "活动编号:{{id}}\n名称:{{title}}\n时间:{{start}}至{{end}}\n时区:{{timezone}}\n地点:{{location}}\n参加者:{{attendees}}\n当前描述:{{description}}\n\n撰写简短、有用的会议说明。如果我要求您应用它,请使用 update-event 操作更新此事件。", empty: "(空)", none: "(无)", notSet: "(未设置)", timeRange: "{{startTime}} 至 {{endTime}}", toDate: "至 {{endDate}}", untitledEvent: "无标题活动", }, }, }, "es-ES": { bookingLinks: { add: "Agregar", availability: "Disponibilidad", availabilitySaved: "Disponibilidad guardada", availabilitySaveFailed: "No se pudo guardar la disponibilidad", availableTimes: "Horarios disponibles", back: "Atrás", bookingDetails: "Detalles de la reserva", bookingLinkCopied: "Enlace de reserva copiado", bookingLinkCreated: "Enlace de reserva creado", bookingLinkCreateFailed: "No se pudo crear el enlace de reserva", bookingLinkDeleted: "Enlace de reserva eliminado", bookingLinkDeleteFailed: "No se pudo eliminar el enlace de reserva", bookingLinkUpdated: "Enlace de reserva actualizado", bookingLinkUpdateFailed: "No se pudo actualizar el enlace de reserva", bookingRules: "Reglas de reserva", bookingRulesDescription: "Configure el tiempo de búfer, los períodos de aviso y la configuración de espacios.", bookingUsername: "Nombre de usuario de reserva", bookingUsernameHelp: "Su identificador exclusivo para reservar URL, p.", bookingUsernameUpdateFailed: "No se pudo actualizar el nombre de usuario de la reserva", bookersChooseBetween: "Los reservadores elegirán entre: {{durations}}", bookings: "Reservas", bufferBetweenEvents: "Búfer entre eventos (min)", changeDate: "Cambiar fecha", changeTime: "Cambiar hora", chooseDuration: "Elige una duración", cloudUpgradeDescription: "Para compartir públicamente su página de reservas, conecte una base de datos en la nube para que las reservas se puedan recibir desde cualquier lugar.", collapsePreview: "Contraer vista previa", confirmBooking: "Confirmar reserva", conferencing: "conferencias", connectZoom: "Conectar Zoom", copyBookingLink: "Copiar enlace de reserva", copyLink: "Copiar enlace", createFirstLink: "Crea tu primer enlace", createLink: "Crear enlace", custom: "Costumbre", customLink: "Enlace personalizado", customLinkDescription: "Pega cualquier reunión URL", date: "Fecha", deleteBookingLink: "Eliminar enlace de reserva", deleteDescriptionPrefix: "Esto eliminará permanentemente", deleteDescriptionSuffix: "y su página de reservas públicas. Esto no se puede deshacer.", description: "Crea tipos de reuniones con enlaces públicos y configura tu disponibilidad.", disable: "Desactivar", durationMinError: "La duración debe ser de al menos 5 minutos.", durationOptions: "Opciones de duración", durationOptionsDescription: "Seleccione uno o más: las personas que reserven elegirán al programar.", durationRangeError: "Introduzca una duración entre 5 y 480 minutos", email: "Correo electrónico", enable: "Habilitar", everyDay: "todos los dias", generalAccess: "Acceso de gestión general", goToPreviewStep: "Ir al paso de vista previa {{step}}", googleMeet: "zx8xz", googleMeetDescription: "Generar automáticamente un enlace de Meet", hidden: "Oculto", hoursShort: "{{count}} horas", invalidEmail: "Correo electrónico no válido: {{email}}", linkDisabled: "{{title}} deshabilitado", linkEnabled: "{{title}} habilitado", linkVisibility: "Visibilidad del enlace", linkVisibilityDescription: "Desactívelo para desactivar la página pública.", loadingMeetingTypes: "Cargando tipos de reuniones", maxAdvanceBooking: "Reserva máxima anticipada (días)", meetingName: "Nombre de la reunión", meetingTypes: "Tipos de reuniones", meetingUrl: "Reunión URL", minuteMeeting: "Reunión de actas de {{count}}", minutes: "Minutos", minutesLong: "Minutos {{count}}", minutesShort: "{{count}} mín.", minimumNotice: "Aviso mínimo (horas)", name: "Nombre", newBookingLink: "Nuevo enlace de reserva", noAvailabilityOnDay: "No hay disponibilidad para este día", noAvailabilitySet: "No hay disponibilidad establecida", noBookingCreated: "No se creó ninguna reserva.", noBookingLinks: "Aún no hay enlaces de reserva", noBookingLinksDescription: "Cree un enlace de reserva para permitir que las personas programen reuniones con usted.", noConferencing: "Sin conferencias", noConferencingDescription: "En persona, por teléfono o agregue detalles más tarde", notesOptional: "Notas (opcional)", notesPlaceholder: "Cualquier cosa que quieras compartir", oneOnOne: "Uno a uno", onlyYouRequired: "Sólo tú eres necesario.", openBookingLink: "Abrir enlace de reserva", openBookingPageNewTab: "Abrir página de reserva en una nueva pestaña", openInNewTab: "Abrir en nueva pestaña", openInteractiveBookingLink: "Abrir enlace de reserva interactivo", openLink: "Abrir enlace", openPreview: "Abrir vista previa", optional: "(opcional)", orgAccessDescription: "Cualquier persona de su organización puede abrir y gestionar este enlace de reserva.", peopleAccess: "Personas con acceso de gestión", preview: "Avance", previewConfirmed: "Vista previa confirmada", previewGuest: "Vista previa invitado", privateAccessDescription: "Sólo las personas invitadas pueden gestionar este enlace de reserva", publicAccessDescription: "Cualquiera que tenga el enlace de la aplicación puede ver la configuración del enlace de reserva", publicBookingLink: "Enlace de reserva pública", publicManagementAccess: "Acceso a la gestión pública", quickChat: "Chat rápido", requiredHosts: "Hosts requeridos", requiredHostsCount: "hosts requeridos {{count}}", requiredHostsDescription: "Estás incluido automáticamente. Añade compañeros de equipo que también deben estar libres.", removeHost: "Quitar {{email}}", saveAvailability: "Guardar disponibilidad", saved: "Guardado", selectDate: "Seleccione una fecha", selectedDateTime: "{{date}} en {{time}}", selectPlaceholder: "Seleccione...", shareBookingLink: "Compartir enlace de reserva", shareUrlDescription: "Los reservadores utilizan este URL para elegir un horario. Compartir controla quién puede gestionar este enlace de reserva.", shownOnBookingPage: "Se muestra en la página de reserva.", slotDuration: "Duración del slot (minutos)", stillCreating: "Aún estoy creando. Vuelve a intentarlo en un momento.", time: "tiempo", timezoneHelp: "Las horas semanales, como de 9 a. m. a 5 p. m., se interpretan en esta zona horaria antes de que los visitantes las vean en la zona horaria de su propio navegador.", title: "Enlaces de reserva", to: "a", tryAgain: "Inténtalo de nuevo", unavailable: "No disponible", untitledMeeting: "Reunión sin título", url: "zx9xz", weekdays: "Días laborables", weekends: "Fines de semana", weeklySchedule: "Horario semanal", weeklyScheduleDescription: "Alternar días y establecer horas disponibles.", zoom: "zx2xz", zoomConnectAccount: "Se selecciona Zoom. Conecte su cuenta para crear una reunión para cada reserva.", zoomDescription: "Crear automáticamente una reunión Zoom por reserva", zoomMissingCredentials: "Se selecciona Zoom, pero a esta implementación le faltan las credenciales de Zoom OAuth.", zoomStartFailed: "No se pudo iniciar la conexión Zoom", days: { sunday: "domingo", sundayShort: "Su", monday: "lunes", mondayShort: "Mo", tuesday: "martes", tuesdayShort: "tu", wednesday: "miércoles", wednesdayShort: "nosotros", thursday: "Jueves", thursdayShort: "Th", friday: "Viernes", fridayShort: "fr.", saturday: "Sábado", saturdayShort: "sa", }, }, eventForm: { addAttachment: "Agregar archivo adjunto", addGuests: "Agregar invitados", addLocation: "Agregar ubicación", addTitle: "Agregar título", addingMeetingLink: "Añadiendo enlace {{provider}}", alerts: "Alertas", allDay: "Todo el día", allDays: "Todos los días", allEvents: "Todos los eventos", applyTo: "Referirse a", askAi: "Pregúntale a la IA", atStart: "Al principio", attachments: "Adjuntos", attendees: "Asistentes", attendeesPlaceholder: "Buscar contactos o escribir un correo electrónico", busy: "Ocupado", cancel: "Cancelar", color: "Color", conferencingLinkOnSave: "El enlace de la conferencia se agrega cuando guarda el evento.", connectZoomBeforeCreate: "Conecte Zoom antes de crear este evento.", create: "Crear", createAndSend: "Crear y enviar", createEvent: "Crear evento", createFailed: "No se pudo crear el evento", creating: "Creando…", custom: "Costumbre", customEllipsis: "Costumbre...", customRepeatGoogleCalendar: "Los programas de repetición personalizados deben editarse en Google Calendar.", customSchedule: "Horario personalizado", daily: "A diario", default: "Por defecto", delete: "Borrar", description: "Descripción", discard: "Desechar", doesNotRepeat: "no se repite", draftEvent: "Proyecto de evento", edit: "Editar", end: "Fin", endDate: "Fecha de finalización", event: "Evento", eventAlerts: "Alertas de eventos", eventOptions: "Opciones de eventos", eventTitlePlaceholder: "Título del evento", everyWeekday: "todos los dias de la semana", findTime: "Encuentra un momento", focusTime: "tiempo de concentración", focusTimeTimedOnly: "Los eventos de tiempo de enfoque deben tener una hora de inicio y finalización específica.", free: "Gratis", googleCalendar: "zx0xz", googleMeet: "zx0xz", googleMeetAdded: "Google Meet añadido", googleMeetAddFailed: "No se pudo agregar Google Meet", home: "Hogar", invite: "Invitar", invitedNotice: "{{count}} invitado: Google les enviará un correo electrónico cuando crees", joinMeet: "Unirse a la reunión", joinMeeting: "Unirse a la reunión", joinTeams: "Unirse a equipos", joinZoom: "Únete a Zoom", loadingRepeat: "Cargando repetir...", location: "Ubicación", meet: "Encontrarse", monthly: "Mensual", newEvent: "Nuevo evento", newEventLower: "Nuevo evento", noGuests: "Sin invitados", noVideo: "Sin vídeo", none: "Ninguno", office: "Oficina", other: "Otro", openInSidebar: "Abrir en la barra lateral", optionalDescription: "Descripción opcional", optionalLocation: "Ubicación opcional", outOfOffice: "fuera de la oficina", outOfOfficeTimedOnly: "Los eventos fuera de la oficina deben tener una hora de inicio y finalización específica.", passcode: "Código de acceso: {{passcode}}", pasteLink: "Pegar enlace", pasteMeetingLink: "Pegar enlace de reunión (Zoom, Meet, Teams...)", pin: "PIN: {{pin}}", private: "Privado", public: "Público", repeats: "Se repite", reviewInvite: "Revisar invitación", save: "Ahorrar", savedAsVideoLink: "Guardado como enlace de vídeo de este evento.", showAs: "Mostrar como", start: "Comenzar", startDate: "Fecha de inicio", thisDayOnly: "Solo este día", thisEvent: "este evento", timeSelected: "Hora seleccionada", timezone: "Zona horaria", title: "Título", titleRequired: "Se requiere título", toSave: "guardar", type: "Tipo", video: "Video", viewingOwnerCalendar: "Viendo el calendario de {{owner}}", visibility: "Visibilidad", weekly: "Semanalmente", workingFrom: "Trabajando desde", workingLocation: "Lugar de trabajo", workingLocationDesk: "Escritorio {{desk}}", workingLocationFloor: "Piso {{floor}}", workingLocationTitle: "Lugar de trabajo: {{location}}", yearly: "Anual", zoom: "Zoom", zoomAdded: "Zoom añadido", zoomAddFailed: "No se pudo agregar Zoom", zoomConnectFailed: "No se pudo conectar Zoom", zoomConnectionOpened: "Conexión Zoom abierta", zoomNotConfigured: "Zoom OAuth no está configurado.", zoomNotConfiguredDeployment: "Zoom no está configurado para esta implementación.", ai: { descriptionMessage: 'Redacte una descripción concisa del evento del calendario para "{{title}}".', descriptionContext: "Nuevo borrador del evento:\nTítulo: {{title}}\nFecha: {{date}}{{endDate}}\nHora: {{time}}\nZona horaria: {{timezone}}\nUbicación: {{location}}\nAsistentes: {{attendees}}\nDescripción actual: {{description}}\n\nEscriba una descripción breve y útil de la reunión. Manténgalo listo para pegar y evite agregar datos que no estén en el borrador.", existingDescriptionContext: "Identificación del evento: {{id}}\nTítulo: {{title}}\nCuándo: {{start}} a {{end}}\nZona horaria: {{timezone}}\nUbicación: {{location}}\nAsistentes: {{attendees}}\nDescripción actual: {{description}}\n\nEscriba una descripción breve y útil de la reunión. Si te pido que lo apliques, actualiza este evento con la acción actualizar-evento.", empty: "(vacío)", none: "(ninguno)", notSet: "(no establecido)", timeRange: "{{startTime}} a {{endTime}}", toDate: "a {{endDate}}", untitledEvent: "Evento sin título", }, }, }, "fr-FR": { bookingLinks: { add: "Ajouter", availability: "Disponibilité", availabilitySaved: "Disponibilité enregistrée", availabilitySaveFailed: "Échec de l'enregistrement de la disponibilité", availableTimes: "Horaires disponibles", back: "Retour", bookingDetails: "Détails de la réservation", bookingLinkCopied: "Lien de réservation copié", bookingLinkCreated: "Lien de réservation créé", bookingLinkCreateFailed: "Échec de la création du lien de réservation", bookingLinkDeleted: "Lien de réservation supprimé", bookingLinkDeleteFailed: "Échec de la suppression du lien de réservation", bookingLinkUpdated: "Lien de réservation mis à jour", bookingLinkUpdateFailed: "Échec de la mise à jour du lien de réservation", bookingRules: "Règles de réservation", bookingRulesDescription: "Configurez la durée du tampon, les périodes de préavis et les paramètres de créneau.", bookingUsername: "Nom d'utilisateur de réservation", bookingUsernameHelp: "Votre identifiant unique pour réserver des URL, par ex.", bookingUsernameUpdateFailed: "Échec de la mise à jour du nom d'utilisateur de la réservation", bookersChooseBetween: "Les réservataires choisiront entre : {{durations}}", bookings: "Réservations", bufferBetweenEvents: "Tampon entre les événements (min)", changeDate: "Changer de date", changeTime: "Changer l'heure", chooseDuration: "Choisissez une durée", cloudUpgradeDescription: "Pour partager publiquement votre page de réservation, connectez une base de données cloud afin que les réservations puissent être reçues de n'importe où.", collapsePreview: "Réduire l'aperçu", confirmBooking: "Confirmer la réservation", conferencing: "Conférence", connectZoom: "Connectez Zoom", copyBookingLink: "Copier le lien de réservation", copyLink: "Copier le lien", createFirstLink: "Créez votre premier lien", createLink: "Créer un lien", custom: "Personnalisé", customLink: "Lien personnalisé", customLinkDescription: "Coller n'importe quelle réunion URL", date: "Date", deleteBookingLink: "Supprimer le lien de réservation", deleteDescriptionPrefix: "Cela supprimera définitivement", deleteDescriptionSuffix: "et sa page de réservation publique. Cela ne peut pas être annulé.", description: "Créez des types de réunions avec des liens publics et configurez votre disponibilité.", disable: "Désactiver", durationMinError: "La durée doit être d'au moins 5 minutes.", durationOptions: "Options de durée", durationOptionsDescription: "Sélectionnez-en un ou plusieurs : les réservations choisiront lors de la planification.", durationRangeError: "Saisissez une durée comprise entre 5 et 480 minutes", email: "Courriel", enable: "Activer", everyDay: "Chaque jour", generalAccess: "Accès à la gestion générale", goToPreviewStep: "Accédez à l'étape d'aperçu {{step}}", googleMeet: "Google Meet", googleMeetDescription: "Générer automatiquement un lien Meet", hidden: "Caché", hoursShort: "{{count}} heure", invalidEmail: "E-mail invalide : {{email}}", linkDisabled: "{{title}} désactivé", linkEnabled: "{{title}} activé", linkVisibility: "Visibilité du lien", linkVisibilityDescription: "Désactivez cette option pour désactiver la page publique.", loadingMeetingTypes: "Chargement des types de réunions", maxAdvanceBooking: "Réservation maximale à l'avance (jours)", meetingName: "Nom de la réunion", meetingTypes: "Types de réunions", meetingUrl: "Rencontre URL", minuteMeeting: "Compte rendu de la réunion {{count}}", minutes: "Procès-verbal", minutesLong: "Minutes {{count}}", minutesShort: "{{count}} min", minimumNotice: "Préavis minimum (heures)", name: "Nom", newBookingLink: "Nouveau lien de réservation", noAvailabilityOnDay: "Pas de disponibilité ce jour", noAvailabilitySet: "Aucun groupe de disponibilité", noBookingCreated: "Aucune réservation n'a été créée.", noBookingLinks: "Aucun lien de réservation pour l'instant", noBookingLinksDescription: "Créez un lien de réservation pour permettre aux gens de planifier des réunions avec vous.", noConferencing: "Pas de conférence", noConferencingDescription: "En personne, par téléphone ou ajoutez des détails plus tard", notesOptional: "Remarques (facultatif)", notesPlaceholder: "Tout ce que vous aimeriez partager", oneOnOne: "En tête-à-tête", onlyYouRequired: "Vous seul êtes requis.", openBookingLink: "Ouvrir le lien de réservation", openBookingPageNewTab: "Ouvrir la page de réservation dans un nouvel onglet", openInNewTab: "Ouvrir dans un nouvel onglet", openInteractiveBookingLink: "Ouvrir le lien de réservation interactif", openLink: "Ouvrir le lien", openPreview: "Ouvrir l'aperçu", optional: "(facultatif)", orgAccessDescription: "N'importe qui dans votre organisation peut ouvrir et gérer ce lien de réservation", peopleAccess: "Personnes ayant un accès de gestion", preview: "Aperçu", previewConfirmed: "Aperçu confirmé", previewGuest: "Aperçu Invité", privateAccessDescription: "Seules les personnes invitées peuvent gérer ce lien de réservation", publicAccessDescription: "Toute personne disposant du lien de l'application peut voir la configuration de ce lien de réservation.", publicBookingLink: "Lien de réservation publique", publicManagementAccess: "Accès à la gestion publique", quickChat: "Discussion rapide", requiredHosts: "Hôtes requis", requiredHostsCount: "Hôtes requis {{count}}", requiredHostsDescription: "Vous êtes automatiquement inclus. Ajoutez des coéquipiers qui doivent également être libres.", removeHost: "Supprimer {{email}}", saveAvailability: "Enregistrer la disponibilité", saved: "Enregistré", selectDate: "Sélectionnez une date", selectedDateTime: "{{date}} à {{time}}", selectPlaceholder: "Sélectionnez...", shareBookingLink: "Partager le lien de réservation", shareUrlDescription: "Les bookers utilisent ce URL pour choisir une heure. Le partage contrôle qui peut gérer ce lien de réservation.", shownOnBookingPage: "Affiché sur la page de réservation", slotDuration: "Durée du créneau (minutes)", stillCreating: "En cours de création – veuillez réessayer dans un instant", time: "Temps", timezoneHelp: "Les heures hebdomadaires comme 9h00-17h00 sont interprétées dans ce fuseau horaire avant que les visiteurs ne les voient dans le fuseau horaire de leur propre navigateur.", title: "Liens de réservation", to: "à", tryAgain: "Réessayez", unavailable: "Indisponible", untitledMeeting: "Réunion sans titre", url: "URL", weekdays: "En semaine", weekends: "Week-ends", weeklySchedule: "Programme hebdomadaire", weeklyScheduleDescription: "Basculez les jours et définissez les heures disponibles.", zoom: "Zoom", zoomConnectAccount: "Zoom est sélectionné. Connectez votre compte pour créer une réunion pour chaque réservation.", zoomDescription: "Créez automatiquement une réunion Zoom par réservation", zoomMissingCredentials: "Zoom est sélectionné, mais ce déploiement ne dispose pas des informations d'identification Zoom OAuth.", zoomStartFailed: "Impossible de démarrer la connexion Zoom", days: { sunday: "dimanche", sundayShort: "Su", monday: "Lundi", mondayShort: "Mo", tuesday: "mardi", tuesdayShort: "Ma", wednesday: "mercredi", wednesdayShort: "Nous", thursday: "jeudi", thursdayShort: "e", friday: "vendredi", fridayShort: "Fr", saturday: "samedi", saturdayShort: "Sa", }, }, eventForm: { addAttachment: "Ajouter une pièce jointe", addGuests: "Ajouter des invités", addLocation: "Ajouter un emplacement", addTitle: "Ajouter un titre", addingMeetingLink: "Ajout du lien {{provider}}", alerts: "Alertes", allDay: "Toute la journée", allDays: "Tous les jours", allEvents: "Tous les événements", applyTo: "Postuler à", askAi: "Demandez à l'IA", atStart: "Au début", attachments: "Pièces jointes", attendees: "Participants", attendeesPlaceholder: "Rechercher des contacts ou saisir un e-mail", busy: "Occupé", cancel: "Annuler", color: "Couleur", conferencingLinkOnSave: "Le lien de conférence est ajouté lorsque vous enregistrez l'événement.", connectZoomBeforeCreate: "Connectez le Zoom avant de créer cet événement.", create: "Créer", createAndSend: "Créer et envoyer", createEvent: "Créer un événement", createFailed: "Échec de la création de l'événement", creating: "Création…", custom: "Personnalisé", customEllipsis: "Personnalisé...", customRepeatGoogleCalendar: "Les programmes de répétition personnalisés doivent être modifiés dans Google Calendar.", customSchedule: "Horaire personnalisé", daily: "Quotidiennement", default: "Par défaut", delete: "Supprimer", description: "Descriptif", discard: "Jeter", doesNotRepeat: "Ne répète pas", draftEvent: "Projet d'événement", edit: "Modifier", end: "Fin", endDate: "Date de fin", event: "Événement", eventAlerts: "Alertes d'événements", eventOptions: "Options d'événement", eventTitlePlaceholder: "Titre de l'événement", everyWeekday: "Chaque jour de la semaine", findTime: "Trouver une heure", focusTime: "Temps de concentration", focusTimeTimedOnly: "Les événements de temps de concentration doivent avoir une heure de début et de fin spécifique.", free: "Gratuit", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet ajouté", googleMeetAddFailed: "Échec de l'ajout de Google Meet", home: "Accueil", invite: "Inviter", invitedNotice: "{{count}} invité — Google leur enverra un e-mail lorsque vous créerez", joinMeet: "Rejoindre la rencontre", joinMeeting: "Rejoindre la réunion", joinTeams: "Rejoignez des équipes", joinZoom: "Rejoignez Zoom", loadingRepeat: "Chargement de la répétition...", location: "Emplacement", meet: "Rencontre", monthly: "Mensuel", newEvent: "Nouvel événement", newEventLower: "Nouvel événement", noGuests: "Aucun invité", noVideo: "Pas de vidéo", none: "Aucun", office: "Bureau", other: "Autre", openInSidebar: "Ouvrir dans la barre latérale", optionalDescription: "Description facultative", optionalLocation: "Emplacement facultatif", outOfOffice: "Absent du bureau", outOfOfficeTimedOnly: "Les événements d'absence du bureau doivent avoir une heure de début et de fin spécifique.", passcode: "Code d'accès : {{passcode}}", pasteLink: "Coller le lien", pasteMeetingLink: "Coller le lien de la réunion (Zoom, Meet, Teams...)", pin: "PIN : {{pin}}", private: "Privé", public: "Publique", repeats: "Répétitions", reviewInvite: "Inviter à examiner", save: "Enregistrer", savedAsVideoLink: "Enregistré comme lien vidéo de cet événement", showAs: "Afficher comme", start: "Commencer", startDate: "Date de début", thisDayOnly: "Ce jour uniquement", thisEvent: "Cet événement", timeSelected: "Heure sélectionnée", timezone: "Fuseau horaire", title: "Titre", titleRequired: "Le titre est requis", toSave: "sauver", type: "Tapez", video: "Vidéo", viewingOwnerCalendar: "Affichage du calendrier de {{owner}}", visibility: "Visibilité", weekly: "Hebdomadaire", workingFrom: "Travailler à partir de", workingLocation: "Lieu de travail", workingLocationDesk: "Bureau {{desk}}", workingLocationFloor: "Étage {{floor}}", workingLocationTitle: "Lieu de travail : {{location}}", yearly: "Annuel", zoom: "Zoom", zoomAdded: "Zoom ajouté", zoomAddFailed: "Échec de l'ajout du Zoom", zoomConnectFailed: "Impossible de connecter le Zoom", zoomConnectionOpened: "Connexion Zoom ouverte", zoomNotConfigured: "Zoom OAuth n’est pas configuré.", zoomNotConfiguredDeployment: "Le Zoom n'est pas configuré pour ce déploiement.", ai: { descriptionMessage: 'Rédigez une description concise de l\'événement de calendrier pour "{{title}}".', descriptionContext: "Nouvelle version d'événement :\nTitre : {{title}}\nDate : {{date}}{{endDate}}\nHeure : {{time}}\nFuseau horaire : {{timezone}}\nEmplacement : {{location}}\nParticipants : {{attendees}}\nDescription actuelle : {{description}}\n\nRédigez une description courte et utile de la réunion. Gardez-le prêt à être collé et évitez d'ajouter des faits qui ne figurent pas dans le brouillon.", existingDescriptionContext: "Identifiant de l'événement : {{id}}\nTitre : {{title}}\nQuand : {{start}} à {{end}}\nFuseau horaire : {{timezone}}\nEmplacement : {{location}}\nParticipants : {{attendees}}\nDescription actuelle : {{description}}\n\nRédigez une description courte et utile de la réunion. Si je vous demande de l'appliquer, mettez à jour cet événement avec l'action update-event.", empty: "(vide)", none: "(aucun)", notSet: "(non défini)", timeRange: "{{startTime}} à {{endTime}}", toDate: "à {{endDate}}", untitledEvent: "Événement sans titre", }, }, }, "de-DE": { bookingLinks: { add: "Hinzufügen", availability: "Verfügbarkeit", availabilitySaved: "Verfügbarkeit gespeichert", availabilitySaveFailed: "Verfügbarkeit konnte nicht gespeichert werden", availableTimes: "Verfügbare Zeiten", back: "Zurück", bookingDetails: "Buchungsdetails", bookingLinkCopied: "Buchungslink kopiert", bookingLinkCreated: "Buchungslink erstellt", bookingLinkCreateFailed: "Buchungslink konnte nicht erstellt werden", bookingLinkDeleted: "Buchungslink gelöscht", bookingLinkDeleteFailed: "Der Buchungslink konnte nicht gelöscht werden", bookingLinkUpdated: "Buchungslink aktualisiert", bookingLinkUpdateFailed: "Der Buchungslink konnte nicht aktualisiert werden", bookingRules: "Buchungsregeln", bookingRulesDescription: "Konfigurieren Sie Pufferzeit, Kündigungsfristen und Slot-Einstellungen.", bookingUsername: "Benutzername für die Buchung", bookingUsernameHelp: "Ihr einzigartiger Handle für die Buchung von URLs, z.B.", bookingUsernameUpdateFailed: "Der Benutzername für die Buchung konnte nicht aktualisiert werden", bookersChooseBetween: "Bucher haben die Wahl zwischen: {{durations}}", bookings: "Buchungen", bufferBetweenEvents: "Puffer zwischen Ereignissen (min.)", changeDate: "Datum ändern", changeTime: "Zeit ändern", chooseDuration: "Wählen Sie eine Dauer", cloudUpgradeDescription: "Um Ihre Buchungsseite öffentlich zu teilen, verbinden Sie eine Cloud-Datenbank, damit Buchungen von überall empfangen werden können.", collapsePreview: "Vorschau reduzieren", confirmBooking: "Bestätigen Sie die Buchung", conferencing: "Konferenzen", connectZoom: "Zoom anschließen", copyBookingLink: "Buchungslink kopieren", copyLink: "Link kopieren", createFirstLink: "Erstellen Sie Ihren ersten Link", createLink: "Link erstellen", custom: "Benutzerdefiniert", customLink: "Benutzerdefinierter Link", customLinkDescription: "Fügen Sie ein beliebiges Meeting URL ein", date: "Datum", deleteBookingLink: "Buchungslink löschen", deleteDescriptionPrefix: "Dies wird dauerhaft entfernt", deleteDescriptionSuffix: "und seine öffentliche Buchungsseite. Dies kann nicht rückgängig gemacht werden.", description: "Erstellen Sie Besprechungstypen mit öffentlichen Links und konfigurieren Sie Ihre Verfügbarkeit.", disable: "Deaktivieren", durationMinError: "Die Dauer muss mindestens 5 Minuten betragen.", durationOptions: "Daueroptionen", durationOptionsDescription: "Wählen Sie eine oder mehrere aus – Bucher wählen bei der Planung aus.", durationRangeError: "Geben Sie eine Dauer zwischen 5 und 480 Minuten ein", email: "E-Mail", enable: "Aktivieren", everyDay: "Jeden Tag", generalAccess: "Allgemeiner Verwaltungszugriff", goToPreviewStep: "Gehen Sie zum Vorschauschritt {{step}}", googleMeet: "Google Meet", googleMeetDescription: "Generieren Sie automatisch einen Meet-Link", hidden: "Versteckt", hoursShort: "{{count}} Std", invalidEmail: "Ungültige E-Mail-Adresse: {{email}}", linkDisabled: "{{title}} deaktiviert", linkEnabled: "{{title}} aktiviert", linkVisibility: "Link-Sichtbarkeit", linkVisibilityDescription: "Deaktivieren Sie diese Option, um die öffentliche Seite zu deaktivieren.", loadingMeetingTypes: "Besprechungstypen werden geladen", maxAdvanceBooking: "Max. Vorausbuchung (Tage)", meetingName: "Name der Besprechung", meetingTypes: "Besprechungstypen", meetingUrl: "Treffen mit URL", minuteMeeting: "{{count}}-Minutenbesprechung", minutes: "Minuten", minutesLong: "{{count}} Minuten", minutesShort: "{{count}} min", minimumNotice: "Mindestvorlaufzeit (Stunden)", name: "Name", newBookingLink: "Neuer Buchungslink", noAvailabilityOnDay: "An diesem Tag keine Verfügbarkeit", noAvailabilitySet: "Keine Verfügbarkeit festgelegt", noBookingCreated: "Es wurde keine Buchung erstellt.", noBookingLinks: "Noch keine Buchungslinks", noBookingLinksDescription: "Erstellen Sie einen Buchungslink, damit andere Besprechungen mit Ihnen vereinbaren können.", noConferencing: "Keine Konferenzen", noConferencingDescription: "Persönlich oder telefonisch oder fügen Sie später Details hinzu", notesOptional: "Notizen (optional)", notesPlaceholder: "Alles, was Sie teilen möchten", oneOnOne: "Eins zu Eins", onlyYouRequired: "Nur Sie sind erforderlich.", openBookingLink: "Buchungslink öffnen", openBookingPageNewTab: "Buchungsseite in neuem Tab öffnen", openInNewTab: "In neuem Tab öffnen", openInteractiveBookingLink: "Interaktiven Buchungslink öffnen", openLink: "Link öffnen", openPreview: "Vorschau öffnen", optional: "(optional)", orgAccessDescription: "Jeder in Ihrer Organisation kann diesen Buchungslink öffnen und verwalten", peopleAccess: "Personen mit Verwaltungszugriff", preview: "Vorschau", previewConfirmed: "Vorschau bestätigt", previewGuest: "Vorschau Gast", privateAccessDescription: "Nur eingeladene Personen können diesen Buchungslink verwalten", publicAccessDescription: "Jeder, der über den App-Link verfügt, kann die Einrichtung dieses Buchungslinks einsehen", publicBookingLink: "Öffentlicher Buchungslink", publicManagementAccess: "Zugang zur öffentlichen Verwaltung", quickChat: "Schneller Chat", requiredHosts: "Erforderliche Hosts", requiredHostsCount: "{{count}} erforderliche Hosts", requiredHostsDescription: "Sie werden automatisch einbezogen. Fügen Sie Teamkollegen hinzu, die ebenfalls frei sein müssen.", removeHost: "Entfernen Sie {{email}}", saveAvailability: "Verfügbarkeit speichern", saved: "Gespeichert", selectDate: "Wählen Sie ein Datum aus", selectedDateTime: "{{date}} und {{time}}", selectPlaceholder: "Wählen Sie...", shareBookingLink: "Buchungslink teilen", shareUrlDescription: "Bucher nutzen diesen URL, um einen Zeitpunkt auszuwählen. Die Freigabe steuert, wer diesen Buchungslink verwalten kann.", shownOnBookingPage: "Wird auf der Buchungsseite angezeigt", slotDuration: "Slotdauer (Minuten)", stillCreating: "Wird noch erstellt – bitte versuchen Sie es später noch einmal", time: "Zeit", timezoneHelp: "Wöchentliche Stunden wie 9:00–17:00 Uhr werden in dieser Zeitzone interpretiert, bevor Besucher sie in der Zeitzone ihres eigenen Browsers sehen.", title: "Buchungslinks", to: "zu", tryAgain: "Versuchen Sie es erneut", unavailable: "Nicht verfügbar", untitledMeeting: "Treffen ohne Titel", url: "URL", weekdays: "Wochentags", weekends: "Wochenenden", weeklySchedule: "Wochenplan", weeklyScheduleDescription: "Schalten Sie die Tage um und legen Sie die verfügbaren Stunden fest.", zoom: "Zoom", zoomConnectAccount: "Zoom ist ausgewählt. Verbinden Sie Ihr Konto, um für jede Buchung ein Meeting zu erstellen.", zoomDescription: "Erstellen Sie automatisch ein Zoom-Meeting pro Buchung", zoomMissingCredentials: "Zoom ist ausgewählt, aber dieser Bereitstellung fehlen Zoom OAuth-Anmeldeinformationen.", zoomStartFailed: "Die Zoom-Verbindung konnte nicht gestartet werden", days: { sunday: "Sonntag", sundayShort: "Su", monday: "Montag", mondayShort: "Mo", tuesday: "Dienstag", tuesdayShort: "Di", wednesday: "Mittwoch", wednesdayShort: "Wir", thursday: "Donnerstag", thursdayShort: "Th", friday: "Freitag", fridayShort: "Fr", saturday: "Samstag", saturdayShort: "Sa", }, }, eventForm: { addAttachment: "Anhang hinzufügen", addGuests: "Gäste hinzufügen", addLocation: "Standort hinzufügen", addTitle: "Titel hinzufügen", addingMeetingLink: "{{provider}}-Link hinzufügen", alerts: "Warnungen", allDay: "Den ganzen Tag", allDays: "Alle Tage", allEvents: "Alle Veranstaltungen", applyTo: "Bewerben Sie sich bei", askAi: "Fragen Sie die KI", atStart: "Am Anfang", attachments: "Anhänge", attendees: "Teilnehmer", attendeesPlaceholder: "Suchen Sie nach Kontakten oder geben Sie eine E-Mail ein", busy: "Beschäftigt", cancel: "Abbrechen", color: "Farbe", conferencingLinkOnSave: "Der Konferenzlink wird hinzugefügt, wenn Sie die Veranstaltung speichern.", connectZoomBeforeCreate: "Verbinden Sie Zoom, bevor Sie dieses Ereignis erstellen.", create: "Erstellen", createAndSend: "Erstellen und versenden", createEvent: "Veranstaltung erstellen", createFailed: "Ereignis konnte nicht erstellt werden", creating: "Erstellen…", custom: "Benutzerdefiniert", customEllipsis: "Individuell...", customRepeatGoogleCalendar: "Benutzerdefinierte Wiederholungspläne müssen in Google Calendar bearbeitet werden.", customSchedule: "Benutzerdefinierter Zeitplan", daily: "Täglich", default: "Standard", delete: "Löschen", description: "Beschreibung", discard: "Verwerfen", doesNotRepeat: "Wiederholt sich nicht", draftEvent: "Entwurf einer Veranstaltung", edit: "Bearbeiten", end: "Ende", endDate: "Enddatum", event: "Veranstaltung", eventAlerts: "Ereigniswarnungen", eventOptions: "Event-Optionen", eventTitlePlaceholder: "Veranstaltungstitel", everyWeekday: "Jeden Wochentag", findTime: "Finden Sie eine Zeit", focusTime: "Fokuszeit", focusTimeTimedOnly: "Fokuszeitereignisse müssen eine bestimmte Start- und Endzeit haben.", free: "Kostenlos", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet hinzugefügt", googleMeetAddFailed: "Google Meet konnte nicht hinzugefügt werden", home: "Zuhause", invite: "Einladen", invitedNotice: "{{count}} eingeladen – Google sendet ihnen eine E-Mail, wenn Sie etwas erstellen", joinMeet: "Treten Sie Meet bei", joinMeeting: "Treten Sie der Besprechung bei", joinTeams: "Treten Sie Teams bei", joinZoom: "Treten Sie Zoom bei", loadingRepeat: "Wiederholung wird geladen...", location: "Standort", meet: "Treffen", monthly: "Monatlich", newEvent: "Neue Veranstaltung", newEventLower: "Neue Veranstaltung", noGuests: "Keine Gäste", noVideo: "Kein Video", none: "Keine", office: "Büro", other: "Andere", openInSidebar: "In der Seitenleiste öffnen", optionalDescription: "Optionale Beschreibung", optionalLocation: "Optionaler Standort", outOfOffice: "Außerhalb des Büros", outOfOfficeTimedOnly: "Abwesenheitsveranstaltungen müssen eine bestimmte Start- und Endzeit haben.", passcode: "Passcode: {{passcode}}", pasteLink: "Link einfügen", pasteMeetingLink: "Besprechungslink einfügen (Zoom, Meet, Teams...)", pin: "PIN: {{pin}}", private: "Privat", public: "Öffentlich", repeats: "Wiederholt", reviewInvite: "Bewertungseinladung", save: "Speichern", savedAsVideoLink: "Als Videolink dieser Veranstaltung gespeichert", showAs: "Anzeigen als", start: "Starten", startDate: "Startdatum", thisDayOnly: "Nur dieser Tag", thisEvent: "Dieses Ereignis", timeSelected: "Zeit ausgewählt", timezone: "Zeitzone", title: "Titel", titleRequired: "Titel ist erforderlich", toSave: "zu retten", type: "Typ", video: "Video", viewingOwnerCalendar: "Kalender von {{owner}} anzeigen", visibility: "Sichtbarkeit", weekly: "Wöchentlich", workingFrom: "Arbeiten von", workingLocation: "Arbeitsort", workingLocationDesk: "Schreibtisch {{desk}}", workingLocationFloor: "Etage {{floor}}", workingLocationTitle: "Arbeitsort: {{location}}", yearly: "Jährlich", zoom: "Zoom", zoomAdded: "Zoom hinzugefügt", zoomAddFailed: "Zoom konnte nicht hinzugefügt werden", zoomConnectFailed: "Zoom konnte nicht verbunden werden", zoomConnectionOpened: "Zoom-Verbindung geöffnet", zoomNotConfigured: "Zoom OAuth ist nicht konfiguriert.", zoomNotConfiguredDeployment: "Zoom ist für diese Bereitstellung nicht konfiguriert.", ai: { descriptionMessage: "Entwerfen Sie eine prägnante Beschreibung des Kalenderereignisses für „{{title}}“.", descriptionContext: "Neuer Veranstaltungsentwurf:\nTitel: {{title}}\nDatum: {{date}}{{endDate}}\nZeit: {{time}}\nZeitzone: {{timezone}}\nStandort: {{location}}\nTeilnehmer: {{attendees}}\nAktuelle Beschreibung: {{description}}\n\nSchreiben Sie eine kurze, nützliche Besprechungsbeschreibung. Halten Sie es zum Einfügen bereit und vermeiden Sie das Hinzufügen von Fakten, die nicht im Entwurf enthalten sind.", existingDescriptionContext: "Ereignis-ID: {{id}}\nTitel: {{title}}\nWann: {{start}} bis {{end}}\nZeitzone: {{timezone}}\nStandort: {{location}}\nTeilnehmer: {{attendees}}\nAktuelle Beschreibung: {{description}}\n\nSchreiben Sie eine kurze, nützliche Besprechungsbeschreibung. Wenn ich Sie auffordere, es anzuwenden, aktualisieren Sie dieses Ereignis mit der Aktion „update-event“.", empty: "(leer)", none: "(keine)", notSet: "(nicht festgelegt)", timeRange: "{{startTime}} bis {{endTime}}", toDate: "bis {{endDate}}", untitledEvent: "Veranstaltung ohne Titel", }, }, }, "ja-JP": { bookingLinks: { add: "追加", availability: "可用性", availabilitySaved: "可用性が保存されました", availabilitySaveFailed: "空き状況を保存できませんでした", availableTimes: "利用可能時間", back: "戻る", bookingDetails: "予約の詳細", bookingLinkCopied: "予約リンクがコピーされました", bookingLinkCreated: "予約リンクが作成されました", bookingLinkCreateFailed: "予約リンクの作成に失敗しました", bookingLinkDeleted: "予約リンクが削除されました", bookingLinkDeleteFailed: "予約リンクを削除できませんでした", bookingLinkUpdated: "予約リンクが更新されました", bookingLinkUpdateFailed: "予約リンクを更新できませんでした", bookingRules: "予約ルール", bookingRulesDescription: "バッファ時間、通知期間、スロット設定を構成します。", bookingUsername: "予約ユーザー名", bookingUsernameHelp: "URL を予約するための独自のハンドル。", bookingUsernameUpdateFailed: "予約ユーザー名の更新に失敗しました", bookersChooseBetween: "予約者は次のいずれかを選択します: {{durations}}", bookings: "予約", bufferBetweenEvents: "イベント間のバッファー (分)", changeDate: "変更日", changeTime: "変更時間", chooseDuration: "期間を選択してください", cloudUpgradeDescription: "予約ページを公開して共有するには、クラウド データベースに接続して、どこからでも予約を受信できるようにします。", collapsePreview: "プレビューを折りたたむ", confirmBooking: "予約を確認する", conferencing: "会議", connectZoom: "Zoomを接続する", copyBookingLink: "予約リンクをコピーする", copyLink: "リンクをコピー", createFirstLink: "最初のリンクを作成する", createLink: "リンクの作成", custom: "カスタム", customLink: "カスタムリンク", customLinkDescription: "会議 URL を貼り付けます", date: "日付", deleteBookingLink: "予約リンクを削除する", deleteDescriptionPrefix: "これにより完全に削除されます", deleteDescriptionSuffix: "とその公開予約ページ。これを元に戻すことはできません。", description: "パブリック リンクを使用して会議の種類を作成し、空き状況を設定します。", disable: "無効にする", durationMinError: "期間は少なくとも 5 分である必要があります。", durationOptions: "期間オプション", durationOptionsDescription: "1 つ以上を選択します。予約者はスケジュールを立てるときに選択します。", durationRangeError: "5 ~ 480 分の期間を入力してください", email: "電子メール", enable: "有効にする", everyDay: "毎日", generalAccess: "一般的な管理アクセス", goToPreviewStep: "プレビューステップ {{step}} に移動します", googleMeet: "Google Meet", googleMeetDescription: "Meet リンクを自動生成する", hidden: "隠された", hoursShort: "{{count}} 時間", invalidEmail: "無効なメールアドレス: {{email}}", linkDisabled: "{{title}}は無効です", linkEnabled: "{{title}}有効", linkVisibility: "リンクの可視性", linkVisibilityDescription: "公開ページを無効にするには、これをオフにします。", loadingMeetingTypes: "会議の種類を読み込んでいます", maxAdvanceBooking: "最大事前予約数 (日)", meetingName: "会議名", meetingTypes: "会議の種類", meetingUrl: "URLとの出会い", minuteMeeting: "{{count}} 議事録", minutes: "分", minutesLong: "{{count}}分", minutesShort: "{{count}}分", minimumNotice: "最低通知時間 (時間)", name: "名前", newBookingLink: "新しい予約リンク", noAvailabilityOnDay: "この日は空きがありません", noAvailabilitySet: "可用性が設定されていません", noBookingCreated: "予約は作成されませんでした。", noBookingLinks: "予約リンクはまだありません", noBookingLinksDescription: "予約リンクを作成して、他のユーザーがあなたとのミーティングをスケジュールできるようにします。", noConferencing: "会議なし", noConferencingDescription: "対面、電話、または後で詳細を追加", notesOptional: "注記 (オプション)", notesPlaceholder: "共有したいことは何でも", oneOnOne: "1対1", onlyYouRequired: "あなただけが必要です。", openBookingLink: "予約リンクを開く", openBookingPageNewTab: "新しいタブで予約ページを開く", openInNewTab: "新しいタブで開く", openInteractiveBookingLink: "インタラクティブな予約リンクを開く", openLink: "リンクを開く", openPreview: "プレビューを開く", optional: "(オプション)", orgAccessDescription: "組織内の誰でもこの予約リンクを開いて管理できます", peopleAccess: "管理アクセス権を持つ人", preview: "プレビュー", previewConfirmed: "プレビュー確認済み", previewGuest: "プレビューゲスト", privateAccessDescription: "招待された人のみがこの予約リンクを管理できます", publicAccessDescription: "アプリのリンクを持っている人は誰でもこの予約リンクの設定を表示できます", publicBookingLink: "公開予約リンク", publicManagementAccess: "パブリック管理アクセス", quickChat: "クイックチャット", requiredHosts: "必要なホスト", requiredHostsCount: "{{count}} に必要なホスト", requiredHostsDescription: "あなたは自動的に含まれます。同じくフリーである必要があるチームメイトを追加します。", removeHost: "{{email}}を削除する", saveAvailability: "可用性を保存", saved: "保存されました", selectDate: "日付を選択してください", selectedDateTime: "{{date}} で {{time}}", selectPlaceholder: "選択してください...", shareBookingLink: "予約リンクを共有する", shareUrlDescription: "予約者はこの URL を使用して時間を選択します。共有により、この予約リンクを管理できる人が制御されます。", shownOnBookingPage: "予約ページに表示されます", slotDuration: "スロット期間 (分)", stillCreating: "まだ作成中です - しばらくしてからもう一度お試しください", time: "時間", timezoneHelp: "午前 9 時から午後 5 時までのような毎週の時間は、訪問者が独自のブラウザーのタイムゾーンで表示する前に、このタイムゾーンで解釈されます。", title: "予約リンク", to: "に", tryAgain: "もう一度試してください", unavailable: "利用不可", untitledMeeting: "無題の会議", url: "URL", weekdays: "平日", weekends: "週末", weeklySchedule: "週間スケジュール", weeklyScheduleDescription: "曜日を切り替えて、利用可能な時間を設定します。", zoom: "Zoom", zoomConnectAccount: "Zoomを選択しました。アカウントを接続して、予約ごとに会議を作成します。", zoomDescription: "予約ごとに Zoom ミーティングを自動作成", zoomMissingCredentials: "Zoom が選択されていますが、この展開には Zoom OAuth 資格情報がありません。", zoomStartFailed: "Zoom接続を開始できませんでした", days: { sunday: "日曜日", sundayShort: "スー", monday: "月曜日", mondayShort: "モー", tuesday: "火曜日", tuesdayShort: "トゥ", wednesday: "水曜日", wednesdayShort: "私たち", thursday: "木曜日", thursdayShort: "Th", friday: "金曜日", fridayShort: "神父", saturday: "土曜日", saturdayShort: "サ", }, }, eventForm: { addAttachment: "添付ファイルを追加する", addGuests: "ゲストを追加する", addLocation: "場所を追加", addTitle: "タイトルを追加", addingMeetingLink: "{{provider}}リンクの追加", alerts: "アラート", allDay: "一日中", allDays: "すべての日", allEvents: "すべてのイベント", applyTo: "申請先", askAi: "AIに聞く", atStart: "開始時", attachments: "添付ファイル", attendees: "出席者", attendeesPlaceholder: "連絡先を検索するか、電子メールを入力します", busy: "忙しい", cancel: "キャンセル", color: "色", conferencingLinkOnSave: "イベントを保存すると、会議リンクが追加されます。", connectZoomBeforeCreate: "このイベントを作成する前に、Zoom を接続してください。", create: "作成", createAndSend: "作成して送信する", createEvent: "イベントの作成", createFailed: "イベントの作成に失敗しました", creating: "作成中…", custom: "カスタム", customEllipsis: "カスタム...", customRepeatGoogleCalendar: "カスタムの繰り返しスケジュールは、Google Calendar で編集する必要があります。", customSchedule: "カスタムスケジュール", daily: "毎日", default: "デフォルト", delete: "削除", description: "説明", discard: "廃棄する", doesNotRepeat: "繰り返さない", draftEvent: "ドラフトイベント", edit: "編集", end: "終了", endDate: "終了日", event: "イベント", eventAlerts: "イベントアラート", eventOptions: "イベントオプション", eventTitlePlaceholder: "イベントタイトル", everyWeekday: "平日毎日", findTime: "時間を見つけてください", focusTime: "集中時間", focusTimeTimedOnly: "フォーカスタイムイベントには特定の開始時刻と終了時刻が必要です。", free: "無料", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet追加", googleMeetAddFailed: "Google Meetの追加に失敗しました", home: "ホーム", invite: "招待する", invitedNotice: "{{count}} を招待 — 作成時に Google からメールが送信されます", joinMeet: "会議に参加する", joinMeeting: "ミーティングに参加する", joinTeams: "チームに参加する", joinZoom: "Zoomに参加する", loadingRepeat: "繰り返し読み込み中...", location: "場所", meet: "会う", monthly: "毎月", newEvent: "新しいイベント", newEventLower: "新しいイベント", noGuests: "ゲストはいません", noVideo: "ビデオなし", none: "なし", office: "オフィス", other: "その他", openInSidebar: "サイドバーで開く", optionalDescription: "オプションの説明", optionalLocation: "オプションの場所", outOfOffice: "不在中", outOfOfficeTimedOnly: "不在時のイベントには、特定の開始時刻と終了時刻を指定する必要があります。", passcode: "パスコード: {{passcode}}", pasteLink: "リンクを貼り付けます", pasteMeetingLink: "会議リンクを貼り付けます (Zoom、Meet、Teams...)", pin: "PIN:{{pin}}", private: "プライベート", public: "公共", repeats: "繰り返し", reviewInvite: "レビューの招待", save: "保存", savedAsVideoLink: "このイベントのビデオリンクとして保存されました", showAs: "として表示", start: "スタート", startDate: "開始日", thisDayOnly: "この日のみ", thisEvent: "このイベント", timeSelected: "選択された時間", timezone: "タイムゾーン", title: "タイトル", titleRequired: "タイトルは必須です", toSave: "保存する", type: "種類", video: "ビデオ", viewingOwnerCalendar: "{{owner}}のカレンダーを見る", visibility: "可視性", weekly: "毎週", workingFrom: "から働く", workingLocation: "勤務地", workingLocationDesk: "デスク {{desk}}", workingLocationFloor: "{{floor}}階", workingLocationTitle: "勤務地: {{location}}", yearly: "毎年", zoom: "Zoom", zoomAdded: "Zoom追加", zoomAddFailed: "Zoomの追加に失敗しました", zoomConnectFailed: "Zoomが接続できませんでした", zoomConnectionOpened: "Zoom接続がオープンされました", zoomNotConfigured: "Zoom OAuthは設定されていません。", zoomNotConfiguredDeployment: "Zoom はこの展開用に構成されていません。", ai: { descriptionMessage: "「{{title}}」の簡潔なカレンダー イベント説明の草案を作成します。", descriptionContext: "新しいイベントのドラフト:\nタイトル: {{title}}\n日付: {{date}}{{endDate}}\n時間: {{time}}\nタイムゾーン: {{timezone}}\n場所: {{location}}\n出席者: {{attendees}}\n現在の説明: {{description}}\n\n短くて役に立つ会議の説明を書きます。すぐに貼り付けられる状態にしておき、下書きにない事実を追加しないようにします。", existingDescriptionContext: "イベントID: {{id}}\nタイトル: {{title}}\n時期: {{start}} ~ {{end}}\nタイムゾーン: {{timezone}}\n場所: {{location}}\n参加者:{{attendees}}\n現在の説明: {{description}}\n\n短くて役に立つ会議の説明を書きます。適用するように求められた場合は、update-event アクションを使用してこのイベントを更新してください。", empty: "(空)", none: "(なし)", notSet: "(未設定)", timeRange: "{{startTime}}~{{endTime}}", toDate: "{{endDate}}へ", untitledEvent: "無題のイベント", }, }, }, "ko-KR": { bookingLinks: { add: "추가", availability: "가용성", availabilitySaved: "가용성이 저장되었습니다.", availabilitySaveFailed: "참석 여부를 저장하지 못했습니다.", availableTimes: "이용 가능 시간", back: "뒤로", bookingDetails: "예약 세부정보", bookingLinkCopied: "예약 링크 복사됨", bookingLinkCreated: "예약 링크가 생성되었습니다", bookingLinkCreateFailed: "예약 링크를 생성하지 못했습니다.", bookingLinkDeleted: "예약 링크가 삭제되었습니다.", bookingLinkDeleteFailed: "예약 링크를 삭제하지 못했습니다.", bookingLinkUpdated: "예약 링크가 업데이트되었습니다.", bookingLinkUpdateFailed: "예약 링크를 업데이트하지 못했습니다.", bookingRules: "예약 규칙", bookingRulesDescription: "버퍼 시간, 알림 기간, 슬롯 설정을 구성합니다.", bookingUsername: "예약 사용자 이름", bookingUsernameHelp: "URL 예약을 위한 고유한 핸들입니다. 예:", bookingUsernameUpdateFailed: "예약 사용자 이름을 업데이트하지 못했습니다.", bookersChooseBetween: "예약자는 다음 중 하나를 선택합니다: {{durations}}", bookings: "예약", bufferBetweenEvents: "이벤트 간 버퍼(최소)", changeDate: "날짜 변경", changeTime: "시간 변경", chooseDuration: "기간을 선택하세요", cloudUpgradeDescription: "예약 페이지를 공개적으로 공유하려면 어디에서나 예약을 받을 수 있도록 클라우드 데이터베이스를 연결하세요.", collapsePreview: "미리보기 접기", confirmBooking: "예약 확인", conferencing: "회의", connectZoom: "Zoom 연결", copyBookingLink: "예약 링크 복사", copyLink: "링크 복사", createFirstLink: "첫 번째 링크 만들기", createLink: "링크 만들기", custom: "맞춤", customLink: "맞춤 링크", customLinkDescription: "회의 URL 붙여넣기", date: "날짜", deleteBookingLink: "예약 링크 삭제", deleteDescriptionPrefix: "영구적으로 삭제됩니다.", deleteDescriptionSuffix: "및 공개 예약 페이지. 이 작업은 취소할 수 없습니다.", description: "공개 링크로 회의 유형을 만들고 가용성을 구성하세요.", disable: "비활성화", durationMinError: "지속 시간은 5분 이상이어야 합니다.", durationOptions: "기간 옵션", durationOptionsDescription: "하나 이상을 선택하세요. 예약 시 예약자가 선택하게 됩니다.", durationRangeError: "5~480분 사이의 시간을 입력하세요.", email: "이메일", enable: "활성화", everyDay: "매일", generalAccess: "일반 관리 액세스", goToPreviewStep: "미리보기 단계 {{step}}로 이동", googleMeet: "Google Meet", googleMeetDescription: "Meet 링크 자동 생성", hidden: "숨겨진", hoursShort: "{{count}}시간", invalidEmail: "잘못된 이메일: {{email}}", linkDisabled: "{{title}} 비활성화됨", linkEnabled: "{{title}} 활성화됨", linkVisibility: "링크 가시성", linkVisibilityDescription: "공개 페이지를 비활성화하려면 이 기능을 끄십시오.", loadingMeetingTypes: "회의 유형 로드 중", maxAdvanceBooking: "최대 사전 예약(일)", meetingName: "회의 이름", meetingTypes: "회의 유형", meetingUrl: "URL를 만나다", minuteMeeting: "{{count}} 분 회의", minutes: "분", minutesLong: "{{count}} 분", minutesShort: "{{count}} 최소", minimumNotice: "최소 통지 시간(시간)", name: "이름", newBookingLink: "새로운 예약 링크", noAvailabilityOnDay: "이 날에는 이용 가능 여부가 없습니다.", noAvailabilitySet: "가용성이 설정되지 않았습니다.", noBookingCreated: "예약이 생성되지 않았습니다.", noBookingLinks: "아직 예약 링크가 없습니다", noBookingLinksDescription: "사람들이 귀하와 회의를 예약할 수 있도록 예약 링크를 만드세요.", noConferencing: "회의 없음", noConferencingDescription: "직접 만나거나 전화하거나 나중에 세부정보를 추가하세요.", notesOptional: "메모(선택사항)", notesPlaceholder: "공유하고 싶은 모든 것", oneOnOne: "일대일", onlyYouRequired: "당신 만이 필요합니다.", openBookingLink: "예약 링크 열기", openBookingPageNewTab: "새 탭에서 예약 페이지 열기", openInNewTab: "새 탭에서 열기", openInteractiveBookingLink: "대화형 예약 링크 열기", openLink: "링크 열기", openPreview: "미리보기 열기", optional: "(선택사항)", orgAccessDescription: "조직의 누구나 이 예약 링크를 열고 관리할 수 있습니다.", peopleAccess: "관리 액세스 권한이 있는 사용자", preview: "미리보기", previewConfirmed: "미리보기 확인됨", previewGuest: "미리보기 게스트", privateAccessDescription: "초대받은 사람만 이 예약 링크를 관리할 수 있습니다.", publicAccessDescription: "앱 링크가 있는 사람은 누구나 이 예약 링크 설정을 볼 수 있습니다.", publicBookingLink: "공개 예약 링크", publicManagementAccess: "공공 관리 액세스", quickChat: "빠른 채팅", requiredHosts: "필수 호스트", requiredHostsCount: "{{count}} 필수 호스트", requiredHostsDescription: "당신은 자동으로 포함됩니다. 자유로워야 하는 팀원을 추가하세요.", removeHost: "{{email}} 제거", saveAvailability: "가용성 저장", saved: "저장됨", selectDate: "날짜를 선택하세요", selectedDateTime: "{{time}}의 {{date}}", selectPlaceholder: "선택...", shareBookingLink: "예약 링크 공유", shareUrlDescription: "예약자는 이 URL를 사용하여 시간을 선택합니다. 이 예약 링크를 관리할 수 있는 사람을 공유할 수 있습니다.", shownOnBookingPage: "예약 페이지에 표시됨", slotDuration: "슬롯 기간(분)", stillCreating: "아직 생성 중입니다. 잠시 후 다시 시도해 주세요.", time: "시간", timezoneHelp: "오전 9시부터 오후 5시까지의 주간 시간은 방문자가 자신의 브라우저 시간대로 보기 전에 이 시간대로 해석됩니다.", title: "예약 링크", to: "에", tryAgain: "다시 시도", unavailable: "이용 불가", untitledMeeting: "제목 없는 회의", url: "URL", weekdays: "평일", weekends: "주말", weeklySchedule: "주간 일정", weeklyScheduleDescription: "요일을 전환하고 사용 가능한 시간을 설정하세요.", zoom: "Zoom", zoomConnectAccount: "Zoom가 선택되었습니다. 각 예약에 대한 회의를 생성하려면 계정을 연결하세요.", zoomDescription: "예약당 Zoom 회의 자동 생성", zoomMissingCredentials: "Zoom가 선택되었지만 이 배포에는 Zoom OAuth 자격 증명이 없습니다.", zoomStartFailed: "Zoom 연결을 시작할 수 없습니다", days: { sunday: "일요일", sundayShort: "수", monday: "월요일", mondayShort: "모", tuesday: "화요일", tuesdayShort: "화", wednesday: "수요일", wednesdayShort: "우리", thursday: "목요일", thursdayShort: "목", friday: "금요일", fridayShort: "금", saturday: "토요일", saturdayShort: "사", }, }, eventForm: { addAttachment: "첨부파일 추가", addGuests: "손님 추가", addLocation: "위치 추가", addTitle: "제목 추가", addingMeetingLink: "{{provider}} 링크 추가", alerts: "경고", allDay: "하루 종일", allDays: "모든 날", allEvents: "모든 이벤트", applyTo: "신청 대상", askAi: "AI에게 물어보세요", atStart: "시작 시", attachments: "첨부파일", attendees: "참석자", attendeesPlaceholder: "연락처 검색 또는 이메일 입력", busy: "바쁨", cancel: "취소", color: "색상", conferencingLinkOnSave: "이벤트를 저장하면 회의 링크가 추가됩니다.", connectZoomBeforeCreate: "이 이벤트를 만들기 전에 Zoom를 연결하세요.", create: "만들기", createAndSend: "작성 및 보내기", createEvent: "이벤트 만들기", createFailed: "이벤트를 생성하지 못했습니다.", creating: "만드는 중…", custom: "맞춤", customEllipsis: "맞춤...", customRepeatGoogleCalendar: "사용자 정의 반복 일정은 Google Calendar에서 편집해야 합니다.", customSchedule: "맞춤 일정", daily: "매일", default: "기본값", delete: "삭제", description: "설명", discard: "폐기", doesNotRepeat: "반복하지 않음", draftEvent: "드래프트 이벤트", edit: "편집", end: "종료", endDate: "종료일", event: "이벤트", eventAlerts: "이벤트 알림", eventOptions: "이벤트 옵션", eventTitlePlaceholder: "이벤트 제목", everyWeekday: "평일마다", findTime: "시간 찾기", focusTime: "집중 시간", focusTimeTimedOnly: "집중 시간 이벤트에는 특정 시작 및 종료 시간이 있어야 합니다.", free: "무료", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet 추가됨", googleMeetAddFailed: "Google Meet를 추가하지 못했습니다.", home: "홈", invite: "초대", invitedNotice: "{{count}} 초대 — 생성 시 Google가 이메일을 보내드립니다.", joinMeet: "Meet에 참여하기", joinMeeting: "회의 참가", joinTeams: "팀에 합류", joinZoom: "Zoom에 가입하세요", loadingRepeat: "반복 로드 중...", location: "위치", meet: "만나다", monthly: "월간", newEvent: "새로운 이벤트", newEventLower: "새로운 이벤트", noGuests: "손님 없음", noVideo: "영상 없음", none: "없음", office: "사무실", other: "기타", openInSidebar: "사이드바에서 열기", optionalDescription: "선택적 설명", optionalLocation: "선택적 위치", outOfOffice: "부재중", outOfOfficeTimedOnly: "부재중 이벤트에는 특정 시작 및 종료 시간이 있어야 합니다.", passcode: "비밀번호: {{passcode}}", pasteLink: "링크 붙여넣기", pasteMeetingLink: "회의 링크 붙여넣기(Zoom, Meet, Teams...)", pin: "PIN: {{pin}}", private: "비공개", public: "공개", repeats: "반복", reviewInvite: "초대 검토", save: "저장", savedAsVideoLink: "이 이벤트의 동영상 링크로 저장되었습니다.", showAs: "다음으로 표시", start: "시작", startDate: "시작일", thisDayOnly: "이 날만", thisEvent: "이번 이벤트", timeSelected: "선택한 시간", timezone: "시간대", title: "제목", titleRequired: "제목은 필수 항목입니다.", toSave: "저장하다", type: "유형", video: "비디오", viewingOwnerCalendar: "{{owner}}의 캘린더 보기", visibility: "가시성", weekly: "주간", workingFrom: "근무처:", workingLocation: "근무 위치", workingLocationDesk: "좌석 {{desk}}", workingLocationFloor: "{{floor}}층", workingLocationTitle: "근무 위치: {{location}}", yearly: "매년", zoom: "Zoom", zoomAdded: "Zoom 추가됨", zoomAddFailed: "Zoom를 추가하지 못했습니다.", zoomConnectFailed: "Zoom를 연결할 수 없습니다", zoomConnectionOpened: "Zoom 연결이 열렸습니다.", zoomNotConfigured: "Zoom OAuth가 구성되지 않았습니다.", zoomNotConfiguredDeployment: "Zoom는 이 배포에 대해 구성되지 않았습니다.", ai: { descriptionMessage: '"{{title}}"에 대한 간결한 캘린더 일정 설명 초안을 작성하세요.', descriptionContext: "새로운 이벤트 초안:\n제목: {{title}}\n날짜: {{date}}{{endDate}}\n시간: {{time}}\n시간대: {{timezone}}\n위치: {{location}}\n참석자: {{attendees}}\n현재 설명: {{description}}\n\n짧고 유용한 회의 설명을 작성하세요. 붙여 넣을 준비가 된 상태로 유지하고 초안에 없는 사실을 추가하지 마십시오.", existingDescriptionContext: "이벤트 ID: {{id}}\n제목: {{title}}\n시기: {{start}} ~ {{end}}\n시간대: {{timezone}}\n위치: {{location}}\n참석자: {{attendees}}\n현재 설명: {{description}}\n\n짧고 유용한 회의 설명을 작성하세요. 적용해 달라고 요청하면 update-event 작업으로 이 이벤트를 업데이트하세요.", empty: "(비어 있음)", none: "(없음)", notSet: "(설정되지 않음)", timeRange: "{{startTime}} ~ {{endTime}}", toDate: "{{endDate}}로", untitledEvent: "제목 없는 이벤트", }, }, }, "pt-BR": { bookingLinks: { add: "Adicionar", availability: "Disponibilidade", availabilitySaved: "Disponibilidade salva", availabilitySaveFailed: "Falha ao salvar disponibilidade", availableTimes: "Horários disponíveis", back: "Voltar", bookingDetails: "Detalhes da reserva", bookingLinkCopied: "Link de reserva copiado", bookingLinkCreated: "Link de reserva criado", bookingLinkCreateFailed: "Falha ao criar link de reserva", bookingLinkDeleted: "Link de reserva excluído", bookingLinkDeleteFailed: "Falha ao excluir o link de reserva", bookingLinkUpdated: "Link de reserva atualizado", bookingLinkUpdateFailed: "Falha ao atualizar o link da reserva", bookingRules: "Regras de reserva", bookingRulesDescription: "Configure o tempo de buffer, os períodos de aviso e as configurações de slot.", bookingUsername: "Nome de usuário da reserva", bookingUsernameHelp: "Seu identificador exclusivo para reservar URLs, por ex.", bookingUsernameUpdateFailed: "Falha ao atualizar o nome de usuário da reserva", bookersChooseBetween: "Os bookers escolherão entre: {{durations}}", bookings: "Reservas", bufferBetweenEvents: "Buffer entre eventos (min)", changeDate: "Alterar data", changeTime: "Alterar horário", chooseDuration: "Escolha uma duração", cloudUpgradeDescription: "Para compartilhar sua página de reservas publicamente, conecte um banco de dados na nuvem para que as reservas possam ser recebidas de qualquer lugar.", collapsePreview: "Recolher visualização", confirmBooking: "Confirmar reserva", conferencing: "Conferência", connectZoom: "Conecte Zoom", copyBookingLink: "Copiar link de reserva", copyLink: "Copiar link", createFirstLink: "Crie seu primeiro link", createLink: "Criar link", custom: "Personalizado", customLink: "Link personalizado", customLinkDescription: "Cole qualquer reunião URL", date: "Data", deleteBookingLink: "Excluir link de reserva", deleteDescriptionPrefix: "Isso removerá permanentemente", deleteDescriptionSuffix: "e sua página de reserva pública. Isso não pode ser desfeito.", description: "Crie tipos de reuniões com links públicos e configure sua disponibilidade.", disable: "Desativar", durationMinError: "A duração deve ser de pelo menos 5 minutos.", durationOptions: "Opções de duração", durationOptionsDescription: "Selecione um ou mais – os reservas escolherão no momento do agendamento.", durationRangeError: "Insira uma duração entre 5 e 480 minutos", email: "E-mail", enable: "Habilitar", everyDay: "Todos os dias", generalAccess: "Acesso de gerenciamento geral", goToPreviewStep: "Vá para a etapa de visualização {{step}}", googleMeet: "Google Meet", googleMeetDescription: "Gerar automaticamente um link do Meet", hidden: "Oculto", hoursShort: "{{count}} horas", invalidEmail: "E-mail inválido: {{email}}", linkDisabled: "{{title}} desativado", linkEnabled: "{{title}} habilitado", linkVisibility: "Visibilidade do link", linkVisibilityDescription: "Desligue isso para desativar a página pública.", loadingMeetingTypes: "Carregando tipos de reunião", maxAdvanceBooking: "Reserva antecipada máxima (dias)", meetingName: "Nome da reunião", meetingTypes: "Tipos de reunião", meetingUrl: "Conhecendo URL", minuteMeeting: "Reunião de minuto {{count}}", minutes: "Minutos", minutesLong: "Minutos {{count}}", minutesShort: "{{count}} mínimo", minimumNotice: "Aviso mínimo (horas)", name: "Nome", newBookingLink: "Novo link de reserva", noAvailabilityOnDay: "Não há disponibilidade neste dia", noAvailabilitySet: "Nenhuma disponibilidade definida", noBookingCreated: "Nenhuma reserva foi criada.", noBookingLinks: "Ainda não há links de reserva", noBookingLinksDescription: "Crie um link de reserva para permitir que as pessoas agendem reuniões com você.", noConferencing: "Sem conferência", noConferencingDescription: "Pessoalmente, por telefone ou adicione detalhes mais tarde", notesOptional: "Notas (opcional)", notesPlaceholder: "Qualquer coisa que você gostaria de compartilhar", oneOnOne: "Um a Um", onlyYouRequired: "Só você é necessário.", openBookingLink: "Abrir link de reserva", openBookingPageNewTab: "Abra a página de reservas em uma nova guia", openInNewTab: "Abrir em nova aba", openInteractiveBookingLink: "Abrir link de reserva interativo", openLink: "Abrir link", openPreview: "Abrir visualização", optional: "(opcional)", orgAccessDescription: "Qualquer pessoa na sua organização pode abrir e gerenciar este link de reserva", peopleAccess: "Pessoas com acesso de gerenciamento", preview: "Visualização", previewConfirmed: "Visualização confirmada", previewGuest: "Visualizar convidado", privateAccessDescription: "Somente pessoas convidadas podem gerenciar este link de reserva", publicAccessDescription: "Qualquer pessoa com o link do aplicativo pode visualizar a configuração deste link de reserva", publicBookingLink: "Link de reserva pública", publicManagementAccess: "Acesso de gestão pública", quickChat: "Bate-papo rápido", requiredHosts: "Hosts necessários", requiredHostsCount: "Hosts necessários {{count}}", requiredHostsDescription: "Você está incluído automaticamente. Adicione companheiros de equipe que também devem ser livres.", removeHost: "Remover {{email}}", saveAvailability: "Salvar disponibilidade", saved: "Salvo", selectDate: "Selecione uma data", selectedDateTime: "{{date}} em {{time}}", selectPlaceholder: "Selecione...", shareBookingLink: "Compartilhar link de reserva", shareUrlDescription: "Os bookers usam este URL para escolher um horário. Compartilhando controles sobre quem pode gerenciar este link de reserva.", shownOnBookingPage: "Exibido na página de reserva", slotDuration: "Duração do slot (minutos)", stillCreating: "Ainda criando. Tente novamente em alguns instantes", time: "Hora", timezoneHelp: "Horários semanais, como das 9h às 17h, são interpretados neste fuso horário antes que os visitantes os vejam no fuso horário do próprio navegador.", title: "Links de reserva", to: "para", tryAgain: "Tente novamente", unavailable: "Indisponível", untitledMeeting: "Reunião sem título", url: "URL", weekdays: "Dias da semana", weekends: "Fins de semana", weeklySchedule: "Programação Semanal", weeklyScheduleDescription: "Alterne os dias e defina os horários disponíveis.", zoom: "Zoom", zoomConnectAccount: "Zoom está selecionado. Conecte sua conta para criar uma reunião para cada reserva.", zoomDescription: "Crie automaticamente uma reunião Zoom por reserva", zoomMissingCredentials: "Zoom está selecionado, mas esta implantação não possui credenciais Zoom OAuth.", zoomStartFailed: "Não foi possível iniciar a conexão Zoom", days: { sunday: "Domingo", sundayShort: "Su", monday: "Segunda-feira", mondayShort: "Mo", tuesday: "Terça-feira", tuesdayShort: "Você", wednesday: "Quarta-feira", wednesdayShort: "Nós", thursday: "Quinta-feira", thursdayShort: "O", friday: "Sexta-feira", fridayShort: "Padre", saturday: "Sábado", saturdayShort: "Sá", }, }, eventForm: { addAttachment: "Adicionar anexo", addGuests: "Adicionar convidados", addLocation: "Adicionar local", addTitle: "Adicionar título", addingMeetingLink: "Adicionando link {{provider}}", alerts: "Alertas", allDay: "O dia todo", allDays: "Todos os dias", allEvents: "Todos os eventos", applyTo: "Candidatar-se a", askAi: "Pergunte à IA", atStart: "No início", attachments: "Anexos", attendees: "Participantes", attendeesPlaceholder: "Pesquise contatos ou digite um e-mail", busy: "Ocupado", cancel: "Cancelar", color: "Cor", conferencingLinkOnSave: "O link de conferência é adicionado quando você salva o evento.", connectZoomBeforeCreate: "Conecte Zoom antes de criar este evento.", create: "Criar", createAndSend: "Criar e enviar", createEvent: "Criar evento", createFailed: "Falha ao criar evento", creating: "Criando…", custom: "Personalizado", customEllipsis: "Personalizado...", customRepeatGoogleCalendar: "Programações de repetição personalizadas devem ser editadas no Google Calendar.", customSchedule: "Agenda personalizada", daily: "Diariamente", default: "Padrão", delete: "Excluir", description: "Descrição", discard: "Descartar", doesNotRepeat: "Não se repete", draftEvent: "Evento de rascunho", edit: "Editar", end: "Fim", endDate: "Data de término", event: "Evento", eventAlerts: "Alertas de eventos", eventOptions: "Opções de evento", eventTitlePlaceholder: "Título do evento", everyWeekday: "Todos os dias da semana", findTime: "Encontre um horário", focusTime: "Tempo de foco", focusTimeTimedOnly: "Os eventos de tempo de foco devem ter um horário de início e término específicos.", free: "Grátis", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet adicionado", googleMeetAddFailed: "Falha ao adicionar Google Meet", home: "Página inicial", invite: "Convidar", invitedNotice: "{{count}} convidado – Google enviará um e-mail para eles quando você criar", joinMeet: "Participe do Meet", joinMeeting: "Participar da reunião", joinTeams: "Junte-se a equipes", joinZoom: "Junte-se ao Zoom", loadingRepeat: "Carregando repetir...", location: "Localização", meet: "Conheça", monthly: "Mensalmente", newEvent: "Novo Evento", newEventLower: "Novo evento", noGuests: "Nenhum convidado", noVideo: "Nenhum vídeo", none: "Nenhum", office: "Escritório", other: "Outro", openInSidebar: "Abrir na barra lateral", optionalDescription: "Descrição opcional", optionalLocation: "Localização opcional", outOfOffice: "Fora do escritório", outOfOfficeTimedOnly: "Os eventos fora do escritório devem ter horário de início e término específicos.", passcode: "Senha: {{passcode}}", pasteLink: "Colar link", pasteMeetingLink: "Cole o link da reunião (Zoom, Meet, Teams...)", pin: "PIN: {{pin}}", private: "Privado", public: "Público", repeats: "Repete", reviewInvite: "Revise o convite", save: "Salvar", savedAsVideoLink: "Salvo como link do vídeo deste evento", showAs: "Mostrar como", start: "Começar", startDate: "Data de início", thisDayOnly: "Somente este dia", thisEvent: "Este evento", timeSelected: "Hora selecionada", timezone: "Fuso horário", title: "Título", titleRequired: "O título é obrigatório", toSave: "para salvar", type: "Tipo", video: "Vídeo", viewingOwnerCalendar: "Visualizando o calendário de {{owner}}", visibility: "Visibilidade", weekly: "Semanalmente", workingFrom: "Trabalhando de", workingLocation: "Local de trabalho", workingLocationDesk: "Mesa {{desk}}", workingLocationFloor: "Andar {{floor}}", workingLocationTitle: "Local de trabalho: {{location}}", yearly: "Anualmente", zoom: "Zoom", zoomAdded: "Zoom adicionado", zoomAddFailed: "Falha ao adicionar Zoom", zoomConnectFailed: "Não foi possível conectar Zoom", zoomConnectionOpened: "Conexão Zoom aberta", zoomNotConfigured: "Zoom OAuth não está configurado.", zoomNotConfiguredDeployment: "Zoom não está configurado para esta implantação.", ai: { descriptionMessage: 'Elabore uma descrição concisa do evento do calendário para "{{title}}".', descriptionContext: "Novo rascunho do evento:\nTítulo: {{title}}\nData: {{date}}{{endDate}}\nHora: {{time}}\nFuso horário: {{timezone}}\nLocalização: {{location}}\nParticipantes: {{attendees}}\nDescrição atual: {{description}}\n\nEscreva uma descrição curta e útil da reunião. Mantenha-o pronto para colar e evite adicionar fatos que não estejam no rascunho.", existingDescriptionContext: "ID do evento: {{id}}\nTítulo: {{title}}\nQuando: {{start}} a {{end}}\nFuso horário: {{timezone}}\nLocalização: {{location}}\nParticipantes: {{attendees}}\nDescrição atual: {{description}}\n\nEscreva uma descrição curta e útil da reunião. Se eu pedir para você aplicá-lo, atualize este evento com a ação update-event.", empty: "(vazio)", none: "(nenhum)", notSet: "(não definido)", timeRange: "{{startTime}} a {{endTime}}", toDate: "para {{endDate}}", untitledEvent: "Evento sem título", }, }, }, "hi-IN": { bookingLinks: { add: "जोड़ें", availability: "उपलब्धता", availabilitySaved: "उपलब्धता सहेजी गई", availabilitySaveFailed: "उपलब्धता सहेजने में विफल", availableTimes: "उपलब्ध समय", back: "वापस", bookingDetails: "बुकिंग विवरण", bookingLinkCopied: "बुकिंग लिंक कॉपी किया गया", bookingLinkCreated: "बुकिंग लिंक बनाया गया", bookingLinkCreateFailed: "बुकिंग लिंक बनाने में विफल", bookingLinkDeleted: "बुकिंग लिंक हटा दिया गया", bookingLinkDeleteFailed: "बुकिंग लिंक हटाने में विफल", bookingLinkUpdated: "बुकिंग लिंक अपडेट किया गया", bookingLinkUpdateFailed: "बुकिंग लिंक अपडेट करने में विफल", bookingRules: "बुकिंग नियम", bookingRulesDescription: "बफ़र समय, नोटिस अवधि और स्लॉट सेटिंग्स कॉन्फ़िगर करें।", bookingUsername: "बुकिंग उपयोगकर्ता नाम", bookingUsernameHelp: "URLs की बुकिंग के लिए आपका अनोखा हैंडल, उदा.", bookingUsernameUpdateFailed: "बुकिंग उपयोगकर्ता नाम अपडेट करने में विफल", bookersChooseBetween: "बुकर्स इनमें से चयन करेंगे: {{durations}}", bookings: "बुकिंग", bufferBetweenEvents: "घटनाओं के बीच बफर (न्यूनतम)", changeDate: "तारीख बदलें", changeTime: "समय बदलें", chooseDuration: "एक अवधि चुनें", cloudUpgradeDescription: "अपने बुकिंग पृष्ठ को सार्वजनिक रूप से साझा करने के लिए, क्लाउड डेटाबेस कनेक्ट करें ताकि बुकिंग कहीं से भी प्राप्त की जा सके।", collapsePreview: "पूर्वावलोकन संक्षिप्त करें", confirmBooking: "बुकिंग की पुष्टि करें", conferencing: "कॉन्फ्रेंसिंग", connectZoom: "Zoom कनेक्ट करें", copyBookingLink: "बुकिंग लिंक कॉपी करें", copyLink: "लिंक कॉपी करें", createFirstLink: "अपना पहला लिंक बनाएं", createLink: "लिंक बनाएं", custom: "कस्टम", customLink: "कस्टम लिंक", customLinkDescription: "किसी भी मीटिंग को URL पेस्ट करें", date: "दिनांक", deleteBookingLink: "बुकिंग लिंक हटाएँ", deleteDescriptionPrefix: "यह स्थायी रूप से हटा दिया जाएगा", deleteDescriptionSuffix: "और इसका सार्वजनिक बुकिंग पृष्ठ। इसे पूर्ववत नहीं किया जा सकता.", description: "सार्वजनिक लिंक के साथ मीटिंग प्रकार बनाएं और अपनी उपलब्धता कॉन्फ़िगर करें।", disable: "अक्षम करें", durationMinError: "अवधि कम से कम 5 मिनट होनी चाहिए.", durationOptions: "अवधि विकल्प", durationOptionsDescription: "एक या अधिक का चयन करें - बुक करने वाले शेड्यूल करते समय चुनेंगे।", durationRangeError: "5 से 480 मिनट के बीच की अवधि दर्ज करें", email: "ईमेल", enable: "सक्षम करें", everyDay: "हर दिन", generalAccess: "सामान्य प्रबंधन पहुंच", goToPreviewStep: "पूर्वावलोकन चरण {{step}} पर जाएँ", googleMeet: "Google Meet", googleMeetDescription: "मीट लिंक स्वतः जनरेट करें", hidden: "छिपा हुआ", hoursShort: "{{count}} घंटा", invalidEmail: "अमान्य ईमेल: {{email}}", linkDisabled: "{{title}} अक्षम", linkEnabled: "{{title}} सक्षम", linkVisibility: "लिंक दृश्यता", linkVisibilityDescription: "सार्वजनिक पृष्ठ को अक्षम करने के लिए इसे बंद करें।", loadingMeetingTypes: "मीटिंग प्रकार लोड हो रहे हैं", maxAdvanceBooking: "अधिकतम अग्रिम बुकिंग (दिन)", meetingName: "मीटिंग का नाम", meetingTypes: "मीटिंग के प्रकार", meetingUrl: "बैठक URL", minuteMeeting: "{{count}} मिनट मीटिंग", minutes: "मिनट", minutesLong: "{{count}} मिनट", minutesShort: "{{count}} मि", minimumNotice: "न्यूनतम सूचना (घंटे)", name: "नाम", newBookingLink: "नया बुकिंग लिंक", noAvailabilityOnDay: "इस दिन कोई उपलब्धता नहीं", noAvailabilitySet: "कोई उपलब्धता निर्धारित नहीं", noBookingCreated: "कोई बुकिंग नहीं बनाई गई.", noBookingLinks: "अभी तक कोई बुकिंग लिंक नहीं है", noBookingLinksDescription: "लोगों को आपके साथ मीटिंग शेड्यूल करने देने के लिए एक बुकिंग लिंक बनाएं।", noConferencing: "कोई कॉन्फ्रेंसिंग नहीं", noConferencingDescription: "व्यक्तिगत रूप से, फ़ोन करें, या बाद में विवरण जोड़ें", notesOptional: "नोट्स (वैकल्पिक)", notesPlaceholder: "कुछ भी जो आप साझा करना चाहेंगे", oneOnOne: "एक पर एक", onlyYouRequired: "केवल आपकी आवश्यकता है.", openBookingLink: "बुकिंग लिंक खोलें", openBookingPageNewTab: "नए टैब में बुकिंग पेज खोलें", openInNewTab: "नए टैब में खोलें", openInteractiveBookingLink: "इंटरैक्टिव बुकिंग लिंक खोलें", openLink: "लिंक खोलें", openPreview: "पूर्वावलोकन खोलें", optional: "(वैकल्पिक)", orgAccessDescription: "आपके संगठन का कोई भी व्यक्ति इस बुकिंग लिंक को खोल और प्रबंधित कर सकता है", peopleAccess: "प्रबंधन पहुंच वाले लोग", preview: "पूर्वावलोकन", previewConfirmed: "पूर्वावलोकन की पुष्टि की गई", previewGuest: "अतिथि का पूर्वावलोकन करें", privateAccessDescription: "केवल आमंत्रित लोग ही इस बुकिंग लिंक को प्रबंधित कर सकते हैं", publicAccessDescription: "ऐप लिंक वाला कोई भी व्यक्ति इस बुकिंग लिंक सेटअप को देख सकता है", publicBookingLink: "सार्वजनिक बुकिंग लिंक", publicManagementAccess: "सार्वजनिक प्रबंधन पहुंच", quickChat: "त्वरित चैट", requiredHosts: "आवश्यक मेज़बान", requiredHostsCount: "{{count}} आवश्यक होस्ट", requiredHostsDescription: "आप स्वचालित रूप से शामिल हैं. ऐसे टीम-साथी जोड़ें जो मुक्त भी हों।", removeHost: "{{email}} निकालें", saveAvailability: "उपलब्धता सहेजें", saved: "सहेजा गया", selectDate: "एक तिथि चुनें", selectedDateTime: "{{date}} पर {{time}}", selectPlaceholder: "चुनें...", shareBookingLink: "बुकिंग लिंक साझा करें", shareUrlDescription: "बुकर्स समय चुनने के लिए इस URL का उपयोग करते हैं। नियंत्रण साझा करना कि इस बुकिंग लिंक को कौन प्रबंधित कर सकता है।", shownOnBookingPage: "बुकिंग पृष्ठ पर दिखाया गया है", slotDuration: "स्लॉट अवधि (मिनट)", stillCreating: "अभी भी बना रहा है - कृपया एक क्षण में पुनः प्रयास करें", time: "समय", timezoneHelp: "सुबह 9 बजे से शाम 5 बजे तक के साप्ताहिक घंटों की व्याख्या इस समय क्षेत्र में की जाती है, इससे पहले कि आगंतुक उन्हें अपने ब्राउज़र समय क्षेत्र में देख सकें।", title: "बुकिंग लिंक", to: "को", tryAgain: "पुनः प्रयास करें", unavailable: "अनुपलब्ध", untitledMeeting: "शीर्षकहीन बैठक", url: "URL", weekdays: "कार्यदिवस", weekends: "सप्ताहांत", weeklySchedule: "साप्ताहिक कार्यक्रम", weeklyScheduleDescription: "दिन टॉगल करें और उपलब्ध घंटे सेट करें।", zoom: "Zoom", zoomConnectAccount: "Zoom चयनित है. प्रत्येक बुकिंग के लिए मीटिंग बनाने के लिए अपना खाता कनेक्ट करें।", zoomDescription: "प्रति बुकिंग एक Zoom मीटिंग स्वतः बनाएँ", zoomMissingCredentials: "Zoom चयनित है, लेकिन इस परिनियोजन में Zoom OAuth क्रेडेंशियल अनुपलब्ध हैं।", zoomStartFailed: "Zoom कनेक्शन प्रारंभ नहीं हो सका", days: { sunday: "रविवार", sundayShort: "सु", monday: "सोमवार", mondayShort: "मो", tuesday: "मंगलवार", tuesdayShort: "तु", wednesday: "बुधवार", wednesdayShort: "हम", thursday: "गुरुवार", thursdayShort: "गु", friday: "शुक्रवार", fridayShort: "फादर", saturday: "शनिवार", saturdayShort: "सा", }, }, eventForm: { addAttachment: "अनुलग्नक जोड़ें", addGuests: "अतिथियों को जोड़ें", addLocation: "स्थान जोड़ें", addTitle: "शीर्षक जोड़ें", addingMeetingLink: "{{provider}} लिंक जोड़ा जा रहा है", alerts: "अलर्ट", allDay: "सारा दिन", allDays: "सभी दिन", allEvents: "सभी घटनाएँ", applyTo: "के लिए आवेदन करें", askAi: "एआई से पूछें", atStart: "शुरुआत में", attachments: "अनुलग्नक", attendees: "उपस्थितगण", attendeesPlaceholder: "संपर्क खोजें या ईमेल टाइप करें", busy: "व्यस्त", cancel: "रद्द करें", color: "रंग", conferencingLinkOnSave: "जब आप ईवेंट सहेजते हैं तो कॉन्फ़्रेंसिंग लिंक जोड़ा जाता है।", connectZoomBeforeCreate: "इस ईवेंट को बनाने से पहले Zoom को कनेक्ट करें।", create: "बनाएँ", createAndSend: "बनाएं और भेजें", createEvent: "ईवेंट बनाएं", createFailed: "ईवेंट बनाने में विफल", creating: "बनाया जा रहा है...", custom: "कस्टम", customEllipsis: "कस्टम...", customRepeatGoogleCalendar: "कस्टम रिपीट शेड्यूल को Google Calendar में संपादित किया जाना चाहिए।", customSchedule: "कस्टम शेड्यूल", daily: "दैनिक", default: "डिफ़ॉल्ट", delete: "हटाएँ", description: "विवरण", discard: "त्यागें", doesNotRepeat: "दोहराता नहीं", draftEvent: "मसौदा घटना", edit: "संपादित करें", end: "ख़त्म", endDate: "समाप्ति तिथि", event: "घटना", eventAlerts: "घटना अलर्ट", eventOptions: "घटना विकल्प", eventTitlePlaceholder: "घटना का शीर्षक", everyWeekday: "हर कार्यदिवस", findTime: "एक समय खोजें", focusTime: "फोकस समय", focusTimeTimedOnly: "फोकस समय की घटनाओं का एक विशिष्ट प्रारंभ और समाप्ति समय होना चाहिए।", free: "निःशुल्क", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "Google Meet जोड़ा गया", googleMeetAddFailed: "Google Meet जोड़ने में विफल", home: "घर", invite: "आमंत्रित करें", invitedNotice: "{{count}} आमंत्रित - जब आप बनाएंगे तो Google उन्हें ईमेल करेगा", joinMeet: "मीट में शामिल हों", joinMeeting: "मीटिंग में शामिल हों", joinTeams: "टीमों में शामिल हों", joinZoom: "Zoom से जुड़ें", loadingRepeat: "दोबारा लोड हो रहा है...", location: "स्थान", meet: "मिलो", monthly: "मासिक", newEvent: "नई घटना", newEventLower: "नई घटना", noGuests: "कोई मेहमान नहीं", noVideo: "कोई वीडियो नहीं", none: "कोई नहीं", office: "कार्यालय", other: "अन्य", openInSidebar: "साइडबार में खोलें", optionalDescription: "वैकल्पिक विवरण", optionalLocation: "वैकल्पिक स्थान", outOfOffice: "कार्यालय से बाहर", outOfOfficeTimedOnly: "कार्यालय से बाहर के कार्यक्रमों का एक विशिष्ट प्रारंभ और समाप्ति समय होना चाहिए।", passcode: "पासकोड: {{passcode}}", pasteLink: "लिंक चिपकाएँ", pasteMeetingLink: "मीटिंग लिंक पेस्ट करें (Zoom, मीट, टीमें...)", pin: "PIN: {{pin}}", private: "निजी", public: "सार्वजनिक", repeats: "दोहराता है", reviewInvite: "आमंत्रण की समीक्षा करें", save: "सहेजें", savedAsVideoLink: "इस इवेंट के वीडियो लिंक के रूप में सहेजा गया", showAs: "के रूप में दिखाएँ", start: "प्रारंभ करें", startDate: "आरंभ तिथि", thisDayOnly: "केवल यह दिन", thisEvent: "यह घटना", timeSelected: "समय चयनित", timezone: "समयक्षेत्र", title: "शीर्षक", titleRequired: "शीर्षक आवश्यक है", toSave: "बचाने के लिए", type: "प्रकार", video: "वीडियो", viewingOwnerCalendar: "{{owner}} का कैलेंडर देखना", visibility: "दृश्यता", weekly: "साप्ताहिक", workingFrom: "से काम कर रहे हैं", workingLocation: "कार्य स्थान", workingLocationDesk: "डेस्क {{desk}}", workingLocationFloor: "मंज़िल {{floor}}", workingLocationTitle: "कार्य स्थान: {{location}}", yearly: "वार्षिक", zoom: "Zoom", zoomAdded: "Zoom जोड़ा गया", zoomAddFailed: "Zoom जोड़ने में विफल", zoomConnectFailed: "Zoom कनेक्ट नहीं हो सका", zoomConnectionOpened: "Zoom कनेक्शन खोला गया", zoomNotConfigured: "Zoom OAuth कॉन्फ़िगर नहीं है.", zoomNotConfiguredDeployment: "Zoom इस परिनियोजन के लिए कॉन्फ़िगर नहीं किया गया है.", ai: { descriptionMessage: '"{{title}}" के लिए एक संक्षिप्त कैलेंडर ईवेंट विवरण ड्राफ़्ट करें।', descriptionContext: "नया इवेंट ड्राफ्ट:\nशीर्षक: {{title}}\nदिनांक: {{date}}{{endDate}}\nसमय: {{time}}\nसमयक्षेत्र: {{timezone}}\nस्थान: {{location}}\nउपस्थितगण: {{attendees}}\nवर्तमान विवरण: {{description}}\n\nएक संक्षिप्त, उपयोगी मीटिंग विवरण लिखें. इसे पेस्ट-तैयार रखें और उन तथ्यों को जोड़ने से बचें जो मसौदे में नहीं हैं।", existingDescriptionContext: "इवेंट आईडी: {{id}}\nशीर्षक: {{title}}\nकब: {{start}} से {{end}}\nसमयक्षेत्र: {{timezone}}\nस्थान: {{location}}\nउपस्थितगण: {{attendees}}\nवर्तमान विवरण: {{description}}\n\nएक संक्षिप्त, उपयोगी मीटिंग विवरण लिखें. यदि मैं आपसे इसे लागू करने के लिए कहूं, तो इस इवेंट को अपडेट-इवेंट कार्रवाई के साथ अपडेट करें।", empty: "(खाली)", none: "(कोई नहीं)", notSet: "(सेट नहीं)", timeRange: "{{startTime}} से {{endTime}}", toDate: "{{endDate}} तक", untitledEvent: "शीर्षकहीन घटना", }, }, }, "ar-SA": { bookingLinks: { add: "أضف", availability: "التوفر", availabilitySaved: "تم حفظ التوفر", availabilitySaveFailed: "فشل في حفظ التوفر", availableTimes: "الأوقات المتاحة", back: "العودة", bookingDetails: "تفاصيل الحجز", bookingLinkCopied: "تم نسخ رابط الحجز", bookingLinkCreated: "تم إنشاء رابط الحجز", bookingLinkCreateFailed: "فشل إنشاء رابط الحجز", bookingLinkDeleted: "تم حذف رابط الحجز", bookingLinkDeleteFailed: "فشل حذف رابط الحجز", bookingLinkUpdated: "تم تحديث رابط الحجز", bookingLinkUpdateFailed: "فشل تحديث رابط الحجز", bookingRules: "قواعد الحجز", bookingRulesDescription: "قم بتكوين وقت التخزين المؤقت وفترات الإشعار وإعدادات الفتحة.", bookingUsername: "حجز اسم المستخدم", bookingUsernameHelp: "المقبض الفريد الخاص بك لحجز URL، على سبيل المثال.", bookingUsernameUpdateFailed: "فشل تحديث اسم مستخدم الحجز", bookersChooseBetween: "سيختار القائمون بالحجز بين: {{durations}}", bookings: "الحجوزات", bufferBetweenEvents: "المخزن المؤقت بين الأحداث (دقيقة)", changeDate: "تغيير التاريخ", changeTime: "تغيير الوقت", chooseDuration: "اختر المدة", cloudUpgradeDescription: "لمشاركة صفحة الحجز الخاصة بك بشكل عام، قم بتوصيل قاعدة بيانات سحابية حتى يمكن تلقي الحجوزات من أي مكان.", collapsePreview: "طي المعاينة", confirmBooking: "تأكيد الحجز", conferencing: "عقد المؤتمرات", connectZoom: "قم بتوصيل Zoom", copyBookingLink: "انسخ رابط الحجز", copyLink: "انسخ الرابط", createFirstLink: "قم بإنشاء الرابط الأول الخاص بك", createLink: "إنشاء رابط", custom: "مخصص", customLink: "رابط مخصص", customLinkDescription: "لصق أي اجتماع URL", date: "التاريخ", deleteBookingLink: "حذف رابط الحجز", deleteDescriptionPrefix: "سيؤدي هذا إلى إزالة بشكل دائم", deleteDescriptionSuffix: "وصفحة الحجز العامة الخاصة بها. لا يمكن التراجع عن هذا.", description: "أنشئ أنواع الاجتماعات باستخدام الروابط العامة وقم بتكوين مدى توفرك.", disable: "تعطيل", durationMinError: "يجب أن تكون المدة 5 دقائق على الأقل.", durationOptions: "خيارات المدة", durationOptionsDescription: "اختر واحدًا أو أكثر — سيختار القائمون بالحجز عند تحديد الموعد.", durationRangeError: "أدخل مدة تتراوح بين 5 و480 دقيقة", email: "البريد الإلكتروني", enable: "تمكين", everyDay: "كل يوم", generalAccess: "الوصول إلى الإدارة العامة", goToPreviewStep: "انتقل إلى خطوة المعاينة {{step}}", googleMeet: "Google Meet", googleMeetDescription: "إنشاء رابط Meet تلقائيًا", hidden: "مخفي", hoursShort: "{{count}} ساعة", invalidEmail: "بريد إلكتروني غير صالح: {{email}}", linkDisabled: "تم تعطيل {{title}}", linkEnabled: "تم تمكين {{title}}", linkVisibility: "رؤية الارتباط", linkVisibilityDescription: "قم بإيقاف تشغيل هذا لتعطيل الصفحة العامة.", loadingMeetingTypes: "جارٍ تحميل أنواع الاجتماعات", maxAdvanceBooking: "الحد الأقصى للحجز المسبق (أيام)", meetingName: "اسم الاجتماع", meetingTypes: "أنواع الاجتماعات", meetingUrl: "لقاء URL", minuteMeeting: "اجتماع محضر {{count}}", minutes: "دقائق", minutesLong: "دقائق {{count}}", minutesShort: "{{count}} دقيقة", minimumNotice: "الحد الأدنى للإشعار (ساعات)", name: "الاسم", newBookingLink: "رابط الحجز الجديد", noAvailabilityOnDay: "لا يوجد توافر في هذا اليوم", noAvailabilitySet: "لم يتم تحديد مدى التوفر", noBookingCreated: "لم يتم إنشاء أي حجز.", noBookingLinks: "لا توجد روابط الحجز بعد", noBookingLinksDescription: "أنشئ رابط حجز للسماح للأشخاص بجدولة الاجتماعات معك.", noConferencing: "لا مؤتمرات", noConferencingDescription: "شخصيًا أو عبر الهاتف أو قم بإضافة التفاصيل لاحقًا", notesOptional: "ملاحظات (اختياري)", notesPlaceholder: "أي شيء ترغب في مشاركته", oneOnOne: "واحد لواحد", onlyYouRequired: "مطلوب منك فقط .", openBookingLink: "فتح رابط الحجز", openBookingPageNewTab: "افتح صفحة الحجز في علامة تبويب جديدة", openInNewTab: "افتح في علامة تبويب جديدة", openInteractiveBookingLink: "فتح رابط الحجز التفاعلي", openLink: "فتح الرابط", openPreview: "فتح المعاينة", optional: "(اختياري)", orgAccessDescription: "يمكن لأي شخص في مؤسستك فتح رابط الحجز هذا وإدارته", peopleAccess: "الأشخاص الذين لديهم حق الوصول إلى الإدارة", preview: "معاينة", previewConfirmed: "تم تأكيد المعاينة", previewGuest: "معاينة الضيف", privateAccessDescription: "يمكن للأشخاص المدعوين فقط إدارة رابط الحجز هذا", publicAccessDescription: "يمكن لأي شخص لديه رابط التطبيق عرض إعداد رابط الحجز هذا", publicBookingLink: "رابط الحجز العام", publicManagementAccess: "الوصول إلى الإدارة العامة", quickChat: "دردشة سريعة", requiredHosts: "المضيفين المطلوبة", requiredHostsCount: "يتطلب {{count}} مضيفين", requiredHostsDescription: "يتم تضمينك تلقائيا. أضف زملاء الفريق الذين يجب أن يكونوا أحرارًا أيضًا.", removeHost: "إزالة {{email}}", saveAvailability: "حفظ التوفر", saved: "تم الحفظ", selectDate: "حدد التاريخ", selectedDateTime: "{{date}} في {{time}}", selectPlaceholder: "اختر...", shareBookingLink: "مشاركة رابط الحجز", shareUrlDescription: "يستخدم القائمون بالحجز URL لاختيار الوقت. مشاركة عناصر التحكم في من يمكنه إدارة رابط الحجز هذا.", shownOnBookingPage: "يظهر في صفحة الحجز", slotDuration: "مدة الفتحة (بالدقائق)", stillCreating: "لا يزال الإنشاء مستمرًا - يرجى المحاولة مرة أخرى بعد قليل", time: "الوقت", timezoneHelp: "يتم تفسير الساعات الأسبوعية مثل الساعة 9 صباحًا حتى 5 مساءً في هذه المنطقة الزمنية قبل أن يراها الزائرون في المنطقة الزمنية للمتصفح الخاص بهم.", title: "روابط الحجز", to: "ل", tryAgain: "حاول مرة أخرى", unavailable: "غير متاح", untitledMeeting: "لقاء بلا عنوان", url: "URL", weekdays: "أيام الأسبوع", weekends: "عطلات نهاية الأسبوع", weeklySchedule: "الجدول الأسبوعي", weeklyScheduleDescription: "تبديل الأيام وتعيين الساعات المتاحة.", zoom: "Zoom", zoomConnectAccount: "تم تحديد Zoom. قم بتوصيل حسابك لإنشاء اجتماع لكل حجز.", zoomDescription: "إنشاء اجتماع Zoom تلقائيًا لكل حجز", zoomMissingCredentials: "تم تحديد Zoom، لكن هذا النشر يفتقد بيانات اعتماد Zoom OAuth.", zoomStartFailed: "تعذر بدء اتصال Zoom", days: { sunday: "الأحد", sundayShort: "سو", monday: "الاثنين", mondayShort: "مو", tuesday: "الثلاثاء", tuesdayShort: "تو", wednesday: "الأربعاء", wednesdayShort: "نحن", thursday: "الخميس", thursdayShort: "ث", friday: "الجمعة", fridayShort: "الأب", saturday: "السبت", saturdayShort: "سا", }, }, eventForm: { addAttachment: "إضافة مرفق", addGuests: "إضافة الضيوف", addLocation: "أضف الموقع", addTitle: "أضف عنوانًا", addingMeetingLink: "إضافة رابط {{provider}}", alerts: "التنبيهات", allDay: "طوال اليوم", allDays: "كل الأيام", allEvents: "جميع الأحداث", applyTo: "تنطبق على", askAi: "اسأل الذكاء الاصطناعي", atStart: "في البداية", attachments: "المرفقات", attendees: "الحضور", attendeesPlaceholder: "ابحث في جهات الاتصال أو اكتب بريدًا إلكترونيًا", busy: "مشغول", cancel: "إلغاء", color: "اللون", conferencingLinkOnSave: "تتم إضافة رابط المؤتمر عند حفظ الحدث.", connectZoomBeforeCreate: "قم بتوصيل Zoom قبل إنشاء هذا الحدث.", create: "إنشاء", createAndSend: "إنشاء وإرسال", createEvent: "إنشاء حدث", createFailed: "فشل في إنشاء الحدث", creating: "جارٍ الإنشاء…", custom: "مخصص", customEllipsis: "مخصص...", customRepeatGoogleCalendar: "يجب تحرير جداول التكرار المخصصة في Google Calendar.", customSchedule: "جدول مخصص", daily: "يوميا", default: "الافتراضي", delete: "حذف", description: "الوصف", discard: "تجاهل", doesNotRepeat: "لا يتكرر", draftEvent: "مشروع الحدث", edit: "تحرير", end: "نهاية", endDate: "تاريخ الانتهاء", event: "حدث", eventAlerts: "تنبيهات الحدث", eventOptions: "خيارات الحدث", eventTitlePlaceholder: "عنوان الحدث", everyWeekday: "كل يوم من أيام الأسبوع", findTime: "جد وقتًا", focusTime: "وقت التركيز", focusTimeTimedOnly: "يجب أن يكون لأحداث وقت التركيز وقت بداية ونهاية محددين.", free: "مجاني", googleCalendar: "Google Calendar", googleMeet: "Google Meet", googleMeetAdded: "تمت إضافة Google Meet", googleMeetAddFailed: "فشلت إضافة Google Meet", home: "الصفحة الرئيسية", invite: "دعوة", invitedNotice: "تمت دعوة {{count}} - سترسلهم Google عبر البريد الإلكتروني عند الإنشاء", joinMeet: "انضم إلى لقاء", joinMeeting: "الانضمام إلى الاجتماع", joinTeams: "انضم إلى الفرق", joinZoom: "انضم إلى Zoom", loadingRepeat: "جاري التحميل تكرار...", location: "الموقع", meet: "لقاء", monthly: "شهريا", newEvent: "حدث جديد", newEventLower: "حدث جديد", noGuests: "لا يوجد ضيوف", noVideo: "لا يوجد فيديو", none: "لا شيء", office: "مكتب", other: "أخرى", openInSidebar: "فتح في الشريط الجانبي", optionalDescription: "وصف اختياري", optionalLocation: "الموقع الاختياري", outOfOffice: "خارج المكتب", outOfOfficeTimedOnly: "يجب أن يكون للأحداث خارج المكتب وقت بداية ونهاية محددين.", passcode: "رمز المرور: {{passcode}}", pasteLink: "لصق الرابط", pasteMeetingLink: "لصق رابط الاجتماع (Zoom، Meet، Teams...)", pin: "PIN: {{pin}}", private: "خاص", public: "عام", repeats: "يكرر", reviewInvite: "مراجعة الدعوة", save: "حفظ", savedAsVideoLink: "تم الحفظ كرابط فيديو لهذا الحدث", showAs: "إظهار كـ", start: "ابدأ", startDate: "تاريخ البدء", thisDayOnly: "هذا اليوم فقط", thisEvent: "هذا الحدث", timeSelected: "الوقت المحدد", timezone: "المنطقة الزمنية", title: "العنوان", titleRequired: "العنوان مطلوب", toSave: "للحفظ", type: "اكتب", video: "فيديو", viewingOwnerCalendar: "عرض تقويم {{owner}}", visibility: "الرؤية", weekly: "أسبوعيا", workingFrom: "العمل من", workingLocation: "موقع العمل", workingLocationDesk: "المكتب {{desk}}", workingLocationFloor: "الطابق {{floor}}", workingLocationTitle: "موقع العمل: {{location}}", yearly: "سنويا", zoom: "Zoom", zoomAdded: "تمت إضافة Zoom", zoomAddFailed: "فشلت إضافة Zoom", zoomConnectFailed: "لا يمكن الاتصال Zoom", zoomConnectionOpened: "تم فتح اتصال Zoom", zoomNotConfigured: "لم يتم تكوين Zoom OAuth.", zoomNotConfiguredDeployment: "لم يتم تكوين Zoom لهذا النشر.", ai: { descriptionMessage: 'قم بصياغة وصف موجز لحدث التقويم لـ "{{title}}".', descriptionContext: "مسودة الحدث الجديد:\nالعنوان: {{title}}\nالتاريخ: {{date}}{{endDate}}\nالوقت: {{time}}\nالمنطقة الزمنية: {{timezone}}\nالموقع: {{location}}\nالحضور: {{attendees}}\nالوصف الحالي: {{description}}\n\nاكتب وصفًا قصيرًا ومفيدًا للاجتماع. اجعلها جاهزة للصقه وتجنب إضافة حقائق غير موجودة في المسودة.", existingDescriptionContext: "معرف الحدث: {{id}}\nالعنوان: {{title}}\nمتى: {{start}} إلى {{end}}\nالمنطقة الزمنية: {{timezone}}\nالموقع: {{location}}\nالحضور: {{attendees}}\nالوصف الحالي: {{description}}\n\nاكتب وصفًا قصيرًا ومفيدًا للاجتماع. إذا طلبت منك تطبيقه، فقم بتحديث هذا الحدث بإجراء حدث التحديث.", empty: "(فارغ)", none: "(لا شيء)", notSet: "(غير محدد)", timeRange: "من {{startTime}} إلى {{endTime}}", toDate: "إلى {{endDate}}", untitledEvent: "حدث بلا عنوان", }, }, }, } satisfies Record, PartialMessages>; export const messagesByLocale = { "en-US": enUS, "zh-TW": mergeMessages(zhTW), "zh-CN": mergeMessages({ ...calendarSurfaceTranslations["zh-CN"], common: { connect: "连接", connected: "已连接", connecting: "正在连接...", clipboardUnavailable: "无法访问剪贴板", disconnect: "断开连接", notConnected: "未连接", loadFailed: "无法加载此数据。", retry: "重试", saving: "正在保存...", }, root: { commandActions: "操作", commandSearch: "搜索", commandAppearance: "外观", toggleTheme: "切换主题", }, timezone: { select: "选择时区", searchPlaceholder: "搜索时区或城市...", empty: "未找到时区。", }, navigation: { brand: "Calendar", calendar: "日历", bookingLinks: "预约链接", team: "团队", settings: "设置", }, settings: { title: "设置", description: "配置日历和集成。", languageTitle: "语言", languageDescription: "选择 Calendar 的界面语言。", languageLabel: "界面语言", googleCalendar: "Google 日历", googleDescription: "连接 Google 日历以同步事件。", googleFailed: "Google 登录失败", googleDisconnected: "Google 日历已断开连接", disconnectFailed: "断开连接失败", zoomOpened: "Zoom 连接已打开", zoomConnectFailed: "无法连接 Zoom", zoomDisconnected: "Zoom 已断开连接", zoomDisconnectFailed: "断开 Zoom 失败", general: "通用", generalDescription: "日历默认值和备用预约文案。", timezone: "时区", saveSettings: "保存设置", saved: "设置已保存", saveFailed: "保存设置失败", appearance: "外观", appearanceDescription: "为工作区选择颜色主题,或直接询问代理。", connectGoogleCalendar: "连接 Google 日历", connectGoogleDescription: "同步你的事件并在一个地方管理所有内容。", }, }), "es-ES": mergeMessages({ ...calendarSurfaceTranslations["es-ES"], common: { connect: "Conectar", connected: "Conectado", connecting: "Conectando...", clipboardUnavailable: "El acceso al portapapeles no está disponible", disconnect: "Desconectar", notConnected: "No conectado", loadFailed: "No se pudieron cargar estos datos.", retry: "Reintentar", saving: "Guardando...", }, root: { commandActions: "Acciones", commandSearch: "Buscar", commandAppearance: "Apariencia", toggleTheme: "Cambiar tema", }, timezone: { select: "Seleccionar zona horaria", searchPlaceholder: "Buscar zona horaria o ciudad...", empty: "No se encontró ninguna zona horaria.", }, navigation: { calendar: "Calendario", bookingLinks: "Enlaces de reserva", team: "Equipo", settings: "Ajustes", }, settings: { title: "Ajustes", description: "Configura tu calendario e integraciones.", languageTitle: "Idioma", languageDescription: "Elige el idioma de la interfaz de Calendar.", languageLabel: "Idioma de la interfaz", googleCalendar: "Google Calendar", googleDescription: "Conecta Google Calendar para sincronizar eventos.", googleFailed: "Error al iniciar sesión con Google", googleDisconnected: "Google Calendar desconectado", disconnectFailed: "No se pudo desconectar", zoomOpened: "Conexión de Zoom abierta", zoomConnectFailed: "No se pudo conectar Zoom", zoomDisconnected: "Zoom desconectado", zoomDisconnectFailed: "No se pudo desconectar Zoom", general: "General", generalDescription: "Valores predeterminados del calendario y reservas.", timezone: "Zona horaria", saveSettings: "Guardar ajustes", saved: "Ajustes guardados", saveFailed: "No se pudieron guardar los ajustes", appearance: "Apariencia", appearanceDescription: "Elige un tema de color para tu workspace o pídeselo al agente.", connectGoogleCalendar: "Conectar Google Calendar", connectGoogleDescription: "Sincroniza eventos y gestiona todo en un solo lugar.", }, }), "fr-FR": mergeMessages({ ...calendarSurfaceTranslations["fr-FR"], common: { connect: "Connecter", connected: "Connecté", connecting: "Connexion...", clipboardUnavailable: "L’accès au presse-papiers n’est pas disponible", disconnect: "Déconnecter", notConnected: "Non connecté", loadFailed: "Impossible de charger ces données.", retry: "Réessayer", saving: "Enregistrement...", }, root: { commandActions: "Actions", commandSearch: "Rechercher", commandAppearance: "Apparence", toggleTheme: "Changer de thème", }, timezone: { select: "Sélectionner un fuseau horaire", searchPlaceholder: "Rechercher un fuseau ou une ville...", empty: "Aucun fuseau horaire trouvé.", }, navigation: { calendar: "Calendrier", bookingLinks: "Liens de réservation", team: "Équipe", settings: "Paramètres", }, settings: { title: "Paramètres", description: "Configurez votre calendrier et vos intégrations.", languageTitle: "Langue", languageDescription: "Choisissez la langue de l'interface de Calendar.", languageLabel: "Langue de l'interface", googleCalendar: "Google Calendar", googleDescription: "Connectez Google Calendar pour synchroniser les événements.", googleFailed: "Échec de la connexion Google", googleDisconnected: "Google Calendar déconnecté", disconnectFailed: "Échec de la déconnexion", zoomOpened: "Connexion Zoom ouverte", zoomConnectFailed: "Impossible de connecter Zoom", zoomDisconnected: "Zoom déconnecté", zoomDisconnectFailed: "Impossible de déconnecter Zoom", general: "Général", generalDescription: "Valeurs par défaut du calendrier et réservations.", timezone: "Fuseau horaire", saveSettings: "Enregistrer", saved: "Paramètres enregistrés", saveFailed: "Échec de l'enregistrement", appearance: "Apparence", appearanceDescription: "Choisissez un thème de couleur pour votre espace, ou demandez à l'agent.", connectGoogleCalendar: "Connecter Google Calendar", connectGoogleDescription: "Synchronisez vos événements et gérez tout au même endroit.", }, }), "de-DE": mergeMessages({ ...calendarSurfaceTranslations["de-DE"], common: { connect: "Verbinden", connected: "Verbunden", connecting: "Verbinden...", clipboardUnavailable: "Zugriff auf die Zwischenablage ist nicht verfügbar", disconnect: "Trennen", notConnected: "Nicht verbunden", loadFailed: "Diese Daten konnten nicht geladen werden.", retry: "Erneut versuchen", saving: "Speichern...", }, root: { commandActions: "Aktionen", commandSearch: "Suchen", commandAppearance: "Darstellung", toggleTheme: "Theme wechseln", }, timezone: { select: "Zeitzone auswählen", searchPlaceholder: "Zeitzone oder Stadt suchen...", empty: "Keine Zeitzone gefunden.", }, navigation: { calendar: "Kalender", bookingLinks: "Buchungslinks", team: "Team", settings: "Einstellungen", }, settings: { title: "Einstellungen", description: "Kalender und Integrationen konfigurieren.", languageTitle: "Sprache", languageDescription: "Wähle die Oberflächensprache für Calendar.", languageLabel: "Oberflächensprache", googleCalendar: "Google Kalender", googleDescription: "Verbinde Google Kalender, um Termine zu synchronisieren.", googleFailed: "Google-Anmeldung fehlgeschlagen", googleDisconnected: "Google Kalender getrennt", disconnectFailed: "Trennen fehlgeschlagen", zoomOpened: "Zoom-Verbindung geöffnet", zoomConnectFailed: "Zoom konnte nicht verbunden werden", zoomDisconnected: "Zoom getrennt", zoomDisconnectFailed: "Zoom konnte nicht getrennt werden", general: "Allgemein", generalDescription: "Kalender-Standards und Buchungstexte.", timezone: "Zeitzone", saveSettings: "Einstellungen speichern", saved: "Einstellungen gespeichert", saveFailed: "Einstellungen konnten nicht gespeichert werden", appearance: "Darstellung", appearanceDescription: "Wähle ein Farbtheme für deinen Workspace oder frage den Agenten.", connectGoogleCalendar: "Google Kalender verbinden", connectGoogleDescription: "Synchronisiere Termine und verwalte alles an einem Ort.", }, }), "ja-JP": mergeMessages({ ...calendarSurfaceTranslations["ja-JP"], common: { connect: "接続", connected: "接続済み", connecting: "接続中...", clipboardUnavailable: "クリップボードへのアクセスは利用できません", disconnect: "切断", notConnected: "未接続", loadFailed: "このデータを読み込めませんでした。", retry: "再試行", saving: "保存中...", }, root: { commandActions: "操作", commandSearch: "検索", commandAppearance: "外観", toggleTheme: "テーマを切り替え", }, timezone: { select: "タイムゾーンを選択", searchPlaceholder: "タイムゾーンまたは都市を検索...", empty: "タイムゾーンが見つかりません。", }, navigation: { calendar: "カレンダー", bookingLinks: "予約リンク", team: "チーム", settings: "設定", }, settings: { title: "設定", description: "カレンダーと連携を設定します。", languageTitle: "言語", languageDescription: "Calendar のインターフェース言語を選択します。", languageLabel: "インターフェース言語", googleCalendar: "Google カレンダー", googleDescription: "Google カレンダーを接続して予定を同期します。", googleFailed: "Google サインインに失敗しました", googleDisconnected: "Google カレンダーを切断しました", disconnectFailed: "切断に失敗しました", zoomOpened: "Zoom 接続を開きました", zoomConnectFailed: "Zoom に接続できませんでした", zoomDisconnected: "Zoom を切断しました", zoomDisconnectFailed: "Zoom の切断に失敗しました", general: "一般", generalDescription: "カレンダー既定値と予約ページの代替文言。", timezone: "タイムゾーン", saveSettings: "設定を保存", saved: "設定を保存しました", saveFailed: "設定を保存できませんでした", appearance: "外観", appearanceDescription: "ワークスペースのカラーテーマを選ぶか、エージェントに依頼します。", connectGoogleCalendar: "Google カレンダーに接続", connectGoogleDescription: "予定を同期して一か所で管理します。", }, }), "ko-KR": mergeMessages({ ...calendarSurfaceTranslations["ko-KR"], common: { connect: "연결", connected: "연결됨", connecting: "연결 중...", clipboardUnavailable: "클립보드 접근을 사용할 수 없습니다", disconnect: "연결 해제", notConnected: "연결되지 않음", loadFailed: "이 데이터를 불러올 수 없습니다.", retry: "다시 시도", saving: "저장 중...", }, root: { commandActions: "작업", commandSearch: "검색", commandAppearance: "모양", toggleTheme: "테마 전환", }, timezone: { select: "시간대 선택", searchPlaceholder: "시간대 또는 도시 검색...", empty: "시간대를 찾을 수 없습니다.", }, navigation: { calendar: "캘린더", bookingLinks: "예약 링크", team: "팀", settings: "설정", }, settings: { title: "설정", description: "캘린더와 통합을 구성합니다.", languageTitle: "언어", languageDescription: "Calendar의 인터페이스 언어를 선택하세요.", languageLabel: "인터페이스 언어", googleCalendar: "Google Calendar", googleDescription: "이벤트 동기화를 위해 Google Calendar를 연결하세요.", googleFailed: "Google 로그인 실패", googleDisconnected: "Google Calendar 연결 해제됨", disconnectFailed: "연결 해제 실패", zoomOpened: "Zoom 연결 열림", zoomConnectFailed: "Zoom을 연결할 수 없음", zoomDisconnected: "Zoom 연결 해제됨", zoomDisconnectFailed: "Zoom 연결 해제 실패", general: "일반", generalDescription: "캘린더 기본값과 예약 복사 문구.", timezone: "시간대", saveSettings: "설정 저장", saved: "설정 저장됨", saveFailed: "설정 저장 실패", appearance: "모양", appearanceDescription: "워크스페이스 색상 테마를 선택하거나 에이전트에게 요청하세요.", connectGoogleCalendar: "Google Calendar 연결", connectGoogleDescription: "이벤트를 동기화하고 한곳에서 관리하세요.", }, }), "pt-BR": mergeMessages({ ...calendarSurfaceTranslations["pt-BR"], common: { connect: "Conectar", connected: "Conectado", connecting: "Conectando...", clipboardUnavailable: "O acesso à área de transferência não está disponível", disconnect: "Desconectar", notConnected: "Não conectado", loadFailed: "Não foi possível carregar estes dados.", retry: "Tentar novamente", saving: "Salvando...", }, root: { commandActions: "Ações", commandSearch: "Buscar", commandAppearance: "Aparência", toggleTheme: "Alternar tema", }, timezone: { select: "Selecionar fuso horário", searchPlaceholder: "Buscar fuso horário ou cidade...", empty: "Nenhum fuso horário encontrado.", }, navigation: { calendar: "Calendário", bookingLinks: "Links de reserva", team: "Equipe", settings: "Configurações", }, settings: { title: "Configurações", description: "Configure seu calendário e integrações.", languageTitle: "Idioma", languageDescription: "Escolha o idioma da interface do Calendar.", languageLabel: "Idioma da interface", googleCalendar: "Google Calendar", googleDescription: "Conecte o Google Calendar para sincronizar eventos.", googleFailed: "Falha no login do Google", googleDisconnected: "Google Calendar desconectado", disconnectFailed: "Falha ao desconectar", zoomOpened: "Conexão do Zoom aberta", zoomConnectFailed: "Não foi possível conectar o Zoom", zoomDisconnected: "Zoom desconectado", zoomDisconnectFailed: "Falha ao desconectar Zoom", general: "Geral", generalDescription: "Padrões do calendário e texto de reserva.", timezone: "Fuso horário", saveSettings: "Salvar configurações", saved: "Configurações salvas", saveFailed: "Falha ao salvar configurações", appearance: "Aparência", appearanceDescription: "Escolha um tema de cor para o workspace ou peça ao agente.", connectGoogleCalendar: "Conectar Google Calendar", connectGoogleDescription: "Sincronize eventos e gerencie tudo em um só lugar.", }, }), "hi-IN": mergeMessages({ ...calendarSurfaceTranslations["hi-IN"], common: { connect: "कनेक्ट करें", connected: "कनेक्टेड", connecting: "कनेक्ट कर रहे हैं...", clipboardUnavailable: "क्लिपबोर्ड एक्सेस उपलब्ध नहीं है", disconnect: "डिस्कनेक्ट करें", notConnected: "कनेक्टेड नहीं", loadFailed: "यह डेटा लोड नहीं किया जा सका।", retry: "फिर से प्रयास करें", saving: "सहेज रहे हैं...", }, root: { commandActions: "क्रियाएं", commandSearch: "खोजें", commandAppearance: "रूप", toggleTheme: "थीम बदलें", }, timezone: { select: "समय क्षेत्र चुनें", searchPlaceholder: "समय क्षेत्र या शहर खोजें...", empty: "कोई समय क्षेत्र नहीं मिला।", }, navigation: { calendar: "कैलेंडर", bookingLinks: "बुकिंग लिंक", team: "टीम", settings: "सेटिंग्स", }, settings: { title: "सेटिंग्स", description: "अपना कैलेंडर और integrations कॉन्फ़िगर करें।", languageTitle: "भाषा", languageDescription: "Calendar की interface भाषा चुनें।", languageLabel: "इंटरफ़ेस भाषा", googleCalendar: "Google Calendar", googleDescription: "events sync करने के लिए Google Calendar कनेक्ट करें।", googleFailed: "Google sign-in विफल", googleDisconnected: "Google Calendar डिस्कनेक्ट हुआ", disconnectFailed: "डिस्कनेक्ट विफल", zoomOpened: "Zoom connection खुला", zoomConnectFailed: "Zoom कनेक्ट नहीं कर सके", zoomDisconnected: "Zoom डिस्कनेक्ट हुआ", zoomDisconnectFailed: "Zoom डिस्कनेक्ट विफल", general: "सामान्य", generalDescription: "Calendar defaults और fallback booking copy.", timezone: "समय क्षेत्र", saveSettings: "सेटिंग्स सहेजें", saved: "सेटिंग्स सहेजी गईं", saveFailed: "सेटिंग्स सहेजने में विफल", appearance: "रूप", appearanceDescription: "workspace के लिए color theme चुनें या agent से पूछें।", connectGoogleCalendar: "Google Calendar कनेक्ट करें", connectGoogleDescription: "events sync करें और सब कुछ एक जगह manage करें।", }, }), "ar-SA": mergeMessages({ ...calendarSurfaceTranslations["ar-SA"], common: { connect: "اتصال", connected: "متصل", connecting: "جارٍ الاتصال...", clipboardUnavailable: "الوصول إلى الحافظة غير متاح", disconnect: "قطع الاتصال", notConnected: "غير متصل", loadFailed: "تعذر تحميل هذه البيانات.", retry: "إعادة المحاولة", saving: "جارٍ الحفظ...", }, root: { commandActions: "الإجراءات", commandSearch: "بحث", commandAppearance: "المظهر", toggleTheme: "تبديل السمة", }, timezone: { select: "اختيار المنطقة الزمنية", searchPlaceholder: "ابحث عن منطقة زمنية أو مدينة...", empty: "لم يتم العثور على منطقة زمنية.", }, navigation: { calendar: "التقويم", bookingLinks: "روابط الحجز", team: "الفريق", settings: "الإعدادات", }, settings: { title: "الإعدادات", description: "اضبط التقويم والتكاملات.", languageTitle: "اللغة", languageDescription: "اختر لغة واجهة Calendar.", languageLabel: "لغة الواجهة", googleCalendar: "تقويم Google", googleDescription: "اربط تقويم Google لمزامنة الأحداث.", googleFailed: "فشل تسجيل الدخول إلى Google", googleDisconnected: "تم قطع اتصال تقويم Google", disconnectFailed: "فشل قطع الاتصال", zoomOpened: "تم فتح اتصال Zoom", zoomConnectFailed: "تعذر الاتصال بـ Zoom", zoomDisconnected: "تم قطع اتصال Zoom", zoomDisconnectFailed: "فشل قطع اتصال Zoom", general: "عام", generalDescription: "إعدادات التقويم الافتراضية ونصوص الحجز البديلة.", timezone: "المنطقة الزمنية", saveSettings: "حفظ الإعدادات", saved: "تم حفظ الإعدادات", saveFailed: "فشل حفظ الإعدادات", appearance: "المظهر", appearanceDescription: "اختر سمة ألوان لمساحة العمل أو اسأل الوكيل.", connectGoogleCalendar: "الاتصال بتقويم Google", connectGoogleDescription: "زامن أحداثك وأدر كل شيء في مكان واحد.", }, }), } satisfies Record; const translatedCalendarExtras = { "zh-CN": { settings: { agentTitle: "管理代理", agentDescription: "管理代理的模型、API 密钥、自动化、语音和其他控制项。", openAgentSettings: "管理代理", zoomDescription: "连接 Zoom,为日历事件和预约创建会议链接。", zoomNotConfigured: "未配置", zoomCredentialsPrompt: "添加 Zoom OAuth 凭据以启用连接。", bookingTitleLabel: "备用预约页面标题", bookingTitlePlaceholder: "预约会议", bookingTitleHelp: "仅在预约链接没有标题时使用。可从“预约链接”创建、打开并复制公共 URL。", bookingDescriptionLabel: "备用预约页面描述", bookingDescriptionPlaceholder: "选择一个适合你的时间。", bookingDescriptionHelp: "仅在预约链接没有自己的描述时使用。", defaultDurationLabel: "默认事件时长(分钟)", defaultDurationHelp: "新日历事件和预约时段的默认长度。预约链接可按链接覆盖此设置。", }, eventDialog: { eventUpdated: "事件已更新", updateFailed: "更新事件失败", eventDeleted: "事件已删除", deleteFailed: "删除事件失败", description: "描述", addDescription: "添加描述...", start: "开始", end: "结束", location: "地点", addLocation: "添加地点...", pressToSave: "按 {{shortcut}} 保存", pressToEditDelete: "按 E 编辑 · 按 Del 删除", allDay: "全天", cancel: "取消", saving: "正在保存...", saveChanges: "保存更改", edit: "编辑", delete: "删除", close: "关闭", }, deleteEvent: { title: "删除事件?", fallbackDescription: "此事件将被删除。", recurringTitle: "这是一个重复事件", removeTitle: "移除事件?", chooseScope: "选择要{{action}}多少个系列事件。", notifyGuests: "你可以附加备注通知来宾。", willBeActioned: "此事件将被{{action}}。", thisEvent: "此事件", thisAndFollowing: "此事件及后续事件", allEvents: "所有事件", cancellationNote: "添加取消备注", cancellationPlaceholder: "取消此事件的原因...", guest_one: "{{count}} 位来宾", guest_other: "{{count}} 位来宾", cancel: "取消", dontNotify: "不通知", sendCancellation: "发送取消通知", removeEvent: "移除事件", deleteEvent: "删除事件", removeAction: "移除", deleteAction: "删除", }, }, "es-ES": { settings: { agentTitle: "Gestionar agente", agentDescription: "Gestiona el modelo del agente, claves API, automatizaciones, voz y otros controles.", openAgentSettings: "Gestionar agente", zoomDescription: "Conecta Zoom para crear enlaces de reunión para eventos y reservas.", zoomNotConfigured: "No configurado", zoomCredentialsPrompt: "Añade credenciales OAuth de Zoom para habilitar la conexión.", bookingTitleLabel: "Título alternativo de la página de reserva", bookingTitlePlaceholder: "Reservar una reunión", bookingTitleHelp: "Se usa solo cuando un enlace de reserva no tiene título. Crea, abre y copia URL públicas desde Enlaces de reserva.", bookingDescriptionLabel: "Descripción alternativa de la página de reserva", bookingDescriptionPlaceholder: "Elige una hora que te venga bien.", bookingDescriptionHelp: "Se usa solo cuando un enlace de reserva no tiene descripción propia.", defaultDurationLabel: "Duración predeterminada del evento (minutos)", defaultDurationHelp: "Duración predeterminada para eventos nuevos y franjas de reserva. Cada enlace de reserva puede anularla.", }, eventDialog: { eventUpdated: "Evento actualizado", updateFailed: "No se pudo actualizar el evento", eventDeleted: "Evento eliminado", deleteFailed: "No se pudo eliminar el evento", description: "Descripción", addDescription: "Añadir una descripción...", start: "Inicio", end: "Fin", location: "Ubicación", addLocation: "Añadir una ubicación...", pressToSave: "Pulsa {{shortcut}} para guardar", pressToEditDelete: "Pulsa E para editar · Supr para eliminar", allDay: "Todo el día", cancel: "Cancelar", saving: "Guardando...", saveChanges: "Guardar cambios", edit: "Editar", delete: "Eliminar", close: "Cerrar", }, deleteEvent: { title: "¿Eliminar evento?", fallbackDescription: "Este evento se eliminará.", recurringTitle: "Este es un evento recurrente", removeTitle: "¿Quitar evento?", chooseScope: "Elige cuánto de la serie quieres {{action}}.", notifyGuests: "Puedes notificar a los invitados con una nota opcional.", willBeActioned: "Este evento se va a {{action}}.", thisEvent: "Este evento", thisAndFollowing: "Este y los siguientes eventos", allEvents: "Todos los eventos", cancellationNote: "Añadir una nota de cancelación", cancellationPlaceholder: "Por qué se cancela el evento...", guest_one: "{{count}} invitado", guest_other: "{{count}} invitados", guest_many: "{{count}} invitados", cancel: "Cancelar", dontNotify: "No notificar", sendCancellation: "Enviar cancelación", removeEvent: "Quitar evento", deleteEvent: "Eliminar evento", removeAction: "quitar", deleteAction: "eliminar", }, }, "fr-FR": { settings: { agentTitle: "Gérer l'agent", agentDescription: "Gérez le modèle de l'agent, les clés API, les automatisations, la voix et les autres contrôles.", openAgentSettings: "Gérer l'agent", zoomDescription: "Connectez Zoom pour créer des liens de réunion pour les événements et les réservations.", zoomNotConfigured: "Non configuré", zoomCredentialsPrompt: "Ajoutez les identifiants OAuth Zoom pour activer la connexion.", bookingTitleLabel: "Titre de secours de la page de réservation", bookingTitlePlaceholder: "Réserver une réunion", bookingTitleHelp: "Utilisé seulement quand un lien de réservation n'a pas de titre. Créez, ouvrez et copiez les URL publiques depuis Liens de réservation.", bookingDescriptionLabel: "Description de secours de la page de réservation", bookingDescriptionPlaceholder: "Choisissez un horaire qui vous convient.", bookingDescriptionHelp: "Utilisé seulement quand un lien de réservation n'a pas sa propre description.", defaultDurationLabel: "Durée d'événement par défaut (minutes)", defaultDurationHelp: "Durée par défaut des nouveaux événements et créneaux de réservation. Chaque lien de réservation peut la remplacer.", }, eventDialog: { eventUpdated: "Événement mis à jour", updateFailed: "Échec de la mise à jour de l'événement", eventDeleted: "Événement supprimé", deleteFailed: "Échec de la suppression de l'événement", description: "Description", addDescription: "Ajouter une description...", start: "Début", end: "Fin", location: "Lieu", addLocation: "Ajouter un lieu...", pressToSave: "Appuyez sur {{shortcut}} pour enregistrer", pressToEditDelete: "Appuyez sur E pour modifier · Suppr pour supprimer", allDay: "Toute la journée", cancel: "Annuler", saving: "Enregistrement...", saveChanges: "Enregistrer les modifications", edit: "Modifier", delete: "Supprimer", close: "Fermer", }, deleteEvent: { title: "Supprimer l'événement ?", fallbackDescription: "Cet événement sera supprimé.", recurringTitle: "C'est un événement récurrent", removeTitle: "Retirer l'événement ?", chooseScope: "Choisissez quelle partie de la série {{action}}.", notifyGuests: "Vous pouvez prévenir les invités avec une note facultative.", willBeActioned: "Cet événement sera {{action}}.", thisEvent: "Cet événement", thisAndFollowing: "Cet événement et les suivants", allEvents: "Tous les événements", cancellationNote: "Ajouter une note d'annulation", cancellationPlaceholder: "Pourquoi l'événement est annulé...", guest_one: "{{count}} invité", guest_other: "{{count}} invités", guest_many: "{{count}} invités", cancel: "Annuler", dontNotify: "Ne pas notifier", sendCancellation: "Envoyer l'annulation", removeEvent: "Retirer l'événement", deleteEvent: "Supprimer l'événement", removeAction: "retirer", deleteAction: "supprimer", }, }, "de-DE": { settings: { agentTitle: "Agent verwalten", agentDescription: "Verwalte das Modell, die API-Schlüssel, Automatisierungen, Sprache und weitere Steuerungen des Agents.", openAgentSettings: "Agent verwalten", zoomDescription: "Verbinde Zoom, um Meeting-Links für Kalenderereignisse und Buchungen zu erstellen.", zoomNotConfigured: "Nicht konfiguriert", zoomCredentialsPrompt: "Füge Zoom-OAuth-Anmeldedaten hinzu, um die Verbindung zu aktivieren.", bookingTitleLabel: "Fallback-Titel der Buchungsseite", bookingTitlePlaceholder: "Meeting buchen", bookingTitleHelp: "Wird nur verwendet, wenn ein Buchungslink keinen Titel hat. Erstelle, öffne und kopiere öffentliche URLs über Buchungslinks.", bookingDescriptionLabel: "Fallback-Beschreibung der Buchungsseite", bookingDescriptionPlaceholder: "Wähle eine passende Zeit.", bookingDescriptionHelp: "Wird nur verwendet, wenn ein Buchungslink keine eigene Beschreibung hat.", defaultDurationLabel: "Standarddauer für Ereignisse (Minuten)", defaultDurationHelp: "Standardlänge für neue Kalenderereignisse und Buchungsslots. Buchungslinks können sie pro Link überschreiben.", }, eventDialog: { eventUpdated: "Ereignis aktualisiert", updateFailed: "Ereignis konnte nicht aktualisiert werden", eventDeleted: "Ereignis gelöscht", deleteFailed: "Ereignis konnte nicht gelöscht werden", description: "Beschreibung", addDescription: "Beschreibung hinzufügen...", start: "Start", end: "Ende", location: "Ort", addLocation: "Ort hinzufügen...", pressToSave: "Drücke {{shortcut}} zum Speichern", pressToEditDelete: "Drücke E zum Bearbeiten · Entf zum Löschen", allDay: "Ganztägig", cancel: "Abbrechen", saving: "Speichern...", saveChanges: "Änderungen speichern", edit: "Bearbeiten", delete: "Löschen", close: "Schließen", }, deleteEvent: { title: "Ereignis löschen?", fallbackDescription: "Dieses Ereignis wird gelöscht.", recurringTitle: "Dies ist ein wiederkehrendes Ereignis", removeTitle: "Ereignis entfernen?", chooseScope: "Wähle, wie viel der Serie du {{action}} möchtest.", notifyGuests: "Du kannst Gäste mit einer optionalen Notiz benachrichtigen.", willBeActioned: "Dieses Ereignis wird {{action}}.", thisEvent: "Dieses Ereignis", thisAndFollowing: "Dieses und folgende Ereignisse", allEvents: "Alle Ereignisse", cancellationNote: "Absagenotiz hinzufügen", cancellationPlaceholder: "Warum das Ereignis abgesagt wird...", guest_one: "{{count}} Gast", guest_other: "{{count}} Gäste", cancel: "Abbrechen", dontNotify: "Nicht benachrichtigen", sendCancellation: "Absage senden", removeEvent: "Ereignis entfernen", deleteEvent: "Ereignis löschen", removeAction: "entfernen", deleteAction: "löschen", }, }, "ja-JP": { settings: { agentTitle: "エージェントを管理", agentDescription: "エージェントのモデル、API キー、自動化、音声などを管理します。", openAgentSettings: "エージェントを管理", zoomDescription: "Zoom を接続して、カレンダーイベントと予約用の会議リンクを作成します。", zoomNotConfigured: "未設定", zoomCredentialsPrompt: "接続を有効にするには Zoom OAuth 認証情報を追加します。", bookingTitleLabel: "予約ページの予備タイトル", bookingTitlePlaceholder: "ミーティングを予約", bookingTitleHelp: "予約リンクにタイトルがない場合だけ使われます。予約リンクから公開 URL を作成、開く、コピーできます。", bookingDescriptionLabel: "予約ページの予備説明", bookingDescriptionPlaceholder: "都合のよい時間を選んでください。", bookingDescriptionHelp: "予約リンクに独自の説明がない場合だけ使われます。", defaultDurationLabel: "デフォルトのイベント時間(分)", defaultDurationHelp: "新しいカレンダーイベントと予約枠のデフォルト時間です。予約リンクごとに上書きできます。", }, eventDialog: { eventUpdated: "イベントを更新しました", updateFailed: "イベントを更新できませんでした", eventDeleted: "イベントを削除しました", deleteFailed: "イベントを削除できませんでした", description: "説明", addDescription: "説明を追加...", start: "開始", end: "終了", location: "場所", addLocation: "場所を追加...", pressToSave: "{{shortcut}} を押して保存", pressToEditDelete: "E で編集 · Del で削除", allDay: "終日", cancel: "キャンセル", saving: "保存中...", saveChanges: "変更を保存", edit: "編集", delete: "削除", close: "閉じる", }, deleteEvent: { title: "イベントを削除しますか?", fallbackDescription: "このイベントは削除されます。", recurringTitle: "これは繰り返しイベントです", removeTitle: "イベントを削除しますか?", chooseScope: "シリーズのどこまでを{{action}}するか選択してください。", notifyGuests: "任意のメモを添えてゲストに通知できます。", willBeActioned: "このイベントは{{action}}されます。", thisEvent: "このイベント", thisAndFollowing: "このイベント以降", allEvents: "すべてのイベント", cancellationNote: "キャンセルメモを追加", cancellationPlaceholder: "イベントをキャンセルする理由...", guest_one: "{{count}} 人のゲスト", guest_other: "{{count}} 人のゲスト", cancel: "キャンセル", dontNotify: "通知しない", sendCancellation: "キャンセル通知を送信", removeEvent: "イベントを削除", deleteEvent: "イベントを削除", removeAction: "削除", deleteAction: "削除", }, }, "ko-KR": { settings: { agentTitle: "에이전트 관리", agentDescription: "에이전트의 모델, API 키, 자동화, 음성 및 기타 제어를 관리합니다.", openAgentSettings: "에이전트 관리", zoomDescription: "Zoom을 연결해 캘린더 이벤트와 예약용 회의 링크를 만듭니다.", zoomNotConfigured: "구성되지 않음", zoomCredentialsPrompt: "연결하려면 Zoom OAuth 자격 증명을 추가하세요.", bookingTitleLabel: "대체 예약 페이지 제목", bookingTitlePlaceholder: "회의 예약", bookingTitleHelp: "예약 링크에 제목이 없을 때만 사용됩니다. 예약 링크에서 공개 URL을 만들고 열고 복사하세요.", bookingDescriptionLabel: "대체 예약 페이지 설명", bookingDescriptionPlaceholder: "가능한 시간을 선택하세요.", bookingDescriptionHelp: "예약 링크에 자체 설명이 없을 때만 사용됩니다.", defaultDurationLabel: "기본 이벤트 시간(분)", defaultDurationHelp: "새 캘린더 이벤트와 예약 슬롯의 기본 길이입니다. 예약 링크별로 재정의할 수 있습니다.", }, eventDialog: { eventUpdated: "이벤트가 업데이트되었습니다", updateFailed: "이벤트를 업데이트하지 못했습니다", eventDeleted: "이벤트가 삭제되었습니다", deleteFailed: "이벤트를 삭제하지 못했습니다", description: "설명", addDescription: "설명 추가...", start: "시작", end: "종료", location: "위치", addLocation: "위치 추가...", pressToSave: "{{shortcut}}을 눌러 저장", pressToEditDelete: "E를 눌러 편집 · Del로 삭제", allDay: "종일", cancel: "취소", saving: "저장 중...", saveChanges: "변경 사항 저장", edit: "편집", delete: "삭제", close: "닫기", }, deleteEvent: { title: "이벤트를 삭제할까요?", fallbackDescription: "이 이벤트가 삭제됩니다.", recurringTitle: "반복 이벤트입니다", removeTitle: "이벤트를 제거할까요?", chooseScope: "시리즈 중 어느 범위를 {{action}}할지 선택하세요.", notifyGuests: "선택 사항으로 메모를 첨부해 참석자에게 알릴 수 있습니다.", willBeActioned: "이 이벤트가 {{action}}됩니다.", thisEvent: "이 이벤트", thisAndFollowing: "이 이벤트 및 이후 이벤트", allEvents: "모든 이벤트", cancellationNote: "취소 메모 추가", cancellationPlaceholder: "이벤트를 취소하는 이유...", guest_one: "참석자 {{count}}명", guest_other: "참석자 {{count}}명", cancel: "취소", dontNotify: "알리지 않음", sendCancellation: "취소 알림 보내기", removeEvent: "이벤트 제거", deleteEvent: "이벤트 삭제", removeAction: "제거", deleteAction: "삭제", }, }, "pt-BR": { settings: { agentTitle: "Gerenciar agente", agentDescription: "Gerencie o modelo do agente, chaves de API, automações, voz e outros controles.", openAgentSettings: "Gerenciar agente", zoomDescription: "Conecte o Zoom para criar links de reunião para eventos e reservas.", zoomNotConfigured: "Não configurado", zoomCredentialsPrompt: "Adicione credenciais OAuth do Zoom para habilitar a conexão.", bookingTitleLabel: "Título reserva da página de agendamento", bookingTitlePlaceholder: "Agendar uma reunião", bookingTitleHelp: "Usado apenas quando um link de agendamento não tem título. Crie, abra e copie URLs públicas em Links de agendamento.", bookingDescriptionLabel: "Descrição reserva da página de agendamento", bookingDescriptionPlaceholder: "Escolha um horário que funcione para você.", bookingDescriptionHelp: "Usado apenas quando um link de agendamento não tem descrição própria.", defaultDurationLabel: "Duração padrão do evento (minutos)", defaultDurationHelp: "Duração padrão para novos eventos e horários de agendamento. Links de agendamento podem substituir isso por link.", }, eventDialog: { eventUpdated: "Evento atualizado", updateFailed: "Falha ao atualizar evento", eventDeleted: "Evento excluído", deleteFailed: "Falha ao excluir evento", description: "Descrição", addDescription: "Adicionar uma descrição...", start: "Início", end: "Fim", location: "Local", addLocation: "Adicionar um local...", pressToSave: "Pressione {{shortcut}} para salvar", pressToEditDelete: "Pressione E para editar · Del para excluir", allDay: "Dia todo", cancel: "Cancelar", saving: "Salvando...", saveChanges: "Salvar alterações", edit: "Editar", delete: "Excluir", close: "Fechar", }, deleteEvent: { title: "Excluir evento?", fallbackDescription: "Este evento será excluído.", recurringTitle: "Este é um evento recorrente", removeTitle: "Remover evento?", chooseScope: "Escolha quanto da série deseja {{action}}.", notifyGuests: "Você pode notificar convidados com uma observação opcional.", willBeActioned: "Este evento será {{action}}.", thisEvent: "Este evento", thisAndFollowing: "Este e os eventos seguintes", allEvents: "Todos os eventos", cancellationNote: "Adicionar observação de cancelamento", cancellationPlaceholder: "Por que o evento está sendo cancelado...", guest_one: "{{count}} convidado", guest_other: "{{count}} convidados", guest_many: "{{count}} convidados", cancel: "Cancelar", dontNotify: "Não notificar", sendCancellation: "Enviar cancelamento", removeEvent: "Remover evento", deleteEvent: "Excluir evento", removeAction: "remover", deleteAction: "excluir", }, }, "hi-IN": { settings: { agentTitle: "एजेंट प्रबंधित करें", agentDescription: "एजेंट के मॉडल, API कुंजियों, ऑटोमेशन, आवाज़ और अन्य नियंत्रणों को प्रबंधित करें।", openAgentSettings: "एजेंट प्रबंधित करें", zoomDescription: "कैलेंडर इवेंट और बुकिंग के लिए मीटिंग लिंक बनाने हेतु Zoom कनेक्ट करें।", zoomNotConfigured: "कॉन्फ़िगर नहीं है", zoomCredentialsPrompt: "कनेक्शन सक्षम करने के लिए Zoom OAuth क्रेडेंशियल जोड़ें।", bookingTitleLabel: "फ़ॉलबैक बुकिंग पेज शीर्षक", bookingTitlePlaceholder: "मीटिंग बुक करें", bookingTitleHelp: "केवल तब उपयोग होता है जब बुकिंग लिंक का कोई शीर्षक नहीं हो। बुकिंग लिंक से सार्वजनिक URL बनाएं, खोलें और कॉपी करें।", bookingDescriptionLabel: "फ़ॉलबैक बुकिंग पेज विवरण", bookingDescriptionPlaceholder: "अपने लिए सही समय चुनें।", bookingDescriptionHelp: "केवल तब उपयोग होता है जब बुकिंग लिंक का अपना विवरण नहीं हो।", defaultDurationLabel: "डिफ़ॉल्ट इवेंट अवधि (मिनट)", defaultDurationHelp: "नए कैलेंडर इवेंट और बुकिंग स्लॉट की डिफ़ॉल्ट लंबाई। बुकिंग लिंक इसे प्रति लिंक बदल सकते हैं।", }, eventDialog: { eventUpdated: "इवेंट अपडेट हो गया", updateFailed: "इवेंट अपडेट नहीं हो सका", eventDeleted: "इवेंट हटाया गया", deleteFailed: "इवेंट हटाया नहीं जा सका", description: "विवरण", addDescription: "विवरण जोड़ें...", start: "शुरू", end: "समाप्त", location: "स्थान", addLocation: "स्थान जोड़ें...", pressToSave: "सहेजने के लिए {{shortcut}} दबाएं", pressToEditDelete: "संपादित करने के लिए E · हटाने के लिए Del दबाएं", allDay: "पूरे दिन", cancel: "रद्द करें", saving: "सहेज रहा है...", saveChanges: "बदलाव सहेजें", edit: "संपादित करें", delete: "हटाएं", close: "बंद करें", }, deleteEvent: { title: "इवेंट हटाएं?", fallbackDescription: "यह इवेंट हटाया जाएगा।", recurringTitle: "यह एक दोहराया जाने वाला इवेंट है", removeTitle: "इवेंट हटाएं?", chooseScope: "चुनें कि श्रृंखला का कितना हिस्सा {{action}} करना है।", notifyGuests: "आप वैकल्पिक नोट के साथ मेहमानों को सूचित कर सकते हैं।", willBeActioned: "यह इवेंट {{action}} किया जाएगा।", thisEvent: "यह इवेंट", thisAndFollowing: "यह और आगे के इवेंट", allEvents: "सभी इवेंट", cancellationNote: "रद्दीकरण नोट जोड़ें", cancellationPlaceholder: "इवेंट क्यों रद्द किया जा रहा है...", guest_one: "{{count}} मेहमान", guest_other: "{{count}} मेहमान", cancel: "रद्द करें", dontNotify: "सूचित न करें", sendCancellation: "रद्दीकरण भेजें", removeEvent: "इवेंट हटाएं", deleteEvent: "इवेंट हटाएं", removeAction: "हटाएं", deleteAction: "हटाएं", }, }, "ar-SA": { settings: { agentTitle: "إدارة الوكيل", agentDescription: "أدر نموذج الوكيل ومفاتيح API والأتمتة والصوت وعناصر التحكم الأخرى.", openAgentSettings: "إدارة الوكيل", zoomDescription: "اربط Zoom لإنشاء روابط اجتماعات لأحداث التقويم والحجوزات.", zoomNotConfigured: "غير مكوّن", zoomCredentialsPrompt: "أضف بيانات اعتماد Zoom OAuth لتفعيل الاتصال.", bookingTitleLabel: "عنوان صفحة الحجز الاحتياطي", bookingTitlePlaceholder: "احجز اجتماعًا", bookingTitleHelp: "يُستخدم فقط عندما لا يحتوي رابط الحجز على عنوان. أنشئ وافتح وانسخ عناوين URL العامة من روابط الحجز.", bookingDescriptionLabel: "وصف صفحة الحجز الاحتياطي", bookingDescriptionPlaceholder: "اختر وقتًا يناسبك.", bookingDescriptionHelp: "يُستخدم فقط عندما لا يحتوي رابط الحجز على وصف خاص به.", defaultDurationLabel: "مدة الحدث الافتراضية (بالدقائق)", defaultDurationHelp: "المدة الافتراضية لأحداث التقويم الجديدة وفتحات الحجز. يمكن لروابط الحجز تجاوزها لكل رابط.", }, eventDialog: { eventUpdated: "تم تحديث الحدث", updateFailed: "فشل تحديث الحدث", eventDeleted: "تم حذف الحدث", deleteFailed: "فشل حذف الحدث", description: "الوصف", addDescription: "أضف وصفًا...", start: "البداية", end: "النهاية", location: "الموقع", addLocation: "أضف موقعًا...", pressToSave: "اضغط {{shortcut}} للحفظ", pressToEditDelete: "اضغط E للتحرير · Del للحذف", allDay: "طوال اليوم", cancel: "إلغاء", saving: "جارٍ الحفظ...", saveChanges: "حفظ التغييرات", edit: "تحرير", delete: "حذف", close: "إغلاق", }, deleteEvent: { title: "حذف الحدث؟", fallbackDescription: "سيتم حذف هذا الحدث.", recurringTitle: "هذا حدث متكرر", removeTitle: "إزالة الحدث؟", chooseScope: "اختر مقدار السلسلة الذي تريد {{action}}ه.", notifyGuests: "يمكنك إخطار الضيوف بملاحظة اختيارية.", willBeActioned: "سيتم {{action}} هذا الحدث.", thisEvent: "هذا الحدث", thisAndFollowing: "هذا الحدث وما يليه", allEvents: "كل الأحداث", cancellationNote: "إضافة ملاحظة إلغاء", cancellationPlaceholder: "سبب إلغاء الحدث...", guest_zero: "{{count}} ضيوف", guest_one: "{{count}} ضيف", guest_two: "{{count}} ضيفان", guest_few: "{{count}} ضيوف", guest_many: "{{count}} ضيفًا", guest_other: "{{count}} ضيف", cancel: "إلغاء", dontNotify: "عدم الإخطار", sendCancellation: "إرسال الإلغاء", removeEvent: "إزالة الحدث", deleteEvent: "حذف الحدث", removeAction: "إزالة", deleteAction: "حذف", }, }, } satisfies Partial>; const translatedCalendarDebtTranslations = { "zh-CN": { keyboardShortcuts: { title: "键盘快捷键", navigation: "导航", views: "意见", events: "活动", searchQuickActions: "搜索和快速操作", nextPeriod: "下一周期(日/周/月)", previousPeriod: "上期", goToday: "转到今天", showTeammateCalendars: "显示队友日历", monthView: "月视图", weekView: "周视图", dayView: "日景", createNewEvent: "创建新事件", deleteSelectedEvent: "删除选定的事件", closeDialog: "关闭对话框/取消", openCommandPalette: "打开命令面板", showKeyboardShortcuts: "显示键盘快捷键", disabledWhileTyping: "在文本字段中输入时,快捷键被禁用。", }, manageBooking: { title: "管理预订", description: "取消或重新安排您的会议。", notFound: "未找到预订", notFoundDescription: "此链接可能已过期或预订可能已被删除。", cancelled: "预订已取消", cancelledPrefix: "您的预订", cancelledDateConnector: "在", cancelledSuffix: "已被取消。", reschedule: "重新安排", bookedBy: "由 {{name}} 预订", pastMeeting: "这次会议已经过去了。", rescheduleTitle: "重新安排此预订?", rescheduleDescription: "您当前的预订将被取消,并且您将被要求选择新的时间。", keepCurrentTime: "保持当前时间", cancelFailed: "取消预订失败", cancelBooking: "取消预订", cancelTitle: "取消此预订吗?", cancelDescriptionPrefix: "这将取消您的", cancelDescriptionDateConnector: "在", cancelDescriptionSuffix: "。此操作无法撤消。", keepBooking: "继续预订", cancelling: "正在取消...", yesCancel: "是,取消", }, eventOptions: { calendarDefault: "默认Calendar", noAlerts: "无警报", customAlerts: "自定义提醒", addAlert: "添加提醒", removeAlert: "删除警报 {{number}}", addAttachment: "添加附件", removeAttachment: "删除附件 {{number}}", attachmentTitle: "附件标题", uploadAttachment: "上传附件", attachmentUploaded: "附件已上传", attachmentUploadLimit: "上传附件最大可达 25 MB。", uploadFailed: "无法上传附件。", uploadMissingUrl: "上传未返回附件 URL。", attachmentFallbackTitle: "依恋", fileUploadsNotConfigured: "未配置文件上传。改为粘贴 Drive 或 HTTPS URL。", fileUploadsNeedProvider: "文件上传需要配置上传提供程序。现在粘贴 Drive 或 HTTPS URL。", uploadFile: "上传文件", uploading: "上传中", maxAttachments: "Google Calendar 每个事件最多支持 {{count}} 个附件。", uploadProviderPermissionError: "当前上传提供商凭据无法进行文件上传。检查Settings中的Builder.io权限,或粘贴Drive/HTTPS URL。", setEventColorTo: "将事件颜色设置为 {{color}}", }, googleConnect: { addAccount: "添加帐户", addAccountWithPlus: "+ 添加帐户", connectGoogleCalendar: "连接Google Calendar", connectGoogle: "连接Google", signInWithGoogle: "使用 Google 登录", syncEventsDescription: "同步您的活动并管理您的日程安排。", readyToConnect: "准备连接 — 使用您的 Google 帐户登录", connectToSync: "连接 Google 同步您的日历", hideSetup: "隐藏设置", followSteps: "请按照以下步骤连接您的 Google 帐户。大约需要3分钟。", googleMayShowWarning: "Google 可能会显示警告", googleNotVerifiedTitle: "“Google尚未验证此应用程序”", googleWarningBeforeAdvanced: "您将看到此屏幕,因为日历是通过您自己的 Google Cloud 项目而不是经过 Google 审核的公共应用程序连接的。可以安全地继续:单击", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", 然后", googleWarningUnsafe: "“Go to … (unsafe)”", googleWarningAfterUnsafe: "完成连接。", accountConnectedElsewhere: "该帐户已连接到另一个登录帐户", googleConnectionFailed: "Google 连接失败", thatGoogleAccount: "那个Google账户", signOutThenSignIn: "注销,然后使用 {{account}} 登录。", signOut: "登出", dismiss: "解雇", dismissNotice: "关闭Google登录通知", copy: "复制", copied: "已复制", uploadJson: "上传JSON", credentialsConfiguredSignIn: "凭据已配置。点击上面的“连接Google Calendar”即可登录。", missingClientCredentials: "在JSON中找不到client_id和client_secret", failedSaveCredentials: "无法保存凭据", failedParseJson: "解析JSON失败", steps: { enableApi: { title: "启用Google Calendar API", description: "打开 Google Cloud Console 并单击 Calendar API 上的“启用”。", linkText: "启用Calendar API", }, consent: { title: "配置 OAuth 同意屏幕", description: "将应用程序名称设置为任意名称(例如“My Calendar”),选择“External”用户类型,然后将您的电子邮件添加为测试用户。如果您看到概述页面,则表示已配置同意 - 跳到下一步。", linkText: "配置同意屏幕", }, credentials: { title: "创建 OAuth 凭证", description: "1) 点击“+Create Credentials”→“OAuth client ID”\n2)选择“Web application”\n3) 添加此重定向 URI:", linkText: "创建凭据", }, upload: { title: "上传凭证 JSON", description: "单击凭据页面上的“Download JSON”,然后在此处上传。", }, }, }, }, "es-ES": { keyboardShortcuts: { title: "Atajos de teclado", navigation: "Navegación", views: "Vistas", events: "Eventos", searchQuickActions: "Búsqueda y acciones rápidas", nextPeriod: "Próximo periodo (día/semana/mes)", previousPeriod: "Periodo anterior", goToday: "ir a hoy", showTeammateCalendars: "Mostrar calendarios de compañeros de equipo", monthView: "Vista mensual", weekView: "Vista semanal", dayView: "Vista diurna", createNewEvent: "Crear nuevo evento", deleteSelectedEvent: "Eliminar evento seleccionado", closeDialog: "Cerrar diálogo/cancelar", openCommandPalette: "Abrir paleta de comandos", showKeyboardShortcuts: "Mostrar atajos de teclado", disabledWhileTyping: "Los atajos están deshabilitados al escribir en campos de texto.", }, manageBooking: { title: "Gestionar reserva", description: "Cancele o reprograme su reunión.", notFound: "Reserva no encontrada", notFoundDescription: "Es posible que este enlace haya caducado o que la reserva se haya eliminado.", cancelled: "Reserva cancelada", cancelledPrefix: "Tu reserva para", cancelledDateConnector: "en", cancelledSuffix: "ha sido cancelado.", reschedule: "Reprogramar", bookedBy: "Reservado por {{name}}", pastMeeting: "Esta reunión ya pasó.", rescheduleTitle: "¿Reprogramar esta reserva?", rescheduleDescription: "Su reserva actual se cancelará y se le pedirá que elija una nueva hora.", keepCurrentTime: "Mantener la hora actual", cancelFailed: "No se pudo cancelar la reserva", cancelBooking: "Cancelar reserva", cancelTitle: "¿Cancelar esta reserva?", cancelDescriptionPrefix: "Esto cancelará tu", cancelDescriptionDateConnector: "en", cancelDescriptionSuffix: ". Esta acción no se puede deshacer.", keepBooking: "Seguir reservando", cancelling: "Cancelado...", yesCancel: "Sí, cancelar", }, eventOptions: { calendarDefault: "Calendar predeterminado", noAlerts: "Sin alertas", customAlerts: "Alertas personalizadas", addAlert: "Agregar alerta", removeAlert: "Eliminar alerta {{number}}", addAttachment: "Agregar archivo adjunto", removeAttachment: "Retire el archivo adjunto {{number}}", attachmentTitle: "Título del archivo adjunto", uploadAttachment: "Subir archivo adjunto", attachmentUploaded: "Adjunto subido", attachmentUploadLimit: "La carga de archivos adjuntos puede tener hasta 25 MB.", uploadFailed: "No se pudo cargar el archivo adjunto.", uploadMissingUrl: "La carga no devolvió un archivo adjunto URL.", attachmentFallbackTitle: "Adjunto", fileUploadsNotConfigured: "Las cargas de archivos no están configuradas. En su lugar, pegue una Drive o HTTPS URL.", fileUploadsNeedProvider: "Las cargas de archivos necesitan un proveedor de carga configurado. Pega una Drive o HTTPS URL por ahora.", uploadFile: "Subir archivo", uploading: "Subiendo", maxAttachments: "Google Calendar admite hasta archivos adjuntos {{count}} por evento.", uploadProviderPermissionError: "La carga de archivos no está disponible con las credenciales del proveedor de carga actual. Verifique los permisos de Builder.io en Settings o pegue un Drive/HTTPS URL en su lugar.", setEventColorTo: "Establecer el color del evento en {{color}}", }, googleConnect: { addAccount: "Agregar cuenta", addAccountWithPlus: "+ Agregar cuenta", connectGoogleCalendar: "Conectar Google Calendar", connectGoogle: "Conectar Google", signInWithGoogle: "Iniciar sesión con Google", syncEventsDescription: "Sincroniza tus eventos y gestiona tu agenda.", readyToConnect: "Listo para conectarse: inicie sesión con su cuenta Google", connectToSync: "Conecte Google para sincronizar su calendario", hideSetup: "Ocultar configuración", followSteps: "Siga estos pasos para conectar su cuenta Google. Tarda unos 3 minutos.", googleMayShowWarning: "Google puede mostrar una advertencia", googleNotVerifiedTitle: '"Google no ha verificado esta aplicación"', googleWarningBeforeAdvanced: "Verá esta pantalla porque el calendario se conecta a través de su propio proyecto Google Cloud, no a través de una aplicación pública revisada por Google. Es seguro continuar: haga clic", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", entonces", googleWarningUnsafe: "“Go to … (unsafe)”", googleWarningAfterUnsafe: "para terminar de conectar.", accountConnectedElsewhere: "Esta cuenta está conectada a otro inicio de sesión.", googleConnectionFailed: "La conexión Google falló", thatGoogleAccount: "esa cuenta Google", signOutThenSignIn: "Cierre sesión y luego inicie sesión con {{account}}.", signOut: "desconectar", dismiss: "Despedir", dismissNotice: "Descartar el aviso de inicio de sesión de Google", copy: "Copiar", copied: "copiado", uploadJson: "Subir JSON", credentialsConfiguredSignIn: 'Credenciales configuradas. Haga clic en "Conectar Google Calendar" arriba para iniciar sesión.', missingClientCredentials: "No se pudieron encontrar client_id y client_secret en JSON", failedSaveCredentials: "No se pudieron guardar las credenciales", failedParseJson: "No se pudo analizar JSON", steps: { enableApi: { title: "Habilite la API Google Calendar", description: "Abra Google Cloud Console y haga clic en 'Activar' en el Calendar API.", linkText: "Habilitar Calendar API", }, consent: { title: "Configurar la pantalla de consentimiento del OAuth", description: 'Configure el nombre de la aplicación con cualquier valor (por ejemplo, "My Calendar"), elija el tipo de usuario "External" y agregue su correo electrónico como usuario de prueba. Si ve una página de descripción general, el consentimiento ya está configurado; salte al siguiente paso.', linkText: "Configurar la pantalla de consentimiento", }, credentials: { title: "Crear credenciales OAuth", description: '1) Haga clic en "+ Create Credentials" → "OAuth client ID"\n2) Elija "Web application"\n3) Agregue este URI de redireccionamiento:', linkText: "Crear credenciales", }, upload: { title: "Subir credenciales JSON", description: 'Haga clic en "Download JSON" en la página de credenciales y luego cárguelo aquí.', }, }, }, }, "fr-FR": { keyboardShortcuts: { title: "Raccourcis clavier", navigation: "Navigation", views: "Vues", events: "Événements", searchQuickActions: "Recherche et actions rapides", nextPeriod: "Prochaine période (jour/semaine/mois)", previousPeriod: "Période précédente", goToday: "Allez à aujourd'hui", showTeammateCalendars: "Afficher les calendriers des coéquipiers", monthView: "Vue mensuelle", weekView: "Vue hebdomadaire", dayView: "Vue quotidienne", createNewEvent: "Créer un nouvel événement", deleteSelectedEvent: "Supprimer l'événement sélectionné", closeDialog: "Fermer la boîte de dialogue / annuler", openCommandPalette: "Ouvrir la palette de commandes", showKeyboardShortcuts: "Afficher les raccourcis clavier", disabledWhileTyping: "Les raccourcis sont désactivés lors de la saisie dans les champs de texte.", }, manageBooking: { title: "Gérer la réservation", description: "Annulez ou reprogrammez votre réunion.", notFound: "Réservation introuvable", notFoundDescription: "Ce lien a peut-être expiré ou la réservation a peut-être été supprimée.", cancelled: "Réservation annulée", cancelledPrefix: "Votre réservation pour", cancelledDateConnector: "sur", cancelledSuffix: "a été annulé.", reschedule: "Reprogrammer", bookedBy: "Réservé par {{name}}", pastMeeting: "Cette réunion est déjà passée.", rescheduleTitle: "Reprogrammer cette réservation ?", rescheduleDescription: "Votre réservation actuelle sera annulée et vous devrez choisir une nouvelle heure.", keepCurrentTime: "Conserver l'heure actuelle", cancelFailed: "Échec de l'annulation de la réservation", cancelBooking: "Annuler la réservation", cancelTitle: "Annuler cette réservation ?", cancelDescriptionPrefix: "Cela annulera votre", cancelDescriptionDateConnector: "sur", cancelDescriptionSuffix: ". Cette action ne peut pas être annulée.", keepBooking: "Continuer à réserver", cancelling: "Annulation...", yesCancel: "Oui, annuler", }, eventOptions: { calendarDefault: "Calendar par défaut", noAlerts: "Aucune alerte", customAlerts: "Alertes personnalisées", addAlert: "Ajouter une alerte", removeAlert: "Supprimer l'alerte {{number}}", addAttachment: "Ajouter une pièce jointe", removeAttachment: "Supprimer la pièce jointe {{number}}", attachmentTitle: "Titre de la pièce jointe", uploadAttachment: "Télécharger la pièce jointe", attachmentUploaded: "Pièce jointe téléchargée", attachmentUploadLimit: "Les téléchargements de pièces jointes peuvent atteindre 25 Mo.", uploadFailed: "Impossible de télécharger la pièce jointe.", uploadMissingUrl: "Le téléchargement n'a pas renvoyé de pièce jointe URL.", attachmentFallbackTitle: "Pièce jointe", fileUploadsNotConfigured: "Les téléchargements de fichiers ne sont pas configurés. Collez plutôt un Drive ou un HTTPS URL.", fileUploadsNeedProvider: "Les téléchargements de fichiers nécessitent un fournisseur de téléchargement configuré. Collez un Drive ou un HTTPS URL pour l'instant.", uploadFile: "Télécharger le fichier", uploading: "Téléchargement", maxAttachments: "Google Calendar prend en charge jusqu'à {{count}} pièces jointes par événement.", uploadProviderPermissionError: "Le téléchargement de fichiers n'est pas disponible avec les informations d'identification actuelles du fournisseur de téléchargement. Vérifiez les autorisations Builder.io dans Settings ou collez plutôt un Drive/HTTPS URL.", setEventColorTo: "Définir la couleur de l'événement sur {{color}}", }, googleConnect: { addAccount: "Ajouter un compte", addAccountWithPlus: "+ Ajouter un compte", connectGoogleCalendar: "Connectez Google Calendar", connectGoogle: "Connectez le Google", signInWithGoogle: "Connectez-vous avec Google", syncEventsDescription: "Synchronisez vos événements et gérez votre emploi du temps.", readyToConnect: "Prêt à vous connecter : connectez-vous avec votre compte Google", connectToSync: "Connectez le Google pour synchroniser votre calendrier", hideSetup: "Masquer la configuration", followSteps: "Suivez ces étapes pour connecter votre compte Google. Cela prend environ 3 minutes.", googleMayShowWarning: "Le Google peut afficher un avertissement", googleNotVerifiedTitle: '"Google n\'a pas vérifié cette application"', googleWarningBeforeAdvanced: "Vous verrez cet écran car le calendrier se connecte via votre propre projet Google Cloud, et non via une application publique révisée par Google. Vous pouvez continuer en toute sécurité : cliquez sur", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", alors", googleWarningUnsafe: '"Go to … (unsafe)"', googleWarningAfterUnsafe: "pour terminer la connexion.", accountConnectedElsewhere: "Ce compte est connecté à un autre login", googleConnectionFailed: "La connexion du Google a échoué", thatGoogleAccount: "ce compte Google", signOutThenSignIn: "Déconnectez-vous, puis connectez-vous avec {{account}}.", signOut: "se déconnecter", dismiss: "Rejeter", dismissNotice: "Ignorer l'avis de connexion au Google", copy: "Copie", copied: "Copié", uploadJson: "Téléchargez JSON", credentialsConfiguredSignIn: "Informations d'identification configurées. Cliquez sur « Connecter Google Calendar » ci-dessus pour vous connecter.", missingClientCredentials: "Impossible de trouver client_id et client_secret dans JSON", failedSaveCredentials: "Échec de l'enregistrement des informations d'identification", failedParseJson: "Échec de l'analyse du JSON", steps: { enableApi: { title: "Activer l'API Google Calendar", description: "Ouvrez le Google Cloud Console et cliquez sur « Activer » sur le Calendar API.", linkText: "Activer Calendar API", }, consent: { title: "Configurer l'écran de consentement du OAuth", description: "Définissez le nom de l'application sur n'importe quoi (par exemple \"My Calendar\"), choisissez le type d'utilisateur \"External\" et ajoutez votre adresse e-mail en tant qu'utilisateur test. Si vous voyez une page de présentation, le consentement est déjà configuré : passez à l'étape suivante.", linkText: "Configurer l'écran de consentement", }, credentials: { title: "Créer des informations d'identification OAuth", description: '1) Cliquez sur "+ Create Credentials" → "OAuth client ID"\n2) Choisissez "Web application"\n3) Ajoutez cet URI de redirection :', linkText: "Créer des identifiants", }, upload: { title: "Télécharger les informations d'identification JSON", description: "Cliquez sur « Download JSON » sur la page des informations d'identification, puis téléchargez-le ici.", }, }, }, }, "de-DE": { keyboardShortcuts: { title: "Tastaturkürzel", navigation: "Navigation", views: "Ansichten", events: "Veranstaltungen", searchQuickActions: "Suche und Schnellaktionen", nextPeriod: "Nächste Periode (Tag / Woche / Monat)", previousPeriod: "Vorheriger Zeitraum", goToday: "Gehen Sie zu heute", showTeammateCalendars: "Teamkollegenkalender anzeigen", monthView: "Monatsansicht", weekView: "Wochenansicht", dayView: "Tagesansicht", createNewEvent: "Neues Ereignis erstellen", deleteSelectedEvent: "Ausgewähltes Ereignis löschen", closeDialog: "Dialog schließen / abbrechen", openCommandPalette: "Befehlspalette öffnen", showKeyboardShortcuts: "Tastaturkürzel anzeigen", disabledWhileTyping: "Beim Eingeben von Textfeldern sind Verknüpfungen deaktiviert.", }, manageBooking: { title: "Buchung verwalten", description: "Sagen Sie Ihr Meeting ab oder verschieben Sie es.", notFound: "Buchung nicht gefunden", notFoundDescription: "Möglicherweise ist dieser Link abgelaufen oder die Buchung wurde entfernt.", cancelled: "Buchung storniert", cancelledPrefix: "Ihre Buchung für", cancelledDateConnector: "An", cancelledSuffix: "wurde abgesagt.", reschedule: "Neu planen", bookedBy: "Gebucht von {{name}}", pastMeeting: "Dieses Treffen ist bereits vorbei.", rescheduleTitle: "Diese Buchung verschieben?", rescheduleDescription: "Ihre aktuelle Buchung wird storniert und Sie müssen einen neuen Zeitpunkt auswählen.", keepCurrentTime: "Aktuelle Uhrzeit beibehalten", cancelFailed: "Buchung konnte nicht storniert werden", cancelBooking: "Buchung stornieren", cancelTitle: "Diese Buchung stornieren?", cancelDescriptionPrefix: "Dadurch wird Ihr Konto storniert", cancelDescriptionDateConnector: "An", cancelDescriptionSuffix: ". Diese Aktion kann nicht rückgängig gemacht werden.", keepBooking: "Buchen Sie weiter", cancelling: "Stornierung...", yesCancel: "Ja, Abbrechen", }, eventOptions: { calendarDefault: "Calendar-Standard", noAlerts: "Keine Warnungen", customAlerts: "Benutzerdefinierte Benachrichtigungen", addAlert: "Benachrichtigung hinzufügen", removeAlert: "Warnung entfernen {{number}}", addAttachment: "Anhang hinzufügen", removeAttachment: "Entfernen Sie den Anhang {{number}}", attachmentTitle: "Titel des Anhangs", uploadAttachment: "Anhang hochladen", attachmentUploaded: "Anhang hochgeladen", attachmentUploadLimit: "Das Hochladen von Anhängen kann bis zu 25 MB groß sein.", uploadFailed: "Der Anhang konnte nicht hochgeladen werden.", uploadMissingUrl: "Beim Hochladen wurde kein Anhang URL zurückgegeben.", attachmentFallbackTitle: "Anhang", fileUploadsNotConfigured: "Datei-Uploads sind nicht konfiguriert. Fügen Sie stattdessen einen Drive oder HTTPS URL ein.", fileUploadsNeedProvider: "Für Datei-Uploads ist ein konfigurierter Upload-Anbieter erforderlich. Fügen Sie vorerst einen Drive oder HTTPS URL ein.", uploadFile: "Datei hochladen", uploading: "Hochladen", maxAttachments: "Google Calendar unterstützt bis zu {{count}}-Anhänge pro Ereignis.", uploadProviderPermissionError: "Das Hochladen von Dateien ist mit den aktuellen Anmeldeinformationen des Upload-Anbieters nicht möglich. Überprüfen Sie die Builder.io-Berechtigungen in Settings oder fügen Sie stattdessen einen Drive/HTTPS URL ein.", setEventColorTo: "Legen Sie die Ereignisfarbe auf {{color}} fest", }, googleConnect: { addAccount: "Konto hinzufügen", addAccountWithPlus: "+ Konto hinzufügen", connectGoogleCalendar: "Google Calendar anschließen", connectGoogle: "Google anschließen", signInWithGoogle: "Melden Sie sich mit Google an", syncEventsDescription: "Synchronisieren Sie Ihre Veranstaltungen und verwalten Sie Ihren Zeitplan.", readyToConnect: "Bereit zur Verbindung – melden Sie sich mit Ihrem Google-Konto an", connectToSync: "Schließen Sie Google an, um Ihren Kalender zu synchronisieren", hideSetup: "Setup ausblenden", followSteps: "Befolgen Sie diese Schritte, um Ihr Google-Konto zu verbinden. Dauert etwa 3 Minuten.", googleMayShowWarning: "Google zeigt möglicherweise eine Warnung an", googleNotVerifiedTitle: "„Google hat diese App nicht überprüft“", googleWarningBeforeAdvanced: "Sie sehen diesen Bildschirm, weil die Verbindung zum Kalender über Ihr eigenes Google Cloud-Projekt und nicht über eine von Google geprüfte öffentliche App hergestellt wird. Es ist sicher, fortzufahren: klicken", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", Dann", googleWarningUnsafe: "„Go to … (unsafe)“", googleWarningAfterUnsafe: "um die Verbindung abzuschließen.", accountConnectedElsewhere: "Dieses Konto ist mit einem anderen Login verbunden", googleConnectionFailed: "Google-Verbindung fehlgeschlagen", thatGoogleAccount: "das Google-Konto", signOutThenSignIn: "Melden Sie sich ab und dann mit {{account}} an.", signOut: "Abmelden", dismiss: "Zurückweisen", dismissNotice: "Google-Anmeldebenachrichtigung verwerfen", copy: "Kopie", copied: "Kopiert", uploadJson: "Laden Sie JSON hoch", credentialsConfiguredSignIn: "Anmeldeinformationen konfiguriert. Klicken Sie oben auf „Google Calendar verbinden“, um sich anzumelden.", missingClientCredentials: "client_id und client_secret konnten in JSON nicht gefunden werden", failedSaveCredentials: "Anmeldeinformationen konnten nicht gespeichert werden", failedParseJson: "JSON konnte nicht analysiert werden", steps: { enableApi: { title: "Aktivieren Sie die Google Calendar-API", description: "Öffnen Sie Google Cloud Console und klicken Sie auf dem Calendar API auf „Aktivieren“.", linkText: "Aktivieren Sie Calendar API", }, consent: { title: "Konfigurieren Sie den OAuth-Zustimmungsbildschirm", description: "Legen Sie den App-Namen auf einen beliebigen Namen fest (z. B. „My Calendar“), wählen Sie den Benutzertyp „External“ und fügen Sie Ihre E-Mail-Adresse als Testbenutzer hinzu. Wenn Sie eine Übersichtsseite sehen, ist die Einwilligung bereits konfiguriert – fahren Sie mit dem nächsten Schritt fort.", linkText: "Konfigurieren Sie den Zustimmungsbildschirm", }, credentials: { title: "Erstellen Sie OAuth-Anmeldeinformationen", description: "1) Klicken Sie auf „+ Create Credentials“ → „OAuth client ID“.\n2) Wählen Sie „Web application“\n3) Fügen Sie diesen Weiterleitungs-URI hinzu:", linkText: "Anmeldeinformationen erstellen", }, upload: { title: "Anmeldeinformationen JSON hochladen", description: "Klicken Sie auf der Seite mit den Anmeldeinformationen auf „Download JSON“ und laden Sie es dann hier hoch.", }, }, }, }, "ja-JP": { keyboardShortcuts: { title: "キーボードショートカット", navigation: "ナビゲーション", views: "ビュー", events: "イベント", searchQuickActions: "検索とクイックアクション", nextPeriod: "次の期間(日/週/月)", previousPeriod: "前期", goToday: "今日に行く", showTeammateCalendars: "チームメイトのカレンダーを表示する", monthView: "月表示", weekView: "週表示", dayView: "日中の様子", createNewEvent: "新しいイベントを作成する", deleteSelectedEvent: "選択したイベントを削除", closeDialog: "ダイアログを閉じる/キャンセル", openCommandPalette: "コマンドパレットを開く", showKeyboardShortcuts: "キーボード ショートカットを表示する", disabledWhileTyping: "テキストフィールドに入力している間、ショートカットは無効になります。", }, manageBooking: { title: "予約の管理", description: "会議をキャンセルまたは再スケジュールします。", notFound: "予約が見つかりませんでした", notFoundDescription: "このリンクの有効期限が切れているか、予約が削除されている可能性があります。", cancelled: "予約がキャンセルされました", cancelledPrefix: "ご予約は", cancelledDateConnector: "の上", cancelledSuffix: "キャンセルされました。", reschedule: "スケジュールを変更する", bookedBy: "{{name}} によって予約されました", pastMeeting: "この会議はすでに終了しました。", rescheduleTitle: "この予約を再スケジュールしますか?", rescheduleDescription: "現在の予約はキャンセルされ、新しい時間を選択することになります。", keepCurrentTime: "現在時刻を維持する", cancelFailed: "予約のキャンセルに失敗しました", cancelBooking: "予約をキャンセルする", cancelTitle: "この予約をキャンセルしますか?", cancelDescriptionPrefix: "これによりキャンセルされます", cancelDescriptionDateConnector: "の上", cancelDescriptionSuffix: "。この操作は元に戻すことができません。", keepBooking: "予約を続ける", cancelling: "キャンセル中...", yesCancel: "はい、キャンセルします", }, eventOptions: { calendarDefault: "Calendarのデフォルト", noAlerts: "アラートはありません", customAlerts: "カスタムアラート", addAlert: "アラートを追加", removeAlert: "アラート {{number}} を削除", addAttachment: "添付ファイルを追加する", removeAttachment: "添付ファイル {{number}} を削除します", attachmentTitle: "添付ファイルのタイトル", uploadAttachment: "添付ファイルをアップロードする", attachmentUploaded: "添付ファイルがアップロードされました", attachmentUploadLimit: "添付ファイルのアップロードは最大 25 MB まで可能です。", uploadFailed: "添付ファイルをアップロードできませんでした。", uploadMissingUrl: "アップロードでは添付ファイル URL が返されませんでした。", attachmentFallbackTitle: "アタッチメント", fileUploadsNotConfigured: "ファイルのアップロードが設定されていません。代わりに Drive または HTTPS URL を貼り付けてください。", fileUploadsNeedProvider: "ファイルのアップロードには、構成されたアップロード プロバイダーが必要です。とりあえずDriveかHTTPS URLを貼り付けます。", uploadFile: "ファイルをアップロードする", uploading: "アップロード中", maxAttachments: "Google Calendar は、イベントごとに最大 {{count}} の添付ファイルをサポートします。", uploadProviderPermissionError: "現在のアップロード プロバイダーの資格情報ではファイルのアップロードを利用できません。 Settings で Builder.io の権限を確認するか、代わりに Drive/HTTPS URL を貼り付けてください。", setEventColorTo: "イベントの色を{{color}}に設定します", }, googleConnect: { addAccount: "アカウントを追加", addAccountWithPlus: "+ アカウントを追加", connectGoogleCalendar: "Google Calendarを接続する", connectGoogle: "Googleを接続する", signInWithGoogle: "Googleでサインインする", syncEventsDescription: "イベントを同期し、スケジュールを管理します。", readyToConnect: "接続準備完了 — Google アカウントでサインインしてください", connectToSync: "Googleを接続してカレンダーを同期します", hideSetup: "設定を隠す", followSteps: "次の手順に従って、Google アカウントを接続します。所要時間は約 3 分です。", googleMayShowWarning: "Googleでは警告が表示される場合があります", googleNotVerifiedTitle: "「Googleはこのアプリを検証していません」", googleWarningBeforeAdvanced: "この画面が表示されるのは、カレンダーが Google でレビューされた公開アプリではなく、独自の Google Cloud プロジェクトを介して接続しているためです。安全に続行できます: をクリックしてください", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: "、 それから", googleWarningUnsafe: "「Go to … (unsafe)」", googleWarningAfterUnsafe: "接続を終了します。", accountConnectedElsewhere: "このアカウントは別のログインに接続されています", googleConnectionFailed: "Google接続に失敗しました", thatGoogleAccount: "そのGoogleアカウント", signOutThenSignIn: "サインアウトしてから、{{account}} でサインインします。", signOut: "サインアウト", dismiss: "却下する", dismissNotice: "Google サインイン通知を閉じる", copy: "コピー", copied: "コピーされました", uploadJson: "JSONをアップロードする", credentialsConfiguredSignIn: "資格情報が設定されました。上の「Google Calendarを接続」をクリックしてサインインします。", missingClientCredentials: "JSONではclient_idとclient_secretが見つかりませんでした", failedSaveCredentials: "認証情報の保存に失敗しました", failedParseJson: "JSONの解析に失敗しました", steps: { enableApi: { title: "Google Calendar API を有効にする", description: "Google Cloud Console を開き、Calendar API で「有効にする」をクリックします。", linkText: "Calendar APIを有効にする", }, consent: { title: "OAuth同意画面の設定", description: "アプリ名を任意の名前 (例: 「My Calendar」) に設定し、ユーザー タイプとして「External」を選択し、メールをテスト ユーザーとして追加します。概要ページが表示された場合は、同意はすでに構成されています。次のステップに進みます。", linkText: "同意画面の設定", }, credentials: { title: "OAuth 認証情報の作成", description: "1)「+Create Credentials」→「OAuth client ID」をクリック\n2) 「Web application」を選択します\n3) 次のリダイレクト URI を追加します。", linkText: "認証情報の作成", }, upload: { title: "認証情報のアップロード JSON", description: "資格情報ページで「Download JSON」をクリックし、ここにアップロードします。", }, }, }, }, "ko-KR": { keyboardShortcuts: { title: "키보드 단축키", navigation: "항해", views: "조회수", events: "이벤트", searchQuickActions: "검색 및 빠른 작업", nextPeriod: "다음 기간(일/주/월)", previousPeriod: "이전 기간", goToday: "오늘로 이동", showTeammateCalendars: "팀원 캘린더 표시", monthView: "월별 보기", weekView: "주간 보기", dayView: "일별 보기", createNewEvent: "새 이벤트 만들기", deleteSelectedEvent: "선택한 이벤트 삭제", closeDialog: "대화상자 닫기/취소", openCommandPalette: "명령 팔레트 열기", showKeyboardShortcuts: "키보드 단축키 표시", disabledWhileTyping: "텍스트 필드에 입력하는 동안 단축키는 비활성화됩니다.", }, manageBooking: { title: "예약 관리", description: "회의를 취소하거나 일정을 변경하세요.", notFound: "예약을 찾을 수 없습니다", notFoundDescription: "이 링크가 만료되었거나 예약이 삭제되었을 수 있습니다.", cancelled: "예약이 취소되었습니다", cancelledPrefix: "귀하의 예약은", cancelledDateConnector: "~에", cancelledSuffix: "취소되었습니다.", reschedule: "일정 변경", bookedBy: "{{name}}가 예약함", pastMeeting: "이 회의는 이미 통과되었습니다.", rescheduleTitle: "이 예약 일정을 변경하시겠습니까?", rescheduleDescription: "현재 예약이 취소되고 새로운 시간을 선택하게 됩니다.", keepCurrentTime: "현재 시간 유지", cancelFailed: "예약을 취소하지 못했습니다.", cancelBooking: "예약 취소", cancelTitle: "이 예약을 취소하시겠습니까?", cancelDescriptionPrefix: "취소됩니다.", cancelDescriptionDateConnector: "~에", cancelDescriptionSuffix: ". 이 작업은 취소할 수 없습니다.", keepBooking: "계속 예약하세요", cancelling: "취소 중...", yesCancel: "예, 취소합니다", }, eventOptions: { calendarDefault: "Calendar 기본값", noAlerts: "알림 없음", customAlerts: "맞춤 알림", addAlert: "알림 추가", removeAlert: "경고 {{number}} 제거", addAttachment: "첨부파일 추가", removeAttachment: "첨부파일 {{number}} 삭제", attachmentTitle: "첨부파일 제목", uploadAttachment: "첨부파일 업로드", attachmentUploaded: "첨부파일이 업로드되었습니다", attachmentUploadLimit: "첨부파일 업로드 크기는 최대 25MB입니다.", uploadFailed: "첨부파일을 업로드할 수 없습니다.", uploadMissingUrl: "업로드 시 URL 첨부 파일이 반환되지 않았습니다.", attachmentFallbackTitle: "부착", fileUploadsNotConfigured: "파일 업로드가 구성되지 않았습니다. 대신 Drive 또는 HTTPS URL를 붙여넣으세요.", fileUploadsNeedProvider: "파일 업로드에는 구성된 업로드 공급자가 필요합니다. 지금은 Drive 또는 HTTPS URL를 붙여넣으세요.", uploadFile: "파일 업로드", uploading: "업로드 중", maxAttachments: "Google Calendar는 이벤트당 최대 {{count}} 첨부 파일을 지원합니다.", uploadProviderPermissionError: "현재 업로드 공급자 자격 증명으로는 파일 업로드를 사용할 수 없습니다. Settings에서 Builder.io 권한을 확인하거나 대신 Drive/HTTPS URL를 붙여넣으세요.", setEventColorTo: "이벤트 색상을 {{color}}로 설정", }, googleConnect: { addAccount: "계정 추가", addAccountWithPlus: "+ 계정 추가", connectGoogleCalendar: "Google Calendar 연결", connectGoogle: "Google 연결", signInWithGoogle: "Google로 로그인", syncEventsDescription: "이벤트를 동기화하고 일정을 관리하세요.", readyToConnect: "연결할 준비가 되었습니다 - Google 계정으로 로그인하세요", connectToSync: "Google를 연결하여 캘린더를 동기화하세요", hideSetup: "설정 숨기기", followSteps: "Google 계정을 연결하려면 다음 단계를 따르세요. 약 3분 정도 소요됩니다.", googleMayShowWarning: "Google에 경고가 표시될 수 있음", googleNotVerifiedTitle: "“Google는 이 앱을 인증하지 않았습니다”", googleWarningBeforeAdvanced: "캘린더가 Google가 검토한 공개 앱이 아닌 자신의 Google Cloud 프로젝트를 통해 연결되기 때문에 이 화면이 표시됩니다. 계속해도 안전합니다. 클릭하세요", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", 그 다음에", googleWarningUnsafe: "“Go to … (unsafe)”", googleWarningAfterUnsafe: "연결을 완료합니다.", accountConnectedElsewhere: "이 계정은 다른 로그인에 연결되어 있습니다", googleConnectionFailed: "Google 연결 실패", thatGoogleAccount: "그 Google 계정", signOutThenSignIn: "로그아웃한 다음 {{account}}로 로그인하세요.", signOut: "로그아웃", dismiss: "해고하다", dismissNotice: "Google 로그인 알림 닫기", copy: "복사", copied: "복사됨", uploadJson: "JSON 업로드", credentialsConfiguredSignIn: '자격 증명이 구성되었습니다. 위의 "Google Calendar 연결"을 클릭하여 로그인하세요.', missingClientCredentials: "JSON에서 client_id 및 client_secret를 찾을 수 없습니다.", failedSaveCredentials: "자격 증명을 저장하지 못했습니다.", failedParseJson: "JSON를 구문 분석하지 못했습니다.", steps: { enableApi: { title: "Google Calendar API 활성화", description: "Google Cloud Console를 열고 Calendar API에서 '활성화'를 클릭하세요.", linkText: "Calendar API 활성화", }, consent: { title: "OAuth 동의 화면 구성", description: '앱 이름을 원하는 대로 설정하고(예: "My Calendar") "External" 사용자 유형을 선택한 다음 이메일을 테스트 사용자로 추가하세요. 개요 페이지가 표시되면 동의가 이미 구성된 것입니다. 다음 단계로 건너뛰세요.', linkText: "동의 화면 구성", }, credentials: { title: "OAuth 자격 증명 만들기", description: '1) "+ Create Credentials" → "OAuth client ID"를 클릭합니다.\n2) "Web application"를 선택하세요\n3) 다음 리디렉션 URI를 추가합니다.', linkText: "자격 증명 만들기", }, upload: { title: "자격 증명 업로드 JSON", description: '자격 증명 페이지에서 "Download JSON"를 클릭한 후 여기에 업로드하세요.', }, }, }, }, "pt-BR": { keyboardShortcuts: { title: "Atalhos de teclado", navigation: "Navegação", views: "Visualizações", events: "Eventos", searchQuickActions: "Pesquisa e ações rápidas", nextPeriod: "Próximo período (dia/semana/mês)", previousPeriod: "Período anterior", goToday: "Vá para hoje", showTeammateCalendars: "Mostrar calendários de colegas de equipe", monthView: "Visualização mensal", weekView: "Visualização da semana", dayView: "Visualização do dia", createNewEvent: "Criar novo evento", deleteSelectedEvent: "Excluir evento selecionado", closeDialog: "Fechar caixa de diálogo/cancelar", openCommandPalette: "Abrir paleta de comandos", showKeyboardShortcuts: "Mostrar atalhos de teclado", disabledWhileTyping: "Os atalhos são desativados durante a digitação em campos de texto.", }, manageBooking: { title: "Gerenciar reserva", description: "Cancele ou reagende sua reunião.", notFound: "Reserva não encontrada", notFoundDescription: "Este link pode ter expirado ou a reserva pode ter sido removida.", cancelled: "Reserva cancelada", cancelledPrefix: "Sua reserva para", cancelledDateConnector: "sobre", cancelledSuffix: "foi cancelado.", reschedule: "Reprogramar", bookedBy: "Reservado por {{name}}", pastMeeting: "Esta reunião já passou.", rescheduleTitle: "Reagendar esta reserva?", rescheduleDescription: "Sua reserva atual será cancelada e você será levado a escolher um novo horário.", keepCurrentTime: "Manter a hora atual", cancelFailed: "Falha ao cancelar reserva", cancelBooking: "Cancelar reserva", cancelTitle: "Cancelar esta reserva?", cancelDescriptionPrefix: "Isso cancelará seu", cancelDescriptionDateConnector: "sobre", cancelDescriptionSuffix: ". Esta ação não pode ser desfeita.", keepBooking: "Manter reserva", cancelling: "Cancelando...", yesCancel: "Sim, cancelar", }, eventOptions: { calendarDefault: "Padrão Calendar", noAlerts: "Sem alertas", customAlerts: "Alertas personalizados", addAlert: "Adicionar alerta", removeAlert: "Remover alerta {{number}}", addAttachment: "Adicionar anexo", removeAttachment: "Remover anexo {{number}}", attachmentTitle: "Título do anexo", uploadAttachment: "Carregar anexo", attachmentUploaded: "Anexo enviado", attachmentUploadLimit: "Os uploads de anexos podem ter até 25 MB.", uploadFailed: "Não foi possível carregar o anexo.", uploadMissingUrl: "O upload não retornou um anexo URL.", attachmentFallbackTitle: "Anexo", fileUploadsNotConfigured: "Os uploads de arquivos não estão configurados. Cole um Drive ou HTTPS URL.", fileUploadsNeedProvider: "Os uploads de arquivos precisam de um provedor de upload configurado. Cole um Drive ou HTTPS URL por enquanto.", uploadFile: "Carregar arquivo", uploading: "Enviando", maxAttachments: "Google Calendar suporta até anexos {{count}} por evento.", uploadProviderPermissionError: "O upload de arquivos não está disponível com as credenciais atuais do provedor de upload. Verifique as permissões Builder.io em Settings ou cole um Drive/HTTPS URL.", setEventColorTo: "Defina a cor do evento como {{color}}", }, googleConnect: { addAccount: "Adicionar conta", addAccountWithPlus: "+ Adicionar conta", connectGoogleCalendar: "Conecte Google Calendar", connectGoogle: "Conecte Google", signInWithGoogle: "Faça login com Google", syncEventsDescription: "Sincronize seus eventos e gerencie sua programação.", readyToConnect: "Pronto para conectar – faça login com sua conta Google", connectToSync: "Conecte Google para sincronizar seu calendário", hideSetup: "Ocultar configuração", followSteps: "Siga estas etapas para conectar sua conta Google. Demora cerca de 3 minutos.", googleMayShowWarning: "Google pode mostrar um aviso", googleNotVerifiedTitle: "“Google não verificou este aplicativo”", googleWarningBeforeAdvanced: "Você verá esta tela porque o calendário se conecta por meio de seu próprio projeto Google Cloud, não de um aplicativo público revisado pelo Google. É seguro continuar: clique", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", então", googleWarningUnsafe: "“Go to … (unsafe)”", googleWarningAfterUnsafe: "para terminar a conexão.", accountConnectedElsewhere: "Esta conta está conectada a outro login", googleConnectionFailed: "Falha na conexão Google", thatGoogleAccount: "aquela conta Google", signOutThenSignIn: "Saia e entre com {{account}}.", signOut: "sair", dismiss: "Liberar", dismissNotice: "Ignorar aviso de login do Google", copy: "Cópia", copied: "Copiado", uploadJson: "Carregar JSON", credentialsConfiguredSignIn: 'Credenciais configuradas. Clique em "Conectar Google Calendar" acima para fazer login.', missingClientCredentials: "Não foi possível encontrar client_id e client_secret em JSON", failedSaveCredentials: "Falha ao salvar credenciais", failedParseJson: "Falha ao analisar JSON", steps: { enableApi: { title: "Habilite a API Google Calendar", description: "Abra o Google Cloud Console e clique em ‘Ativar’ no Calendar API.", linkText: "Habilitar Calendar API", }, consent: { title: "Configurar tela de consentimento do OAuth", description: 'Defina o nome do aplicativo como qualquer (por exemplo, "My Calendar"), escolha o tipo de usuário "External" e adicione seu e-mail como usuário de teste. Se você vir uma página de visão geral, o consentimento já está configurado. Vá para a próxima etapa.', linkText: "Configurar tela de consentimento", }, credentials: { title: "Crie credenciais OAuth", description: '1) Clique em "+ Create Credentials" → "OAuth client ID"\n2) Escolha "Web application"\n3) Adicione este URI de redirecionamento:', linkText: "Criar credenciais", }, upload: { title: "Carregar credenciais JSON", description: 'Clique em "Download JSON" na página de credenciais e faça upload aqui.', }, }, }, }, "hi-IN": { keyboardShortcuts: { title: "कुंजीपटल अल्प मार्ग", navigation: "मार्गदर्शन", views: "दृश्य", events: "घटनाएँ", searchQuickActions: "खोजें एवं त्वरित कार्यवाही", nextPeriod: "अगली अवधि (दिन/सप्ताह/माह)", previousPeriod: "पिछली अवधि", goToday: "आज ही जाएं", showTeammateCalendars: "टीम के साथी कैलेंडर दिखाएं", monthView: "माह दृश्य", weekView: "सप्ताह दृश्य", dayView: "दिन का दृश्य", createNewEvent: "नया ईवेंट बनाएं", deleteSelectedEvent: "चयनित ईवेंट हटाएँ", closeDialog: "संवाद बंद करें / रद्द करें", openCommandPalette: "कमांड पैलेट खोलें", showKeyboardShortcuts: "कुंजीपटल शॉर्टकट दिखाएँ", disabledWhileTyping: "टेक्स्ट फ़ील्ड में टाइप करते समय शॉर्टकट अक्षम हो जाते हैं।", }, manageBooking: { title: "बुकिंग प्रबंधित करें", description: "अपनी मीटिंग रद्द करें या पुनर्निर्धारित करें.", notFound: "बुकिंग नहीं मिली", notFoundDescription: "हो सकता है कि यह लिंक समाप्त हो गया हो या बुकिंग हटा दी गई हो.", cancelled: "बुकिंग रद्द", cancelledPrefix: "के लिए आपकी बुकिंग", cancelledDateConnector: "पर", cancelledSuffix: "रद्द कर दिया गया है।", reschedule: "पुनर्निर्धारित", bookedBy: "{{name}} द्वारा बुक किया गया", pastMeeting: "यह बैठक पहले ही बीत चुकी है.", rescheduleTitle: "इस बुकिंग को पुनर्निर्धारित करें?", rescheduleDescription: "आपकी वर्तमान बुकिंग रद्द कर दी जाएगी और आपसे नया समय चुनने के लिए कहा जाएगा।", keepCurrentTime: "वर्तमान समय रखें", cancelFailed: "बुकिंग रद्द करने में विफल", cancelBooking: "बुकिंग रद्द करें", cancelTitle: "यह बुकिंग रद्द करें?", cancelDescriptionPrefix: "इससे आपका रद्द हो जाएगा", cancelDescriptionDateConnector: "पर", cancelDescriptionSuffix: ". इस एक्शन को वापस नहीं किया जा सकता।", keepBooking: "बुकिंग रखें", cancelling: "रद्द किया जा रहा है...", yesCancel: "हाँ, रद्द करें", }, eventOptions: { calendarDefault: "Calendar डिफ़ॉल्ट", noAlerts: "कोई अलर्ट नहीं", customAlerts: "कस्टम अलर्ट", addAlert: "चेतावनी जोड़ें", removeAlert: "अलर्ट {{number}} हटाएं", addAttachment: "अय्टाचमेंट जोडे", removeAttachment: "अनुलग्नक {{number}} हटाएं", attachmentTitle: "अनुलग्नक शीर्षक", uploadAttachment: "अनुलग्नक अपलोड करें", attachmentUploaded: "अनुलग्नक अपलोड किया गया", attachmentUploadLimit: "अनुलग्नक अपलोड 25 एमबी तक हो सकते हैं।", uploadFailed: "अनुलग्नक अपलोड नहीं किया जा सका.", uploadMissingUrl: "अपलोड ने अनुलग्नक URL वापस नहीं किया।", attachmentFallbackTitle: "लगाव", fileUploadsNotConfigured: "फ़ाइल अपलोड कॉन्फ़िगर नहीं किए गए हैं. इसके बजाय Drive या HTTPS URL चिपकाएँ।", fileUploadsNeedProvider: "फ़ाइल अपलोड के लिए एक कॉन्फ़िगर अपलोड प्रदाता की आवश्यकता होती है। अभी के लिए Drive या HTTPS URL चिपकाएँ।", uploadFile: "फ़ाइल अपलोड करें", uploading: "अपलोड हो रहा है", maxAttachments: "Google Calendar प्रति इवेंट {{count}} अटैचमेंट तक का समर्थन करता है।", uploadProviderPermissionError: "फ़ाइल अपलोड वर्तमान अपलोड प्रदाता क्रेडेंशियल के साथ उपलब्ध नहीं है। Settings में Builder.io अनुमतियाँ जांचें, या इसके बजाय Drive/HTTPS URL पेस्ट करें।", setEventColorTo: "इवेंट का रंग {{color}} पर सेट करें", }, googleConnect: { addAccount: "खाता जोड़ें", addAccountWithPlus: "+ खाता जोड़ें", connectGoogleCalendar: "Google Calendar कनेक्ट करें", connectGoogle: "Google कनेक्ट करें", signInWithGoogle: "Google के साथ साइन इन करें", syncEventsDescription: "अपने ईवेंट सिंक करें और अपना शेड्यूल प्रबंधित करें।", readyToConnect: "कनेक्ट करने के लिए तैयार - अपने Google खाते से साइन इन करें", connectToSync: "अपने कैलेंडर को सिंक करने के लिए Google कनेक्ट करें", hideSetup: "सेटअप छिपाएँ", followSteps: "अपने Google खाते को कनेक्ट करने के लिए इन चरणों का पालन करें। लगभग 3 मिनट का समय लगता है.", googleMayShowWarning: "Google एक चेतावनी दिखा सकता है", googleNotVerifiedTitle: '"Google ने इस ऐप को सत्यापित नहीं किया है"', googleWarningBeforeAdvanced: "आपको यह स्क्रीन दिखाई देगी क्योंकि कैलेंडर आपके स्वयं के Google Cloud प्रोजेक्ट से जुड़ता है, Google-समीक्षित सार्वजनिक ऐप से नहीं। जारी रखना सुरक्षित है: क्लिक करें", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: ", तब", googleWarningUnsafe: '"Go to … (unsafe)"', googleWarningAfterUnsafe: "कनेक्ट करना समाप्त करने के लिए.", accountConnectedElsewhere: "यह खाता दूसरे लॉगिन से जुड़ा है", googleConnectionFailed: "Google कनेक्शन विफल", thatGoogleAccount: "वह Google खाता", signOutThenSignIn: "साइन आउट करें, फिर {{account}} से साइन इन करें।", signOut: "साइन आउट", dismiss: "नकार देना", dismissNotice: "Google साइन-इन नोटिस खारिज करें", copy: "प्रतिलिपि", copied: "कॉपी किया गया", uploadJson: "JSON अपलोड करें", credentialsConfiguredSignIn: 'क्रेडेंशियल कॉन्फ़िगर किया गया. साइन इन करने के लिए ऊपर "कनेक्ट Google Calendar" पर क्लिक करें।', missingClientCredentials: "JSON में client_id और client_secret नहीं मिल सका", failedSaveCredentials: "क्रेडेंशियल सहेजने में विफल", failedParseJson: "JSON को पार्स करने में विफल", steps: { enableApi: { title: "Google Calendar API सक्षम करें", description: "Google Cloud Console खोलें और Calendar API पर 'सक्षम करें' पर क्लिक करें।", linkText: "Calendar API सक्षम करें", }, consent: { title: "OAuth सहमति स्क्रीन कॉन्फ़िगर करें", description: 'ऐप का नाम कुछ भी सेट करें (उदाहरण के लिए "My Calendar"), "External" उपयोगकर्ता प्रकार चुनें, और एक परीक्षण उपयोगकर्ता के रूप में अपना ईमेल जोड़ें। यदि आप एक अवलोकन पृष्ठ देखते हैं, तो सहमति पहले से ही कॉन्फ़िगर की गई है - अगले चरण पर जाएं।', linkText: "सहमति स्क्रीन कॉन्फ़िगर करें", }, credentials: { title: "OAuth क्रेडेंशियल बनाएं", description: '1) "+ Create Credentials" → "OAuth client ID" पर क्लिक करें\n2) "Web application" चुनें\n3) यह रीडायरेक्ट यूआरआई जोड़ें:', linkText: "साख बनाएँ", }, upload: { title: "क्रेडेंशियल JSON अपलोड करें", description: 'क्रेडेंशियल पेज पर "Download JSON" पर क्लिक करें, फिर इसे यहां अपलोड करें।', }, }, }, }, "ar-SA": { keyboardShortcuts: { title: "اختصارات لوحة المفاتيح", navigation: "ملاحة", views: "وجهات النظر", events: "الأحداث", searchQuickActions: "البحث والإجراءات السريعة", nextPeriod: "الفترة القادمة (يوم / أسبوع / شهر)", previousPeriod: "الفترة السابقة", goToday: "اذهب الى اليوم", showTeammateCalendars: "عرض تقاويم زميل الفريق", monthView: "عرض الشهر", weekView: "عرض الأسبوع", dayView: "عرض اليوم", createNewEvent: "إنشاء حدث جديد", deleteSelectedEvent: "حذف الحدث المحدد", closeDialog: "إغلاق الحوار / الإلغاء", openCommandPalette: "افتح لوحة الأوامر", showKeyboardShortcuts: "إظهار اختصارات لوحة المفاتيح", disabledWhileTyping: "يتم تعطيل الاختصارات أثناء الكتابة في الحقول النصية.", }, manageBooking: { title: "إدارة الحجز", description: "إلغاء أو إعادة جدولة اجتماعك.", notFound: "لم يتم العثور على الحجز", notFoundDescription: "ربما انتهت صلاحية هذا الرابط أو ربما تمت إزالة الحجز.", cancelled: "تم إلغاء الحجز", cancelledPrefix: "حجزك ل", cancelledDateConnector: "على", cancelledSuffix: "تم إلغاؤه.", reschedule: "إعادة جدولة", bookedBy: "تم الحجز بواسطة {{name}}", pastMeeting: "لقد مر هذا الاجتماع بالفعل.", rescheduleTitle: "هل تريد إعادة جدولة هذا الحجز؟", rescheduleDescription: "سيتم إلغاء حجزك الحالي وسيتم توجيهك لاختيار موعد جديد.", keepCurrentTime: "الحفاظ على الوقت الحالي", cancelFailed: "فشل في إلغاء الحجز", cancelBooking: "إلغاء الحجز", cancelTitle: "إلغاء هذا الحجز؟", cancelDescriptionPrefix: "سيؤدي هذا إلى إلغاء الخاص بك", cancelDescriptionDateConnector: "على", cancelDescriptionSuffix: ". لا يمكن التراجع عن هذا الإجراء.", keepBooking: "استمر بالحجز", cancelling: "جارٍ الإلغاء...", yesCancel: "نعم، إلغاء", }, eventOptions: { calendarDefault: "Calendar الافتراضي", noAlerts: "لا تنبيهات", customAlerts: "تنبيهات مخصصة", addAlert: "إضافة تنبيه", removeAlert: "قم بإزالة التنبيه {{number}}", addAttachment: "إضافة مرفق", removeAttachment: "قم بإزالة المرفق {{number}}", attachmentTitle: "عنوان المرفق", uploadAttachment: "تحميل المرفق", attachmentUploaded: "تم تحميل المرفق", attachmentUploadLimit: "يمكن أن يصل حجم تحميلات المرفقات إلى 25 ميغابايت.", uploadFailed: "تعذر تحميل المرفق.", uploadMissingUrl: "لم يُرجع التحميل المرفق URL.", attachmentFallbackTitle: "مرفق", fileUploadsNotConfigured: "لم يتم تكوين عمليات تحميل الملفات. الصق Drive أو HTTPS URL بدلاً من ذلك.", fileUploadsNeedProvider: "تحتاج عمليات تحميل الملفات إلى موفر تحميل تم تكوينه. الصق Drive أو HTTPS URL في الوقت الحالي.", uploadFile: "تحميل الملف", uploading: "جارٍ التحميل", maxAttachments: "يدعم Google Calendar ما يصل إلى مرفقات {{count}} لكل حدث.", uploadProviderPermissionError: "تحميل الملف غير متاح باستخدام بيانات اعتماد موفر التحميل الحالي. تحقق من أذونات Builder.io في Settings، أو الصق Drive/HTTPS URL بدلاً من ذلك.", setEventColorTo: "اضبط لون الحدث على {{color}}", }, googleConnect: { addAccount: "إضافة حساب", addAccountWithPlus: "+ إضافة حساب", connectGoogleCalendar: "قم بتوصيل Google Calendar", connectGoogle: "قم بتوصيل Google", signInWithGoogle: "قم بتسجيل الدخول باستخدام Google", syncEventsDescription: "مزامنة الأحداث الخاصة بك وإدارة الجدول الزمني الخاص بك.", readyToConnect: "جاهز للاتصال — قم بتسجيل الدخول باستخدام حساب Google الخاص بك", connectToSync: "قم بتوصيل Google لمزامنة التقويم الخاص بك", hideSetup: "إخفاء الإعداد", followSteps: "اتبع هذه الخطوات لتوصيل حساب Google الخاص بك. يستغرق حوالي 3 دقائق.", googleMayShowWarning: "قد يظهر Google تحذيرًا", googleNotVerifiedTitle: '"لم يتحقق Google من هذا التطبيق"', googleWarningBeforeAdvanced: "ستشاهد هذه الشاشة لأن التقويم يتصل من خلال مشروع Google Cloud الخاص بك، وليس من خلال تطبيق عام تمت مراجعته بواسطة Google. من الآمن المتابعة: انقر", googleWarningAdvanced: "Advanced", googleWarningBetweenActions: "، ثم", googleWarningUnsafe: '"Go to … (unsafe)"', googleWarningAfterUnsafe: "لإنهاء الاتصال.", accountConnectedElsewhere: "هذا الحساب متصل بتسجيل دخول آخر", googleConnectionFailed: "فشل اتصال Google", thatGoogleAccount: "حساب Google هذا", signOutThenSignIn: "قم بتسجيل الخروج، ثم قم بتسجيل الدخول باستخدام {{account}}.", signOut: "تسجيل الخروج", dismiss: "رفض", dismissNotice: "رفض إشعار تسجيل الدخول Google", copy: "ينسخ", copied: "منقول", uploadJson: "تحميل JSON", credentialsConfiguredSignIn: 'تم تكوين بيانات الاعتماد. انقر فوق "Connect Google Calendar" أعلاه لتسجيل الدخول.', missingClientCredentials: "تعذر العثور على client_id وclient_secret في JSON", failedSaveCredentials: "فشل في حفظ بيانات الاعتماد", failedParseJson: "فشل تحليل JSON", steps: { enableApi: { title: "تمكين واجهة برمجة تطبيقات Google Calendar", description: 'افتح Google Cloud Console وانقر فوق "تمكين" على Calendar API.', linkText: "تمكين Calendar API", }, consent: { title: "تكوين شاشة موافقة OAuth", description: 'قم بتعيين اسم التطبيق على أي شيء (على سبيل المثال، "My Calendar")، واختر نوع المستخدم "External"، وأضف بريدك الإلكتروني كمستخدم اختباري. إذا رأيت صفحة النظرة العامة، فهذا يعني أن الموافقة قد تم تكوينها بالفعل - انتقل إلى الخطوة التالية.', linkText: "تكوين شاشة الموافقة", }, credentials: { title: "إنشاء بيانات اعتماد OAuth", description: '1) انقر على "+ Create Credentials" ← "OAuth client ID"\n2) اختر "Web application"\n3) أضف عنوان URI لإعادة التوجيه هذا:', linkText: "إنشاء بيانات الاعتماد", }, upload: { title: "تحميل بيانات الاعتماد JSON", description: 'انقر على "Download JSON" في صفحة بيانات الاعتماد، ثم قم بتحميله هنا.', }, }, }, }, } satisfies Partial>; const translatedCalendarInlineEditorLabels = { "zh-CN": { eventForm: { addGuest: "添加客人", everyTwoWeeks: "每两周", repeat: "重复", onDate: "于 {{date}}", onDay: "于 {{day}}", onMonthDay: "于 {{day}}日", weekdaysShort: "周一至周五", }, }, "es-ES": { eventForm: { addGuest: "Añadir invitado", everyTwoWeeks: "Cada 2 semanas", repeat: "Repetir", onDate: "el {{date}}", onDay: "el {{day}}", onMonthDay: "el día {{day}}", weekdaysShort: "lun–vie", }, }, "fr-FR": { eventForm: { addGuest: "Ajouter un invité", everyTwoWeeks: "Toutes les 2 semaines", repeat: "Répéter", onDate: "le {{date}}", onDay: "le {{day}}", onMonthDay: "le {{day}}", weekdaysShort: "lun–ven", }, }, "de-DE": { eventForm: { addGuest: "Gast hinzufügen", everyTwoWeeks: "Alle 2 Wochen", repeat: "Wiederholen", onDate: "am {{date}}", onDay: "am {{day}}", onMonthDay: "am {{day}}.", weekdaysShort: "Mo–Fr", }, }, "ja-JP": { eventForm: { addGuest: "ゲストを追加", everyTwoWeeks: "2週間ごと", repeat: "繰り返し", onDate: "{{date}}", onDay: "{{day}}に", onMonthDay: "{{day}}日", weekdaysShort: "月〜金", }, }, "ko-KR": { eventForm: { addGuest: "게스트 추가", everyTwoWeeks: "2주마다", repeat: "반복", onDate: "{{date}}", onDay: "{{day}}에", onMonthDay: "{{day}}일", weekdaysShort: "월–금", }, }, "pt-BR": { eventForm: { addGuest: "Adicionar convidado", everyTwoWeeks: "A cada 2 semanas", repeat: "Repetir", onDate: "em {{date}}", onDay: "em {{day}}", onMonthDay: "no dia {{day}}", weekdaysShort: "seg–sex", }, }, "hi-IN": { eventForm: { addGuest: "अतिथि जोड़ें", everyTwoWeeks: "हर 2 सप्ताह", repeat: "दोहराएं", onDate: "{{date}} को", onDay: "{{day}} को", onMonthDay: "{{day}} को", weekdaysShort: "सोम–शुक्र", }, }, "ar-SA": { eventForm: { addGuest: "إضافة ضيف", everyTwoWeeks: "كل أسبوعين", repeat: "تكرار", onDate: "في {{date}}", onDay: "في {{day}}", onMonthDay: "في اليوم {{day}}", weekdaysShort: "الإثنين–الجمعة", }, }, } satisfies Partial>; const translatedCalendarRemainingRaw = { "zh-CN": { agentSidebar: { emptyState: "问我任何关于你的日历的问题", suggestions: { today: "我今天的日历上有什么?", findSlot: "找下周与 Alice 的 30 分钟空档", scheduleZoom: "为周五和团队安排一个 Zoom", }, }, cloudUpgrade: { authToken: "认证令牌", connectedReloading: "连接成功。正在重新加载...", connectionFailed: "连接失败", databaseUrlRequired: "需要数据库 URL", savingCredentials: "正在保存凭据...", setupSteps: "设置步骤", testAndConnect: "测试并连接", testingConnection: "正在测试连接...", providers: { turso: { description: "边缘 SQLite", steps: { step1: "安装 CLI:curl -sSfL https://get.tur.so/install.sh | bash", step2: "注册/登录:turso auth login(打开浏览器)", step3: "创建数据库:turso db create my-app", step4: "复制 URL:turso db show my-app --url → 以 libsql:// 开头", step5: "创建认证令牌:turso db tokens create my-app → 粘贴到下方", }, }, neon: { description: "Serverless Postgres", steps: { step1: "前往 console.neon.tech 并注册或登录", step2: '点击 "New Project" → 选择名称和区域 → 点击 Create', step3: "在项目仪表板中找到 Connection Details 面板", step4: '选择 "Connection string" 标签 → 复制 postgres://... URL', step5: "在下方粘贴完整连接字符串(包含密码)", }, }, supabase: { description: "开源 Firebase 替代方案", steps: { step1: "前往 supabase.com/dashboard 并注册或登录", step2: '点击 "New Project" → 设置名称和数据库密码 → 点击 Create', step3: "等待项目完成预配(约 30 秒)", step4: "前往 Project Settings → Database → Connection string", step5: '选择 "URI" 标签 → 复制 postgres://... 字符串(将 [YOUR-PASSWORD] 替换为数据库密码)', }, }, d1: { description: "Cloudflare 边缘 SQLite", steps: { step1: "前往 dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: '点击 "Create" → 为数据库命名 → 点击 Create', step3: "从数据库概览页复制 Database ID", step4: "认证令牌:前往 My Profile → API Tokens → Create Token", step5: '选择 "Edit Cloudflare Workers" 模板 → Create Token → 复制', step6: "按 d1:// 填写,并在下方提供 API token", }, }, }, }, apollo: { apiKeyPlaceholder: "粘贴 Apollo API key...", attendeeCount_other: "{{count}} 人", connectApollo: "连接 Apollo", description: "添加 Apollo API key,用公司、职位和联系数据丰富参会者资料。", howToGetKey: "如何获取密钥", openSettings: "打开 Apollo 设置 →", researchMeeting: "研究会议", steps: { login: "登录 Apollo.io", api: "前往 Settings → Integrations → API", connect: '点击 "Connect" 生成密钥', }, }, attendees: { addAnotherGuest: "添加另一位来宾", clearTimezone: "清除时区", contacts: "联系人", contactsReconnect: "需要重新连接联系人或目录访问权限。", directory: "目录", guestOptions: "{{email}} 的来宾选项", inviteEmail: "邀请 {{email}}", markOptional: "标为可选", markRequired: "标为必选", optionalBadge: "可选", otherContacts: "其他联系人", removeAttendee: "移除 {{email}}", searchingPeople: "正在搜索人员", setTimezone: "设置时区…", }, findTime: { busy: "忙碌", noMatchingSlots: "没有匹配时段", refreshing: "正在刷新", suggestedTimes: "建议时间", takeoverDescription: "查看共享可用性并选择会议时间。", you: "你", }, googleSync: { failed: "与 Google Calendar 同步失败", syncGoogle: "同步 Google", syncedCount_other: "已同步 {{count}} 个事件", syncedFromGoogleCalendar_other: "已从 Google Calendar 同步 {{count}} 个事件", }, sidebar: { collapseSidebar: "折叠侧边栏", expandSidebar: "展开侧边栏", addGoogleAccount: "添加 Google 账号", colorByMeetingType: "按会议类型着色(外部、内部、一对一、小组等)", googleCalendarSettings: "Google Calendar 设置", hideCalendar: "隐藏日历", myCalendars: "我的日历", nextYear: "下一年", otherCalendars: "其他日历", otherCalendarsDescription: "添加队友的日历或订阅公共日历 URL", previousYear: "上一年", showCalendar: "显示日历", }, integrations: { addIntegration: "添加集成", addIntegrations: "添加集成", apolloDescription: "联系人丰富和公司数据", apolloKeyPlaceholder: "Apollo API key...", connectedCount: "集成({{connected}}/{{total}})", gongDescription: "最近通话和对话智能", gongKeyPlaceholder: "Gong API key 或 access_key:secret...", go: "开始", hubSpotDescription: "CRM 联系人、交易和工单", hubSpotKeyPlaceholder: "HubSpot private app token...", newIntegration: "新集成", newIntegrationPlaceholder: "例如 Salesforce、Intercom...", openProviderSettings: "打开 {{provider}} 设置 →", pylonDescription: "支持问题和账号数据", pylonKeyPlaceholder: "Pylon API token...", title: "集成", toGetApiKey: "获取 API key:", updateKey: "更新密钥", }, googleConnect: { failedSave: "保存失败", clientId: "客户端 ID", clientSecret: "客户端密钥", credentialsConfiguredAbove: "凭据已配置。现在可以在上方连接 Google Calendar。", hideManualEntry: "隐藏手动输入", orPasteManually: "或手动粘贴", saveCredentials: "保存凭据", }, }, "es-ES": { agentSidebar: { emptyState: "Pregúntame cualquier cosa sobre tu calendario", suggestions: { today: "¿Qué tengo hoy en el calendario?", findSlot: "Busca un hueco de 30 min con Alice la semana que viene", scheduleZoom: "Programa un Zoom con el equipo el viernes", }, }, cloudUpgrade: { authToken: "Token de autenticación", connectedReloading: "Conexión correcta. Recargando...", connectionFailed: "Error de conexión", databaseUrlRequired: "La URL de la base de datos es obligatoria", savingCredentials: "Guardando credenciales...", setupSteps: "Pasos de configuración", testAndConnect: "Probar y conectar", testingConnection: "Probando conexión...", providers: { turso: { description: "SQLite en el edge", steps: {} }, neon: { description: "Postgres serverless", steps: {} }, supabase: { description: "Alternativa open source a Firebase", steps: {}, }, d1: { description: "SQLite en el edge de Cloudflare", steps: {} }, }, }, apollo: { apiKeyPlaceholder: "Pega la API key de Apollo...", attendeeCount_one: "{{count}} persona", attendeeCount_many: "{{count}} personas", attendeeCount_other: "{{count}} personas", connectApollo: "Conectar Apollo", description: "Añade tu API key de Apollo para enriquecer perfiles con empresa, cargo y datos de contacto.", howToGetKey: "Cómo obtener tu clave", openSettings: "Abrir ajustes de Apollo →", researchMeeting: "Investigar reunión", steps: { login: "Inicia sesión en Apollo.io", api: "Ve a Settings → Integrations → API", connect: 'Haz clic en "Connect" para generar una clave', }, }, attendees: { addAnotherGuest: "Añadir otro invitado", contacts: "Contactos", contactsReconnect: "Hay que volver a conectar el acceso a contactos o directorio.", directory: "Directorio", guestOptions: "Opciones de invitado para {{email}}", inviteEmail: "Invitar a {{email}}", markOptional: "Marcar como opcional", markRequired: "Marcar como obligatorio", optionalBadge: "Opcional", otherContacts: "Otros contactos", removeAttendee: "Quitar {{email}}", searchingPeople: "Buscando personas", clearTimezone: "Borrar zona horaria", setTimezone: "Establecer zona horaria…", }, findTime: { busy: "Ocupado", noMatchingSlots: "No hay horarios coincidentes", refreshing: "Actualizando", suggestedTimes: "Horarios sugeridos", takeoverDescription: "Revisa la disponibilidad compartida y elige una hora de reunión.", you: "Tú", }, googleSync: { failed: "No se pudo sincronizar con Google Calendar", syncGoogle: "Sincronizar Google", syncedCount_one: "{{count}} evento sincronizado", syncedCount_many: "{{count}} eventos sincronizados", syncedCount_other: "{{count}} eventos sincronizados", syncedFromGoogleCalendar_one: "{{count}} evento sincronizado desde Google Calendar", syncedFromGoogleCalendar_many: "{{count}} eventos sincronizados desde Google Calendar", syncedFromGoogleCalendar_other: "{{count}} eventos sincronizados desde Google Calendar", }, sidebar: { collapseSidebar: "Contraer barra lateral", expandSidebar: "Expandir barra lateral", addGoogleAccount: "Añadir cuenta de Google", colorByMeetingType: "Color por tipo de reunión (externa, interna, 1:1, grupo, etc.)", googleCalendarSettings: "Ajustes de Google Calendar", hideCalendar: "Ocultar calendario", myCalendars: "Mis calendarios", nextYear: "Año siguiente", otherCalendars: "Otros calendarios", otherCalendarsDescription: "Añade el calendario de un compañero o suscríbete a una URL pública", previousYear: "Año anterior", showCalendar: "Mostrar calendario", }, integrations: { addIntegration: "Añadir integración", addIntegrations: "Añadir integraciones", apolloDescription: "Enriquecimiento de contactos y datos de empresa", apolloKeyPlaceholder: "API key de Apollo...", connectedCount: "Integraciones ({{connected}}/{{total}})", gongDescription: "Llamadas recientes e inteligencia conversacional", gongKeyPlaceholder: "API key de Gong o access_key:secret...", go: "Ir", hubSpotDescription: "Contactos, negocios y tickets de CRM", hubSpotKeyPlaceholder: "Token de app privada de HubSpot...", newIntegration: "Nueva integración", newIntegrationPlaceholder: "p. ej., Salesforce, Intercom...", openProviderSettings: "Abrir ajustes de {{provider}} →", pylonDescription: "Incidencias de soporte y datos de cuenta", pylonKeyPlaceholder: "Token de API de Pylon...", title: "Integraciones", toGetApiKey: "Para obtener tu API key:", updateKey: "Actualizar clave", }, googleConnect: { failedSave: "No se pudo guardar", clientId: "ID de cliente", clientSecret: "Secreto de cliente", credentialsConfiguredAbove: "Credenciales configuradas. Ya puedes conectar Google Calendar arriba.", hideManualEntry: "Ocultar entrada manual", orPasteManually: "O pegar manualmente", saveCredentials: "Guardar credenciales", }, }, "fr-FR": { apollo: { attendeeCount_one: "{{count}} personne", attendeeCount_many: "{{count}} personnes", attendeeCount_other: "{{count}} personnes", }, googleSync: { syncedCount_one: "{{count}} événement synchronisé", syncedCount_many: "{{count}} événements synchronisés", syncedCount_other: "{{count}} événements synchronisés", syncedFromGoogleCalendar_one: "{{count}} événement synchronisé depuis Google Calendar", syncedFromGoogleCalendar_many: "{{count}} événements synchronisés depuis Google Calendar", syncedFromGoogleCalendar_other: "{{count}} événements synchronisés depuis Google Calendar", }, }, "pt-BR": { apollo: { attendeeCount_one: "{{count}} pessoa", attendeeCount_many: "{{count}} pessoas", attendeeCount_other: "{{count}} pessoas", }, googleSync: { syncedCount_one: "{{count}} evento sincronizado", syncedCount_many: "{{count}} eventos sincronizados", syncedCount_other: "{{count}} eventos sincronizados", syncedFromGoogleCalendar_one: "{{count}} evento sincronizado do Google Calendar", syncedFromGoogleCalendar_many: "{{count}} eventos sincronizados do Google Calendar", syncedFromGoogleCalendar_other: "{{count}} eventos sincronizados do Google Calendar", }, }, "ar-SA": { apollo: { attendeeCount_zero: "{{count}} شخص", attendeeCount_one: "{{count}} شخص", attendeeCount_two: "{{count}} شخصان", attendeeCount_few: "{{count}} أشخاص", attendeeCount_many: "{{count}} شخصًا", attendeeCount_other: "{{count}} شخص", }, googleSync: { syncedCount_zero: "تمت مزامنة {{count}} حدث", syncedCount_one: "تمت مزامنة {{count}} حدث", syncedCount_two: "تمت مزامنة {{count}} حدثين", syncedCount_few: "تمت مزامنة {{count}} أحداث", syncedCount_many: "تمت مزامنة {{count}} حدثًا", syncedCount_other: "تمت مزامنة {{count}} حدث", syncedFromGoogleCalendar_zero: "تمت مزامنة {{count}} حدث من Google Calendar", syncedFromGoogleCalendar_one: "تمت مزامنة {{count}} حدث من Google Calendar", syncedFromGoogleCalendar_two: "تمت مزامنة {{count}} حدثين من Google Calendar", syncedFromGoogleCalendar_few: "تمت مزامنة {{count}} أحداث من Google Calendar", syncedFromGoogleCalendar_many: "تمت مزامنة {{count}} حدثًا من Google Calendar", syncedFromGoogleCalendar_other: "تمت مزامنة {{count}} حدث من Google Calendar", }, }, } satisfies Partial>; const translatedCalendarExactCleanup = { "zh-CN": { cloudUpgrade: { providers: { neon: { description: "无服务器 Postgres", }, }, }, integrations: { apolloKeyPlaceholder: "粘贴 Apollo API key...", hubSpotKeyPlaceholder: "粘贴 HubSpot private app token...", pylonKeyPlaceholder: "粘贴 Pylon API token...", steps: { apolloLogin: "登录 Apollo.io", apolloApi: "前往 Settings → Integrations → API", apolloConnect: '点击 "Connect" 生成密钥', hubSpotCreateApp: "创建带 CRM 范围的 private app", copyAccessToken: "复制 access token", gongGenerate: "生成 API 凭据", copyBearerToken: "复制 bearer token", }, }, }, "es-ES": { cloudUpgrade: { providers: { turso: { steps: { step1: "Instala la CLI: curl -sSfL https://get.tur.so/install.sh | bash", step2: "Regístrate o inicia sesión: turso auth login (abre el navegador)", step3: "Crea una base de datos: turso db create my-app", step4: "Copia la URL: turso db show my-app --url → empieza por libsql://", step5: "Crea un token de autenticación: turso db tokens create my-app → pégalo abajo", }, }, neon: { steps: { step1: "Ve a console.neon.tech y regístrate o inicia sesión", step2: 'Haz clic en "New Project" → elige nombre y región → haz clic en Create', step3: "En el panel del proyecto, busca Connection Details", step4: 'Selecciona la pestaña "Connection string" → copia la URL postgres://...', step5: "Pega abajo la cadena de conexión completa (incluida la contraseña)", }, }, supabase: { steps: { step1: "Ve a supabase.com/dashboard y regístrate o inicia sesión", step2: 'Haz clic en "New Project" → define un nombre y contraseña de base de datos → haz clic en Create', step3: "Espera a que termine el aprovisionamiento del proyecto (unos 30 s)", step4: "Ve a Project Settings → Database → Connection string", step5: 'Selecciona la pestaña "URI" → copia la cadena postgres://... (sustituye [YOUR-PASSWORD] por tu contraseña)', }, }, d1: { steps: { step1: "Ve a dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'Haz clic en "Create" → pon nombre a la base de datos → haz clic en Create', step3: "Copia el Database ID desde la página de resumen de la base de datos", step4: "Para el token de autenticación: ve a My Profile → API Tokens → Create Token", step5: 'Selecciona la plantilla "Edit Cloudflare Workers" → Create Token → cópialo', step6: "Usa d1:// y pega el API token abajo", }, }, }, }, integrations: { steps: { apolloLogin: "Inicia sesión en Apollo.io", apolloApi: "Ve a Settings → Integrations → API", apolloConnect: 'Haz clic en "Connect" para generar una clave', hubSpotCreateApp: "Crea una private app con permisos de CRM", copyAccessToken: "Copia el access token", gongGenerate: "Genera credenciales de API", copyBearerToken: "Copia el bearer token", }, }, }, "fr-FR": { agentSidebar: { emptyState: "Demandez-moi n’importe quoi sur votre calendrier", suggestions: { today: "Qu’y a-t-il dans mon calendrier aujourd’hui ?", findSlot: "Trouvez un créneau de 30 min avec Alice la semaine prochaine", scheduleZoom: "Planifiez un Zoom avec l’équipe vendredi", }, }, cloudUpgrade: { authToken: "Jeton d’authentification", connectedReloading: "Connexion réussie. Rechargement...", connectionFailed: "Échec de la connexion", databaseUrlRequired: "L’URL de la base de données est requise", savingCredentials: "Enregistrement des identifiants...", setupSteps: "Étapes de configuration", testAndConnect: "Tester et connecter", testingConnection: "Test de la connexion...", providers: { turso: { description: "SQLite en périphérie", steps: { step1: "Installez la CLI : curl -sSfL https://get.tur.so/install.sh | bash", step2: "Inscrivez-vous ou connectez-vous : turso auth login (ouvre le navigateur)", step3: "Créez une base de données : turso db create my-app", step4: "Copiez l’URL : turso db show my-app --url → commence par libsql://", step5: "Créez un jeton d’authentification : turso db tokens create my-app → collez-le ci-dessous", }, }, neon: { description: "Postgres sans serveur", steps: { step1: "Accédez à console.neon.tech et inscrivez-vous ou connectez-vous", step2: 'Cliquez sur "New Project" → choisissez un nom et une région → cliquez sur Create', step3: "Dans le tableau de bord du projet, trouvez le panneau Connection Details", step4: 'Sélectionnez l’onglet "Connection string" → copiez l’URL postgres://...', step5: "Collez ci-dessous toute la chaîne de connexion (mot de passe inclus)", }, }, supabase: { description: "Alternative open source à Firebase", steps: { step1: "Accédez à supabase.com/dashboard et inscrivez-vous ou connectez-vous", step2: 'Cliquez sur "New Project" → définissez un nom et un mot de passe de base de données → cliquez sur Create', step3: "Attendez la fin du provisionnement du projet (environ 30 s)", step4: "Accédez à Project Settings → Database → Connection string", step5: 'Sélectionnez l’onglet "URI" → copiez la chaîne postgres://... (remplacez [YOUR-PASSWORD] par votre mot de passe)', }, }, d1: { description: "SQLite sur l’edge de Cloudflare", steps: { step1: "Accédez à dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'Cliquez sur "Create" → nommez votre base de données → cliquez sur Create', step3: "Copiez le Database ID depuis la page de synthèse de la base de données", step4: "Pour le jeton d’authentification : accédez à My Profile → API Tokens → Create Token", step5: 'Sélectionnez le modèle "Edit Cloudflare Workers" → Create Token → copiez-le', step6: "Utilisez d1:// et collez le API token ci-dessous", }, }, }, }, apollo: { apiKeyPlaceholder: "Collez la API key Apollo...", attendeeCount_one: "{{count}} personne", attendeeCount_many: "{{count}} personnes", attendeeCount_other: "{{count}} personnes", connectApollo: "Connecter Apollo", description: "Ajoutez votre API key Apollo pour enrichir les profils des participants avec l’entreprise, le poste et les coordonnées.", howToGetKey: "Comment obtenir votre clé", openSettings: "Ouvrir les paramètres Apollo →", researchMeeting: "Rechercher sur la réunion", steps: { login: "Connectez-vous à Apollo.io", api: "Accédez à Settings → Integrations → API", connect: 'Cliquez sur "Connect" pour générer une clé', }, }, attendees: { addAnotherGuest: "Ajouter un autre invité", contacts: "Contacts", contactsReconnect: "L’accès aux contacts ou à l’annuaire doit être reconnecté.", directory: "Annuaire", guestOptions: "Options d’invité pour {{email}}", inviteEmail: "Inviter {{email}}", markOptional: "Marquer comme facultatif", markRequired: "Marquer comme obligatoire", optionalBadge: "Facultatif", otherContacts: "Autres contacts", removeAttendee: "Retirer {{email}}", searchingPeople: "Recherche de personnes", clearTimezone: "Effacer le fuseau horaire", setTimezone: "Définir le fuseau horaire…", }, findTime: { busy: "Occupé", noMatchingSlots: "Aucun créneau correspondant", refreshing: "Actualisation", suggestedTimes: "Horaires suggérés", takeoverDescription: "Consultez les disponibilités partagées et choisissez une heure de réunion.", you: "Vous", }, googleSync: { failed: "Échec de la synchronisation avec Google Calendar", syncGoogle: "Synchroniser Google", syncedCount_one: "{{count}} événement synchronisé", syncedCount_many: "{{count}} événements synchronisés", syncedCount_other: "{{count}} événements synchronisés", syncedFromGoogleCalendar_one: "{{count}} événement synchronisé depuis Google Calendar", syncedFromGoogleCalendar_many: "{{count}} événements synchronisés depuis Google Calendar", syncedFromGoogleCalendar_other: "{{count}} événements synchronisés depuis Google Calendar", }, sidebar: { collapseSidebar: "Réduire la barre latérale", expandSidebar: "Développer la barre latérale", addGoogleAccount: "Ajouter un compte Google", colorByMeetingType: "Couleur par type de réunion (externe, interne, 1:1, groupe, etc.)", googleCalendarSettings: "Paramètres Google Calendar", hideCalendar: "Masquer le calendrier", myCalendars: "Mes calendriers", nextYear: "Année suivante", otherCalendars: "Autres calendriers", otherCalendarsDescription: "Ajoutez le calendrier d’un coéquipier ou abonnez-vous à une URL de calendrier publique", previousYear: "Année précédente", showCalendar: "Afficher le calendrier", }, integrations: { addIntegration: "Ajouter une intégration", addIntegrations: "Ajouter des intégrations", apolloDescription: "Enrichissement des contacts et données d’entreprise", apolloKeyPlaceholder: "Collez la API key Apollo...", connectedCount: "Intégrations ({{connected}}/{{total}})", gongDescription: "Appels récents et intelligence conversationnelle", gongKeyPlaceholder: "API key Gong ou access_key:secret...", go: "Ouvrir", hubSpotDescription: "Contacts, transactions et tickets CRM", hubSpotKeyPlaceholder: "Collez le private app token HubSpot...", newIntegration: "Nouvelle intégration", newIntegrationPlaceholder: "p. ex. Salesforce, Intercom...", openProviderSettings: "Ouvrir les paramètres {{provider}} →", pylonDescription: "Tickets d’assistance et données de compte", pylonKeyPlaceholder: "Collez le API token Pylon...", title: "Intégrations", toGetApiKey: "Pour obtenir votre API key :", updateKey: "Mettre à jour la clé", steps: { apolloLogin: "Connectez-vous à Apollo.io", apolloApi: "Accédez à Settings → Integrations → API", apolloConnect: 'Cliquez sur "Connect" pour générer une clé', hubSpotCreateApp: "Créez une private app avec les portées CRM", copyAccessToken: "Copiez le access token", gongGenerate: "Générez des identifiants API", copyBearerToken: "Copiez le bearer token", }, }, googleConnect: { failedSave: "Échec de l’enregistrement", clientId: "ID client", clientSecret: "Secret client", credentialsConfiguredAbove: "Identifiants configurés. Vous pouvez maintenant connecter votre Google Calendar ci-dessus.", hideManualEntry: "Masquer la saisie manuelle", orPasteManually: "Ou coller manuellement", saveCredentials: "Enregistrer les identifiants", }, }, "de-DE": { agentSidebar: { emptyState: "Frage mich alles zu deinem Kalender", suggestions: { today: "Was steht heute in meinem Kalender?", findSlot: "Finde nächste Woche einen 30-Min.-Termin mit Alice", scheduleZoom: "Plane am Freitag ein Zoom mit dem Team", }, }, cloudUpgrade: { authToken: "Authentifizierungstoken", connectedReloading: "Erfolgreich verbunden. Wird neu geladen...", connectionFailed: "Verbindung fehlgeschlagen", databaseUrlRequired: "Datenbank-URL ist erforderlich", savingCredentials: "Anmeldedaten werden gespeichert...", setupSteps: "Einrichtungsschritte", testAndConnect: "Testen und verbinden", testingConnection: "Verbindung wird getestet...", providers: { turso: { description: "SQLite am Edge", steps: { step1: "CLI installieren: curl -sSfL https://get.tur.so/install.sh | bash", step2: "Registrieren/anmelden: turso auth login (öffnet den Browser)", step3: "Datenbank erstellen: turso db create my-app", step4: "URL kopieren: turso db show my-app --url → beginnt mit libsql://", step5: "Authentifizierungstoken erstellen: turso db tokens create my-app → unten einfügen", }, }, neon: { description: "Serverloses Postgres", steps: { step1: "Gehe zu console.neon.tech und registriere dich oder melde dich an", step2: 'Klicke auf "New Project" → wähle Name und Region → klicke auf Create', step3: "Suche im Projekt-Dashboard den Bereich Connection Details", step4: 'Wähle den Tab "Connection string" → kopiere die postgres://... URL', step5: "Füge unten die vollständige Verbindungszeichenfolge ein (inklusive Passwort)", }, }, supabase: { description: "Open-Source-Alternative zu Firebase", steps: { step1: "Gehe zu supabase.com/dashboard und registriere dich oder melde dich an", step2: 'Klicke auf "New Project" → setze Name und Datenbankpasswort → klicke auf Create', step3: "Warte, bis das Projekt bereitgestellt ist (ca. 30 Sekunden)", step4: "Gehe zu Project Settings → Database → Connection string", step5: 'Wähle den Tab "URI" → kopiere die postgres://... Zeichenfolge (ersetze [YOUR-PASSWORD] durch dein Datenbankpasswort)', }, }, d1: { description: "SQLite am Edge von Cloudflare", steps: { step1: "Gehe zu dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'Klicke auf "Create" → benenne deine Datenbank → klicke auf Create', step3: "Kopiere die Database ID von der Übersichtsseite der Datenbank", step4: "Für das Authentifizierungstoken: gehe zu My Profile → API Tokens → Create Token", step5: 'Wähle die Vorlage "Edit Cloudflare Workers" → Create Token → kopiere es', step6: "Verwende d1:// und füge unten den API token ein", }, }, }, }, apollo: { apiKeyPlaceholder: "Apollo API key einfügen...", attendeeCount_one: "{{count}} Person", attendeeCount_other: "{{count}} Personen", connectApollo: "Apollo verbinden", description: "Füge deinen Apollo API key hinzu, um Teilnehmerprofile mit Firma, Titel und Kontaktdaten anzureichern.", howToGetKey: "So erhältst du deinen Schlüssel", openSettings: "Apollo-Einstellungen öffnen →", researchMeeting: "Meeting recherchieren", steps: { login: "Bei Apollo.io anmelden", api: "Zu Settings → Integrations → API gehen", connect: 'Auf "Connect" klicken, um einen Schlüssel zu erzeugen', }, }, attendees: { addAnotherGuest: "Weiteren Gast hinzufügen", contacts: "Kontakte", contactsReconnect: "Kontakte oder Verzeichniszugriff müssen erneut verbunden werden.", directory: "Verzeichnis", guestOptions: "Gastoptionen für {{email}}", inviteEmail: "{{email}} einladen", markOptional: "Als optional markieren", markRequired: "Als erforderlich markieren", optionalBadge: "Optional", otherContacts: "Weitere Kontakte", removeAttendee: "{{email}} entfernen", searchingPeople: "Personen werden gesucht", clearTimezone: "Zeitzone löschen", setTimezone: "Zeitzone festlegen…", }, findTime: { busy: "Beschäftigt", noMatchingSlots: "Keine passenden Zeiten", refreshing: "Wird aktualisiert", suggestedTimes: "Vorgeschlagene Zeiten", takeoverDescription: "Prüfe gemeinsame Verfügbarkeiten und wähle eine Meetingzeit.", you: "Du", }, googleSync: { failed: "Synchronisierung mit Google Calendar fehlgeschlagen", syncGoogle: "Google synchronisieren", syncedCount_one: "{{count}} Termin synchronisiert", syncedCount_other: "{{count}} Termine synchronisiert", syncedFromGoogleCalendar_one: "{{count}} Termin aus Google Calendar synchronisiert", syncedFromGoogleCalendar_other: "{{count}} Termine aus Google Calendar synchronisiert", }, sidebar: { collapseSidebar: "Seitenleiste einklappen", expandSidebar: "Seitenleiste erweitern", addGoogleAccount: "Google-Konto hinzufügen", colorByMeetingType: "Nach Meetingtyp einfärben (extern, intern, 1:1, Gruppe usw.)", googleCalendarSettings: "Google Calendar-Einstellungen", hideCalendar: "Kalender ausblenden", myCalendars: "Meine Kalender", nextYear: "Nächstes Jahr", otherCalendars: "Andere Kalender", otherCalendarsDescription: "Kalender eines Teammitglieds hinzufügen oder eine öffentliche Kalender-URL abonnieren", previousYear: "Vorheriges Jahr", showCalendar: "Kalender anzeigen", }, integrations: { addIntegration: "Integration hinzufügen", addIntegrations: "Integrationen hinzufügen", apolloDescription: "Kontaktanreicherung und Unternehmensdaten", apolloKeyPlaceholder: "Apollo API key einfügen...", connectedCount: "Integrationen ({{connected}}/{{total}})", gongDescription: "Aktuelle Anrufe und Gesprächsintelligenz", gongKeyPlaceholder: "Gong API key oder access_key:secret einfügen...", go: "Los", hubSpotDescription: "CRM-Kontakte, Deals und Tickets", hubSpotKeyPlaceholder: "HubSpot private app token einfügen...", newIntegration: "Neue Integration", newIntegrationPlaceholder: "z. B. Salesforce, Intercom...", openProviderSettings: "{{provider}}-Einstellungen öffnen →", pylonDescription: "Supportfälle und Kontodaten", pylonKeyPlaceholder: "Pylon API token einfügen...", title: "Integrationen", toGetApiKey: "So erhältst du deinen API key:", updateKey: "Schlüssel aktualisieren", steps: { apolloLogin: "Bei Apollo.io anmelden", apolloApi: "Zu Settings → Integrations → API gehen", apolloConnect: 'Auf "Connect" klicken, um einen Schlüssel zu erzeugen', hubSpotCreateApp: "Private app mit CRM-Berechtigungen erstellen", copyAccessToken: "Access token kopieren", gongGenerate: "API-Anmeldedaten erzeugen", copyBearerToken: "Bearer token kopieren", }, }, googleConnect: { failedSave: "Speichern fehlgeschlagen", clientId: "Client-ID", clientSecret: "Client-Geheimnis", credentialsConfiguredAbove: "Anmeldedaten konfiguriert. Du kannst oben jetzt Google Calendar verbinden.", hideManualEntry: "Manuelle Eingabe ausblenden", orPasteManually: "Oder manuell einfügen", saveCredentials: "Anmeldedaten speichern", }, }, "ja-JP": { agentSidebar: { emptyState: "カレンダーについて何でも聞いてください", suggestions: { today: "今日の予定は?", findSlot: "来週 Alice と 30 分の空き時間を探す", scheduleZoom: "金曜日にチームとの Zoom を予定する", }, }, cloudUpgrade: { authToken: "認証トークン", connectedReloading: "接続しました。再読み込みしています...", connectionFailed: "接続に失敗しました", databaseUrlRequired: "データベース URL が必要です", savingCredentials: "認証情報を保存しています...", setupSteps: "セットアップ手順", testAndConnect: "テストして接続", testingConnection: "接続をテストしています...", providers: { turso: { description: "エッジの SQLite", steps: { step1: "CLI をインストール: curl -sSfL https://get.tur.so/install.sh | bash", step2: "登録/ログイン: turso auth login (ブラウザが開きます)", step3: "データベースを作成: turso db create my-app", step4: "URL をコピー: turso db show my-app --url → libsql:// で始まります", step5: "認証トークンを作成: turso db tokens create my-app → 下に貼り付けます", }, }, neon: { description: "サーバーレス Postgres", steps: { step1: "console.neon.tech に移動して登録またはログインします", step2: '"New Project" をクリック → 名前とリージョンを選択 → Create をクリック', step3: "プロジェクトダッシュボードで Connection Details パネルを見つけます", step4: '"Connection string" タブを選択 → postgres://... URL をコピーします', step5: "完全な接続文字列 (パスワードを含む) を下に貼り付けます", }, }, supabase: { description: "Firebase のオープンソース代替", steps: { step1: "supabase.com/dashboard に移動して登録またはログインします", step2: '"New Project" をクリック → 名前とデータベースパスワードを設定 → Create をクリック', step3: "プロジェクトのプロビジョニング完了を待ちます (約 30 秒)", step4: "Project Settings → Database → Connection string に移動します", step5: '"URI" タブを選択 → postgres://... 文字列をコピーします ([YOUR-PASSWORD] をデータベースパスワードに置き換えます)', }, }, d1: { description: "Cloudflare エッジの SQLite", steps: { step1: "dash.cloudflare.com → Workers & Pages → D1 SQL Database に移動します", step2: '"Create" をクリック → データベース名を入力 → Create をクリック', step3: "データベース概要ページから Database ID をコピーします", step4: "認証トークン: My Profile → API Tokens → Create Token に移動します", step5: '"Edit Cloudflare Workers" テンプレートを選択 → Create Token → コピーします', step6: "d1:// を使い、下に API token を貼り付けます", }, }, }, }, apollo: { apiKeyPlaceholder: "Apollo API key を貼り付け...", attendeeCount_other: "{{count}} 人", connectApollo: "Apollo に接続", description: "Apollo API key を追加して、参加者プロフィールに会社、役職、連絡先データを補完します。", howToGetKey: "キーの取得方法", openSettings: "Apollo 設定を開く →", researchMeeting: "会議を調査", steps: { login: "Apollo.io にログイン", api: "Settings → Integrations → API に移動", connect: '"Connect" をクリックしてキーを生成', }, }, attendees: { addAnotherGuest: "別のゲストを追加", contacts: "連絡先", contactsReconnect: "連絡先またはディレクトリアクセスの再接続が必要です。", directory: "ディレクトリ", guestOptions: "{{email}} のゲストオプション", inviteEmail: "{{email}} を招待", markOptional: "任意出席者にする", markRequired: "必須出席者にする", optionalBadge: "任意", otherContacts: "その他の連絡先", removeAttendee: "{{email}} を削除", searchingPeople: "ユーザーを検索中", clearTimezone: "タイムゾーンをクリア", setTimezone: "タイムゾーンを設定…", }, findTime: { busy: "予定あり", noMatchingSlots: "一致する時間がありません", refreshing: "更新中", suggestedTimes: "候補時間", takeoverDescription: "共有された空き時間を確認して会議時間を選択します。", you: "自分", }, googleSync: { failed: "Google Calendar との同期に失敗しました", syncGoogle: "Google を同期", syncedCount_other: "{{count}} 件の予定を同期しました", syncedFromGoogleCalendar_other: "Google Calendar から {{count}} 件の予定を同期しました", }, sidebar: { collapseSidebar: "サイドバーを折りたたむ", expandSidebar: "サイドバーを展開", addGoogleAccount: "Google アカウントを追加", colorByMeetingType: "会議タイプ別に色分け (外部、内部、1:1、グループなど)", googleCalendarSettings: "Google Calendar 設定", hideCalendar: "カレンダーを非表示", myCalendars: "マイカレンダー", nextYear: "翌年", otherCalendars: "その他のカレンダー", otherCalendarsDescription: "チームメイトのカレンダーを追加するか、公開カレンダー URL を購読します", previousYear: "前年", showCalendar: "カレンダーを表示", }, integrations: { addIntegration: "連携を追加", addIntegrations: "連携を追加", apolloDescription: "連絡先の補完と会社データ", apolloKeyPlaceholder: "Apollo API key を貼り付け...", connectedCount: "連携 ({{connected}}/{{total}})", gongDescription: "最近の通話と会話インテリジェンス", gongKeyPlaceholder: "Gong API key または access_key:secret を貼り付け...", go: "移動", hubSpotDescription: "CRM 連絡先、取引、チケット", hubSpotKeyPlaceholder: "HubSpot private app token を貼り付け...", newIntegration: "新しい連携", newIntegrationPlaceholder: "例: Salesforce、Intercom...", openProviderSettings: "{{provider}} 設定を開く →", pylonDescription: "サポート課題とアカウントデータ", pylonKeyPlaceholder: "Pylon API token を貼り付け...", title: "連携", toGetApiKey: "API key の取得方法:", updateKey: "キーを更新", steps: { apolloLogin: "Apollo.io にログイン", apolloApi: "Settings → Integrations → API に移動", apolloConnect: '"Connect" をクリックしてキーを生成', hubSpotCreateApp: "CRM スコープ付きの private app を作成", copyAccessToken: "access token をコピー", gongGenerate: "API 認証情報を生成", copyBearerToken: "bearer token をコピー", }, }, googleConnect: { failedSave: "保存に失敗しました", clientId: "クライアント ID", clientSecret: "クライアントシークレット", credentialsConfiguredAbove: "認証情報が設定されました。上で Google Calendar に接続できます。", hideManualEntry: "手動入力を非表示", orPasteManually: "または手動で貼り付け", saveCredentials: "認証情報を保存", }, }, "ko-KR": { agentSidebar: { emptyState: "캘린더에 대해 무엇이든 물어보세요", suggestions: { today: "오늘 내 캘린더에 무엇이 있나요?", findSlot: "다음 주 Alice와 30분 빈 시간을 찾아줘", scheduleZoom: "금요일에 팀과 Zoom 일정을 잡아줘", }, }, cloudUpgrade: { authToken: "인증 토큰", connectedReloading: "연결되었습니다. 다시 불러오는 중...", connectionFailed: "연결 실패", databaseUrlRequired: "데이터베이스 URL이 필요합니다", savingCredentials: "자격 증명을 저장하는 중...", setupSteps: "설정 단계", testAndConnect: "테스트 및 연결", testingConnection: "연결을 테스트하는 중...", providers: { turso: { description: "엣지의 SQLite", steps: { step1: "CLI 설치: curl -sSfL https://get.tur.so/install.sh | bash", step2: "가입/로그인: turso auth login (브라우저가 열림)", step3: "데이터베이스 만들기: turso db create my-app", step4: "URL 복사: turso db show my-app --url → libsql:// 로 시작", step5: "인증 토큰 만들기: turso db tokens create my-app → 아래에 붙여넣기", }, }, neon: { description: "서버리스 Postgres", steps: { step1: "console.neon.tech로 이동해 가입하거나 로그인하세요", step2: '"New Project" 클릭 → 이름과 리전 선택 → Create 클릭', step3: "프로젝트 대시보드에서 Connection Details 패널을 찾으세요", step4: '"Connection string" 탭 선택 → postgres://... URL 복사', step5: "전체 연결 문자열(비밀번호 포함)을 아래에 붙여넣으세요", }, }, supabase: { description: "Firebase의 오픈 소스 대안", steps: { step1: "supabase.com/dashboard로 이동해 가입하거나 로그인하세요", step2: '"New Project" 클릭 → 이름과 데이터베이스 비밀번호 설정 → Create 클릭', step3: "프로젝트 프로비저닝이 끝날 때까지 기다리세요(약 30초)", step4: "Project Settings → Database → Connection string으로 이동하세요", step5: '"URI" 탭 선택 → postgres://... 문자열 복사([YOUR-PASSWORD]를 데이터베이스 비밀번호로 교체)', }, }, d1: { description: "Cloudflare 엣지의 SQLite", steps: { step1: "dash.cloudflare.com → Workers & Pages → D1 SQL Database로 이동하세요", step2: '"Create" 클릭 → 데이터베이스 이름 지정 → Create 클릭', step3: "데이터베이스 개요 페이지에서 Database ID를 복사하세요", step4: "인증 토큰: My Profile → API Tokens → Create Token으로 이동하세요", step5: '"Edit Cloudflare Workers" 템플릿 선택 → Create Token → 복사', step6: "d1://를 사용하고 아래에 API token을 붙여넣으세요", }, }, }, }, apollo: { apiKeyPlaceholder: "Apollo API key 붙여넣기...", attendeeCount_other: "{{count}}명", connectApollo: "Apollo 연결", description: "Apollo API key를 추가해 참석자 프로필에 회사, 직함, 연락처 데이터를 보강하세요.", howToGetKey: "키를 받는 방법", openSettings: "Apollo 설정 열기 →", researchMeeting: "회의 조사", steps: { login: "Apollo.io에 로그인", api: "Settings → Integrations → API로 이동", connect: '"Connect"를 클릭해 키 생성', }, }, attendees: { addAnotherGuest: "다른 게스트 추가", contacts: "연락처", contactsReconnect: "연락처 또는 디렉터리 액세스를 다시 연결해야 합니다.", directory: "디렉터리", guestOptions: "{{email}} 게스트 옵션", inviteEmail: "{{email}} 초대", markOptional: "선택으로 표시", markRequired: "필수로 표시", optionalBadge: "선택", otherContacts: "기타 연락처", removeAttendee: "{{email}} 제거", searchingPeople: "사람 검색 중", clearTimezone: "시간대 지우기", setTimezone: "시간대 설정…", }, findTime: { busy: "바쁨", noMatchingSlots: "일치하는 시간이 없습니다", refreshing: "새로고침 중", suggestedTimes: "추천 시간", takeoverDescription: "공유된 가능 시간을 검토하고 회의 시간을 선택하세요.", you: "나", }, googleSync: { failed: "Google Calendar와 동기화하지 못했습니다", syncGoogle: "Google 동기화", syncedCount_other: "이벤트 {{count}}개 동기화됨", syncedFromGoogleCalendar_other: "Google Calendar에서 이벤트 {{count}}개 동기화됨", }, sidebar: { collapseSidebar: "사이드바 접기", expandSidebar: "사이드바 펼치기", addGoogleAccount: "Google 계정 추가", colorByMeetingType: "회의 유형별 색상 지정(외부, 내부, 1:1, 그룹 등)", googleCalendarSettings: "Google Calendar 설정", hideCalendar: "캘린더 숨기기", myCalendars: "내 캘린더", nextYear: "다음 해", otherCalendars: "다른 캘린더", otherCalendarsDescription: "팀원의 캘린더를 추가하거나 공개 캘린더 URL을 구독하세요", previousYear: "이전 해", showCalendar: "캘린더 표시", }, integrations: { addIntegration: "연동 추가", addIntegrations: "연동 추가", apolloDescription: "연락처 보강 및 회사 데이터", apolloKeyPlaceholder: "Apollo API key 붙여넣기...", connectedCount: "연동 ({{connected}}/{{total}})", gongDescription: "최근 통화 및 대화 인텔리전스", gongKeyPlaceholder: "Gong API key 또는 access_key:secret 붙여넣기...", go: "이동", hubSpotDescription: "CRM 연락처, 거래 및 티켓", hubSpotKeyPlaceholder: "HubSpot private app token 붙여넣기...", newIntegration: "새 연동", newIntegrationPlaceholder: "예: Salesforce, Intercom...", openProviderSettings: "{{provider}} 설정 열기 →", pylonDescription: "지원 이슈 및 계정 데이터", pylonKeyPlaceholder: "Pylon API token 붙여넣기...", title: "연동", toGetApiKey: "API key를 받는 방법:", updateKey: "키 업데이트", steps: { apolloLogin: "Apollo.io에 로그인", apolloApi: "Settings → Integrations → API로 이동", apolloConnect: '"Connect"를 클릭해 키 생성', hubSpotCreateApp: "CRM 범위가 있는 private app 만들기", copyAccessToken: "access token 복사", gongGenerate: "API 자격 증명 생성", copyBearerToken: "bearer token 복사", }, }, googleConnect: { failedSave: "저장 실패", clientId: "클라이언트 ID", clientSecret: "클라이언트 보안 비밀", credentialsConfiguredAbove: "자격 증명이 설정되었습니다. 이제 위에서 Google Calendar를 연결할 수 있습니다.", hideManualEntry: "수동 입력 숨기기", orPasteManually: "또는 수동으로 붙여넣기", saveCredentials: "자격 증명 저장", }, }, "pt-BR": { agentSidebar: { emptyState: "Pergunte-me qualquer coisa sobre seu calendário", suggestions: { today: "O que há no meu calendário hoje?", findSlot: "Encontre um horário de 30 min com Alice na próxima semana", scheduleZoom: "Agende um Zoom com a equipe na sexta-feira", }, }, cloudUpgrade: { authToken: "Token de autenticação", connectedReloading: "Conectado com sucesso. Recarregando...", connectionFailed: "Falha na conexão", databaseUrlRequired: "A URL do banco de dados é obrigatória", savingCredentials: "Salvando credenciais...", setupSteps: "Etapas de configuração", testAndConnect: "Testar e conectar", testingConnection: "Testando conexão...", providers: { turso: { description: "SQLite na borda", steps: { step1: "Instale a CLI: curl -sSfL https://get.tur.so/install.sh | bash", step2: "Cadastre-se/faça login: turso auth login (abre o navegador)", step3: "Crie um banco de dados: turso db create my-app", step4: "Copie a URL: turso db show my-app --url → começa com libsql://", step5: "Crie um token de autenticação: turso db tokens create my-app → cole abaixo", }, }, neon: { description: "Postgres serverless", steps: { step1: "Acesse console.neon.tech e cadastre-se ou faça login", step2: 'Clique em "New Project" → escolha nome e região → clique em Create', step3: "No painel do projeto, encontre Connection Details", step4: 'Selecione a aba "Connection string" → copie a URL postgres://...', step5: "Cole abaixo a string de conexão completa (incluindo a senha)", }, }, supabase: { description: "Alternativa open source ao Firebase", steps: { step1: "Acesse supabase.com/dashboard e cadastre-se ou faça login", step2: 'Clique em "New Project" → defina nome e senha do banco → clique em Create', step3: "Aguarde o provisionamento do projeto terminar (cerca de 30 s)", step4: "Acesse Project Settings → Database → Connection string", step5: 'Selecione a aba "URI" → copie a string postgres://... (troque [YOUR-PASSWORD] pela senha do banco)', }, }, d1: { description: "SQLite na borda da Cloudflare", steps: { step1: "Acesse dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'Clique em "Create" → dê um nome ao banco → clique em Create', step3: "Copie o Database ID na página de visão geral do banco", step4: "Para o token de autenticação: acesse My Profile → API Tokens → Create Token", step5: 'Selecione o modelo "Edit Cloudflare Workers" → Create Token → copie-o', step6: "Use d1:// e cole o API token abaixo", }, }, }, }, apollo: { apiKeyPlaceholder: "Cole a API key da Apollo...", attendeeCount_one: "{{count}} pessoa", attendeeCount_many: "{{count}} pessoas", attendeeCount_other: "{{count}} pessoas", connectApollo: "Conectar Apollo", description: "Adicione sua API key da Apollo para enriquecer perfis de participantes com empresa, cargo e dados de contato.", howToGetKey: "Como obter sua chave", openSettings: "Abrir configurações da Apollo →", researchMeeting: "Pesquisar reunião", steps: { login: "Faça login em Apollo.io", api: "Acesse Settings → Integrations → API", connect: 'Clique em "Connect" para gerar uma chave', }, }, attendees: { addAnotherGuest: "Adicionar outro convidado", contacts: "Contatos", contactsReconnect: "O acesso a contatos ou diretório precisa ser reconectado.", directory: "Diretório", guestOptions: "Opções de convidado para {{email}}", inviteEmail: "Convidar {{email}}", markOptional: "Marcar como opcional", markRequired: "Marcar como obrigatório", optionalBadge: "Opcional", otherContacts: "Outros contatos", removeAttendee: "Remover {{email}}", searchingPeople: "Pesquisando pessoas", clearTimezone: "Limpar fuso horário", setTimezone: "Definir fuso horário…", }, findTime: { busy: "Ocupado", noMatchingSlots: "Nenhum horário correspondente", refreshing: "Atualizando", suggestedTimes: "Horários sugeridos", takeoverDescription: "Revise a disponibilidade compartilhada e escolha um horário de reunião.", you: "Você", }, googleSync: { failed: "Falha ao sincronizar com Google Calendar", syncGoogle: "Sincronizar Google", syncedCount_one: "{{count}} evento sincronizado", syncedCount_many: "{{count}} eventos sincronizados", syncedCount_other: "{{count}} eventos sincronizados", syncedFromGoogleCalendar_one: "{{count}} evento sincronizado do Google Calendar", syncedFromGoogleCalendar_many: "{{count}} eventos sincronizados do Google Calendar", syncedFromGoogleCalendar_other: "{{count}} eventos sincronizados do Google Calendar", }, sidebar: { collapseSidebar: "Recolher barra lateral", expandSidebar: "Expandir barra lateral", addGoogleAccount: "Adicionar conta Google", colorByMeetingType: "Colorir por tipo de reunião (externa, interna, 1:1, grupo etc.)", googleCalendarSettings: "Configurações do Google Calendar", hideCalendar: "Ocultar calendário", myCalendars: "Meus calendários", nextYear: "Próximo ano", otherCalendars: "Outros calendários", otherCalendarsDescription: "Adicione o calendário de alguém da equipe ou assine uma URL de calendário pública", previousYear: "Ano anterior", showCalendar: "Mostrar calendário", }, integrations: { addIntegration: "Adicionar integração", addIntegrations: "Adicionar integrações", apolloDescription: "Enriquecimento de contatos e dados da empresa", apolloKeyPlaceholder: "Cole a API key da Apollo...", connectedCount: "Integrações ({{connected}}/{{total}})", gongDescription: "Chamadas recentes e inteligência de conversas", gongKeyPlaceholder: "Cole a API key da Gong ou access_key:secret...", go: "Ir", hubSpotDescription: "Contatos, negócios e tickets do CRM", hubSpotKeyPlaceholder: "Cole o private app token da HubSpot...", newIntegration: "Nova integração", newIntegrationPlaceholder: "ex.: Salesforce, Intercom...", openProviderSettings: "Abrir configurações de {{provider}} →", pylonDescription: "Problemas de suporte e dados da conta", pylonKeyPlaceholder: "Cole o API token da Pylon...", title: "Integrações", toGetApiKey: "Para obter sua API key:", updateKey: "Atualizar chave", steps: { apolloLogin: "Faça login em Apollo.io", apolloApi: "Acesse Settings → Integrations → API", apolloConnect: 'Clique em "Connect" para gerar uma chave', hubSpotCreateApp: "Crie uma private app com escopos de CRM", copyAccessToken: "Copie o access token", gongGenerate: "Gere credenciais de API", copyBearerToken: "Copie o bearer token", }, }, googleConnect: { failedSave: "Falha ao salvar", clientId: "ID do cliente", clientSecret: "Segredo do cliente", credentialsConfiguredAbove: "Credenciais configuradas. Agora você pode conectar o Google Calendar acima.", hideManualEntry: "Ocultar entrada manual", orPasteManually: "Ou colar manualmente", saveCredentials: "Salvar credenciais", }, }, "hi-IN": { agentSidebar: { emptyState: "अपने कैलेंडर के बारे में कुछ भी पूछें", suggestions: { today: "आज मेरे कैलेंडर में क्या है?", findSlot: "अगले सप्ताह Alice के साथ 30 मिनट का समय खोजें", scheduleZoom: "शुक्रवार को टीम के साथ Zoom शेड्यूल करें", }, }, cloudUpgrade: { authToken: "प्रमाणीकरण टोकन", connectedReloading: "सफलतापूर्वक कनेक्ट हुआ। फिर से लोड हो रहा है...", connectionFailed: "कनेक्शन विफल रहा", databaseUrlRequired: "डेटाबेस URL आवश्यक है", savingCredentials: "क्रेडेंशियल सहेजे जा रहे हैं...", setupSteps: "सेटअप चरण", testAndConnect: "जांचें और कनेक्ट करें", testingConnection: "कनेक्शन जांचा जा रहा है...", providers: { turso: { description: "एज पर SQLite", steps: { step1: "CLI इंस्टॉल करें: curl -sSfL https://get.tur.so/install.sh | bash", step2: "साइन अप/लॉग इन करें: turso auth login (ब्राउज़र खुलता है)", step3: "डेटाबेस बनाएं: turso db create my-app", step4: "URL कॉपी करें: turso db show my-app --url → libsql:// से शुरू होता है", step5: "प्रमाणीकरण टोकन बनाएं: turso db tokens create my-app → नीचे पेस्ट करें", }, }, neon: { description: "सर्वरलेस Postgres", steps: { step1: "console.neon.tech पर जाएं और साइन अप या लॉग इन करें", step2: '"New Project" पर क्लिक करें → नाम और क्षेत्र चुनें → Create पर क्लिक करें', step3: "प्रोजेक्ट डैशबोर्ड पर Connection Details पैनल खोजें", step4: '"Connection string" टैब चुनें → postgres://... URL कॉपी करें', step5: "पूरा कनेक्शन स्ट्रिंग (पासवर्ड सहित) नीचे पेस्ट करें", }, }, supabase: { description: "Firebase का ओपन सोर्स विकल्प", steps: { step1: "supabase.com/dashboard पर जाएं और साइन अप या लॉग इन करें", step2: '"New Project" पर क्लिक करें → नाम और डेटाबेस पासवर्ड सेट करें → Create पर क्लिक करें', step3: "प्रोजेक्ट प्रोविजनिंग पूरी होने तक प्रतीक्षा करें (लगभग 30 सेकंड)", step4: "Project Settings → Database → Connection string पर जाएं", step5: '"URI" टैब चुनें → postgres://... स्ट्रिंग कॉपी करें ([YOUR-PASSWORD] को डेटाबेस पासवर्ड से बदलें)', }, }, d1: { description: "Cloudflare के एज पर SQLite", steps: { step1: "dash.cloudflare.com → Workers & Pages → D1 SQL Database पर जाएं", step2: '"Create" पर क्लिक करें → डेटाबेस का नाम दें → Create पर क्लिक करें', step3: "डेटाबेस अवलोकन पेज से Database ID कॉपी करें", step4: "प्रमाणीकरण टोकन के लिए: My Profile → API Tokens → Create Token पर जाएं", step5: '"Edit Cloudflare Workers" टेम्पलेट चुनें → Create Token → इसे कॉपी करें', step6: "d1:// का उपयोग करें और नीचे API token पेस्ट करें", }, }, }, }, apollo: { apiKeyPlaceholder: "Apollo API key पेस्ट करें...", attendeeCount_one: "{{count}} व्यक्ति", attendeeCount_other: "{{count}} लोग", connectApollo: "Apollo कनेक्ट करें", description: "कंपनी, पद और संपर्क डेटा से सहभागी प्रोफाइल समृद्ध करने के लिए अपनी Apollo API key जोड़ें।", howToGetKey: "अपनी कुंजी कैसे प्राप्त करें", openSettings: "Apollo सेटिंग खोलें →", researchMeeting: "मीटिंग पर शोध करें", steps: { login: "Apollo.io में लॉग इन करें", api: "Settings → Integrations → API पर जाएं", connect: 'कुंजी बनाने के लिए "Connect" पर क्लिक करें', }, }, attendees: { addAnotherGuest: "एक और अतिथि जोड़ें", contacts: "संपर्क", contactsReconnect: "संपर्क या डायरेक्टरी एक्सेस को फिर से कनेक्ट करना होगा।", directory: "डायरेक्टरी", guestOptions: "{{email}} के लिए अतिथि विकल्प", inviteEmail: "{{email}} को आमंत्रित करें", markOptional: "वैकल्पिक के रूप में चिह्नित करें", markRequired: "आवश्यक के रूप में चिह्नित करें", optionalBadge: "वैकल्पिक", otherContacts: "अन्य संपर्क", removeAttendee: "{{email}} हटाएं", searchingPeople: "लोग खोजे जा रहे हैं", clearTimezone: "समय क्षेत्र साफ़ करें", setTimezone: "समय क्षेत्र सेट करें…", }, findTime: { busy: "व्यस्त", noMatchingSlots: "कोई मिलान वाला समय नहीं", refreshing: "रीफ़्रेश हो रहा है", suggestedTimes: "सुझाए गए समय", takeoverDescription: "साझा उपलब्धता की समीक्षा करें और मीटिंग समय चुनें।", you: "आप", }, googleSync: { failed: "Google Calendar के साथ सिंक विफल रहा", syncGoogle: "Google सिंक करें", syncedCount_one: "{{count}} इवेंट सिंक हुआ", syncedCount_other: "{{count}} इवेंट सिंक हुए", syncedFromGoogleCalendar_one: "Google Calendar से {{count}} इवेंट सिंक हुआ", syncedFromGoogleCalendar_other: "Google Calendar से {{count}} इवेंट सिंक हुए", }, sidebar: { collapseSidebar: "साइडबार समेटें", expandSidebar: "साइडबार फैलाएं", addGoogleAccount: "Google खाता जोड़ें", colorByMeetingType: "मीटिंग प्रकार से रंग दें (बाहरी, आंतरिक, 1:1, समूह आदि)", googleCalendarSettings: "Google Calendar सेटिंग", hideCalendar: "कैलेंडर छिपाएं", myCalendars: "मेरे कैलेंडर", nextYear: "अगला वर्ष", otherCalendars: "अन्य कैलेंडर", otherCalendarsDescription: "टीममेट का कैलेंडर जोड़ें या सार्वजनिक कैलेंडर URL की सदस्यता लें", previousYear: "पिछला वर्ष", showCalendar: "कैलेंडर दिखाएं", }, integrations: { addIntegration: "इंटीग्रेशन जोड़ें", addIntegrations: "इंटीग्रेशन जोड़ें", apolloDescription: "संपर्क समृद्धि और कंपनी डेटा", apolloKeyPlaceholder: "Apollo API key पेस्ट करें...", connectedCount: "इंटीग्रेशन ({{connected}}/{{total}})", gongDescription: "हाल की कॉल और बातचीत इंटेलिजेंस", gongKeyPlaceholder: "Gong API key या access_key:secret पेस्ट करें...", go: "जाएं", hubSpotDescription: "CRM संपर्क, डील और टिकट", hubSpotKeyPlaceholder: "HubSpot private app token पेस्ट करें...", newIntegration: "नया इंटीग्रेशन", newIntegrationPlaceholder: "जैसे Salesforce, Intercom...", openProviderSettings: "{{provider}} सेटिंग खोलें →", pylonDescription: "सपोर्ट मुद्दे और खाता डेटा", pylonKeyPlaceholder: "Pylon API token पेस्ट करें...", title: "इंटीग्रेशन", toGetApiKey: "अपनी API key पाने के लिए:", updateKey: "कुंजी अपडेट करें", steps: { apolloLogin: "Apollo.io में लॉग इन करें", apolloApi: "Settings → Integrations → API पर जाएं", apolloConnect: 'कुंजी बनाने के लिए "Connect" पर क्लिक करें', hubSpotCreateApp: "CRM scopes वाली private app बनाएं", copyAccessToken: "access token कॉपी करें", gongGenerate: "API क्रेडेंशियल बनाएं", copyBearerToken: "bearer token कॉपी करें", }, }, googleConnect: { failedSave: "सहेजना विफल रहा", clientId: "क्लाइंट ID", clientSecret: "क्लाइंट सीक्रेट", credentialsConfiguredAbove: "क्रेडेंशियल कॉन्फ़िगर हो गए हैं। अब आप ऊपर Google Calendar कनेक्ट कर सकते हैं।", hideManualEntry: "मैन्युअल एंट्री छिपाएं", orPasteManually: "या मैन्युअल रूप से पेस्ट करें", saveCredentials: "क्रेडेंशियल सहेजें", }, }, "ar-SA": { agentSidebar: { emptyState: "اسألني أي شيء عن تقويمك", suggestions: { today: "ماذا يوجد في تقويمي اليوم؟", findSlot: "ابحث عن وقت مدته 30 دقيقة مع Alice الأسبوع القادم", scheduleZoom: "جدول Zoom مع الفريق يوم الجمعة", }, }, cloudUpgrade: { authToken: "رمز المصادقة", connectedReloading: "تم الاتصال بنجاح. جارٍ إعادة التحميل...", connectionFailed: "فشل الاتصال", databaseUrlRequired: "يلزم إدخال URL قاعدة البيانات", savingCredentials: "جارٍ حفظ بيانات الاعتماد...", setupSteps: "خطوات الإعداد", testAndConnect: "اختبار والاتصال", testingConnection: "جارٍ اختبار الاتصال...", providers: { turso: { description: "SQLite على الحافة", steps: { step1: "ثبّت CLI: curl -sSfL https://get.tur.so/install.sh | bash", step2: "سجّل أو ادخل: turso auth login (يفتح المتصفح)", step3: "أنشئ قاعدة بيانات: turso db create my-app", step4: "انسخ URL: turso db show my-app --url → يبدأ بـ libsql://", step5: "أنشئ رمز مصادقة: turso db tokens create my-app → الصقه أدناه", }, }, neon: { description: "Postgres بلا خادم", steps: { step1: "انتقل إلى console.neon.tech وسجّل أو ادخل", step2: 'انقر على "New Project" → اختر اسمًا ومنطقة → انقر على Create', step3: "في لوحة المشروع، ابحث عن لوحة Connection Details", step4: 'حدد تبويب "Connection string" → انسخ URL الذي يبدأ بـ postgres://...', step5: "الصق سلسلة الاتصال الكاملة أدناه (بما في ذلك كلمة المرور)", }, }, supabase: { description: "بديل Firebase مفتوح المصدر", steps: { step1: "انتقل إلى supabase.com/dashboard وسجّل أو ادخل", step2: 'انقر على "New Project" → عيّن اسمًا وكلمة مرور قاعدة البيانات → انقر على Create', step3: "انتظر حتى يكتمل تجهيز المشروع (نحو 30 ثانية)", step4: "انتقل إلى Project Settings → Database → Connection string", step5: 'حدد تبويب "URI" → انسخ سلسلة postgres://... (استبدل [YOUR-PASSWORD] بكلمة مرور قاعدة البيانات)', }, }, d1: { description: "SQLite على حافة Cloudflare", steps: { step1: "انتقل إلى dash.cloudflare.com → Workers & Pages → D1 SQL Database", step2: 'انقر على "Create" → سمّ قاعدة البيانات → انقر على Create', step3: "انسخ Database ID من صفحة نظرة عامة على قاعدة البيانات", step4: "لرمز المصادقة: انتقل إلى My Profile → API Tokens → Create Token", step5: 'حدد قالب "Edit Cloudflare Workers" → Create Token → انسخه', step6: "استخدم d1:// والصق API token أدناه", }, }, }, }, apollo: { apiKeyPlaceholder: "الصق Apollo API key...", attendeeCount_zero: "{{count}} شخص", attendeeCount_one: "{{count}} شخص", attendeeCount_two: "{{count}} شخصان", attendeeCount_few: "{{count}} أشخاص", attendeeCount_many: "{{count}} شخصًا", attendeeCount_other: "{{count}} شخص", connectApollo: "اتصال Apollo", description: "أضف Apollo API key لإثراء ملفات الحضور بالشركة والمسمى وبيانات الاتصال.", howToGetKey: "كيفية الحصول على المفتاح", openSettings: "فتح إعدادات Apollo →", researchMeeting: "بحث عن الاجتماع", steps: { login: "سجّل الدخول إلى Apollo.io", api: "انتقل إلى Settings → Integrations → API", connect: 'انقر على "Connect" لإنشاء مفتاح', }, }, attendees: { addAnotherGuest: "إضافة ضيف آخر", contacts: "جهات الاتصال", contactsReconnect: "يلزم إعادة توصيل الوصول إلى جهات الاتصال أو الدليل.", directory: "الدليل", guestOptions: "خيارات الضيف لـ {{email}}", inviteEmail: "دعوة {{email}}", markOptional: "تعيين كاختياري", markRequired: "تعيين كإلزامي", optionalBadge: "اختياري", otherContacts: "جهات اتصال أخرى", removeAttendee: "إزالة {{email}}", searchingPeople: "جارٍ البحث عن أشخاص", clearTimezone: "مسح المنطقة الزمنية", setTimezone: "تعيين المنطقة الزمنية…", }, findTime: { busy: "مشغول", noMatchingSlots: "لا توجد أوقات مطابقة", refreshing: "جارٍ التحديث", suggestedTimes: "الأوقات المقترحة", takeoverDescription: "راجع التوفر المشترك واختر وقت الاجتماع.", you: "أنت", }, googleSync: { failed: "فشلت المزامنة مع Google Calendar", syncGoogle: "مزامنة Google", syncedCount_zero: "تمت مزامنة {{count}} حدث", syncedCount_one: "تمت مزامنة {{count}} حدث", syncedCount_two: "تمت مزامنة {{count}} حدثين", syncedCount_few: "تمت مزامنة {{count}} أحداث", syncedCount_many: "تمت مزامنة {{count}} حدثًا", syncedCount_other: "تمت مزامنة {{count}} حدث", syncedFromGoogleCalendar_zero: "تمت مزامنة {{count}} حدث من Google Calendar", syncedFromGoogleCalendar_one: "تمت مزامنة {{count}} حدث من Google Calendar", syncedFromGoogleCalendar_two: "تمت مزامنة {{count}} حدثين من Google Calendar", syncedFromGoogleCalendar_few: "تمت مزامنة {{count}} أحداث من Google Calendar", syncedFromGoogleCalendar_many: "تمت مزامنة {{count}} حدثًا من Google Calendar", syncedFromGoogleCalendar_other: "تمت مزامنة {{count}} حدث من Google Calendar", }, sidebar: { collapseSidebar: "طي الشريط الجانبي", expandSidebar: "توسيع الشريط الجانبي", addGoogleAccount: "إضافة حساب Google", colorByMeetingType: "التلوين حسب نوع الاجتماع (خارجي، داخلي، 1:1، مجموعة، إلخ)", googleCalendarSettings: "إعدادات Google Calendar", hideCalendar: "إخفاء التقويم", myCalendars: "تقويماتي", nextYear: "السنة التالية", otherCalendars: "تقويمات أخرى", otherCalendarsDescription: "أضف تقويم زميل أو اشترك في URL تقويم عام", previousYear: "السنة السابقة", showCalendar: "إظهار التقويم", }, integrations: { addIntegration: "إضافة تكامل", addIntegrations: "إضافة تكاملات", apolloDescription: "إثراء جهات الاتصال وبيانات الشركات", apolloKeyPlaceholder: "الصق Apollo API key...", connectedCount: "التكاملات ({{connected}}/{{total}})", gongDescription: "المكالمات الحديثة وذكاء المحادثات", gongKeyPlaceholder: "الصق Gong API key أو access_key:secret...", go: "انتقال", hubSpotDescription: "جهات اتصال وصفقات وتذاكر CRM", hubSpotKeyPlaceholder: "الصق HubSpot private app token...", newIntegration: "تكامل جديد", newIntegrationPlaceholder: "مثل Salesforce أو Intercom...", openProviderSettings: "فتح إعدادات {{provider}} →", pylonDescription: "مشكلات الدعم وبيانات الحساب", pylonKeyPlaceholder: "الصق Pylon API token...", title: "التكاملات", toGetApiKey: "للحصول على API key:", updateKey: "تحديث المفتاح", steps: { apolloLogin: "سجّل الدخول إلى Apollo.io", apolloApi: "انتقل إلى Settings → Integrations → API", apolloConnect: 'انقر على "Connect" لإنشاء مفتاح', hubSpotCreateApp: "أنشئ private app بنطاقات CRM", copyAccessToken: "انسخ access token", gongGenerate: "أنشئ بيانات اعتماد API", copyBearerToken: "انسخ bearer token", }, }, googleConnect: { failedSave: "فشل الحفظ", clientId: "معرّف العميل", clientSecret: "سر العميل", credentialsConfiguredAbove: "تم تكوين بيانات الاعتماد. يمكنك الآن توصيل Google Calendar أعلاه.", hideManualEntry: "إخفاء الإدخال اليدوي", orPasteManually: "أو الصق يدويًا", saveCredentials: "حفظ بيانات الاعتماد", }, }, } satisfies Partial>; const translatedCalendarRawBurnDown = { "zh-CN": { bookingLinks: { booking: "正在预约...", bookingConfirmed: "预约已确认", bookAnother: "再预约一次", cancelOrReschedule: "取消或重新安排", confirmationSent: "你已完成!确认邮件已发送到你的邮箱。", fieldFormatError: "{{label}} 与预期格式不匹配", fieldRequired: "{{label}} 为必填项", meetingLink: "会议链接", needToMakeChanges: "需要更改吗?", no: "否", noAvailableSlotsForDate: "此日期没有可用时段。", yes: "是", yourName: "你的姓名", allCount: "全部({{count}})", bookAMeeting: "预约会议", availabilityDescription: "设置你的预约可用时间。", bookingCancelled: "预约已取消", bookingLinkNotFound: "未找到预约链接", bookingPageSlug: "预约页面 slug", cancelBooking: "取消预约", cancelled: "已取消", cancelledCount: "已取消({{count}})", confirmation: "确认", confirmed: "已确认", confirmedCount: "已确认({{count}})", confirming: "确认中", dateAndTime: "日期和时间", dateSelection: "日期选择", defaultDescription: "选择适合你的时间。", detailCount_one: "{{count}} 条详情", detailCount_other: "{{count}} 条详情", details: "详情", durationSelection: "时长选择", failedToCancelBooking: "取消预约失败", failedToCreateBooking: "创建预约失败", goToStep: "前往{{step}}", meetingTypeUnavailable: "此会议类型可能已被移除或不再可用。", noBookingsFound: "未找到预约。", notes: "备注", selectTime: "选择时间", status: "状态", timeSelection: "时间选择", yourInformation: "你的信息", }, calendarView: { addTitleBeforeCreate: "创建事件前请添加标题", calendarSettingsLoading: "日历设置仍在加载。请稍后再试。", day: "日", display: "显示", endTimeAfterStart: "结束时间必须晚于开始时间", eventDeleted: "事件已删除", eventMoved: "事件已移动", eventRemoved: "事件已移除", eventUpdated: "事件已更新", failedDeleteEvent: "删除事件失败", failedRestoreAttendance: "恢复出席状态失败", failedMoveEvent: "移动事件失败", failedUpdateEvent: "更新事件失败", googleCalendarLinkUnavailable: "Google Calendar 链接不可用", hideWeekends: "隐藏周末", loadingCalendars: "正在加载日历", manageAccounts: "管理账号", month: "月", movingEvent: "正在移动事件...", notificationEmptyDescription: "此应用打开时,Calendar 可以显示浏览器提醒。Clips 桌面版会处理更完整的会议提示,并支持一键备注。", openNavigation: "打开导航", today: "今天", undo: "撤销", updatingEvent: "正在更新事件...", updatingRecurringEvent: "正在更新重复事件...", week: "周", }, routeTitles: { bookingLinks: "预约链接 — Calendar", bookMeeting: "预约会议", eventPreview: "事件预览", manageBooking: "管理预约", notFound: "未找到 - Calendar", settings: "设置 — Calendar", team: "团队 — Calendar", }, notFound: { backToCalendar: "返回 Calendar", pageMissing: "此页面尚不存在。", }, eventPreview: { couldNotLoadEvent: "无法加载事件", noEventId: "未提供事件 ID。请在 URL 中添加 ?id=。", openCalendar: "打开日历", }, eventForm: { addCalendar: "添加日历", addCalendarFailed: "添加日历失败", addCalendarFromUrl: "从 URL 添加日历", added: "已添加", calendarFeedAdded: "已添加“{{name}}”", commandPlaceholder: "搜索事件、跳转到日期或询问 AI...", createEventWithTitle: '创建"{{title}}"', directorySearchLimited: "目录搜索受限。输入完整邮箱并按 Enter 添加。", events: "事件", fromUrl: "来自 URL", goToDate: "转到 {{date}}", goToToday: "转到今天", jumpTo: "跳转到", openInGoogleCalendar: "在 Google Calendar 中打开", pasteShareableCalendarLink: "粘贴来自 Google Calendar、iCloud、Outlook 等的可共享日历链接。", people: "人员", press: "按", quickCreate: "快速创建", searchPeoplePlaceholder: "按姓名搜索或输入邮箱...", selectedEvent: "所选事件", showLess: "收起", showMore: "显示更多", showingCalendars: "正在显示的日历", subscribedFeeds: "已订阅的源", toAdd: "以添加", usePopoverInstead: "改用弹出框", viewTeammateCalendar: "查看队友的日历", addNote: "添加备注", addShortNote: "添加简短备注...", addUpdateNote: "添加更新备注", applyChangesTo: "将更改应用到", awaiting: "等待中", cancelEvent: "取消事件", cancelRecurringDescription: "选择要取消系列中的哪些事件。", cancelRecurringEventQuestion: "取消重复事件?", cancelRecurringNotifyDescription: "选择要取消系列中的哪些事件,以及是否通知来宾。", editNote: "编辑备注", notifyGuestsQuestion: "通知来宾?", optionalNote: "可选备注", organizer: "组织者", participants: "{{count}} 位参与者", responseAwaitingCount: "{{count}} 等待中", recurringResponseScope: "重复回复范围", responseMaybeCount: "{{count}} 可能", responseNoCount: "{{count}} 否", responseYesCount: "{{count}} 是", rsvpAccepted: "是", rsvpDeclined: "否", rsvpMaybe: "可能", rsvpNo: "否", rsvpTentative: "可能", rsvpYes: "是", saveRecurringResponseStatus: "保存重复事件的回复状态", saveResponse: "保存回复", saveResponseStatus: "保存回复状态", seeAllParticipants: "查看全部 {{count}} 位参与者", sendCancellationDescription: "向来宾发送取消通知,可附加备注。", sendUpdate: "发送更新", sendUpdateDescription: "向来宾发送更新通知,可附加备注。", updateEvent: "更新事件", updateNotePlaceholder: "说明更改内容或来宾需要知道的信息...", updateRecurringDescription: "选择要更新系列中的哪些事件。", updateRecurringEventQuestion: "更新重复事件?", updateRecurringNotifyDescription: "选择要更新系列中的哪些事件,以及是否通知来宾。", yourResponse: "你的回复:{{status}}", }, }, "es-ES": { bookingLinks: { booking: "Reservando...", bookingConfirmed: "Reserva confirmada", bookAnother: "Reservar otra", cancelOrReschedule: "Cancelar o reprogramar", confirmationSent: "Todo listo. Se ha enviado una confirmación a tu correo.", fieldFormatError: "{{label}} no coincide con el formato esperado", fieldRequired: "{{label}} es obligatorio", meetingLink: "Enlace de la reunión", needToMakeChanges: "¿Necesitas hacer cambios?", no: "No", noAvailableSlotsForDate: "No hay horarios disponibles para esta fecha.", yes: "Sí", yourName: "Tu nombre", allCount: "Todos ({{count}})", bookAMeeting: "Reservar una reunión", availabilityDescription: "Configura tus horas disponibles para reservas.", bookingCancelled: "Reserva cancelada", bookingLinkNotFound: "Enlace de reserva no encontrado", bookingPageSlug: "Slug de página de reserva", cancelBooking: "Cancelar reserva", cancelled: "Cancelada", cancelledCount: "Canceladas ({{count}})", confirmation: "confirmación", confirmed: "Confirmada", confirmedCount: "Confirmadas ({{count}})", confirming: "Confirmando", dateAndTime: "Fecha y hora", dateSelection: "selección de fecha", defaultDescription: "Elige una hora que te venga bien.", detailCount_one: "{{count}} detalle", detailCount_other: "{{count}} detalles", detailCount_many: "{{count}} detalles", details: "Detalles", durationSelection: "selección de duración", failedToCancelBooking: "No se pudo cancelar la reserva", failedToCreateBooking: "No se pudo crear la reserva", goToStep: "Ir a {{step}}", meetingTypeUnavailable: "Es posible que este tipo de reunión se haya eliminado o ya no esté activo.", noBookingsFound: "No se encontraron reservas.", notes: "Notas", selectTime: "Seleccionar hora", status: "Estado", timeSelection: "selección de hora", yourInformation: "Tu información", }, calendarView: { addTitleBeforeCreate: "Añade un título antes de crear el evento", calendarSettingsLoading: "La configuración del calendario aún se está cargando. Inténtalo de nuevo en un momento.", day: "Día", display: "Mostrar", endTimeAfterStart: "La hora de finalización debe ser posterior a la de inicio", eventDeleted: "Evento eliminado", eventMoved: "Evento movido", eventRemoved: "Evento quitado", eventUpdated: "Evento actualizado", failedDeleteEvent: "No se pudo eliminar el evento", failedRestoreAttendance: "No se pudo restaurar la asistencia", failedMoveEvent: "No se pudo mover el evento", failedUpdateEvent: "No se pudo actualizar el evento", googleCalendarLinkUnavailable: "El enlace de Google Calendar no está disponible", hideWeekends: "Ocultar fines de semana", loadingCalendars: "Cargando calendarios", manageAccounts: "Gestionar cuentas", month: "Mes", movingEvent: "Moviendo evento...", notificationEmptyDescription: "Calendar puede mostrar alertas del navegador mientras esta app está abierta. Clips de escritorio gestiona avisos de reunión más completos con notas en un clic.", openNavigation: "Abrir navegación", today: "Hoy", undo: "Deshacer", updatingEvent: "Actualizando evento...", updatingRecurringEvent: "Actualizando evento recurrente...", week: "Semana", }, routeTitles: { bookingLinks: "Enlaces de reserva — Calendar", bookMeeting: "Reservar una reunión", eventPreview: "Vista previa del evento", manageBooking: "Gestionar reserva", notFound: "No encontrado - Calendar", settings: "Configuración — Calendar", team: "Equipo — Calendar", }, notFound: { backToCalendar: "Volver a Calendar", pageMissing: "Esta página aún no existe.", }, eventPreview: { couldNotLoadEvent: "No se pudo cargar el evento", noEventId: "No se proporcionó ningún ID de evento. Añade ?id= a la URL.", openCalendar: "Abrir calendario", }, eventForm: { addCalendar: "Añadir calendario", addCalendarFailed: "No se pudo añadir el calendario", addCalendarFromUrl: "Añadir calendario desde URL", added: "Añadido", calendarFeedAdded: "“{{name}}” añadido", commandPlaceholder: "Busca eventos, ve a una fecha o pregunta a la IA...", createEventWithTitle: 'Crear "{{title}}"', directorySearchLimited: "La búsqueda del directorio es limitada. Escribe un correo completo y pulsa Enter para añadirlo.", events: "Eventos", fromUrl: "Desde URL", goToDate: "Ir a {{date}}", goToToday: "Ir a hoy", jumpTo: "Saltar a", openInGoogleCalendar: "Abrir en Google Calendar", pasteShareableCalendarLink: "Pega un enlace de calendario compartible de Google Calendar, iCloud, Outlook, etc.", people: "Personas", press: "Pulsa", quickCreate: "Creación rápida", searchPeoplePlaceholder: "Busca por nombre o escribe un correo...", selectedEvent: "Evento seleccionado", showLess: "Mostrar menos", showMore: "Mostrar más", showingCalendars: "Mostrando calendarios", subscribedFeeds: "Fuentes suscritas", toAdd: "para añadir", usePopoverInstead: "Usar ventana emergente", viewTeammateCalendar: "Ver el calendario de un compañero", addNote: "Añadir nota", addShortNote: "Añade una nota breve...", addUpdateNote: "Añadir nota de actualización", applyChangesTo: "Aplicar cambios a", awaiting: "Pendiente", cancelEvent: "Cancelar evento", cancelRecurringDescription: "Elige qué parte de la serie cancelar.", cancelRecurringEventQuestion: "¿Cancelar evento recurrente?", cancelRecurringNotifyDescription: "Elige qué parte de la serie cancelar y si notificar a los invitados.", editNote: "Editar nota", notifyGuestsQuestion: "¿Notificar a los invitados?", optionalNote: "Nota opcional", organizer: "Organizador", participants: "{{count}} participantes", responseAwaitingCount: "{{count}} pendiente", recurringResponseScope: "Alcance de respuesta recurrente", responseMaybeCount: "{{count}} quizá", responseNoCount: "{{count}} no", responseYesCount: "{{count}} sí", rsvpAccepted: "Sí", rsvpDeclined: "No", rsvpMaybe: "Quizá", rsvpNo: "No", rsvpTentative: "Quizá", rsvpYes: "Sí", saveRecurringResponseStatus: "Guardar estado de respuesta para evento recurrente", saveResponse: "Guardar respuesta", saveResponseStatus: "Guardar estado de respuesta", seeAllParticipants: "Ver los {{count}} participantes", sendCancellationDescription: "Envía una cancelación a los invitados con una nota opcional.", sendUpdate: "Enviar actualización", sendUpdateDescription: "Envía una actualización a los invitados con una nota opcional.", updateEvent: "Actualizar evento", updateNotePlaceholder: "Qué cambió o qué deben saber los invitados...", updateRecurringDescription: "Elige qué parte de la serie actualizar.", updateRecurringEventQuestion: "¿Actualizar evento recurrente?", updateRecurringNotifyDescription: "Elige qué parte de la serie actualizar y si notificar a los invitados.", yourResponse: "Tu respuesta: {{status}}", }, }, "fr-FR": { bookingLinks: { booking: "Réservation...", bookingConfirmed: "Réservation confirmée", bookAnother: "Réserver à nouveau", cancelOrReschedule: "Annuler ou reprogrammer", confirmationSent: "Tout est prêt ! Une confirmation a été envoyée à votre adresse e-mail.", fieldFormatError: "{{label}} ne correspond pas au format attendu", fieldRequired: "{{label}} est obligatoire", meetingLink: "Lien de réunion", needToMakeChanges: "Besoin de modifier ?", no: "Non", noAvailableSlotsForDate: "Aucun créneau disponible pour cette date.", yes: "Oui", yourName: "Votre nom", allCount: "Tous ({{count}})", bookAMeeting: "Réserver une réunion", availabilityDescription: "Définissez vos heures disponibles pour les réservations.", bookingCancelled: "Réservation annulée", bookingLinkNotFound: "Lien de réservation introuvable", bookingPageSlug: "Slug de la page de réservation", cancelBooking: "Annuler la réservation", cancelled: "Annulée", cancelledCount: "Annulées ({{count}})", confirmation: "confirmation", confirmed: "Confirmée", confirmedCount: "Confirmées ({{count}})", confirming: "Confirmation", dateAndTime: "Date et heure", dateSelection: "sélection de la date", defaultDescription: "Choisissez un horaire qui vous convient.", detailCount_one: "{{count}} détail", detailCount_other: "{{count}} détails", detailCount_many: "{{count}} détails", details: "Détails", durationSelection: "sélection de la durée", failedToCancelBooking: "Échec de l’annulation de la réservation", failedToCreateBooking: "Échec de la création de la réservation", goToStep: "Aller à {{step}}", meetingTypeUnavailable: "Ce type de réunion a peut-être été supprimé ou n’est plus actif.", noBookingsFound: "Aucune réservation trouvée.", notes: "Notes", selectTime: "Sélectionner une heure", status: "Statut", timeSelection: "sélection de l’heure", yourInformation: "Vos informations", }, calendarView: { addTitleBeforeCreate: "Ajoutez un titre avant de créer l'événement", calendarSettingsLoading: "Les paramètres du calendrier sont encore en cours de chargement. Réessayez dans un instant.", day: "Jour", display: "Affichage", endTimeAfterStart: "L'heure de fin doit être après l'heure de début", eventDeleted: "Événement supprimé", eventMoved: "Événement déplacé", eventRemoved: "Événement retiré", eventUpdated: "Événement mis à jour", failedDeleteEvent: "Échec de la suppression de l'événement", failedRestoreAttendance: "Échec de la restauration de la participation", failedMoveEvent: "Échec du déplacement de l'événement", failedUpdateEvent: "Échec de la mise à jour de l'événement", googleCalendarLinkUnavailable: "Lien Google Calendar indisponible", hideWeekends: "Masquer les week-ends", loadingCalendars: "Chargement des calendriers", manageAccounts: "Gérer les comptes", month: "Mois", movingEvent: "Déplacement de l'événement...", notificationEmptyDescription: "Calendar peut afficher des alertes du navigateur tant que cette app est ouverte. Clips desktop gère des rappels de réunion plus complets avec des notes en un clic.", openNavigation: "Ouvrir la navigation", today: "Aujourd'hui", undo: "Annuler", updatingEvent: "Mise à jour de l'événement...", updatingRecurringEvent: "Mise à jour de l'événement récurrent...", week: "Semaine", }, routeTitles: { bookingLinks: "Liens de réservation — Calendar", bookMeeting: "Réserver une réunion", eventPreview: "Aperçu de l'événement", manageBooking: "Gérer la réservation", notFound: "Introuvable - Calendar", settings: "Paramètres — Calendar", team: "Équipe — Calendar", }, notFound: { backToCalendar: "Retour à Calendar", pageMissing: "Cette page n'existe pas encore.", }, eventPreview: { couldNotLoadEvent: "Impossible de charger l'événement", noEventId: "Aucun ID d'événement fourni. Ajoutez ?id= à l'URL.", openCalendar: "Ouvrir le calendrier", }, eventForm: { addCalendar: "Ajouter un calendrier", addCalendarFailed: "Échec de l’ajout du calendrier", addCalendarFromUrl: "Ajouter un calendrier depuis une URL", added: "Ajouté", calendarFeedAdded: "« {{name}} » ajouté", commandPlaceholder: "Rechercher des événements, aller à une date ou demander à l’IA...", createEventWithTitle: "Créer « {{title}} »", directorySearchLimited: "La recherche dans l’annuaire est limitée. Saisissez une adresse e-mail complète et appuyez sur Entrée pour l’ajouter.", events: "Événements", fromUrl: "Depuis une URL", goToDate: "Aller au {{date}}", goToToday: "Aller à aujourd’hui", jumpTo: "Aller à", openInGoogleCalendar: "Ouvrir dans Google Calendar", pasteShareableCalendarLink: "Collez un lien de calendrier partageable depuis Google Calendar, iCloud, Outlook, etc.", people: "Personnes", press: "Appuyez sur", quickCreate: "Création rapide", searchPeoplePlaceholder: "Rechercher par nom ou saisir un e-mail...", selectedEvent: "Événement sélectionné", showLess: "Afficher moins", showMore: "Afficher plus", showingCalendars: "Calendriers affichés", subscribedFeeds: "Flux abonnés", toAdd: "pour ajouter", usePopoverInstead: "Utiliser la fenêtre contextuelle", viewTeammateCalendar: "Voir le calendrier d’un coéquipier", addNote: "Ajouter une note", addShortNote: "Ajouter une courte note...", addUpdateNote: "Ajouter une note de mise à jour", applyChangesTo: "Appliquer les modifications à", awaiting: "En attente", cancelEvent: "Annuler l’événement", cancelRecurringDescription: "Choisissez quelle partie de la série annuler.", cancelRecurringEventQuestion: "Annuler l’événement récurrent ?", cancelRecurringNotifyDescription: "Choisissez quelle partie de la série annuler et s’il faut avertir les invités.", editNote: "Modifier la note", notifyGuestsQuestion: "Avertir les invités ?", optionalNote: "Note facultative", organizer: "Organisateur", participants: "{{count}} participants", responseAwaitingCount: "{{count}} en attente", recurringResponseScope: "Portée de réponse récurrente", responseMaybeCount: "{{count}} peut-être", responseNoCount: "{{count}} non", responseYesCount: "{{count}} oui", rsvpAccepted: "Oui", rsvpDeclined: "Non", rsvpMaybe: "Peut-être", rsvpNo: "Non", rsvpTentative: "Peut-être", rsvpYes: "Oui", saveRecurringResponseStatus: "Enregistrer l’état de réponse pour l’événement récurrent", saveResponse: "Enregistrer la réponse", saveResponseStatus: "Enregistrer l’état de réponse", seeAllParticipants: "Voir les {{count}} participants", sendCancellationDescription: "Envoyer une annulation aux invités avec une note facultative.", sendUpdate: "Envoyer la mise à jour", sendUpdateDescription: "Envoyer une mise à jour aux invités avec une note facultative.", updateEvent: "Mettre à jour l’événement", updateNotePlaceholder: "Ce qui a changé ou ce que les invités doivent savoir...", updateRecurringDescription: "Choisissez quelle partie de la série mettre à jour.", updateRecurringEventQuestion: "Mettre à jour l’événement récurrent ?", updateRecurringNotifyDescription: "Choisissez quelle partie de la série mettre à jour et s’il faut avertir les invités.", yourResponse: "Votre réponse : {{status}}", }, }, "de-DE": { bookingLinks: { booking: "Wird gebucht...", bookingConfirmed: "Buchung bestätigt", bookAnother: "Weitere Buchung", cancelOrReschedule: "Stornieren oder verschieben", confirmationSent: "Alles erledigt! Eine Bestätigung wurde an deine E-Mail gesendet.", fieldFormatError: "{{label}} entspricht nicht dem erwarteten Format", fieldRequired: "{{label}} ist erforderlich", meetingLink: "Meeting-Link", needToMakeChanges: "Möchtest du etwas ändern?", no: "Nein", noAvailableSlotsForDate: "Für dieses Datum sind keine Zeiten verfügbar.", yes: "Ja", yourName: "Dein Name", allCount: "Alle ({{count}})", bookAMeeting: "Meeting buchen", availabilityDescription: "Lege deine verfügbaren Zeiten für Buchungen fest.", bookingCancelled: "Buchung storniert", bookingLinkNotFound: "Buchungslink nicht gefunden", bookingPageSlug: "Slug der Buchungsseite", cancelBooking: "Buchung stornieren", cancelled: "Storniert", cancelledCount: "Storniert ({{count}})", confirmation: "Bestätigung", confirmed: "Bestätigt", confirmedCount: "Bestätigt ({{count}})", confirming: "Wird bestätigt", dateAndTime: "Datum und Uhrzeit", dateSelection: "Datumsauswahl", defaultDescription: "Wähle eine passende Zeit.", detailCount_one: "{{count}} Detail", detailCount_other: "{{count}} Details", details: "Details", durationSelection: "Dauerauswahl", failedToCancelBooking: "Buchung konnte nicht storniert werden", failedToCreateBooking: "Buchung konnte nicht erstellt werden", goToStep: "Zu {{step}} gehen", meetingTypeUnavailable: "Dieser Meeting-Typ wurde möglicherweise entfernt oder ist nicht mehr aktiv.", noBookingsFound: "Keine Buchungen gefunden.", notes: "Notizen", selectTime: "Zeit auswählen", status: "Status", timeSelection: "Zeitauswahl", yourInformation: "Deine Informationen", }, calendarView: { addTitleBeforeCreate: "Fügen Sie einen Titel hinzu, bevor Sie das Ereignis erstellen", calendarSettingsLoading: "Die Kalendereinstellungen werden noch geladen. Versuchen Sie es gleich erneut.", day: "Tag", display: "Anzeige", endTimeAfterStart: "Die Endzeit muss nach der Startzeit liegen", eventDeleted: "Ereignis gelöscht", eventMoved: "Ereignis verschoben", eventRemoved: "Ereignis entfernt", eventUpdated: "Ereignis aktualisiert", failedDeleteEvent: "Ereignis konnte nicht gelöscht werden", failedRestoreAttendance: "Teilnahme konnte nicht wiederhergestellt werden", failedMoveEvent: "Ereignis konnte nicht verschoben werden", failedUpdateEvent: "Ereignis konnte nicht aktualisiert werden", googleCalendarLinkUnavailable: "Google Calendar-Link nicht verfügbar", hideWeekends: "Wochenenden ausblenden", loadingCalendars: "Kalender werden geladen", manageAccounts: "Konten verwalten", month: "Monat", movingEvent: "Ereignis wird verschoben...", notificationEmptyDescription: "Calendar kann Browserbenachrichtigungen anzeigen, während diese App geöffnet ist. Clips Desktop übernimmt umfassendere Meeting-Hinweise mit Notizen per Klick.", openNavigation: "Navigation öffnen", today: "Heute", undo: "Rückgängig", updatingEvent: "Ereignis wird aktualisiert...", updatingRecurringEvent: "Wiederkehrendes Ereignis wird aktualisiert...", week: "Woche", }, routeTitles: { bookingLinks: "Buchungslinks — Calendar", bookMeeting: "Meeting buchen", eventPreview: "Ereignisvorschau", manageBooking: "Buchung verwalten", notFound: "Nicht gefunden - Calendar", settings: "Einstellungen — Calendar", team: "Kalenderteam — Calendar", }, notFound: { backToCalendar: "Zurück zu Calendar", pageMissing: "Diese Seite existiert noch nicht.", }, eventPreview: { couldNotLoadEvent: "Ereignis konnte nicht geladen werden", noEventId: "Keine Ereignis-ID angegeben. Fügen Sie der URL ?id= hinzu.", openCalendar: "Kalender öffnen", }, eventForm: { addCalendar: "Kalender hinzufügen", addCalendarFailed: "Kalender konnte nicht hinzugefügt werden", addCalendarFromUrl: "Kalender per URL hinzufügen", added: "Hinzugefügt", calendarFeedAdded: "„{{name}}“ hinzugefügt", commandPlaceholder: "Ereignisse suchen, zu einem Datum springen oder KI fragen...", createEventWithTitle: "„{{title}}“ erstellen", directorySearchLimited: "Die Verzeichnissuche ist eingeschränkt. Gib eine vollständige E-Mail ein und drücke Enter, um sie hinzuzufügen.", events: "Ereignisse", fromUrl: "Von URL", goToDate: "Zu {{date}} gehen", goToToday: "Zu heute gehen", jumpTo: "Springen zu", openInGoogleCalendar: "In Google Calendar öffnen", pasteShareableCalendarLink: "Füge einen teilbaren Kalenderlink aus Google Calendar, iCloud, Outlook usw. ein.", people: "Personen", press: "Drücke", quickCreate: "Schnellerstellung", searchPeoplePlaceholder: "Nach Name suchen oder E-Mail eingeben...", selectedEvent: "Ausgewähltes Ereignis", showLess: "Weniger anzeigen", showMore: "Mehr anzeigen", showingCalendars: "Angezeigte Kalender", subscribedFeeds: "Abonnierte Feeds", toAdd: "zum Hinzufügen", usePopoverInstead: "Stattdessen Popover verwenden", viewTeammateCalendar: "Kalender eines Teammitglieds anzeigen", addNote: "Notiz hinzufügen", addShortNote: "Kurze Notiz hinzufügen...", addUpdateNote: "Aktualisierungsnotiz hinzufügen", applyChangesTo: "Änderungen anwenden auf", awaiting: "Ausstehend", cancelEvent: "Ereignis absagen", cancelRecurringDescription: "Wähle aus, welcher Teil der Serie abgesagt werden soll.", cancelRecurringEventQuestion: "Wiederkehrendes Ereignis absagen?", cancelRecurringNotifyDescription: "Wähle aus, welcher Teil der Serie abgesagt werden soll und ob Gäste benachrichtigt werden.", editNote: "Notiz bearbeiten", notifyGuestsQuestion: "Gäste benachrichtigen?", optionalNote: "Optionale Notiz", organizer: "Organisator", participants: "{{count}} Teilnehmende", responseAwaitingCount: "{{count}} ausstehend", recurringResponseScope: "Bereich der wiederkehrenden Antwort", responseMaybeCount: "{{count}} vielleicht", responseNoCount: "{{count}} nein", responseYesCount: "{{count}} ja", rsvpAccepted: "Ja", rsvpDeclined: "Nein", rsvpMaybe: "Vielleicht", rsvpNo: "Nein", rsvpTentative: "Vielleicht", rsvpYes: "Ja", saveRecurringResponseStatus: "Antwortstatus für wiederkehrendes Ereignis speichern", saveResponse: "Antwort speichern", saveResponseStatus: "Antwortstatus speichern", seeAllParticipants: "Alle {{count}} Teilnehmenden anzeigen", sendCancellationDescription: "Sende eine Absage mit optionaler Notiz an Gäste.", sendUpdate: "Aktualisierung senden", sendUpdateDescription: "Sende eine Aktualisierung mit optionaler Notiz an Gäste.", updateEvent: "Ereignis aktualisieren", updateNotePlaceholder: "Was sich geändert hat oder was Gäste wissen sollten...", updateRecurringDescription: "Wähle aus, welcher Teil der Serie aktualisiert werden soll.", updateRecurringEventQuestion: "Wiederkehrendes Ereignis aktualisieren?", updateRecurringNotifyDescription: "Wähle aus, welcher Teil der Serie aktualisiert werden soll und ob Gäste benachrichtigt werden.", yourResponse: "Deine Antwort: {{status}}", }, }, "ja-JP": { bookingLinks: { booking: "予約中...", bookingConfirmed: "予約が確定しました", bookAnother: "別の予約をする", cancelOrReschedule: "キャンセルまたは変更", confirmationSent: "完了しました。確認メールを送信しました。", fieldFormatError: "{{label}} が想定形式と一致しません", fieldRequired: "{{label}} は必須です", meetingLink: "ミーティングリンク", needToMakeChanges: "変更が必要ですか?", no: "いいえ", noAvailableSlotsForDate: "この日に利用可能な時間はありません。", yes: "はい", yourName: "お名前", allCount: "すべて({{count}})", bookAMeeting: "ミーティングを予約", availabilityDescription: "予約可能な時間を設定します。", bookingCancelled: "予約をキャンセルしました", bookingLinkNotFound: "予約リンクが見つかりません", bookingPageSlug: "予約ページの slug", cancelBooking: "予約をキャンセル", cancelled: "キャンセル済み", cancelledCount: "キャンセル済み({{count}})", confirmation: "確認", confirmed: "確定済み", confirmedCount: "確定済み({{count}})", confirming: "確認中", dateAndTime: "日時", dateSelection: "日付選択", defaultDescription: "都合のよい時間を選んでください。", detailCount_one: "{{count}} 件の詳細", detailCount_other: "{{count}} 件の詳細", details: "詳細", durationSelection: "所要時間の選択", failedToCancelBooking: "予約をキャンセルできませんでした", failedToCreateBooking: "予約を作成できませんでした", goToStep: "{{step}} に移動", meetingTypeUnavailable: "このミーティングタイプは削除されたか、現在は有効ではありません。", noBookingsFound: "予約が見つかりません。", notes: "メモ", selectTime: "時間を選択", status: "ステータス", timeSelection: "時間選択", yourInformation: "あなたの情報", }, calendarView: { addTitleBeforeCreate: "イベントを作成する前にタイトルを追加してください", calendarSettingsLoading: "カレンダー設定を読み込み中です。少し待ってからもう一度お試しください。", day: "日", display: "表示", endTimeAfterStart: "終了時刻は開始時刻より後にしてください", eventDeleted: "イベントを削除しました", eventMoved: "イベントを移動しました", eventRemoved: "イベントを削除しました", eventUpdated: "イベントを更新しました", failedDeleteEvent: "イベントを削除できませんでした", failedRestoreAttendance: "出席の復元に失敗しました", failedMoveEvent: "イベントを移動できませんでした", failedUpdateEvent: "イベントを更新できませんでした", googleCalendarLinkUnavailable: "Google Calendar リンクを利用できません", hideWeekends: "週末を非表示", loadingCalendars: "カレンダーを読み込み中", manageAccounts: "アカウントを管理", month: "月", movingEvent: "イベントを移動中...", notificationEmptyDescription: "このアプリを開いている間、Calendar はブラウザー通知を表示できます。Clips デスクトップでは、ワンクリックのメモ付きでより詳しい会議通知を扱えます。", openNavigation: "ナビゲーションを開く", today: "今日", undo: "元に戻す", updatingEvent: "イベントを更新中...", updatingRecurringEvent: "繰り返しイベントを更新中...", week: "週", }, routeTitles: { bookingLinks: "予約リンク — Calendar", bookMeeting: "会議を予約", eventPreview: "イベントプレビュー", manageBooking: "予約を管理", notFound: "見つかりません - Calendar", settings: "設定 — Calendar", team: "チーム — Calendar", }, notFound: { backToCalendar: "Calendar に戻る", pageMissing: "このページはまだ存在しません。", }, eventPreview: { couldNotLoadEvent: "イベントを読み込めませんでした", noEventId: "イベント ID が指定されていません。URL に ?id= を追加してください。", openCalendar: "カレンダーを開く", }, eventForm: { addCalendar: "カレンダーを追加", addCalendarFailed: "カレンダーを追加できませんでした", addCalendarFromUrl: "URL からカレンダーを追加", added: "追加済み", calendarFeedAdded: "「{{name}}」を追加しました", commandPlaceholder: "予定を検索、日付へ移動、または AI に質問...", createEventWithTitle: "「{{title}}」を作成", directorySearchLimited: "ディレクトリ検索は制限されています。完全なメールアドレスを入力して Enter で追加してください。", events: "予定", fromUrl: "URL から", goToDate: "{{date}} に移動", goToToday: "今日へ移動", jumpTo: "移動先", openInGoogleCalendar: "Google Calendar で開く", pasteShareableCalendarLink: "Google Calendar、iCloud、Outlook などの共有可能なカレンダーリンクを貼り付けます。", people: "ユーザー", press: "押す", quickCreate: "クイック作成", searchPeoplePlaceholder: "名前で検索、またはメールを入力...", selectedEvent: "選択中の予定", showLess: "表示を減らす", showMore: "もっと見る", showingCalendars: "表示中のカレンダー", subscribedFeeds: "購読中のフィード", toAdd: "追加するには", usePopoverInstead: "ポップオーバーを使用", viewTeammateCalendar: "チームメイトのカレンダーを表示", addNote: "メモを追加", addShortNote: "短いメモを追加...", addUpdateNote: "更新メモを追加", applyChangesTo: "変更の適用先", awaiting: "待機中", cancelEvent: "予定をキャンセル", cancelRecurringDescription: "シリーズのどの範囲をキャンセルするか選択します。", cancelRecurringEventQuestion: "繰り返し予定をキャンセルしますか?", cancelRecurringNotifyDescription: "シリーズのどの範囲をキャンセルするか、ゲストに通知するかを選択します。", editNote: "メモを編集", notifyGuestsQuestion: "ゲストに通知しますか?", optionalNote: "任意のメモ", organizer: "主催者", participants: "{{count}} 人の参加者", responseAwaitingCount: "{{count}} 待機中", recurringResponseScope: "繰り返し返信の範囲", responseMaybeCount: "{{count}} 未定", responseNoCount: "{{count}} いいえ", responseYesCount: "{{count}} はい", rsvpAccepted: "はい", rsvpDeclined: "いいえ", rsvpMaybe: "未定", rsvpNo: "いいえ", rsvpTentative: "未定", rsvpYes: "はい", saveRecurringResponseStatus: "繰り返し予定の返信ステータスを保存", saveResponse: "返信を保存", saveResponseStatus: "返信ステータスを保存", seeAllParticipants: "{{count}} 人の参加者をすべて表示", sendCancellationDescription: "任意のメモを添えてゲストにキャンセル通知を送信します。", sendUpdate: "更新を送信", sendUpdateDescription: "任意のメモを添えてゲストに更新通知を送信します。", updateEvent: "予定を更新", updateNotePlaceholder: "変更内容やゲストに伝えること...", updateRecurringDescription: "シリーズのどの範囲を更新するか選択します。", updateRecurringEventQuestion: "繰り返し予定を更新しますか?", updateRecurringNotifyDescription: "シリーズのどの範囲を更新するか、ゲストに通知するかを選択します。", yourResponse: "あなたの返信: {{status}}", }, }, "ko-KR": { bookingLinks: { booking: "예약 중...", bookingConfirmed: "예약이 확인되었습니다", bookAnother: "다시 예약", cancelOrReschedule: "취소 또는 일정 변경", confirmationSent: "완료되었습니다. 확인 이메일을 보냈습니다.", fieldFormatError: "{{label}}이(가) 예상 형식과 일치하지 않습니다", fieldRequired: "{{label}}은(는) 필수입니다", meetingLink: "회의 링크", needToMakeChanges: "변경이 필요하신가요?", no: "아니요", noAvailableSlotsForDate: "이 날짜에는 가능한 시간이 없습니다.", yes: "예", yourName: "이름", allCount: "전체 ({{count}})", bookAMeeting: "회의 예약", availabilityDescription: "예약 가능한 시간을 설정하세요.", bookingCancelled: "예약이 취소되었습니다", bookingLinkNotFound: "예약 링크를 찾을 수 없습니다", bookingPageSlug: "예약 페이지 slug", cancelBooking: "예약 취소", cancelled: "취소됨", cancelledCount: "취소됨 ({{count}})", confirmation: "확인", confirmed: "확정됨", confirmedCount: "확정됨 ({{count}})", confirming: "확인 중", dateAndTime: "날짜 및 시간", dateSelection: "날짜 선택", defaultDescription: "편한 시간을 선택하세요.", detailCount_one: "세부정보 {{count}}개", detailCount_other: "세부정보 {{count}}개", details: "세부정보", durationSelection: "기간 선택", failedToCancelBooking: "예약을 취소하지 못했습니다", failedToCreateBooking: "예약을 만들지 못했습니다", goToStep: "{{step}}로 이동", meetingTypeUnavailable: "이 회의 유형이 삭제되었거나 더 이상 활성 상태가 아닐 수 있습니다.", noBookingsFound: "예약을 찾을 수 없습니다.", notes: "메모", selectTime: "시간 선택", status: "상태", timeSelection: "시간 선택", yourInformation: "내 정보", }, calendarView: { addTitleBeforeCreate: "이벤트를 만들기 전에 제목을 추가하세요", calendarSettingsLoading: "캘린더 설정을 아직 불러오는 중입니다. 잠시 후 다시 시도하세요.", day: "일", display: "표시", endTimeAfterStart: "종료 시간은 시작 시간보다 늦어야 합니다", eventDeleted: "이벤트가 삭제되었습니다", eventMoved: "이벤트가 이동되었습니다", eventRemoved: "이벤트가 제거되었습니다", eventUpdated: "이벤트가 업데이트되었습니다", failedDeleteEvent: "이벤트를 삭제하지 못했습니다", failedRestoreAttendance: "참석 상태를 복원하지 못했습니다", failedMoveEvent: "이벤트를 이동하지 못했습니다", failedUpdateEvent: "이벤트를 업데이트하지 못했습니다", googleCalendarLinkUnavailable: "Google Calendar 링크를 사용할 수 없습니다", hideWeekends: "주말 숨기기", loadingCalendars: "캘린더 불러오는 중", manageAccounts: "계정 관리", month: "월", movingEvent: "이벤트 이동 중...", notificationEmptyDescription: "이 앱이 열려 있는 동안 Calendar가 브라우저 알림을 표시할 수 있습니다. Clips 데스크톱은 원클릭 메모가 포함된 더 자세한 회의 알림을 처리합니다.", openNavigation: "탐색 열기", today: "오늘", undo: "실행 취소", updatingEvent: "이벤트 업데이트 중...", updatingRecurringEvent: "반복 이벤트 업데이트 중...", week: "주", }, routeTitles: { bookingLinks: "예약 링크 — Calendar", bookMeeting: "회의 예약", eventPreview: "이벤트 미리보기", manageBooking: "예약 관리", notFound: "찾을 수 없음 - Calendar", settings: "설정 — Calendar", team: "팀 — Calendar", }, notFound: { backToCalendar: "Calendar로 돌아가기", pageMissing: "이 페이지는 아직 없습니다.", }, eventPreview: { couldNotLoadEvent: "이벤트를 불러올 수 없습니다", noEventId: "이벤트 ID가 없습니다. URL에 ?id=를 추가하세요.", openCalendar: "캘린더 열기", }, eventForm: { addCalendar: "캘린더 추가", addCalendarFailed: "캘린더를 추가하지 못했습니다", addCalendarFromUrl: "URL에서 캘린더 추가", added: "추가됨", calendarFeedAdded: "“{{name}}” 추가됨", commandPlaceholder: "이벤트 검색, 날짜 이동 또는 AI에게 질문...", createEventWithTitle: '"{{title}}" 만들기', directorySearchLimited: "디렉터리 검색이 제한됩니다. 전체 이메일을 입력하고 Enter를 눌러 추가하세요.", events: "이벤트", fromUrl: "URL에서", goToDate: "{{date}}로 이동", goToToday: "오늘로 이동", jumpTo: "이동", openInGoogleCalendar: "Google Calendar에서 열기", pasteShareableCalendarLink: "Google Calendar, iCloud, Outlook 등의 공유 가능한 캘린더 링크를 붙여넣으세요.", people: "사람", press: "누르기", quickCreate: "빠른 생성", searchPeoplePlaceholder: "이름으로 검색하거나 이메일 입력...", selectedEvent: "선택한 이벤트", showLess: "간단히 보기", showMore: "더 보기", showingCalendars: "표시 중인 캘린더", subscribedFeeds: "구독한 피드", toAdd: "추가하려면", usePopoverInstead: "팝오버 대신 사용", viewTeammateCalendar: "팀원의 캘린더 보기", addNote: "메모 추가", addShortNote: "짧은 메모 추가...", addUpdateNote: "업데이트 메모 추가", applyChangesTo: "변경 사항 적용 대상", awaiting: "대기 중", cancelEvent: "이벤트 취소", cancelRecurringDescription: "시리즈 중 취소할 범위를 선택하세요.", cancelRecurringEventQuestion: "반복 이벤트를 취소할까요?", cancelRecurringNotifyDescription: "시리즈 중 취소할 범위와 참석자에게 알릴지 선택하세요.", editNote: "메모 편집", notifyGuestsQuestion: "참석자에게 알릴까요?", optionalNote: "선택 메모", organizer: "주최자", participants: "참가자 {{count}}명", responseAwaitingCount: "{{count}}명 대기 중", recurringResponseScope: "반복 응답 범위", responseMaybeCount: "{{count}}명 미정", responseNoCount: "{{count}}명 아니요", responseYesCount: "{{count}}명 예", rsvpAccepted: "예", rsvpDeclined: "아니요", rsvpMaybe: "미정", rsvpNo: "아니요", rsvpTentative: "미정", rsvpYes: "예", saveRecurringResponseStatus: "반복 이벤트 응답 상태 저장", saveResponse: "응답 저장", saveResponseStatus: "응답 상태 저장", seeAllParticipants: "참가자 {{count}}명 모두 보기", sendCancellationDescription: "선택 메모와 함께 참석자에게 취소 알림을 보냅니다.", sendUpdate: "업데이트 보내기", sendUpdateDescription: "선택 메모와 함께 참석자에게 업데이트 알림을 보냅니다.", updateEvent: "이벤트 업데이트", updateNotePlaceholder: "변경 사항이나 참석자가 알아야 할 내용...", updateRecurringDescription: "시리즈 중 업데이트할 범위를 선택하세요.", updateRecurringEventQuestion: "반복 이벤트를 업데이트할까요?", updateRecurringNotifyDescription: "시리즈 중 업데이트할 범위와 참석자에게 알릴지 선택하세요.", yourResponse: "내 응답: {{status}}", }, }, "pt-BR": { bookingLinks: { booking: "Reservando...", bookingConfirmed: "Reserva confirmada", bookAnother: "Reservar outra", cancelOrReschedule: "Cancelar ou reagendar", confirmationSent: "Tudo certo! Uma confirmação foi enviada para o seu e-mail.", fieldFormatError: "{{label}} não corresponde ao formato esperado", fieldRequired: "{{label}} é obrigatório", meetingLink: "Link da reunião", needToMakeChanges: "Precisa fazer alterações?", no: "Não", noAvailableSlotsForDate: "Não há horários disponíveis para esta data.", yes: "Sim", yourName: "Seu nome", allCount: "Todas ({{count}})", bookAMeeting: "Agendar uma reunião", availabilityDescription: "Defina seus horários disponíveis para reservas.", bookingCancelled: "Reserva cancelada", bookingLinkNotFound: "Link de reserva não encontrado", bookingPageSlug: "Slug da página de reserva", cancelBooking: "Cancelar reserva", cancelled: "Cancelada", cancelledCount: "Canceladas ({{count}})", confirmation: "confirmação", confirmed: "Confirmada", confirmedCount: "Confirmadas ({{count}})", confirming: "Confirmando", dateAndTime: "Data e hora", dateSelection: "seleção de data", defaultDescription: "Escolha um horário que funcione para você.", detailCount_one: "{{count}} detalhe", detailCount_other: "{{count}} detalhes", detailCount_many: "{{count}} detalhes", details: "Detalhes", durationSelection: "seleção de duração", failedToCancelBooking: "Falha ao cancelar reserva", failedToCreateBooking: "Falha ao criar reserva", goToStep: "Ir para {{step}}", meetingTypeUnavailable: "Este tipo de reunião pode ter sido removido ou não está mais ativo.", noBookingsFound: "Nenhuma reserva encontrada.", notes: "Notas", selectTime: "Selecionar horário", status: "Status", timeSelection: "seleção de horário", yourInformation: "Suas informações", }, calendarView: { addTitleBeforeCreate: "Adicione um título antes de criar o evento", calendarSettingsLoading: "As configurações do calendário ainda estão carregando. Tente novamente em instantes.", day: "Dia", display: "Exibição", endTimeAfterStart: "O horário de término deve ser depois do horário de início", eventDeleted: "Evento excluído", eventMoved: "Evento movido", eventRemoved: "Evento removido", eventUpdated: "Evento atualizado", failedDeleteEvent: "Falha ao excluir evento", failedRestoreAttendance: "Falha ao restaurar a participação", failedMoveEvent: "Falha ao mover evento", failedUpdateEvent: "Falha ao atualizar evento", googleCalendarLinkUnavailable: "Link do Google Calendar indisponível", hideWeekends: "Ocultar fins de semana", loadingCalendars: "Carregando calendários", manageAccounts: "Gerenciar contas", month: "Mês", movingEvent: "Movendo evento...", notificationEmptyDescription: "Calendar pode exibir alertas do navegador enquanto este app estiver aberto. O Clips desktop cuida de lembretes de reunião mais completos com notas em um clique.", openNavigation: "Abrir navegação", today: "Hoje", undo: "Desfazer", updatingEvent: "Atualizando evento...", updatingRecurringEvent: "Atualizando evento recorrente...", week: "Semana", }, routeTitles: { bookingLinks: "Links de reserva — Calendar", bookMeeting: "Reservar uma reunião", eventPreview: "Prévia do evento", manageBooking: "Gerenciar reserva", notFound: "Não encontrado - Calendar", settings: "Configurações — Calendar", team: "Equipe — Calendar", }, notFound: { backToCalendar: "Voltar para Calendar", pageMissing: "Esta página ainda não existe.", }, eventPreview: { couldNotLoadEvent: "Não foi possível carregar o evento", noEventId: "Nenhum ID de evento informado. Adicione ?id= à URL.", openCalendar: "Abrir calendário", }, eventForm: { addCalendar: "Adicionar calendário", addCalendarFailed: "Falha ao adicionar calendário", addCalendarFromUrl: "Adicionar calendário por URL", added: "Adicionado", calendarFeedAdded: "“{{name}}” adicionado", commandPlaceholder: "Pesquise eventos, vá para uma data ou pergunte à IA...", createEventWithTitle: 'Criar "{{title}}"', directorySearchLimited: "A busca no diretório é limitada. Digite um e-mail completo e pressione Enter para adicionar.", events: "Eventos", fromUrl: "Por URL", goToDate: "Ir para {{date}}", goToToday: "Ir para hoje", jumpTo: "Ir para", openInGoogleCalendar: "Abrir no Google Calendar", pasteShareableCalendarLink: "Cole um link de calendário compartilhável do Google Calendar, iCloud, Outlook etc.", people: "Pessoas", press: "Pressione", quickCreate: "Criação rápida", searchPeoplePlaceholder: "Pesquise por nome ou digite um e-mail...", selectedEvent: "Evento selecionado", showLess: "Mostrar menos", showMore: "Mostrar mais", showingCalendars: "Calendários exibidos", subscribedFeeds: "Feeds assinados", toAdd: "para adicionar", usePopoverInstead: "Usar popover", viewTeammateCalendar: "Ver calendário de um colega", addNote: "Adicionar nota", addShortNote: "Adicione uma nota curta...", addUpdateNote: "Adicionar nota de atualização", applyChangesTo: "Aplicar alterações a", awaiting: "Aguardando", cancelEvent: "Cancelar evento", cancelRecurringDescription: "Escolha quanto da série cancelar.", cancelRecurringEventQuestion: "Cancelar evento recorrente?", cancelRecurringNotifyDescription: "Escolha quanto da série cancelar e se deseja notificar os convidados.", editNote: "Editar nota", notifyGuestsQuestion: "Notificar convidados?", optionalNote: "Nota opcional", organizer: "Organizador", participants: "{{count}} participantes", responseAwaitingCount: "{{count}} aguardando", recurringResponseScope: "Escopo da resposta recorrente", responseMaybeCount: "{{count}} talvez", responseNoCount: "{{count}} não", responseYesCount: "{{count}} sim", rsvpAccepted: "Sim", rsvpDeclined: "Não", rsvpMaybe: "Talvez", rsvpNo: "Não", rsvpTentative: "Talvez", rsvpYes: "Sim", saveRecurringResponseStatus: "Salvar status da resposta para evento recorrente", saveResponse: "Salvar resposta", saveResponseStatus: "Salvar status da resposta", seeAllParticipants: "Ver todos os {{count}} participantes", sendCancellationDescription: "Envie um cancelamento aos convidados com uma nota opcional.", sendUpdate: "Enviar atualização", sendUpdateDescription: "Envie uma atualização aos convidados com uma nota opcional.", updateEvent: "Atualizar evento", updateNotePlaceholder: "O que mudou ou o que os convidados devem saber...", updateRecurringDescription: "Escolha quanto da série atualizar.", updateRecurringEventQuestion: "Atualizar evento recorrente?", updateRecurringNotifyDescription: "Escolha quanto da série atualizar e se deseja notificar os convidados.", yourResponse: "Sua resposta: {{status}}", }, }, "hi-IN": { bookingLinks: { booking: "बुकिंग हो रही है...", bookingConfirmed: "बुकिंग पुष्टि हो गई", bookAnother: "एक और बुक करें", cancelOrReschedule: "रद्द करें या पुनर्निर्धारित करें", confirmationSent: "सब तैयार है! पुष्टि आपके ईमेल पर भेज दी गई है।", fieldFormatError: "{{label}} अपेक्षित फ़ॉर्मेट से मेल नहीं खाता", fieldRequired: "{{label}} आवश्यक है", meetingLink: "मीटिंग लिंक", needToMakeChanges: "बदलाव करने हैं?", no: "नहीं", noAvailableSlotsForDate: "इस तारीख के लिए कोई स्लॉट उपलब्ध नहीं है।", yes: "हाँ", yourName: "आपका नाम", allCount: "सभी ({{count}})", bookAMeeting: "मीटिंग बुक करें", availabilityDescription: "बुकिंग के लिए अपने उपलब्ध घंटे सेट करें।", bookingCancelled: "बुकिंग रद्द की गई", bookingLinkNotFound: "बुकिंग लिंक नहीं मिला", bookingPageSlug: "बुकिंग पेज slug", cancelBooking: "बुकिंग रद्द करें", cancelled: "रद्द", cancelledCount: "रद्द ({{count}})", confirmation: "पुष्टि", confirmed: "पुष्टि हुई", confirmedCount: "पुष्टि हुई ({{count}})", confirming: "पुष्टि हो रही है", dateAndTime: "तारीख और समय", dateSelection: "तारीख चयन", defaultDescription: "अपने लिए उपयुक्त समय चुनें।", detailCount_one: "{{count}} विवरण", detailCount_other: "{{count}} विवरण", details: "विवरण", durationSelection: "अवधि चयन", failedToCancelBooking: "बुकिंग रद्द करने में विफल", failedToCreateBooking: "बुकिंग बनाने में विफल", goToStep: "{{step}} पर जाएँ", meetingTypeUnavailable: "यह मीटिंग प्रकार हटाया गया हो सकता है या अब सक्रिय नहीं है।", noBookingsFound: "कोई बुकिंग नहीं मिली।", notes: "नोट्स", selectTime: "समय चुनें", status: "स्थिति", timeSelection: "समय चयन", yourInformation: "आपकी जानकारी", }, calendarView: { addTitleBeforeCreate: "इवेंट बनाने से पहले शीर्षक जोड़ें", calendarSettingsLoading: "कैलेंडर सेटिंग अभी लोड हो रही हैं। कृपया थोड़ी देर में फिर कोशिश करें।", day: "दिन", display: "डिस्प्ले", endTimeAfterStart: "समाप्ति समय प्रारंभ समय के बाद होना चाहिए", eventDeleted: "इवेंट मिटा दिया गया", eventMoved: "इवेंट स्थानांतरित किया गया", eventRemoved: "इवेंट हटाया गया", eventUpdated: "इवेंट अपडेट किया गया", failedDeleteEvent: "इवेंट मिटाने में विफल", failedRestoreAttendance: "उपस्थिति बहाल करने में विफल", failedMoveEvent: "इवेंट स्थानांतरित करने में विफल", failedUpdateEvent: "इवेंट अपडेट करने में विफल", googleCalendarLinkUnavailable: "Google Calendar लिंक उपलब्ध नहीं है", hideWeekends: "सप्ताहांत छिपाएं", loadingCalendars: "कैलेंडर लोड हो रहे हैं", manageAccounts: "खाते प्रबंधित करें", month: "माह", movingEvent: "इवेंट स्थानांतरित हो रहा है...", notificationEmptyDescription: "यह ऐप खुला होने पर Calendar ब्राउज़र अलर्ट दिखा सकता है। Clips डेस्कटॉप एक-क्लिक नोट्स के साथ अधिक पूर्ण मीटिंग संकेत संभालता है।", openNavigation: "नेविगेशन खोलें", today: "आज", undo: "पहले जैसा करें", updatingEvent: "इवेंट अपडेट हो रहा है...", updatingRecurringEvent: "दोहराया जाने वाला इवेंट अपडेट हो रहा है...", week: "सप्ताह", }, routeTitles: { bookingLinks: "बुकिंग लिंक — Calendar", bookMeeting: "मीटिंग बुक करें", eventPreview: "इवेंट पूर्वावलोकन", manageBooking: "बुकिंग प्रबंधित करें", notFound: "नहीं मिला - Calendar", settings: "सेटिंग — Calendar", team: "टीम — Calendar", }, notFound: { backToCalendar: "Calendar पर वापस जाएं", pageMissing: "यह पेज अभी मौजूद नहीं है।", }, eventPreview: { couldNotLoadEvent: "इवेंट लोड नहीं हो सका", noEventId: "कोई इवेंट ID नहीं दिया गया। URL में ?id= जोड़ें।", openCalendar: "कैलेंडर खोलें", }, eventForm: { addCalendar: "कैलेंडर जोड़ें", addCalendarFailed: "कैलेंडर जोड़ने में विफल", addCalendarFromUrl: "URL से कैलेंडर जोड़ें", added: "जोड़ा गया", calendarFeedAdded: "“{{name}}” जोड़ा गया", commandPlaceholder: "इवेंट खोजें, तारीख पर जाएँ, या AI से पूछें...", createEventWithTitle: '"{{title}}" बनाएं', directorySearchLimited: "डायरेक्टरी खोज सीमित है। पूरा ईमेल लिखें और जोड़ने के लिए Enter दबाएँ।", events: "इवेंट", fromUrl: "URL से", goToDate: "{{date}} पर जाएँ", goToToday: "आज पर जाएँ", jumpTo: "यहाँ जाएँ", openInGoogleCalendar: "Google Calendar में खोलें", pasteShareableCalendarLink: "Google Calendar, iCloud, Outlook आदि से साझा करने योग्य कैलेंडर लिंक चिपकाएँ।", people: "लोग", press: "दबाएँ", quickCreate: "त्वरित निर्माण", searchPeoplePlaceholder: "नाम से खोजें या ईमेल लिखें...", selectedEvent: "चुना हुआ इवेंट", showLess: "कम दिखाएँ", showMore: "और दिखाएँ", showingCalendars: "दिखाए जा रहे कैलेंडर", subscribedFeeds: "सब्सक्राइब किए गए फ़ीड", toAdd: "जोड़ने के लिए", usePopoverInstead: "इसके बजाय पॉपओवर उपयोग करें", viewTeammateCalendar: "टीममेट का कैलेंडर देखें", addNote: "नोट जोड़ें", addShortNote: "छोटा नोट जोड़ें...", addUpdateNote: "अपडेट नोट जोड़ें", applyChangesTo: "बदलाव लागू करें", awaiting: "प्रतीक्षा में", cancelEvent: "इवेंट रद्द करें", cancelRecurringDescription: "चुनें कि सीरीज़ का कितना हिस्सा रद्द करना है।", cancelRecurringEventQuestion: "दोहराया जाने वाला इवेंट रद्द करें?", cancelRecurringNotifyDescription: "चुनें कि सीरीज़ का कितना हिस्सा रद्द करना है और मेहमानों को सूचित करना है या नहीं।", editNote: "नोट संपादित करें", notifyGuestsQuestion: "मेहमानों को सूचित करें?", optionalNote: "वैकल्पिक नोट", organizer: "आयोजक", participants: "{{count}} प्रतिभागी", responseAwaitingCount: "{{count}} प्रतीक्षा में", recurringResponseScope: "दोहराई जाने वाली प्रतिक्रिया का दायरा", responseMaybeCount: "{{count}} शायद", responseNoCount: "{{count}} नहीं", responseYesCount: "{{count}} हाँ", rsvpAccepted: "हाँ", rsvpDeclined: "नहीं", rsvpMaybe: "शायद", rsvpNo: "नहीं", rsvpTentative: "शायद", rsvpYes: "हाँ", saveRecurringResponseStatus: "दोहराए जाने वाले इवेंट के लिए प्रतिक्रिया स्थिति सहेजें", saveResponse: "प्रतिक्रिया सहेजें", saveResponseStatus: "प्रतिक्रिया स्थिति सहेजें", seeAllParticipants: "सभी {{count}} प्रतिभागी देखें", sendCancellationDescription: "वैकल्पिक नोट के साथ मेहमानों को रद्दीकरण भेजें।", sendUpdate: "अपडेट भेजें", sendUpdateDescription: "वैकल्पिक नोट के साथ मेहमानों को अपडेट भेजें।", updateEvent: "इवेंट अपडेट करें", updateNotePlaceholder: "क्या बदला या मेहमानों को क्या जानना चाहिए...", updateRecurringDescription: "चुनें कि सीरीज़ का कितना हिस्सा अपडेट करना है।", updateRecurringEventQuestion: "दोहराया जाने वाला इवेंट अपडेट करें?", updateRecurringNotifyDescription: "चुनें कि सीरीज़ का कितना हिस्सा अपडेट करना है और मेहमानों को सूचित करना है या नहीं।", yourResponse: "आपकी प्रतिक्रिया: {{status}}", }, }, "ar-SA": { bookingLinks: { booking: "جارٍ الحجز...", bookingConfirmed: "تم تأكيد الحجز", bookAnother: "احجز مرة أخرى", cancelOrReschedule: "إلغاء أو إعادة جدولة", confirmationSent: "كل شيء جاهز! تم إرسال تأكيد إلى بريدك الإلكتروني.", fieldFormatError: "{{label}} لا يطابق التنسيق المتوقع", fieldRequired: "{{label}} مطلوب", meetingLink: "رابط الاجتماع", needToMakeChanges: "هل تحتاج إلى إجراء تغييرات؟", no: "لا", noAvailableSlotsForDate: "لا توجد أوقات متاحة لهذا التاريخ.", yes: "نعم", yourName: "اسمك", allCount: "الكل ({{count}})", bookAMeeting: "حجز اجتماع", availabilityDescription: "عيّن ساعات توفرك للحجوزات.", bookingCancelled: "تم إلغاء الحجز", bookingLinkNotFound: "لم يتم العثور على رابط الحجز", bookingPageSlug: "معرّف صفحة الحجز", cancelBooking: "إلغاء الحجز", cancelled: "ملغى", cancelledCount: "ملغاة ({{count}})", confirmation: "التأكيد", confirmed: "مؤكد", confirmedCount: "مؤكدة ({{count}})", confirming: "جارٍ التأكيد", dateAndTime: "التاريخ والوقت", dateSelection: "اختيار التاريخ", defaultDescription: "اختر وقتًا يناسبك.", detailCount_one: "{{count}} تفصيل", detailCount_two: "{{count}} تفصيلان", detailCount_zero: "{{count}} تفاصيل", detailCount_few: "{{count}} تفاصيل", detailCount_many: "{{count}} تفصيلًا", detailCount_other: "{{count}} تفصيل", details: "التفاصيل", durationSelection: "اختيار المدة", failedToCancelBooking: "فشل إلغاء الحجز", failedToCreateBooking: "فشل إنشاء الحجز", goToStep: "الانتقال إلى {{step}}", meetingTypeUnavailable: "ربما تمت إزالة نوع الاجتماع هذا أو لم يعد نشطًا.", noBookingsFound: "لم يتم العثور على حجوزات.", notes: "ملاحظات", selectTime: "اختر وقتًا", status: "الحالة", timeSelection: "اختيار الوقت", yourInformation: "معلوماتك", }, calendarView: { addTitleBeforeCreate: "أضف عنوانًا قبل إنشاء الحدث", calendarSettingsLoading: "لا تزال إعدادات التقويم قيد التحميل. حاول مرة أخرى بعد قليل.", day: "اليوم", display: "العرض", endTimeAfterStart: "يجب أن يكون وقت الانتهاء بعد وقت البدء", eventDeleted: "تم حذف الحدث", eventMoved: "تم نقل الحدث", eventRemoved: "تمت إزالة الحدث", eventUpdated: "تم تحديث الحدث", failedDeleteEvent: "فشل حذف الحدث", failedRestoreAttendance: "فشل استعادة الحضور", failedMoveEvent: "فشل نقل الحدث", failedUpdateEvent: "فشل تحديث الحدث", googleCalendarLinkUnavailable: "رابط Google Calendar غير متاح", hideWeekends: "إخفاء عطلات نهاية الأسبوع", loadingCalendars: "جارٍ تحميل التقويمات", manageAccounts: "إدارة الحسابات", month: "الشهر", movingEvent: "جارٍ نقل الحدث...", notificationEmptyDescription: "يمكن لـ Calendar عرض تنبيهات المتصفح أثناء فتح هذا التطبيق. يتولى Clips لسطح المكتب مطالبات اجتماع أكثر اكتمالًا مع ملاحظات بنقرة واحدة.", openNavigation: "فتح التنقل", today: "اليوم", undo: "تراجع", updatingEvent: "جارٍ تحديث الحدث...", updatingRecurringEvent: "جارٍ تحديث الحدث المتكرر...", week: "الأسبوع", }, routeTitles: { bookingLinks: "روابط الحجز — Calendar", bookMeeting: "حجز اجتماع", eventPreview: "معاينة الحدث", manageBooking: "إدارة الحجز", notFound: "غير موجود - Calendar", settings: "الإعدادات — Calendar", team: "الفريق — Calendar", }, notFound: { backToCalendar: "العودة إلى Calendar", pageMissing: "هذه الصفحة غير موجودة بعد.", }, eventPreview: { couldNotLoadEvent: "تعذر تحميل الحدث", noEventId: "لم يتم تقديم ID للحدث. أضف ?id= إلى URL.", openCalendar: "فتح التقويم", }, eventForm: { addCalendar: "إضافة تقويم", addCalendarFailed: "فشلت إضافة التقويم", addCalendarFromUrl: "إضافة تقويم من URL", added: "تمت الإضافة", calendarFeedAdded: 'تمت إضافة "{{name}}"', commandPlaceholder: "ابحث عن الأحداث أو انتقل إلى تاريخ أو اسأل الذكاء الاصطناعي...", createEventWithTitle: 'إنشاء "{{title}}"', directorySearchLimited: "بحث الدليل محدود. اكتب بريدًا إلكترونيًا كاملًا واضغط Enter للإضافة.", events: "الأحداث", fromUrl: "من URL", goToDate: "الانتقال إلى {{date}}", goToToday: "الانتقال إلى اليوم", jumpTo: "الانتقال إلى", openInGoogleCalendar: "فتح في Google Calendar", pasteShareableCalendarLink: "الصق رابط تقويم قابلًا للمشاركة من Google Calendar أو iCloud أو Outlook وما إلى ذلك.", people: "الأشخاص", press: "اضغط", quickCreate: "إنشاء سريع", searchPeoplePlaceholder: "ابحث بالاسم أو اكتب بريدًا إلكترونيًا...", selectedEvent: "الحدث المحدد", showLess: "عرض أقل", showMore: "عرض المزيد", showingCalendars: "التقاويم المعروضة", subscribedFeeds: "الخلاصات المشترَك بها", toAdd: "للإضافة", usePopoverInstead: "استخدام النافذة المنبثقة بدلًا من ذلك", viewTeammateCalendar: "عرض تقويم زميل في الفريق", addNote: "إضافة ملاحظة", addShortNote: "أضف ملاحظة قصيرة...", addUpdateNote: "إضافة ملاحظة تحديث", applyChangesTo: "تطبيق التغييرات على", awaiting: "بانتظار الرد", cancelEvent: "إلغاء الحدث", cancelRecurringDescription: "اختر مقدار السلسلة الذي تريد إلغاءه.", cancelRecurringEventQuestion: "إلغاء الحدث المتكرر؟", cancelRecurringNotifyDescription: "اختر مقدار السلسلة الذي تريد إلغاءه وما إذا كنت تريد إخطار الضيوف.", editNote: "تعديل الملاحظة", notifyGuestsQuestion: "إخطار الضيوف؟", optionalNote: "ملاحظة اختيارية", organizer: "المنظم", participants: "{{count}} مشارك", responseAwaitingCount: "{{count}} بانتظار الرد", recurringResponseScope: "نطاق الرد المتكرر", responseMaybeCount: "{{count}} ربما", responseNoCount: "{{count}} لا", responseYesCount: "{{count}} نعم", rsvpAccepted: "نعم", rsvpDeclined: "لا", rsvpMaybe: "ربما", rsvpNo: "لا", rsvpTentative: "ربما", rsvpYes: "نعم", saveRecurringResponseStatus: "حفظ حالة الرد للحدث المتكرر", saveResponse: "حفظ الرد", saveResponseStatus: "حفظ حالة الرد", seeAllParticipants: "عرض كل المشاركين وعددهم {{count}}", sendCancellationDescription: "إرسال إلغاء إلى الضيوف مع ملاحظة اختيارية.", sendUpdate: "إرسال تحديث", sendUpdateDescription: "إرسال تحديث إلى الضيوف مع ملاحظة اختيارية.", updateEvent: "تحديث الحدث", updateNotePlaceholder: "ما الذي تغير أو ما الذي يجب أن يعرفه الضيوف...", updateRecurringDescription: "اختر مقدار السلسلة الذي تريد تحديثه.", updateRecurringEventQuestion: "تحديث الحدث المتكرر؟", updateRecurringNotifyDescription: "اختر مقدار السلسلة الذي تريد تحديثه وما إذا كنت تريد إخطار الضيوف.", yourResponse: "ردك: {{status}}", }, }, } satisfies Partial>; const translatedCalendarAvailabilityFix = { "zh-CN": { googleConnect: { managedCredentialsUnavailable: "Google Calendar 暂不可用", managedCredentialsUnavailableDescription: "此部署尚未配置 Calendar 的 Google 连接。请稍后再试。", }, bookingLinks: { availabilityUnavailable: "目前无法检查此主办人的日历可用性。请稍后再试。", }, }, "es-ES": { googleConnect: { managedCredentialsUnavailable: "Google Calendar no está disponible", managedCredentialsUnavailableDescription: "La conexión de Google de Calendar no está configurada para este despliegue. Inténtalo de nuevo más tarde.", }, bookingLinks: { availabilityUnavailable: "No se puede comprobar ahora la disponibilidad del calendario de este anfitrión. Inténtalo de nuevo más tarde.", }, }, "fr-FR": { googleConnect: { managedCredentialsUnavailable: "Google Calendar est indisponible", managedCredentialsUnavailableDescription: "La connexion Google de Calendar n'est pas configurée pour ce déploiement. Réessayez plus tard.", }, bookingLinks: { availabilityUnavailable: "La disponibilité du calendrier de cet hôte ne peut pas être vérifiée pour le moment. Réessayez plus tard.", }, }, "de-DE": { googleConnect: { managedCredentialsUnavailable: "Google Calendar ist nicht verfügbar", managedCredentialsUnavailableDescription: "Die Google-Verbindung von Calendar ist für diese Bereitstellung nicht konfiguriert. Bitte versuche es später erneut.", }, bookingLinks: { availabilityUnavailable: "Die Kalenderverfügbarkeit dieses Gastgebers kann derzeit nicht geprüft werden. Bitte versuche es später erneut.", }, }, "ja-JP": { googleConnect: { managedCredentialsUnavailable: "Google Calendar を利用できません", managedCredentialsUnavailableDescription: "このデプロイでは Calendar の Google 接続が設定されていません。後でもう一度お試しください。", }, bookingLinks: { availabilityUnavailable: "この主催者のカレンダーの空き状況を現在確認できません。後でもう一度お試しください。", }, }, "ko-KR": { googleConnect: { managedCredentialsUnavailable: "Google Calendar를 사용할 수 없습니다", managedCredentialsUnavailableDescription: "이 배포에는 Calendar의 Google 연결이 구성되어 있지 않습니다. 나중에 다시 시도하세요.", }, bookingLinks: { availabilityUnavailable: "현재 이 주최자의 캘린더 가능 시간을 확인할 수 없습니다. 나중에 다시 시도하세요.", }, }, "pt-BR": { googleConnect: { managedCredentialsUnavailable: "Google Calendar indisponível", managedCredentialsUnavailableDescription: "A conexão do Calendar com o Google não está configurada para esta implantação. Tente novamente mais tarde.", }, bookingLinks: { availabilityUnavailable: "Não é possível verificar a disponibilidade do calendário deste anfitrião agora. Tente novamente mais tarde.", }, }, "hi-IN": { googleConnect: { managedCredentialsUnavailable: "Google Calendar उपलब्ध नहीं है", managedCredentialsUnavailableDescription: "इस deployment के लिए Calendar का Google connection configured नहीं है। कृपया बाद में फिर कोशिश करें।", }, bookingLinks: { availabilityUnavailable: "इस host की calendar availability अभी check नहीं की जा सकती। कृपया बाद में फिर कोशिश करें।", }, }, "ar-SA": { googleConnect: { managedCredentialsUnavailable: "Google Calendar غير متاح", managedCredentialsUnavailableDescription: "اتصال Google في Calendar غير مهيأ لهذا النشر. يُرجى المحاولة لاحقًا.", }, bookingLinks: { availabilityUnavailable: "لا يمكن التحقق من توفر تقويم هذا المضيف الآن. يُرجى المحاولة لاحقًا.", }, }, } satisfies Partial>; function applyTranslatedCalendarOverrides( translationSet: Partial>, ) { function assignDeep( target: Record, source: Record, ) { for (const [key, value] of Object.entries(source)) { const targetValue = target[key]; if ( targetValue && typeof targetValue === "object" && !Array.isArray(targetValue) && value && typeof value === "object" && !Array.isArray(value) ) { assignDeep( targetValue as Record, value as Record, ); } else { target[key] = value; } } } for (const [locale, overrides] of Object.entries(translationSet) as Array< [LocaleCode, PartialMessages] >) { const messages = messagesByLocale[locale]; if (!messages) continue; for (const [group, groupOverrides] of Object.entries(overrides)) { const target = (messages as Record>)[ group ]; if (target && groupOverrides && typeof groupOverrides === "object") { assignDeep(target, groupOverrides as Record); } } } } applyTranslatedCalendarOverrides(translatedCalendarExtras); applyTranslatedCalendarOverrides(translatedCalendarDebtTranslations); applyTranslatedCalendarOverrides(translatedCalendarInlineEditorLabels); applyTranslatedCalendarOverrides(translatedCalendarRemainingRaw); applyTranslatedCalendarOverrides(translatedCalendarRawBurnDown); applyTranslatedCalendarOverrides(translatedCalendarExactCleanup); applyTranslatedCalendarOverrides(translatedCalendarAvailabilityFix);